API リファレンス

リファレンス

エラーリファレンス

HTTP ステータス、error.code、error.numeric_code を現在の操作と合わせて確認します。詳細な数値コードは元の HTTP ステータスと code を保ったまま原因を区別できます。error.message は診断用で分岐条件には使わず、request_id を保存してください。

エラーレスポンスの形式

HTTP ステータス、error.code、error.numeric_code を現在の操作と合わせて確認します。数値コードは文字列です。request_id は調査用で、冪等性キーやタスク ID ではありません。

request_id
この HTTP リクエストに対してサーバーが生成する必須文字列です。X-Request-Id レスポンスヘッダーにも返ります。問い合わせ時に添えてください。
client_request_id
有効な X-Request-Id リクエストヘッダーを送った場合のみ、その値を返す任意文字列です。クライアント側の照合用で、サーバーの request_id は置き換えません。
error.code
互換性のため保持される安定した snake_case の機械可読コードです。操作と HTTP ステータスも確認してください。
error.numeric_code
従来の code や HTTP ステータスを変えずに原因を詳しく示す 5 桁の文字列です。操作を全体で一意に識別する値ではありません。
error.message
開発者向けの英語の診断文です。チャネルの元の原因によって内容が変わる場合があります。解析したり、プログラムの分岐条件にしないでください。
エラー JSON の例
{
  "request_id": "req_example",
  "error": {
    "code": "invalid_request",
    "numeric_code": "10000",
    "message": "Invalid request parameters"
  },
  "client_request_id": "<CLIENT_REQUEST_ID>"
}

400 Bad Request

  • auth_mode_phone_required20019

    この方式ではアカウント作成時に provider_data.phone が必要です。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "auth_mode_phone_required",
        "numeric_code": "20019",
        "message": "Phone number is required for this auth mode"
      }
    }
    
  • create_api_key_failed11101

    操作が拒否されました。リクエストを確認し、request_id を保存してください。

    対処と再試行: 作成を繰り返す前に既存のリソースを一覧・照会し、前回の作成が反映されたか確認します。原因を解消して request_id を保存し、重複リソースを自動作成しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "create_api_key_failed",
        "numeric_code": "11101",
        "message": "Failed to create API key"
      }
    }
    
  • invalid_conversation_type37000

    type は user、group、channel のいずれかです。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "invalid_conversation_type",
        "numeric_code": "37000",
        "message": "Field 'type' must be one of: user, group, channel"
      }
    }
    
  • invalid_provider30000

    URL のチャネル識別子を確認してください。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "invalid_provider",
        "numeric_code": "30000",
        "message": "Invalid provider parameter"
      }
    }
    
  • invalid_reply_token36006

    引用トークンを読み取れません。受信イベントの data.message.reply_token をそのまま使ってください。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "invalid_reply_token",
        "numeric_code": "36006",
        "message": "Invalid or unreadable reply_token"
      }
    }
    
  • invalid_request10000

    JSON 本文と必須項目を確認してください。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "invalid_request",
        "numeric_code": "10000",
        "message": "Invalid request parameters"
      }
    }
    
  • invalid_target_workspace11003

    上書き対象のワークスペースが空、または形式が無効です。上書き用ヘッダーを削除し、対象ワークスペースの API Key を使用してください。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "invalid_target_workspace",
        "numeric_code": "11003",
        "message": "Invalid target workspace"
      }
    }
    
  • provider_invalid_request30001

    チャネル固有の項目と形式を確認してください。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "provider_invalid_request",
        "numeric_code": "30001",
        "message": "Provider rejected the request"
      }
    }
    
  • rotate_api_key_failed11103

    操作が拒否されました。リクエストを確認し、request_id を保存してください。

    対処と再試行: 変更・ローテーション前に現在のワークスペースの対象 Key を確認します。不存在は再試行では解消しません。ローテーション結果が不明なら、キーを公開せずにどの認証情報が利用可能か確認してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "rotate_api_key_failed",
        "numeric_code": "11103",
        "message": "Failed to rotate API key"
      }
    }
    
  • unsupported_action30005

    認識できないアカウント操作です。文書化された操作を使ってください。

    対処と再試行: ドキュメントで対応しているチャネルと操作を選びます。同じリクエストを繰り返しても機能やベータ権限は追加されません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unsupported_action",
        "numeric_code": "30005",
        "message": "Action not supported"
      }
    }
    
  • unsupported_conversation_type37001

    チャネルが未対応です。対応表から利用可能な操作を選んでください。

    対処と再試行: ドキュメントで対応しているチャネルと操作を選びます。同じリクエストを繰り返しても機能やベータ権限は追加されません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unsupported_conversation_type",
        "numeric_code": "37001",
        "message": "Operation not supported for this conversation type"
      }
    }
    
  • unsupported_message_type36000

    チャネルが対応する message.type を使ってください。

    対処と再試行: ドキュメントで対応しているチャネルと操作を選びます。同じリクエストを繰り返しても機能やベータ権限は追加されません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unsupported_message_type",
        "numeric_code": "36000",
        "message": "Message type not supported"
      }
    }
    
  • unsupported_provider_auth_mode20018

    チャネルが対応する auth_mode を使ってください。

    対処と再試行: ドキュメントで対応しているチャネルと操作を選びます。同じリクエストを繰り返しても機能やベータ権限は追加されません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unsupported_provider_auth_mode",
        "numeric_code": "20018",
        "message": "Auth mode not supported by this provider"
      }
    }
    
  • update_api_key_failed11102

    操作が拒否されました。リクエストを確認し、request_id を保存してください。

    対処と再試行: 変更・ローテーション前に現在のワークスペースの対象 Key を確認します。不存在は再試行では解消しません。ローテーション結果が不明なら、キーを公開せずにどの認証情報が利用可能か確認してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "update_api_key_failed",
        "numeric_code": "11102",
        "message": "Failed to update API key"
      }
    }
    
  • update_workspace_failed41001

    操作が拒否されました。リクエストを確認し、request_id を保存してください。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "update_workspace_failed",
        "numeric_code": "41001",
        "message": "Failed to update workspace"
      }
    }
    
  • wallet_invalid_request20021

    残高方式の作成パラメータと、任意の Idempotency-Key ヘッダーを確認してください。

    対処と再試行: 操作とチャネルの条件に従ってパラメーターを修正してから再実行します。同じ無効なリクエストを繰り返しても解決しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "wallet_invalid_request",
        "numeric_code": "20021",
        "message": "Invalid wallet account request"
      }
    }
    

