Compliance APIのエラーを処理する
Compliance APIのすべてのエラーメッセージを、原因と修正方法とともにHTTPステータスコード別に整理して掲載しています。
このページでは、ドキュメント化されている各Compliance APIエンドポイントが返すレスポンスメッセージ、その原因、および修正方法を一覧にしています。
Compliance APIは、標準のAnthropicエラー形式でエラーを返します。すなわち、2xx以外のステータスコード、request-idレスポンスヘッダー、そしてtypeとmessageを含むerrorオブジェクトを持つJSONボディです。サポートにエスカレーションする際は、request-idヘッダーの値を含めてください。
{
"error": {
"type": "authentication_error",
"message": "The API key provided is invalid or has been revoked."
}
}このページでは、ローカルセッションはユーザーのマシン上で実行され、リモートセッションはクラウドで実行されます。セッショントランスクリプトを取得するを参照してください。
メッセージ文字列ではなく、error.typeで照合してください。メッセージはランブックにコピーできる程度には安定していますが、時間の経過とともに文言が変更される可能性があります。typeの値はAPI契約の一部です。ローカルセッションエンドポイントには、同じtypeを共有するレスポンスをメッセージで区別する、ドキュメント化された例外がいくつかあります。それぞれ該当する箇所で明記しています。
次の表は、リトライすべきかどうかを一目で示しています。続く各セクションでは、エラーボディの原文と修正方法を示します。
| ステータス | リトライ? | 条件 |
|---|---|---|
| 400 Bad Request | いいえ | リクエストを修正して再送信してください。 |
| 401 Unauthorized | いいえ | キーを修正またはローテーションしてから再送信してください。 |
| 403 Forbidden | いいえ | 不足しているスコープを追加するか、正しいキータイプを使用してから再送信してください。 |
| 404 Not Found | 通常はいいえ | リソースは削除されたか、もともと存在しませんでした。キューから削除してください。例外: ローカルセッションエンドポイントでは、メッセージLocal sessions are not available.(一覧を含むすべての呼び出しで返されます)は、セッションがなくなったことではなく、エンドポイントが現在親組織で利用できないことを意味します。キューに入れたIDは保持し、ローカルセッションが見つからないを参照してください。まだpendingステータスのリモートセッションは、開始されるまでmessagesエンドポイントで404を返します。リモートセッションが見つからないを参照してください。 |
| 409 Conflict | いいえ | リクエストがリソースの現在の状態と競合しています。競合を解決(子リソースのデタッチなど)してからリトライしてください。 |
| 429 Too Many Requests | はい、retry-afterの後に | retry-afterの秒数だけ待ってからリトライしてください。カーソルは進めないでください。 |
| 500 Internal Server Error | x-should-retryによる | リトライする前にx-should-retryレスポンスヘッダーを確認してください。 |
| 502, 503, 504, 529 | はい、バックオフ付きで | 一時的なものです。指数バックオフでリトライしてください。例外: 一部のローカルセッションの503は一時的ではありません。ローカルセッションが一時的に利用できないを参照してください。 |
400 Bad Request
リクエストは構文的には有効でしたが、サーバーが拒否したパラメータを含んでいました。パラメータを修正してリトライしてください。
無効なタイムスタンプ形式
Type: invalid_request_error
The `created_at.gte` parameter contains an invalid timestamp format. Timestamps must be provided in RFC 3339 format e.g., "2024-03-01T00:00:00Z". Got "2024-01-01".原因: created_at.*またはupdated_at.*の値(.gte、.gt、.lte、.lt)を日時として解析できませんでした。メッセージには失敗したパラメータの名前と、送信された値がそのまま示されます。
修正方法: 時刻とタイムゾーンを含む完全なRFC 3339タイムスタンプを送信してください。例: 2024-03-01T00:00:00Zまたは2024-03-01T00:00:00+00:00。
ローカルセッション一覧(GET /v1/compliance/apps/sessions/local)は、両方の時間境界が指定され、かつcreated_at.ltがcreated_at.gteより厳密に後でない場合にも、400 invalid_request_errorを返します。ボディは次のとおりです。
created_at.lt must be strictly after created_at.gte.created_at.gteより後のcreated_at.ltを送信するか、いずれかの境界を省略してください。
無効なlimit
Type: invalid_request_error
The limit parameter must be between 1 and 1000, inclusive. Got 1500.原因: limitクエリパラメータが許容範囲外でした。メッセージに示される境界は、呼び出された特定のエンドポイントの最大値を反映しています。
修正方法: エンドポイントが受け付ける範囲内のlimitを送信してください。各一覧エンドポイントには独自のlimit範囲があります。対応するCompliance APIリファレンスページのパラメータ制約を参照してください。
セッショントランスクリプトエンドポイント(GET /v1/compliance/apps/sessions/local/{session_id}/messagesおよびGET /v1/compliance/apps/sessions/remote/{session_id}/messages)は、切り詰めパラメータを同じ方法で検証します。tool_use_input_max_bytesとtool_result_max_bytesはそれぞれ正のバイト数または-1(サーバーの最大値)を受け付けるため、0のような値は同じ400 invalid_request_errorを返します。
無効なページネーションID
Type: invalid_request_error
Invalid `after_id`. No activity found for `after_id` "activity_invalid123"原因: after_idまたはbefore_idカーソルを、不透明なカーソルとしてデコードすることも、アクティビティIDとして解析することもできませんでした。
修正方法: ページネーションカーソルは不透明な文字列として扱ってください。常に前のページで返されたfirst_idまたはlast_idの値をコピーし、has_moreがfalseになったら停止してください。オブジェクトIDからカーソルを組み立てないでください。
ディレクトリ、プロジェクト、およびセッションのエンドポイント(組織、ユーザー、ロール、ロール権限、グループ、グループメンバー、プロジェクト、プロジェクト添付ファイル、ローカルおよびリモートセッション、セッションメッセージ)は、after_idとbefore_idではなく、不透明なpageトークンでページネーションします。同じアドバイスが当てはまります。前のレスポンスのnext_pageの値を変更せずに渡し、has_moreがfalseになったら(または、has_moreを返さないセッションエンドポイントではnext_pageがnullになったら)停止してください。不正な形式のpageトークンは、不正な形式のafter_idやbefore_idと同じ400 invalid_request_errorを返します。
ページネーションされる2つのローカルセッションエンドポイント(一覧とmessagesエンドポイント)は、デコードできないpage値に対して次の400 invalid_request_errorを返します。たとえば、保存後に切り詰められたり改変されたりしたトークン、あるいは別のエンドポイントや別の親組織のもとで発行されたトークンなどです。ローカルセッションのmessagesエンドポイント(GET /v1/compliance/apps/sessions/local/{session_id}/messages)では、各pageカーソルは発行対象のセッションとorderにも紐付けられているため、別のセッションやソート順に対して発行されたカーソルも同じボディを返します。
The page parameter is not a valid cursor for this request.messagesエンドポイントのカーソルは、ウォーク(ページを一通り辿ること)の開始から24時間後に期限切れにもなります。期限切れのカーソルは次を返します。
The page cursor has expired. Restart the walk without a page parameter; results will reflect the current retention boundary.最初のボディの場合は、前のレスポンスのnext_pageの値を変更せずに、それを発行したエンドポイントとセッションに再送信してください。期限切れのカーソルの場合は、pageパラメータなしで再開してください。新しいウォークは開始時点で有効な保持境界を反映するため、その間に保持期間を過ぎたメッセージは返されなくなります(ローカルセッショントランスクリプトを取得するを参照)。
401 Unauthorized
x-api-keyヘッダーが欠落しているか、既知のキーと一致しませんでした。スコープが誤っている有効なキーは、代わりに403 Forbiddenを返します。
無効なAPIキー
Type: authentication_error
The API key provided is invalid or has been revoked.原因: x-api-keyのキーが存在しない、削除された、または無効化されています。x-api-keyヘッダーが欠落または空の場合も同じボディが返されるため、シークレットストアとキーの失効状況の両方を確認してください。
修正方法: キーの値を確認し、claude.ai(Compliance Access Keys)またはClaude Console(Admin APIキー)で削除されていないことを確認し、有効になっていることを確認してください。Compliance APIをセットアップするを参照してください。
403 Forbidden
x-api-keyのキーは有効ですが、エンドポイントが必要とするスコープを持っていません。メッセージ原文には、キーが持つスコープ(Got:)とエンドポイントが必要とするスコープ(Needed:)が一覧されるため、Claude Consoleやclaude.aiを再確認せずにキーが持つスコープを確認できます。Compliance Access Keyのスコープは作成後に変更できないため、スコープ不足の各修正方法では、既存のキーを編集するのではなく新しいキーを作成するよう案内しています。スタンドアロンのClaude Console組織(親組織を持たない組織)はCompliance Access Keyを作成できないため、それを必要とする修正方法は適用されません。その組織はActivity Feedのみをクエリできます。
スコープ不足: Activity Feed
Type: permission_error
Missing required scopes. Got: ['read:compliance_user_data'] Needed: ['read:compliance_activities']原因: read:compliance_activitiesを持たないキーがGET /v1/compliance/activitiesの呼び出しに使用されました。このエラーに至る一般的な経路は2つあります。
- Compliance Access Key(
sk-ant-api01-...)がread:compliance_activitiesスコープなしで作成された。 - Claude Console Admin APIキー(
sk-ant-admin01-...)が、組織でCompliance APIが有効になっていない間に作成された。Compliance APIが有効になっていない間に作成されたキーはこのスコープを持ちません。Compliance APIをセットアップするを参照してください。
修正方法: Compliance Access Keyのスコープは作成後に変更できません。read:compliance_activitiesを含む新しいキーを作成するか、Claude Console Admin APIキーを使用してください。Admin APIキーがこのスコープを持つ条件については、どのキーが必要ですか?を参照してください。
スコープ不足: 組織データ
Type: permission_error
Missing required scopes. Got: ['read:compliance_user_data'] Needed: ['read:compliance_org_data']原因: read:compliance_org_dataを持たないキーが、組織、ロール、グループ、または有効設定のエンドポイントの呼び出しに使用されました。このエラーに至る一般的な経路は2つあります。
- Compliance Access Key(
sk-ant-api01-...)がread:compliance_org_dataスコープなしで作成された。 - Claude Console Admin APIキー(
sk-ant-admin01-...)が使用された。Admin APIキーはread:compliance_activitiesのみを持ち、組織メタデータを読み取ることはできません。
修正方法: read:compliance_org_dataを選択して新しいCompliance Access Keyを作成してください。Admin APIキーは組織メタデータを読み取れないため、Compliance Access Keyが必要です。
廃止済みスコープ: 組織設定
Type: permission_error
Missing required scopes. Got: ['read:compliance_org_settings'] Needed: ['read:compliance_org_data']原因: read:compliance_org_settingsスコープは2026年6月30日に廃止されました。GET /v1/compliance/organizations/{organization_id}/settingsは現在、他の組織エンドポイントと同じスコープであるread:compliance_org_dataを必要とし、廃止済みスコープはもはや何も認可しません。read:compliance_org_settingsのみを持つCompliance Access Keyは、廃止前には機能していたとしても、settingsエンドポイントへのすべての呼び出しでこのエラーを返します。廃止済みスコープは、キー作成時に選択することも付与することもできなくなりました。
修正方法: Compliance Access Keyのスコープは作成後に変更できません。read:compliance_org_dataを選択して新しいCompliance Access Keyを作成し、インテグレーションをそれを使用するように更新してから、古いキーを削除してください。すでにread:compliance_org_dataを持つキーは廃止の影響を受けません。
スコープ不足: ユーザーデータ
Type: permission_error
Missing required scopes. Got: ['read:compliance_activities'] Needed: ['read:compliance_user_data']原因: read:compliance_user_dataを持たないキーが、チャット、メッセージ、ファイル、プロジェクト、セッション、組織ユーザー、またはグループメンバーのエンドポイントの呼び出しに使用されました。このエラーに至る一般的な経路は2つあります。
- Compliance Access Key(
sk-ant-api01-...)がread:compliance_user_dataスコープなしで作成された。 - Claude Console Admin APIキー(
sk-ant-admin01-...)が使用された。Admin APIキーはread:compliance_activitiesのみを持ち、read:compliance_user_dataを付与できないため、チャット、ファイル、プロジェクト、プロジェクト添付ファイル、セッション、ユーザー、またはグループメンバーのエンドポイントを呼び出すことはできません。
修正方法: claude.aiでread:compliance_user_dataを選択して作成したCompliance Access Keyを使用してください。リクエストが本当にActivity Feedのみであるべき場合は、代わりにAdmin APIキーをGET /v1/compliance/activitiesに向けてください。
スコープ不足: 削除
Type: permission_error
Missing required scopes. Got: ['read:compliance_user_data'] Needed: ['delete:compliance_user_data']原因: delete:compliance_user_dataを持たないCompliance Access Keyが、チャット、ファイル、またはプロジェクトのDELETEエンドポイントの呼び出しに使用されました。
修正方法: delete:compliance_user_dataを選択して新しいCompliance Access Keyを作成してください。読み取り専用の監査キーがコンテンツを削除できないように、削除スコープはread:compliance_user_dataとは別になっています。
404 Not Found
エンドポイントは解決されましたが、リソースIDが存在しないか、すでに削除されています。Compliance APIの削除は即時かつ永続的であるため、以前に既知だったIDに対する404は通常、コンテンツがCompliance APIの削除呼び出しによってハード削除されたか、保持ポリシーによって削除されたことを意味します。セッションエンドポイントには2つのケースが追加されます。ローカルセッションエンドポイントでは、エンドポイントが親組織で利用できない間、別の404メッセージLocal sessions are not available.がすべての呼び出し(一覧を含む)で返されます。これはセッションIDに依存せず、一時的な場合があります。ローカルセッションが見つからないを参照してください。リモートセッションエンドポイントでは、まだプロビジョニング中のセッション(statusがpending)にはまだトランスクリプトがないため、セッションが開始されるまでmessagesエンドポイントは404を返します。リモートセッションが見つからないを参照してください。各修正方法で引用されているアクティビティタイプ文字列(たとえばclaude_chat_created)は、Activity Feedのactivity_types[]フィルターに渡せる値です。サポートされているすべての値については、コンプライアンスアクティビティをクエリするを参照してください。
チャットが見つからない
Type: not_found_error
Chat claude_chat_01H5CWunD7RpVJ5bHa8RCkja not found.原因: パス内のチャットIDが、Compliance APIを通じて読み取り可能なチャットと一致しません。チャットは以前のCompliance API呼び出しによってハード削除されたか、組織の保持ポリシーによって削除された可能性があります。あるいは、呼び出し元のキーが読み取れない組織に属している可能性があります。ユーザーがclaude.aiで削除したチャットは404を返しません。deleted_atが設定された状態で読み取り可能なままですが、メッセージコンテンツは含まれません。
修正方法: 最近のclaude_chat_createdまたはclaude_chat_viewedアクティビティとチャットIDを照合してください。アクティビティが最近のもので、それでも読み取りが失敗する場合、チャットはハード削除された(このAPIを通じて、または保持ポリシーの期限切れによって)か、キーのスコープ外の組織に属しています。
ファイルが見つからない
Type: not_found_error
No file found with provided id, or it has already been deleted.原因: ファイルIDが存在しないか、削除されています。このエラーは、チャットに添付されたファイル(claude_file_...)とプロジェクトファイルの両方に適用されます。
修正方法: 最近のclaude_file_uploadedまたはclaude_file_deletedアクティビティと照合してください。ファイルが削除された場合、バイナリは失われています。アクティビティレコードは6年間の保持期間中フィードに残ります。
プロジェクトが見つからない
Type: not_found_error
No project is found with the provided id.原因: プロジェクトIDが存在しないか、削除されています。
修正方法: 最近のclaude_project_createdまたはclaude_project_deletedアクティビティと照合してください。Activity Feedは、プロジェクト自体がなくなった後もプロジェクトのライフサイクルイベントを公開し続けます。
プロジェクトドキュメントが見つからない
Type: not_found_error
No project document found with provided id, or it has already been deleted.原因: プロジェクトドキュメントIDが存在しないか、削除されています。このエラーはテキストのプロジェクトドキュメント(claude_proj_doc_...)に適用され、プロジェクトファイルには適用されません。
修正方法: GET /v1/compliance/apps/projects/{project_id}/attachmentsを使用して現在の添付ファイルを一覧してください。ドキュメントがない場合は削除されています。メタデータのみが必要な場合は、claude_project_document_uploadedアクティビティレコードを通じて取得してください。
ローカルセッションが見つからない
Type: not_found_error
Local session not found.原因: GET /v1/compliance/apps/sessions/local/{session_id}またはGET /v1/compliance/apps/sessions/local/{session_id}/messagesに渡されたセッションIDが、Compliance APIを通じて読み取り可能なローカルセッションと一致しません。両エンドポイントは、IDがキーで読み取れる組織内のセッションでない場合(別の親組織に属するIDを含む)、セッションがもともと存在しなかった場合、セッションにゼロデータ保持が適用されている場合、またはセッションのすべてのアクティビティが、それを実行した組織に適用される保持期間を過ぎた場合に、原因を区別せずにこの1つのメッセージを返します。ローカルセッションにはプロビジョニング(pending)状態がないため、Local session not found.レスポンスに一時的な形はありません。pendingセッションが開始されるまで404を返すリモートセッションが見つからないと比較してください。正しい形式のclls_識別子でないセッションIDは、代わりに400 Bad Requestを返します。
ローカルセッションエンドポイント(一覧エンドポイントを含む)は、エンドポイント自体が親組織で利用できない間、別の404メッセージLocal sessions are not available.を返します。このレスポンスはセッションIDに依存しません。顧客側のキー、スコープ、設定のいずれを変更しても変わらず、一時的な場合があります。どちらのレスポンスもnot_found_errorタイプを持ち、メッセージテキストによって区別されます。
修正方法: GET /v1/compliance/apps/sessions/localとセッションIDを照合してください。ユーザーのマシン上のセッションを参照してください。セッションが一覧に表示されなくなった場合、そのコンテンツは保持期間を過ぎた(またはセッションがキーで読み取れる組織内にもはや存在しない)ため、トランスクリプトは取得できません。キューからIDを削除してください。一覧を含むすべての呼び出しがLocal sessions are not available.を返す場合は、キューに入れたセッションIDを保持し、次回のスケジュール実行でリトライしてください。レスポンスが続く場合は、Anthropicの担当者に連絡し、request-idレスポンスヘッダーを含めてください。
リモートセッションが見つからない
Type: not_found_error
Remote session not found.原因: GET /v1/compliance/apps/sessions/remote/{session_id}/messagesに渡されたセッションIDが、Compliance APIを通じて読み取り可能なセッショントランスクリプトと一致しません。これは、セッションID(cse_...)が存在しないかセッションが削除された場合、セッションがキーで読み取れない組織に属している場合、またはセッションのstatusがまだpendingである場合に発生します。pendingセッションにはまだトランスクリプトがないため、セッションが開始されるまでmessagesエンドポイントは404を返します。正しい形式のcse_識別子でないセッションIDは、代わりに400 Bad Requestを返します。
修正方法: GET /v1/compliance/apps/sessions/remoteとセッションIDおよびそのstatusを照合してください。クラウド内のセッションを参照してください。セッションがpendingの場合は、そのステータスを抜けた後にリトライしてください。セッションが一覧に表示されなくなった場合は削除されており、トランスクリプトは取得できません。
組織、ロール、またはグループが見つからない
Type: not_found_error
The "ce86b5f3-7c16-48b3-a9f3-e1d2c4b8a0f1" organization does not exist or the requester is not authorized to access it.組織、ロール、およびグループのエンドポイントは、標準のエラー形式で404 not_found_errorを返します。組織のメッセージにはorg_uuidが示されます。ロールとグループのメッセージは汎用的です(Role not found.、Group not found.)。これは、パスID(org_uuid、role_id、またはgroup_id)が存在しないか、呼び出し元のキーが読み取れるツリーにもはや属していない場合に発生します。
原因: パス内のIDが、Compliance APIを通じて読み取り可能なレコードと一致しません。ロールとグループは削除される可能性があり、組織は親ツリーからリンク解除される可能性があります。
修正方法: 対応する一覧エンドポイントとIDを照合し、Activity Feed内の最近の組織、ロール、またはグループのアクティビティと照合してください。
組織設定が利用できない
Type: not_found_error
organization `91012d09-e48b-438e-a489-1bebfd8fa6f9` not found in this organization's hierarchy原因: GET /v1/compliance/organizations/{organization_id}/settingsは、組織が存在するかどうかをレスポンスが明かさないように、意図的に同じボディを共有する3つのケースでこの404を返します。organization_idが親のリンク済み組織の1つでない場合、値が有効なUUIDでない場合、またはsettingsエンドポイントが親組織でまだ有効になっていない場合です。
修正方法: 組織を一覧するとIDを照合してください。既知の正しい組織IDがそれでも404を返す場合、settingsエンドポイントは親組織でまだ有効になっていません。Anthropicの担当者にお問い合わせください。
409 Conflict
リクエストは正しい形式で認可されていますが、リソースの現在の状態と競合しています。
プロジェクトにチャットが添付されている
Type: conflict_error
The "claude_proj_01KGp4eZNug9ri4kE35RSppq" project cannot be deleted as it has chats attached to it. Delete or detach all chats, and try deleting the project again.原因: まだチャットが添付されているプロジェクトに対してDELETE /v1/compliance/apps/projects/{project_id}が呼び出されました。
修正方法: GET /v1/compliance/apps/chats?user_ids[]={user_id}&project_ids[]={project_id}でプロジェクトのチャットを一覧し(project_ids[]フィルターには少なくとも1つのuser_ids[]値が必要です。IDは組織ユーザーを一覧するを通じて列挙してください)、それぞれをDELETE /v1/compliance/apps/chats/{claude_chat_id}で削除してから、プロジェクトの削除をリトライしてください。
429 Too Many Requests
Compliance APIへのリクエストは、親組織ごとに1分あたり600リクエストに制限されています。この制限は、親の配下にあるすべてのキー(Compliance Access Keysおよびすべてのリンク済み組織のAdmin APIキー)とすべての/v1/compliance/*エンドポイントで共有される1つの予算です。リモートセッションエンドポイントには、その上に2つ目のリクエスト予算があります。親組織を持たないスタンドアロンのClaude Console組織の場合、同じ予算が組織自体に適用され、そのAdmin APIキー間で共有されます。インテグレーションでより高い制限が必要な場合は、Anthropicの担当者にお問い合わせください。
APIキーが認証されると、Compliance APIのレスポンスは標準のレート制限レスポンスヘッダーを通じて共有予算を報告するため、クライアントは429を待つのではなく事前にスロットリングできます。
anthropic-ratelimit-requests-limitは1分あたりのリクエスト予算です。anthropic-ratelimit-requests-remainingは現在のウィンドウに残っている予算です。anthropic-ratelimit-requests-resetは、ウィンドウがリセットされ全予算が回復するRFC 3339タイムスタンプです。
429レスポンスには、次のリクエストを送信する前に待つべき秒数を示すretry-afterヘッダーも含まれます。この値にはanthropic-ratelimit-requests-resetを超える小さな安全マージンが含まれる場合があります。retry-afterに従ってください。
HTTP/1.1 429 Too Many Requests
date: Tue, 21 Apr 2026 14:38:02 GMT
retry-after: 25
anthropic-ratelimit-requests-limit: 600
anthropic-ratelimit-requests-remaining: 0
anthropic-ratelimit-requests-reset: 2026-04-21T14:38:25Z{
"error": {
"type": "rate_limit_error",
"message": "Compliance API rate limit of 600 requests per minute per parent organization has been exceeded. Retry after the time indicated by the retry-after header. Quote the request-id response header when contacting Anthropic support."
}
}原因: 親組織(またはスタンドアロンのClaude Console組織)が、予算を共有するすべてのキーを合わせて、1分間のウィンドウ内に/v1/compliance/*へ600を超えるリクエストを送信したか、リモートセッションエンドポイントの2つ目のリクエスト予算(このセクションの後半で説明)を使い切りました。
修正方法: retry-afterヘッダーの秒数だけ待ってからリトライしてください。ヘッダーがない場合(たとえば中継によって削除された場合)は、指数バックオフ(1秒から開始し、60秒まで倍増)にフォールバックしてください。429ではページネーションカーソルを進めないでください。失敗したリクエストはデータを返していないため、最後に成功したページのカーソルが依然として正しいものです。
認証に失敗したリクエスト(キーの欠落や未認識のキー、またはCompliance Access KeyやAdmin APIキーではなくClaude APIキー)は、レートリミッターの前で拒否され、クォータを消費しません。エンドポイントに必要なスコープを持たない有効なキーは、403が返される前にクォータを1単位消費します。
ローカルセッションエンドポイントは共有制限に対してのみカウントされます。リモートセッションエンドポイントには、共有制限と同様に親組織に紐付けられた2つ目のリクエスト予算が、その上に追加であります。その予算からの429には、常に1であるretry-afterヘッダーが含まれます(実際のリセット時刻ではなく最小待機時間)。そのレスポンスのanthropic-ratelimit-*ヘッダーはこの予算ではなく共有制限を表すため、429が繰り返される場合は指数的にバックオフしてください。
Activity Feedをスケジュールでポーリングする場合は、合計リクエストレート(すべてのキー、リンク済み組織、同時実行ワーカーを合わせて)を共有制限未満に予算化してください。anthropic-ratelimit-requests-remainingを監視して、制限に達する前に速度を落としてください。ウィンドウポーリングとカーソル駆動の取り込みの選択については、コンプライアンスインテグレーションを設計するを参照してください。
500 Internal Server Error
Compliance APIからの500は、障害が決定論的である場合、x-should-retry: falseレスポンスヘッダーを含みます。Anthropic SDKはこのヘッダーを自動的に尊重します。すべての5xxでリトライする汎用HTTPリトライライブラリを使用している場合は、x-should-retryがfalseのときにリトライを抑制してください。このエラーをリトライしても、毎回同じように失敗します。
x-should-retry: falseヘッダーのない500は一時的なものです。指数バックオフ(1秒から開始し、60秒まで倍増)でリトライしてください。502、503、504、529レスポンスにも同じことが当てはまります。例外は、次に説明する少数のローカルセッションの503で、これらは負荷ではなく組織の設定や暗号化キーに依存します。プラットフォーム全体のリトライセマンティクスについては、エラーを参照してください。
ローカルセッションが一時的に利用できない
Type: overloaded_error
The local-sessions index is temporarily unavailable. Try again shortly.Captured content is temporarily unavailable. Try again shortly.The local-sessions index cannot currently evaluate retention overrides for this page. Try again later.原因: ローカルセッションエンドポイントは、これらのボディのいずれかとともに503を返します。3つすべてがoverloaded_errorタイプを共有するため、これは条件を区別するためにerror.typeではなくメッセージテキストが必要となる、このページで数少ないエラーの1つです。
index is temporarily unavailableボディは、負荷またはバックエンドの状態によりセッション一覧が短時間利用できないことを意味します。これは一時的なものです。Captured contentボディは、セッションのトランスクリプトコンテンツを現時点で返せないことを意味します。これも通常は一時的なものです。顧客管理の暗号化キーを使用する組織では、messagesエンドポイントは、キーで復号できないコンテンツを含むすべてのページに対してもこのボディを返します。たとえば、キーを無効化、失効、または破棄した場合や、キーに到達できない場合です。その場合、キーが使用できない限りエラーは続きます。メッセージテキストはどちらの場合も同じであるため、キーが原因であることを示す唯一のシグナルは、その組織でエラーが繰り返し発生し続けることです。使用できないキーがnot_capturedとして報告されることはありません。retention overridesボディは、要求された範囲内の1つ以上のセッションに適用される保持またはデータ処理の設定をまだ評価できなかったことを意味します。取得エンドポイントとmessagesエンドポイントでは、for this pageの代わりにfor this sessionと表示されます。これは負荷ではなく、セッションを実行した組織のデータと設定に依存し、長期間続く場合があります。
修正方法: 各ボディを次のように処理してください。
- 2つの
Try again shortly.ボディについては、指数バックオフでリトライし、失敗したリクエストはデータを返していないためpageカーソルを進めないでください。 - 顧客管理キーを使用する組織のmessagesエンドポイントで
Captured contentボディが繰り返し発生し続ける場合は、永続的なものとして扱ってください。その組織のトランスクリプトのウォークを停止し、キー管理サービスでキーのステータスを確認してください。他のリンク済み組織のトランスクリプト、およびすべての場所のセッションメタデータは影響を受けません。後の実行でリトライする場合は、messagesのページカーソルはウォークの最初のページから24時間後に期限切れになるため、各セッションのウォークをpageなしで再開してください。 Try again later.ボディについては、解消を待ってウォークを開いたままにしないでください。一覧エンドポイントでは、pageパラメータなしで再開して後でリトライするか(24時間より古い一覧ページトークンは引き続き受け付けられますが、現在の保持境界に対して再評価されるため、保留したウォークはセッションをスキップする可能性があります)、リクエストが成功するまでcreated_at.gteとcreated_at.ltのウィンドウを狭め、スキップした範囲は後の実行で別途エクスポートしてください。取得エンドポイントとmessagesエンドポイントでは、そのセッションIDをスキップし、エクスポートの残りを続行し、後の実行でそのセッションをリトライしてください。messagesのページカーソルはウォークの最初のページから24時間後に期限切れになるため、そのセッションに戻る際はウォークをpageなしで再開してください。
これらの条件のいずれかが実行をまたいで繰り返し発生する場合は、Anthropicの担当者に連絡し、request-idレスポンスヘッダーを含めてください。顧客管理キーのケースでは、キーが使用可能な状態でエラーが続く場合にのみ連絡してください。
サービス全体のインシデントについては、status.anthropic.comを確認してください。
次のステップ
アクセス、スコープ、保持、インテグレーションに関するよくある質問。
プラットフォーム全体のエラーカタログとリトライセマンティクス。
Was this page helpful?