メインコンテンツへスキップ
サブスクリプション商品を有効化または無効化します。
POST /v1/actions/subscription-product/update-status
認証: API Key

リクエストボディ

フィールド必須説明
idstringYes商品 ID(PROD_xxx フォーマット)
statusstringYesactive または inactive

リクエスト例

import { ProductVersionStatus } from "@waffo/pancake-ts";

await client.subscriptionProducts.updateStatus({
  id: "PROD_3F7H2J5L8N1Q4S6U",
  status: ProductVersionStatus.Inactive,
});

成功レスポンス (200)

{
  "data": {
    "product": {
      "id": "PROD_3F7H2J5L8N1Q4S6U",
      "storeId": "STO_2D5F8G3H1K4M6N9P",
      "name": "Pro Plan",
      "description": "Full access to all Pro features.",
      "billingPeriod": "monthly",
      "prices": {
        "USD": { "amount": "29.00", "taxCategory": "saas" },
        "EUR": { "amount": "27.00", "taxCategory": "saas" }
      },
      "media": [],
      "successUrl": "https://example.com/welcome",
      "metadata": { "trialDays": 14 },
      "status": "inactive",
      "createdAt": "2026-03-30T10:30:00.000Z",
      "updatedAt": "2026-03-30T13:00:00.000Z"
    }
  }
}

レスポンスフィールド

サブスクリプション商品の作成レスポンスと同じです。
サブスクリプション商品を無効化すると新規登録は防止されますが、既存のアクティブなサブスクリプションはキャンセルされません。加入者は現在の請求サイクルに影響なく継続します。

エラー

リトライポリシー:4xx は一切リトライしない — リクエストを修正してから再送信。5xx は指数バックオフでリトライ(5s 開始、最大 3 回)。
ステータスerrors[0].message意味推奨処理
400Missing header: x-context-merchant-idマーチャントコンテキスト header が転送されていないSDK 設定を修正
400Missing or invalid header: x-context-environment環境 header が欠落、または test / prod ではないX-Environmenttest または prod に設定
400Missing required field: idリクエストボディに id が含まれないid を追加して再送信
400Expected format: PROD_xxx, got "X"id が正しい Short ID ではないPROD_ 接頭辞付きの Short ID を使用
400Invalid or missing status (must be 'active' or 'inactive')status 欠落または許可値以外active または inactive を使用
400メッセージに has no version を含む対象環境(test または prod)にバージョンがまだない先にこの環境でバージョンを作成(test から公開、または test で作成)
401Unauthorized認証失敗API Key、タイムスタンプ、署名を確認
404Product not found / Current version not foundproduct ID が存在しない(または現行バージョン欠落)product ID を確認
500Internal server error一時的な下流障害指数バックオフでリトライ(5s 開始、最大 3 回)