401 Unauthorized

  • invalid_api_key11001

    API Key が正しく有効か確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "invalid_api_key",
        "numeric_code": "11001",
        "message": "Invalid API key"
      }
    }
    
  • missing_api_key11000

    X-Api-Key ヘッダーを追加してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "missing_api_key",
        "numeric_code": "11000",
        "message": "Missing X-Api-Key header"
      }
    }
    

403 Forbidden

  • beta_feature_not_enabled41002

    通話 API と通話イベントの明示的な購読には、ワークスペースのベータ利用資格が必要です。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "beta_feature_not_enabled",
        "numeric_code": "41002",
        "message": "Beta feature not enabled"
      }
    }
    
  • cors_forbidden11009

    CORS のオリジン、メソッド、ヘッダーが許可されていません。呼び出し環境を確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "cors_forbidden",
        "numeric_code": "11009",
        "message": "CORS preflight request is not allowed"
      }
    }
    
  • post_inaccessible39005

    投稿とコメント

    アカウントと、この API で実際に必要な対象の識別子を確認します。post_not_found は投稿の不存在が確認されたことを表します。comment_not_found は検証後に対象の最上位コメントが見つからないことを表し、すべての返信を検索したとは限りません。post_inaccessible はアクセス不能を表し、不存在や原因を確定しません。エラーを保存し、調査してから次の操作を選びます。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "post_inaccessible",
        "numeric_code": "39005",
        "message": "Post is not accessible"
      }
    }
    
  • workspace_override_forbidden11002

    この API Key に許可されていないワークスペースの上書きを要求しています。上書き用ヘッダーを削除し、対象ワークスペースの API Key を使用してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "workspace_override_forbidden",
        "numeric_code": "11002",
        "message": "Workspace override is not allowed"
      }
    }
    

404 Not Found

  • account_not_found20020

    account_id を確認し、アカウントが属するワークスペースの X-Api-Key を使います。このワークスペースにないアカウントには現在のキーでアクセスできません。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "account_not_found",
        "numeric_code": "20020",
        "message": "Account not found"
      }
    }
    
  • account_operation_not_found20029

    操作が存在しないか別のワークスペースに属します。元の operation_id と API Key の範囲を確認してください。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "account_operation_not_found",
        "numeric_code": "20029",
        "message": "Account operation not found"
      }
    }
    
  • call_not_found38003

    通話

    このアカウントとワークスペースには該当する通話がありません。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "call_not_found",
        "numeric_code": "38003",
        "message": "Call not found"
      }
    }
    
  • comment_not_found39001

    投稿とコメント

    アカウントと、この API で実際に必要な対象の識別子を確認します。post_not_found は投稿の不存在が確認されたことを表します。comment_not_found は検証後に対象の最上位コメントが見つからないことを表し、すべての返信を検索したとは限りません。post_inaccessible はアクセス不能を表し、不存在や原因を確定しません。エラーを保存し、調査してから次の操作を選びます。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "comment_not_found",
        "numeric_code": "39001",
        "message": "Comment not found"
      }
    }
    
  • contact_not_found35000

    このアカウントで連絡先が見つかりません。識別子を確認してください。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "contact_not_found",
        "numeric_code": "35000",
        "message": "Contact not found"
      }
    }
    
  • conversation_not_found37002

    チャネルで会話が見つかりません。識別子とアカウントを確認してください。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "conversation_not_found",
        "numeric_code": "37002",
        "message": "Conversation not found"
      }
    }
    
  • group_not_found34004

    このアカウントでグループが見つかりません。グループ ID を確認してください。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "group_not_found",
        "numeric_code": "34004",
        "message": "Group not found"
      }
    }
    
  • not_found10001

    API パスと HTTP メソッドを確認してください。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "not_found",
        "numeric_code": "10001",
        "message": "Endpoint not found"
      }
    }
    
  • post_not_found39000

    投稿とコメント

    アカウントと、この API で実際に必要な対象の識別子を確認します。post_not_found は投稿の不存在が確認されたことを表します。comment_not_found は検証後に対象の最上位コメントが見つからないことを表し、すべての返信を検索したとは限りません。post_inaccessible はアクセス不能を表し、不存在や原因を確定しません。エラーを保存し、調査してから次の操作を選びます。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "post_not_found",
        "numeric_code": "39000",
        "message": "Post not found"
      }
    }
    
  • target_workspace_not_found11004

    上書きで指定したワークスペースが存在しないか利用できません。所有範囲を確認し、上書き用ヘッダーを削除して対象ワークスペースの API Key を使用します。再試行で権限は増えません。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "target_workspace_not_found",
        "numeric_code": "11004",
        "message": "Target workspace not found"
      }
    }
    

