导入群成员

最近更新时间:2019-08-02 18:37:05

功能说明

  • 该 API 接口的作用是导入群组成员,不会触发回调、不会下发通知。
  • 当 App 需要从其他即时通信系统迁移到即时通信 IM 时,使用该协议导入存量群成员数据。

接口调用说明

适用的群组类型

群组类型 支持此 REST API
私有群(Private)
公开群(Public)
聊天室(ChatRoom)
音视频聊天室(AVChatRoom) 否(见下方说明)
在线成员广播大群(BChatRoom) 否(见下方说明)

即时通信 IM 内置以上五种群组类型,详情请参阅 群组系统

说明:

音视频聊天室和在线成员广播大群所适用的场景一般不需要导入成员,因此不支持导入群成员功能,对这两种类型的群组进行操作时会返回10007错误。

请求 URL 示例

https://console.tim.qq.com/v4/group_open_http_svc/import_group_member?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json

请求参数说明

下表仅列出调用本接口时涉及修改的参数及其说明,更多参数详情请参考 REST API 简介

参数 说明
v4/group_open_http_svc/import_group_member 请求接口
sdkappid 创建应用时即时通信 IM 控制台分配的 SDKAppID
identifier 必须为 App 管理员帐号,更多详情请参见 App 管理员
usersig App 管理员帐号生成的签名,具体操作请参见 生成 UserSig
random 请输入随机的32位无符号整数

最高调用频率

100次/秒。如需提升调用频率,请根据 工单模板 提交工单申请处理。

请求包示例

用来向群中导入成员,一次请求最多支持添加500个成员;使用本接口设置的未读消息数如果大于群当前的消息数,未读消息数会设为群当前的消息总数。

注意:

请保证导入成员的入群时间大于群的创建时间并小于当前时间,否则该成员会导入失败。

{
    "GroupId": "@TGS#2J4SZEAEL", // 要操作的群组(必填)
    "MemberList": [ // 一次最多添加500个成员
    {
        "Member_Account": "tommy", // 要添加的群成员 ID(必填)
        "Role":"Admin", // 导入成员的角色,目前只有 Admin(可选)
        "JoinTime":1448357837, // 导入的成员入群时间(选填)
        "UnreadMsgNum":5 // 该成员的未读消息数(选填)

    },
    {
        "Member_Account": "jared",
        "JoinTime":1448357857,
        "UnreadMsgNum":2
    }]
}

请求包字段说明

字段 类型 属性 说明
GroupId String 必填 操作的群 ID
MemberList Array 必填 待添加的群成员数组
Member_Account String 必填 待导入的群成员帐号
Role String 选填 待导入群成员角色;目前只支持填 Admin,不填则为普通成员 Member
JoinTime Integer 选填 待导入群成员的入群时间
UnreadMsgNum Integer 选填 待导入群成员的未读消息计数

应答包体示例

{
    "ActionStatus": "OK",
    "ErrorInfo": "",
    "ErrorCode": 0,
    "MemberList": [
    {
         "Member_Account": "tommy",
         "Result": 1 // 导入结果:0表示失败;1表示成功;2表示已经是群成员
    },
    {
         "Member_Account": "jared",
         "Result": 1
    }]
}

应答包字段说明

字段 类型 说明
ActionStatus String 请求处理的结果,OK 表示处理成功,FAIL 表示失败
ErrorCode Integer 错误码,0表示成功,非0表示失败
ErrorInfo String 错误信息
MemberList Array 返回添加的群成员结果
Member_Account String 返回的群成员帐号
Result Integer 导入结果:0表示失败;1表示成功;2 表示已经是群成员

错误码说明

除非发生网络错误(例如502错误),否则该接口的 HTTP 返回码均为 200。真正的错误码,错误信息是通过应答包体中的 ErrorCode、ErrorInfo 来表示的。
公共错误码(60000到79999)参见 错误码 文档。
本 API 私有错误码如下:

错误码 描述
10002 服务器内部错误,请重试
10003 请求命令字非法
10004 参数非法,请根据错误描述检查请求是否正确
10005 请求包体中携带的帐号数量过多
10006 操作频率限制,请尝试降低调用的频率
10007 操作权限不足,例如 Public 群组中普通成员尝试执行踢人操作,但只有 App 管理员才有权限
10008 请求非法,可能是请求中携带的签名信息验证不正确,请再次尝试或 提交工单 联系技术客服
10010 群组不存在,或者曾经存在过,但是目前已经被解散
10015 群组 ID 非法,请检查群组 ID 是否填写正确

接口调试工具

通过 REST API 在线调试工具 调试本接口。

参考

删除群组成员(v4/group_open_http_svc/delete_group_member