跳转到正文

解散群 ​

群主解散整个群,所有成员的群状态都会更新。

POST /app/sdk/groups/dissolve

调用方: SDK 客户端 · 认证: IM Token

请求头:Authorization: Bearer <IM Token>。先通过宿主后端获取 Token,再交给 SDK 使用。

请求参数 ​

JSON Body ​

参数类型必填说明
group_idstring是公开群 ID,1–32 位字母、数字、点、下划线或连字符。

请求示例 ​

bash
curl 'https://example.com/app/sdk/groups/dissolve' \
  -H "Authorization: Bearer $POPOIM_TOKEN" \
  -H 'Content-Type: application/json' \
  --data '{"group_id":"6284173029"}'

使用说明 ​

  • 需具备 permissions.dissolve_group 权限。
  • 以返回的 membership 和 permissions 更新界面,并关闭不再允许使用的群操作。

返回参数 ​

成功响应的最外层字段如下。下面所有业务字段都位于 data 中。

字段类型说明
codeinteger0 表示成功;非 0 时查看 msg,不把 data 当成功结果使用。
msgstring成功通常为 ok,失败时为错误说明。
dataobject本次请求的业务结果,字段见下表。

data 字段 ​

字段类型说明
operationstring本次操作为 dissolve。
event_idstring | null与实时通知对应的事件 ID。没有产生新事件时可为 null;同一事件只处理一次。
group_event_idstring | null对应的群资料或群成员事件 ID;没有新事件时可为 null。
groupGroup群资料。
membershipMembership本人的群状态。
permissionsGroupPermissions本人当前可执行的群操作。

返回示例 ​

示例展示字段结构;ID、时间和资料仅作说明,请使用实际回包。

展开完整返回示例
json
{
  "code": 0,
  "msg": "ok",
  "data": {
    "operation": "dissolve",
    "event_id": "evt_6874dbb8db144f18b8532dc4c938156c",
    "group_event_id": "evt_184ff6fca230403ba9aa4f53c1e3fef9",
    "group": {
      "group_id": "6284173029",
      "owner_id": "chenyue",
      "name": "秋日海岸出游",
      "avatar": "https://example.com/uploads/avatars/group/6284173029/1792301400.webp",
      "avatar_custom": false,
      "announcement": "周六 8:30 公司楼下集合,请带好防晒用品。",
      "announcement_author_id": "chenyue",
      "announcement_author_name": "陈悦",
      "announcement_updated_at": 1792301400000,
      "status": "dissolved",
      "all_muted": false,
      "join_approval_required": false,
      "member_count": 2,
      "unread_mode": "fanout",
      "last_mid": "0",
      "last_seq": "0",
      "last_message_at": 0,
      "conversation_updated_at": 1792301400000,
      "created_at": 1792301400000,
      "updated_at": 1792301400000
    },
    "membership": {
      "conversation_id": "group_6284173029",
      "status": "dissolved",
      "role": "owner",
      "remark": "",
      "conversation_state": "hidden",
      "pinnable": false,
      "pinned": false,
      "muted": false,
      "announcement_unread": false,
      "send_forbidden_until": 0,
      "joined_at": 1792301400000,
      "updated_at": 1792301400000
    },
    "permissions": {
      "send_message": false,
      "rename_group": false,
      "edit_announcement": false,
      "edit_remark": false,
      "add_member": false,
      "remove_member": false,
      "manage_admins": false,
      "manage_mute": false,
      "manage_join_approval": false,
      "share_group": false,
      "dissolve_group": false,
      "leave_group": false
    }
  }
}

返回对象字段 ​

数组中的每个对象使用同一套字段。点击名称跳到说明:

群资料 · 本人的群成员状态 · 本人的群操作权限

群资料(Group) ​

