Claude Code で作業中、急にこんなエラーが出て止まったことはないだろうか:

API Error: 529 {"type":"error","error":
{"type":"overloaded_error","message":"Overloaded"}}

# あるいは
API Error: 500 Internal server error.

529 Overloaded は「Anthropic 側のAPIが一時的に過負荷(混雑)している」、500 は「サーバ内部で予期しないエラーが起きた」という意味だ。どちらもサーバ側の問題であり——ここが最重要だが——あなたのリクエストや設定のミスでも、使用量の枠切れでもない。公式も「529 はあなたの使用量上限ではなく、枠も消費しない」と明言している。つまり 基本的に「少し待って再試行」で直る類のエラーだ。

先に要点。① 529/500 はサーバ側=あなたのせいではない(枠も食わない)。② Claude Code は表示前に自動で最大10回・指数バックオフで再試行している——友好的なメッセージが出た時点で「リトライを使い切った」状態。③ 対処は「ステータス確認 → 少し待つ → /model でモデルを変える」。容量はモデルごとに管理されるので、Opus が混んでいても Sonnet なら通ることが多い。

CLAUDE CODE · 529 / 500

これはサーバ側、あなたのせいではない

— Claude Code は表示前に自動で再試行している

529 overloaded_error → auto-retry
✗ 529 Overloaded
Retrying in 1s · attempt 1/10
Retrying in 2s · attempt 2/10
Retrying in 4s · attempt 3/10 (指数バックオフ)
✓ 成功 — そのまま継続
…10回使い切ると friendly メッセージ+ status.claude.com 案内
✓ サーバ側の容量問題
全ユーザー共通・枠を消費しない
✗ あなたのミス/枠切れ
ではない(429・usage limit と別物)

だから対処は 「待って再試行 / /model で切替 / status.claude.com 確認」
直すべきコードや設定は基本的に無い

1. このエラーは何を言っているのか

HTTP 529(overloaded_error / メッセージは "Overloaded")は、Anthropic のAPIが一時的に容量を超えて混雑しているサインだ。公式の説明はそのまま「API が一時的に過負荷」「全ユーザーにまたがる高トラフィック時に起きうる」。つまり 特定の誰かのせいではなく、サービス全体の需要が一時的に供給を上回った状態を指す。

