ホーム チュートリアル カテゴリ Skills サイトについて
ZH EN JA KO
トラブルシューティング

OpenClaw認証エラーとAPIキー無効化のトラブルシューティング

· 10 分で読了

問題の説明

OpenClaw の起動時や会話中に、API 認証に関連するエラーが発生する場合があります。

[openclaw:gateway] Error: 401 Unauthorized - Invalid API key provided.
[openclaw:gateway] Provider: openai, Model: gpt-4o

または Anthropic の認証エラー:

[openclaw:gateway] Error: 401 - {"type":"error","error":{"type":"authentication_error","message":"invalid x-api-key"}}

Google Gemini の認証失敗:

[openclaw:gateway] Error: 403 - API key not valid. Please pass a valid API key.

認証エラーは、OpenClaw が AI モデルプロバイダーの本人確認を通過できず、リクエストが拒否されたことを意味します。通常は API キーの設定ミス、有効期限切れ、または取り消しが原因です。

診断手順

ステップ1:設定ファイルのキーを確認する

現在の設定における API キー設定を確認します(キーは一部の文字のみ表示されます)。

openclaw config show --unmask-partial

出力例:

providers.openai.apiKey: sk-proj-...Xk3a
providers.anthropic.apiKey: sk-ant-...9f2b

表示されるキーのプレフィックスとサフィックスが、プロバイダーのコンソールで確認できるものと一致していることを確認してください。

ステップ2:API キーを直接検証する

curl を使用して各プロバイダーの API キーが有効かどうかを直接テストします。

OpenAI:

curl https://api.openai.com/v1/models \
  -H "Authorization: Bearer sk-your-key-here"

Anthropic:

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: sk-ant-your-key-here" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-4-20250514","max_tokens":10,"messages":[{"role":"user","content":"Hi"}]}'

Google Gemini:

curl "https://generativelanguage.googleapis.com/v1/models?key=YOUR_API_KEY"

401 または 403 エラーが返された場合、キー自体が無効です。

ステップ3:環境変数のオーバーライドを確認する

OpenClaw は環境変数を通じた API キーの設定をサポートしており、環境変数は設定ファイルよりも優先されます。環境変数によるオーバーライドの有無を確認します。

env | grep -i "OPENCLAW\|OPENAI\|ANTHROPIC\|GEMINI"

環境変数に間違ったキーが設定されていると、設定ファイルの正しいキーを上書きしてしまいます。

解決策

問題1:API キーの誤りまたは不正な形式

プロバイダーごとに API キーの形式は異なります。

  • OpenAIsk-proj- または sk- で始まる
  • Anthropicsk-ant-api03- で始まる
  • Google Gemini:通常39文字の英数字文字列

設定ファイルに余計なスペース、改行、引用符の問題がないか確認します。

cat -A ~/.openclaw/openclaw.json | grep apiKey

行末に ^M(Windows の改行コード)や余計なスペースがある場合は、クリーンアップが必要です。

API キーの更新推奨方法:

openclaw config set providers.openai.apiKey "sk-proj-your-new-key"
openclaw config set providers.anthropic.apiKey "sk-ant-api03-your-new-key"

openclaw config set コマンドを使用することで、手動で JSON を編集する際のフォーマットエラーを避けられます。

問題2:API キーの有効期限切れまたは取り消し

API キーは以下の理由で無効になる可能性があります。

  • プロバイダーのコンソールで手動で古いキーを取り消した
  • キーが設定された有効期限に達した
  • プロバイダーがセキュリティ上の理由で強制的にキーをローテーションした
  • アカウントの残高不足によりキーが一時停止された

解決方法は、対応するプロバイダーのコンソールにログインして新しい API キーを生成することです。

新しいキーを生成したら、OpenClaw の設定を更新してください。

問題3:マルチプロバイダーのキーローテーション設定

単一のキー障害によるサービス中断を避けるために、キーのローテーションと自動検証を設定します。

{
  "providers": {
    "openai": {
      "apiKeys": [
        "sk-proj-primary-key",
        "sk-proj-backup-key"
      ],
      "keyValidation": {
        "enabled": true,
        "intervalMinutes": 60,
        "removeInvalid": true
      }
    }
  }
}

keyValidation 機能は定期的に各キーの有効性を確認します。キーの無効化が検出された場合、自動的にローテーションリストから除外し、ログに警告を出力します。

問題4:環境変数を使用した安全なキー管理

API キーを設定ファイルに平文で書き込むことを避けるため、環境変数の使用を推奨します。

export OPENCLAW_OPENAI_API_KEY="sk-proj-your-key"
export OPENCLAW_ANTHROPIC_API_KEY="sk-ant-api03-your-key"

設定ファイルで環境変数を参照します。

{
  "providers": {
    "openai": {
      "apiKey": "${OPENCLAW_OPENAI_API_KEY}"
    },
    "anthropic": {
      "apiKey": "${OPENCLAW_ANTHROPIC_API_KEY}"
    }
  }
}

systemd で OpenClaw サービスを管理している場合は、service ファイルで環境変数を設定します。

[Service]
EnvironmentFile=/etc/openclaw/env
ExecStart=/usr/local/bin/openclaw start

修正の検証

キーを更新した後、OpenClaw を再起動して検証します。

openclaw restart
openclaw doctor

openclaw doctor は設定されたすべてのプロバイダーに対して API 接続テストを実行し、各プロバイダーの認証状態を表示します。すべてのプロバイダーがグリーンのステータスを示していれば、認証問題は解決済みです。

手動でテストリクエストをトリガーすることもできます。

openclaw test-message --channel telegram --text "テストメッセージ"

ログを確認して、メッセージが正常に処理されたことを確認してください。

OpenClawは無料のオープンソースAIアシスタント。WhatsApp、Telegram、Discordなど多数のプラットフォームに対応