commerce
GET /v1/order/config/{planCode}
Everything a signed-in customer configures for one plan.
인증
Bearer 토큰으로 API 키를 전송하세요. 키는 반드시 billing.view 권한을 가지고 있어야 하며, 권한이 없는 키는 404가 아닌 403으로 거부됩니다.
이 엔드포인트는 조직 ID를 받지 않습니다. 사용자의 키가 이미 속한 조직을 식별하며, 응답은 해당 조직으로 한정됩니다.
무료 체험하기
대괄호 안에 있는 모든 내용을 사용자 지정 값으로 바꾸고, 키 플레이스홀더는 대시보드의 키로 바꾸세요.
curl -X GET https://api.zinndigital.com/v1/order/config/{planCode} \
-H "Authorization: Bearer zdk_live_…"로그인하셨나요? 대시보드의 API 콘솔이 실제 조직 ID와 본인의 키를 자동으로 채우고 라이브 API를 대상으로 요청을 실행하므로 실제 응답을 확인할 수 있습니다. API 콘솔에서 이 엔드포인트를 여세요
상세 정보
The in-app twin of getPublicOrderConfig, and it reads the same function: two computations of "what can I configure on this plan" is how the public funnel and the console come to disagree about whether a plan includes a free domain. The one real difference is why this route exists: it includes the product lines the owner ruled sellable only inside the app (email for an external domain, 2026-08-16), which are absent from every anonymous surface. It is a separate authenticated route rather than a query parameter, because a parameter an anonymous caller can set is not a visibility control. Authenticated but not tenant-scoped: the answer is a statement about what the platform sells, not about the caller's estate. Requires billing.view.
매개변수
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
planCode (path) | string | 예 | The catalogue code of the plan being configured. |
응답
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
plan_code | string | 예 | — |
plan_name | string | 예 | — |
plan_id | string | 예 | The plan's stable identity — what a URL or an analytics event refers to. |
plan_version_id | string | 예 | The purchasable identifier: what a hosting_plan cart line pins. Not plan_id — a price change mints a new version rather than mutating the sold one, so this value changes… |
plan_version | integer | 예 | — |
product_line | string | 예 | — |
product_line_name | string | 예 | The line's display name from the engine's one source table, so a client never has to render a raw code to a customer. |
currency | string | 예 | What everything on this payload is priced in. It may differ from the currency asked for: a currency with no derived price row yet falls back to USD and says so here rather… |
terms | OrderTerm[] | 예 | Cheapest per month first, which is what default_interval names. |
default_interval | string | 예 | The cadence to select on first render — derived as the cheapest per month rather than typed beside the price table. A typed default is a comment that happens to run: correct… |
trial_days | object | 예 | The free trial this plan offers, or null for none. A trial takes no card and starts immediately, so the button beneath the configuration has to say "start trial" rather than… |
included_domains | integer | 예 | How many domain registrations the plan includes free — the "use the free domain this plan includes" branch. 0 is the common case: render that branch only when the allowance is… |
included_domain_tlds | string[] | 예 | Which extensions the free registration may be spent on. Empty alongside a non-zero included_domains means the plan grants any offered TLD. |
domain_term_years | integer[] | 예 | — |
regions | OrderRegion[] | 예 | The data centres a site on this plan may be created in. Empty is a real answer — the Footprint-Free line offers no region by owner ruling, because a PBN customer is… |
spec | OrderSpecItem[] | 예 | The read-only "what is included" panel, ordered for display. Not a filtered allow-list: every resolved entitlement appears, so a capability added to the catalogue tomorrow is… |
addons | OrderAddon[] | 예 | The services offered on this product line and deliverable today — a PBN addon never appears on a mainstream plan, and an addon whose fulfilment handler has been withdrawn… |
이 엔드포인트가 반환할 수 있는 오류
401 · 403 · 404