검색은 사용할 때만 로드됩니다. 아래에서 모든 분류를 살펴보세요.

계정 및 Workspace

조직 청구 정보 조회

선택한 워크스페이스와 현재 조직 소유자 권한을 기준으로 조직의 실제 요금제, 청구서 기준 가격, 적용 대기 중인 변경 사항을 읽습니다. 혜택을 신청하거나 청구 내용을 변경할 수 없습니다.

POST /identity-api/commercial-access/billing/status

계약 검토: · sha256:794dfa010f25b5de

개요

선택한 워크스페이스와 현재 조직 소유자 권한을 기준으로 조직의 실제 요금제, 청구서 기준 가격, 적용 대기 중인 변경 사항을 읽습니다. 혜택을 신청하거나 청구 내용을 변경할 수 없습니다.

HTTP 성공 응답은 완료가 아닌 접수를 뜻할 수 있습니다. 백그라운드 작업은 반환 ID를 저장하고 완료까지 같은 작업을 확인하세요. 예약 또는 접수 게시물은 플랫폼이 확인해야 게시 완료입니다. 클라이언트 시간 초과로 결과를 판단할 수 없습니다.

인증 및 권한

허용 자격 증명 유형
user_session, delegated_oauth, personal_access_token
위임된 기능
agent:operate
최소 Workspace 역할
이 계약에는 최소 Workspace 역할이 없지만 소유권 및 권한 검사는 계속 적용됩니다.
접근 범위
이 사용자에게 접근 권한이 있는 리소스
모든 Workspace 동의 필요
아니요
상태 변경
아니요
작업 완료 시
synchronous_http_response

토큰은 소유자의 권한만 사용할 수 있습니다. 각 요청은 Workspace 멤버십, 리소스 소유권, 선택 Workspace, 부여 기능을 확인합니다. core와 full 프로필은 표시 도구를 바꾸며 접근 권한은 부여하지 않습니다.

요청 필드

필수는 상위 객체와 선택 분기 안에서 필수라는 뜻입니다. 필수 자식이 선택적 상위 객체를 필수로 만들지는 않습니다. 아래 규칙과 필드명은 계약에서 복사했습니다.

요청 필드
필드 / 분기유형 / 필수 여부제약 조건
$object상위 객체에서 필수
  • additionalProperties: false
workspace_idstring상위 객체에서 필수
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
전체 JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "workspace_id"
  ],
  "additionalProperties": false
}

응답 및 완료

성공 HTTP 상태: 200. 작업 완료 시: synchronous_http_response.

HTTP 성공 응답은 완료가 아닌 접수를 뜻할 수 있습니다. 백그라운드 작업은 반환 ID를 저장하고 완료까지 같은 작업을 확인하세요. 예약 또는 접수 게시물은 플랫폼이 확인해야 게시 완료입니다. 클라이언트 시간 초과로 결과를 판단할 수 없습니다.

필수는 상위 객체와 선택 분기 안에서 필수라는 뜻입니다. 필수 자식이 선택적 상위 객체를 필수로 만들지는 않습니다. 아래 규칙과 필드명은 계약에서 복사했습니다.

응답 및 완료
필드 / 분기유형 / 필수 여부제약 조건
$object상위 객체에서 필수—
contract_versionstring상위 객체에서 필수
  • const: "organization-commercial-billing/v1"
workspace_idstring상위 객체에서 필수
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
organization_idstring상위 객체에서 필수
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
planstring상위 객체에서 필수
  • enum: ["free","founding_pro","pro","team"]
plan_limitsobject상위 객체에서 필수—
plan_limitsoneOf 1object상위 객체에서 필수—
plan_limits.planoneOf 1string상위 객체에서 필수
  • const: "free"
plan_limits.included_human_seatsoneOf 1number | null상위 객체에서 필수—
plan_limits.included_human_seatsoneOf 1 / anyOf 1number상위 객체에서 필수
  • const: 1
plan_limits.included_human_seatsoneOf 1 / anyOf 2null상위 객체에서 필수—
plan_limits.connected_channel_limitoneOf 1number상위 객체에서 필수
  • const: 3
plan_limits.successful_destination_publishes_limitoneOf 1number | null상위 객체에서 필수—
plan_limits.successful_destination_publishes_limitoneOf 1 / anyOf 1number상위 객체에서 필수
  • const: 100
plan_limits.successful_destination_publishes_limitoneOf 1 / anyOf 2null상위 객체에서 필수—
plan_limits.pending_scheduled_posts_limitoneOf 1number상위 객체에서 필수
  • const: 30
plan_limits.history_daysoneOf 1number상위 객체에서 필수
  • const: 30
plan_limits.stripe_quantityoneOf 1number상위 객체에서 필수
  • const: 0
plan_limitsoneOf 2object상위 객체에서 필수—
plan_limits.planoneOf 2string상위 객체에서 필수
  • const: "founding_pro"
plan_limits.included_human_seatsoneOf 2number | null상위 객체에서 필수—
plan_limits.included_human_seatsoneOf 2 / anyOf 1number상위 객체에서 필수
  • const: 5
plan_limits.included_human_seatsoneOf 2 / anyOf 2null상위 객체에서 필수—
plan_limits.connected_channel_limitoneOf 2number상위 객체에서 필수—
plan_limits.connected_channel_limitoneOf 2 / anyOf 1number상위 객체에서 필수
  • const: 10
plan_limits.connected_channel_limitoneOf 2 / anyOf 2number상위 객체에서 필수
  • const: 20
plan_limits.successful_destination_publishes_limitoneOf 2number | null상위 객체에서 필수—
plan_limits.successful_destination_publishes_limitoneOf 2 / anyOf 1number상위 객체에서 필수
  • const: 1000
