Anthropic’s Claude Code error reference puts each message on one side. A 5xx such as API Error: 500 is not caused by your prompt, settings or account, and Claude Code retries most server errors before showing them. Usage-limit, sign-in and connection messages point to your plan, credentials or network. For the server group, check the status page the message names (status.claude.com for Anthropic’s own API).
Key takeaways
Key takeaways
- Read the wording, not the “API Error” prefix. The reference files messages under server errors, usage limits, authentication, network and request errors. The section usually tells you whose side the problem is on.
- Most retries are already spent. By default Claude Code retries up to 10 times with exponential backoff before it shows an error. The reference’s steps for server messages are to check status and wait before resending.
- Three look-alikes need care. “Server is temporarily limiting requests (not your usage limit)” is a server throttle, while “Request rejected (429)” is a limit on your own key. “Request timed out” is a server message unless it also mentions your internet connection.
- Our incident data cannot confirm a message. Of 50 Claude status incidents (July 27 to October 7, 2026), 35 list Claude Code, with a median 71 minutes open. None of the 162 updates uses any of these error strings.
Published October 13, 2026. We read Anthropic’s Claude Code error reference and Claude API errors page in full on October 13, 2026, and computed incident counts from the status feed we saved on October 10, 2026. We tested nothing ourselves: this article reports what the documents say.
How the Claude Code API error reference sorts messages
The Claude Code error reference is one page of about 488 KB (retrieved October 13, 2026). It notes that most runtime errors map to an underlying API error code, and each section opens by saying whose side the problem is on. Most server errors “come from the inference provider”. Usage limits mean a quota tied to your account or plan has been reached, with three exceptions the section names. Authentication errors mean Claude Code cannot prove who you are. Network errors usually originate in your local network, proxy or firewall. Request errors concern the content of your request. Command-line, plugin, tool and configuration messages come from your machine and are outside this article.
“Server-side” does not always mean Anthropic. A server message ends with a sentence naming where to check service health, and it varies by provider: Amazon Bedrock, Google Cloud’s Agent Platform and Microsoft Foundry name their own status pages, and a custom ANTHROPIC_BASE_URL names the gateway host. The Claude API errors page (retrieved October 13, 2026) agrees on the sides: 500 api_error is an unexpected error inside Anthropic’s systems and 529 overloaded_error is temporary overload, while 429 rate_limit_error means your organization hit a rate limit or spend cap and 401 authentication_error is a problem with your API key.
What Claude Code retries before it shows a message
The reference states that when you see an error on its page, Claude Code has already made whatever retries apply. The default is up to 10 retries with exponential backoff; CLAUDE_CODE_MAX_RETRIES changes it and has been capped at 15 since v2.1.186 (the watchdog setting below removes the limit). It retries server errors, overloaded responses and timeouts that arrive before any response has streamed, dropped connections, stalled streams (once) and, as of v2.1.199, temporary 429 throttles. It does not retry two things:
- A TLS certificate failure. Since v2.1.199 this is reported on the first attempt, because the fix is on your side.
- A failure after Claude has completed a block of text or a tool call. Re-running could execute the same tool calls twice, so Claude Code keeps the completed work.
During retries the spinner shows Retrying in Ns · attempt x/y. If the banner Waiting for API response · will retry in … · check your network reappears on every attempt, the page says to treat it as a network issue. For unattended runs, CLAUDE_CODE_RETRY_WATCHDOG=1 retries 429 and 529 errors indefinitely.
The message-by-message map
The table lists exact messages from the reference and its documented first step.
| Message | Side | What the reference says | Documented first step |
|---|---|---|---|
API Error: 500 Internal server error | Server | A 5xx from the API is an unexpected failure inside the API, not caused by your prompt, settings or account | Check status, wait a minute and resend; run /feedback if it persists with no posted incident |
API Error: Repeated 529 Overloaded errors | Server | At capacity across all users; not your usage limit and not counted against your quota | Check status, wait, or switch with /model; see our 529 explainer |
Request timed out | Server | The API did not answer before the connection deadline, during high load or with a very large response; default 10 minutes | Retry; raise API_TIMEOUT_MS for a slow network or proxy |
Server error mid-response. The response above may be incomplete. | Server | A 5xx or overload arrived after Claude finished a block; completed work is kept (v2.1.199 or later) | Reply continue |
API Error: Server is temporarily limiting requests (not your usage limit) | Server throttle | A short-lived throttle unrelated to your plan quota; retried automatically as of v2.1.199 | Wait briefly; check status if it persists |
You've hit your session limit (also weekly, Opus and Sonnet) | Your usage | Your plan allowance is used; the message shows the reset time | Wait for the reset or run /usage; for an Opus or Sonnet limit, switch model family with /model |
API Error: Request rejected (429) | Your key | The rate limit configured for your API key, Amazon Bedrock project or Google Cloud project | Run /status to confirm the credential; check provider limits; reduce concurrency |
Not logged in · Please run /login | Your sign-in | No valid credential for this session | Run /login |
API Error: 401 Invalid authentication credentials | Your sign-in | The API rejected the account or organization behind your credential, for example after a revoked credential | Run /status to see which credential is active, then /login or rotate the key |
Unable to connect to API | Your network | The connection failed or never completed: no internet, a VPN blocking api.anthropic.com, or an unconfigured proxy | Run curl -I https://api.anthropic.com in the same shell; set HTTPS_PROXY if needed |
SSL certificate verification failed | Your network | A TLS-inspecting proxy presents a certificate Claude Code does not trust | Set NODE_EXTRA_CA_CERTS to your CA bundle |
Where the sides blur
Request timed out. The server section describes the API not answering in time. The network section lists the longer form ending “Check your internet connection and proxy settings”. The reference’s index sends you to the network section only when the message mentions your connection.
The throttle versus Request rejected (429). Both sound like rate limits. The reference says Claude Code recognizes the throttle by the absence of the quota headers that a real plan limit carries, and it retries the throttle. Request rejected (429) is the limit configured for your key or cloud project, even though its text says “this may be a temporary capacity issue”.
The mid-response notices. Server error mid-response is a server fault; our suggestion, not Anthropic’s, is to read what remains before you reply continue. Connection lost mid-response, Your computer went to sleep mid-response and The response stopped arriving share the notice for other causes: a dropped connection, a sleeping computer, a stalled stream. Read the exact words.
What our incident data can and cannot say
Method. We used our saved copy of status.claude.com’s feed: 50 incidents and 162 updates, started between July 27 and October 7, 2026 (UTC). An incident counts as listing Claude Code when any of its updates, taken together, sets a component named Claude Code to a status other than operational. Minutes open run from the incident’s start to its first update marked resolved. That is the status-page window, not the time any user saw an error.
Result. 35 of the 50 incidents (70%) list Claude Code. Their median stayed open 71 minutes; 19 stayed open over an hour and 9 over two hours. None lists Claude Code alone: 26 list exactly claude.ai, the Claude API, Claude Cowork and Claude Code together. One more, the August 14 “Service disruption on Claude Code on the web and related services”, names Claude Code in its title but lists only Claude Cowork, so counting titles too would give 36; counting update text as well would give 38.
What it cannot show. None of the 162 updates contains “API Error”, “overloaded”, “529”, “500”, “Internal server error”, “timed out” or “temporarily limiting”. The closest wording is a September 10 Claude API update mentioning “request timeouts” (it does not list Claude Code), and a September 29 update saying users may see failed requests and that retrying may succeed. A posted incident tells you Claude Code was affected, not which Claude Code API error you saw. A quiet status page does not rule out a server-side message either: the 500 section itself says what to do if the error persists with no posted incident. For the full analysis see our Claude status history, and for how to read the closing time, what “resolved” means.
What users report about the throttle message (unverified)
Five GitHub issues in the anthropics/claude-code repository carry the same title (one has a “[BUG]” prefix), “API Error: Server is temporarily limiting requests (not your usage limit) · Rate limited”. We read only their titles, dates and first comments. These are user reports: we did not reproduce them, and we do not know which Claude Code version each reporter ran.
| Issue | Filed (UTC) | State on October 13, 2026 |
|---|---|---|
| #53915 | April 27, 2026 | Open, 68 comments |
| #59730 | May 16, 2026 | Closed May 20 as a duplicate |
| #61607 | May 23, 2026 | Closed May 26 as a duplicate |
| #63703 | May 29, 2026 | Closed July 3 for inactivity |
| #65773 | June 6, 2026 | Closed June 9 as a duplicate |
What we could not verify
- Which message belongs to which incident. No status update quotes a Claude Code error string.
- How long a server-side message lasts. The reference says to wait “a minute” or “a few minutes” and gives no duration.
- Whether the five reports describe one failure, or what any reporter’s version was.
- Other providers. We read the Anthropic API path; Bedrock, Google Cloud’s Agent Platform and Foundry have their own sections.
- Fix success rates. We did not trigger these errors, so we report none.
Wording, retry limits and version numbers come from the page as it stood on October 13, 2026 and may change. For a general path that starts with “is it just me?”, see our five-step decision guide.
Frequently asked questions
No, according to the reference, which says a 5xx from the API indicates an unexpected failure inside the API and is not caused by your prompt, settings or account. Its steps are to check status.claude.com, wait a minute and resend, and run /feedback if the error persists with no posted incident.
Up to 10 by default, with exponential backoff, according to the reference. CLAUDE_CODE_MAX_RETRIES changes the number. It does not retry a failure that arrives after Claude has completed a block of text or a tool call, or a TLS certificate failure.
The message says it does not, and the reference calls it a short-lived server throttle unrelated to your plan quota. Its steps are to wait briefly and check status.claude.com if it persists.
Not necessarily. In our saved feed, 35 of 50 incidents list Claude Code, but none of the 162 updates uses these error strings, so a posted incident does not confirm which message you saw. The reference tells you to check the status page for server-side messages and to use /feedback if one persists without an incident.
