Skip to content

错误码

本页汇总业务响应、企微错误码、鉴权与网关错误。业务成功看数字 code=0;鉴权与网关失败的 code 是字符串,按下方对应表排查。

响应封套

json
{ "code": 0, "data": { }, "detail": "", "message": "ok", "time": "2026-09-11 10:51:00" }
字段类型说明
codeint数字 0 成功,业务失败为数字 -1
dataobject / array业务数据。失败时可能为空或缺省;在线但无数据的接口成功时也可能没有 data,不代表失败
detailstring附加明细,通常为空
messagestring成功为 ok;失败形如 -12007|get expired data empty,竖线前是企微错误码
timestring服务端处理时间 YYYY-MM-DD HH:MM:SS

区分接口成功与操作完成

业务响应的 code 是数字,0 表示本次调用成功,HTTP 200 不代表业务成功。异步或测试操作还要检查结果:检测二维码data.status=2 才算登录成功;断线重连code=0 只表示开始恢复;测试投递要确认 data.ok=truedata.httpStatus 为 2xx。鉴权与网关错误使用字符串 code,见鉴权与网关错误

企微错误码

含义处理建议
-3004参数错误检查字段名与类型,数字 id 不能传字符串
-11001请求断线重连断线重连
-11002你已在其他设备上登录不自动重连,置为离线并提示,由用户决定是否重新扫码
-2007已下线重新扫码
-12006checkQr 没带 uuid带上 getQr 返回的 uuid
-12007二维码过期重新 getQr
-2003syncExternal 无增量或游标失效重新全量或换游标
-3020用自聊伪房间 roomId 作发送目标给自己发用当前账号 uin
-4014过期或错误的 uinconversationIdpersonal/getInfo 取当前 uin
-4046sendMiniProgram 误填 cover 字段cover 留空
-18000039加好友被限流降频,不要立即重试
-18000003无对应好友申请
-18000059群二维码已停用(群开启了进群验证)提示用户,无法直接取码
-24001155群发助手无法发送一年前的任务检查任务 id
-2001大文件下载失败fileId 无效或不存在

鉴权与网关错误

这类响应是 JSON 对象,code字符串message 是错误说明。例如:

json
{ "code": "invalid_token", "message": "App Token 无效或已重置" }
错误HTTP含义
unauthorized401缺少 Authorization 请求头
invalid_token401App Token 格式不正确、无效或已重置
proxy_required400新建实例未指定代理,省份 region / 自定义代理 socks5 / 本地代理 aid 三选一
appid_not_bound403appid 不属于当前应用,检查 App Token 与实例归属
capacity_exhausted403实例容量已满
rate_limited429调用频率超限,降低调用频率后再试
device_create_disabled403创建设备不对外开放,由 getQr 自动创建
not_exposed403企微连接由系统维护,相关接口不对外

到达业务层后的失败采用另一种格式:code 为数字 -1,企微错误码在 message 的竖线前。例如 message-3004|参数错误,应查上方企微错误码,不要把它当成字符串网关错误。

排查顺序

#检查怎么查
1请求头Authorization: Bearer <你的 App Token> 有没有带、有没有多余空格
2appid操作已有实例时必传,且要属于当前 App Token;首次获取二维码不传
3实例在不在线获取个人信息-2007 需重新扫码;-11002 置为离线并提示,由用户决定是否重新登录
4参数类型int64 字段传了字符串会直接报 -3004unmarshal 错误
5空集合不同接口的空结果形态不一样:data:nulllist:null、没有 data 键都可能出现,解析要兼容

幂等与重试

  • 发送类接口不要盲目重试。 重试前先确认上一次是否已成功,否则会重复发给客户。
  • 同一个 appid 的发送进队列,避免并发直发。
  • 加好友类接口遇到 -18000039 要降频,不要立即重试。