domains

GET /v1/domains/{domainId}/registry

What the public registry says about a domain (the WHOIS card).

すべての domains エンドポイント

認証

ベアラー トークンとして 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.

返信

名前タイプ必須これがその内容です
fqdnstringはいThe name this record is about, normalised to lower case.
checked_atstringはい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.
registrarstringはいThe registrar of record, as the registry publishes it.
registrar_iana_idstringはいThe registrar's IANA id — stable where the display name is not.
registered_atstringはいWhen the domain was first registered.
expires_atstringはい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_atstringはい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.
statusesstring[]はいThe EPP status set, lower-cased as RDAP publishes it. An empty array means the registry published none — not that the domain has none.
nameserversstring[]はいThe nameservers the **registry** holds. May legitimately differ from the public delegation mid-propagation — compare with `Delegation.nameservers`, which is what the internet ac…
dnssecbooleanはいWhether the delegation is signed. `null` when the registry published no `secureDNS` block at all, which many do not.
transfer_lockedbooleanはいWhether a client transfer prohibition is set. `null` when no status set was published — ⛔ not `false`, for the reason in this schema's description.
lapsedbooleanはい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 bei…

このエンドポイントが返すエラー

401 · 403 · 404 · 429 · 503