Skip to content

401 Invalid Token / Auth Rejected

错误样例

API Error: 401 Invalid token
bad response status code 401, body: {"error":{"code":"","message":"Invalid token","type":"new_api_error"}}

CC Switch 弹窗:

Shuro 检查被拒: Auth rejected (401)

根因

概率原因
60%API Key 拼错(最常见复制少了 s / 多了空格)
25%API Key 失效或被撤销(手动删除 / 套餐过期 / 安全自动撤销)
10%CC Switch 启动检查误报(实际能用)
5%API Key 在错误的环境变量名

排查 4 步

1. 核对 Key 的前 6 位

Shuro 后台 → 「令牌」 → 看你那把 key 的前缀。

你看到的正确格式
sk-XxXxXx...
k-XxXxXx...(缺 s❌ 复制少了字符
空白 / 半个 key❌ 粘贴出错

2. 环境变量是否正确

bash
echo "$ANTHROPIC_AUTH_TOKEN"
fish
echo $ANTHROPIC_AUTH_TOKEN
powershell
echo $env:ANTHROPIC_AUTH_TOKEN

应输出完整 key。空输出 = 没设上,回去检查 Claude Code 配置

3. curl 直接验证

bash
curl -sS -X POST 'https://shuro.vip/v1/messages' \
  -H 'content-type: application/json' \
  -H 'anthropic-version: 2023-06-01' \
  -H 'x-api-key: <您的完整 key>' \
  -d '{"model":"claude-haiku-4-5-20251001","max_tokens":10,"messages":[{"role":"user","content":"hi"}]}'
返回含义
200 + Hi 回复key 有效,问题在客户端配置
401 + Invalid tokenkey 真的无效,去后台重新生成
503 / 502不是 key 问题,看 503 / 502

4. 重新生成 Key

如确认失效:

  1. 控制台 → 「令牌」
  2. 找到这把 → 「删除」
  3. 「添加新令牌」 → 复制
  4. 更新到你的 settings.json 或环境变量

CC Switch 启动检查 401 误报

CC Switch 启动时会做健康检查,发的请求 payload 过于简化,Shuro 这种 new-api 网关识别失败返 401。

CC Switch 弹窗本身就有提示:

⚠️ 检查失败不代表实际不可用。

忽略即可,实际使用 claude 时会发完整的请求,能正常工作。

如果想关掉检查:CC Switch → 设置 → 关闭「启动时健康检查」。

详见 CC Switch 误报章节

多 Provider 切换时混淆 Key

常见踩坑:你给 Codex CLI 配的 key 复用到 Claude Code,结果 401。

客户端环境变量名
Claude CodeANTHROPIC_AUTH_TOKENANTHROPIC_API_KEY
Codex CLIOPENAI_API_KEY(或 auth.json
OpenAI Python SDKOPENAI_API_KEY

如果一台机器上同时跑两个客户端,确保两个环境变量都设了(即使是同一把 key)。

还不行?

  • 向平台反馈核对 key 状态(TODO/VERIFY:Shuro 反馈渠道待确认)
  • FAQ

内容采用 CC BY-NC-ND 4.0 协议 · 禁止商业使用 / 禁止改编 / 禁止训练 AI 模型