409 Conflict

  • account_allocation_busy20011

    アカウントの割り当て処理中です。少し待って再試行してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "account_allocation_busy",
        "numeric_code": "20011",
        "message": "Allocation is busy in the current region; please retry later"
      }
    }
    
  • account_already_authorized20016

    アカウントは認証済みのため、この操作では重複する認証を拒否します。認証状態を更新して完了した結果を再利用し、再認証やキャンセルを繰り返さないでください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "account_already_authorized",
        "numeric_code": "20016",
        "message": "Account is already authorized; re-authentication is not required"
      }
    }
    
  • account_binding_not_found30006

    有効なチャネル接続への紐付けがありません。アカウントの状態を確認してください。

    対処と再試行: 認証と実行状態を照会し、目的の状態とチャネルの対応範囲に応じて更新・起動・再接続を選びます。接続の問題だけではログアウトしたとは判断できません。接続が必要な業務操作の前に running を確認してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "account_binding_not_found",
        "numeric_code": "30006",
        "message": "Account is not bound to an available server"
      }
    }
    
  • account_webhook_already_exists40008

    Webhook エンドポイント

    account_id を指定してアカウント専用エンドポイントを取得し、既存の active を更新します。切り替える場合は、現在の active を無効化してから別のエンドポイントを有効化してください。作成や再有効化を自動再試行しないでください。

    対処と再試行: 再送信前にエンドポイント設定とアカウントの範囲を照会します。PATCH は設定を置き換えるため、必要な購読、署名設定、再試行ポリシーを保持してください。active の競合時は既存を更新するか、先に無効化してから別のエンドポイントを有効にします。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "account_webhook_already_exists",
        "numeric_code": "40008",
        "message": "Account already has an active webhook endpoint"
      }
    }
    
  • billing_quote_changed20027

    価格または計算基準が変わりました。元の結果を確認してから再見積もりしてください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "billing_quote_changed",
        "numeric_code": "20027",
        "message": "Pricing changed; request a new quote"
      }
    }
    
  • billing_quote_expired20026

    見積もりが期限切れです。以前の作成結果を確認してから再見積もりしてください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "billing_quote_expired",
        "numeric_code": "20026",
        "message": "Billing quote expired"
      }
    }
    
  • billing_quote_invalid20025

    見積もりがワークスペースまたは要求と一致しません。元の結果を確認し、同じ条件で再見積もりしてください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "billing_quote_invalid",
        "numeric_code": "20025",
        "message": "Billing quote does not match this request"
      }
    }
    
  • call_already_active38000

    通話

    アカウントには管理中のアクティブな通話があります。把握している通話と操作の意図を確認してください。このエラーだけで切断したり、同じ失敗する照会を繰り返す必要はありません。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "call_already_active",
        "numeric_code": "38000",
        "message": "Account already has an active call"
      }
    }
    
  • duplicate_provider_account20015

    同じチャネルのアカウントがこのワークスペース内ですでに接続されています。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "duplicate_provider_account",
        "numeric_code": "20015",
        "message": "A provider account with the same identity already exists in this workspace"
      }
    }
    
  • no_allocatable_server20013

    このリージョンに空きがありません。割り当て可能な別のリージョンを確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "no_allocatable_server",
        "numeric_code": "20013",
        "message": "No allocatable server in the current region"
      }
    }
    
  • provider_account_mismatch20017

    指定したチャネルの識別情報がアカウントの紐付けと一致しません。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "provider_account_mismatch",
        "numeric_code": "20017",
        "message": "Authenticated provider account does not match the bound account; re-scan with the original account"
      }
    }
    
  • provider_not_ready30009

    接続が未準備です。認可と runtime_status を確認してから再試行を判断してください。

    対処と再試行: 認証と実行状態を照会し、目的の状態とチャネルの対応範囲に応じて更新・起動・再接続を選びます。接続の問題だけではログアウトしたとは判断できません。接続が必要な業務操作の前に running を確認してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "provider_not_ready",
        "numeric_code": "30009",
        "message": "Provider client is not ready"
      }
    }
    
  • wallet_account_creation_in_progress20030

    このワークスペースで別の残高アカウントを作成中です。完了を待ってから再試行してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "wallet_account_creation_in_progress",
        "numeric_code": "20030",
        "message": "Account creation is in progress; please wait"
      }
    }
    
  • wallet_idempotency_conflict20024

    冪等キーは別の業務パラメータに使用済みです。重複作成前に元の結果を確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "wallet_idempotency_conflict",
        "numeric_code": "20024",
        "message": "Idempotency key was used for a different request"
      }
    }
    
  • wallet_insufficient_funds20023

    残高が不足しています。所有者がチャージしてから元のリクエストを確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "wallet_insufficient_funds",
        "numeric_code": "20023",
        "message": "Insufficient wallet balance"
      }
    }
    
  • wallet_workspace_disabled20022

    残高による新規購入は無効です。既存の操作が取り消されたことを意味しません。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "wallet_workspace_disabled",
        "numeric_code": "20022",
        "message": "New wallet purchases are disabled"
      }
    }
    
  • workspace_account_quota_exceeded20014

    メッセージングアカウント数が上限に達しています。使用数と上限を確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "workspace_account_quota_exceeded",
        "numeric_code": "20014",
        "message": "Workspace account quota exceeded"
      }
    }
    

