# 解决 401 INVALID_API_KEY 和 API_KEY_REQUIRED

> BigModel.io 返回 401 INVALID_API_KEY、API_KEY_REQUIRED 或 API_KEY_DISABLED 的原因，OpenAI 和 Anthropic 客户端如何正确发送 Key，以及如何确认实际使用的是哪个 Key。

网页版: https://bigmodel.io/zh-cn/docs/error-invalid-api-key · 更新于 2026-10-27

请求到达了 BigModel.io，但 Key 缺失、填错或已被停用：

```json
{ "code": "INVALID_API_KEY", "message": "Invalid API key", "error": { "message": "Invalid API key", "type": "authentication_error", "code": "INVALID_API_KEY" } }
```

## 这是什么意思

| `code` | 原因 |
|---|---|
| `API_KEY_REQUIRED` | 请求里没有 Key |
| `INVALID_API_KEY` | 不是 BigModel.io 的 Key，或复制不完整 |
| `API_KEY_DISABLED` | Key 存在但已停用 |
| `USER_INACTIVE` | Key 所属账户未激活 |

其他平台的 Key（包括 bigmodel.cn 的 Key）不能在 BigModel.io 使用。

## 怎么解决

1. 从 [API Keys](https://bigmodel.io/keys) 重新复制 Key。复制按钮任何时候都会复制完整的 Key。
2. 放在请求头里发送，不要放进 URL：

```bash
curl https://bigmodel.io/v1/models -H "Authorization: Bearer $BIGMODEL_API_KEY"
```

Anthropic 类客户端也可以用 `x-api-key: $BIGMODEL_API_KEY`。用 `?key=` 发送的 Key 会返回 400 `api_key_in_query_deprecated`。

3. 确认工具实际用的是哪个 Key。旧 Key 经常留在环境变量或配置文件里。只打印开头几个字符，和控制台对比：

```bash
echo "${BIGMODEL_API_KEY:0:8}"
```

4. 如果控制台显示 Key 已停用，启用它或新建一个。

## 常见问题排查

**Claude Code 提示认证冲突。** 同时设置了 `ANTHROPIC_API_KEY` 和 `ANTHROPIC_AUTH_TOKEN`。保留 `ANTHROPIC_AUTH_TOKEN`，执行 `unset ANTHROPIC_API_KEY`。见 [Claude Code](https://bigmodel.io/zh-cn/docs/claude-code)。

**在网页里调用。** 不要这样做：打开页面的任何人都能看到 Key。请从服务端调用 API。

**怀疑 Key 泄露。** 立即停用并新建一个。见[认证](https://bigmodel.io/zh-cn/docs/authentication)。

## 相关文档

- [认证](https://bigmodel.io/zh-cn/docs/authentication)
- [快速开始](https://bigmodel.io/zh-cn/docs/quickstart)
- [错误码与响应](https://bigmodel.io/zh-cn/docs/errors)
