marketplace

POST /v1/marketplace/orders/{sale_id}/requirements

The buyer's brief — and the thing that starts the delivery clock.

모든 marketplace 엔드포인트

인증

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

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

무료 체험하기

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

curl -X POST https://api.zinndigital.com/v1/marketplace/orders/{sale_id}/requirements \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "requirements": <object> }'

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

상세 정보

docs/147 §2. A paid order used to arrive carrying a package name and nothing else: the seller could not start, the clock was running, and there was no channel to ask. **Submitting is what starts the delivery clock.** Until this call the seller's deadline does not exist, so the days a buyer spends writing their brief are never billed against the seller's deadline and a seller is never late for work they could not begin. The questions come from the order's own frozen `requirements_schema` — a snapshot taken at purchase, so a seller who rewrites their questions tomorrow cannot change what this buyer was asked. Buyer only. A seller gets a 404, the same way acceptance is the buyer's act alone.

매개변수

이름유형필수설명
sale_id (path)string

요청 본문

이름유형필수설명
requirementsobjectAnswer per question key, validated against the frozen schema.

응답

이름유형필수설명
sale_idstring
statestring
archetypeMarketplaceOrderArchetypeHow this order behaves. Adding a CATEGORY is configuration; adding an ARCHETYPE is a build. Every order-side decision — whether a delivery clock exists, whether auto-accept appl…
listing_titlestring아니요
package_namestring아니요
turnMarketplaceOrderTurnWhose move it is. `staff` is a real answer, not a fallback: a disputed order is genuinely waiting on us, and telling a buyer "waiting for the seller" while a moderator holds it…
waiting_onMarketplaceOrderWaitingOnWhat the order is waiting FOR — the half that makes `turn` actionable.
is_yoursboolean아니요Whether the caller is the party being waited on.
is_buyerboolean
deadlinestring아니요The clock that is actually running, or null when none is.
pausedboolean아니요A clock EXISTS but is stopped — the revision pause. Distinct from a null deadline, which also covers an order that never had a clock at all.
overdueboolean아니요Never true while `delivery_due_at` is null: null means the clock has not started, which is exactly the state of an order whose buyer has not written their brief yet.
handover_confirmedinteger아니요
handover_requiredinteger아니요
outstandingstring[]아니요Question keys the buyer still owes.
revisions_usedinteger아니요
revisions_includedinteger아니요
delivery_due_atstring아니요
currencystring아니요
gross_minorinteger아니요Integer minor units. Money is never a float.
commission_minorinteger아니요The platform's commission, as its own figure. Present for the SELLER and null for the buyer — to a buyer the price is the price. The platform is merchant of record on every mark…
vendor_net_minorinteger아니요What we owe the seller — a trade payable, not money held on trust.
requirements_schemaobject[]아니요The questions AS ASKED, frozen at purchase. A seller who rewrites their questions tomorrow cannot change what this buyer was asked.
requirementsobject아니요The buyer's answers, in the same `{key: {v: …}}` envelope.
requirements_submitted_atstring아니요
handover_itemsMarketplaceHandoverItem[]아니요
last_revision_reasonstring아니요

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

401 · 404 · 422