public
GET /v1/public/domains/tld-pricing
The public, searchable TLD price table.
การยืนยันตัวตน
เอนด์พอยต์นี้เป็นสาธารณะ ไม่ต้องใช้ข้อมูลประจำตัวหรือองค์กรใดๆ เนื่องจากเป็นสิ่งที่เราใช้สำหรับเว็บไซต์การตลาดและระบบตอบคำถามด้วย AI ของเราเอง
ปลายทางนี้ไม่ต้องใช้รหัสองค์กร คีย์ของคุณระบุองค์กรที่เป็นเจ้าของอยู่แล้ว และการตอบกลับจะถูกจำกัดขอบเขตไว้เฉพาะองค์กรนั้น
ทดลองใช้เลย
แทนที่สิ่งใดๆ ที่อยู่ภายในวงเล็บแหลมด้วยค่าของคุณเอง และตัวยึดตำแหน่งคีย์ด้วยคีย์จากแดชบอร์ดของคุณ
curl -X GET https://api.zinndigital.com/v1/public/domains/tld-pricingเข้าสู่ระบบแล้วใช่ไหม คอนโซล API ในแดชบอร์ดของคุณจะเติมรหัสองค์กรจริงและคีย์ของคุณเองโดยอัตโนมัติ และทำการส่งคำขอไปยัง API จริง เพื่อให้คุณเห็นผลลัพธ์ที่เป็นข้อมูลจริง เปิดจุดสิ้นสุดนี้ในคอนโซล API
รายละเอียด
The crawlable price surface docs/31 §5.1 specifies and nothing served: what every extension we sell costs to register, renew and transfer, plus the registry policy a buyer needs (min/max years, WHOIS privacy, IDN, restore, whether a transfer grants a year, and any residency restriction). No account, no cart, no registrar call — a cached read of platform-global reference data. Cursor-paged and searched server-side, which is now the only public shape: the older listTldPricing (GET /v1/domains/pricing) returned the whole catalogue in one uncursored body and was retired in wave 8 (issue #845). That was fine at fifteen TLDs and was issue #466 all over again at the ~1,500 the registrar sync imports — on an unauthenticated endpoint, which is the worst place to have one. 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, because a visitor who has decided nothing wants .com before .zuerich; order=tld gives the alphabetical reference view. Inactive offers are never returned. summary appears on the first page only and carries active — how many extensions we sell, counted. Any surface stating "search across N extensions" must read it: a hardcoded number is a public claim that goes stale the first time the sync deactivates a registry. matched is the same count under the current filter, so a page can say both without either being wrong. related appears when q names an extension we actually sell, and carries the neighbours worth offering beside it — .shop returns .store and .online with their real prices — each row stamped with related_kind so the surface can make the argument rather than list names. Ranked by the same code as the domain-search upsell grid, and unlike that grid it costs no registrar call: a price table is a browse, not an availability check. Prices are USD, the catalogue's authored currency (docs/29); a public surface converts for display. Cacheable — strong ETag + Cache-Control: public, max-age=60.
พารามิเตอร์
| ชื่อ | ประเภท | จำเป็นต้องมี | ลักษณะของสิ่งนี้ |
|---|---|---|---|
q (query) | string | ไม่ใช่ | Substring match on the TLD label. A leading dot is ignored. |
category (query) | string<gtld, new_gtld, cctld, sponsored> | ไม่ใช่ | Restrict to one registry family. |
order (query) | string<popularity, tld> | ไม่ใช่ | popularity (default) ranks the extensions a visitor is most likely to want first; tld is the alphabetical reference order. |
cursor (query) | string | ไม่ใช่ | Opaque cursor from a previous page's page.next_cursor. |
limit (query) | integer | ไม่ใช่ | Maximum items to return (page size). |
If-None-Match (header) | string | ไม่ใช่ | A previously returned ETag; a match responds 304. |
การตอบกลับ
| ชื่อ | ประเภท | จำเป็นต้องมี | ลักษณะของสิ่งนี้ |
|---|---|---|---|
data | PublicTldPriceRow[] | ใช่ | — |
page | PageMeta | ใช่ | — |
summary | PublicTldPricingSummary | ไม่ใช่ | Whole-collection facts, counted rather than derived from the page in hand. First page only. |
related | PublicTldPriceRow[] | ไม่ใช่ | Neighbour extensions worth offering beside an exact-TLD q. Absent when q is empty, is not an extension we sell, or on any page but the first. |
ข้อผิดพลาดที่เอนด์พอยต์นี้สามารถส่งกลับได้
422 · 429