认证 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 多半是上游账号池限流、冷却或额度耗尽,先让服务商换号、换线路或换模型。 中转站报错 API Error 502 origin_bad_gateway 排查步骤 报错:API Error 502、Error 502: Bad gateway、error_name: origin_bad_gateway、cloudflare_error: true。先看中转站状态页;如果目标模型或线路全红,停止反复改 Key 和重试,直接联系在线客服或站长确认号池与恢复时间。 Codex 提示:此聊天已被标记为可能存在网络安全风险 Codex 提示“此聊天已被标记为可能存在网络安全风险”时,先不要把它当作中转站故障或封号。它更像是系统级网络安全风险标记;普通开发误触发时,优先新开会话、缩小上下文、重新表述任务。 Codex: gpt-5.6-sol model is not supported with a ChatGPT account 报错:The 'gpt-5.6-sol' model is not supported when using Codex with a ChatGPT account. 先把它当作 ChatGPT 账号权限、订阅层级或灰度入口问题处理;可先切到 Terra/Luna,或改用 API Key/provider 配置。 Codex 找不到 MCP 工具:tool does not exist in this session's available toolset Codex 提示 MCP tool does not exist in this session's available toolset 时,先核对服务和工具发现状态,再用全新会话、codex doctor、官方 provider 与版本 A/B 判断是缓存、客户端回归还是自定义 provider 没有暴露工具。 Codex MCP 报错 Unexpected response type Codex MCP 报 Unexpected response type 时,先确认错误发生在 tools/call 返回之后,再用 MCP Inspector、直接客户端或旧版 Codex 做对照;服务端可临时简化返回内容,普通用户则应保留版本和工具名等待兼容修复。 Codex:当前环境没有提供可用的终端或文件编辑工具怎么解决 先 fork 当前对话,在新任务中回复“继续”让 Codex 重新执行。如果仍然没有工具,用 GPT-5.5 和手动 `!命令` 做一次对照测试。 Codex 报错 stream disconnected before completion Codex 报 stream disconnected before completion: error sending request for url 时,先不要急着换账号或改模型。它通常是终端网络、代理继承、中转站 Responses 兼容性或上游 SSE 流断开的信号。 Codex 报错 stream disconnected before completion: Upstream request failed Codex 报 stream disconnected before completion: Upstream request failed 时,不要只凭浏览器能上网就排除网络,也不要只凭 curl hello 能通就认定中转站没问题。先看 URL、upstream_error、response.failed、request id 和是否使用自定义 provider,再按官方链路、本地代理和中转站链路分开排查。 Codex 报错 Error creating task: Timeout / Unable to start task Codex 报 Error creating task: Timeout、Task creation timeout 或 Unable to start task 时,先测试已有任务,再临时禁用无法连接或路径失效的 MCP 服务并完全重启桌面端。

相关教程

相关主题

常见问题

常见问题

Error 401 和 Error 403 是一回事吗?

不是。401 通常表示请求没有通过认证;403 通常表示已经认证,但账号没有权限执行这个操作。

为什么同一个 Key 在一个工具能用,在 Codex 或 Claude Code 里失败?

不同工具可能读取不同环境变量、配置文件、provider profile 或认证 header。要检查失败工具实际加载的 Key 和 Base URL。

遇到 401 要立刻换中转站吗?

不要先换。401 最常见是 Key、header 或 profile 不匹配。只有确认当前 provider 禁用了 Key 或不支持需要的认证流程后,再考虑切换。