422 Unprocessable Entity

  • contact_not_found35000

    GET /contacts/info が Conversation not found を返しました。対象の識別子と照会アカウントを確認してください。

    対処と再試行: 対象の識別子、所有範囲、現在のワークスペースを確認します。不存在やアクセス不可が確認された対象を、一時的なサービス障害として自動再試行しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "contact_not_found",
        "numeric_code": "35000",
        "message": "Conversation not found"
      }
    }
    

500 Internal Server Error

  • block_contact_failed35005

    連絡先のブロック:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "block_contact_failed",
        "numeric_code": "35005",
        "message": "Failed to block contact"
      }
    }
    
  • call_control_failed38004

    通話

    通話の照会または終了に失敗しました。今回の操作と通話の状態を確認してください。

    対処と再試行: 通話を作成・終了する前に、管理中の通話と call_id/state を照会します。preparing は発信・応答済みを意味しません。ended と failed はともに終端状態で、failed だけを理由に切断を繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "call_control_failed",
        "numeric_code": "38004",
        "message": "Failed to control call"
      }
    }
    
  • create_account_failed20002

    アカウント作成:リソースの作成に失敗したか、作成結果を確認できませんでした。

    対処と再試行: 作成を繰り返す前に既存のリソースを一覧・照会し、前回の作成が反映されたか確認します。原因を解消して request_id を保存し、重複リソースを自動作成しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "create_account_failed",
        "numeric_code": "20002",
        "message": "Failed to create account"
      }
    }
    
  • create_call_failed38002

    通話

    通話を作成:リソースの作成に失敗したか、作成結果を確認できませんでした。

    対処と再試行: 作成を繰り返す前に既存のリソースを一覧・照会し、前回の作成が反映されたか確認します。原因を解消して request_id を保存し、重複リソースを自動作成しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "create_call_failed",
        "numeric_code": "38002",
        "message": "Failed to create call"
      }
    }
    
  • create_contact_failed35003

    連絡先を追加:リソースの作成に失敗したか、作成結果を確認できませんでした。

    対処と再試行: 作成を繰り返す前に既存のリソースを一覧・照会し、前回の作成が反映されたか確認します。原因を解消して request_id を保存し、重複リソースを自動作成しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "create_contact_failed",
        "numeric_code": "35003",
        "message": "Failed to create contact"
      }
    }
    
  • create_group_failed34002

    グループの作成:リソースの作成に失敗したか、作成結果を確認できませんでした。

    対処と再試行: 作成を繰り返す前に既存のリソースを一覧・照会し、前回の作成が反映されたか確認します。原因を解消して request_id を保存し、重複リソースを自動作成しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "create_group_failed",
        "numeric_code": "34002",
        "message": "Failed to create group"
      }
    }
    
  • create_webhook_endpoint_failed40001

    Webhook エンドポイント作成:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 再送信前にエンドポイント設定とアカウントの範囲を照会します。PATCH は設定を置き換えるため、必要な購読、署名設定、再試行ポリシーを保持してください。active の競合時は既存を更新するか、先に無効化してから別のエンドポイントを有効にします。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "create_webhook_endpoint_failed",
        "numeric_code": "40001",
        "message": "Failed to create webhook endpoint"
      }
    }
    
  • deactivate_webhook_endpoint_failed40004

    Webhook エンドポイントを停止:停止・無効化の結果を確認できません。対処時にも停止するという元の目的を維持します。

    対処と再試行: 停止・無効化が反映されたかを現在の状態で確認します。停止したいリソースを復旧のために起動・再接続しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "deactivate_webhook_endpoint_failed",
        "numeric_code": "40004",
        "message": "Failed to deactivate webhook endpoint"
      }
    }
    
  • delete_account_failed20004

    アカウント削除:今回の削除結果を確認できませんでした。

    対処と再試行: すでに削除されたかを照会してから、再度削除するかを判断します。request_id を保存し、この API が定義する成功レスポンスに従って処理してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "delete_account_failed",
        "numeric_code": "20004",
        "message": "Failed to delete account"
      }
    }
    
  • delete_label_failed37014

    ラベルの削除:今回の削除結果を確認できませんでした。

    対処と再試行: すでに削除されたかを照会してから、再度削除するかを判断します。request_id を保存し、この API が定義する成功レスポンスに従って処理してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "delete_label_failed",
        "numeric_code": "37014",
        "message": "Failed to delete label"
      }
    }
    
  • delete_webhook_endpoint_failed40005

    Webhook エンドポイント削除:今回の削除結果を確認できませんでした。

    対処と再試行: すでに削除されたかを照会してから、再度削除するかを判断します。request_id を保存し、この API が定義する成功レスポンスに従って処理してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "delete_webhook_endpoint_failed",
        "numeric_code": "40005",
        "message": "Failed to delete webhook endpoint"
      }
    }
    
  • edit_message_failed36005

    メッセージの編集:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "edit_message_failed",
        "numeric_code": "36005",
        "message": "Failed to edit message"
      }
    }
    
  • get_account_failed20001

    アカウント取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_account_failed",
        "numeric_code": "20001",
        "message": "Failed to get account"
      }
    }
    
  • get_auth_state_failed20006

    認証ステータス取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_auth_state_failed",
        "numeric_code": "20006",
        "message": "Failed to get account auth state"
      }
    }
    
  • get_contact_failed35002

    連絡先取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_contact_failed",
        "numeric_code": "35002",
        "message": "Failed to get contact"
      }
    }
    
  • get_contact_membership_failed35004

    連絡先リスト所属を確認:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_contact_membership_failed",
        "numeric_code": "35004",
        "message": "Failed to get contact membership"
      }
    }
    
  • get_conversation_failed37004

    会話の詳細:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_conversation_failed",
        "numeric_code": "37004",
        "message": "Failed to get conversation"
      }
    }
    
  • get_group_failed34001

    グループ詳細の取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_group_failed",
        "numeric_code": "34001",
        "message": "Failed to get group"
      }
    }
    
  • get_group_invite_code_failed34010

    グループ招待リンク取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_group_invite_code_failed",
        "numeric_code": "34010",
        "message": "Failed to get group invite code"
      }
    }
    
  • get_session_failed20005

    現在のアカウントセッションの照会:サービスが現在のセッションを読み込めませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_session_failed",
        "numeric_code": "20005",
        "message": "Failed to get account session"
      }
    }
    
  • get_webhook_endpoint_failed40002

    Webhook エンドポイント取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_webhook_endpoint_failed",
        "numeric_code": "40002",
        "message": "Failed to get webhook endpoint"
      }
    }
    
  • get_workspace_failed41000

    現在の Workspace を取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_workspace_failed",
        "numeric_code": "41000",
        "message": "Failed to get workspace"
      }
    }
    
  • leave_group_failed34003

    グループから退出:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "leave_group_failed",
        "numeric_code": "34003",
        "message": "Failed to leave group"
      }
    }
    
  • list_accounts_failed20000

    アカウント一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_accounts_failed",
        "numeric_code": "20000",
        "message": "Failed to list accounts"
      }
    }
    
  • list_api_keys_failed11100

    API キー一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_api_keys_failed",
        "numeric_code": "11100",
        "message": "Failed to list API keys"
      }
    }
    
  • list_blocklist_failed35007

    ブロックリスト取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_blocklist_failed",
        "numeric_code": "35007",
        "message": "Failed to list blocklist"
      }
    }
    
  • list_contacts_failed35001

    連絡先一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_contacts_failed",
        "numeric_code": "35001",
        "message": "Failed to list contacts"
      }
    }
    
  • list_conversation_labels_failed37012

    会話ラベル一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_conversation_labels_failed",
        "numeric_code": "37012",
        "message": "Failed to list conversation labels"
      }
    }
    
  • list_conversation_members_failed37005

    会話メンバー一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_conversation_members_failed",
        "numeric_code": "37005",
        "message": "Failed to list conversation members"
      }
    }
    
  • list_conversations_failed37003

    会話一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_conversations_failed",
        "numeric_code": "37003",
        "message": "Failed to list conversations"
      }
    }
    
  • list_group_join_requests_failed34007

    参加リクエスト一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_group_join_requests_failed",
        "numeric_code": "34007",
        "message": "Failed to list group join requests"
      }
    }
    
  • list_groups_failed34000

    グループ一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_groups_failed",
        "numeric_code": "34000",
        "message": "Failed to list groups"
      }
    }
    
  • list_provider_regions_failed30011

    プロバイダのリージョン一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_provider_regions_failed",
        "numeric_code": "30011",
        "message": "Failed to list provider regions"
      }
    }
    
  • list_webhook_endpoints_failed40000

    Webhook エンドポイント一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_webhook_endpoints_failed",
        "numeric_code": "40000",
        "message": "Failed to list webhook endpoints"
      }
    }
    
  • mark_conversation_read_failed37006

    会話を既読にする:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "mark_conversation_read_failed",
        "numeric_code": "37006",
        "message": "Failed to mark conversation as read"
      }
    }
    
  • mark_conversation_unread_failed37007

    会話を未読にする:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "mark_conversation_unread_failed",
        "numeric_code": "37007",
        "message": "Failed to mark conversation as unread"
      }
    }
    
  • mute_conversation_failed37008

    会話の通知をオフにする:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "mute_conversation_failed",
        "numeric_code": "37008",
        "message": "Failed to mute conversation"
      }
    }
    
  • pin_conversation_failed37010

    会話のピン留め:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "pin_conversation_failed",
        "numeric_code": "37010",
        "message": "Failed to pin conversation"
      }
    }
    
  • pin_message_failed36002

    メッセージのピン留め / 解除:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "pin_message_failed",
        "numeric_code": "36002",
        "message": "Failed to pin message"
      }
    }
    
  • react_message_failed36004

    メッセージへのリアクション:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "react_message_failed",
        "numeric_code": "36004",
        "message": "Failed to react to message"
      }
    }
    
  • request_conversation_history_failed37016

    会話履歴の取得を要求:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: WhatsApp の個人チャットと before の基準メッセージを確認します。request_id は HTTP 調査専用です。タイムアウト後に履歴イベントが届く場合があります。自動再試行せず、イベントがないことや空・少量のバッチを完了と判断しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "request_conversation_history_failed",
        "numeric_code": "37016",
        "message": "Failed to request conversation history"
      }
    }
    
  • revoke_message_failed36003

    メッセージの取り消し:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "revoke_message_failed",
        "numeric_code": "36003",
        "message": "Failed to revoke message"
      }
    }
    
  • run_action_failed20007

    アカウント操作の実行:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "run_action_failed",
        "numeric_code": "20007",
        "message": "Failed to run account action"
      }
    }
    
  • run_auth_action_failed20010

    認証操作の実行:認証操作に失敗しました。再認証が必要と決めつけず、既存のフローを確認します。

    対処と再試行: 現在の認証フローとユーザー操作の要否を確認します。この失敗だけを理由に認証を開始し直したり、期限切れ・終了済みセッションに再送信しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "run_auth_action_failed",
        "numeric_code": "20010",
        "message": "Failed to run auth action"
      }
    }
    
  • run_runtime_action_failed20008

    実行状態の変更:実行状態の操作に失敗しました。この応答だけでは接続の最終状態を確定できません。

    対処と再試行: 認証と実行状態を照会し、目的の状態とチャネルの対応範囲に応じて更新・起動・再接続を選びます。接続の問題だけではログアウトしたとは判断できません。接続が必要な業務操作の前に running を確認してください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "run_runtime_action_failed",
        "numeric_code": "20008",
        "message": "Failed to run runtime action"
      }
    }
    
  • run_session_action_failed20009

    セッション操作の実行:認証操作に失敗しました。再認証が必要と決めつけず、既存のフローを確認します。

    対処と再試行: 現在の認証フローとユーザー操作の要否を確認します。この失敗だけを理由に認証を開始し直したり、期限切れ・終了済みセッションに再送信しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "run_session_action_failed",
        "numeric_code": "20009",
        "message": "Failed to run session action"
      }
    }
    
  • send_message_failed36001

    メッセージの送信に失敗したか、送信結果を確認できませんでした。

    対処と再試行: 再送する前に元のメッセージや返信が作成されたか確認します。タイムアウトやエラー応答後は結果不明の場合があります。後の照会で返信が見つからなくても、書き込まれなかった証拠にはなりません。自動再送しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "send_message_failed",
        "numeric_code": "36001",
        "message": "Failed to send message"
      }
    }
    
  • set_contact_note_failed35008

    連絡先メモの設定:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "set_contact_note_failed",
        "numeric_code": "35008",
        "message": "Failed to set contact note"
      }
    }
    
  • set_group_join_approval_mode_failed34009

    参加承認モードの設定:グループの変更に失敗しました。チャネルによる拒否や必要な管理者権限の不足が考えられます。

    対処と再試行: グループ、参加状態、必要な管理者権限、現在の結果を確認します。アクセスや権限の問題を解決してから変更を再試行してください。書き込み結果が不明なら先に照合します。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "set_group_join_approval_mode_failed",
        "numeric_code": "34009",
        "message": "Failed to set group join approval mode"
      }
    }
    
  • set_label_members_failed37015

    会話へのラベルの追加 / 削除:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "set_label_members_failed",
        "numeric_code": "37015",
        "message": "Failed to set label members"
      }
    }
    
  • unblock_contact_failed35006

    連絡先のブロック解除:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unblock_contact_failed",
        "numeric_code": "35006",
        "message": "Failed to unblock contact"
      }
    }
    
  • unmute_conversation_failed37009

    会話の通知をオンにする:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unmute_conversation_failed",
        "numeric_code": "37009",
        "message": "Failed to unmute conversation"
      }
    }
    
  • unpin_conversation_failed37011

    会話のピン留め解除:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unpin_conversation_failed",
        "numeric_code": "37011",
        "message": "Failed to unpin conversation"
      }
    }
    
  • update_account_failed20003

    アカウント更新:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "update_account_failed",
        "numeric_code": "20003",
        "message": "Failed to update account"
      }
    }
    
  • update_group_info_failed34006

    グループ情報の更新:グループの変更に失敗しました。チャネルによる拒否や必要な管理者権限の不足が考えられます。

    対処と再試行: グループ、参加状態、必要な管理者権限、現在の結果を確認します。アクセスや権限の問題を解決してから変更を再試行してください。書き込み結果が不明なら先に照合します。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "update_group_info_failed",
        "numeric_code": "34006",
        "message": "Failed to update group info"
      }
    }
    
  • update_group_join_requests_failed34008

    参加リクエストの承認 / 拒否:グループの変更に失敗しました。チャネルによる拒否や必要な管理者権限の不足が考えられます。

    対処と再試行: グループ、参加状態、必要な管理者権限、現在の結果を確認します。アクセスや権限の問題を解決してから変更を再試行してください。書き込み結果が不明なら先に照合します。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "update_group_join_requests_failed",
        "numeric_code": "34008",
        "message": "Failed to update group join requests"
      }
    }
    
  • update_group_members_failed34005

    グループ参加者の更新:グループの変更に失敗しました。チャネルによる拒否や必要な管理者権限の不足が考えられます。

    対処と再試行: グループ、参加状態、必要な管理者権限、現在の結果を確認します。アクセスや権限の問題を解決してから変更を再試行してください。書き込み結果が不明なら先に照合します。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "update_group_members_failed",
        "numeric_code": "34005",
        "message": "Failed to update group members"
      }
    }
    
  • update_webhook_endpoint_failed40003

    Webhook エンドポイント更新:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 再送信前にエンドポイント設定とアカウントの範囲を照会します。PATCH は設定を置き換えるため、必要な購読、署名設定、再試行ポリシーを保持してください。active の競合時は既存を更新するか、先に無効化してから別のエンドポイントを有効にします。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "update_webhook_endpoint_failed",
        "numeric_code": "40003",
        "message": "Failed to update webhook endpoint"
      }
    }
    
  • upsert_label_failed37013

    ラベルの作成または更新:未分類のエラーが変更を中断しました。リソースの最終状態を確認する必要があります。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "upsert_label_failed",
        "numeric_code": "37013",
        "message": "Failed to upsert label"
      }
    }
    

