reseller
GET /v1/reseller/services/{siteId}/package
Which packages this client's service could move onto, and what each costs you.
Նույնականացում
Ուղարկեք API բանալին որպես bearer token: Բանալին պետք է ունենա reseller.view թույլտվությունը. առանց դրա բանալին մերժվում է 403, և ոչ թե 404 կարգավիճակով:
Որտեղ տեղադրվում է ձեր կազմակերպության ID-ն
Այs վերջնակետը ընդունում է org_id-ը որպես հարցման պարամետր: Բաց թողեք այն, և կանչը կընդգրկի ձեր ամբողջ վարձակալության ենթածառը. ուղարկեք այն՝ կանչը մեկ կազմակերպության վրա սահմանափակելու համար:
Ձեր կազմակերպության ID-ն գտնվում է Ձեր ղեկավարման վահանակի API բանալիների էկրանին՝ բուն բանալու կողքին: Այն նույն ID-ն է Ձեր կատարած յուրաքանչյուր հարցման մեջ:
Փորձել
Փոխարինեք անկյունային փակագծերում գտնվող ցանկացած բան ձեր սեփական արժեքներով, և բանալու տեղապահը՝ ձեր վահանակի բանալիով:
curl -X GET https://api.zinndigital.com/v1/reseller/services/{siteId}/package \
-H "Authorization: Bearer zdk_live_…"Մուտք գործե՞լ եք: Ձեր վահանակի API վահանակը լրացնում է ձեր իրական կազմակերպության ID-ն և ձեր սեփական բանալին և գործարկում է հարցումը ուղիղ API-ի դեմ, որպեսզի կարողանաք տեսնել փաստացի պատասխանը: Բացեք այս վերջնակետը API վահանակում
Մանրամասներ
The upgrade/downgrade picker your billing panel renders. Every plan this service could move to, each already scored against what the client is actually using, with the refusals applied — so a downgrade that would strand them over their own disk or database allowance is reported as ineligible here rather than failing when your customer presses the button. Requires `reseller.view`. Two prices per option, and they answer different questions. `wholesale_amount_minor` is what **Zinn® charges you** for a period of that plan, after your programme's discount. `sell_amount_minor` is what **you charge your client** — your own price-list row where you have authored one, otherwise our list price plus your default markup. Both are integer minor units with an ISO currency code, and both are `null` — never `0` — when the catalogue holds no price in the currency asked for: a zero is a number a billing panel will invoice. `blocked_reason` is a **stable code, never prose**: `usage_exceeds` · `account_over_limit` · `platform_mismatch` · `no_price` · `unknown_package_type` · `different_target` · `no_package_type`. Your panel renders it in your own language. `blocked_detail` carries the numbers behind `usage_exceeds` so a screen can say which limit and by how much. `changeable: false` means the **surface** is shut whatever plan is chosen, and `reason` says which: `no_subscription`, `shared_subscription` (one subscription covers several of that client's sites, so moving it here would change what the others are entitled to), `not_billable`, or `no_package_type`.
Պարամետրեր
| Անուն | Տեսակ | Պահանջվում է | Ինչ է դա |
|---|---|---|---|
siteId (path) | Uuid | Այո | Site ID (UUIDv7). |
org_id (query) | Uuid | Ոչ | Which of your organizations this applies to. Required only when you belong to more than one here — otherwise it is inferred, and an id outside your direct memberships is a 404 r… |
currency (query) | string | Ոչ | ISO 4217 code the two prices are quoted in. Defaults to `USD`. |
interval (query) | string | Ոչ | Billing interval the prices are quoted for. Defaults to `monthly`. |
Պատասխան
| Անուն | Տեսակ | Պահանջվում է | Ինչ է դա |
|---|---|---|---|
current_plan_code | string | Ոչ | — |
current_plan_name | string | Ոչ | — |
changeable | boolean | Այո | False when the surface is shut whatever plan is picked — see `reason`. Your panel should hide the upgrade control rather than offer one that cannot work. |
reason | string | Ոչ | Why, when `changeable` is false. A stable code: `no_subscription` · `shared_subscription` · `not_billable` · `no_package_type`. |
options | ResellerServicePackageOption[] | Այո | — |
Այս վերջնակետի կողմից վերադարձվող սխալները
401 · 403 · 404 · 429 · 503