LongBridge API 401004 错误问题总结
问题描述
使用 Python SDK (longbridge v4.0.5) 连接 LongBridge OpenAPI 时,所有 API 调用均返回 401004 token invalid 错误。
───
环境信息
| 项目 |
值 |
| SDK版本 |
longbridge 4.0.5 |
| Python版本 |
3.12 |
| 操作系统 |
Windows |
| App Key |
9931b97275f8ed93c4bc689b10ed2575 |
| 账户ID |
21331930 |
| 账户类型 |
Paper Trading (模拟交易) |
───
错误详情
OpenApiException: (kind=ErrorKind.OpenApi, code=401004, trace_id=xxx) token invalid
───
已尝试的排查
- ✅ 确认 Token 格式正确(JWT,带 m_ 前缀)
- ✅ Token Payload 包含完整字段(aid, ak, bl 等)
- ✅ 使用 Config.from_apikey_env() 初始化
- ✅ 使用 Config.from_apikey() 直接传参
- ✅ 确认 App Key、App Secret、Access Token 均已正确设置
- ✅ DNS 解析正常,服务器可连接
- ✅ SDK 能成功创建 QuoteContext 和 TradeContext
- ❌ 所有 API 调用均返回 401004
───
关键发现
- Token格式:获取的 Token 是 OAuth 2.0 格式(RS256 签名,含 bl=3 字段)
- SDK认证方式:Config.from_apikey_env() 使用 HMAC-SHA256 签名验证
- 认证协议不匹配:OAuth Token (RS256) 与 SDK 的 HMAC 认证方式不兼容
- 历史记录:用户表示该 Token 格式之前可以正常使用,刷新后出现问题
───
Token Payload 示例
{
"iss": "longbridge",
"sub": "access_token",
"exp": 1783420934,
"iat": 1775644934,
"ak": "9931b97275f8ed93c4bc689b10ed2575",
"aid": 21331930,
"ac": "lb_papertrading",
"mid": 21291962,
"sid": "qJn9uVNDqElVfnBtFANdPA==",
"bl": 3,
"uh": 0,
"ik": "lb_papertrading_21331930"
}
───
猜测原因
- 服务器端可能对 OAuth Token 的验证策略做了更新
- 或需要使用 OAuth 的 client_id 通过 Config.from_oauth() 方式认证
───
需要的帮助
- 确认 Python SDK 是否支持 OAuth Bearer Token 方式?
- 如果支持,Config.from_oauth() 需要什么参数?
- 或者需要重新生成什么格式的 Token 才能用于 SDK 的 HMAC 认证?
───
错误截图/Trace ID:afc70f472bcfaab577ab1fbec0dee3b4(仅供参考)
LongBridge API 401004 错误问题总结
问题描述
使用 Python SDK (longbridge v4.0.5) 连接 LongBridge OpenAPI 时,所有 API 调用均返回 401004 token invalid 错误。
───
环境信息
───
错误详情
OpenApiException: (kind=ErrorKind.OpenApi, code=401004, trace_id=xxx) token invalid
───
已尝试的排查
───
关键发现
───
Token Payload 示例
{
"iss": "longbridge",
"sub": "access_token",
"exp": 1783420934,
"iat": 1775644934,
"ak": "9931b97275f8ed93c4bc689b10ed2575",
"aid": 21331930,
"ac": "lb_papertrading",
"mid": 21291962,
"sid": "qJn9uVNDqElVfnBtFANdPA==",
"bl": 3,
"uh": 0,
"ik": "lb_papertrading_21331930"
}
───
猜测原因
───
需要的帮助
───
错误截图/Trace ID:afc70f472bcfaab577ab1fbec0dee3b4(仅供参考)