SDK 文档

服务端 API

撤回单聊消息

最近更新时间:2020-11-17 17:45:49

功能说明

  • 管理员撤回单聊消息。
  • 该接口可以撤回所有单聊消息,包括客户端发出的单聊消息,由 REST API 单发批量发 接口发出的单聊消息。
  • 若需要撤回由客户端发出的单聊消息,您可以开通 发单聊消息之前回调发单聊消息之后回调 ,通过该回调接口记录每条单聊消息的 MsgKey ,然后填在本接口的 MsgKey 字段进行撤回。您也可以通过 查询单聊消息 查询出待撤回的单聊消息的 MsgKey 后,填在本接口的 MsgKey 字段进行撤回。
  • 若需要撤回由 REST API 单发批量发 接口发出的单聊消息,需要记录这些接口回包里的 MsgKey 字段以进行撤回。
  • 调用该接口撤回消息后,该条消息的离线、漫游存储,以及消息发送方和接收方的客户端的本地缓存都会被撤回。
  • 该接口可撤回的单聊消息没有时间限制,即可以撤回任何时间的单聊消息。
注意:

使用该接口撤回单聊消息后,被撤回的消息不能恢复,请谨慎调用该接口。

接口调用说明

请求 URL 示例

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

请求参数说明

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

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

最高调用频率

200次/秒。

请求包示例

{
    "From_Account": "vinson",
    "To_Account": "dramon",
    "MsgKey": "31906_833502_1572869830"
}

请求包字段说明

字段 类型 属性 说明
From_Account String 必填 消息发送方 UserID
To_Account String 必填 消息接收方 UserID
MsgKey String 必填 待撤回消息的唯一标识。该字段由 REST API 接口 单发单聊消息批量发单聊消息 返回

应答包体示例

  • 正常应答
    {
      "ActionStatus": "OK", 
      "ErrorInfo": "", 
      "ErrorCode": 0
    }
  • 异常应答
    {
      "ActionStatus": "FAIL", 
      "ErrorInfo": "Fail to Parse json data of body, Please check it", 
      "ErrorCode": 90001
    }

应答包字段说明

字段 类型 说明
ActionStatus String 请求处理的结果,OK 表示处理成功,FAIL 表示失败
ErrorCode Integer 错误码,0表示成功,非0表示失败
ErrorInfo String 错误信息

错误码说明

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

错误码 描述
20022 该待撤回的消息不存在,请检查。
20023 该消息已被撤回。
90001 JSON 格式解析失败,请检查请求包是否符合 JSON 规范
90003 JSON 格式请求包体中缺少 To_Account 字段或者 To_Account 帐号不存在
90008 JSON 格式请求包体中缺少 From_Account 字段或者 From_Account 帐号不存在
90009 请求需要 App 管理员权限
90054 撤回请求中的 MsgKey 不合法
91000 服务内部错误,请重试

接口调试工具

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

参考

目录