401错误表明身份验证失败,需依次检查:一、API Key是否正确配置;二、Authorization请求头是否完整传递;三、Key是否具备对应接口权限;四、环境变量中是否存在隐式截断;五、若启用签名认证,需验证时间同步与签名时效性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您在调用 Minimax API 时收到 401 Unauthorized 错误,说明请求未通过身份验证,服务器拒绝处理该请求。以下是排除此问题的具体步骤:
一、检查 API Key 是否正确配置
Minimax API 要求在请求头中携带有效的 Authorization 字段,其值为 Bearer 后接正确的 API Key。若 Key 缺失、拼写错误或被意外截断,将直接触发 401 响应。
1、登录 Minimax 官方控制台,进入「API 密钥管理」页面。
2、确认当前使用的 API Key 处于「启用」状态,且未过期。
3、复制完整 Key 值(注意:Key 通常以 sk- 开头,共 64 位字符,不含空格或换行)。
4、检查代码中 Authorization 头的构造方式,确保格式为 Bearer sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx。
二、验证请求头中 Authorization 字段是否完整传递
部分 HTTP 客户端或代理可能过滤、覆盖或未正确设置 Authorization 请求头,导致服务端无法读取凭证。
1、使用 curl 命令手动测试,绕过应用层封装:
curl -X POST "https://api.minimax.chat/v1/chat/completions" \
-H "Authorization: Bearer sk-..." \
-H "Content-Type: application/json" \
-d '{"model": "abab6.5-chat", "messages": [{"role": "user", "content": "hello"}]}'
2、在代码中打印实际发出的请求头(非预设变量),确认 Authorization 字段存在且值非空。
3、检查是否误将 Key 放入 body 或 query 参数中——Minimax 仅接受其位于 Authorization 请求头 中。
三、确认所用 API Key 具备对应接口调用权限
Minimax 控制台支持按 Key 粒度分配权限范围,若 Key 仅授权访问 v1/llm/chat 接口,则调用 v1/chat/completions 将返回 401。
1、在控制台中定位该 API Key 的「权限策略」设置项。
2、核对已勾选的服务路径是否包含当前请求的完整 endpoint,例如 /v1/chat/completions 或 /v1/llm/chat。
3、若使用的是子账号生成的 Key,需由主账号确认该子账号已被授予对应 API 服务的调用权限。
四、排查环境变量或配置文件中的隐式截断
某些开发环境(如 VS Code 终端、Docker env 文件、.env 加载器)会对末尾空格、不可见 Unicode 字符或换行符敏感,导致 Key 实际传入时被截短或污染。
1、在代码中打印 API Key 长度:len(os.getenv("MINIMAX_API_KEY")),确认是否为 64。
2、将 Key 值粘贴至十六进制编辑器(如 onlinehexeditor.com),检查是否存在 U+200B(零宽空格) 或 U+000A(换行) 等隐藏字符。
3、改用硬编码临时测试(仅限本地调试),排除配置加载逻辑干扰。
五、验证时间同步与签名时效性(如启用 Signature 认证)
当 Minimax API 启用可选的签名认证模式(非默认 Bearer 模式)时,请求头需包含 X-MiniMax-Timestamp 和 X-MiniMax-Signature,且时间戳偏差超过 300 秒即视为非法。
1、在发起请求前,获取当前 Unix 时间戳(秒级),并确保其与 NTP 标准时间偏差小于 300 秒。
2、检查 X-MiniMax-Timestamp 头是否为纯数字字符串,无小数点或单位后缀。
3、重新生成签名时,确认所用 secret_key 与控制台中显示的 Secret Key(非 API Key) 完全一致,且未混淆二者。


