plan_limits.successful_destination_publishes_limitoneOf 2 / anyOf 2null상위 객체에서 필수—
plan_limits.pending_scheduled_posts_limitoneOf 2number상위 객체에서 필수
  • const: 300
plan_limits.history_daysoneOf 2number상위 객체에서 필수
  • const: 365
plan_limits.stripe_quantityoneOf 2number상위 객체에서 필수
  • const: 1
plan_limitsoneOf 3object상위 객체에서 필수—
plan_limits.planoneOf 3string상위 객체에서 필수
  • const: "pro"
plan_limits.included_human_seatsoneOf 3null상위 객체에서 필수—
plan_limits.connected_channel_limitoneOf 3number상위 객체에서 필수
  • const: 10
plan_limits.successful_destination_publishes_limitoneOf 3null상위 객체에서 필수—
plan_limits.unlimited_publishing_platformsoneOf 3array상위 객체에서 필수
  • minItems: 4
  • maxItems: 4
plan_limits.pending_scheduled_posts_limitoneOf 3number상위 객체에서 필수
  • const: 300
plan_limits.history_daysoneOf 3number상위 객체에서 필수
  • const: 365
plan_limits.stripe_quantityoneOf 3number상위 객체에서 필수
  • const: 1
plan_limitsoneOf 4object상위 객체에서 필수—
plan_limits.planoneOf 4string상위 객체에서 필수
  • const: "team"
plan_limits.included_human_seatsoneOf 4null상위 객체에서 필수—
plan_limits.connected_channel_limitoneOf 4number상위 객체에서 필수
  • const: 20
plan_limits.successful_destination_publishes_limitoneOf 4null상위 객체에서 필수—
plan_limits.unlimited_publishing_platformsoneOf 4array상위 객체에서 필수
  • minItems: 4
  • maxItems: 4
plan_limits.pending_scheduled_posts_limitoneOf 4number상위 객체에서 필수
  • const: 300
plan_limits.history_daysoneOf 4number상위 객체에서 필수
  • const: 365
plan_limits.stripe_quantityoneOf 4number상위 객체에서 필수
  • const: 1
pricingobject상위 객체에서 필수—
pricingoneOf 1object상위 객체에서 필수—
pricingoneOf 1 / oneOf 1object상위 객체에서 필수—
pricing.statusoneOf 1 / oneOf 1string상위 객체에서 필수
  • const: "available"
pricing.source_kindoneOf 1 / oneOf 1string상위 객체에서 필수
  • const: "standard"
pricing.authorityoneOf 1 / oneOf 1string상위 객체에서 필수
  • const: "default_free"
pricing.planoneOf 1 / oneOf 1string상위 객체에서 필수
  • const: "free"
pricing.plan_versiononeOf 1 / oneOf 1number상위 객체에서 필수—
pricing.plan_versiononeOf 1 / oneOf 1 / anyOf 1number상위 객체에서 필수
  • const: 1
pricing.plan_versiononeOf 1 / oneOf 1 / anyOf 2number상위 객체에서 필수
  • const: 2
pricing.currencyoneOf 1 / oneOf 1string상위 객체에서 필수
  • const: "usd"
pricing.interval_unitoneOf 1 / oneOf 1string상위 객체에서 필수
  • const: "month"
pricing.monthly_amount_centsoneOf 1 / oneOf 1number상위 객체에서 필수
  • const: 0
pricingoneOf 1 / oneOf 2object상위 객체에서 필수—
pricing.statusoneOf 1 / oneOf 2string상위 객체에서 필수
  • const: "available"
pricing.source_kindoneOf 1 / oneOf 2string상위 객체에서 필수
  • const: "standard"
pricing.authorityoneOf 1 / oneOf 2string상위 객체에서 필수
  • const: "verified_invoice"
pricing.planoneOf 1 / oneOf 2string상위 객체에서 필수
  • const: "pro"
pricing.plan_versiononeOf 1 / oneOf 2number상위 객체에서 필수
  • const: 1
pricing.currencyoneOf 1 / oneOf 2string상위 객체에서 필수
  • const: "usd"
pricing.interval_unitoneOf 1 / oneOf 2string상위 객체에서 필수
  • const: "month"
pricing.monthly_amount_centsoneOf 1 / oneOf 2number상위 객체에서 필수
  • const: 4000
pricing.verified_periodoneOf 1 / oneOf 2object상위 객체에서 필수—
pricing.verified_period.period_startoneOf 1 / oneOf 2string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricing.verified_period.period_endoneOf 1 / oneOf 2string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricingoneOf 1 / oneOf 3object상위 객체에서 필수—
pricing.statusoneOf 1 / oneOf 3string상위 객체에서 필수
  • const: "available"
pricing.source_kindoneOf 1 / oneOf 3string상위 객체에서 필수
  • const: "standard"
pricing.authorityoneOf 1 / oneOf 3string상위 객체에서 필수
  • const: "verified_invoice"
pricing.planoneOf 1 / oneOf 3string상위 객체에서 필수
  • const: "team"
pricing.plan_versiononeOf 1 / oneOf 3number상위 객체에서 필수
  • const: 1
pricing.currencyoneOf 1 / oneOf 3string상위 객체에서 필수
  • const: "usd"
pricing.interval_unitoneOf 1 / oneOf 3string상위 객체에서 필수
  • const: "month"
pricing.monthly_amount_centsoneOf 1 / oneOf 3number상위 객체에서 필수
  • const: 8000
