認證 401 api proxy

Error 401 Unauthorized

Error 401 表示 API 請求沒有通過認證。在 AI API 中轉場景裡,它通常指向 API Key 缺失、token 錯誤、Key 被撤銷、Authorization header 格式不對,或 provider 配置把請求發到了不匹配的接口。

錯誤摘要

401 是認證失敗訊號。先檢查目前載入的是哪一個 Key、請求打到哪個 Base URL、header 格式是否正確,以及這個 Key 是否仍然在對應 provider 中有效。

#error 401 #401 unauthorized #openai api 401 #claude code 401 #codex 401 #invalid api key

這個錯誤是什麼意思

Error 401 表示請求到達了 API endpoint,但服務端無法認證這個請求。

在 AI API 中轉場景裡,它通常說明 API Key、token、header 格式或 provider profile 與目前 Base URL 不匹配。

常見原因

  1. API Key 缺失、為空、複製時帶了多餘空格、已撤銷、已過期,或屬於另一個 provider 帳號。
  2. Authorization header 格式錯誤,例如 OpenAI 相容接口缺少 Bearer 前綴,或 Anthropic 相容接口使用了錯誤 header。
  3. Base URL 指向的 provider 與 API Key 不匹配,例如把 Anthropic Key 用在 OpenAI 相容中轉配置裡。
  4. Claude Code、Codex、Cursor、shell 環境變數或 config.toml 讀取的是舊 Key,而不是你剛剛修改的新 Key。
  5. 中轉站帳號被停用、未啟用、沒有目前模型權限,或需要額外的 project、organization、workspace 設置。

排查和修復步驟

  1. 先查看目前工具實際讀取的環境變數和配置文件,重點檢查 OPENAI_API_KEYANTHROPIC_API_KEYANTHROPIC_AUTH_TOKEN 以及 provider 自訂 Key。
  2. 確認 Base URL 和 API Key 來自同一個 provider profile。不要混用官方 OpenAI、Anthropic 和第三方中轉 Key,除非服務商明確說明支持這種格式。
  3. 檢查請求 header 格式。OpenAI 相容接口通常需要 Authorization: Bearer YOUR_KEY,Anthropic 相容接口可能使用服務商指定的認證 header。
  4. 在服務商控制台重新建立一個新 Key,用最小請求先測通,再去修改複雜的 Claude Code、Codex、Cursor 或 CC Switch 配置。
  5. 如果同一個 Key 在 curl 裡能用、在 CLI 裡失敗,先重啟終端或應用,再檢查是否有另一個配置文件覆蓋了預期 Key。

API 中轉用戶要重點看什麼

用失敗工具實際使用的 Base URL、API Key 和模型名測試。另一個 Key 或另一個 endpoint 能跑通,不能證明目前 profile 沒問題。

如果新 Key 在 curl 裡正常、但 CLI 仍然失敗,通常是 CLI 讀取了舊環境變數、舊 profile 或另一個配置文件。

什麼時候該換 Provider

只有在確認目前 Key 被停用、provider 不支持你需要的認證流程,或目前帳號沒有模型權限時,才考慮換 provider。大多數 401 都是本地配置問題。

相關錯誤

Claude Code / Codex 503 No available accounts:中轉站帳號池不可用排查 先不要盲目換 Key。這個錯誤通常說明帳號池、供應商、分組或模型路由暫時不可用。先測最小請求、確認模型和分組,再判斷是等待恢復、降低上下文,還是換 provider。 Codex: Selected model is at capacity. 模型容量已滿排查 報錯:Selected model is at capacity. Please try a different model. 先把它當作模型級容量、Admission 或串流中斷問題處理。它可能出現在官方 ChatGPT 登錄態 Codex CLI,也可能來自中轉站帳號池或 Sub2API 上游 overloaded 透傳。 Codex 提示:你的對話中有多個可能的網路安全風險的標記 提示:你的對話中有多個可能的網路安全風險的標記。先把它當作 OpenAI/Codex 安全路由觸發,而不是直接判斷帳號或中轉站故障;再檢查是否使用了中轉 API、敏感關鍵詞、超長程式碼上下文或不透明模型路由。 Error 429 Too Many Requests:AI API 中轉站限流排查 報錯:exceeded retry limit, last status: 429 Too Many Requests, request id: <request-id>。AI 中轉站裡連續 429 多半是上游帳號池限流、冷卻或額度耗盡,先讓服務商換號、換線路或換模型。 Codex 提示:此聊天已被標記為可能存在網路安全風險 Codex 提示「此聊天已被標記為可能存在網路安全風險」時,先不要把它當作中轉站故障或封號。它更像是系統級網路安全風險標記;普通開發誤觸發時,優先新開會話、縮小上下文、重新表述任務。 Codex 報錯 stream disconnected before completion: Upstream request failed Codex 報 stream disconnected before completion: Upstream request failed 時,先不要只看普通 curl 或 hello 請求。這類錯誤更常出現在 Codex 的 Responses 串流、SSE / WebSocket 長連線、中轉站上游或客戶端版本變化上。

相關教程

相關主題

常見問題

常見問題

Error 401 和 Error 403 是一回事嗎?

不是。401 通常表示請求沒有通過認證;403 通常表示已經認證,但帳號沒有權限執行這個操作。

為什麼同一個 Key 在一個工具能用,在 Codex 或 Claude Code 裡失敗?

不同工具可能讀取不同環境變數、配置文件、provider profile 或認證 header。要檢查失敗工具實際載入的 Key 和 Base URL。

遇到 401 要立刻換中轉站嗎?

不要先換。401 最常見是 Key、header 或 profile 不匹配。只有確認目前 provider 停用了 Key 或不支持需要的認證流程後,再考慮切換。