domains

GET /v1/domains/tld-pricing

The TLD price table, flat, in the caller's currency.

Усі кінцеві точки domains

Уся документація для розробників

Автентифікація

Надішліть ключ API як маркер носія (bearer token). Ця кінцева точка не вказує конкретного дозволу в специфікації, тому надайте своєму ключу мінімально необхідні права та перевірте відповідь, замість того щоб припускати.

Цей кінцевий пункт не потребує ідентифікатора організації. Ваш ключ уже ідентифікує організацію, якій він належить, і відповідь обмежується її межами.

Спробувати

Замініть усе в кутових дужках власними значеннями, а заповнювач ключа — ключем із вашої панелі керування.

curl -X GET https://api.zinndigital.com/v1/domains/tld-pricing \
  -H "Authorization: Bearer zdk_live_…"

Увійшли в систему? Консоль API у вашій панелі керування автоматично підставляє ваш реальний ідентифікатор організації та ваш власний ключ, а також виконує запит до робочого API, щоб ви могли побачити справжню відповідь. Відкрийте цю кінцеву точку в консолі API

Деталі

The canonical TLD price table (docs/43 §3.1) and the one the dashboard's "Register a domain" reference table consumes. Flat integer minor units converted into the caller's display currency (X-Zinn-Currency, falling back to USD). GET /v1/public/domains/tld-pricing serves the same rows anonymously in a nullable MoneyAmount shape, cursor-paged; GET /v1/domains/pricing served them publicly and uncursored and was retired in wave 8 (#845). Authenticated, because it prices in the caller's currency. Cacheable per caller — strong ETag + Cache-Control: private, max-age=60 + Vary: X-Zinn-Currency, so a shared cache can never hand one customer's currency to another. A TLD whose register, renew and transfer are not all priced is omitted rather than zero-filled: the flat shape has no null, and $0.00 on a pricing screen is a false quote, not a missing value. Cursor-paged and server-searched (#846). This was the last unbounded projection of the catalogue — the public reader has been paged since #571 and /v1/domains/pricing was retired for exactly this (#845), which left the authenticated table returning every row in one body. q is a substring match on the label and tolerates a leading dot (.shop and shop find the same row). Ordered most popular first by default, matching the public table: the two show the same catalogue to the same person before and after they sign up, and opening one with .com and the other with .ai is the split docs/48 §6 warns about. order=tld gives the alphabetical reference view. ⚠️ A page can be short. The omit-if-unpriced rule above is applied after the window, so a page of 50 offers may carry 48 rows. Pagination is still correct — the cursor is taken from the last offer in the window, not the last row emitted — so follow page.next_cursor until page.has_more is false rather than stopping when a page looks short.

Параметри

НазваТипОбов'язковеЩо це таке
cursor (query)stringНіOpaque cursor from a previous page's page.next_cursor.
limit (query)integerНіMaximum items to return (page size).
q (query)stringНіSubstring match on the TLD label, applied server-side. A leading dot is tolerated and ignored.
order (query)string<popularity, tld>Ніpopularity (default) is most-popular-first with an alphabetical tiebreak; tld is the alphabetical reference view.
If-None-Match (header)stringНіA previously returned ETag; a match responds 304.

Відповідь

НазваТипОбов'язковеЩо це таке
dataTldPrice[]Так
pagePageMetaТак

Помилки, які може повертати ця кінцева точка

401 · 422 · 429