501 Not Implemented

  • unsupported_by_provider30003

    チャネルが未対応です。対応表から利用可能な操作を選んでください。

    対処と再試行: ドキュメントで対応しているチャネルと操作を選びます。同じリクエストを繰り返しても機能やベータ権限は追加されません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "unsupported_by_provider",
        "numeric_code": "30003",
        "message": "Operation not supported by this provider"
      }
    }
    

502 Bad Gateway

  • get_post_failed39006

    投稿とコメント

    自身の投稿を取得:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "get_post_failed",
        "numeric_code": "39006",
        "message": "Failed to get post"
      }
    }
    
  • list_post_comments_failed39003

    投稿とコメント

    最上位コメント一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_post_comments_failed",
        "numeric_code": "39003",
        "message": "Failed to list post comments"
      }
    }
    
  • list_posts_failed39002

    投稿とコメント

    自身の投稿一覧:サービスが有効な照会結果を返せませんでした。

    対処と再試行: request_id を保存し、識別子とアカウントのアクセス範囲を確認します。原因を確認してから照会を再試行してください。照会失敗は空の結果やリソースの不存在を意味しません。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "list_posts_failed",
        "numeric_code": "39002",
        "message": "Failed to list posts"
      }
    }
    
  • provider_adapter_not_found30004

    チャネルサービスを利用できません。状態を確認するか後で再試行してください。書き込みは前回の結果を先に確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "provider_adapter_not_found",
        "numeric_code": "30004",
        "message": "Provider adapter unavailable"
      }
    }
    
  • provider_unavailable30002

    チャネルサービスを利用できません。状態を確認するか後で再試行してください。書き込みは前回の結果を先に確認してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "provider_unavailable",
        "numeric_code": "30002",
        "message": "Provider service unavailable"
      }
    }
    
  • reply_post_comment_failed39004

    投稿とコメント

    投稿、確認済みの最上位コメント、エラー分類を確認します。書き込み結果が不明なら request_id を保存して調査し、その後に再送を判断します。後の取得で返信がないことだけを再試行の根拠にしないでください。

    対処と再試行: 再送する前に元のメッセージや返信が作成されたか確認します。タイムアウトやエラー応答後は結果不明の場合があります。後の照会で返信が見つからなくても、書き込まれなかった証拠にはなりません。自動再送しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "reply_post_comment_failed",
        "numeric_code": "39004",
        "message": "Failed to confirm comment reply; result may be unknown, do not automatically retry"
      }
    }
    

