domains
GET /v1/domains/tld-pricing
The TLD price table, flat, in the caller's currency.
Autentifikimi
Drgoni një çelës API si një token mbajtës. Ky pikëndalim nuk specifikon një leje specifike në specifikim, prandaj jepini çelësit tuaj minimumin e nevojshëm dhe kontrolloni përgjigjen në vend që të supozoni.
Ky pikëndalim nuk pranon id të organizatës. Çelësi juaj tashmë identifikon organizatën së cilës i përket dhe përgjigjja kufizohet vetëm për atë.
Provoje
Zëvendësoni çdo gjë brenda kllapave këndore me vlerat tuaja dhe vendbanuesin e çelësit me një çelës nga paneli juaj.
curl -X GET https://api.zinndigital.com/v1/domains/tld-pricing \
-H "Authorization: Bearer zdk_live_…"Jeni kyçur? Konsola e API-së në panelin tuaj plotëson ID-në tuaj reale të organizatës dhe çelësin tuaj, dhe ekzekuton kërkesën kundrejt API-së live, kështu që ju mund të shihni përgjigjen aktuale. Hapni këtë pikë fundore në konsolën e API-së
Detajet
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.
Parametrat
| Emri | Lloji | Kërkohet | Çfarë është kjo |
|---|---|---|---|
cursor (query) | string | Jo | Opaque cursor from a previous page's `page.next_cursor`. |
limit (query) | integer | Jo | Maximum items to return (page size). |
q (query) | string | Jo | Substring match on the TLD label, applied server-side. A leading dot is tolerated and ignored. |
order (query) | string<popularity, tld> | Jo | `popularity` (default) is most-popular-first with an alphabetical tiebreak; `tld` is the alphabetical reference view. |
If-None-Match (header) | string | Jo | A previously returned `ETag`; a match responds `304`. |
Përgjigja
| Emri | Lloji | Kërkohet | Çfarë është kjo |
|---|---|---|---|
data | TldPrice[] | Po | — |
page | PageMeta | Po | — |
Gabimet që ky pikëndalim mund të kthejë
401 · 422 · 429