commerce

POST /v1/carts/{cartId}/lines

Add a line to a cart.

Alle commerce Endpunkte

Authentifizierung

Senden Sie einen API-Schlüssel als Bearer-Token. Dieser Endpunkt gibt in der Spezifikation keine spezifische Berechtigung an. Versehen Sie Ihren Schlüssel daher mit den minimal erforderlichen Rechten und prüfen Sie die Antwort, anstatt Annahmen zu treffen.

Dieser Endpunkt erfordert keine Organisations-ID. Ihr Schlüssel identifiziert bereits die zugehörige Organisation, und die Antwort ist entsprechend eingeschränkt.

Ausprobieren

Ersetzen Sie alles in spitzen Klammern durch Ihre eigenen Werte und den Platzhalter für den Schlüssel durch einen Schlüssel aus Ihrem Dashboard.

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

Angemeldet? Die API-Konsole in Ihrem Dashboard trägt automatisch Ihre echte Organisations-ID sowie Ihren eigenen Schlüssel ein und führt die Anfrage gegen die Live-API aus, sodass Sie die tatsächliche Antwort sehen können. Öffnen Sie diesen Endpunkt in der API-Konsole

Details

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`.

Parameter

NameTypErforderlichWas es ist
cartId (path)UuidJaThe cart's id.

Anfragekörper

NameTypErforderlichWas es ist
kindSellableLineKindJaThe 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_namestringNeinRequired for a domain line.
tldstringNeinRequired for a domain line.
period_yearsintegerNeinRequired for a register/transfer/renew line.
privacybooleanNein
auto_renewbooleanNein
availability_tokenstringNeinThe 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_codestringNeinThe 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_routeRegistrationRouteKeyNeinWhich 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 | nullNeinRequired for a `hosting_plan` line — the immutable plan version to bill.
listing_package_idUuid | nullNeinRequired 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…
intervalBillingIntervalNeinThe recurrence a price is quoted for.
regionstringNeinThe 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…
computeComputeLineConfigNeinHow 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…
databaseDatabaseLineConfigNeinThe 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…

Antwort

NameTypErforderlichWas es ist
idUuidJaUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidJaUUIDv7 identifier — sortable by creation time (docs/02 §8).
statusstring<open, checking_out, converted, abandoned, expired>Ja
currencyCurrencyCode | nullNeinFixed 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_lineobjectNein
linesCartLine[]Ja
subtotalMoneyAmountJaA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
discountMoneyAmountJaA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
totalMoneyAmountJaA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
created_atstringJa
updated_atstringNein

Fehler, die dieser Endpunkt zurückgeben kann

401 · 403 · 404 · 422 · 429