503 Service Unavailable

  • allocation_service_unavailable20012

    割り当てサービスを一時的に利用できません。後で再試行してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "allocation_service_unavailable",
        "numeric_code": "20012",
        "message": "Allocation service is temporarily unavailable"
      }
    }
    
  • call_service_unavailable38001

    通話

    通話サービスを利用できません。Provider/Gateway の接続と設定を確認してください。

    対処と再試行: 通話を作成・終了する前に、管理中の通話と call_id/state を照会します。preparing は発信・応答済みを意味しません。ended と failed はともに終端状態で、failed だけを理由に切断を繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "call_service_unavailable",
        "numeric_code": "38001",
        "message": "Call service unavailable"
      }
    }
    
  • internal_auth_not_configured11006

    このリクエストに必要な認証セッションサービスが利用不可、または未設定です。サービス提供者に認証セッションサービスの確認を依頼してください。

    対処と再試行: request_id と構造化されたコードを保存し、現在の操作を調査してから次の対応を決めます。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "internal_auth_not_configured",
        "numeric_code": "11006",
        "message": "Internal endpoint authentication is not configured"
      }
    }
    
  • wallet_unavailable20028

    ウォレットのデータまたは設定が利用できません。書き込み結果が不明な場合は元の操作を確認してください。

    対処と再試行: 変更を繰り返す前にリソースの現在の状態と前回の結果を確認します。request_id を保存し、結果不明の書き込みを自動で繰り返さないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "request_id": "req_example",
      "error": {
        "code": "wallet_unavailable",
        "numeric_code": "20028",
        "message": "Wallet service is unavailable"
      }
    }
    

