domains
GET /v1/domains/{domainId}/premium-dns
Whether Premium DNS can be sold for this domain, and which row to sell.
Autenticación
Envía una clave de API como token de portador. La clave debe tener el permiso sites.view; una clave que no lo tenga se rechazará con un código 403, no 404.
Este endpoint no requiere ningún id de organización. Su clave ya identifica la organización a la que pertenece, y la respuesta está delimitada a ella.
Pruébalo
Reemplaza cualquier elemento entre corchetes angulares por tus propios valores, y el marcador de posición key con una clave de tu panel de control.
curl -X GET https://api.zinndigital.com/v1/domains/{domainId}/premium-dns \
-H "Authorization: Bearer zdk_live_…"¿Has iniciado sesión? La consola de la API en tu panel de control rellena el ID de tu organización real y tu propia clave, y ejecuta la solicitud contra la API en vivo para que puedas ver la respuesta real. Abre este endpoint en la consola de la API
Detalles
Premium DNS by Sectigo is sold **per zone**, so it is meaningless without a domain and its catalogue rows are deliberately not public — the account-level storefront must not offer it and the domain's own screen must. This is the read that screen uses. ⛔ **The offer is SUPPRESSED where the domain cannot use the product**, computed here rather than in a client. A Cloudflare-registrar domain cannot be delegated anywhere else at all, and a domain riding the shared fleet nameservers has no authoritative zone of its own for Sectigo to replace. Selling to either would charge the customer and then refuse them. `reason` is a **code**, never a sentence — the customer-facing wording is localizable and belongs in the client's own catalogue. `registrar_locks_nameservers` means the registrar permits no other nameservers; `no_zone_of_its_own` means there is no zone to upgrade; `registry_unavailable` means the public registry did not answer, so we cannot tell which case this is — and an unknown is not a yes. `code` is the `Extra.code` to purchase, chosen by the domain's product line through the catalogue's own fence rather than by a second price table. `site_id` is the site the purchase must name: the extra is site-scoped, so a buy button offered without one produces a charge that fulfilment then refuses. Requires `sites.view`, RLS-scoped.
Parámetros
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
domainId (path) | Uuid | Sí | The domain's id. |
Respuesta
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
available | boolean | Sí | Show the offer. |
reason | string<registrar_locks_nameservers, no_zone_of_its_own, registry_unavailable> | Sí | Why the offer is hidden, as a CODE for the client to translate. `null` when `available` is true, and also when `active` is true — an existing purchase is not a suppression. |
code | string | Sí | The `Extra.code` to purchase, chosen by the domain's product line. |
active | boolean | Sí | Already bought for this domain and not refunded. The screen says so rather than offering it again — and it is a THIRD state, not `available: false` with a reason: hiding the car… |
Errores que este endpoint puede devolver
401 · 403 · 404 · 429