API 总览
本页为 open-im-server 的 REST API 增量文档入口。
定位说明:本套文档用于补充官方文档 https://docs.openim.io/restapi/apis/introduction 的缺失或增量内容,不替代官方文档。
当前文档仅覆盖本次补齐范围内的接口,按能力域组织:
- group:群组管理相关接口。
- msg:消息检索与撤回接口。
- user:用户分页检索接口。
服务域与调用身份
- 文档中的 group/msg/user 表示接口能力域,不等同于调用方身份。
- 是否可调用,最终以接口自身鉴权规则为准(是否需要 token、需要什么 token、是否有权限校验)。
- 实际集成中,管理员后台、业务后端、中台服务都可能调用上述接口;只要满足鉴权要求,就是合理调用。
- 对外联调时,建议按“服务域 + 接口能力 + 鉴权要求”理解,不按“页面归属”限制调用方。
通用请求约定
- 方法:当前补齐接口均为
POST。 - operationID:所有
POST请求统一要求在 Header 传入operationID。 - 请求体:业务接口默认使用 JSON body,推荐
Content-Type: application/json(当前未对该请求头做强校验)。 - 鉴权头:本批接口均要求在 Header 中传入
token。
返回结构(统一包裹)
API 统一使用同一响应包裹结构:
| 字段 | 类型 | 说明 |
|---|---|---|
| errCode | int | 错误码,0 表示成功 |
| errMsg | string | 错误简述 |
| errDlt | string | 错误详情,便于排查 |
| data | any | 业务数据(成功时返回) |
错误码体系(分层)
- 基础错误码:来自通用错误定义(参数错误、权限错误、记录不存在、Token 相关错误)。
- 服务错误码:来自 open-im-server 的服务端错误定义(如群已解散、消息已撤回、群禁言等)。
- 兜底行为:未包装为业务错误的异常,会被统一映射为内部错误码(
500)。 - 完整明细:见 错误码明细。
联调处理建议
- 统一判定:
errCode = 0读取data,errCode != 0按失败分支处理。 - 失败分支建议优先展示
errMsg,并记录errDlt用于排障。