domains
GET /v1/domains/{domainId}/registry
What the public registry says about a domain (the WHOIS card).
인증
Bearer 토큰으로 API 키를 전송하세요. 키는 반드시 sites.view 권한을 가지고 있어야 하며, 권한이 없는 키는 404가 아닌 403으로 거부됩니다.
이 엔드포인트는 조직 ID를 받지 않습니다. 사용자의 키가 이미 속한 조직을 식별하며, 응답은 해당 조직으로 한정됩니다.
무료 체험하기
대괄호 안에 있는 모든 내용을 사용자 지정 값으로 바꾸고, 키 플레이스홀더는 대시보드의 키로 바꾸세요.
curl -X GET https://api.zinndigital.com/v1/domains/{domainId}/registry \
-H "Authorization: Bearer zdk_live_…"로그인하셨나요? 대시보드의 API 콘솔이 실제 조직 ID와 본인의 키를 자동으로 채우고 라이브 API를 대상으로 요청을 실행하므로 실제 응답을 확인할 수 있습니다. API 콘솔에서 이 엔드포인트를 여세요
상세 정보
Registration dates, the registrar, the EPP status set and the DNSSEC flag, read from the registry's own RDAP service — the structured replacement for port-43 WHOIS. ⭐ This answers for a domain registered somewhere else. RDAP needs no credential, so a domain a customer registered at a registrar we have never integrated still returns its real expiry date and transfer lock. GET /v1/domains/{domainId} cannot: those columns are our own mirror of a registrar API, and for a connected (non-registered) domain we hold no account to mirror from, so they are empty and stay empty. Two sources, two endpoints, neither pretending to be the other. ⛔⛔ Every field is nullable, and null means the registry did not publish it — never that the domain lacks it. transfer_locked: null is "we did not read a status set", not "unlocked"; rendering it as unlocked tells a customer to go and protect a domain that is already protected. dnssec: null is the same shape. ⛔ No registrant, admin or technical contact is returned, by decision: most registries redact them post-GDPR, and republishing the ones that do not would export personal data through our UI for no product reason. A registry that does not answer is a 503, never an empty body and never a 404 — "the registry is quiet" and "this domain is not registered" are different facts and RDAP cannot reliably tell them apart (a stale bootstrap map 404s from the wrong registry). Requires sites.view, RLS-scoped; a domain the caller cannot see is a 404.
매개변수
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
domainId (path) | Uuid | 예 | The domain's id. |
응답
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
fqdn | string | 예 | The name this record is about, normalised to lower case. |
checked_at | string | 예 | When we read the registry. Answers are cached for a few hours, so this is the age of the reading and not the time of the request. |
registrar | string | 예 | The registrar of record, as the registry publishes it. |
registrar_iana_id | string | 예 | The registrar's IANA id — stable where the display name is not. |
registered_at | string | 예 | When the domain was first registered. |
expires_at | string | 예 | When the registration lapses. ⭐ This is the registry's date, not our billing date, and on a domain the customer renews elsewhere it is the only true one we have. |
last_changed_at | string | 예 | When the registry record last changed. A renewal, a nameserver edit or a lock change all move it, so it is a useful "something happened" marker and not a statement of what. |
statuses | string[] | 예 | The EPP status set, lower-cased as RDAP publishes it. An empty array means the registry published none — not that the domain has none. |
nameservers | string[] | 예 | The nameservers the registry holds. May legitimately differ from the public delegation mid-propagation — compare with Delegation.nameservers, which is what the internet… |
dnssec | boolean | 예 | Whether the delegation is signed. null when the registry published no secureDNS block at all, which many do not. |
transfer_locked | boolean | 예 | Whether a client transfer prohibition is set. null when no status set was published — ⛔ not false, for the reason in this schema's description. |
lapsed | boolean | 예 | Whether the registration is in a redemption or pending-delete window right now. Worth surfacing loudly: those windows are short, cost a fee to reverse, and end with the name being… |
이 엔드포인트가 반환할 수 있는 오류
401 · 403 · 404 · 429 · 503