AIFreeAPI Logo

Claude Codeにログインできないときの対処法:500・403・Invalid code

A
16 min readClaude Code

ブラウザで承認できても、端末の認証が完了したとは限りません。失敗した場所を確認し、認証コードの再取得、アカウントの権限確認、接続先の調査から必要な操作を選びます。

Claude Codeの500・403・Invalid codeと、ブラウザや端末で確認する認証エラーの対処法

Claude Codeの認証エラーは、どこで止まったかによって対処が変わります。認証コード入力時の Invalid code なら新しいログインを開始し、ログイン後の 403 Forbidden なら使われている認証情報とアクセス権を確認します。500 はブラウザの認可画面と、ログイン後のAPI呼び出しを分けて調べてください。

最初から設定フォルダーを削除したり、APIキーに切り替えたりする必要はありません。今の課金方法を保ったまま、失敗箇所に合う操作から進めます。以下は2026年9月6日に確認した公式文書に基づく手順です。

最初に、エラーが出た場所を確認する

エラー文を控えたうえで、直前に何をしていたかを次の表に照らしてください。番号だけで原因を決めず、ブラウザなのか端末なのかも残します。

止まった場所・表示最初に確認すること次の操作
端末へコードを入れると OAuth error: Invalid code新しく開始したログインのコードか、コピーが欠けていないかログインを開始し直して、今回のコードを入力する
WSL・SSH・コンテナーでブラウザ承認後も端末が待ち続けるブラウザとCLIが別の環境で動いていないか表示URLを開き、コードを元の端末へ戻す
ログイン後に 403 Forbidden認証方式、契約、Consoleのロール、社内プロキシ/status と利用アカウントを確認する
ブラウザの認可ページで 500発生時刻、公式の障害情報、認可ページで止まるか少し待って新しいログインを試す
入力した依頼に対して API Error: 500実際のAPI接続先と、そのサービスの障害情報少し待って小さな依頼を再試行する

ログイン操作そのものの500は、通常の会話リクエストの500と同じ場面ではありません。2026年4月7日には、Claude Code 2.1.92の認可処理で500になった利用者の報告があります。ただし、これは当時の個別報告であり、現在の全体障害や特定バージョンでの解消を示すものではありません。

Claude Codeのエラーを発生箇所で切り分け、認証コード入力・権限確認・復旧確認へ進む手順
Claude Codeのエラーを発生箇所で切り分け、認証コード入力・権限確認・復旧確認へ進む手順

Invalid codeと、承認後に戻れない場合

新しいログインのコードを、元の端末に入力する

公式文書は Invalid code の原因として、コードの期限切れやコピーの欠落を挙げています。エラー画面で再試行の案内が出ていればEnterを押し、新しく開いた認可手順を最後まで進めます。URLをコピーする必要がある場合は、案内に従って c を使うと完全なURLを取得できます。古いタブのコードを使い回さず、新しい手順で表示されたコードをそのまま入力してください。公式のInvalid code対処法

コードは速やかに入力しますが、公式に確認できない「必ず15秒以内」といった秒数を目安にする必要はありません。また、ここで入力するのはブラウザで得た認証コードです。Consoleで発行するAPIキーとは別のものです。

WSL・SSH・コンテナーでも手動入力できる

ブラウザとClaude Codeが別のホストや環境で動いていると、承認後のリダイレクトがCLI側に届かないことがあります。この場合でも、環境がリモートという理由だけでAPIキーへ切り替える必要はありません。

  1. Claude Codeを実行している端末でログインを開始します。
  2. 端末に表示されたURLを、手元のブラウザで開きます。
  3. 使いたいアカウントで認可を完了し、表示されたコードをコピーします。
  4. ログインを開始した元の端末の入力欄へ貼り付けます。

ブラウザに成功と表示された時点で終わらず、元の端末が先へ進むことを確認してください。貼り付けが認識されない場合は、端末の貼り付けメニューや別の貼り付け操作を試します。公式文書は、標準入力を使う次のコマンドも案内しています。通常のシェルで実行し、表示される案内に従います。WSL2・SSH・コンテナーの公式手順

bash
claude auth login

認可URLやコードを同僚に転送して操作を代行してもらうのは避けてください。サポートへ送る記録にも、完全な認可URLや認証コードは含めません。

403は、ログインし直す前に認証方式と権限を見る

403 Forbidden だけでは、コードの期限切れ、アカウント停止、地域制限のどれかを断定できません。まずClaude Codeの対話画面で次を実行し、現在の認証情報を確認します。

text
/status

Pro/Maxで使う場合は、認可したアカウントに有効なサブスクリプションがあるかを確認します。ブラウザに別アカウントのセッションが残っている場合もあるため、普段Claudeを使っているアカウントと一致するかを見てください。

Console経由で使う場合は、対象組織の Settings → Members で、Claude CodeまたはDeveloperのロールがあるかを確認します。自分で確認・変更できなければ、組織の管理者へ依頼します。公式文書は、ログイン後の403について契約・ロールのほか、社内プロキシの干渉も確認事項に挙げています。ログイン後の403に関する公式案内

OAuthログインの流れと、403が出たときに確認する認証情報・アクセス権
OAuthログインの流れと、403が出たときに確認する認証情報・アクセス権

APIキーが残っていると、想定した契約で動かないことがある

