Billing Plans

Get Plan

요금제 상세 조회.

get/v1/plans/{plan_id}

Request

  • Base URL: https://api.xdata.kr (the document declares no server; this is the origin it was published from)
  • URL: https://api.xdata.kr/v1/plans/{plan_id}
  • Auth: one of:
    • HTTP basic
    • OAuth 2 (authorization code, authorization URL https://api.xdata.kr/oauth/authorize, token URL https://api.xdata.kr/oauth/token)

Path parameters

plan_idinteger required

Query parameters

env_scope'production' | 'real_test' | 'sandbox' nullable

환경을 고릅니다. 값은 production · real_test · sandbox 중 하나입니다. 경로 접두(/v1/sandbox/... · /v1/test/... · /v1/production/...) · X-Env-Scope 헤더 · env_scope 쿼리 가운데 한 통로로 반드시 보내야 합니다. 빼면 자동으로 채우지 않고 거절하며, 두 통로에 서로 다른 값을 담아도 거절합니다. 거절은 HTTP 422 이고 오류 코드는 VALIDATION_ENV_SCOPE_MISMATCH 입니다.

Headers

Authorizationstring nullable
X-Env-Scope'production' | 'real_test' | 'sandbox' nullable

환경을 고릅니다. 값은 production · real_test · sandbox 중 하나입니다. 경로 접두(/v1/sandbox/... · /v1/test/... · /v1/production/...) · X-Env-Scope 헤더 · env_scope 쿼리 가운데 한 통로로 반드시 보내야 합니다. 빼면 자동으로 채우지 않고 거절하며, 두 통로에 서로 다른 값을 담아도 거절합니다. 거절은 HTTP 422 이고 오류 코드는 VALIDATION_ENV_SCOPE_MISMATCH 입니다.

Response

Successful Response

plan_idinteger required

plans.id (BIGSERIAL PK).

codestring required

비즈 식별 코드. 환경 내 유니크 (SCHEMA uq_plans_code_env_active).

namestring required

사용자 노출 명칭.

descriptionstring nullable

요금제 설명 (마크다운 허용).

tier'FREE' | 'PAID' required

요금제 등급. FREE/PAID.

billing_cycle'ONCE' | 'MONTHLY' | 'YEARLY' required

청구 주기. ONCE/MONTHLY/YEARLY.

status'DRAFT' | 'ACTIVE' | 'DEPRECATED' | 'RETIRED' required

요금제 상태.

env_scope'sandbox' | 'real_test' | 'production' required

환경 스코프.

created_atstring date-time required

발행 시각 (TIMESTAMPTZ, ISO 8601 + offset 포함; naive 입력 시 422).

addon_select_mininteger nullable

W6/G7: min Path B pack count at subscribe (NULL=unlimited).

addon_select_maxinteger nullable

W6/G7: max Path B pack count (NULL=unlimited).

audience'standard' | 'integrator'

기본값 standard · 연동사 요금제는 integrator.

max_active_account_linksinteger nullable

연동사 요금제의 좌석 상한 - 한 desktop_agent 클라이언트가 가질 수 있는 ACTIVE account_links 최대 수. audience='integrator' 일 때만 뜻이 있고 NULL 은 제한 없음(또는 해당 없음)이다.

included_usage_free_unitsinteger nullable

요금제 전체의 종량 무료 허용량(한 청구 기간 기준) - (sum of all data_provider/action usage_records quantity, not per action). NULL or 0 = no free allowance (billed from unit 1, current behavior).

daily_token_limitinteger nullable

T12: daily usage-token allowance this plan grants, read from the linked quota_policies row (plans.quota_policy_id). The unit is usage tokens, not call count. null means THIS PLAN HAS NO DAILY CAP from a quota policy - do not read it as not-configured-yet. It covers four cases that are deliberately not distinguished: no policy linked, a linked policy whose own daily_limit is null, a linked policy that was soft-deleted, and the admin create/update responses (those are built from RETURNING, which this repository keeps narrow - read the plan again to get the limits).

monthly_token_limitinteger nullable

T12: monthly usage-token allowance from the same quota_policies row. NULL = no monthly limit for this plan (the user instruction gives a monthly number for the paid plans only). The unit is usage tokens.

contact_salesboolean

상담으로 가입하는 요금제(엔터프라이즈)이면 true. 고객이 스스로 가입하는 길(0원 가입 · 결제 가입)에 서지 않는다. 입력값을 받지 않고 code 에서 유도한다(CONTACT_SALES_PLAN_CODES).

Changes

No recorded changes to this operation across all 1 revision of this API.