pricing.verified_periodoneOf 1 / oneOf 3object상위 객체에서 필수—
pricing.verified_period.period_startoneOf 1 / oneOf 3string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricing.verified_period.period_endoneOf 1 / oneOf 3string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricingoneOf 2object상위 객체에서 필수—
pricingoneOf 2 / oneOf 1object상위 객체에서 필수—
pricing.statusoneOf 2 / oneOf 1string상위 객체에서 필수
  • const: "available"
pricing.source_kindoneOf 2 / oneOf 1string상위 객체에서 필수
  • const: "promotional"
pricing.authorityoneOf 2 / oneOf 1string상위 객체에서 필수
  • const: "verified_invoice"
pricing.planoneOf 2 / oneOf 1string상위 객체에서 필수
  • const: "pro"
pricing.plan_versiononeOf 2 / oneOf 1number상위 객체에서 필수
  • const: 2
pricing.currencyoneOf 2 / oneOf 1string상위 객체에서 필수
  • const: "usd"
pricing.interval_unitoneOf 2 / oneOf 1string상위 객체에서 필수
  • const: "month"
pricing.monthly_amount_centsoneOf 2 / oneOf 1number상위 객체에서 필수
  • const: 1900
pricing.verified_periodoneOf 2 / oneOf 1object상위 객체에서 필수—
pricing.verified_period.period_startoneOf 2 / oneOf 1string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricing.verified_period.period_endoneOf 2 / oneOf 1string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricingoneOf 2 / oneOf 2object상위 객체에서 필수—
pricing.statusoneOf 2 / oneOf 2string상위 객체에서 필수
  • const: "available"
pricing.source_kindoneOf 2 / oneOf 2string상위 객체에서 필수
  • const: "promotional"
pricing.authorityoneOf 2 / oneOf 2string상위 객체에서 필수
  • const: "verified_invoice"
pricing.planoneOf 2 / oneOf 2string상위 객체에서 필수
  • const: "team"
pricing.plan_versiononeOf 2 / oneOf 2number상위 객체에서 필수
  • const: 2
pricing.currencyoneOf 2 / oneOf 2string상위 객체에서 필수
  • const: "usd"
pricing.interval_unitoneOf 2 / oneOf 2string상위 객체에서 필수
  • const: "month"
pricing.monthly_amount_centsoneOf 2 / oneOf 2number상위 객체에서 필수
  • const: 3900
pricing.verified_periodoneOf 2 / oneOf 2object상위 객체에서 필수—
pricing.verified_period.period_startoneOf 2 / oneOf 2string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricing.verified_period.period_endoneOf 2 / oneOf 2string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricingoneOf 3object상위 객체에서 필수—
pricingoneOf 3 / oneOf 1object상위 객체에서 필수—
pricing.statusoneOf 3 / oneOf 1string상위 객체에서 필수
  • const: "available"
pricing.source_kindoneOf 3 / oneOf 1string상위 객체에서 필수
  • const: "legacy"
pricing.planoneOf 3 / oneOf 1string상위 객체에서 필수
  • const: "founding_pro"
pricing.plan_versiononeOf 3 / oneOf 1integer상위 객체에서 필수
  • maximum: 2147483647
  • exclusiveMinimum: 0
pricing.currencyoneOf 3 / oneOf 1string상위 객체에서 필수
  • const: "usd"
pricing.interval_unitoneOf 3 / oneOf 1string상위 객체에서 필수
  • const: "month"
pricing.monthly_amount_centsoneOf 3 / oneOf 1integer상위 객체에서 필수
  • minimum: 0
  • maximum: 2147483647
pricing.authorityoneOf 3 / oneOf 1string상위 객체에서 필수
  • const: "legacy_commitment"
pricingoneOf 3 / oneOf 2object상위 객체에서 필수—
pricing.statusoneOf 3 / oneOf 2string상위 객체에서 필수
  • const: "available"
pricing.source_kindoneOf 3 / oneOf 2string상위 객체에서 필수
  • const: "legacy"
pricing.planoneOf 3 / oneOf 2string상위 객체에서 필수
  • const: "founding_pro"
pricing.plan_versiononeOf 3 / oneOf 2integer상위 객체에서 필수
  • maximum: 2147483647
  • exclusiveMinimum: 0
pricing.currencyoneOf 3 / oneOf 2string상위 객체에서 필수
  • const: "usd"
pricing.interval_unitoneOf 3 / oneOf 2string상위 객체에서 필수
  • const: "month"
pricing.monthly_amount_centsoneOf 3 / oneOf 2integer상위 객체에서 필수
  • minimum: 0
  • maximum: 2147483647
pricing.authorityoneOf 3 / oneOf 2string상위 객체에서 필수
  • const: "verified_invoice"
pricing.verified_periodoneOf 3 / oneOf 2object상위 객체에서 필수—
pricing.verified_period.period_startoneOf 3 / oneOf 2string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricing.verified_period.period_endoneOf 3 / oneOf 2string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pricingoneOf 4object상위 객체에서 필수—
pricing.statusoneOf 4string상위 객체에서 필수
  • const: "unavailable"
pricing.source_kindoneOf 4string상위 객체에서 필수
  • const: "manual"
pricing.authorityoneOf 4string상위 객체에서 필수
  • const: "manual_grant"
pricing.planoneOf 4string상위 객체에서 필수
  • enum: ["free","founding_pro","pro","team"]
pricing.plan_versiononeOf 4integer상위 객체에서 필수
  • maximum: 2147483647
  • exclusiveMinimum: 0
pricing.monthly_amount_centsoneOf 4null상위 객체에서 필수—
pricing.reason_codeoneOf 4string상위 객체에서 필수
  • const: "recurring_charge_not_observed"
