目前DNSPod的API是完全免费开放给大家使用。
注意:用于请求API的程序,User-Agent必须为:程序英文名/版本 (联系方式) 这样的格式,不允许伪造常见的浏览器,否则DNSPod的防火墙有可能拒绝接受请求
当前API版本号:1.5,最后修改于2009-11-26
方法列表
== 获取API版本号
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
响应代码:
-1 登陆失败
1 成功
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?><dnspod> <status> <code>1</code> <message>1.5</message> <created_at>2009-11-27 21:46:48</created_at> </status></dnspod>
JSON
{
"status": {
"code": "1",
"message": "1.5",
"created_at": "2009-11-27 21:46:48"
}
}
== 添加新域名
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain - 域名, 没有 WWW, 如 dnspod.com
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 域名无效
5 域名已存在
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Domain name created success.</message>
<created_at>2008-11-26 16:12:00</created_at>
</status>
<domain>
<id>141846</id>
<punycode>test1163078446.com</punycode>
</domain>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Domain name created success.",
"created_at": "2008-11-25 21:12:23"
},
"domain": {
"id": "141839",
"punycode": "test110891592.com"
}
}
== 获取域名列表
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
grade - 用户分类,共分为Free,Express,Extra,Ultra四类
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 没有域名
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Get domain list success</message>
<created_at>2008-11-26 16:12:00</created_at>
</status>
<domains>
<domain>
<id>141842</id>
<name>test1045710140.com</name>
<grade>Free</grade>
<status>1</status>
<records>0</records>
</domain>
<domain>
<id>141846</id>
<name>test1163078446.com</name>
<grade>Extra<grade>
<status>1</status>
<records>0</records>
</domain>
</domains>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Get domain list success.",
"created_at": "2008-11-25 21:14:50"
},
"domains": {
"domain": [
{
"id": 141839,
"name": "test110891592.com",
"grade": "Free",
"status": "1",
"records": "0"
},
{
"id": 141840,
"name": "test1451919503.com",
"grade": "Extra",
"status": "1",
"records": "0"
}
]
}
}
== 删除单个域名
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain_id - 域名ID, 如 12345
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 域名ID错误
5 域名不存在
6 非域名所有者
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Domain delete success.</message>
<created_at>2008-11-26 16:12:00</created_at>
</status>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Domain delete success.",
"created_at": "2008-11-25 21:14:50"
}
}
== 设置域名状态
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain_id - 域名ID, 如 12345
status {enable,disable} - 状态
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 域名ID错误
5 域名不存在
6 非域名所有者
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Domain status changed success.</message>
<created_at>2008-11-26 16:12:00</created_at>
</status>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Domain status changed success.",
"created_at": "2008-11-25 21:14:50"
}
}
== 创建新记录
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain_id - 域名ID, 如 12345
sub_domain - 主机记录, 如 www
record_type {'A','CNAME','MX','URL','NS','TXT','AAAA'} - 记录类型
record_line {'default', 'tel', 'cnc', 'edu', 'cmc', 'foreign'} - 记录线路依次为:默认、电信、网通、教育网、移动、国外(红字仅对VIP有效)
value - 记录值, 如 IP:200.200.200.200, CNAME: cname.dnspod.com., MX: mail.dnspod.com.
mx {1-20} - MX优先级, 当记录类型是 MX 时有效,范围1-20
ttl {1-604800} - TTL,范围1-604800
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 域名ID错误
5 域名不存在
6 非域名所有者
7 缺少参数或者参数错误
8 主机记录错误
9 记录值错误
10 不能为@记录设置NS类型
11 TTL 必须大于 1
12 MX 必须大于 1
12 记录重复或者和 CNAME 记录冲突
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Record created success</message>
<created_at>2008-11-26 16:12:00</created_at>
</status>
<record>
<id>419616</id>
<name>test1163078446</name>
</record>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Record created success",
"created_at": "2008-11-25 21:16:04"
},
"record": {
"id": "419613",
"name": "test"
}
}
== 获取记录列表
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain_id - 域名ID, 如 12345
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 域名ID错误
5 域名不存在
6 非域名所有者
7 没有记录
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Get record list success</message>
<created_at>2008-11-26 16:12:00</created_at>
</status>
<records>
<record>
<id>419613</id>
<name>test</name>
<line>tel</line>
<type>CNAME</type>
<ttl>3600</ttl>
<value>www.dnspod.com.</value>
<mx>0</mx>
<enabled>1</enabled>
<updated_on>2008-11-25 21:16:04</updated_on>
</record>
<record>
<id>419616</id>
<name>test1163078446</name>
<line>default</line>
<type>A</type>
<ttl>3600</ttl>
<value>127.0.0.1</value>
<mx>0</mx>
<enabled>1</enabled>
<updated_on>2008-11-26 16:12:00</updated_on>
</record>
</records>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Get record list success.",
"created_at": "2008-11-25 21:18:26"
},
"records": {
"record": [
{
"id": "419613",
"name": "test",
"line": "tel",
"type": "CNAME",
"ttl": "3600",
"value": "www.dnspod.com.",
"mx": "0",
"enabled": "1",
"updated_on": "2008-11-25 21:16:04"
},
{
"id": "419614",
"name": "test1815321701",
"line": "default",
"type": "A",
"ttl": "3600",
"value": "127.0.0.1",
"mx": "0",
"enabled": "1",
"updated_on": "2008-11-25 21:18:26"
}
]
}
}
== 修改记录
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain_id - 域名ID, 如 12345
record_id - 记录ID, 如 1234567
sub_domain - 主机记录, 如 www
record_type {'A','CNAME','MX','URL','NS','TXT','AAAA'} - 记录类型
record_line {'default', 'tel', 'cnc', 'edu', 'cmc', 'foreign'} - 记录线路依次为:默认、电信、网通、教育网、移动、国外(红字仅对VIP有效)
value - 记录值, 如 IP:200.200.200.200, CNAME: cname.dnspod.com., MX: mail.dnspod.com.
mx {1-20} - MX优先级, 当记录类型是 MX 时有效,范围1-20
ttl {1-604800} - TTL,范围1-604800
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 域名ID错误
5 域名不存在
6 非域名所有者
7 缺少参数或者参数错误
8 主机记录错误
9 记录值错误
10 不能为@记录设置NS类型
11 TTL 必须大于 1
12 MX 必须大于 1
12 记录重复或者和 CNAME 记录冲突
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Record updated success</message>
<created_at>2008-11-26 16:16:09</created_at>
</status>
<record>
<id>419615</id>
<name>test308859996</name>
</record>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Record updated success",
"created_at": "2008-11-25 21:19:25"
},
"record": {
"id": 419614,
"name": "test770079528"
}
}
== 删除记录
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain_id - 域名ID, 如 12345
record_id - 记录ID, 如 1234567
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 缺少参数或者参数错误
5 域名不存在
6 非域名所有者
7 记录不存在
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Record deleted.</message>
<created_at>2008-11-26 16:16:09</created_at>
</status>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Record deleted.",
"created_at": "2008-11-25 21:19:25"
}
}
== 设置记录状态
方法: POST
参数:
login_email - 用户帐号
login_password - 用户密码
format {json,xml} - 返回的数据格式,支持json和xml.
domain_id - 域名ID, 如 12345
record_id - 记录ID, 如 1234567
status {enable,disable} - 状态
响应代码:
-1 登陆失败
1 成功
2 只允许POST方法
3 未知错误
4 缺少参数或者参数错误
5 域名不存在
6 非域名所有者
7 记录不存在
返回数据参考:
XML
<?xml version="1.0" encoding="UTF-8"?>
<dnspod>
<status>
<code>1</code>
<message>Record status changed.</message>
<created_at>2008-11-26 16:16:09</created_at>
</status>
</dnspod>
JSON
{
"status": {
"code": "1",
"message": "Record status changed.",
"created_at": "2008-11-25 21:19:25"
}
}