域名注册查询API接口, 是开发者通过发出HTTP请求以批量获取域名注册状态还有注册商并且包括注册时间等whois信息的标准化数据通道这类的东西。
调用方只需要把目标域名作为查询参数输入到接口地址里面去, 然后就能得到结构化的JSON响应了, 这种情况下是不需要再去解析原始whois文本的, 整个过程就是这么个情况。以下的说明内容是基于gname.xin开放平台所公布的接口规范而制定的, 用于阐释完整的调用方式以及各个字段的具体含义。
接口地址与请求方式
接口端点:https://api.gname.xin/v1/domain/whois
请求方法:GET
认证的方式是, 在请求头里面携带上Authorization: Bearer {YOUR_API_KEY}这样的内容, 密钥是在gname.xin控制台完成开通操作之后, 系统会自动生成的。
查询参数
域名参数必须是完整的FQDN格式, 系统只允许输入完整的域名, 如果用户仅输入二级域名的话, 是不被支持的。
返回字段说明
当请求成功完成的时候, HTTP状态码就是200, 响应体里面的核心字段如下所示。
domain:查询的域名
registrar:注册商名称
registrar_id:注册商IANA编号
creation_date: 这个表示的是注册日期, 并且要写成ISO 8601这种格式。
把expiration_date这个字段的意思, 用现在人能直接听懂的书面话来讲, 它就是指的到期日期。
status:域名状态数组,常见值包括ok、clientHold、serverLocked
指的是name_servers, 也就是我们所说的域名系统服务器列表。
updated_date:最近变更日期
如果域名没有被注册, 那么status就会返回unregistered, 其他的、关于注册的字段全部都是空的。
调用示例
GET https://api.gname.xin/v1/domain/whois?domain=example.com
Authorization: Bearer sk-xxxxxxxxxxxx
成功地做出了反应。
{
"domain": "example.com",
"registrar": "Example Registrar",
"registrar_id": "151",
"creation_date": "1995-08-14T04:00:00Z",
"expiration_date": "2025-08-13T04:00:00Z",
"status": ["ok"],
"name_servers": ["a.iana-servers.net", "b.iana-servers.net"]
}
调用限制与注意事项
1. 关于频率的限制情况是, 在使用同一个密钥的时候, 在默认的条件下, 每一分钟的时间段内最多可以发起60次的请求操作, 如果超过这个数量的限制, 那么系统就会返回429 Too Many Requests。
2. 关于批量查询这一操作, 在单次发起请求的时候, 系统仅仅只接受一个单一的域名;如果您是需要执行批量查询这个动作的话, 那么必须通过一个个地、按时地去调用接口来实现, 并且每次调用的时间间隔是绝对不能少于1秒的。
3. 数据时效的情况是, whois信息里面会存在一个最长的情况, 也就是24小时的缓存时间, 所以刚完成的注册或者是转移操作, 可能会延迟去反映出来。
4. 关于隐私保护方面的问题, 需要说明的是, 如果部分注册商在开启whois隐私之后, 那么与registrant相关的各个字段就会返回掩码值, 这属于正常的现象。
5. 错误码为404的情况API接口域名注册查询API接口域名注册查询龙南市就业服务平台,是表示域名的格式是不合法的, 错误码为422的时候, 则表示该顶级域名还没有接入到查询源的里面去, 错误码如果是503的话, 这表示上游的那个whois服务器现在是暂时不能用, 所以大家建议可以采用指数退避的方法来重新进行重试。
接入流程
注册一个gname.xin账号, 然后在控制台申请API Key, 接着把Key写入到服务端的环境变量里, 再按照上面说的那个格式去发起请求, 最后解析JSON响应。如果这是第一次调用, 建议你先用一个有知名度的域名来验证连通性是不是正常的, 确认没问题以后, 再把东西批量地接进生产环境里。