pricingoneOf 5object상위 객체에서 필수—
pricing.statusoneOf 5string상위 객체에서 필수
  • const: "unavailable"
pricing.source_kindoneOf 5string상위 객체에서 필수
  • const: "unavailable"
pricing.authorityoneOf 5string상위 객체에서 필수
  • const: "not_observed"
pricing.planoneOf 5string상위 객체에서 필수
  • enum: ["free","founding_pro","pro","team"]
pricing.plan_versiononeOf 5integer | null상위 객체에서 필수—
pricing.plan_versiononeOf 5 / anyOf 1integer상위 객체에서 필수
  • maximum: 2147483647
  • exclusiveMinimum: 0
pricing.plan_versiononeOf 5 / anyOf 2null상위 객체에서 필수—
pricing.monthly_amount_centsoneOf 5null상위 객체에서 필수—
pricing.reason_codeoneOf 5string상위 객체에서 필수
  • enum: ["current_period_proof_missing","pricing_authority_not_observed","catalog_binding_not_observed"]
purchase_optionsobject상위 객체에서 필수—
purchase_optionsoneOf 1object상위 객체에서 필수—
purchase_options.statusoneOf 1string상위 객체에서 필수
  • const: "unavailable"
purchase_options.reason_codeoneOf 1string상위 객체에서 필수
  • enum: ["checkout_disabled","catalog_unconfigured"]
purchase_optionsoneOf 2object상위 객체에서 필수—
purchase_options.statusoneOf 2string상위 객체에서 필수
  • const: "configured"
purchase_options.catalog_versiononeOf 2string상위 객체에서 필수
  • const: "organization-monthly-2026-10-24"
purchase_options.plansoneOf 2object상위 객체에서 필수—
purchase_options.plans.prooneOf 2object상위 객체에서 필수—
purchase_options.plans.pro.planoneOf 2string상위 객체에서 필수
  • const: "pro"
purchase_options.plans.pro.plan_versiononeOf 2number상위 객체에서 필수
  • const: 1
purchase_options.plans.pro.currencyoneOf 2string상위 객체에서 필수
  • const: "usd"
purchase_options.plans.pro.interval_unitoneOf 2string상위 객체에서 필수
  • const: "month"
purchase_options.plans.pro.monthly_amount_centsoneOf 2number상위 객체에서 필수
  • const: 4000
purchase_options.plans.teamoneOf 2object상위 객체에서 필수—
purchase_options.plans.team.planoneOf 2string상위 객체에서 필수
  • const: "team"
purchase_options.plans.team.plan_versiononeOf 2number상위 객체에서 필수
  • const: 1
purchase_options.plans.team.currencyoneOf 2string상위 객체에서 필수
  • const: "usd"
purchase_options.plans.team.interval_unitoneOf 2string상위 객체에서 필수
  • const: "month"
purchase_options.plans.team.monthly_amount_centsoneOf 2number상위 객체에서 필수
  • const: 8000
pending_changeobject상위 객체에서 필수—
pending_changeoneOf 1object상위 객체에서 필수—
pending_change.statusoneOf 1string상위 객체에서 필수
  • const: "not_observed"
pending_changeoneOf 2object상위 객체에서 필수—
pending_change.statusoneOf 2string상위 객체에서 필수
  • enum: ["scheduled","blocked_by_cancellation","terminated"]
pending_change.target_planoneOf 2string상위 객체에서 필수
  • enum: ["pro","team"]
pending_change.target_plan_versiononeOf 2number상위 객체에서 필수—
pending_change.target_plan_versiononeOf 2 / anyOf 1number상위 객체에서 필수
  • const: 1
pending_change.target_plan_versiononeOf 2 / anyOf 2number상위 객체에서 필수
  • const: 2
pending_change.source_kindoneOf 2string상위 객체에서 필수
  • enum: ["standard","promotional"]
pending_change.currencyoneOf 2string상위 객체에서 필수
  • const: "usd"
pending_change.interval_unitoneOf 2string상위 객체에서 필수
  • const: "month"
pending_change.monthly_amount_centsoneOf 2number상위 객체에서 필수—
pending_change.monthly_amount_centsoneOf 2 / anyOf 1number상위 객체에서 필수
  • const: 4000
pending_change.monthly_amount_centsoneOf 2 / anyOf 2number상위 객체에서 필수
  • const: 8000
pending_change.monthly_amount_centsoneOf 2 / anyOf 3number상위 객체에서 필수
  • const: 1900
pending_change.monthly_amount_centsoneOf 2 / anyOf 4number상위 객체에서 필수
  • const: 3900
pending_change.effective_atoneOf 2string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
pending_change.activationoneOf 2string상위 객체에서 필수
  • const: "next_paid_invoice"
pending_changeoneOf 3object상위 객체에서 필수—
pending_change.statusoneOf 3string상위 객체에서 필수
  • const: "unavailable"
pending_change.reason_codeoneOf 3string상위 객체에서 필수
  • const: "pending_change_authority_not_observed"
continuous_lockobject상위 객체에서 필수—
continuous_lockoneOf 1object상위 객체에서 필수—
continuous_lock.statusoneOf 1string상위 객체에서 필수
  • const: "not_observed"
continuous_lockoneOf 2object상위 객체에서 필수—
continuous_lock.statusoneOf 2string상위 객체에서 필수
  • const: "none"
continuous_lock.reason_codeoneOf 2string상위 객체에서 필수
  • const: "standard_subscription"
continuous_lockoneOf 3object상위 객체에서 필수—
continuous_lock.statusoneOf 3string상위 객체에서 필수
  • const: "active"
