commerce

POST /v1/carts/{cartId}/lines

Add a line to a cart.

Tous les points de terminaison commerce

Authentification

Envoyez une clé d'API en tant que jeton du porteur (bearer token). Cet endpoint n'indique pas de permission spécifique dans la spécification, attribuez donc à votre clé le minimum requis et vérifiez la réponse plutôt que de faire des suppositions.

Cet endpoint ne prend aucun identifiant d'organisation. Votre clé identifie déjà l'organisation à laquelle elle appartient, et la réponse y est limitée.

Essayer

Remplacez tout ce qui se trouve entre crochets par vos propres valeurs, et le espace réservé à la clé par une clé de votre tableau de bord.

curl -X POST https://api.zinndigital.com/v1/carts/{cartId}/lines \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "kind": <SellableLineKind> }'

Connecté ? La console d'API de votre tableau de bord saisit votre véritable ID d'organisation ainsi que votre propre clé, et exécute la requête sur l'API de production afin que vous puissiez voir la réponse réelle. Ouvrir ce point de terminaison dans la console API

Détails

Adds a priced line. A `hosting_plan` line needs a `plan_version_id`; a `domain_register`/`domain_transfer`/`domain_renew` line needs a `domain_name`, `tld` and `period_years`. The line shape and price are validated + stamped by the server; a bad shape (or a plan version with no price) is a `422`.

Paramètres

NomTypeObligatoireQu'est-ce que c'est
cartId (path)UuidOuiThe cart's id.

Corps de la requête

NomTypeObligatoireQu'est-ce que c'est
kindSellableLineKindOuiThe line kinds a cart will accept **today** — the write-side subset of `LineKind`. Narrower than `LineKind` on purpose. `LineKind` is what a line can *be* (a read shape, includi…
domain_namestringNonRequired for a domain line.
tldstringNonRequired for a domain line.
period_yearsintegerNonRequired for a register/transfer/renew line.
privacybooleanNon
auto_renewbooleanNon
availability_tokenstringNonThe signed token from `searchDomains` for this exact name. Optional: an ordinary name prices from the TLD catalogue without one. It is **required to buy a premium name**, becaus…
auth_codestringNonThe EPP/authorization code issued by the registrar the domain is currently held at. **Required for a `domain_transfer` line** — no registry will initiate a transfer without it,…
registrar_routeRegistrationRouteKeyNonWhich registrar buys the name, on a `domain_register` or `domain_transfer` line. Omit it for the organisation's own registrar, which is the behaviour every caller had before thi…
plan_version_idUuid | nullNonRequired for a `hosting_plan` line — the immutable plan version to bill.
listing_package_idUuid | nullNonRequired for a `marketplace_package` line — the package on a **live** listing being bought. The price is the seller's and is re-read on every basket read, so a client-sent amoun…
intervalBillingIntervalNonThe recurrence a price is quoted for.
regionstringNonThe data centre this hosting is bought for — carried onto the resulting subscription and used as the default region for sites created against it (docs/370). Blank or omitted mea…
computeComputeLineConfigNonHow one machine on a `compute_server` cart line is built. The values are **not trusted from here**: the engine re-resolves the whole order against the live vendor before the lin…
databaseDatabaseLineConfigNonThe managed database a `managed_database` cart line buys (`docs/497` §8). The values are **not trusted from here**: the engine re-resolves the whole purchase through the same va…

Réponse

NomTypeObligatoireQu'est-ce que c'est
idUuidOuiUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidOuiUUIDv7 identifier — sortable by creation time (docs/02 §8).
statusstring<open, checking_out, converted, abandoned, expired>Oui
currencyCurrencyCode | nullNonFixed when the cart is opened, from `CartCreate.currency` or the `X-Zinn-Currency` header, and then locked — every line must match it. Null only on a legacy cart created before…
product_lineobjectNon
linesCartLine[]Oui
subtotalMoneyAmountOuiA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
discountMoneyAmountOuiA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
totalMoneyAmountOuiA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
created_atstringOui
updated_atstringNon

Erreurs que cet point de terminaison peut renvoyer

401 · 403 · 404 · 422 · 429