返回上一级 最佳实践

企业微信 API 开发:登录 · 联系人查询 · 消息发送完整流程

企微 iPad 协议 机器人 / SCRM 自动化 文档:wechatapi.apifox.cn
企业微信 API 登录到发消息流程图

文档概述

本文基于 企微 iPad 协议接口文档,聚焦账号登录、联系人查询、全类型消息发送三大链路,适用于机器人、SCRM 等企微消息自动化开发。

  • 请求方式:POST;请求头 Content-Type: application/json(文件上传除外)
  • 核心标识 uuid:初始化生成,登录 / 联系人 / 消息接口必传
  • 官网:jikehudong.com

账号完整登录流程

步骤总览:初始化实例 → 获取登录二维码 → 扫码 / 验证码登录 / 历史账号自动登录 → 登录状态校验。

初始化企微实例

POST /wxwork/init(所有操作前置)

  • vid:首次可空;历史账号传 16888 开头 ID 便于免扫码
  • ip/port/proxyTypeuserName/passward:代理可选
  • deverType:固定 ipad

获取登录二维码

POST /wxwork/getQrCode,返回 qrcode 链接、qrcode_data(base64)、Key(验证码凭证)。

验证码提交

扫码后手机弹出验证码时调用 POST /wxwork/CheckCode(未关闭弹窗前调用)。若返回 qrcode_not need verify,多为提前关闭弹窗,需重新取码。

{
  "uuid": "...",
  "qrcodeKey": "...",
  "code": "406269"
}

历史账号自动登录与辅助接口

  • /wxwork/automaticLogin:init 传入有效 vid 后免扫码
  • 二次验证:/wxwork/SecondaryValidation
  • 状态查询:/wxwork/GetRunClientByUuid(loginType=2 表示已登录)
  • 退出:/wxwork/LoginOut
登录相关接口调用示意
登录链路相关接口示意

联系人查询

发消息前需拿到目标 send_userid,区分内部联系人与外部客户。

  • 外部客户列表:POST /wxwork/GetExternalContacts
  • 状态参考:正常好友非 0/2049/8;2049 对方删我;8 我方拉黑;0 双向删除
  • 批量详情:POST /wxwork/GetUserInfoByVids

消息发送全流程

  • 单聊 isRoom=false;群聊 isRoom=truesend_userid 传 roomid
  • 图片/文件/视频需先 CDN / 大文件上传,拿到 cdnkey、aeskey、md5 再发送
  • 必填:uuid、send_userid、isRoom

常用发送接口

  • 文本:/wxwork/SendTextMsg(返回 msg_id,可用于撤回等)
  • 文本+表情:/wxwork/SendTextAndExpMsg
  • CDN 图片:/wxwork/SendCDNImgMsg(≤25M)
  • 群 @:/wxwork/SendTextAtMsg;格式化 @:SendTextAtMsgTwo(vid=0 表示 @全体)
消息发送类型与接口对照示意
多类型消息发送对照

高级类型与辅助操作

  • CDN 文件 / 语音 / 短视频、超大视频文件、链接卡片、小程序、GIF、名片、位置、视频号、引用回复等
  • 撤回 RevokeMsg;语音转文字 SpeechToText;已读 MarkAsRead

端到端执行顺序

  1. init 获取 uuid
  2. 新号扫码登录或老号 automaticLogin
  3. GetExternalContacts / GetInnerContacts 取接收人
  4. 媒体消息先上传 CDN / 大文件
  5. 调用对应 Send* 接口发送
  6. 按需 MarkAsRead / 撤回 / 转文字

字段细节以 正式文档 为准。测试报备见 联系我们