Skip to content

发送仅特定人可见的消息卡片

调用该接口,可以使应用机器人在指定群聊中发送仅指定用户可见的卡片消息。卡片上将展示 仅对你可见 标识,如下图所示。

image.png

使用场景

仅特定人可见卡片一般作为临时的交互卡片使用,交互过程仅该用户可见,群内其他成员只会看到最终设置完成的提醒卡片,可以减少消息对群聊中不相关用户的打扰,有效降低群消息的噪声。

具体场景示例:在群聊内,管理员需要通过机器人推送的待办事项表单卡片,设置提醒日期和提醒内容。设置完成后再将卡片推送给全部群成员。该过程中,机器人可以先通过本接口推送仅群管理员可见的表单卡片,待管理员与卡片完成交互后,机器人再调用删除仅特定人可见的消息卡片接口,删除该卡片消息,并将完善后的待办事项卡片发送给全部群成员查看。

前提条件

调用该接口前,请确保你的应用已启用机器人能力且机器人在会话群里。

频率限制

对同一个群组发送仅特定人可见的消息卡片时,该接口的调用频率上限是 40 QPS。

使用限制

  • 该接口不支持群模式为话题的话题群(topic),仅支持普通对话群组(group)。相关概念参考群组基本概念

  • 该接口不支持为卡片局部配置多语言,仅支持为卡片全局配置多语言

  • 通过本接口发送的卡片:

    • 不支持转发
    • 只能发送给群聊中的特定用户,且该用户不会收到消息通知
    • 仅在处于在线状态的用户的飞书客户端上可见
    • 如果卡片中使用了@指定人语法,被@的成员将不会收到提及通知

请求

项目
HTTP URLhttps://open.feishu.cn/open-apis/ephemeral/v1/send
HTTP MethodPOST
接口频率限制1000 次/分钟、50 次/秒
支持的应用类型custom,isv
权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用 开启任一权限即可im:message 获取与发送单聊、群组消息 im:message:send_as_bot 以应用的身份发消息 im:message:update 更新消息

请求头

名称类型必填描述
Authorizationstringtenant_access_token 以应用身份调用 API,可读写的数据范围由应用自身的数据权限范围决定。参考自建应用获取 tenant_access_token商店应用获取 tenant_access_token值格式:"Bearer access_token" 示例值:"Bearer t-g1044qeGEDXTB6NDJOGV4JQCYDGHRBARFTGT1234"
Content-Typestring固定值:"application/json; charset=utf-8"

请求体

名称类型必填描述
chat_idstring目标群 ID。仅支持群模式为对话的普通群,不支持话题群。群 ID 获取方式参见群 ID 说明。 示例值:oc_5ad573a6411d72b8305fda3a9c1abcef
open_idstring可见卡片的用户 open_id。ID 获取方式参考如何获取 Open ID注意:你仅需填写 open_idemail、或 user_id 其中之一,且三个字段不可同时为空。若填写多个,字段生效的顺序为 open_id > user_id > email。 推荐使用 open_id 字段。 示例值:ou_449b53ad6aee526f7ed311b216aabcef
user_idstring可见卡片的用户 user_id。ID 获取方式参考如何获取 User ID注意:你仅需填写 open_idemail、或 user_id 其中之一,且三个字段不可同时为空。若填写多个,字段生效的顺序为 open_id > user_id > email。 推荐使用 open_id 字段。 示例值:gg895344
emailstring可见卡片的用户邮箱地址。 注意:你仅需填写 open_idemail、或 user_id 其中之一,且三个字段不可同时为空。若填写多个,字段生效的顺序为 open_id > user_id > email。 推荐使用 open_id 字段。 示例值:zhangmin@feishu.com
msg_typestring消息的类型,固定取值 interactive示例值:interactive
cardobject消息卡片的内容。支持卡片 JSON搭建工具构建的卡片模板。 - 要使用卡片 JSON,参考卡片 JSON 结构。示例值可参考下文的请求体示例。 - 要使用搭建工具构建的卡片模板,你需传入 typedata 参数。详情参考下文示例。

