跳转到内容

401 Unauthorized: Incorrect API key provided(cc-switch 切换 Codex 后报错)

Quick fix

升级到 cc-switch 4.0.x;或手动清空 ~/.codex/auth.json 中残留的第三方 OPENAI_API_KEY 后重启 Codex,重新走 ChatGPT OAuth 登录。

报错原文
401 Unauthorized: Incorrect API key provided: PROXY_MA*AGED.

这一报错在本聚类中有两种触发路径。其一(#1238):cc-switch 开启代理之后被意外关闭,导致请求地址没有被正确回填,Codex/Claude Code 拿着占位或未生效的凭据去请求,返回 401 Incorrect API key provided: PROXY_MA*AGED;维护者建议重新打开一次 cc-switch 让其恢复正确,但有用户反馈重复操作并未生效。其二(#3566):在 cc-switch 3.16.1 中,当第三方供应商(如智谱 GLM)的 Key 被写入 ~/.codex/auth.json 的 OPENAI_API_KEY 后,切换回 OpenAI Official 预设时该 Key 未被清空,Codex 会把这个第三方 Key 发往 https://api.openai.com/v1/responses,造成凭据与 endpoint 错配,返回 401 Unauthorized: Incorrect API key provided。OpenAI Official 本应使用 requires_openai_auth = true 的 ChatGPT OAuth 登录,不需要 API Key。维护者确认 v4.0.0 重写了 Codex 的认证写入逻辑(第三方 Key 只写进 config.toml,切换时暂存/还原官方登录)并已修复。

  1. 临时绕过(#3566 报告者给出的 workaround):切换回 OpenAI Official 后,手动打开 ~/.codex/auth.json,把残留的第三方 OPENAI_API_KEY 清空(或备份后删除),然后重启 Codex,使其回退到 ChatGPT OAuth 登录。

    ~/.codex/auth.json
    {
    "auth_mode": "chatgpt",
    "OPENAI_API_KEY": null,
    "tokens": {
    "id_token": "xxx",
    "access_token": "xxx",
    "refresh_token": "xxx",
    "account_id": "xxx"
    }
    }
  2. 彻底修复:将 cc-switch 升级到 4.0.x。v4 重写了 Codex 的认证写入:第三方供应商的 Key 只写入 config.toml 的 [model_providers.custom](experimental_bearer_token),不再写入 ~/.codex/auth.json;切到第三方时官方登录会被暂存,切回 OpenAI Official 时再还原,残留的第三方旧 Key 会被清掉。

  3. 如果报错来自代理场景(错误中 key 显示为 PROXY_MA*AGED 占位):重新打开一次 cc-switch,让被意外关闭时代理未回填的请求地址恢复正确。注意:#1238 中有用户反馈重复该流程没有生效,此时建议改用第 1 步手动检查配置文件。

ToolCodex(缺陷在 cc-switch 的配置写入/代理回填逻辑)
Version3.16.1 确认受影响;4.0.0 已修复
PlatformsWindows
这个回填的请求地址是什么?我重复了流程但没有生效。
issue 中没有给出具体地址,维护者只说明重新打开一次 cc-switch 即可恢复。若重开无效,可检查 ~/.codex/auth.json 是否残留第三方渠道的 OPENAI_API_KEY,手动清空后重启 Codex。
Windows 版 Codex App 也会受影响吗?
会。有用户补充确认:在 cc-switch 中启用自定义 Codex 渠道后切回 OpenAI Official,auth.json 仍残留自定义渠道的 API Key,Windows 版 Codex App 启动后会继续用该 Key 请求 OpenAI API 而不是使用官方登录认证。
升级到 4.0.x 之后还能复现怎么办?
维护者表示可回复原 issue,附上复现步骤和打码后的 auth.json 结构,官方会重新打开排查。

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。