ガイド一覧へ戻る
トラブルシューティング·2026年7月17日·読了6分

Claude API 401 authentication_error / invalid x-api-key — すべての原因

Claude の 401 は常に5つのいずれかです。誤ったヘッダー、エンドポイントに対して誤った種類のキー、不正な環境変数、無効化されたキー、またはそのキーに対して誤った base URL です。以下の診断を実行すれば、1分未満で原因を特定できます。

最終確認日:。

Claude の 401 は常に5つのいずれかです。誤ったヘッダー、エンドポイントに対して誤った種類のキー、不正な環境変数、無効化されたキー、またはそのキーに対して誤った base URL です。以下の診断を実行すれば、1分未満で原因を特定できます。

エラー

応答(HTTP 401)
{
  "type": "error",
  "error": {
    "type": "authentication_error",
    "message": "invalid x-api-key"
  }
}

原因と対処法の概要

原因対処法
エンドポイントに対するヘッダーが誤っているAnthropic のネイティブ API は x-api-key + anthropic-version を要求します。OpenAI 互換エンドポイントは Authorization: Bearer を要求します。
キーとエンドポイントの不一致sk-ant-… キーは api.anthropic.com に対してのみ機能し、ゲートウェイキー(例:sk-kn-…)はそれぞれのゲートウェイ URL に対してのみ機能します。
環境変数に空白や引用符が混入している引用符や改行を除いて再エクスポートし、len(key) を出力してコピー&ペーストによる末尾の \n を確認します。
キーが無効化されている、またはワークスペースが無効になっているコンソールで新しいキーを作成し、シークレットマネージャーでローテーションします。

生の curl で再現する(SDK を切り離す)

curl は動作するのにアプリが動作しない場合、問題はキーではなく環境変数の受け渡しにあります。

diagnose.sh
# Native Anthropic wire (works on api.anthropic.com and Kunavo /v1/messages)
curl -s https://api.kunavo.com/v1/messages \
  -H "x-api-key: $KUNAVO_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-5","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'

# OpenAI-compatible wire (Bearer header instead)
curl -s https://api.kunavo.com/v1/chat/completions \
  -H "Authorization: Bearer $KUNAVO_API_KEY" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-5","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'

# Check the key isn't carrying whitespace
python3 -c "import os; k=os.environ['KUNAVO_API_KEY']; print(repr(k[:12]), len(k))"

キーのプレフィックスを base URL と一致させる

sk-ant-… → api.anthropic.com。sk-kn-… → api.kunavo.com/v1。ゲートウェイキーを Anthropic に送っても、その逆でも、必ず 401 になります。エラーメッセージには「wrong host」とは表示されないため、この原因は見落とされがちです。

キーがリポジトリやログに触れたことがある場合はローテーションする

キーが正しいのに拒否され続ける場合は、無効化されたものと考えてください(自動スキャナーは漏えいしたキーをすぐに無効化します)。新しいキーを作成し、コミットされる .env ファイルではなくシークレットマネージャーに保存します。

Kunavo経由で呼び出している場合

Kunavoキー(sk-kn-…)は、すべてのエンドポイントでいずれかのヘッダーを使って認証します。OpenAI SDKが送信するAuthorization: Bearer、またはAnthropic SDKが使用するx-api-keyです。使用するSDKに関係なく、変更するのはベースURLだけです。キーはダッシュボードで即座に作成・失効できます。 キーの認証が完了すると、請求される料金は Anthropic Claude API料金表.

よくある質問

curlではキーが機能するのに、アプリでは機能しないのはなぜですか?

ほとんどの場合、原因は環境変数の受け渡しです。コピー&ペーストで末尾に改行が入っている、値に引用符が含まれている、変数がプロセスにエクスポートされていない、または本番環境で別の環境変数ファイルが読み込まれている、といった問題です。失敗しているプロセス内でキーのreprと長さを出力してください。

Anthropic ConsoleのキーをOpenAI互換ゲートウェイで使えますか?

いいえ。各サービスは自サービスのキーのみを認証します。sk-antキーはapi.anthropic.comに属し、ゲートウェイキーはゲートウェイに属します。呼び出しているベースURLに対応するキーを取得してください。

エラーの詳しい意味はエラーリファレンスをご覧ください。キーは新規登録と認証ガイドから1分で取得できます。