获取消息表情回复
获取指定消息内的表情回复列表,支持仅获取特定类型的表情回复。
前提条件
- 应用需要开启机器人能力。
- 调用当前接口的机器人或者用户,需要在待查询的消息所属的会话内。
使用限制
已被撤回的消息无法获取表情回复列表。
请求
| 项目 | 值 |
|---|---|
| HTTP URL | https://open.feishu.cn/open-apis/im/v1/messages/:message_id/reactions |
| HTTP Method | GET |
| 接口频率限制 | 1000 次/分钟、50 次/秒 |
| 支持的应用类型 | custom,isv |
| 权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用 开启任一权限即可 | im:message.reactions:read 查看消息表情回复 im:message:readonly 获取单聊、群组消息 |
| 字段权限要求 | > Tip: 该接口返回体中存在下列敏感字段,仅当开启对应的权限后才会返回;如果无需获取这些字段,则不建议申请 contact:user.employee_id:readonly 获取用户 user ID |
请求头
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Authorization | string | 是 | tenant_access_token 或 user_access_token 值格式:"Bearer access_token" 示例值:"Bearer u-7f1bcd13fc57d46bac21793a18e560" 了解更多:如何选择与获取 access token |
路径参数
| 名称 | 类型 | 描述 |
|---|---|---|
message_id | string | 待查询的消息ID。ID 获取方式: - 调用发送消息接口后,从响应结果的 message_id 参数获取。 - 监听接收消息事件,当触发该事件后可以从事件体内获取消息的 message_id。 - 调用获取会话历史消息接口,从响应结果的 message_id 参数获取。示例值:"om_8964d1b4*********2b31383276113" |
查询参数
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
reaction_type | string | 否 | 待查询的表情类型,支持的枚举值参考表情文案说明中的 emoji_type 值。 注意:该参数为可选参数,不传入该参数时将查询消息内所有的表情回复。 示例值:LAUGH |
page_token | string | 否 | 分页标记,第一次请求不填,表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token,下次遍历可采用该 page_token 获取查询结果 示例值:YhljsPiGfUgnVAg9urvRFd-BvSqRL20wMZNAWfa9xXkud6UKCybPuUgQ1vM26dj6 |
page_size | int | 否 | 分页大小,用于限制一次请求返回的数据条目数。 默认值:20 示例值:10 数据校验规则: - 最大值: 50 |
user_id_type | string | 否 | 用户 ID 类型 示例值:open_id 可选值有: - open_id: 标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。了解更多:如何获取 Open ID - union_id: 标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的,在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID,应用开发商可以把同个用户在多个应用中的身份关联起来。了解更多:如何获取 Union ID? - user_id: 标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内,一个用户的 User ID 在所有应用(包括商店应用)中都保持一致。User ID 主要用于在不同的应用间打通用户数据。了解更多:如何获取 User ID?默认值: open_id当值为 user_id,字段权限要求: contact:user.employee_id:readonly 获取用户 user ID |
响应
响应体
| 名称 | 类型 | 描述 |
|---|---|---|
code | int | 错误码,非 0 表示失败 |
msg | string | 错误描述 |
data | \- | - |
└ items | message.reaction\[\] | 表情回复列表。 |
└ reaction_id | string | 表情回复 ID。 |
└ operator | operator | 添加表情回复的操作人 |
└ operator_id | string | 操作人 ID,具体的取值与 operator_type 相关: - 当 operator_type 取值 app 时返回机器人的应用 ID(app_id)。 - 当 operator_type 取值 user 时返回用户的 ID(ID 类型与查询参数 user_id_type 的取值一致)。 |
└ operator_type | string | 操作人身份。 可选值有: - app: 应用 - user: 用户 |
└ action_time | string | 添加消息表情回复的时间。Unix 时间戳,单位:ms |
└ reaction_type | emoji | 表情类型 |
└ emoji_type | string | emoji 类型。emoji_type 值对应的表情参考表情文案说明。 |
└ has_more | boolean | 是否还有更多项 |
└ page_token | string | 分页标记,当 has_more 为 true 时,会同时返回新的 page_token,否则不返回 page_token |
响应体示例
json
{
"code": 0,
"msg": "success",
"data": {
"items": [
{
"reaction_id": "ZCaCIjUBVVWSrm5L-3ZTw****",
"operator": {
"operator_id": "ou_ff0b7ba35fb****",
"operator_type": "user"
},
"action_time": "1626086391570",
"reaction_type": {
"emoji_type": "SMILE"
}
}
],
"has_more": true,
"page_token": "YhljsPiGfUgnVAg9urvRFd-BvSqRL****"
}
}错误码
| HTTP状态码 | 错误码 | 描述 | 排查建议 |
|---|---|---|---|
| 400 | 230110 | Action unavailable as the message has been deleted. | 消息被删除,无法进行操作。 |
| 400 | 231001 | reaction type is invalid. | 表情类型不合法。请参考表情文案说明,设置正确的 emoji_type 值。 |
| 400 | 231003 | The message is not found, maybe not exist or deleted. | 找不到目标消息,可能因为传入的消息 ID 有误或者消息已经被撤回。 |
| 400 | 231008 | The operator has no access to the message. | 操作人对该消息没有访问权限,通常是因为操作人不在消息所在会话内。 |
| 400 | 231012 | The request has an invalid pageToken. | page_token 参数不合法。请根据 page_token 参数描述,设置正确的值。 |
| 400 | 231013 | The request has an invalid AuthType. | 请求的授权方式不合法。没有使用 tenant_access_token 或者 user_access_token 进行授权。 |
| 400 | 231014 | user_id_type is invalid. | user_id_type 不合法。未使用 open_id,union_id,user_id 三者之一。 |
| 400 | 231018 | The message is invisible to the operator. | 该消息对于操作者不可见,无法进行本操作。 |
更多错误码信息,参见通用错误码。