字段类型说明
group_idstring公开群 ID,群相关请求使用这个值。
owner_idstring群主的外部 user_id。
namestring群名称。
avatarstring群头像地址。
avatar_customboolean是否由用户上传头像;false 表示服务器生成的组合头像。
announcementstring | null群公告正文;没有公告时为 null。
announcement_author_idstring | null最近一次公告发布者的外部 user_id;没有公告时可为 null。
announcement_author_namestring | null公告发布者的显示名;没有公告时可为 null。
announcement_updated_atinteger公告更新时间;尚未设置时为 0,Unix 毫秒时间戳。
statusstring群状态:active 正常、disabled 停用、dissolved 已解散。
all_mutedboolean是否开启全员禁言。
join_approval_requiredboolean扫码加入是否需要群主或管理员审批。
member_countinteger当前成员人数。
unread_modestring未读计算方式:fanout 按成员累计;sequence 按消息序号计算。客户端使用返回的未读数即可。
last_midstring最新消息 ID;还没有消息时为 "0"。
last_seqstring最新消息在群内的序号;没有消息时为 "0"。
last_message_atinteger最近一条消息的发送时间;没有消息时为 0,Unix 毫秒时间戳。
conversation_updated_atinteger群会话内容最后更新时间,Unix 毫秒时间戳。
created_atinteger建群时间,Unix 毫秒时间戳。
updated_atinteger群资料最后更新时间,Unix 毫秒时间戳。

本人的群成员状态(Membership) ​

字段类型说明
conversation_idstring该群的会话 ID。
statusstringactive 仍在群中、left 已退出、removed 已被移出、dissolved 群已解散。
rolestringowner 群主、admin 管理员、member 普通成员。
remarkstring本人设置的群备注;未设置时为空字符串。
conversation_statestringchatting 显示在会话列表,hidden 隐藏。
pinnableboolean当前是否可以置顶;没有消息时通常为 false。
pinnedboolean本人是否置顶。
mutedboolean本人是否开启免打扰。
announcement_unreadboolean本人是否有未读群公告。
send_forbidden_untilinteger本人单独禁言到期时间;0 表示没有单独禁言,Unix 毫秒时间戳。
joined_atinteger本人入群时间,Unix 毫秒时间戳。
updated_atinteger本人成员状态最后更新时间,Unix 毫秒时间戳。

本人的群操作权限(GroupPermissions) ​

字段类型说明
send_messageboolean本人当前是否可以发送消息。界面可据此显示操作入口,服务器仍会再次检查权限。
rename_groupboolean本人当前是否可以修改群名。界面可据此显示操作入口,服务器仍会再次检查权限。
edit_announcementboolean本人当前是否可以编辑群公告。界面可据此显示操作入口,服务器仍会再次检查权限。
edit_remarkboolean本人当前是否可以修改个人群备注。界面可据此显示操作入口,服务器仍会再次检查权限。
add_memberboolean本人当前是否可以添加成员。界面可据此显示操作入口,服务器仍会再次检查权限。
remove_memberboolean本人当前是否可以移出成员。界面可据此显示操作入口,服务器仍会再次检查权限。
manage_adminsboolean本人当前是否可以设置或取消管理员。界面可据此显示操作入口,服务器仍会再次检查权限。
manage_muteboolean本人当前是否可以设置全员或成员禁言。界面可据此显示操作入口,服务器仍会再次检查权限。
manage_join_approvalboolean本人当前是否可以修改入群审批设置。界面可据此显示操作入口,服务器仍会再次检查权限。
share_groupboolean本人当前是否可以分享群二维码。界面可据此显示操作入口,服务器仍会再次检查权限。
dissolve_groupboolean本人当前是否可以解散群。界面可据此显示操作入口,服务器仍会再次检查权限。
leave_groupboolean本人当前是否可以退出群。界面可据此显示操作入口,服务器仍会再次检查权限。

错误处理 ​

先检查 HTTP 状态,再检查 code。业务失败可能仍为 HTTP 200;非 0 的 code 都不能当成功。完整错误码见请求约定。

返回群与成员接口列表 · HTTP 请求约定