数値コードによる詳細原因

これらの原因は、その操作の従来の HTTP ステータスと code を維持します。適用される組み合わせは各 API の表で確認してください。すべての操作やチャネルに適用されるわけではありません。

認証コードの拒否には公開契約で 30016 が定義されていますが、既存の認証経路では provider_invalid_request / 30001 が返る場合があります。両方に対応し、拒否時に必ず 30016 が返ると想定しないでください。

アカウントの失敗イベント

WhatsApp の一部の account.auth.failed イベントには、任意の data.error オブジェクトが含まれます。存在する場合、code、numeric_code、message は空でない文字列です。HTTP エラーと区別してイベント内から読み取ります。

古いイベントや対象外のイベントには data.error がない場合があります。last_error との互換性を保ち、欠落や未知のコードは既存のアカウント失敗処理で扱います。アカウント一覧や詳細にこのオブジェクトが追加されるわけではありません。永久停止や復旧期限を示す分類ではありません。

安全に受け付けて処理を引き受けた後は、2xx で配信を確認します。アカウント失敗と HTTP 配信失敗は別です。アカウント失敗を理由に Webhook を拒否して再配信を発生させないでください。従来の再試行・再配信ルールを維持し、過去のイベントにエラーは補完されません。

  • account_auth_failed20100

    アカウント認証に失敗しましたが、具体的な原因は不明です。既存の失敗処理を使い、制限やログアウトと推測しないでください。

    対処と再試行: 現在の認証フローとユーザー操作の要否を確認します。この失敗だけを理由に認証を開始し直したり、期限切れ・終了済みセッションに再送信しないでください。

    JSON の例です。message は実際の原因によって変わります
    {
      "id": "<EVENT_ID>",
      "type": "account.auth.failed",
      "provider": "whatsapp",
      "account_id": "<ACCOUNT_ID>",
      "occurred_at": "2026-10-16T00:00:00Z",
      "data": {
        "auth_status": "failed",
        "runtime_status": "disconnected",
        "event": {
          "kind": "account_auth_status",
          "auth_status": "failed",
          "runtime_status": "disconnected"
        },
        "error": {
          "code": "account_auth_failed",
          "numeric_code": "20100",
          "message": "Account authentication failed. The specific cause could not be determined."
        }
      }
    }
    
  • account_logged_out20101

    現在のアカウントセッションは無効です。チャネルが対応する手順で再認証するようユーザーに案内します。

    対処と再試行: チャネルが対応する手順で再認証するようユーザーに案内します。認証後に実行状態を別途照会し、接続の準備を確認してから接続が必要な操作を再開します。

    JSON の例です。message は実際の原因によって変わります
    {
      "id": "<EVENT_ID>",
      "type": "account.auth.failed",
      "provider": "whatsapp",
      "account_id": "<ACCOUNT_ID>",
      "occurred_at": "2026-10-16T00:00:00Z",
      "data": {
        "auth_status": "failed",
        "runtime_status": "disconnected",
        "event": {
          "kind": "account_auth_status",
          "auth_status": "failed",
          "runtime_status": "disconnected"
        },
        "error": {
          "code": "account_logged_out",
          "numeric_code": "20101",
          "message": "The account session is no longer valid. Reauthorization is required."
        }
      }
    }
    
  • account_restricted20102

    この WhatsApp の account.auth.failed イベントは data.error.code=account_restricted、numeric_code=20102 で現在のログイン制限を示します。永久停止や復旧可能な時刻を示すものではありません。

    対処と再試行: 自動送信と再試行を停止し、公式 WhatsApp アプリで制限を確認・解消するようユーザーに案内します。解消と必要な再認証の後に再開してください。以前の running 状態は制限解除の証拠にはなりません。

    JSON の例です。message は実際の原因によって変わります
    {
      "id": "<EVENT_ID>",
      "type": "account.auth.failed",
      "provider": "whatsapp",
      "account_id": "<ACCOUNT_ID>",
      "occurred_at": "2026-10-16T00:00:00Z",
      "data": {
        "auth_status": "failed",
        "runtime_status": "disconnected",
        "event": {
          "kind": "account_auth_status",
          "auth_status": "failed",
          "runtime_status": "disconnected"
        },
        "error": {
          "code": "account_restricted",
          "numeric_code": "20102",
          "message": "Account login is restricted. Check the official WhatsApp app for details."
        }
      }
    }