catalog

GET /v1/catalog/app/site-hosting-lines

List the product lines a SITE can be created on.

جميع نقاط نهاية catalog

جميع مستندات المطورين

المصادقة

أرسل مفتاح واجهة برمجة التطبيقات (API) كرمز حامل (bearer token). لا يحدد نقطة النهاية هذه إذنًا محددًا في المواصفات، لذا امنح مفتاحك الحد الأدنى الذي محتاجه وتحقق من الاستجابة بدلاً من الافتراض.

لا يقبل هذا الطرف أي معرف للمؤسسة. يحدد مفتاحك بالفعل المؤسسة التي ينتمي إليها، وتكون الاستجابة محصورة في نطاقها.

جربه الآن

استبدل أي شيء بين أقواس زاوية بقيمك الخاصة، والعنصر النائب للمفتاح بمفتاح من لوحة تحكمك.

curl -X GET https://api.zinndigital.com/v1/catalog/app/site-hosting-lines \
  -H "Authorization: Bearer zdk_live_…"

هل سجلت الدخول؟ تقوم وحدة تحكم واجهة برمجة التطبيقات في لوحة التحكم الخاصة بك بربط معرف مؤسستك الحقيقي ومفتاحك الخاص، وتنفذ الطلب مقابل واجهة برمجة التطبيقات المباشرة لتتمكن من رؤية الاستجابة الفعلية. افتح هذه النهاية الطرفية في وحدة تحكم API

التفاصيل

The subset of listInAppProductLines a website can actually live on, and the catalogue half of what a deploy or migrate picker needs. ⚖️ Owner, 2026-09-09, on the migration flow: "When it allows them to select a hosting type to migrate to, does it only show them the hosting types they actually own and say for other hosting plans they need to buy it first type of thing?". Measured live the same day, the migration screen offered eighteen lines — of which four sell something that is not a website: Zinn® Boards, Zinn® Managed Databases, Zinn® Vector Databases and email for an external domain. A managed database has no document root; Boards is a project board. ⛔ The predicate is derived, never enumerated. A line appears here iff some purchasable plan on it grants a positive or unlimited max_sites — which is exactly the entitlement a site create spends, so this cannot drift from what POST /v1/sites accepts. A hand-written deny list would be right on the day it was typed and would silently offer the fifth non-hosting line an operator seeds tomorrow. ⛔ It says nothing about whether the caller can afford one. "Do I already have room" is getDeployablePlans, and the two stay apart: a screen composes them — the owned half to offer, the difference to upsell. Reseller clients see only the lines their provider still sells, exactly as listInAppProductLines does, so nothing here can be bought and then refused by the cart. internal lines (the staff tariff) are excluded: they grant unlimited sites and are assigned by staff, so offering one advertises a plan the customer cannot buy. Requires authentication and nothing else. Cache-Control: private, no-store — the list carries in-app-only lines, so a shared cache would hand them to the next anonymous visitor.

الاستجابة

الاسمالنوعمطلوبما هو هذا
dataSiteHostingLine[]نعم

الأخطاء التي يمكن أن تُرجعها نقطة النهاية هذه

401 · 429