continuous_lock.source_kindoneOf 3string상위 객체에서 필수
  • const: "promotional"
continuous_lock.currencyoneOf 3string상위 객체에서 필수
  • const: "usd"
continuous_lock.interval_unitoneOf 3string상위 객체에서 필수
  • const: "month"
continuous_lock.pro_monthly_amount_centsoneOf 3number상위 객체에서 필수
  • const: 1900
continuous_lock.team_monthly_amount_centsoneOf 3number상위 객체에서 필수
  • const: 3900
continuous_lockoneOf 4object상위 객체에서 필수—
continuous_lock.statusoneOf 4string상위 객체에서 필수
  • const: "terminated"
continuous_lock.ended_atoneOf 4string상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
continuous_lockoneOf 5object상위 객체에서 필수—
continuous_lock.statusoneOf 5string상위 객체에서 필수
  • const: "unavailable"
continuous_lock.reason_codeoneOf 5string상위 객체에서 필수
  • const: "commitment_authority_not_observed"
observed_atstring상위 객체에서 필수
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
전체 JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "contract_version": {
      "type": "string",
      "const": "organization-commercial-billing/v1"
    },
    "workspace_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "organization_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "plan": {
      "type": "string",
      "enum": [
        "free",
        "founding_pro",
        "pro",
        "team"
      ]
    },
    "plan_limits": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "plan": {
              "type": "string",
              "const": "free"
            },
            "included_human_seats": {
              "anyOf": [
                {
                  "type": "number",
                  "const": 1
                },
                {
                  "type": "null"
                }
              ]
            },
            "connected_channel_limit": {
              "type": "number",
              "const": 3
            },
            "successful_destination_publishes_limit": {
              "anyOf": [
                {
                  "type": "number",
                  "const": 100
                },
                {
                  "type": "null"
                }
              ]
            },
            "pending_scheduled_posts_limit": {
              "type": "number",
              "const": 30
            },
            "history_days": {
              "type": "number",
              "const": 30
            },
            "stripe_quantity": {
              "type": "number",
              "const": 0
            }
          },
          "required": [
            "plan",
            "included_human_seats",
            "connected_channel_limit",
            "successful_destination_publishes_limit",
            "pending_scheduled_posts_limit",
            "history_days",
            "stripe_quantity"
          ]
        },
        {
          "type": "object",
          "properties": {
            "plan": {
              "type": "string",
              "const": "founding_pro"
            },
            "included_human_seats": {
              "anyOf": [
                {
                  "type": "number",
                  "const": 5
                },
                {
                  "type": "null"
                }
              ]
            },
            "connected_channel_limit": {
              "anyOf": [
                {
                  "type": "number",
                  "const": 10
                },
                {
                  "type": "number",
                  "const": 20
                }
              ]
            },
            "successful_destination_publishes_limit": {
              "anyOf": [
                {
                  "type": "number",
                  "const": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "pending_scheduled_posts_limit": {
              "type": "number",
              "const": 300
            },
            "history_days": {
              "type": "number",
              "const": 365
            },
            "stripe_quantity": {
              "type": "number",
              "const": 1
            }
          },
          "required": [
            "plan",
            "included_human_seats",
            "connected_channel_limit",
            "successful_destination_publishes_limit",
            "pending_scheduled_posts_limit",
            "history_days",
            "stripe_quantity"
          ]
        },
        {
          "type": "object",
          "properties": {
            "plan": {
              "type": "string",
              "const": "pro"
            },
            "included_human_seats": {
              "type": "null"
            },
            "connected_channel_limit": {
              "type": "number",
              "const": 10
            },
            "successful_destination_publishes_limit": {
              "type": "null"
            },
            "unlimited_publishing_platforms": {
              "type": "array",
              "prefixItems": [
                {
                  "type": "string",
                  "const": "instagram"
                },
                {
                  "type": "string",
                  "const": "facebook"
                },
                {
                  "type": "string",
                  "const": "threads"
                },
                {
                  "type": "string",
                  "const": "youtube"
                }
              ],
              "items": false,
              "minItems": 4,
              "maxItems": 4
            },
            "pending_scheduled_posts_limit": {
              "type": "number",
              "const": 300
            },
            "history_days": {
              "type": "number",
              "const": 365
            },
            "stripe_quantity": {
              "type": "number",
              "const": 1
            }
          },
          "required": [
            "plan",
            "included_human_seats",
            "connected_channel_limit",
            "successful_destination_publishes_limit",
            "unlimited_publishing_platforms",
            "pending_scheduled_posts_limit",
            "history_days",
            "stripe_quantity"
          ]
        },
        {
          "type": "object",
          "properties": {
            "plan": {
              "type": "string",
              "const": "team"
            },
            "included_human_seats": {
              "type": "null"
            },
            "connected_channel_limit": {
              "type": "number",
              "const": 20
            },
            "successful_destination_publishes_limit": {
              "type": "null"
            },
            "unlimited_publishing_platforms": {
              "type": "array",
              "prefixItems": [
                {
                  "type": "string",
                  "const": "instagram"
                },
                {
                  "type": "string",
                  "const": "facebook"
                },
                {
                  "type": "string",
                  "const": "threads"
                },
                {
                  "type": "string",
                  "const": "youtube"
                }
              ],
              "items": false,
              "minItems": 4,
              "maxItems": 4
            },
            "pending_scheduled_posts_limit": {
              "type": "number",
              "const": 300
            },
            "history_days": {
              "type": "number",
              "const": 365
            },
            "stripe_quantity": {
              "type": "number",
              "const": 1
            }
          },
          "required": [
            "plan",
            "included_human_seats",
            "connected_channel_limit",
            "successful_destination_publishes_limit",
            "unlimited_publishing_platforms",
            "pending_scheduled_posts_limit",
            "history_days",
            "stripe_quantity"
          ]
        }
      ]
    },
    "pricing": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string",
                  "const": "available"
                },
                "source_kind": {
                  "type": "string",
                  "const": "standard"
                },
                "authority": {
                  "type": "string",
                  "const": "default_free"
                },
                "plan": {
                  "type": "string",
                  "const": "free"
                },
                "plan_version": {
                  "anyOf": [
                    {
                      "type": "number",
                      "const": 1
                    },
                    {
                      "type": "number",
                      "const": 2
                    }
                  ]
                },
                "currency": {
                  "type": "string",
                  "const": "usd"
                },
                "interval_unit": {
                  "type": "string",
                  "const": "month"
                },
                "monthly_amount_cents": {
                  "type": "number",
                  "const": 0
                }
              },
              "required": [
                "status",
                "source_kind",
                "authority",
                "plan",
                "plan_version",
                "currency",
                "interval_unit",
                "monthly_amount_cents"
              ]
            },
            {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string",
                  "const": "available"
                },
                "source_kind": {
                  "type": "string",
                  "const": "standard"
                },
                "authority": {
                  "type": "string",
                  "const": "verified_invoice"
                },
                "plan": {
                  "type": "string",
                  "const": "pro"
                },
                "plan_version": {
                  "type": "number",
                  "const": 1
                },
                "currency": {
                  "type": "string",
                  "const": "usd"
                },
                "interval_unit": {
                  "type": "string",
                  "const": "month"
                },
                "monthly_amount_cents": {
                  "type": "number",
                  "const": 4000
                },
                "verified_period": {
                  "type": "object",
                  "properties": {
                    "period_start": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    },
                    "period_end": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    }
                  },
                  "required": [
                    "period_start",
                    "period_end"
                  ]
                }
              },
              "required": [
                "status",
                "source_kind",
                "authority",
                "plan",
                "plan_version",
                "currency",
                "interval_unit",
                "monthly_amount_cents",
                "verified_period"
              ]
            },
            {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string",
                  "const": "available"
                },
                "source_kind": {
                  "type": "string",
                  "const": "standard"
                },
                "authority": {
                  "type": "string",
                  "const": "verified_invoice"
                },
                "plan": {
                  "type": "string",
                  "const": "team"
                },
                "plan_version": {
                  "type": "number",
                  "const": 1
                },
                "currency": {
                  "type": "string",
                  "const": "usd"
                },
                "interval_unit": {
                  "type": "string",
                  "const": "month"
                },
                "monthly_amount_cents": {
                  "type": "number",
                  "const": 8000
                },
                "verified_period": {
                  "type": "object",
                  "properties": {
                    "period_start": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    },
                    "period_end": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    }
                  },
                  "required": [
                    "period_start",
                    "period_end"
                  ]
                }
              },
              "required": [
                "status",
                "source_kind",
                "authority",
                "plan",
                "plan_version",
                "currency",
                "interval_unit",
                "monthly_amount_cents",
                "verified_period"
              ]
            }
          ]
        },
        {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string",
                  "const": "available"
                },
                "source_kind": {
                  "type": "string",
                  "const": "promotional"
                },
                "authority": {
                  "type": "string",
                  "const": "verified_invoice"
                },
                "plan": {
                  "type": "string",
                  "const": "pro"
                },
                "plan_version": {
                  "type": "number",
                  "const": 2
                },
                "currency": {
                  "type": "string",
                  "const": "usd"
                },
                "interval_unit": {
                  "type": "string",
                  "const": "month"
                },
                "monthly_amount_cents": {
                  "type": "number",
                  "const": 1900
                },
                "verified_period": {
                  "type": "object",
                  "properties": {
                    "period_start": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    },
                    "period_end": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    }
                  },
                  "required": [
                    "period_start",
                    "period_end"
                  ]
                }
              },
              "required": [
                "status",
                "source_kind",
                "authority",
                "plan",
                "plan_version",
                "currency",
                "interval_unit",
                "monthly_amount_cents",
                "verified_period"
              ]
            },
            {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string",
                  "const": "available"
                },
                "source_kind": {
                  "type": "string",
                  "const": "promotional"
                },
                "authority": {
                  "type": "string",
                  "const": "verified_invoice"
                },
                "plan": {
                  "type": "string",
                  "const": "team"
                },
                "plan_version": {
                  "type": "number",
                  "const": 2
                },
                "currency": {
                  "type": "string",
                  "const": "usd"
                },
                "interval_unit": {
                  "type": "string",
                  "const": "month"
                },
                "monthly_amount_cents": {
                  "type": "number",
                  "const": 3900
                },
                "verified_period": {
                  "type": "object",
                  "properties": {
                    "period_start": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    },
                    "period_end": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    }
                  },
                  "required": [
                    "period_start",
                    "period_end"
                  ]
                }
              },
              "required": [
                "status",
                "source_kind",
                "authority",
                "plan",
                "plan_version",
                "currency",
                "interval_unit",
                "monthly_amount_cents",
                "verified_period"
              ]
            }
          ]
        },
        {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string",
                  "const": "available"
                },
                "source_kind": {
                  "type": "string",
                  "const": "legacy"
                },
                "plan": {
                  "type": "string",
                  "const": "founding_pro"
                },
                "plan_version": {
                  "type": "integer",
                  "exclusiveMinimum": 0,
                  "maximum": 2147483647
                },
                "currency": {
                  "type": "string",
                  "const": "usd"
                },
                "interval_unit": {
                  "type": "string",
                  "const": "month"
                },
                "monthly_amount_cents": {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 2147483647
                },
                "authority": {
                  "type": "string",
                  "const": "legacy_commitment"
                }
              },
              "required": [
                "status",
                "source_kind",
                "plan",
                "plan_version",
                "currency",
                "interval_unit",
                "monthly_amount_cents",
                "authority"
              ]
            },
            {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string",
                  "const": "available"
                },
                "source_kind": {
                  "type": "string",
                  "const": "legacy"
                },
                "plan": {
                  "type": "string",
                  "const": "founding_pro"
                },
                "plan_version": {
                  "type": "integer",
                  "exclusiveMinimum": 0,
                  "maximum": 2147483647
                },
                "currency": {
                  "type": "string",
                  "const": "usd"
                },
                "interval_unit": {
                  "type": "string",
                  "const": "month"
                },
                "monthly_amount_cents": {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 2147483647
                },
                "authority": {
                  "type": "string",
                  "const": "verified_invoice"
                },
                "verified_period": {
                  "type": "object",
                  "properties": {
                    "period_start": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    },
                    "period_end": {
                      "type": "string",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                      "format": "date-time"
                    }
                  },
                  "required": [
                    "period_start",
                    "period_end"
                  ]
                }
              },
              "required": [
                "status",
                "source_kind",
                "plan",
                "plan_version",
                "currency",
                "interval_unit",
                "monthly_amount_cents",
                "authority",
                "verified_period"
              ]
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "unavailable"
            },
            "source_kind": {
              "type": "string",
              "const": "manual"
            },
            "authority": {
              "type": "string",
              "const": "manual_grant"
            },
            "plan": {
              "type": "string",
              "enum": [
                "free",
                "founding_pro",
                "pro",
                "team"
              ]
            },
            "plan_version": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 2147483647
            },
            "monthly_amount_cents": {
              "type": "null"
            },
            "reason_code": {
              "type": "string",
              "const": "recurring_charge_not_observed"
            }
          },
          "required": [
            "status",
            "source_kind",
            "authority",
            "plan",
            "plan_version",
            "monthly_amount_cents",
            "reason_code"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "unavailable"
            },
            "source_kind": {
              "type": "string",
              "const": "unavailable"
            },
            "authority": {
              "type": "string",
              "const": "not_observed"
            },
            "plan": {
              "type": "string",
              "enum": [
                "free",
                "founding_pro",
                "pro",
                "team"
              ]
            },
            "plan_version": {
              "anyOf": [
                {
                  "type": "integer",
                  "exclusiveMinimum": 0,
                  "maximum": 2147483647
                },
                {
                  "type": "null"
                }
              ]
            },
            "monthly_amount_cents": {
              "type": "null"
            },
            "reason_code": {
              "type": "string",
              "enum": [
                "current_period_proof_missing",
                "pricing_authority_not_observed",
                "catalog_binding_not_observed"
              ]
            }
          },
          "required": [
            "status",
            "source_kind",
            "authority",
            "plan",
            "plan_version",
            "monthly_amount_cents",
            "reason_code"
          ]
        }
      ]
    },
    "purchase_options": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "unavailable"
            },
            "reason_code": {
              "type": "string",
              "enum": [
                "checkout_disabled",
                "catalog_unconfigured"
              ]
            }
          },
          "required": [
            "status",
            "reason_code"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "configured"
            },
            "catalog_version": {
              "type": "string",
              "const": "organization-monthly-2026-10-24"
            },
            "plans": {
              "type": "object",
              "properties": {
                "pro": {
                  "type": "object",
                  "properties": {
                    "plan": {
                      "type": "string",
                      "const": "pro"
                    },
                    "plan_version": {
                      "type": "number",
                      "const": 1
                    },
                    "currency": {
                      "type": "string",
                      "const": "usd"
                    },
                    "interval_unit": {
                      "type": "string",
                      "const": "month"
                    },
                    "monthly_amount_cents": {
                      "type": "number",
                      "const": 4000
                    }
                  },
                  "required": [
                    "plan",
                    "plan_version",
                    "currency",
                    "interval_unit",
                    "monthly_amount_cents"
                  ]
                },
                "team": {
                  "type": "object",
                  "properties": {
                    "plan": {
                      "type": "string",
                      "const": "team"
                    },
                    "plan_version": {
                      "type": "number",
                      "const": 1
                    },
                    "currency": {
                      "type": "string",
                      "const": "usd"
                    },
                    "interval_unit": {
                      "type": "string",
                      "const": "month"
                    },
                    "monthly_amount_cents": {
                      "type": "number",
                      "const": 8000
                    }
                  },
                  "required": [
                    "plan",
                    "plan_version",
                    "currency",
                    "interval_unit",
                    "monthly_amount_cents"
                  ]
                }
              },
              "required": [
                "pro",
                "team"
              ]
            }
          },
          "required": [
            "status",
            "catalog_version",
            "plans"
          ]
        }
      ]
    },
    "pending_change": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "not_observed"
            }
          },
          "required": [
            "status"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "enum": [
                "scheduled",
                "blocked_by_cancellation",
                "terminated"
              ]
            },
            "target_plan": {
              "type": "string",
              "enum": [
                "pro",
                "team"
              ]
            },
            "target_plan_version": {
              "anyOf": [
                {
                  "type": "number",
                  "const": 1
                },
                {
                  "type": "number",
                  "const": 2
                }
              ]
            },
            "source_kind": {
              "type": "string",
              "enum": [
                "standard",
                "promotional"
              ]
            },
            "currency": {
              "type": "string",
              "const": "usd"
            },
            "interval_unit": {
              "type": "string",
              "const": "month"
            },
            "monthly_amount_cents": {
              "anyOf": [
                {
                  "type": "number",
                  "const": 4000
                },
                {
                  "type": "number",
                  "const": 8000
                },
                {
                  "type": "number",
                  "const": 1900
                },
                {
                  "type": "number",
                  "const": 3900
                }
              ]
            },
            "effective_at": {
              "type": "string",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
              "format": "date-time"
            },
            "activation": {
              "type": "string",
              "const": "next_paid_invoice"
            }
          },
          "required": [
            "status",
            "target_plan",
            "target_plan_version",
            "source_kind",
            "currency",
            "interval_unit",
            "monthly_amount_cents",
            "effective_at",
            "activation"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "unavailable"
            },
            "reason_code": {
              "type": "string",
              "const": "pending_change_authority_not_observed"
            }
          },
          "required": [
            "status",
            "reason_code"
          ]
        }
      ]
    },
    "continuous_lock": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "not_observed"
            }
          },
          "required": [
            "status"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "none"
            },
            "reason_code": {
              "type": "string",
              "const": "standard_subscription"
            }
          },
          "required": [
            "status",
            "reason_code"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "active"
            },
            "source_kind": {
              "type": "string",
              "const": "promotional"
            },
            "currency": {
              "type": "string",
              "const": "usd"
            },
            "interval_unit": {
              "type": "string",
              "const": "month"
            },
            "pro_monthly_amount_cents": {
              "type": "number",
              "const": 1900
            },
            "team_monthly_amount_cents": {
              "type": "number",
              "const": 3900
            }
          },
          "required": [
            "status",
            "source_kind",
            "currency",
            "interval_unit",
            "pro_monthly_amount_cents",
            "team_monthly_amount_cents"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "terminated"
            },
            "ended_at": {
              "type": "string",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
              "format": "date-time"
            }
          },
          "required": [
            "status",
            "ended_at"
          ]
        },
        {
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "const": "unavailable"
            },
            "reason_code": {
              "type": "string",
              "const": "commitment_authority_not_observed"
            }
          },
          "required": [
            "status",
            "reason_code"
          ]
        }
      ]
    },
    "observed_at": {
      "type": "string",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      "format": "date-time"
    }
  },
  "required": [
    "contract_version",
    "workspace_id",
    "organization_id",
    "plan",
    "plan_limits",
    "pricing",
    "purchase_options",
    "pending_change",
    "continuous_lock",
    "observed_at"
  ]
}

