在OpenClaw调用模型接口时,如果出现 API 401、401 Unauthorized、Unauthorized request、Invalid API Key、Authentication failed 等错误,说明当前请求没有通过身份验证。该错误通常与API Key错误、Token未配置、Provider不匹配、Base URL错误、Key权限不足、Key格式错误、环境变量未加载、Docker未传递变量、模型绑定错误、代理问题、时间不同步等因素有关。必须逐项检查API配置、模型配置、Provider设置和环境变量,才能彻底解决OpenClaw API 401未授权问题。
一、确认API Key是否正确
401错误最常见原因是API Key错误。
检查:
- Key是否完整
- Key是否复制错误
- Key是否包含空格
- Key是否已过期
示例正确:
sk-xxxxxxxxxxxxxxxx
错误:
sk-xxxx 空格
xxxx
sk-
进入:
重新填写Key。
二、确认Provider与API Key匹配
如果Provider错误,也会返回401。
错误:
model = gpt-4o
provider = anthropic
但Key是OpenAI。
正确:
provider = openai
规则:
- openai → sk-
- anthropic → sk-ant
- gemini → AIza
- deepseek → sk-
- ollama → 不需要Key
三、检查API Base URL
如果URL错误,也会返回401。
正确:
https://api.openai.com/v1
错误:
https://api.openai.com
错误:
https://api.anthropic.com/v1
但用OpenAI Key。
检查:
- Settings
- Provider
- Base URL
四、检查Docker环境变量
Docker部署必须传入Key。
检查:
docker exec -it openclaw env
确认存在:
OPENAI_API_KEY
如果没有:
environment:
- OPENAI_API_KEY=sk-xxxx
重启:
docker compose up -d
五、检查.env文件
很多部署使用.env。
OPENAI_API_KEY=sk-xxxx
ANTHROPIC_API_KEY=xxx
修改后必须重启。
六、检查模型绑定的Key来源
OpenClaw模型可以绑定不同Key。
进入:
检查:
如果未绑定,会401。
七、检查Alias是否指向错误模型
Alias错误会调用错误Provider。
示例:
fast -> claude
但没有Anthropic Key。
解决:
fast -> gpt-4o
八、检查Key权限
部分Key没有权限调用模型。
例如:
- 没有GPT4权限
- 没有Vision权限
- 没有Claude权限
测试:
curl https://api.openai.com/v1/models
如果失败,Key无效。
九、检查多Provider冲突
同时配置多个Provider时容易401。
示例:
模型必须指定Provider。
provider=openai
十、检查代理或网络
部分401其实是网络问题。
测试:
curl https://api.openai.com
如果失败:
十一、检查时间不同步
服务器时间错误可能导致认证失败。
date
同步:
ntpdate pool.ntp.org
十二、检查本地模型误用Key
本地模型不需要Key。
错误:
provider=openai
正确:
provider=ollama
十三、检查Fallback模型
Fallback调用错误Key。
fallback = claude
但没有Key。
十四、检查数据库缓存
sqlite3 data.db
select * from api_keys;
删除错误Key。
十五、检查版本兼容
旧版本可能认证失败。
docker pull openclaw/openclaw:latest
重启:
docker compose up -d
十六、推荐标准配置
OPENAI_API_KEY=sk-xxxx
API_BASE_URL=https://api.openai.com/v1
模型:
gpt-4o-mini
provider=openai
Alias:
fast
smart
使用正确Key、正确Provider、正确Base URL、正确Alias,可以彻底解决OpenClaw API 401 未授权错误。 |