群聊接口

加入、同步群事件回调

Bot加入群或同步到群组回调

TIP

加入群事件只会在BOT运行过程中被捕捉
同步事件会在BOT启动时以及成员同步群信息时被捕捉

POST ***/chatroom/joined #加入群事件
###
POST ***/chatroom/loaded #同步到群事件

回调请求Body

{
  "chatId": "5dbe8287184b7cb41f52674e",
  "botInfo": {
    "wxid": "string",
    "weixin": "string",
    "nickName": "string"
  },
  "wxid": "string",
  "topic": "string",
  "avatarUrl": "string",
  "ownerId": "string",
  "members": [
    {
      "wxid": "string",
      "nickName": "string",
      "avatarUrl": "string",
      "roomAlias": "string | null",
      "isFriend": "boolean",
      "contactType": "number",
      "coworker": "boolean"
    }
  ],
  "group": "string",
  "syncedTime": "number"
}
名称类型是否必须备注
chatIdstring群组的对话id, 详见chatId
botInfoModel触发事件的Bot信息
botInfo.wxidstring触发事件的Bot wxid, 详见imBotId
botInfo.weixinstring触发事件的Bot weixin
botInfo.nickNamestring触发事件的Bot 昵称
wxidstring群wxid, 相见roomWxid
topicstring群名称
avatarUrlstring群头像地址
ownerIdstring拥有者wxid, 详见imBotId
membersList群内成员信息
members.wxidstring成员wxid, 详见contactWxid
members.nickNamestring成员昵称
members.avatarUrlstring成员头像地址
members.roomAliasstring/null成员备注
members.isFriendstring是否为好友
members.contactTypenumber联系人类型
members.coworkerboolean是否为同事
groupstring群聊所属群组id
syncedTimestringBOT获取到同步信息的时间

加入群聊

### POST https://ex-api.botorange.com/room/addMember

请求示例:

{
  "token": "abcd",
  "botUserId": "testUserId",
  "contactWxid": "7888888888",
  "roomWxid": "R:888888"
}

请求参数:

名称类型是否必须备注
tokenstring调用接口凭证,秒回token, 获取方式
botUserIdstring需要执行添加的托管微信的userId, 详见wxUserId
contactWxidstring需要被添加的群成员的wxid, 详见contactWxid
roomWxidstring需要被添加的群的wxid, 详见roomWxid

注意

1.使用userId进行添加群聊时,无法保证当前微信组下该userId仅在一有一个账号,如果以当前userId查到了不止一个托管账号,则会报错 2.群人数40人之前默认拉入群聊,40人以后发送入群卡片链接,需要客户点击确认 3.建议拉人进群时,每分钟不超过50次

返回示例:

{
  "code": 0,
  "message": ""
}

返回参数说明:

参数类型必定存在备注
codenumber返回码
messagestring对返回码的文本描述内容

错误码:

错误码说明
-2botUserId的bot不存在
-3botUserId存在多个机器人
-4不是企业微信
-5bot不在线
-6群聊加载失败
-7拉入群聊失败
-8和bot不是好友关系
-9群聊中已经存在此好友
-10群人数达到上限(500)
-11bot不在群内
-12该群是内部群,不执行此操作

创建群聊

POST https://ex-api.botorange.com/room/create

请求示例:

{
  "token": "5f60998462c907003e1fa2c1",
  "botUserId": "testUserId",
  "userIds": [
    "zhangsan"
  ],
  "unionIds": [
    "ozynqsulJFCZ2z1aYeS8h-nuasdAAA"
  ],
  "name": "create",
  "greeting": "大家好,这个是新的群",
  "wxids": [
    "wmrRhyBgAA6PKOL7IA2Nbikedjxxxxxx",
    "wmrRhyBgAANQ1O34HRXfVQh17exxxxxx"
  ]
}

请求参数:

名称类型是否必须备注
tokenstring秒回调用接口凭证, 获取方式
botUserIdstring需要执行建群的托管微信的userId, 详见wxUserId
userIdsstring array建群时需要拉入的企业成员的userId, 详见wxUserId
unionIdsstring array建群时需要拉取的外部联系人的unionId, 详见unionId
namestring建群后新的群的名字
greetingstring建群后的激活语
wxidsstring array建群时需要拉取的联系人的wxid, 详见contactWxid

注意

使用userId进行建群时,无法保证当前企业下该userId仅在一个微信组内托管了一次,如果以当前userId查到了不止一个托管账号,则会报错。