请求体示例

  • 使用 JSON 发送卡片示例(以 JSON 2.0 结构为例)

    json
    {
        "open_id": "ou_b9600a00cda86b8fad2378eafe3abcef",
        "chat_id": "oc_20aa1ed9b18ba49f73f5773453aabcef",
        "msg_type": "interactive",
        "card": {  // 此处传入完整卡片 JSON,支持 1.0 和 2.0 结构
            "schema": "2.0",
            "config": {
                "update_multi": true,
                "style": {
                    "text_size": {
                        "normal_v2": {
                            "default": "normal",
                            "pc": "normal",
                            "mobile": "heading"
                        }
                    }
                }
            },
            "body": {
                "direction": "vertical",
                "padding": "12px 12px 12px 12px",
                "elements": [
                    {
                        "tag": "markdown",
                        "content": "西湖,位于中国浙江省杭州市西湖区龙井路1号,杭州市区西部,汇水面积为21.22平方千米,湖面面积为6.38平方千米。",
                        "text_align": "left",
                        "text_size": "normal_v2",
                        "margin": "0px 0px 0px 0px"
                    },
                    {
                        "tag": "button",
                        "text": {
                            "tag": "plain_text",
                            "content": "🌞更多景点介绍"
                        },
                        "type": "default",
                        "width": "default",
                        "size": "medium",
                        "behaviors": [
                            {
                                "type": "open_url",
                                "default_url": "https://baike.baidu.com/item/%E8%A5%BF%E6%B9%96/4668821",
                                "pc_url": "",
                                "ios_url": "",
                                "android_url": ""
                            }
                        ],
                        "margin": "0px 0px 0px 0px"
                    }
                ]
            },
            "header": {
                "title": {
                    "tag": "plain_text",
                    "content": "今日旅游推荐"
                },
                "subtitle": {
                    "tag": "plain_text",
                    "content": ""
                },
                "template": "blue",
                "padding": "12px 12px 12px 12px"
            }
        }
    }
  • 使用搭建工具的卡片模板发送卡片示例

    json
    {
        "open_id": "ou_b9600a00cda86b8fad2378eafe3abcef",
        "chat_id": "oc_20aa1ed9b18ba49f73f5773453aabcef",
        "msg_type": "interactive",
        "card": {
            "type": "template",
            "data": {
                "template_id": "AAqigYkzabcef"  // 此处填写实际卡片模板 ID
            }
        }
    }

    cardtypedata 参数说明如下表所示:

参数必填说明
type卡片类型。要发送由搭建工具搭建的卡片(也称卡片模板),固定取值为 template
data卡片模板的数据,要发送由搭建工具搭建的卡片,此处需传入卡片模板 ID、卡片版本号等。
└ template_id搭建工具中创建的卡片(也称卡片模板)的 ID,如 AAqigYkzabcef。可在搭建工具中通过复制卡片模板 ID 获取。 image.png
└ template_version_name搭建工具中创建的卡片的版本号,如 1.0.0。卡片发布后,将生成版本号。可在搭建工具 版本管理 处获取。 image.png 注意: 若不填此字段,将默认使用该卡片的最新版本。即在搭建工具发布卡片新版本后,该新版本的卡片内容将立即对卡片 API 调用生效。
└└ template_variable若卡片绑定了变量,你需在该字段中传入实际变量数据的值。详情参考配置卡片变量

响应

响应体

参数类型说明
codeint返回码,非 0 表示失败
msgstring返回码描述
data--
 ∟message_idstring消息 ID

响应体示例

json
{
    "code": 0,
    "data": {
        "message_id": "om_fd2057276f16243756ff8eb6fcdabcef"
    },
    "msg": "ok"
}

错误码

具体可参考:服务端错误码说明

内容来源:飞书开放平台 · 自动爬取整理