reseller

POST /v1/reseller/clients/{orgId}/plan

Put a client on a plan — call this before provisioning their first service.

Dukkan reseller wuraren ƙarshe

Tabbatar da Asali

Aika maɓallin API azaman alamar ɗauka (bearer token). Dole ne maɓallin ya kasance yana da izinin reseller.provision; idan babu shi, za a ƙi amfani da maɓallin tare da lambar 403, ba 404 ba.

Inda ID ɗin kungiyar ku ke zuwa

Wannan wurin shiga yana daukar ID din kungiyar ku a cikin URL din da kansa, azaman orgId. Maye gurbin shi a cikin hanyar - babu wani take ko sigar tambaya da zata yi maimakon haka.

Ana samun lambar kungiyar ku a kan shafin maɓallan API a cikin madanninku, kusa da maɓallin kansa. Shi ne lambar da ta dace a kowane kiran da kuka yi.

Gwada

May gurbin komai da ke cikin kusurwa da ƙimar ka, kuma may gurbin maballi da maballi daga allon sarrafa ka.

curl -X POST https://api.zinndigital.com/v1/reseller/clients/{orgId}/plan \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "plan_code": <string> }'

An shiga? Na'urar sarrafa API da ke cikin sashin kulawarka tana cika ainihin lambar ƙungiyarka da maɓallinka naka, sannan tana gudanar da buƙatar a kan ainihin API don haka zaka iya ganin amsar gaske. Buɗe wannan tashar a cikin na'urar kula da API

Bayani

Grants the client organization the plan your product sells, and returns the `subscription_id` to pass to `createSite`. Requires `reseller.provision`. ⛔⛔ **A provisioning module MUST call this before `createSite`, and omitting it is a silent, total loss of the invoice.** A newly created organization has no subscription, and `createSite` has no plan field — so a site provisioned without one lands with no plan at all. Your wholesale statement is built from your clients' live subscriptions, so there is no line for that service and Zinn® bills you nothing while the hosting runs; the client inherits no entitlements, so no quota is applied to their box; and `changeResellerServicePackage` has nothing to change, so an upgrade you sell cannot be performed. Nothing anywhere reports this — the site provisions and serves perfectly. **Your client is never invoiced by Zinn®.** The subscription is granted comped: it exists to carry entitlements and to put a line on *your* wholesale statement, and our renewal billing skips it. You bill your client; we bill you. **A second service for the same client.** On the **same** plan this is a no-op and returns `200` with `created: false` — the plan's own site allowance covers the extra site, so nothing further is granted and a retried provision cannot disturb the subscription it is re-establishing. On a **different** plan it is refused `422`, because replacing the live plan would leave one of the two services unbilled. Either sell both on the same plan, or set the client up as a separate client record. To move a client to a different plan, use `changeResellerServicePackage` on the service. `422` for an unknown plan code and for a plan that is not for sale. `409` when the client's existing usage does not fit the plan being granted, with the real numbers.

Sigogi

SunaNau'iAna buƙataAbin da yake
orgId (path)UuidEhOne of your client organizations.
org_id (query)UuidA'aWhich of YOUR organizations is asking. Required only when you belong to more than one.

Jikin buƙata

SunaNau'iAna buƙataAbin da yake
plan_codestringEhThe plan to put this client on, by code — the value your product's module settings carry. The newest active version of it is always what is granted.
intervalstringA'aBilling interval for the wholesale line. Defaults to `monthly`.

Martani

SunaNau'iAna buƙataAbin da yake
client_org_idUuidEhUUIDv7 identifier — sortable by creation time (docs/02 §8).
subscription_idstringA'aPass this as `subscription_id` on `createSite`. Null when the client is on no plan — provisioning a site in that state is what leaves it unbilled.
plan_codestringA'a
plan_namestringA'a
intervalstringA'a
createdbooleanEhTrue when this call granted the plan, false when the client was already on it. A retried provision needs the difference without inferring it from a timestamp.
wholesale_amount_minorintegerA'aWhat Zinn® charges you per period. `null`, never `0`, when unpriced.
wholesale_currencystringA'a

Kuskuren da wannan matsaya za ta iya maido wa

401 · 403 · 404 · 409 · 422 · 429