创建群聊时 unionIdswxids 联系人组合的总人数应位于2~40之间,两个参数可以共存。

返回示例:

{
  "errcode": 0,
  "errmsg": "ok",
  "data": {
    "chatId": "wrG3O4AAAAA8bbFkg5q6q0M0Sdp-QQQQ",
    "roomWxid": "R:888888888"
  }
}

返回参数说明:

参数类型必定存在备注
errcodenumber返回码
errmsgstring对返回码的文本描述内容
data.chatIdstring创建的群聊的chatId, 详见chatId
data.roomWxidstring创建的群聊的wxid, 详见roomWxid

错误码:

错误码说明
-1无效token
-2botUserId的bot不存在
-3botUserId存在多个机器人
-4不是企业微信
-5bot不在线
-6同事不存在
-7contact不存在
-8contact加载失败
-9创建群聊失败
-10创建群人数不足

退出群聊

POST https://ex-api.botorange.com/room/exit

请求示例:

{
  "token": "5f60998462c907003e1fa2c1",
  "wecomUserId": "testUserId",
  "roomWxid": "R:123123123"
}

请求参数:

名称类型是否必须备注
tokenstring秒回调用接口凭证, 获取方式
wecomUserIdstring需要执行的托管微信的userId, 详见wxUserId
roomWxidstring群的wxid, 详见roomWxid

返回示例:

{
  "code": 0,
  "message": "ok"
}

返回参数说明:

参数类型必定存在备注
codenumber返回码
messagestring对返回码的文本描述内容

错误码:

错误码说明
-1无效token
-2wecomUserId的bot不存在
-3wecomUserId存在多个机器人
-4托管账号未正确登录
-5不是企业微信
-6bot不在线
-7托管账号不在群内
-8群聊不存在
-9群聊加载失败
-10退出群聊失败
-11因托管账号是群主,退出群聊失败,请在手机端退出

通过秒回群聊标签查询群

GET https://ex-api.botorange.com/room/listByMHTag?token=***&mhTagId=&current=&pageSize=

请求参数:

名称类型是否必须备注
tokenstring调用接口凭证, 获取方式
mhTagIdstring秒回标签id
currentstring当前页数(从1开始)
pageSizestring条数

返回示例:

{
  code: 0,
  data:[{
      "chatId": "5dbe8287184b7cb41f52674e",
      "botInfo": {
        "wxid": "wxid_rr9ej1o8xv9h21",
        "weixin": "iguxiaobei",
        "nickName": "小北"
      },
      "wxid": "11293954269@chatroom",
      "topic": "大街小巷程序员",
      "avatarUrl": "http://wx.qlogo.cn/mmcrhead/WibBib8GYLV5M0UyNUyX4SA5zf5cCzOjsCG3Z1HWA1hneVfQfTIPygia6ibN31LSWqG1jFe0zXZSujPp4CwhBibXpxeQPnDp3LEYN/0",
      "ownerId": "wxid_rr9ej1o8xv9h21",
      "members": [
        {
          "wxid": "kx23498",
          "nickName": "群成员昵称",
          "avatarUrl": "http://wx.qlogo.cn/mmhead/ver_1/3mtHGNE50ZpxZX3SMwqibluNAz5GgiaAVLyzyc3Ex0TThpfrVUibnKiagiciaP5jeO2f6wYAuiaW5cXjKhsgbAHzCzNs4V4uibzLkxr0z3XaluTRGUc/132",
          "roomAlias": null,
          "isFriend": true,
          "contactType": 1,
          "coworker": false // is coworker or not
        }
      ],
      "labels": [
        {
          "id": "5eda03260e21f35ca20f9eb4",
          "name": "VIP客户群"
        }
      ],
      "wecomChatId": "wrrRhyBgAAGf2Wo90zgjmNspXj4y8pQA", // 如果需要该值, 需要联系售后申请内测升级
      "external": true,
      "memberCount": 10
    }],
  page: {
    current: 1,
    total: 1
  }
}

返回参数说明:

