domains
GET /v1/domains/{domainId}/delegation
Whether a domain's delegation actually points at us.
身份验证
请将 API 密钥作为 bearer 令牌发送。该密钥必须具有 sites.view 权限;缺少该权限的密钥将被拒绝并返回 403 状态码,而非 404。
此端点不需要组织 ID。您的密钥已用于识别其所属的组织,且响应范围也仅限于该组织。
免费试用
将尖括号中的内容替换为您自己的值,并将键占位符替换为您仪表板中的一个键。
curl -X GET https://api.zinndigital.com/v1/domains/{domainId}/delegation \
-H "Authorization: Bearer zdk_live_…"已登录?您仪表板中的 API 控制台会自动填入您真实的组织 ID 和您自己的密钥,并针对实时 API 运行请求,以便您查看实际的响应。 在 API 控制台中打开此端点
详细信息
The honest answer to "is my domain live yet?". `expected` is the delegation we ask the customer to set, `nameservers` is where the domain **actually** delegates right now, and `detected` says whether those agree. ⛔ `detected` is resolved from a **public recursive resolver**, not from the DNS vendor. Bunny's own `NameserversDetected` flag was measured returning `true` for a domain that is not registered at all, so a surface keyed off it tells a customer their domain is served before they have touched their registrar (docs/72 D243). A lookup that FAILED is a `503`, never `detected: false`: "not live yet" and "we could not check" lead a customer to opposite actions. A domain whose authoritative DNS we do not host is a `404`. Requires `sites.view`, RLS-scoped. The answer is **recorded**, not recomputed per request, so this read is cheap enough to poll — a background backoff poller keeps it fresh (see `POST`). A live lookup that fails on a domain last seen delegated leaves the recorded state alone, so the `503` now means *we have never established this domain's delegation* rather than *this one lookup failed*.
参数
| 名称 | 类型 | 必填 | 内容简介 |
|---|---|---|---|
domainId (path) | Uuid | 是 | The domain's id. |
响应
| 名称 | 类型 | 必填 | 内容简介 |
|---|---|---|---|
expected | string[] | 是 | The delegation we ask the customer to set at their registrar. Resolved **per domain**, from the zone's own nameservers where the provider assigns them — Cloudflare issues each z… |
nameservers | string[] | 是 | Where the domain delegates right now, as the public internet sees it — which is what the customer compares against `expected` to know what to change. |
detected | boolean | 是 | Whether the domain's **public** NS records include the nameservers we asked for, resolved from a public recursive resolver. This — not our configuration and not the DNS vendor's… |
live | boolean | 是 | Whether the domain is being served by us right now. |
state | string<delegated, not_delegated, unknown> | 是 | The three-valued answer, and the field a client should render from. `delegated` — every nameserver we asked for is present. `not_delegated` — we got a real answer and ours are n… |
answered_by | string<resolver, registry, none> | 是 | Who answered. `resolver` is a public recursive resolver — what the internet sees. `registry` is the registry's own RDAP record, used as a fallback when the resolver says nothing… |
checked_at | string | 是 | When this reading was taken. |
last_delegated_at | string | 是 | When we last saw this domain delegated to us. Null means it never has been — which is what separates "waiting for you" from "this stopped working". |
next_check_at | string | 是 | When the background poller will look again, so a client can wait rather than poll blind. Null once the domain is live or the poller has given up. |
drifted | boolean | 是 | This domain was delegated to us and positively is not any more. A warning about something that broke, not a step still to do. |
此端点可能返回的错误
401 · 403 · 404 · 429 · 503