以前APIキーを設定していた端末では、ブラウザでサブスクリプションにログインしても、その認証が実際のリクエストに使われるとは限りません。

  • 対話モードでは、承認済みの ANTHROPIC_API_KEY がサブスクリプションのOAuthより優先されます。
  • -p の非対話モードでは、ANTHROPIC_API_KEY があれば常に使われます。
  • ANTHROPIC_AUTH_TOKEN やプロバイダーの選択なども認証に影響します。CLAUDE_CODE_OAUTH_TOKEN は新しいセッションごとに読み込まれます。

これはすべての構成を網羅した優先順位表ではありません。ゲートウェイやプロファイルを利用している場合は、公式の認証優先順位も確認してください。

診断のために環境変数の値や設定ファイル全体を公開する必要はありません。まず上記の変数が設定されているかだけを調べ、意図せず残っていたものだけを修正します。シェルの起動設定、IDE、コンテナーなど、どこから渡されているかも確認し、Claude Codeを起動し直して /status を再確認します。

APIキーで動作したとしても、元のサブスクリプション認証が復旧した証明にはなりません。ConsoleのAPI利用へ切り替える場合は、別の認証・課金方法を選ぶ操作として扱ってください。

社内ネットワークではブラウザと端末を別々に確認する

ブラウザでClaudeを開けても、CLIに同じプロキシ設定や証明書が渡っているとは限りません。社内環境なら、Claude Codeを実行するプロセスのHTTP/HTTPSプロキシ設定と証明書を管理者に確認してもらいます。公式文書ではHTTP(S)プロキシに対応し、SOCKSは非対応とされています。社内CAを追加する場合は NODE_EXTRA_CA_CERTS が案内されています。証明書検証を無効にするのではなく、必要なCAを正しく設定してください。ネットワーク設定

日本は現在の対応国一覧に含まれます。ただし、対応国であることだけで、個々の契約や組織の利用権限まで確認できるわけではありません。日本語設定や表示言語から利用場所を判断することもできません。

アカウント停止が明示されている場合は、認証コードの再入力ではなく、アカウント停止後の異議申し立て手順へ進んでください。

500や、何度も期限切れになる場合の進め方

ブラウザの認可画面で500になった場合は、発生時刻を控え、Claudeの稼働状況で該当する時間帯と機能の障害情報を確認します。少し待った後に新しいログインを開始し、同じ箇所で再発するかを見ます。障害情報が出ていなくても、個別の認可処理の成功までは保証されません。

ログイン後の API Error: 500 は、API側の内部エラーとして扱います。ANTHROPIC_BASE_URL を変更している場合は、接続先がAnthropicではなくゲートウェイの可能性があります。実際の接続先の稼働情報を調べてから、短い依頼を再試行してください。この場面で認証情報を繰り返し消しても、API側の障害への対処にはなりません。APIの500エラー

一方、Not logged in やトークン期限切れが繰り返されるなら、対話画面の /login で認証を更新します。端末の日時が大きくずれていないかも確認してください。macOSでは、通常のシェルから次を実行するとキーチェーンの問題も診断できます。

bash
claude doctor

現在のClaude Codeは、キーチェーンへのOAuth保存が拒否された場合に平文の認証情報へ保存を切り替えることがあります。そのため、キーチェーンのエラーだけで「認証情報がまったく保存されていない」とは判断できません。認証ファイルを開いてトークンを探すより、診断結果とログイン状態を確認します。期限切れ・保存に関する公式案内

認証状態のリセットが必要な場合は、/logout の後でClaude Codeを閉じ、起動し直してログインします。ただし現在の /logout は、保存済みのMCPログインやプラグインの秘密情報も削除する場合があります。再設定が必要になる影響を確認してから実行してください。設定ディレクトリ ~/.claude 全体を削除する手順には進みません。ログインのリセット

復旧の確認と、解決しないときに残す情報

復旧は、ブラウザの成功画面だけでは判断できません。失敗していた同じ環境で、意図した認証情報が使われ、新しい依頼への応答が返ることを確認します。

対話モードなら /status を確認した後、ファイル操作の不要な短い依頼を送ります。たとえば「ファイルを変更せず、OKとだけ返してください」で十分です。-p やIDE、コンテナーだけで起きていた問題なら、その実行方法でも確認します。確認用の依頼にも、選択している契約の使用量やAPI料金が適用されます。

解決しない場合は、次の情報を一つにまとめると、認証と通信のどちらを調べるべきか伝わりやすくなります。

  • 発生日時とタイムゾーン、エラーの正確な文言。
  • claude --version の結果、OS、端末、WSL/SSH/コンテナーの有無。
  • 認可ページ、コード入力、ログイン後の依頼のうち、失敗する段階。
  • サブスクリプション、Console、外部プロバイダーのどれを使う意図かと、/status で確認した認証方式。
  • 認証・接続先に関係する環境変数の設定有無、プロキシの利用有無、試した操作と結果。

APIキー、トークン、認証コード、完全な認可URL、Cookie、個人情報は除いてください。ログ全体や環境変数一覧をそのまま貼る必要はありません。

アカウントへのログインが循環する、契約を認識しないなどの問題は、サインイン後の Get help からAnthropicサポートへ連絡します。インストールやCLIの不具合は、公式案内に従ってGitHubまたは /feedback を使います。解決しない場合の公式窓口