名称类型必定存在备注
codenumber返回码
data.chatIdstring该群组的对话id, 详见chatId
data.botInfoobject所属微信信息
data.botInfo.wxidstring所属微信的wxid, 详见imBotId
data.botInfo.weixinstring所属微信的userId,可与企业微信API的userId一一对应, 详见wxUserId
data.botInfo.nickNamestring所属微信昵称
data.wxidstringwxid,该id在微信里唯一, 详见roomWxid
data.topicstring群名称
data.avatarUrlstring群头像
data.ownerIdstring群主wxid, 详见imBotId
data.membersarray群成员
data.members.wxidstring群成员wxid,详见contactWxid
data.members.nickNamestring群成员昵称
data.members.avatarUrlstring群成员头像url
data.members.roomAliasstring群成员在群中的昵称
data.members.isFriendboolean该成员是否和所属微信是好友
data.members.contactTypenumber联系人类型,0 - 未知,1 - 微信,2 - 公众号,3 - 企业微信
data.members.coworkerboolean是否为同事(同一个企业下的员工)
data.members.corporationstring该客户所属企业名
data.labelsarray秒回标签
data.labels.idstring秒回标签id
data.labels.namestring秒回标签名称
data.wecomChatIdstring企业微信群官方id。如果需要该值, 需要联系售后申请内测升级, 详见wecomChatId
data.externalboolean群聊 true外部群聊 false内部群聊
data.memberCountnumber群成员人数
page.currentnumber当前页数
page.totalnumber总数

通过联系人id获取联系人所在群聊

GET https://ex-api.botorange.com/room/listByMember?token=***&contactWxid=

请求参数:

名称类型是否必须备注
tokenstring调用接口凭证, 获取方式
contactWxidstring联系人的wxid

返回示例:

{
  code: 0,
  data:[{
      "chatId": "5dbe8287184b7cb41f52674e",
      "botInfo": {
        "wxid": "wxid_rr9ej1o8xv9h21",
        "weixin": "iguxiaobei",
        "nickName": "小北"
      },
      "wxid": "11293954269@chatroom",
      "topic": "大街小巷程序员",
      "avatarUrl": "http://wx.qlogo.cn/mmcrhead/WibBib8GYLV5M0UyNUyX4SA5zf5cCzOjsCG3Z1HWA1hneVfQfTIPygia6ibN31LSWqG1jFe0zXZSujPp4CwhBibXpxeQPnDp3LEYN/0",
      "ownerId": "wxid_rr9ej1o8xv9h21",
      "members": [
        {
          "wxid": "kx23498",
          "nickName": "群成员昵称",
          "avatarUrl": "http://wx.qlogo.cn/mmhead/ver_1/3mtHGNE50ZpxZX3SMwqibluNAz5GgiaAVLyzyc3Ex0TThpfrVUibnKiagiciaP5jeO2f6wYAuiaW5cXjKhsgbAHzCzNs4V4uibzLkxr0z3XaluTRGUc/132",
          "roomAlias": null,
          "isFriend": true,
          "contactType": 1,
          "coworker": false // is coworker or not
        }
      ],
      "labels": [
        {
          "id": "5eda03260e21f35ca20f9eb4",
          "name": "VIP客户群"
        }
      ],
      "wecomChatId": "wrrRhyBgAAGf2Wo90zgjmNspXj4y8pQA", // 如果需要该值, 需要联系售后申请内测升级
      "external": true,
      "memberCount": 10
    }],
}

返回参数说明:

名称类型必定存在备注
codenumber返回码
data.chatIdstring该群组的对话id, 详见chatId
data.botInfoobject所属微信信息
data.botInfo.wxidstring所属微信的wxid, 详见imBotId
data.botInfo.weixinstring所属微信的userId,可与企业微信API的userId一一对应, 详见wxUserId
data.botInfo.nickNamestring所属微信昵称
data.wxidstringwxid,该id在微信里唯一, 详见roomWxid
data.topicstring群名称
data.avatarUrlstring群头像
data.ownerIdstring群主wxid, 详见imBotId
data.membersarray群成员
data.members.wxidstring群成员wxid, 详见contactWxid
data.members.nickNamestring群成员昵称
data.members.avatarUrlstring群成员头像url
data.members.roomAliasstring群成员在群中的昵称
data.members.isFriendboolean该成员是否和所属微信是好友
data.members.contactTypenumber联系人类型,0 - 未知,1 - 微信,2 - 公众号,3 - 企业微信
data.members.coworkerboolean是否为同事(同一个企业下的员工)
data.members.corporationstring该客户所属企业名
data.labelsarray秒回标签
data.labels.idstring秒回标签id
data.labels.namestring秒回标签名称
data.wecomChatIdstring企业微信群官方id。如果需要该值, 需要联系售后申请内测升级, 详见wecomChatId
data.externalboolean群聊 true外部群聊 false内部群聊
data.memberCountnumber群成员人数
最近更新:
Contributors: hamlin.li, windmemory