API 文档

轻湖DNS 提供两种协议:面向脚本与 Agent 的 JSON API,以及面向标准 DNS 客户端的 DoH。两者使用同一把 API Key 与同一份额度。

产品内 Skill 文档以纯 Markdown 提供给 AI Agent 与脚本,涵盖安装、配置、JSON 与 DoH 用法以及错误处理。打开 /docs/skill.md

鉴权

JSON 请求通过 X-API-Key 请求头传递 Key。无法自定义请求头的 DoH 客户端把 Key 放在 URL 路径中,格式见下方示例。Key 可随时在控制台重命名或吊销。

JSON API

向 POST /api/open/resolve 发送 JSON 请求体,或用 GET 加查询参数快速调试。region 必须为 cn 或 us;支持的类型为 A、AAAA、CNAME、TXT、MX、NS、SOA。

curl -s https://dns.litelake.cn/api/open/resolve \
  -H "X-API-Key: YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain":"example.com","type":"A","region":"cn"}'

JSON API

{
  "code": 200,
  "message": "ok",
  "data": {
    "status": "NOERROR",
    "rcode": 0,
    "answers": [
      { "name": "example.com.", "type": "A", "ttl": 300, "data": "93.184.216.34" }
    ],
    "provenance": {
      "region": "cn",
      "exec_region": "cn",
      "upstream": "223.5.5.5",
      "cache": "miss",
      "latency_ms": 23
    }
  }
}

DNS over HTTPS

GET /api/open/doh/{region}/{apikey}?dns={base64url},以及使用 application/dns-message 请求体的 POST /api/open/doh/{region}/{apikey}。任何合法 DNS 应答(包括 NXDOMAIN 或 SERVFAIL)都返回 HTTP 200 与二进制报文。

GET

curl -s -H "Accept: application/dns-message" \
  "https://dns.litelake.cn/api/open/doh/cn/YOUR_KEY?dns=AAABAAABAAAAAAAAA3d3dwdleGFtcGxlA2NvbQAAAQAB"

POST

curl -s -X POST \
  -H "Content-Type: application/dns-message" \
  --data-binary @query.bin \
  "https://dns.litelake.cn/api/open/doh/cn/YOUR_KEY"

region 参数

视角是显式参数,不做 GeoDNS 自动判断。未知 region 返回 404。

  • region=cn — cn — 中国视角,由境内边缘节点与境内上游执行。
  • region=us — us — 海外视角,由海外边缘节点与无过滤上游执行。

应答溯源

每条 JSON 应答都携带视角、执行区域、实际应答上游、缓存状态(miss、fresh、stale)与耗时。DoH 通过 X-LiteDNS-Region、X-LiteDNS-Upstream、X-LiteDNS-Cache 暴露同样信息。

region · exec_region · upstream · cache · latency_ms · rcode

错误码

JSON API 失败时使用原生 HTTP 状态码。DoH 遵循 RFC 8484:合法 DNS 应答一律 2xx,4xx 表示没有产生 DNS 应答。

HTTP错误码
400域名、类型或报文格式不合法。
401未携带 Key 或 Key 无效。
403Key 已吊销、档位不可用或无对应 scope。
404未知的 region。
406Accept 不允许 application/dns-message。
413请求体超过 64 KB。
415媒体类型不支持。
429账号额度超限,请按 Retry-After 间隔重试。
504全部上游失败且无可用缓存。

客户端配置

DoH URL 包含路径,标准客户端均支持。请使用控制台生成的完整带 Key URL。

客户端配置状态说明
Firefox 自定义 DoH支持填写完整的带 Key URL。
Chrome / Edge 安全 DNS支持URI 模板可包含路径。
iOS / macOS 描述文件支持在 DNS 设置载荷中填写完整 URL。
curl / 程序化客户端支持GET 使用 base64url,POST 使用二进制报文。
Android Private DNS不支持只接受主机名,无法携带 Key 路径。

Agent Skill

读取 Skill 文档无需鉴权。请勿把 API Key 写入共享日志。

打开 /docs/skill.md