Trang web
Tất cả các requests yêu cầu tiêu đềAuthorization
và X-Press-Team
.
import requests
headers = {
"Authorization": "Token <api-key>:<api-secret>",
"X-Press-Team": "<team>"
}
requests.get("https://frappecloud.com/api/method/press.api.account.me", headers=headers).json()
Tuy nhiên, để cho ngắn gọn, đoạn mã trên được trình bày dưới dạng
requests.get("https://frappecloud.com/api/method/press.api.account.me")
Danh sách tất cả các trang web
Request
requests.get("https://frappecloud.com/api/method/press.api.site.all")
Response
{
"message": [
{
"name": "shared",
"shared": true,
"status": "Active",
"sites": [
{
"name": "site-1.erpnext.com",
"status": "Active",
"bench": "bench-0198-002761-f3"
}
]
},
{
"name": "bench-0000",
"title": "Version 13",
"version": "Version 13",
"benches": [
{
"name": "bench-0000-000000-f0",
"status": "Active"
}
],
"sites": [
{
"name": "site-2.frappe.cloud",
"status": "Active",
"bench": "bench-0000-000000-f0"
}
]
}
]
}
Lấy một trang web
Request
data = {
"name": "site-0.frappe.cloud",
}
requests.post("https://frappecloud.com/api/method/press.api.site.get", json=data)
Response
{
"message": {
"name": "site-0.frappe.cloud",
"status": "Active",
"frappe_version": "Version 13",
"server_region_info": {
"title": "Cape Town, South Africa"
}
}
}
Lấy các tùy chọn để tạo trang web
requests.get("https://frappecloud.com/api/method/press.api.site.options_for_new")
Response
{
"message": {
"plans": [
{
"name": "USD 10"
},
{
"name": "USD 25"
}
],
"versions": [
{
"name": "Version 13",
"groups": [
{
"name": "bench-0001",
"title": "Version 13",
"apps": [
{
"app": "frappe",
"repository_url": "https://github.com/frappe/frappe",
"branch": "version-13"
},
{
"app": "erpnext",
"repository_url": "https://github.com/frappe/erpnext",
"branch": "version-13"
}
],
"clusters": [
{
"name": "Mumbai"
},
{
"name": "Frankfurt"
},
{
"name": "Bahrain"
},
{
"name": "Cape Town"
},
{
"name": "N. Virginia"
}
]
}
]
}
]
}
}
Tạo một trang web
Request
data = {
"site": {
"name": "site-0",
"apps": [
"frappe",
"erpnext"
],
"group": "bench-0001",
"cluster": "Cape Town",
"plan": "USD 10",
}
}
requests.post("https://frappecloud.com/api/method/press.api.site.new", json=data)
Response
{
"message": {
"site": "site-0.frappe.cloud",
"job": "0000000000"
}
}
Bạn sẽ ngay lập tức nhận được phản hồi cho yêu cầu này, kèm theo tên trang web. Sau đó, bạn có thể thăm dò trạng thái trang web bằng cách sử dụng Lấy một trang web (Get a Site). Trang web có thể được sử dụng sau khi trạng thái trang web là Hoạt động.
Loại bỏ một trang web
Request
data = {
"name": "site-0.frappe.cloud",
}
requests.post("https://frappecloud.com/api/method/press.api.site.archive", json=data)
Response
{}
Vô hiệu hóa một trang web
Request
data = {
"name": "site-0.frappe.cloud",
}
requests.post("https://frappecloud.com/api/method/press.api.site.deactivate", json=data)
Response
{}
Kích hoạt một trang web
Request
data = {
"name": "site-0.frappe.cloud",
}
requests.post("https://frappecloud.com/api/method/press.api.site.activate", json=data)
Response
{}
Liệt kê các bản sao lưu
Request
data = {
"name": "site-0.frappe.cloud",
}
requests.post("https://frappecloud.com/api/method/press.api.site.backups", json=data)
Response
{
"message": [
{
"with_files": 1,
"database_url": "https://site-0.frappe.cloud/backups/00000000_000000-site-0_frappe_cloud-database.sql.gz",
"private_url": "https://site-0.frappe.cloud/backups/00000000_000000-site-0_frappe_cloud-private-files.tar",
"public_url": "https://site-0.frappe.cloud/backups/00000000_000000-site-0_frappe_cloud-files.tar",
"creation": "0000-00-00 00:00:00.000000",
"offsite": 1
}
]
}
Lập lịch sao lưu
Request
data = {
"name": "site-0.frappe.cloud",
}
requests.post("https://frappecloud.com/api/method/press.api.site.backup", json=data)
Response
{}
Đăng nhập với quyền quản trị
data = {
"name": "site-0.frappe.cloud",
}
requests.post("https://frappecloud.com/api/method/press.api.site.login", json=data)
Response
{
"message": "00000000000000000000000000000000000000000000000000000000"
}
You could the use the response as sid cookie to login to your site
cookies = {
"sid": "00000000000000000000000000000000000000000000000000000000",
}
requests.post("https://site-0.frappe.cloud/api/method/frappe.auth.get_logged_user", cookies=cookies).json()
# {'message': 'Administrator'}