commerce

POST /v1/carts/{cartId}/lines

Add a line to a cart.

모든 commerce 엔드포인트

모든 개발자 문서

인증

Bearer 토큰으로 API 키를 전송하세요. 이 엔드포인트는 명세에 특정 권한을 명시하지 않으므로, 가정하기보다는 키에 필요한 최소한의 권한을 부여하고 응답을 확인하세요.

이 엔드포인트는 조직 ID를 받지 않습니다. 사용자의 키가 이미 속한 조직을 식별하며, 응답은 해당 조직으로 한정됩니다.

무료 체험하기

대괄호 안에 있는 모든 내용을 사용자 지정 값으로 바꾸고, 키 플레이스홀더는 대시보드의 키로 바꾸세요.

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

로그인하셨나요? 대시보드의 API 콘솔이 실제 조직 ID와 본인의 키를 자동으로 채우고 라이브 API를 대상으로 요청을 실행하므로 실제 응답을 확인할 수 있습니다. API 콘솔에서 이 엔드포인트를 여세요

상세 정보

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.

매개변수

이름유형필수설명
cartId (path)UuidThe cart's id.

요청 본문

이름유형필수설명
kindSellableLineKindThe 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, including…
domain_namestring아니요Required for a domain line.
tldstring아니요Required for a domain line.
period_yearsinteger아니요Required for a register/transfer/renew line.
privacyboolean아니요
auto_renewboolean아니요
availability_tokenstring아니요The 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, because…
auth_codestring아니요The 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, so…
registrar_routeRegistrationRouteKey아니요Which 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 this…
plan_version_idUuid | null아니요Required for a hosting_plan line — the immutable plan version to bill.
extra_codestring아니요The catalogue code of the service an extra line buys. Required for that kind and meaningless on any other. Which addons a cart may buy is validated against…
listing_package_idUuid | null아니요Required 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 amount…
intervalBillingInterval아니요The recurrence a price is quoted for.
regionstring아니요The 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 means…
computeComputeLineConfig아니요How 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 line…
databaseDatabaseLineConfig아니요The 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…

응답

이름유형필수설명
idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
statusstring<open, checking_out, converted, abandoned, expired>
currencyCurrencyCode | null아니요Fixed 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_lineobject아니요
linesCartLine[]
subtotalMoneyAmountA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
discountMoneyAmountA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
totalMoneyAmountA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
created_atstring
updated_atstring아니요

이 엔드포인트가 반환할 수 있는 오류

401 · 403 · 404 · 422 · 429