首页›API 接口

API 接口

84iP 提供的公开 JSON 接口,免费、无需注册、无需 API Key,直接 GET 即可调用。

接口一览

IP 查询 · GET /api/ip/{域名或IP}

返回域名解析到的 IPv4 / IPv6 地址、CNAME 记录,以及服务器归属地。

WHOIS 查询 · GET /api/whois/{域名}

返回注册商、注册与到期时间、域名年龄、DNS 服务器与域名状态。

DNS 查询 · GET /api/dns/{域名}

返回 A / AAAA / CNAME / MX / TXT / NS / CAA / SOA 记录,以及 SPF、DMARC 与 DNS 服务商识别。

SSL 证书查询 · GET /api/ssl/{域名或IP}

返回证书的颁发者、有效期、剩余天数、覆盖域名(SAN)与证书链层级。

接口索引 · GET /api

返回可用接口清单与当前限流值。

以上接口以 https://www.84ip.com 为前缀,支持跨域(Access-Control-Allow-Origin: *),浏览器里可直接用 fetch 读取。

调用示例

curl "https://www.84ip.com/api/ip/example.com"
curl "https://www.84ip.com/api/whois/example.com"
curl "https://www.84ip.com/api/dns/example.com"
curl "https://www.84ip.com/api/ssl/example.com"

IP 查询返回字段

host       查询的主机
ipv4       IPv4 地址数组
ipv6       IPv6 地址数组
cname      CNAME 记录,没有则为空字符串
reserved   保留地址说明,非保留地址为 null
cached     结果是否直接来自本站缓存

geo 为服务器归属地对象,取不到时为 null:

country        国家 / 地区名称
country_code   两位国家代码
region         省 / 州
city           城市
zip            邮编
isp            运营商
org            组织
as             AS 号
timezone       时区
latitude       纬度
longitude      经度

WHOIS 查询返回字段

registrar      注册商
created        注册时间
updated        更新时间
expires        过期时间
age            域名年龄
dns            DNS 服务器数组
status         域名状态数组
dnssec         DNSSEC 状态
unregistered   为 true 表示该域名尚未注册
cached         结果是否直接来自本站缓存
updated_at     本站缓存时间

DNS 查询返回字段

domain      查询的域名
records     各类型记录:a / aaaa / cname / ns / txt / caa 为字符串数组,
            mx 为 { priority, host } 数组,soa 为对象或 null
spf         SPF 记录数组(来自根域 TXT)
dmarc       DMARC 记录,未配置为空字符串
ns_vendor   根据 NS 记录识别的解析服务商,未识别为空字符串
cached      结果是否直接来自本站缓存
updated_at  本站缓存时间

soa 对象字段:

mname      主服务器
rname      管理员邮箱(首段点号换成 @ 即为邮箱)
serial     序列号
refresh    刷新间隔(秒)
retry      重试间隔(秒)
expire     过期时间(秒)
minimum    最小 TTL(秒)
ttl        记录 TTL

SSL 证书查询返回字段

host         查询的主机
subject      证书颁发给的域名(CN)
issuer       颁发机构名称
issuer_org   颁发机构组织
valid_from   生效时间(ISO 8601)
valid_to     到期时间(ISO 8601)
days_left    剩余天数,已过期为负值
expired      是否已过期
covered      证书是否覆盖所查主机(含通配符匹配)
self_signed  是否自签名证书
chain        证书链层级,少于 2 级通常缺少中间证书
san          证书覆盖的域名数组(SAN)
algorithm    签名算法
cached       结果是否直接来自本站缓存
updated_at   本站缓存时间

返回示例

{
  "ok": true,
  "host": "example.com",
  "ipv4": ["93.184.216.34"],
  "ipv6": [],
  "cname": "",
  "reserved": null,
  "geo": {
    "country": "United States",
    "city": "Norwell",
    "isp": "Edgecast Inc.",
    "as": "AS15133",
    "latitude": 42.15,
    "longitude": -70.82
  },
  "cached": true
}

调用限制

按调用方 IP 限流,所有接口共用每分钟不超过 30 次。

超限时返回 HTTP 429,响应体给出上限、剩余次数与需等待的秒数:

{ "ok": false, "error": "调用过于频繁:每分钟最多 60 次", "limit": 60, "remaining": 0, "retry_after": 37 }

响应头同时给出:

X-RateLimit-Limit       每分钟上限
X-RateLimit-Remaining   本分钟剩余次数
Retry-After             还需等待的秒数

状态码

200   成功
400   参数格式不正确,或该域名后缀不支持查询
404   查不到结果(域名未解析,或 WHOIS 无记录)
429   超过每分钟调用上限
500   缓存数据异常,稍后重试
503   接口已关闭、未完成初始化,或上游服务临时无响应

请留意 503 与 404 的区别。 503 有一种常见原因是注册局限流了本站的 WHOIS
查询(即上游「超限」),此时该域名本身可能是正常的。别把 503 当成「域名不存在」,
可以等响应体 retry_after 给出的秒数后重试。

出错时结构固定为:

{ "ok": false, "error": "错误说明" }

建议先判断 ok,再取数据。

几点说明

  • 没有强制刷新参数。 接口一律「缓存优先」:命中缓存直接返回(cached 为 true),未命中才实时解析并写入缓存。这样既快,也避免接口被用来反复强制解析、把本站变成外部服务的放大器。
  • 数据有固有局限。 IP 归属地只能到运营商 / 城市级,WHOIS 可能滞后于注册局最新状态,请勿作为决策的唯一依据,详见免责声明。
  • 请勿高频批量抓取。 大规模自动请求会被限流;如需持续大量调用,请先联系我们沟通。
  • 本站的历史解析记录与同 IP 旁站数据不对外开放。