在线调试

撤回/删除消息

更新时间: 2025/08/21 17:27:49

该接口可以在会话中撤回一条单聊/群聊消息。会话类型包括单聊、群聊、超大群会话。其中撤回消息包括单向撤回和双向撤回两种类型。

应用场景

该接口支持三种操作类型:

应用场景 说明
单向撤回 支持 30 天内单向撤回单聊消息和高级群消息。
  • 撤回之后,消息接收者会收到一条单向撤回的通知,并删除对应的离线消息、漫游消息、历史消息。
  • 撤回之后,消息发送者无感知,可以正常使用漫游消息、历史消息。
  • 双向撤回 在一定时间内(默认 2 分钟),支持双向撤回单聊消息与群聊消息。撤回之后,消息接收者和发送者都将收到一条消息撤回通知,并删除对应的离线消息、漫游消息和历史消息。
  • 您可登录 网易云信控制台,选择 应用,然后进入 IM 即时通讯 > 功能配置 > 基础功能 > 消息撤回时长 配置 IM 消息的可撤回时长,最长可配置 604800 秒(7 天)。
  • 服务端仅支持消息发送者撤回消息,不支持群主或管理员撤回其他群成员的消息(您可以通过客户端 SDK 的 撤回消息功能 实现)。
  • 删除消息 支持删除 30 天内的单聊消息和高级群消息。删除某一条消息时,会删除对应的离线消息、漫游消息和历史消息。删除消息时,客户端无感知。

    调用频率

    单个应用默认最高调用频率请参考 频控说明

    请求信息

    请求 URL

    DELETE https://{endpoint}/im/v2/conversations/{conversation_id}/messages/{message_server_id}
    

    请求 URL 中的 {endpoint} 代表服务地址域名,您可以根据用户服务区域选择中国大陆和海外服务地址,并支持搭建高可用主备域名机制。详情请参考 调用方式 服务地址章节。

    请求头参数

    请求 Header 的参数说明请参考 请求 Header

    路径参数

    参数名称 类型 是否必选 说明 示例
    conversation_id String 会话 ID。会话 ID 需要用户自行拼装,拼装规则:
    owner_id|conversation_type|other_idowner_id|conversation_type|team_id
    • owner_id:发送方账号 ID
    • conversation_type:会话类型,1 代表单聊会话,2 达标高级群会话,3 代表超大群会话
    • other_id:接收方账号 ID(单聊对话)
    • team_id:群组 ID(群组会话)
    单聊会话:account_id1|1|account_id2
    高级群会话:account_id1|2|tid
    超大群会话:account_id1|3|tid
    message_server_id Long 要撤回或删除的服务端消息 ID。 -

    查询参数

    参数名称 类型 是否必选 描述
    type Integer 操作类型。
  • 1:单向撤回消息,支持单聊消息和高级群消息。
  • 2:双向撤回消息,支持单聊消息、高级群消息以及超大群消息。
  • 3:删除消息,支持单聊消息和高级群消息。
  • description String 消息撤回的相应描述,长度上限 128 位字符。默认为 撤回了一条信息
    push_content String 双向撤回的推送文案,只有 type = 2 时该字段才有效。
  • Android 以该字段内容为推送显示文案。
  • iOS 优先使用 push_payload 字段内容为推送文案。若未填写 push_payload,推送文案以 push_content 为准。
  • 超过 500 位字符后,会对文本进行截断。
  • push_payload String 推送对应的 payload,JSON 格式,只有 type = 2 时该字段才有效,长度上限 2048 位字符。更多说明请参考 推送 payload 配置
    route_environment String 消息双向撤回事件需要抄送到环境名称,对应您在 网易云信控制台 中配置的自定义抄送的环境名称。只有 type = 2 时该字段才有效,且该字段仅对单聊会话和高级群会话生效。长度上限 32 位字符。
    attach String 双向消息撤回的通知字段,只有 type = 2 时该字段才有效且该字段仅对单聊会话和高级群会话生效。长度上限 5000 位字符。
    check_team_member_valid Boolean 撤回或删除群消息时,是否需要验证群成员身份,默认为 true(需要)。如设置为 false(不需要),那么不会验证群成员身份。
    message_time Long 消息发送时间戳。不同操作的时间限制,请参考上文 应用场景
    ignore_revoke_time Integer 是否忽略撤回消息的时间检测。默认为 0,表示需要检测撤回时间,检测需要撤回的消息是否在撤回时间范围之内,超出则无法撤回成功。若设置为 1,表示忽略撤回时间检测,撤回的消息没有时间限制。

    响应信息

    响应头参数

    响应 Header 的参数说明请参考 响应 Header

    响应体参数

    参数名称 类型 说明 是否必返回
    code Integer 状态码,200 表示请求成功。
    msg String 提示信息。请求失败时返回错误信息,请求成功时返回 "success"。
    data Object 返回的 JSON 数据对象,请求失败则返回空对象。

    响应体示例

    JSON{
        "code": 200,
        "msg": "success",
        "data": {}
    }
    

    错误码

    本文仅列举部分业务接口错误码,完整列表请参考客户端 API 错误码

    错误码 错误码描述 错误信息示例
    200 请求成功 success
    414 参数错误 parameter error
    102404 用户不存在 account not exist
    107429 不允许撤回发给自己的消息 revoke message to self not allowed
    107328 不允许删除发给自己的消息 delete self message not allowed
    107301 不允许撤回第三方业务消息 revoke third party message not allowed
    107303 仅允许发送者或管理员撤回消息 only sender or manager can revoke message
    107404 消息不存在 message not exist
    108404 群不存在 team not exist
    108311 超大群服务未开通 super team service disabled
    109404 群成员不存在 team member not exist
    500 服务器内部错误 internal server error
    此文档是否对你有帮助?
    有帮助
    去反馈
    • 应用场景
    • 调用频率
    • 请求信息
    • 请求 URL
    • 请求头参数
    • 路径参数
    • 查询参数
    • 响应信息
    • 响应头参数
    • 响应体参数
    • 响应体示例
    • 错误码