跳转到正文

HTTP 接口约定 ​

各平台 SDK 已封装以下接口。常规接入从 SDK 指南开始;本节适合编写宿主换票服务、排查网络请求或实现与现有协议兼容的客户端。

每个接口都有独立页面:先说明用途与调用方,再列请求参数、调用示例、返回字段和使用注意事项。返回对象在当前页面展开,点击对象名称可直接定位。SDK 方法的入参与返回值见各平台方法参考。

先分清调用方 ​

接口范围调用方凭证
POST /app/sdk/token、POST /app/sdk/users/upsert宿主后端Authorization: Bearer <sdkSecret>
其余 /app/sdk/* 客户端接口SDKAuthorization: Bearer <IM Token>
/app/auth/*随附宿主应用PHPSID Cookie,原生端也可用同名请求头
POST /app/sdk/trtc/room-callbackTRTC 服务端回调回调签名;同路径 GET 仅检查地址是否可访问,见通话

sdkSecret 只保存在宿主后端。IM Token 用于证明当前 IM 用户身份;宿主登录会话和 IM Token 分开管理。使用自有账号系统时,无需实现随附宿主的注册、密码或验证码接口。

请求与返回 ​

示例服务地址统一为 https://example.com。GET 参数放在 query,JSON 写请求使用 Content-Type: application/json,文件接口使用 multipart/form-data。参数表中的“必填”指本次请求必须携带;可空和可省略分别说明。

类型表中,string 是文本,例如 "linzhou";integer 是整数,例如 30;boolean 是 true 或 false。[] 表示列表,null 表示当前没有这个值。object 的内部字段会在同页继续说明。

成功:

json
{"code":0,"msg":"ok","data":{"message":0,"notice":0}}

业务失败:

json
{"code":1103,"msg":"token expired","data":null}

先检查网络与 HTTP 状态,再检查 code。业务错误通常返回 HTTP 200;内部故障可返回 500,宿主未登录返回 401,短信限流还可能返回 429。不要仅用 HTTP 200 判断成功。常规 JSON 结果含 Cache-Control: no-store;验证码和 TRTC 回调另有返回格式。

ID、时间与布尔值 ​

  • user.id 是 IM 内部 ID,十进制字符串;user.user_id 是宿主提供的外部用户 ID。对外调用用户参数使用 user_id。
  • group_id 是公开群 ID,1–32 位字母、数字、.、_、-。不要使用数据库群行 ID。
  • mid、conversation_seq、last_seq、read_seq 等序号用十进制字符串保留精度。
  • 业务时间为 Unix 毫秒整数;换票响应的 expire_at 为 Unix 秒。时长以字段的 _ms 或 _seconds 为准。
  • 布尔参数使用 JSON true / false,不要用字符串或 0 / 1 代替。
  • null 有明确语义。共享群事件中的个人未读、置顶、免打扰等可能为 null,表示该事件没有这个接收者的私有状态。

conversation_id 应直接使用服务端返回值。单聊格式为 friend_ 加外部 ID 的无填充 Base64URL;例如 linzhou 对应 friend_bGluemhvdQ。群聊格式为 group_ 加公开群 ID。

分页与幂等 ​

目录列表分页返回 items、next_cursor、has_more。有下一页时,把 next_cursor 原样放进下一次请求的 cursor;这个值已包含账号与筛选条件,不能跨账号、跨接口或与新筛选条件混用。不支持自行指定 page、offset、limit。

消息历史用会话序号分页,搜索会话消息用 before_mid,详见各页。写入使用同一 client_message_id 或 request_id 重试时,必须保持原操作内容,不要把同一个 ID 用于另一条消息或另一次业务操作。HTTP 回包和实时事件中的同一 event_id 只处理一次。

常用错误码 ​

code含义建议
1001SDK 后端密钥无效核对服务端密钥及 Bearer 请求头
1002SDK 已禁用检查管理后台能力配置
1003用户停用提示账号状态
1004参数无效核对字段类型、取值和操作要求
1005请求过快有界退避,避免循环请求
1101 / 1102 / 1103Token 缺失 / 无效 / 过期通过宿主后端重新获取票据
1201会话不可访问或不存在更新列表与页面权限
1202能力关闭依据最新 capabilities 更新入口
1203禁止发送或内容审核未通过展示服务端 msg
1204 / 1205资料 / 申请不可访问刷新对应页面
1206已是好友收敛为现有关系
1207 / 1208消息不存在 / 无撤回权限更新消息状态
1209 / 1210 / 1211群操作禁止 / 邀请无效 / 关系受限按当前权限更新操作
1213–1217通话禁用、未找到、无权限、状态或设备冲突见通话
1218群已禁用展示禁用状态
1500服务内部或配置故障检查服务日志

按任务查阅 ​