오류 및 안전한 재시도

HTTP 상태와 응답 본문을 확인하세요. 400 검증 오류에는 ZodError가 포함될 수 있으며, 핸들러 오류는 error, message, code 필드를 사용합니다. 진단용 request_id 또는 x-request-id를 자격 증명 없이 보관하세요. 401/403 접근 오류는 재시도 전에 해결하고 429에는 Retry-After를 따르세요. 쓰기 결과가 불확실하거나 5xx를 반환하면 먼저 기존 결과를 읽으세요. 지원하는 작업에서만 멱등성 키를 재사용하세요. 재시도 동작은 작업마다 다르며 정확히 한 번 전송을 보장하지 않습니다.

문제 해결 안내

예제

예제는 스키마로 확인한 가상 값을 사용합니다. ID를 사용 권한이 있는 값으로, 미디어를 준비된 에셋으로, 날짜를 확인된 게시 시각으로 바꾸세요. 쓰기 제출 전에 계정 적격성을 확인하세요. 이 페이지는 API 요청을 보내지 않습니다.

서버에서 SOSOAPI_ACCESS_TOKEN에 이 작업이 허용하는 자격 증명을 설정하고 브라우저 코드에 넣지 마세요. 에이전트는 sosoapi auth login으로 브라우저 로그인하며 CLI가 자격 증명을 갱신하게 하세요.

