エラーとレート制限
エラーを理解し、安全に再試行して、失敗した生成を復旧します。
エラーレスポンス#
HTTPエラーはリクエストの拒否を示します。保存済み操作は後から失敗しても、状態エンドポイントはHTTP 200を返します。
{ "error": { "code": "REQUEST_INVALID", "message": "Check the request fields and try again.", "request_id": "e8aa0a87-6cd9-42eb-975a-b72bf43218c8", "retryable": false }, "request_id": "e8aa0a87-6cd9-42eb-975a-b72bf43218c8"}復旧#
| HTTP | エラー | 復旧 |
|---|---|---|
400 | 無効なリクエストREQUEST_INVALID | 再試行する前に、エラーで示されたフィールドを修正してください。 |
401 | 無効な認証情報CREDENTIAL_INVALID | 認証情報の有効期限と失効状態を確認してください。 |
402 | クレジット不足INSUFFICIENT_CREDITS | 認証情報を所有するアカウントにクレジットを追加し、保存済みの作業を続行してください。 |
403 | 権限がありませんSCOPE_REQUIRED | 必要なスコープとリソースへのアクセス権を持つ認証情報を使用してください。 |
404 | リソースを利用できませんRESOURCE_UNAVAILABLE | リソースIDと、承認済みアカウントの所有物であることを確認してください。 |
409 | 意図IDの競合IDEMPOTENCY_CONFLICT | 意図IDは元のリクエストにのみ再使用し、別の操作には新しいUUIDを使用してください。 |
429 | レート制限に達しましたRATE_LIMITED | Retry-Afterの待機時間が過ぎてから同じリクエストを再試行してください。 |
503 | 一時的に利用できませんDEPENDENCY_UNAVAILABLE | Retry-After後に同じ意図IDで再試行してください。タイムアウト後は保存済みの操作を確認してください。 |
エラー#
{ "REQUEST_INVALID": "Check the request fields and try again.", "TOOL_INPUT_INVALID": "The tool input does not match its public schema.", "IDEMPOTENCY_KEY_REQUIRED": "Supply a UUID Idempotency-Key for this action.", "IDEMPOTENCY_CONFLICT": "This intent was already used for different details.", "CREDENTIAL_INVALID": "The credential is invalid, expired or revoked.", "AUTHENTICATION_REQUIRED": "A valid credential is required.", "SCOPE_REQUIRED": "The credential does not permit this action.", "ACTION_FORBIDDEN": "This action is not permitted.", "ORIGIN_DENIED": "This origin is not registered for the credential.", "RESOURCE_UNAVAILABLE": "The requested resource is unavailable.", "TOOL_UNAVAILABLE": "This tool is unavailable.", "CURSOR_INVALID": "Refresh the list and try again.", "ACTION_CHANGED": "The action or its target changed. Read its current state.", "HUMAN_REVIEW_REQUIRED": "Review this action in the authenticated Tong dashboard.", "REVIEW_EXPIRED": "This review expired. Read the current operation.", "INSUFFICIENT_CREDITS": "Add credits to continue.", "PAID_FEATURE_DEPOSIT_REQUIRED": "Complete the account deposit requirement to use this tool.", "POLICIES_REQUIRED": "Accept the current account policies to continue.", "ACCOUNT_UNAVAILABLE": "This account is unavailable.", "RATE_LIMITED": "Too many requests. Retry after the indicated interval.", "QUEUE_FULL": "The account work queue is full. Retry later.", "WEBHOOK_LIMIT": "The account webhook limit has been reached.", "WEBHOOK_DESTINATION_INVALID": "Use an allowed public HTTPS webhook destination.", "QUOTE_INVALID": "The quote is invalid or does not match this request.", "QUOTE_UNAVAILABLE": "The requested quote is unavailable.", "EXPORT_NOT_READY": "The export is not ready for download.", "EXPORT_TOO_LARGE": "Narrow the export interval or filters.", "QUERY_TOO_LARGE": "Narrow the query interval or filters.", "INTERVAL_INVALID": "Use a valid interval of at most 90 days.", "UPLOAD_TOO_LARGE": "The upload exceeds the media purpose limit.", "DEVELOPER_ACCESS_UNAVAILABLE": "Developer access is unavailable.", "DEPENDENCY_UNAVAILABLE": "A required service is temporarily unavailable.", "CATALOG_UNAVAILABLE": "The current model catalog is temporarily unavailable.", "CONFIGURATION_INVALID": "Developer service configuration is unavailable."}再試行とタイムアウト#
各操作に1つのUUIDを割り当て、タイムアウトや再試行時にも再利用します。同じUUIDで異なる入力を送ると拒否されます。
curl 'https://platform.tongai.io/v1/operations/by-intent/45be69f1-c266-4a09-a82c-bf3c6303eb03' \ -H "Authorization: Bearer $TONG_API_KEY"設定
curl --versionレート制限#
Retry-After: {seconds}active_queue_per_account: 100admissions_per_minute: owner=500, credential=180, client=1000HTTP_per_minute: owner=5000, credential=2000, client=10000, IP=1000query_interval_max_days: 90export_max_rows: 100000export_max_bytes: 33554432webhooks_per_account: 10webhook_delivery_attempts: 12Retry-Afterに従い、待機後に同じ意図IDで一時的なエラーを再試行し、別の有料操作を作らないでください。