Claude Code
Claude Code errors and fixes
18 Claude Code error messages, quoted verbatim, each with what it means, why it happens and the fix documented in official docs, maintainer replies or release notes. Verified .
All Claude Code errors
- Status: Fixed in release1 fixed in release
- Status: Workaround12 workaround
- Status: By design3 by design
- Status: Open2 open
API Error: 500 Internal server error. This is a server-side issue, usually temporaryThe Claude API (or the provider behind your endpoint) returned a 5xx response. Per the official error reference, a 5xx from the API indicates an unexpected failure inside the API and is not caused by your prompt, settings, or account. Older versions printed the raw JSON form: API Error: 500 {"type":"error","error":{"type":"api_error","message":"Internal server error"}}.Status: WorkaroundAPI Error: Repeated 529 Overloaded errors. The API is at capacityThe API is temporarily at capacity across all users and Claude Code has already retried several times before showing this. A 529 is not your usage limit and does not count against your quota. Older versions showed API Error: 529 {"type":"error","error":{"type":"overloaded_error","message":"Overloaded"}}. A related prompt reads Opus is experiencing high load, please use /model to switch to Sonnet.Status: WorkaroundAPI Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"messages.5: `tool_use` ids were found without `tool_result` blocks immediately after: toolu_01FRvEykWmCgrgJ22mvBbKhV. Each `tool_use` block must have a corresponding `tool_result` block in the next message."}}The conversation history reached the API in an inconsistent state: the sequence of tool_use, tool_result, and thinking blocks no longer matches what the API expects. Current versions show variants such as "API Error: 400 due to tool use concurrency issues. Run /rewind to recover the conversation.", "API Error: 400 orphaned tool_result in conversation history." and "API Error: 400 duplicate tool_use ID in conversation history."Status: OpenUnable to connect to API. Check your internet connectionThe TCP connection to the API failed or never completed. Coded variants include Connection dropped (ECONNRESET), Can't reach the API server - check your internet or DNS (ENOTFOUND), and Couldn't connect through your proxy (ERR_PROXY_TUNNEL). Older versions showed API Error (Connection error.) or Unable to connect to API (ECONNREFUSED).Status: WorkaroundUnable to connect to API: SSL certificate verification failed (UNABLE_TO_GET_ISSUER_CERT_LOCALLY).A proxy or security appliance on your network is intercepting TLS traffic with its own certificate, and Claude Code does not trust it. The self-signed variant reads Unable to connect to API: Self-signed certificate detected (SELF_SIGNED_CERT_IN_CHAIN). During /login it reads SSL certificate error (UNABLE_TO_GET_ISSUER_CERT_LOCALLY).Status: WorkaroundPlease run /login · API Error: 401 OAuth token has expiredYour saved login is no longer valid. A revoked token means you signed out everywhere or an admin removed access; an expired token means the automatic refresh failed mid-session. The revoked variant reads OAuth token revoked · Please run /login. In -p mode and the Agent SDK it reads Failed to authenticate. API Error: 401 OAuth token has expired.Status: WorkaroundOAuth error: timeout of 15000ms exceededThe /login or claude auth login flow failed at the final step after browser authorization, timing out waiting for the server.Status: OpenPrompt is too longThe conversation plus attached files exceeds the model's context window. In an interactive session it is shown as Context limit reached · /compact or /clear to continue. Amazon Bedrock reports the same condition as Input is too long for requested model.Status: WorkaroundYou've hit your session limit · resets 3:45pmYour subscription plan's rolling usage allowance ran out. Variants: You've hit your weekly limit · resets Mon 12:00am, You've hit your Opus limit · resets 3:45pm, You've hit your Sonnet limit · resets 3:45pm. Claude Code blocks further requests until the reset time.Status: By designAPI Error: Request rejected (429) · this may be a temporary capacity issue. If it persists, check https://status.claude.com.You have hit the rate limit configured for your API key, Amazon Bedrock project, or Google Cloud project. This is distinct from the server-side throttle API Error: Server is temporarily limiting requests (not your usage limit).Status: By designAPI Error: Usage credits required for 1M context · run /usage-credits to turn them on (they take effect after you restart Claude Code), or /model to switch to standard contextThe selected model uses the 1M-token extended context window and your plan only includes it through usage credits. This is an entitlement check, not quota exhaustion, and fires even when session and weekly allowances have capacity.Status: By designCredit balance is too lowYour Console organization has run out of prepaid credits, or Claude Code is sending requests with a Console API key when you meant to use your subscription.Status: WorkaroundAPI Error: 400 ... This organization has been disabled.Claude Code is using a stale ANTHROPIC_API_KEY from a disabled Console organization. Environment variables take precedence over /login, so the key is used even when you have a working subscription. Current versions show Your ANTHROPIC_API_KEY belongs to a disabled organization · Unset the environment variable to use your subscription instead.Status: WorkaroundInvalid API key · Fix external API keyThe ANTHROPIC_API_KEY environment variable or apiKeyHelper script returned a key the API rejected, or Claude Code blocked the key before sending it because it contains a character HTTP headers cannot carry (for example a line break).Status: WorkaroundAPI Error: 403 Request not allowedThe request was refused after logging in, typically because the account lacks an active subscription or the required Console role, or a proxy is interfering.Status: Workaroundzsh: command not found: claudeThe install finished but the install directory is not in your PATH. Platform variants: bash: claude: command not found (Linux), 'claude' is not recognized as an internal or external command (Windows CMD), claude : The term 'claude' is not recognized as the name of a cmdlet (PowerShell). The installer reports Native installation exists but ~/.local/bin is not in your PATH.Status: WorkaroundError: Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default.Claude Code tried to read interactive terminal input but stdin is a pipe or redirect rather than a terminal.Status: Fixed in releaseAPI Error: Claude's response exceeded the ... output token maximum. To configure this behavior, set the CLAUDE_CODE_MAX_OUTPUT_TOKENS environment variable.Claude's reply reached the largest number of output tokens the request allowed and was cut off. A variant, "API Error: Claude's response exceeded the 64000 output token maximum for a request sent without streaming. The CLAUDE_CODE_MAX_OUTPUT_TOKENS environment variable cannot raise this limit.", means a streaming request failed and was re-sent without streaming.Status: Workaround
New to Claude Code? Start with Claude Code in the tools directory.
Newsletter
Fixes for the tools you use, weekly
One email per week. New coding agent releases, what broke, and how developers are working around it.