public

POST /v1/public/cart/{token}/plan

Add a hosting plan, or a free trial of one, to an anonymous cart.

Toate punctele finale public

Autentificare

Acest punct final este public. Nu necesită nicio acreditare și nicio organizație – este ceea ce citesc propriul nostru site de marketing și motoarele de răspuns AI.

Acest endpoint nu necesită un ID de organizație. Cheia ta identifică deja organizația căreia îi aparține, iar răspunsul este limitat la aceasta.

Încearcă

Înlocuiți tot ce se află între paranteze unghiulare cu propriile valori și substituentul cheie cu o cheie din tabloul de bord.

curl -X POST https://api.zinndigital.com/v1/public/cart/{token}/plan \
  -H "Content-Type: application/json" \
  -d '{ "plan_version_id": <string>, "interval": <string<monthly, annual>> }'

Autentificat? Consola API din panoul de control îți completează ID-ul real al organizației și propria cheie și rulează cererea în API-ul live, astfel încât să poți vedea răspunsul efectiv. Deschideți acest punct final în consola API

Detalii

Owner ruling D-W15-2: hosting, free trials and domains go through ONE public checkout, so a visitor never has to sign up in the app before they can buy. The price is computed by the server from the pinned plan VERSION in the cart's own currency; anything sent by the client is ignored. A basket holds one plan at a time, because a subscription governs the org rather than a line. `trial: true` prices the line at **zero** and is refused (`422`) on a plan that does not offer a trial — eligibility is read from the catalogue, never taken on trust.

Parametri

NumeTipObligatoriuCe este
token (path)stringDaThe anonymous cart's opaque bearer token (`zgc_…`), as returned by `createPublicCart`. **It is a credential** — anyone holding it can read and modify the cart — and it travels i…

Corp cerere

NumeTipObligatoriuCe este
plan_version_idstringDaThe immutable plan VERSION being bought. Pinning the version rather than the plan is what stops a catalogue edit repricing a basket somebody is part-way through.
intervalstring<monthly, annual>Da
domainPublicCartPlanDomainNuWhich domain this hosting is for. **Optional** — "I will decide later" is a real and common answer, and refusing it would put a wall in front of the purchase this field exists t…
trialbooleanNuStart a free trial of this plan instead of buying it. The line prices at zero and the order completes with no payment step (owner ruling 2026-08-09 — a trial takes no card and s…

Răspuns

NumeTipObligatoriuCe este
idUuidDaUUIDv7 identifier — sortable by creation time (docs/02 §8).
tokenstringNuThe bearer token. Returned **only** from `createPublicCart` — it is absent on every subsequent read, because only its digest is stored.
statusstring<open, converted, expired>Da
currencyCurrencyCodeDaISO 4217 currency code (money is minor units + this code — CLAUDE.md §2.8).
product_linestringNu
expires_atstringDaAfter this the cart is gone — reads 404 whether or not it has been purged.
itemsPublicCartItem[]Da
totalsPublicCartTotalsDaPre-tax totals. Tax appears on the order, once a billing country exists.

Erori pe care le poate returna acest punct final

404 · 422 · 429