Codex 报 401 Unauthorized 怎么办?先别乱换 Key,按这 3 条路径排查

Codex 报 401 时,不要先乱换 Key。本文按 ChatGPT 登录、OpenAI API Key 和第三方 Provider 三条路径拆解原因,并给出逐项排查方法。

22 分钟阅读
Codex 报 401 Unauthorized 怎么办?先别乱换 Key,按这 3 条路径排查

Codex 报 401 时,最容易做错的一件事就是“把能删的凭证都删了,再换一个 Key 试试”。

有时这样碰巧能好,但更多时候你只是把原本一个问题变成了三个:到底是登录过期、API Key 错、还是第三方 Provider 配置错,最后谁也说不清。

第一步:先确认你现在怎么登录

如果用的是 Codex CLI,先跑:

codex login status

先看清楚当前到底是 ChatGPT 登录,还是 API Key。

如果你最近在 CLI 和 VS Code 之间来回切,也要注意:Codex CLI 和 IDE 扩展会复用本地登录缓存。某一边退出登录,另一边下次启动也可能需要重新登录。

情况一:ChatGPT 登录

ChatGPT 登录通常通过浏览器完成:

codex login

如果突然出现 401,先按正常登录流程重新认证,不建议直接手改 auth.json。

同时看一下是不是只有一个客户端出问题。例如 CLI 正常、IDE 扩展失败,那就先检查扩展版本和当前登录状态,而不是先怀疑账号整体失效。

情况二:OpenAI API Key

官方现在支持直接用 API Key 登录 Codex。本地 CLI 可以这样做:

printenv OPENAI_API_KEY | codex login --with-api-key

Windows PowerShell 也可以把环境变量通过标准输入传给 Codex,例如:

$env:OPENAI_API_KEY | codex login --with-api-key

如果环境变量为空,先停下来确认 Key 是否真的已经写入当前终端会话,不要把空值误当成“Codex 登录坏了”。

OpenAI 官方列出的 401 常见原因包括:

  • Key 本身不正确或已经被撤销;
  • Key 属于错误的项目或组织;
  • 当前账户不是对应组织成员;
  • 项目或组织启用了 IP allowlist,而当前 IP 不在允许范围;

所以别只检查“Key 有没有复制完整”,还要看它属于哪个项目、组织和权限范围。

情况三:第三方 Provider

如果你在 config.toml 里配置了自定义 model_provider 和 base_url,401 就不能直接套用 OpenAI 官方解释。

这时我会分开看四个东西:

  1. Provider 的 Base URL;
  2. 当前 Key 是否属于这个 Provider;
  3. Provider 采用什么认证方式;
  4. 模型 ID 是否能在该 Provider 的当前模型列表里找到。

如果你用 AI Code With,可以把它作为一个具体排查例子。当前公开 Codex 配置文档给出的 Codex 专用地址是:

https://api.aicodewith.ai/chatgpt/v1

对应 Provider 仍使用 Responses 协议。配置参考:

model_provider = "aicodewith"[model_providers.aicodewith]name = "aicodewith"base_url = "https://api.aicodewith.ai/chatgpt/v1"wire_api = "responses"requires_openai_auth = true

这里最常见的坑不是“AI Code With 一定坏了”,而是 Key、URL、模型和客户端配置同时被改过。

所以一次只改一个变量。

最小验证怎么做

不要直接跑一个十分钟的大任务。用一个最小请求就够:

只回复:连接测试成功

记录:

  • 客户端版本;
  • 登录方式;
  • Provider;
  • 模型 ID;
  • 改了哪一个变量;
  • 返回的完整错误类型。

如果 401 变成了 404、429 或别的错误,只能说明“服务返回了不同结果”,不要直接写成“认证已经百分百通过”。第三方网关可能有自己的错误映射。

如果你用 AI Code With,这一段怎么查

如果你的请求确实走 AI Code With,就直接按“Key → Base URL → 模型 ID → 最小请求”这条链路检查,不需要额外换一套排错思路。

可以直接给这两个入口:

  • Codex 配置说明:https://docs.aicodewith.ai/zh/docs/codex-app
  • 模型列表:https://aicodewith.com/zh?s=t4p7x9

余额问题通常更接近 429 或平台侧余额提示,不是 401 的第一排查项。先把认证链路跑通,再看用量和计费,能少走很多弯路。

还是失败怎么办

整理一个脱敏诊断包再求助:

  • Codex 版本;
  • codex login status 的结果;
  • 是否自定义 Provider;
  • 错误全文;
  • 发生时间;
  • 最近一次配置变更。

Key、Cookie、Authorization Header、组织 ID、余额和个人信息都不要截图公开。

参考资料

  • OpenAI Codex Authentication — https://developers.openai.com/codex/auth
  • OpenAI API Error Codes — https://developers.openai.com/api/docs/guides/error-codes
  • AI Code With Codex 配置 — https://aicodewith.com/zh?s=t4p7x9