HTTP 500(api_errorは、Anthropic 側の内部で予期しないエラーが起きたこと。公式いわく「あなたのプロンプト・設定・アカウントが原因ではない」。関連して、長時間の処理が時間切れになる 504(timeout_errorもある(なお Anthropic が公式に定義するのは 504 で、502/503 はゲートウェイ等の上流インフラ由来のことが多い)。

最重要のポイントは 「529・500 はサーバ側の問題で、あなたの使用量の枠を消費しない」こと。プラン枠を使い切る usage limit reached とも、あなた自身のレート制限 429 とも、まったくの別物だ(§4で区別する)。だから 身構えてコードや設定を直す必要はなく、基本は「待って再試行」でよい。

2. Claude Code は自動で再試行している

実は、あなたがエラーメッセージを見る前に、Claude Code は裏で何度も再試行している。公式ドキュメントによれば——

自動リトライの仕様

サーバエラー・過負荷(overloaded)・タイムアウト・一時的な429スロットル・切断は、最大10回・指数バックオフで自動リトライされる。リトライ中はスピナーに Retrying in Ns · attempt x/y のカウントダウンが出る。友好的な API Error: 文が表示された時点で、その10回を使い切ったということだ。

だから 「一瞬 529 が出たがすぐ進んだ」なら、それは自動リトライが吸収した正常動作。逆に friendly メッセージ(「Repeated 529 Overloaded errors … try again in a moment. If it persists, check https://status.claude.com」等)まで出たなら、自動リトライでも回復しないほど混んでいるサインだ。再試行回数は CLAUDE_CODE_MAX_RETRIES(既定10)、1リクエストの上限時間は API_TIMEOUT_MS(既定600000ms=10分)で調整できる。スクリプト用途で素早く失敗させたいなら回数を下げ、長いインシデントを待ち抜きたいなら上げる。

3. ユーザー側の対処

529/500 が出たときの打ち手は、実はとてもシンプルだ。順に試す。

USER FIXES

基本は「待つ・変える・確認する」

① 少し待って再試行
一時的な混雑がほとんど。長いプロンプトでも「もう一度」と入力すれば元の文脈のまま再実行できる。
② /model でモデルを変える
容量はモデルごと。Opus が混んでいても Sonnet なら即通ることが多い。Claude Code 自身も高負荷時に切替を促す。
③ ステータスを確認
status.claude.com で進行中のインシデントが無いか確認。出ていれば復旧を待つしかない。
④ 500が続くなら /feedback
インシデント表示が無いのに 500 が継続するなら /feedback で報告(request_id を添えると調査が速い)。

迷ったら ①待つ → ②/modelで切替 → ③status確認
オフピークの時間帯にずらすのも有効。直すべき設定は基本的に無い

補足:「Server is temporarily limiting requests(一時的にリクエストを制限中)」というメッセージも、公式に「あなたの使用量上限とは無関係な短時間のサーバ側スロットル」と位置づけられている。これも 少し待てば回復するもので、プラン枠の usage limit とは別物だ。

4. 紛らわしいエラーとの区別

「止まった」系は原因が真逆のことがある。「サーバ側か、あなた側か」でまず大きく分ける。

エラー誰の問題か枠を消費?主な対処
529 Overloadedサーバ側(全ユーザー共通の過負荷)しない待って再試行・/model・status確認
500 / 504サーバ側(内部エラー/時間切れ)しない再試行。継続なら /feedback
429 Rate limitあなた側(APIキーのレート上限)する(あなたのレート枠)流量を落とす・Tier上げ・retry-after 秒待つ
usage limit reachedあなた側(Pro/Maxのプラン枠)する(プラン枠)リセット待ち・対処
400 Invalid requestあなた側(リクエストの不備)しないリクエスト内容を修正

覚え方:500番台(529含む)はサーバ側=待てば直る429 と usage limit はあなたの“量”の話=枠やレートの調整が要る400 はあなたの“中身”の話=リクエストの修正。とくに 429 と 529 は混同しやすいが、429 には retry-after ヘッダが付き枠を消費するのに対し、529 はヘッダも付かず枠も消費しない——別物だ。その他のClaude Code頻出エラーは エラー集にまとめてある。

5. 開発者向け(API/SDK)

API/SDK で自作アプリを動かしている場合、529/500 は 「正常に起こりうる一過性の事象」として設計に織り込むのが正しい。

① 公式SDKは型付き例外(OverloadedErrorInternalServerError 等)を投げ、一時的エラーを指数バックオフで自動リトライする——文字列一致ではなく例外クラスで捕捉する。② 自前で再試行するなら「指数バックオフ+ジッター」retry-after ヘッダは 429 には付くが 529 には付かないので、529 ではヘッダ依存ではなく自前のバックオフで待つ。④ フォールバックモデルを用意(Claude Code には --fallback-model がある)。⑤ 使用量スパイク後の 429「加速度制限」を避けるため、トラフィックは段階的に増やす。安定供給が要件なら Priority TierMessage Batches API も選択肢になる。API の基礎は AI APIとは を参照。

6. 一時的か、インシデントか

同じ 529/500 でも、「一瞬で消えるスパイク」か「繰り返す継続障害」かで意味が違う。

一時的なスパイク(1〜数回で再試行が通る)は、需要の揺らぎによる正常範囲。自動リトライがほぼ吸収するので、ユーザー側で直すものは無い。一方 「Repeated 529」や、再試行しても消えない 500 は、進行中のインシデントを疑うサイン——まず status.claude.com を確認し、障害が出ていれば復旧を待つのが唯一の正解だ。インシデント表示が無いのに 500 が続くなら /feedbackrequest_id を添えて報告する。いずれにせよ、529/500 に対してユーザーができるのは「再試行・/model切替・ステータス確認・報告」だけで、それで十分でもある。

まとめ

Claude Code の 「API Error: 529 Overloaded」「500 Internal server error」は、Anthropic 側のAPIが一時的に過負荷/内部エラーになったサーバ側の事象だ。あなたのリクエストや設定のミスでも、使用量の枠切れでもなく、枠も消費しない。Claude Code は表示前に 最大10回・指数バックオフで自動リトライしており、friendly メッセージが出た時点でその再試行を使い切っている。

対処はシンプルで、① 少し待って再試行 → ② /model でモデルを変える(容量はモデル別)→ ③ status.claude.com を確認 → ④ 500が続くなら /feedback429(あなたのレート)や usage limit(プラン枠)とは別物で、529 には retry-after も付かない。開発者は SDKの自動リトライ+指数バックオフ+ジッター+フォールバックモデルで織り込む。繰り返すならインシデントを疑ってステータス確認——いずれにせよ 直すべきコードや設定は基本的に無い。関連:使用量制限の対処Opus/Sonnet/Haiku比較Claude Codeエラー集

FAQ

Q. 「529 Overloaded」は私の使い方やコードが悪いのですか?
A. いいえ、サーバ側の問題です。529 は Anthropic のAPIが一時的に過負荷(全ユーザーにまたがる混雑)になっているサインで、あなたのリクエスト・設定・アカウントは関係ありません。公式も「529 は使用量上限ではなく、枠も消費しない」と明言しています。基本は少し待って再試行すれば直ります。

Q. 何度も再試行しろと言われますが、自分で連打すべきですか?
A. その必要は基本ありません。Claude Code は表示前に 最大10回・指数バックオフで自動リトライしています(Retrying in Ns · attempt x/y)。friendly なエラー文が出たのはその10回を使い切ったためです。少し時間を置いてから、長いプロンプトなら「もう一度」と入力すれば元の文脈のまま再実行できます。回数は CLAUDE_CODE_MAX_RETRIES で調整可能です。

Q. 529 と 429 は何が違うのですか?
A. 529 はサーバ側の過負荷(全ユーザー共通・あなたの枠は消費しない)、429 はあなた側のレート制限(APIキーのRPM等を超過・あなたのレート枠の話)です。見分け方として、429 には retry-after ヘッダが付くのに対し 529 には付きません。429 は流量を落とす・Tierを上げるといったあなた側の調整が要りますが、529 は待って再試行・/model切替が基本です。

Q. /model を変えるとなぜ通ることがあるのですか?
A. 容量(混雑度)はモデルごとに管理されているからです。Opus が高負荷でも、Sonnet には余裕があれば即座に通ります。Claude Code 自身も高負荷時に「Opus is experiencing high load, please use /model to switch to Sonnet」のように切替を促すことがあります。急ぎのときは /model で軽め・別系統のモデルに切り替えるのが手早い回避策です。

Q. ずっと 529/500 が続きます。どうすれば?
A. 進行中のインシデントを疑い、status.claude.com を確認してください。障害が掲示されていれば、ユーザー側にできることは復旧を待つことだけです。インシデント表示が無いのに 500 が継続する場合は、/feedbackrequest_id を添えて報告すると Anthropic が調査しやすくなります。529/500 はサーバ側の事象なので、コードや設定を直す必要は基本的にありません