帳號與工作空間
取得組織帳單資料
在所選工作空間範圍內,以目前的組織擁有者權限,讀取組織的實際方案、依發票計算的價格與待生效變更。此操作無法領取優惠或變更帳單。
POST /identity-api/commercial-access/billing/status契約檢閱日期: · sha256:794dfa010f25b5de
概覽
在所選工作空間範圍內,以目前的組織擁有者權限,讀取組織的實際方案、依發票計算的價格與待生效變更。此操作無法領取優惠或變更帳單。
成功 HTTP 回應可能表示請求已接受,並非已完成。背景工作請儲存回傳 ID,持續檢查同一操作直到完成。已排程或已接受的貼文,只有平台確認後才算已發布;用戶端逾時無法證明結果。
驗證與權限
權杖只能使用其擁有者持有的權利。每次請求會檢查工作空間成員資格、資源擁有權、所選工作空間及已授予能力。core 與 full 設定檔只變更顯示的工具,不會授予存取權。
請求欄位
「必填」是指在其父物件及所選分支內必填。必填子欄位不會使選填父物件變成必填。下列規則與欄位名稱均複製自契約。
| 欄位 / 分支 | 類型 / 必填 | 約束 |
|---|---|---|
$ | object在父物件中必填 |
|
workspace_id | string在父物件中必填 |
|
完整 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_version | string在父物件中必填 |
|
workspace_id | string在父物件中必填 |
|
organization_id | string在父物件中必填 |
|
plan | string在父物件中必填 |
|
plan_limits | object在父物件中必填 | — |
plan_limitsoneOf 1 | object在父物件中必填 | — |
plan_limits.planoneOf 1 | string在父物件中必填 |
|
plan_limits.included_human_seatsoneOf 1 | number | null在父物件中必填 | — |
plan_limits.included_human_seatsoneOf 1 / anyOf 1 | number在父物件中必填 |
|
plan_limits.included_human_seatsoneOf 1 / anyOf 2 | null在父物件中必填 | — |
plan_limits.connected_channel_limitoneOf 1 | number在父物件中必填 |
|
plan_limits.successful_destination_publishes_limitoneOf 1 | number | null在父物件中必填 | — |
plan_limits.successful_destination_publishes_limitoneOf 1 / anyOf 1 | number在父物件中必填 |
|
plan_limits.successful_destination_publishes_limitoneOf 1 / anyOf 2 | null在父物件中必填 | — |
plan_limits.pending_scheduled_posts_limitoneOf 1 | number在父物件中必填 |
|
plan_limits.history_daysoneOf 1 | number在父物件中必填 |
|
plan_limits.stripe_quantityoneOf 1 | number在父物件中必填 |
|
plan_limitsoneOf 2 | object在父物件中必填 | — |
plan_limits.planoneOf 2 | string在父物件中必填 |
|
plan_limits.included_human_seatsoneOf 2 | number | null在父物件中必填 | — |
plan_limits.included_human_seatsoneOf 2 / anyOf 1 | number在父物件中必填 |
|
plan_limits.included_human_seatsoneOf 2 / anyOf 2 | null在父物件中必填 | — |
plan_limits.connected_channel_limitoneOf 2 | number在父物件中必填 | — |
plan_limits.connected_channel_limitoneOf 2 / anyOf 1 | number在父物件中必填 |
|
plan_limits.connected_channel_limitoneOf 2 / anyOf 2 | number在父物件中必填 |
|
plan_limits.successful_destination_publishes_limitoneOf 2 | number | null在父物件中必填 | — |
plan_limits.successful_destination_publishes_limitoneOf 2 / anyOf 1 | number在父物件中必填 |
|
plan_limits.successful_destination_publishes_limitoneOf 2 / anyOf 2 | null在父物件中必填 | — |
plan_limits.pending_scheduled_posts_limitoneOf 2 | number在父物件中必填 |
|
plan_limits.history_daysoneOf 2 | number在父物件中必填 |
|
plan_limits.stripe_quantityoneOf 2 | number在父物件中必填 |
|
plan_limitsoneOf 3 | object在父物件中必填 | — |
plan_limits.planoneOf 3 | string在父物件中必填 |
|
plan_limits.included_human_seatsoneOf 3 | null在父物件中必填 | — |
plan_limits.connected_channel_limitoneOf 3 | number在父物件中必填 |
|
plan_limits.successful_destination_publishes_limitoneOf 3 | null在父物件中必填 | — |
plan_limits.unlimited_publishing_platformsoneOf 3 | array在父物件中必填 |
|
plan_limits.pending_scheduled_posts_limitoneOf 3 | number在父物件中必填 |
|
plan_limits.history_daysoneOf 3 | number在父物件中必填 |
|
plan_limits.stripe_quantityoneOf 3 | number在父物件中必填 |
|
plan_limitsoneOf 4 | object在父物件中必填 | — |
plan_limits.planoneOf 4 | string在父物件中必填 |
|
plan_limits.included_human_seatsoneOf 4 | null在父物件中必填 | — |
plan_limits.connected_channel_limitoneOf 4 | number在父物件中必填 |
|
plan_limits.successful_destination_publishes_limitoneOf 4 | null在父物件中必填 | — |
plan_limits.unlimited_publishing_platformsoneOf 4 | array在父物件中必填 |
|
plan_limits.pending_scheduled_posts_limitoneOf 4 | number在父物件中必填 |
|
plan_limits.history_daysoneOf 4 | number在父物件中必填 |
|
plan_limits.stripe_quantityoneOf 4 | number在父物件中必填 |
|
pricing | object在父物件中必填 | — |
pricingoneOf 1 | object在父物件中必填 | — |
pricingoneOf 1 / oneOf 1 | object在父物件中必填 | — |
pricing.statusoneOf 1 / oneOf 1 | string在父物件中必填 |
|
pricing.source_kindoneOf 1 / oneOf 1 | string在父物件中必填 |
|
pricing.authorityoneOf 1 / oneOf 1 | string在父物件中必填 |
|
pricing.planoneOf 1 / oneOf 1 | string在父物件中必填 |
|
pricing.plan_versiononeOf 1 / oneOf 1 | number在父物件中必填 | — |
pricing.plan_versiononeOf 1 / oneOf 1 / anyOf 1 | number在父物件中必填 |
|
pricing.plan_versiononeOf 1 / oneOf 1 / anyOf 2 | number在父物件中必填 |
|
pricing.currencyoneOf 1 / oneOf 1 | string在父物件中必填 |
|
pricing.interval_unitoneOf 1 / oneOf 1 | string在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 1 / oneOf 1 | number在父物件中必填 |
|
pricingoneOf 1 / oneOf 2 | object在父物件中必填 | — |
pricing.statusoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricing.source_kindoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricing.authorityoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricing.planoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricing.plan_versiononeOf 1 / oneOf 2 | number在父物件中必填 |
|
pricing.currencyoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricing.interval_unitoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 1 / oneOf 2 | number在父物件中必填 |
|
pricing.verified_periodoneOf 1 / oneOf 2 | object在父物件中必填 | — |
pricing.verified_period.period_startoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricing.verified_period.period_endoneOf 1 / oneOf 2 | string在父物件中必填 |
|
pricingoneOf 1 / oneOf 3 | object在父物件中必填 | — |
pricing.statusoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricing.source_kindoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricing.authorityoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricing.planoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricing.plan_versiononeOf 1 / oneOf 3 | number在父物件中必填 |
|
pricing.currencyoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricing.interval_unitoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 1 / oneOf 3 | number在父物件中必填 |
|
pricing.verified_periodoneOf 1 / oneOf 3 | object在父物件中必填 | — |
pricing.verified_period.period_startoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricing.verified_period.period_endoneOf 1 / oneOf 3 | string在父物件中必填 |
|
pricingoneOf 2 | object在父物件中必填 | — |
pricingoneOf 2 / oneOf 1 | object在父物件中必填 | — |
pricing.statusoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricing.source_kindoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricing.authorityoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricing.planoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricing.plan_versiononeOf 2 / oneOf 1 | number在父物件中必填 |
|
pricing.currencyoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricing.interval_unitoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 2 / oneOf 1 | number在父物件中必填 |
|
pricing.verified_periodoneOf 2 / oneOf 1 | object在父物件中必填 | — |
pricing.verified_period.period_startoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricing.verified_period.period_endoneOf 2 / oneOf 1 | string在父物件中必填 |
|
pricingoneOf 2 / oneOf 2 | object在父物件中必填 | — |
pricing.statusoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricing.source_kindoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricing.authorityoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricing.planoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricing.plan_versiononeOf 2 / oneOf 2 | number在父物件中必填 |
|
pricing.currencyoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricing.interval_unitoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 2 / oneOf 2 | number在父物件中必填 |
|
pricing.verified_periodoneOf 2 / oneOf 2 | object在父物件中必填 | — |
pricing.verified_period.period_startoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricing.verified_period.period_endoneOf 2 / oneOf 2 | string在父物件中必填 |
|
pricingoneOf 3 | object在父物件中必填 | — |
pricingoneOf 3 / oneOf 1 | object在父物件中必填 | — |
pricing.statusoneOf 3 / oneOf 1 | string在父物件中必填 |
|
pricing.source_kindoneOf 3 / oneOf 1 | string在父物件中必填 |
|
pricing.planoneOf 3 / oneOf 1 | string在父物件中必填 |
|
pricing.plan_versiononeOf 3 / oneOf 1 | integer在父物件中必填 |
|
pricing.currencyoneOf 3 / oneOf 1 | string在父物件中必填 |
|
pricing.interval_unitoneOf 3 / oneOf 1 | string在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 3 / oneOf 1 | integer在父物件中必填 |
|
pricing.authorityoneOf 3 / oneOf 1 | string在父物件中必填 |
|
pricingoneOf 3 / oneOf 2 | object在父物件中必填 | — |
pricing.statusoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricing.source_kindoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricing.planoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricing.plan_versiononeOf 3 / oneOf 2 | integer在父物件中必填 |
|
pricing.currencyoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricing.interval_unitoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 3 / oneOf 2 | integer在父物件中必填 |
|
pricing.authorityoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricing.verified_periodoneOf 3 / oneOf 2 | object在父物件中必填 | — |
pricing.verified_period.period_startoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricing.verified_period.period_endoneOf 3 / oneOf 2 | string在父物件中必填 |
|
pricingoneOf 4 | object在父物件中必填 | — |
pricing.statusoneOf 4 | string在父物件中必填 |
|
pricing.source_kindoneOf 4 | string在父物件中必填 |
|
pricing.authorityoneOf 4 | string在父物件中必填 |
|
pricing.planoneOf 4 | string在父物件中必填 |
|
pricing.plan_versiononeOf 4 | integer在父物件中必填 |
|
pricing.monthly_amount_centsoneOf 4 | null在父物件中必填 | — |
pricing.reason_codeoneOf 4 | string在父物件中必填 |
|
pricingoneOf 5 | object在父物件中必填 | — |
pricing.statusoneOf 5 | string在父物件中必填 |
|
pricing.source_kindoneOf 5 | string在父物件中必填 |
|
pricing.authorityoneOf 5 | string在父物件中必填 |
|
pricing.planoneOf 5 | string在父物件中必填 |
|
pricing.plan_versiononeOf 5 | integer | null在父物件中必填 | — |
pricing.plan_versiononeOf 5 / anyOf 1 | integer在父物件中必填 |
|
pricing.plan_versiononeOf 5 / anyOf 2 | null在父物件中必填 | — |
pricing.monthly_amount_centsoneOf 5 | null在父物件中必填 | — |
pricing.reason_codeoneOf 5 | string在父物件中必填 |
|
purchase_options | object在父物件中必填 | — |
purchase_optionsoneOf 1 | object在父物件中必填 | — |
purchase_options.statusoneOf 1 | string在父物件中必填 |
|
purchase_options.reason_codeoneOf 1 | string在父物件中必填 |
|
purchase_optionsoneOf 2 | object在父物件中必填 | — |
purchase_options.statusoneOf 2 | string在父物件中必填 |
|
purchase_options.catalog_versiononeOf 2 | string在父物件中必填 |
|
purchase_options.plansoneOf 2 | object在父物件中必填 | — |
purchase_options.plans.prooneOf 2 | object在父物件中必填 | — |
purchase_options.plans.pro.planoneOf 2 | string在父物件中必填 |
|
purchase_options.plans.pro.plan_versiononeOf 2 | number在父物件中必填 |
|
purchase_options.plans.pro.currencyoneOf 2 | string在父物件中必填 |
|
purchase_options.plans.pro.interval_unitoneOf 2 | string在父物件中必填 |
|
purchase_options.plans.pro.monthly_amount_centsoneOf 2 | number在父物件中必填 |
|
purchase_options.plans.teamoneOf 2 | object在父物件中必填 | — |
purchase_options.plans.team.planoneOf 2 | string在父物件中必填 |
|
purchase_options.plans.team.plan_versiononeOf 2 | number在父物件中必填 |
|
purchase_options.plans.team.currencyoneOf 2 | string在父物件中必填 |
|
purchase_options.plans.team.interval_unitoneOf 2 | string在父物件中必填 |
|
purchase_options.plans.team.monthly_amount_centsoneOf 2 | number在父物件中必填 |
|
pending_change | object在父物件中必填 | — |
pending_changeoneOf 1 | object在父物件中必填 | — |
pending_change.statusoneOf 1 | string在父物件中必填 |
|
pending_changeoneOf 2 | object在父物件中必填 | — |
pending_change.statusoneOf 2 | string在父物件中必填 |
|
pending_change.target_planoneOf 2 | string在父物件中必填 |
|
pending_change.target_plan_versiononeOf 2 | number在父物件中必填 | — |
pending_change.target_plan_versiononeOf 2 / anyOf 1 | number在父物件中必填 |
|
pending_change.target_plan_versiononeOf 2 / anyOf 2 | number在父物件中必填 |
|
pending_change.source_kindoneOf 2 | string在父物件中必填 |
|
pending_change.currencyoneOf 2 | string在父物件中必填 |
|
pending_change.interval_unitoneOf 2 | string在父物件中必填 |
|
pending_change.monthly_amount_centsoneOf 2 | number在父物件中必填 | — |
pending_change.monthly_amount_centsoneOf 2 / anyOf 1 | number在父物件中必填 |
|
pending_change.monthly_amount_centsoneOf 2 / anyOf 2 | number在父物件中必填 |
|
pending_change.monthly_amount_centsoneOf 2 / anyOf 3 | number在父物件中必填 |
|
pending_change.monthly_amount_centsoneOf 2 / anyOf 4 | number在父物件中必填 |
|
pending_change.effective_atoneOf 2 | string在父物件中必填 |
|
pending_change.activationoneOf 2 | string在父物件中必填 |
|
pending_changeoneOf 3 | object在父物件中必填 | — |
pending_change.statusoneOf 3 | string在父物件中必填 |
|
pending_change.reason_codeoneOf 3 | string在父物件中必填 |
|
continuous_lock | object在父物件中必填 | — |
continuous_lockoneOf 1 | object在父物件中必填 | — |
continuous_lock.statusoneOf 1 | string在父物件中必填 |
|
continuous_lockoneOf 2 | object在父物件中必填 | — |
continuous_lock.statusoneOf 2 | string在父物件中必填 |
|
continuous_lock.reason_codeoneOf 2 | string在父物件中必填 |
|
continuous_lockoneOf 3 | object在父物件中必填 | — |
continuous_lock.statusoneOf 3 | string在父物件中必填 |
|
continuous_lock.source_kindoneOf 3 | string在父物件中必填 |
|
continuous_lock.currencyoneOf 3 | string在父物件中必填 |
|
continuous_lock.interval_unitoneOf 3 | string在父物件中必填 |
|
continuous_lock.pro_monthly_amount_centsoneOf 3 | number在父物件中必填 |
|
continuous_lock.team_monthly_amount_centsoneOf 3 | number在父物件中必填 |
|
continuous_lockoneOf 4 | object在父物件中必填 | — |
continuous_lock.statusoneOf 4 | string在父物件中必填 |
|
continuous_lock.ended_atoneOf 4 | string在父物件中必填 |
|
continuous_lockoneOf 5 | object在父物件中必填 | — |
continuous_lock.statusoneOf 5 | string在父物件中必填 |
|
continuous_lock.reason_codeoneOf 5 | string在父物件中必填 |
|
observed_at | string在父物件中必填 |
|
完整 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 替換為您有權使用的 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.jsonJavaScript
// 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"
}