What the error looks like
According to the Claude Code error reference, the message reads "API Error: Repeated 529 Overloaded errors. The API is at capacity — this is usually temporary. Try again in a moment." It then points to Anthropic's status page, and the docs say that trailing sentence varies by provider. Users of Amazon Bedrock, Google Cloud's Agent Platform or Microsoft Foundry see that provider's status page named instead, and a custom gateway setup names the gateway host.
The raw API error can also show up in full. In issue 39745 in Anthropic's Claude Code repository on GitHub, filed at 15:59 Beijing time on March 27, the user DavidSchneiderDS posted the output "API Error: 529 {"type":"error","error":{"type":"overloaded_error","message":"Overloaded."" from Claude Code version 2.1.85 running Opus on Windows. Anthropic's API documentation says every API error comes back as JSON with an error type, a message and a request ID, and 529 with the type overloaded_error is the one described as "The API is temporarily overloaded."
What Anthropic says it means
The Claude Code docs describe the error as the API being "temporarily at capacity across all users," and Anthropic's API documentation says "529 errors can occur when the API experiences high traffic across all users." The Claude Code docs also say directly that "A 529 is not your usage limit and doesn't count against your quota." Anthropic doesn't give any further explanation for a particular episode in either document.
By the time you see the message, Claude Code has already tried again. The error reference says Claude Code retries transient failures, including overloaded responses that arrive before any of Claude's response has streamed, up to 10 times with exponential backoff. While it does, a "Retrying in Ns · attempt x/y" countdown appears, and since version 2.1.198 the line below the countdown names where to check service status once the failure is identified as a 529 overload.
What to try
The error reference lists three steps. The first is to check Anthropic's status page, or the provider status page named in the message, for capacity notices. When we checked at 22:22 Beijing time on October 20, the status page showed "All Systems Operational," with the Claude API and Claude Code both listed as operational. The second is to try again in a few minutes.
The third is to run /model and switch to a different model, because the docs say "capacity is tracked per model." Claude Code prompts you to do this when one model is under particularly high load, with a message such as "Opus is experiencing high load, please use /model to switch to Sonnet," and the docs say the message names Fable on Fable models. In sessions run by the Claude Desktop app, such as the Code tab or Cowork, the prompt reads "Opus is experiencing high load. Switch to Sonnet." and the switch happens in the app's model picker.
Adjusting how Claude Code retries
The docs also document environment variables for retries. CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MS sets the starting delay between retries of a request rejected with a 529, with a default of 500 milliseconds, and raising it, up to 32000, spreads the retries over a longer window when the API is at capacity. It requires version 2.1.292 or later. CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS sets the ceiling on that backoff, with a default of 32000 and a maximum of 64000, and requires version 2.1.296 or later. Neither has any effect in fast mode or when the retry watchdog is on. CLAUDE_CODE_MAX_RETRIES sets the number of attempts, 10 by default.
For unattended sessions such as CI jobs, the docs say setting CLAUDE_CODE_RETRY_WATCHDOG to 1 makes Claude Code retry 429 and 529 capacity errors indefinitely instead of failing after the usual number of attempts. Since version 2.1.295, CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS can cap how long each request spends waiting those errors out. Developers calling the API directly get some of this built in, since Anthropic's API documentation says the official SDK retries transient failures with exponential backoff, twice by default.
How a 529 differs from a 429
The two codes appear in separate entries in both documents. Anthropic's API documentation describes a 429, rate_limit_error, as your organization hitting a rate limit, reaching its usage tier's monthly spend cap or reaching a spend limit on the Claude Code workspace, and says that in rare cases a sharp increase in an organization's usage can produce 429 errors because of acceleration limits. In Claude Code, "Request rejected (429)" means you have hit the rate limit configured for your API key, Amazon Bedrock project or Google Cloud project. A 529, by contrast, is the overloaded_error described above.
