Before retrying, save the error text, Request ID, time, model, and endpoint. Do not send a full API key.
Diagnose before retryingParameter, protocol, and session-compatibility issues do not disappear through repeated requests. Retry a known transient failure only once and at a low frequency.
status_code=500, not implemented
When this appears while /v1/responses calls a current Anthropic-type Claude channel, it is a protocol mismatch—not a temporary upstream outage.
- For a custom application, use
/v1/chat/completions.
- For Claude Code, follow the Claude Code guide and keep its native Messages configuration.
- Do not retry the same request unchanged.
HTTP errors
no available channel
The current key’s group has no enabled route for that model. Check the exact model ID, token group, and Model Marketplace availability. Do not create new keys or top up repeatedly to solve it.
Concurrency limit exceeded for user
Too many active requests are using the account. Wait for existing requests to finish and reduce client concurrency. Recreating the API key does not remove this limit.
Invalid signature in thinking block: Start a new session, update the client, and avoid continuing the same session across multiple clients.
previous_response_id is only supported on Responses WebSocket v2: Start a new session and turn off experimental response reuse or update the client.
Content block not found: See Content block not found.
Image generation
Use image models only through the Images endpoint. For Image generation is not enabled, model not supported, or a timeout, check the model, key group, and parameter support first. Keep the Request ID and do not immediately submit the same job again.
Suspected unexpected charge
Do not assume that an error will be retried by the platform. Check the final client result and matching Request IDs. If you need help, provide the relevant Request IDs and times.