Domain management API¶
Admin console: domain related interfaces; requires an admin session.
create domain¶
- interface address:
/domain/create
- HTTP request method:
POST
- request params:
domain (form, required): root domain, e.g. example.com
type (form, required): type, 0 or 1
- response code:
0: Success
1: Invalid parameters, no permission, domain already exists, etc.
example:
curl -X POST "$BASE_URL/domain/create" -d "domain=example.com&type=0"
response example:
JSON:
{ "code": 0, "message": "域名创建成功", "data": {} }
list domain¶
- interface address:
/domain/list
- HTTP request method:
GET
- request params:
- response code:
common response
response example:
JSON:
{ "data": [ { "domain": "example.com", "url": "/domain/detail/example.com", "valid": "1", "type": 0 } ], "code": 0, "message": "OK" }
domain info¶
- interface address:
/domain/info/:domain
- HTTP request method:
GET
- request params:
domain (path): domain
- response code:
common response
response example:
JSON:
{ "data": { "ID": 1, "domain": "example.com", "type": 0, "valid": true, "dkim_pub_key": "...", "dkim_record": "...", "spf_record": "...", "mxa_record": "...", "mxb_record": "...", "dmarc_record": "...", "hostname": "...", "inbox_rules": "...", "spf_valid": true, "dkim_valid": true, "dmarc_valid": true, "mxa_valid": true, "mxb_valid": true }, "code": 0, "message": "OK" }
delete domain¶
- interface address:
/domain/delete
- HTTP request method:
POST
- request params:
domain (form, required): domain
- response code:
0: Success
1: Invalid parameters, no permission, etc.
example:
curl -X POST "$BASE_URL/domain/delete" -d "domain=example.com"
check domain dns¶
- interface address:
/domain/checkdns
- HTTP request method:
POST
- request params:
domain (form, required): domain
- response code:
0: Check succeeded (including whether each record passed)
1: Invalid parameters or the check failed
response example:
JSON:
{ "data": { "valid": true, "dkim_valid": true, "mxa_valid": true, "mxb_valid": true, "dmarc_valid": true, "spf_valid": true, "current_mxa_record": "...", "current_mxb_record": "...", "current_spf_record": "...", "current_dkim_record": "...", "current_dmarc_record": "...", "hostName": "...", "cache_time": "300s" }, "code": 0, "message": "检查DNS记录成功" }
update domain inbox rules¶
- interface address:
/domain/inboxrules/:domain
- HTTP request method:
POST
- request params:
domain (path): domain
domain (form, required): same as above
rule (form, required): inbound rule, multiple lines, each line in the format “condition,action,recipient”; the recipient cannot be from this domain
- response code:
0: Success
1: Domain failed DNS verification or the rule format is invalid
example:
curl -X POST "$BASE_URL/domain/inboxrules/example.com" -d "domain=example.com&rule=..."
response example:
JSON:
{ "data": { "ID": 1, "domain": "example.com", "type": 0, "valid": "1", "hostname": "...", "inbox_rules": "..." }, "code": 0, "message": "更新域名收信规则成功" }
Page routes (non-JSON API)¶
GET /domain - domain management page
GET /domain/detail/:domain - domain detail page
GET /domain/inboxrules/:domain - inbound rules page
GET /domain/delete/:domain - delete domain confirmation page