request.json

{
  "workspace_id": "11111111-1111-4111-8111-111111111111"
}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/identity-api/commercial-access/billing/status" \
  -H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary @request.json

JavaScript

// Server-side JavaScript. Do not print tokens or credential-bearing responses.
const token = process.env.SOSOAPI_ACCESS_TOKEN;
if (!token) throw new Error("Set an accepted credential for this operation");
const response = await fetch("https://gqeshlawtcexsapabaui.supabase.co/functions/v1/identity-api/commercial-access/billing/status", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({
  "workspace_id": "11111111-1111-4111-8111-111111111111"
})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.

CLI

npx sosoapi api post /identity-api/commercial-access/billing/status < request.json

합성 응답 예제

{
  "contract_version": "organization-commercial-billing/v1",
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "organization_id": "11111111-1111-4111-8111-111111111111",
  "plan": "free",
  "plan_limits": {
    "plan": "free",
    "included_human_seats": null,
    "connected_channel_limit": 3,
    "successful_destination_publishes_limit": null,
    "pending_scheduled_posts_limit": 30,
    "history_days": 30,
    "stripe_quantity": 0
  },
  "pricing": {
    "status": "available",
    "source_kind": "standard",
    "authority": "default_free",
    "plan": "free",
    "plan_version": 1,
    "currency": "usd",
    "interval_unit": "month",
    "monthly_amount_cents": 0
  },
  "purchase_options": {
    "status": "unavailable",
    "reason_code": "checkout_disabled"
  },
  "pending_change": {
    "status": "not_observed"
  },
  "continuous_lock": {
    "status": "not_observed"
  },
  "observed_at": "2099-01-15T09:00:00Z"
}

MCP: sosoapi_get_organization_billing