微信协议 SAAS
企微接口
企微接口
  1. Contact
  • 文档说明
  • 更新日志
  • 客户端
    • 恢复实例
      POST
    • 停止实例
      POST
    • 设置实例通知地址
      POST
    • 设置实例桥接ID
      POST
    • 设置实例代理
      POST
    • 升级实例
      POST
    • 获取实例状态
      POST
    • 获取实例版本
      POST
  • Login
    • 获取登录二维码
      POST
    • 检查登录二维码状态
      POST
    • 推送手机确认登录通知
      POST
    • 验证登录
      POST
  • User
    • 获取登录账号信息
      POST
    • 获取个人二维码
      POST
    • 退出登录
      POST
  • Contact
    • 同步联系人
    • 同步联系人
      POST
    • 置顶聊天
      POST
    • 获取联系人详细
      POST
    • 批量获取联系人简要信息
      POST
    • 通过手机号,微信号或QQ搜素微信用户
      POST
    • 添加微信用户
      POST
    • 检查好友状态、单向加好友和同意好友申请
      POST
    • 修改好友备注
      POST
    • 删除好友
      POST
  • Room
    • 获取群列表 (本地存储)
    • 获取群列表(本地存储 当前微信是群主或者管理员)
    • 获取群成员 (本地存储)
    • 获取群信息
    • 获取群成员详细
    • 创建群组
    • 添加群成员(低于40人)
    • 邀请群成员
    • 移除群成员
    • 修改群名称
    • 设置群公告
    • 修改群显示昵称
    • 是否显示群成员昵称
    • 是否保存到通讯录
    • 是否折叠群
    • 消息免打扰
    • 添加群成员为好友
    • 退出群
    • 转让群主
    • 置顶消息
    • 取消置顶消息
    • 获取置顶消息列表
    • 获取群二维码
    • 置顶聊天
  • Msg
    • 接收消息
    • 发送文本消息
    • 发送群@消息
    • 发送分享名片
    • 发送分享名片
    • 发送位置
    • 发送图片
    • 发送视频
    • 发送文件
    • 发送表情
    • 发送表情url
    • 发送表情md5
    • 发送拍一拍
    • 发送链接卡片
    • 发送链接卡片CDN
    • 发送APPMSG
    • 发送小程序
    • 发送视频号
    • 撤回消息
    • 发送引用消息
    • 设置消息已读
    • 生成语音转文字ID
    • 检查语音转文字
    • 上传待转文字的语音
    • 获取语音转文字结果
  • Cloud
    • 更新CDNClient DNS信息
    • 上传图片、视频或文件
    • 上传朋友圈类型图片
    • 上传朋友圈类型视频
    • 下载图片、视频或文件
    • 下载收藏类型的文件或视频
    • 下载企微媒体文件
    • 下载语音
    • 下载微信加密视频
    • 下载微信加密图片
    • 下载微信加密表情
  • Label
    • 获取所有标签
    • 新建标签
    • 修改标签
    • 删除标签
    • 给联系人打标签
    • 根据标签获取联系人 (本地存储)
    • 根据标签下关联联系人的数量 (本地存储)
  • OpenIM
    • 获取企微好友列表 (本地存储)
    • 获取企微群列表 (本地存储)
    • 获取企微群群成员 (本地存储)
    • 获取企微群信息
    • 获取企微群成员信息
    • 获取企微联系人详细信息
    • 获取企微联系人企业信息
    • 通过企微二维码查询联系人
    • 添加企微联系人
    • 发送企微联系人验证请求
    • 删除企微联系人
    • 检查企微联系人状态接口
    • 修改企微联系人免打扰状态
    • 修改企微联系人置顶状态
  • Sns
    • 获取朋友圈动态
    • 获取好友朋友圈动态
    • 发布朋友圈
    • 获取朋友圈动态详细信息
    • 评论
    • 删除评论
    • 点赞/取消点赞
    • 删除朋友圈
  • App
    • 取真实URL
    • 取真实URL
    • 小程序授权登录
    • 小程序安全通讯
    • 小程序安全通讯VIP
    • OAuth登录授权
    • OAuth登录授权确认
    • 第三方网站扫码登录授权
    • 第三方网站扫码登录授权确认
    • 生成小程序短链接
    • 解析小程序短链接
    • 解析小程序短链接
  • Other
    • 语音转文字
    • 语音转文字分片
  1. Contact

同步联系人

首次做通讯录同步#

调用 /contact/init_contact 接口,里面返回的联系人包含系统账号,群,公众号和好友的用户 ID (wxid),
然后使用 /contact/batch_get_contact_brief_info 接口来批量获取联系人的基本信息
判断联系人类型的 python 示例:

增量同步联系人#

在首次同步之后,保存 /contact/init_contact 接口返回的 contact_seq 和 room_seq 的值, 当用户下次登录时,调用 /contact/init_contact 接口,传入保存的 contact_seq 和 room_seq 的值,来获取增量的联系人信息。

群同步#

调用联系人同步接口后,会返回群的信息,其中需要保存 chatroomVersion 和 chatroomInfoVersion 字段的值
chatroomVersion 为群成员的版本号,用于增量同步群成员信息
chatroomInfoVersion 为群信息的版本号,用于增量同步群信息
在账号登录期间,如果联系人信息有变动,会发送通知,notify_type 值如下:
CmdIdModContact: 1200 为联系人信息变动
CmdIdDelContact: 1201 为联系人信息删除
当收到的通知为群信息变动时,需要对比 chatroomInfoVersion 的值,如果不一致,调用 /room/get_chatroom_detail 接口来获取群信息,然后保存 chatroomInfoVersion 的值,并于之前保存的值进行对比,如果不一致,调用 /room/get_chatroom_member_detail 接口来获取群成员信息,然后保存 chatroomVersion 的值

总结#

联系人同步#

一、初始化全量同步:#

1、调用/contact/init_contact获取所有联系人
2、/contact/batch_get_contact_brief_info接口来批量获取联系人的基本信息

二、增量同步#

1、获取上次同步联系人保存的contact_seq 和 room_seq
2、调用 /contact/init_contact 接口,传入保存的 contact_seq 和 room_seq 的值

三、动态增量同步#

1、收到notify_type为1200、1201的变动通知,如果是变动,调用/contact/get_contact接口获取详情

群成员同步#

一、群成员初始化全量同步#

1、/contact/batch_get_contact_brief_info获取群联系人信息时,异步获取群的群成员

二、群成员增量同步#

1、/contact/batch_get_contact_brief_info获取群联系人信息时,获取对应群的联系人中的chatroomVersion 和chatroomInfoVersion
2、对比自己保存的chatroomInfoVersion 的值,如果不一致,调用 /room/get_chatroom_detail 接口来获取群信息,
然后保存 chatroomInfoVersion 的值,并于之前保存的值进行对比,
如果不一致,调用 /room/get_chatroom_member_detail 接口来获取群成员信息,然后保存 chatroomVersion 的值

三、群成员动态增量同步#

1、收到notify_type为1200、1201的变动通知
2、对比 chatroomInfoVersion 的值,如果不一致,调用 /room/get_chatroom_detail 接口来获取群信息,
然后保存 chatroomInfoVersion 的值,并于之前保存的值进行对比,
如果不一致,调用 /room/get_chatroom_member_detail 接口来获取群成员信息,然后保存 chatroomVersion 的值
修改于 2025-07-09 04:06:23
上一页
退出登录
下一页
同步联系人
Built with