根据消息 ID 单向删除单聊漫游消息

大约 3 分钟

根据消息 ID 单向删除单聊漫游消息

功能说明

  • 根据消息 ID 单向删除指定用户的单聊会话的一条或多条(每次最多 50 条)漫游消息。
  • 只能单向删除消息:
    • 该用户的指定漫游消息会从服务器和本地删除,该用户无法在客户端拉取到这些消息。若该会话的全部漫游消息均被删除了,该用户的会话在服务端也会被清除,在客户端拉取会话列表时拉不到该会话。
    • 会话的对端用户不受影响,仍然可以拉取与该用户的漫游消息和会话。
  • 调用该接口前,可通过 获取历史消息记录 获取要删除的消息 ID。如果客户使用 消息回调 功能的话,也可以从自己的服务器上获取,因为消息回调给你的服务器时包含消息 ID。

调用频率上限

100 次/秒/App Key

请求 URL

DELETE https://{host}/{org_name}/{app_name}/rest/message/roaming/chat/user/{userId}?userId={peer_userId}&msgIdList={msgIdList}&isNotify={isNotify}
参数类型是否必需描述
userIdString要删除的单聊漫游消息的所属用户 ID。
peer_userIdString单聊会话中的对端用户 ID。
msgIdListString要删除的消息的消息 ID。每次最多可传入 50 个消息 ID,消息 ID 之间以英文逗号分隔,例如 message ID 1,message ID 2。
isNotifyBoolean消息删除后,是否同步到消息所属用户的所有在线设备。
- (默认)true:是
- false:否

关于请求 URL 中的参数说明,详见 请求 URL 参数介绍

请求示例

# 将 <YourAppToken> 替换为你在服务端生成的 App Token
curl -X DELETE 'https://XXXX/XXXX/XXXX/rest/message/roaming/chat/user/XXXX?userId=XXXX&msgIdList=XXXX&isNotify=false' \
-H 'Authorization: Bearer <YourAppToken>' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'

请求 header 参数

关于 Content-TypeAcceptAuthorization 字段的说明,详见 请求 header 参数说明

响应示例

{
  "requestStatusCode": "ok",
  "timestamp": 1710309184114
}

响应 body 字段

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
requestStatusCodeString返回 ok 表示消息成功删除。
timestampNumberHTTP 响应的 Unix 时间戳,单位为毫秒。

错误码

如果返回的 HTTP 状态码非 200,表示请求失败,可能提示以下错误码:

HTTP 状态码错误类型错误提示可能原因处理建议
400service open exceptionthis appKey not open message roaming消息漫游服务未开通。联系商务开通。
400param exceptiondelete msg list limit can not greater than 50一次删除的消息 ID 数量超过限制(50)。减少一次删除的消息 ID 数量。
400Bad RequestBad Request缺少必填参数,例如查询参数 userIdmsgIdList校验参数是否传入正确。

关于其他错误,你可以参考 响应状态码 了解可能的原因。

上次编辑于: