commerce
POST /v1/carts/{cartId}/lines
Add a line to a cart.
การยืนยันตัวตน
ส่ง API key เป็น bearer token เอนด์พอยต์นี้ไม่ได้ระบุสิทธิ์การใช้งานเฉพาะในข้อกำหนด ดังนั้นควรให้คีย์ของคุณมีสิทธิ์น้อยที่สุดเท่าที่จำเป็นและให้ตรวจสอบจากการตอบกลับแทนที่จะคาดเดา
ปลายทางนี้ไม่ต้องใช้รหัสองค์กร คีย์ของคุณระบุองค์กรที่เป็นเจ้าของอยู่แล้ว และการตอบกลับจะถูกจำกัดขอบเขตไว้เฉพาะองค์กรนั้น
ทดลองใช้เลย
แทนที่สิ่งใดๆ ที่อยู่ภายในวงเล็บแหลมด้วยค่าของคุณเอง และตัวยึดตำแหน่งคีย์ด้วยคีย์จากแดชบอร์ดของคุณ
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 ในแดชบอร์ดของคุณจะเติมรหัสองค์กรจริงและคีย์ของคุณเองโดยอัตโนมัติ และทำการส่งคำขอไปยัง 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) | Uuid | ใช่ | The cart's id. |
เนื้อหาคำขอ
| ชื่อ | ประเภท | จำเป็นต้องมี | ลักษณะของสิ่งนี้ |
|---|---|---|---|
kind | SellableLineKind | ใช่ | The 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_name | string | ไม่ใช่ | Required for a domain line. |
tld | string | ไม่ใช่ | Required for a domain line. |
period_years | integer | ไม่ใช่ | Required for a register/transfer/renew line. |
privacy | boolean | ไม่ใช่ | — |
auto_renew | boolean | ไม่ใช่ | — |
availability_token | string | ไม่ใช่ | 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_code | string | ไม่ใช่ | 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_route | RegistrationRouteKey | ไม่ใช่ | 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_id | Uuid | null | ไม่ใช่ | Required for a hosting_plan line — the immutable plan version to bill. |
extra_code | string | ไม่ใช่ | 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_id | Uuid | 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… |
interval | BillingInterval | ไม่ใช่ | The recurrence a price is quoted for. |
region | string | ไม่ใช่ | 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… |
compute | ComputeLineConfig | ไม่ใช่ | 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… |
database | DatabaseLineConfig | ไม่ใช่ | 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… |
การตอบกลับ
| ชื่อ | ประเภท | จำเป็นต้องมี | ลักษณะของสิ่งนี้ |
|---|---|---|---|
id | Uuid | ใช่ | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
org_id | Uuid | ใช่ | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
status | string<open, checking_out, converted, abandoned, expired> | ใช่ | — |
currency | CurrencyCode | 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_line | object | ไม่ใช่ | — |
lines | CartLine[] | ใช่ | — |
subtotal | MoneyAmount | ใช่ | A money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8). |
discount | MoneyAmount | ใช่ | A money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8). |
total | MoneyAmount | ใช่ | A money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8). |
created_at | string | ใช่ | — |
updated_at | string | ไม่ใช่ | — |
ข้อผิดพลาดที่เอนด์พอยต์นี้สามารถส่งกลับได้
401 · 403 · 404 · 422 · 429