947 lines
82 KiB
Markdown
947 lines
82 KiB
Markdown
|
> 本文由 [简悦 SimpRead](http://ksria.com/simpread/) 转码, 原文地址 [developer.work.weixin.qq.com](https://developer.work.weixin.qq.com/document/path/96458#%E5%9B%BE%E6%96%87%E6%B6%88%E6%81%AF)
|
|||
|
|
|||
|
> 目录
|
|||
|
|
|||
|
目录
|
|||
|
|
|||
|
* [接口定义](#%E6%8E%A5%E5%8F%A3%E5%AE%9A%E4%B9%89)
|
|||
|
* [消息类型](#%E6%B6%88%E6%81%AF%E7%B1%BB%E5%9E%8B)
|
|||
|
* [文本消息](#%E6%96%87%E6%9C%AC%E6%B6%88%E6%81%AF)
|
|||
|
* [图片消息](#%E5%9B%BE%E7%89%87%E6%B6%88%E6%81%AF)
|
|||
|
* [语音消息](#%E8%AF%AD%E9%9F%B3%E6%B6%88%E6%81%AF)
|
|||
|
* [视频消息](#%E8%A7%86%E9%A2%91%E6%B6%88%E6%81%AF)
|
|||
|
* [文件消息](#%E6%96%87%E4%BB%B6%E6%B6%88%E6%81%AF)
|
|||
|
* [文本卡片消息](#%E6%96%87%E6%9C%AC%E5%8D%A1%E7%89%87%E6%B6%88%E6%81%AF)
|
|||
|
* [图文消息](#%E5%9B%BE%E6%96%87%E6%B6%88%E6%81%AF)
|
|||
|
* [图文消息(mpnews)](#%E5%9B%BE%E6%96%87%E6%B6%88%E6%81%AF%EF%BC%88mpnews%EF%BC%89)
|
|||
|
* [markdown 消息](#markdown%E6%B6%88%E6%81%AF)
|
|||
|
* [小程序通知消息](#%E5%B0%8F%E7%A8%8B%E5%BA%8F%E9%80%9A%E7%9F%A5%E6%B6%88%E6%81%AF)
|
|||
|
* [模板卡片消息](#%E6%A8%A1%E6%9D%BF%E5%8D%A1%E7%89%87%E6%B6%88%E6%81%AF)
|
|||
|
* [文本通知型](#%E6%96%87%E6%9C%AC%E9%80%9A%E7%9F%A5%E5%9E%8B)
|
|||
|
* [图文展示型](#%E5%9B%BE%E6%96%87%E5%B1%95%E7%A4%BA%E5%9E%8B)
|
|||
|
* [按钮交互型](#%E6%8C%89%E9%92%AE%E4%BA%A4%E4%BA%92%E5%9E%8B)
|
|||
|
* [投票选择型](#%E6%8A%95%E7%A5%A8%E9%80%89%E6%8B%A9%E5%9E%8B)
|
|||
|
* [多项选择型](#%E5%A4%9A%E9%A1%B9%E9%80%89%E6%8B%A9%E5%9E%8B)
|
|||
|
* [附录](#%E9%99%84%E5%BD%95)
|
|||
|
* [支持的 markdown 语法](#%E6%94%AF%E6%8C%81%E7%9A%84markdown%E8%AF%AD%E6%B3%95)
|
|||
|
* [id 转译说明](#id%E8%BD%AC%E8%AF%91%E8%AF%B4%E6%98%8E)
|
|||
|
|
|||
|
[](#%E6%8E%A5%E5%8F%A3%E5%AE%9A%E4%B9%89)接口定义
|
|||
|
---------------------------------------------
|
|||
|
|
|||
|
应用支持推送文本、图片、视频、文件、图文等类型。
|
|||
|
|
|||
|
**请求方式:**POST(**HTTPS**)
|
|||
|
**请求地址:** https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>access_token</td><td>是</td><td>调用接口凭证</td></tr></tbody></table>
|
|||
|
|
|||
|
> - 各个消息类型的具体 POST 格式请阅后续 “消息类型” 部分。
|
|||
|
> - 如果有在管理端对应用设置 “在微工作台中始终进入主页”,应用在微信端只能接收到文本消息,并且文本消息的长度限制为 20 字节,超过 20 字节会被截断。同时其他消息类型也会转换为文本消息,提示用户到企业微信查看。
|
|||
|
> - 支持 id 转译,将 userid / 部门 id 转成对应的用户名 / 部门名,在企业授权了会话内容存档接口权限时,也可以将消息 id 和群 id 转成对应的消息内容 / 群名称,目前仅**文本 / 文本卡片 / 图文 / 图文(mpnews)/ 任务卡片 / 小程序通知 / 模版消息 / 模板卡片消息**这八种消息类型的**部分字段**支持。具体支持的范围和语法,请查看附录 [id 转译说明](#10167/id%E8%BD%AC%E8%AF%91%E8%AF%B4%E6%98%8E)。
|
|||
|
> - 支持重复消息检查,当指定 `"enable_duplicate_check": 1`开启: 表示在一定时间间隔内,同样内容(请求 json)的消息,不会重复收到;时间间隔可通过`duplicate_check_interval`指定,默认`1800秒`。
|
|||
|
> - 从 2021 年 2 月 4 日开始,企业关联添加的「小程序」应用,也可以发送文本、图片、视频、文件、图文等各种类型的消息了。
|
|||
|
> **调用建议**:大部分企业应用在每小时的 0 分或 30 分触发推送消息,容易造成资源挤占,从而投递不够及时,建议尽量避开这两个时间点进行调用。
|
|||
|
> **频率限制**:每应用不可超过账号上限数 * 200 人次 / 天(注:若调用 api 一次发给 1000 人,算 1000 人次;若企业账号上限是 500 人,则每个应用每天可发送 100000 人次的消息)。每应用对同一个成员不可超过 30 次 / 分钟,1000 次 / 小时,超过部分会被丢弃不下发
|
|||
|
|
|||
|
**返回示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"errcode" : 0,
|
|||
|
"errmsg" : "ok",
|
|||
|
"invaliduser" : "userid1|userid2",
|
|||
|
"invalidparty" : "partyid1|partyid2",
|
|||
|
"invalidtag": "tagid1|tagid2",
|
|||
|
"unlicenseduser" : "userid3|userid4",
|
|||
|
"msgid": "xxxx",
|
|||
|
"response_code": "xyzxyz"
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
> 如果部分接收人无权限或不存在,发送仍然执行,但会返回无效的部分(即 invaliduser 或 invalidparty 或 invalidtag 或 unlicenseduser),常见的原因是**接收人不在应用的可见范围内**。
|
|||
|
> 权限包含**应用可见范围**和**基础接口权限** (基础账号、互通账号均可),unlicenseduser 中的用户在应用可见范围内但没有基础接口权限。
|
|||
|
> 如果**全部**接收人无权限或不存在,则本次调用返回失败,errcode 为 81013。
|
|||
|
> 返回包中的 userid,不区分大小写,统一转为小写
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>说明</th></tr></thead><tbody><tr><td>errcode</td><td>返回码</td></tr><tr><td>errmsg</td><td>对返回码的文本描述内容</td></tr><tr><td>invaliduser</td><td>不合法的 userid,不区分大小写,统一转为小写</td></tr><tr><td>invalidparty</td><td>不合法的 partyid</td></tr><tr><td>invalidtag</td><td>不合法的标签 id</td></tr><tr><td>unlicenseduser</td><td>没有基础接口许可 (包含已过期) 的 userid</td></tr><tr><td>msgid</td><td>消息 id,用于<a href="#31947" rel="nofollow">撤回应用消息</a></td></tr><tr><td>response_code</td><td>仅消息类型为 “按钮交互型”,“投票选择型” 和“多项选择型”的模板卡片消息返回,应用可使用 response_code 调用<a href="#32086" rel="nofollow">更新模版卡片消息</a>接口,72 小时内有效,且只能使用一次</td></tr></tbody></table>
|
|||
|
|
|||
|
[](#%E6%B6%88%E6%81%AF%E7%B1%BB%E5%9E%8B)消息类型
|
|||
|
---------------------------------------------
|
|||
|
|
|||
|
### [](#%E6%96%87%E6%9C%AC%E6%B6%88%E6%81%AF)文本消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1|PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "text",
|
|||
|
"agentid" : 1,
|
|||
|
"text" : {
|
|||
|
"content" : "你的快递已到,请携带工卡前往邮件中心领取。\n出发前可查看<a href=\"https://work.weixin.qq.com\">邮件中心视频实况</a>,聪明避开排队。"
|
|||
|
},
|
|||
|
"safe":0,
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>指定接收消息的成员,成员 ID 列表(多个接收者用‘|’分隔,最多支持 1000 个)。<br>特殊情况:指定为 "@all",则向该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>指定接收消息的部门,部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。<br>当 touser 为 "@all" 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>指定接收消息的标签,标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。<br>当 touser 为 "@all" 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:text</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>content</td><td>是</td><td>消息内容,最长不超过 2048 个字节,超过将截断<strong>(支持 id 转译)</strong></td></tr><tr><td>safe</td><td>否</td><td>表示是否是保密消息,0 表示可对外分享,1 表示不能分享且内容显示水印,默认为 0</td></tr><tr><td>enable_id_trans</td><td>否</td><td>表示是否开启 id 转译,0 表示否,1 表示是,默认 0。</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
> touser、toparty、totag 不能同时为空,后面不再强调。
|
|||
|
|
|||
|
**文本消息展现:**
|
|||
|

|
|||
|
|
|||
|
**特殊说明:**
|
|||
|
其中 text 参数的 content 字段可以支持换行、以及 A 标签,即可打开自定义的网页(可参考以上示例代码)(注意:换行符请用转义过的 \ n)
|
|||
|
|
|||
|
### [](#%E5%9B%BE%E7%89%87%E6%B6%88%E6%81%AF)图片消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1|PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "image",
|
|||
|
"agentid" : 1,
|
|||
|
"image" : {
|
|||
|
"media_id" : "MEDIA_ID"
|
|||
|
},
|
|||
|
"safe":0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**请求参数:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:image</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>media_id</td><td>是</td><td>图片媒体文件 id,可以调用上传临时素材接口获取</td></tr><tr><td>safe</td><td>否</td><td>表示是否是保密消息,0 表示可对外分享,1 表示不能分享且内容显示水印,默认为 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
### [](#%E8%AF%AD%E9%9F%B3%E6%B6%88%E6%81%AF)语音消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1|PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "voice",
|
|||
|
"agentid" : 1,
|
|||
|
"voice" : {
|
|||
|
"media_id" : "MEDIA_ID"
|
|||
|
},
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:voice</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>media_id</td><td>是</td><td>语音文件 id,可以调用<a href="#10112" rel="nofollow">上传临时素材</a>接口获取</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
### [](#%E8%A7%86%E9%A2%91%E6%B6%88%E6%81%AF)视频消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1|PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "video",
|
|||
|
"agentid" : 1,
|
|||
|
"video" : {
|
|||
|
"media_id" : "MEDIA_ID",
|
|||
|
"title" : "Title",
|
|||
|
"description" : "Description"
|
|||
|
},
|
|||
|
"safe":0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:video</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>media_id</td><td>是</td><td>视频媒体文件 id,可以调用<a href="#10112" rel="nofollow">上传临时素材</a>接口获取</td></tr><tr><td>title</td><td>否</td><td>视频消息的标题,不超过 128 个字节,超过会自动截断</td></tr><tr><td>description</td><td>否</td><td>视频消息的描述,不超过 512 个字节,超过会自动截断</td></tr><tr><td>safe</td><td>否</td><td>表示是否是保密消息,0 表示可对外分享,1 表示不能分享且内容显示水印,默认为 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
|
|||
|
**视频消息展现:**
|
|||
|

|
|||
|
|
|||
|
### [](#%E6%96%87%E4%BB%B6%E6%B6%88%E6%81%AF)文件消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1|PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "file",
|
|||
|
"agentid" : 1,
|
|||
|
"file" : {
|
|||
|
"media_id" : "1Yv-zXfHjSjU-7LH-GwtYqDGS-zz6w22KmWAT5COgP7o"
|
|||
|
},
|
|||
|
"safe":0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:file</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>media_id</td><td>是</td><td>文件 id,可以调用上传临时素材接口获取</td></tr><tr><td>safe</td><td>否</td><td>表示是否是保密消息,0 表示可对外分享,1 表示不能分享且内容显示水印,默认为 0,保密消息支持以下格式文件: txt、pdf、doc、docx、ppt、pptx、xls、xlsx、xml、jpg、jpeg、png、bmp、gif</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
|
|||
|
**文件消息展现:**
|
|||
|

|
|||
|
|
|||
|
### [](#%E6%96%87%E6%9C%AC%E5%8D%A1%E7%89%87%E6%B6%88%E6%81%AF)文本卡片消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "textcard",
|
|||
|
"agentid" : 1,
|
|||
|
"textcard" : {
|
|||
|
"title" : "领奖通知",
|
|||
|
"description" : "<div class=\"gray\">2016年9月26日</div> <div class=\"normal\">恭喜你抽中iPhone 7一台,领奖码:xxxx</div><div class=\"highlight\">请于2016年10月10日前联系行政同事领取</div>",
|
|||
|
"url" : "URL",
|
|||
|
"btntxt":"更多"
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:textcard</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>title</td><td>是</td><td>标题,不超过 128 个字符,超过会自动截断<strong>(支持 id 转译)</strong></td></tr><tr><td>description</td><td>是</td><td>描述,不超过 512 个字符,超过会自动截断<strong>(支持 id 转译)</strong></td></tr><tr><td>url</td><td>是</td><td>点击后跳转的链接。最长 2048 字节,请确保包含了协议头 (http/https)</td></tr><tr><td>btntxt</td><td>否</td><td>按钮文字。 默认为 “详情”, 不超过 4 个文字,超过自动截断。</td></tr><tr><td>enable_id_trans</td><td>否</td><td>表示是否开启 id 转译,0 表示否,1 表示是,默认 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
**文本卡片消息展现 :**
|
|||
|

|
|||
|
|
|||
|
**特殊说明**:
|
|||
|
卡片消息的展现形式非常灵活,支持使用 br 标签或者空格来进行换行处理,也支持使用 div 标签来使用不同的字体颜色,目前内置了 3 种文字颜色:灰色 (gray)、高亮 (highlight)、默认黑色 (normal),将其作为 div 标签的 class 属性即可,具体用法请参考上面的示例。
|
|||
|
|
|||
|
### [](#%E5%9B%BE%E6%96%87%E6%B6%88%E6%81%AF)图文消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "news",
|
|||
|
"agentid" : 1,
|
|||
|
"news" : {
|
|||
|
"articles" : [
|
|||
|
{
|
|||
|
"title" : "中秋节礼品领取",
|
|||
|
"description" : "今年中秋节公司有豪礼相送",
|
|||
|
"url" : "URL",
|
|||
|
"picurl" : "https://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png",
|
|||
|
"appid": "wx123123123123123",
|
|||
|
"pagepath": "pages/index?userid=zhangsan&orderid=123123123"
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:news</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>articles</td><td>是</td><td>图文消息,一个图文消息支持 1 到 8 条图文</td></tr><tr><td>title</td><td>是</td><td>标题,不超过 128 个字节,超过会自动截断<strong>(支持 id 转译)</strong></td></tr><tr><td>description</td><td>否</td><td>描述,不超过 512 个字节,超过会自动截断<strong>(支持 id 转译)</strong></td></tr><tr><td>url</td><td>否</td><td>点击后跳转的链接。 最长 2048 字节,请确保包含了协议头 (http/https),小程序或者 url 必须填写一个</td></tr><tr><td>picurl</td><td>否</td><td>图文消息的图片链接,最长 2048 字节,支持 JPG、PNG 格式,较好的效果为大图 1068*455,小图 150*150。</td></tr><tr><td>appid</td><td>否</td><td>小程序 appid,必须是与当前应用关联的小程序,appid 和 pagepath 必须同时填写,填写后会忽略 url 字段</td></tr><tr><td>pagepath</td><td>否</td><td>点击消息卡片后的小程序页面,最长 128 字节,仅限本小程序内的页面。appid 和 pagepath 必须同时填写,填写后会忽略 url 字段</td></tr><tr><td>enable_id_trans</td><td>否</td><td>表示是否开启 id 转译,0 表示否,1 表示是,默认 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
|
|||
|
**图文消息展现:**
|
|||
|

|
|||
|
|
|||
|
### [](#%E5%9B%BE%E6%96%87%E6%B6%88%E6%81%AF%EF%BC%88mpnews%EF%BC%89)图文消息(mpnews)
|
|||
|
|
|||
|
> mpnews 类型的图文消息,跟普通的图文消息一致,唯一的差异是图文内容存储在企业微信。
|
|||
|
> 多次发送 mpnews,会被认为是不同的图文,阅读、点赞的统计会被分开计算。
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag": "TagID1 | TagID2",
|
|||
|
"msgtype" : "mpnews",
|
|||
|
"agentid" : 1,
|
|||
|
"mpnews" : {
|
|||
|
"articles":[
|
|||
|
{
|
|||
|
"title": "Title",
|
|||
|
"thumb_media_id": "MEDIA_ID",
|
|||
|
"author": "Author",
|
|||
|
"content_source_url": "URL",
|
|||
|
"content": "Content",
|
|||
|
"digest": "Digest description"
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
"safe":0,
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:mpnews</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>articles</td><td>是</td><td>图文消息,一个图文消息支持 1 到 8 条图文</td></tr><tr><td>title</td><td>是</td><td>标题,不超过 128 个字节,超过会自动截断<strong>(支持 id 转译)</strong></td></tr><tr><td>thumb_media_id</td><td>是</td><td>图文消息缩略图的 media_id, 可以通过<a href="#10112" rel="nofollow">素材管理</a>接口获得。此处 thumb_media_id 即上传接口返回的 media_id</td></tr><tr><td>author</td><td>否</td><td>图文消息的作者,不超过 64 个字节</td></tr><tr><td>content_source_url</td><td>否</td><td>图文消息点击 “阅读原文” 之后的页面链接</td></tr><tr><td>content</td><td>是</td><td>图文消息的内容,支持 html 标签,不超过 666 K 个字节<strong>(支持 id 转译)</strong></td></tr><tr><td>digest</td><td>否</td><td>图文消息的描述,不超过 512 个字节,超过会自动截断<strong>(支持 id 转译)</strong></td></tr><tr><td>safe</td><td>否</td><td>表示是否是保密消息,0 表示可对外分享,1 表示不能分享且内容显示水印,2 表示仅限在企业内分享,默认为 0;注意仅 mpnews 类型的消息支持 safe 值为 2,其他消息类型不支持</td></tr><tr><td>enable_id_trans</td><td>否</td><td>表示是否开启 id 转译,0 表示否,1 表示是,默认 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
### [](#markdown%E6%B6%88%E6%81%AF)markdown 消息
|
|||
|
|
|||
|
> 目前仅支持 [markdown 语法的子集](#10167/%E6%94%AF%E6%8C%81%E7%9A%84markdown%E8%AF%AD%E6%B3%95)
|
|||
|
> 微工作台(原企业号)不支持展示 markdown 消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1|PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype": "markdown",
|
|||
|
"agentid" : 1,
|
|||
|
"markdown": {
|
|||
|
"content": "您的会议室已经预定,稍后会同步到`邮箱` \n>**事项详情** \n>事 项:<font color=\"info\">开会</font> \n>组织者:@miglioguan \n>参与者:@miglioguan、@kunliu、@jamdeezhou、@kanexiong、@kisonwang \n> \n>会议室:<font color=\"info\">广州TIT 1楼 301</font> \n>日 期:<font color=\"warning\">2018年5月18日</font> \n>时 间:<font color=\"comment\">上午9:00-11:00</font> \n> \n>请准时参加会议。 \n> \n>如需修改会议信息,请点击:[修改会议信息](https://work.weixin.qq.com)"
|
|||
|
},
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**示例效果:**
|
|||
|

|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:markdown</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>content</td><td>是</td><td>markdown 内容,最长不超过 2048 个字节,必须是 utf8 编码</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
### [](#%E5%B0%8F%E7%A8%8B%E5%BA%8F%E9%80%9A%E7%9F%A5%E6%B6%88%E6%81%AF)小程序通知消息
|
|||
|
|
|||
|
> 小程序通知消息只允许绑定了小程序的应用发送,~之前,消息会通过统一的会话【小程序通知】发送给用户~。
|
|||
|
> 从 2019 年 6 月 28 日起,用户收到的小程序通知会出现在各个独立的应用中。
|
|||
|
> 不支持 @all 全员发送
|
|||
|
> 微工作台(原企业号)不支持展示小程序通知消息
|
|||
|
|
|||
|
**请求示例:**
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "zhangsan|lisi",
|
|||
|
"toparty": "1|2",
|
|||
|
"totag": "1|2",
|
|||
|
"msgtype" : "miniprogram_notice",
|
|||
|
"miniprogram_notice" : {
|
|||
|
"appid": "wx123123123123123",
|
|||
|
"page": "pages/index?userid=zhangsan&orderid=123123123",
|
|||
|
"title": "会议室预订成功通知",
|
|||
|
"description": "4月27日 16:16",
|
|||
|
"emphasis_first_item": true,
|
|||
|
"content_item": [
|
|||
|
{
|
|||
|
"key": "会议室",
|
|||
|
"value": "402"
|
|||
|
},
|
|||
|
{
|
|||
|
"key": "会议地点",
|
|||
|
"value": "广州TIT-402会议室"
|
|||
|
},
|
|||
|
{
|
|||
|
"key": "会议时间",
|
|||
|
"value": "2018年8月1日 09:00-09:30"
|
|||
|
},
|
|||
|
{
|
|||
|
"key": "参与人员",
|
|||
|
"value": "周剑轩"
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**示例效果:**
|
|||
|

|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:miniprogram_notice</td></tr><tr><td>appid</td><td>是</td><td>小程序 appid,必须是与当前应用关联的小程序</td></tr><tr><td>page</td><td>否</td><td>点击消息卡片后的小程序页面,最长 1024 个字节,仅限本小程序内的页面。该字段不填则消息点击后不跳转。</td></tr><tr><td>title</td><td>是</td><td>消息标题,长度限制 4-12 个汉字<strong>(支持 id 转译)</strong></td></tr><tr><td>description</td><td>否</td><td>消息描述,长度限制 4-12 个汉字<strong>(支持 id 转译)</strong></td></tr><tr><td>emphasis_first_item</td><td>否</td><td>是否放大第一个 content_item</td></tr><tr><td>content_item</td><td>否</td><td>消息内容键值对,最多允许 10 个 item</td></tr><tr><td>key</td><td>否</td><td>长度 10 个汉字以内</td></tr><tr><td>value</td><td>否</td><td>长度 30 个汉字以内<strong>(支持 id 转译)</strong><br>key 和 value 两个字段同时为空时,该键值对将被忽略</td></tr><tr><td>enable_id_trans</td><td>否</td><td>表示是否开启 id 转译,0 表示否,1 表示是,默认 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
### [](#%E6%A8%A1%E6%9D%BF%E5%8D%A1%E7%89%87%E6%B6%88%E6%81%AF)模板卡片消息
|
|||
|
|
|||
|
> 投票选择型和多项选择型卡片仅企业微信 3.1.12 及以上版本支持
|
|||
|
> 文本通知型、图文展示型和按钮交互型三种卡片仅企业微信 3.1.6 及以上版本支持(但附件下载功能仍需更新至 3.1.12)
|
|||
|
> 微工作台(原企业号)不支持展示模板卡片消息
|
|||
|
|
|||
|
**3.1.18 版本新增**
|
|||
|
|
|||
|
1. source 字段支持设置字体颜色
|
|||
|
2. horizontal_content_list 新增 type 3,代表点击跳转成员详情(仅企业微信 3.1.18 及以上版本支持)
|
|||
|
3. 新增 action_menu(右上角菜单)(仅企业微信 3.1.18 及以上版本支持)
|
|||
|
4. quote_area(引用样式)、image_text_area(左图右文样式)、button_selection(按钮型卡片的下拉框样式) 等字段
|
|||
|
|
|||
|
**特殊说明**
|
|||
|
|
|||
|
1. 仅有 按钮交互型、投票选择型、多项选择型 以及填写了 action_menu 字段的文本通知型、图文展示型的卡片支持回调更新或通过接口更新卡片。
|
|||
|
2. 支持回调更新的卡片可支持用户点击触发交互事件,需要开发者设置的回调接口来处理回调事件,回调协议可见文档 [模板卡片事件推送](#12974/%E6%A8%A1%E6%9D%BF%E5%8D%A1%E7%89%87%E4%BA%8B%E4%BB%B6%E6%8E%A8%E9%80%81),注意 **没有配置回调接口的应用不可发送支持回调的卡片**。
|
|||
|
3. 开发者的服务收到回调事件后,需要根据协议返回相应的数据以更新卡片,对应的协议见文档 [更新模版卡片消息](#12975/%E6%A8%A1%E6%9D%BF%E5%8D%A1%E7%89%87%E6%9B%B4%E6%96%B0%E6%B6%88%E6%81%AF)。
|
|||
|
4. 此接口发送支持回调更新的卡片消息之后,返回的参数里会带上 response_code,可使用 response_code 调用[更新模版卡片消息](#32086)接口,**response_code 72 小时内有效,且只能调用一次接口**。
|
|||
|
|
|||
|
#### [](#%E6%96%87%E6%9C%AC%E9%80%9A%E7%9F%A5%E5%9E%8B)文本通知型
|
|||
|
|
|||
|

|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "template_card",
|
|||
|
"agentid" : 1,
|
|||
|
"template_card" : {
|
|||
|
"card_type" : "text_notice",
|
|||
|
"source" : {
|
|||
|
"icon_url": "图片的url",
|
|||
|
"desc": "企业微信",
|
|||
|
"desc_color": 1
|
|||
|
},
|
|||
|
"action_menu": {
|
|||
|
"desc": "卡片副交互辅助文本说明",
|
|||
|
"action_list": [
|
|||
|
{"text": "接受推送", "key": "A"},
|
|||
|
{"text": "不再推送", "key": "B"}
|
|||
|
]
|
|||
|
},
|
|||
|
"task_id": "task_id",
|
|||
|
"main_title" : {
|
|||
|
"title" : "欢迎使用企业微信",
|
|||
|
"desc" : "您的好友正在邀请您加入企业微信"
|
|||
|
},
|
|||
|
"quote_area": {
|
|||
|
"type": 1,
|
|||
|
"url": "https://work.weixin.qq.com",
|
|||
|
"title": "企业微信的引用样式",
|
|||
|
"quote_text": "企业微信真好用呀真好用"
|
|||
|
},
|
|||
|
"emphasis_content": {
|
|||
|
"title": "100",
|
|||
|
"desc": "核心数据"
|
|||
|
},
|
|||
|
"sub_title_text" : "下载企业微信还能抢红包!",
|
|||
|
"horizontal_content_list" : [
|
|||
|
{
|
|||
|
"keyname": "邀请人",
|
|||
|
"value": "张三"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 1,
|
|||
|
"keyname": "企业微信官网",
|
|||
|
"value": "点击访问",
|
|||
|
"url": "https://work.weixin.qq.com"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 2,
|
|||
|
"keyname": "企业微信下载",
|
|||
|
"value": "企业微信.apk",
|
|||
|
"media_id": "文件的media_id"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 3,
|
|||
|
"keyname": "员工信息",
|
|||
|
"value": "点击查看",
|
|||
|
"userid": "zhangsan"
|
|||
|
}
|
|||
|
],
|
|||
|
"jump_list" : [
|
|||
|
{
|
|||
|
"type": 1,
|
|||
|
"title": "企业微信官网",
|
|||
|
"url": "https://work.weixin.qq.com"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 2,
|
|||
|
"title": "跳转小程序",
|
|||
|
"appid": "小程序的appid",
|
|||
|
"pagepath": "/index.html"
|
|||
|
}
|
|||
|
],
|
|||
|
"card_action": {
|
|||
|
"type": 2,
|
|||
|
"url": "https://work.weixin.qq.com",
|
|||
|
"appid": "小程序的appid",
|
|||
|
"pagepath": "/index.html"
|
|||
|
}
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:template_card</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>card_type</td><td>是</td><td>模板卡片类型,文本通知型卡片填写 "text_notice"</td></tr><tr><td>source</td><td>否</td><td>卡片来源样式信息,不需要来源样式可不填写</td></tr><tr><td>source.icon_url</td><td>否</td><td>来源图片的 url,来源图片的尺寸建议为 72*72</td></tr><tr><td>source.desc</td><td>否</td><td>来源图片的描述,建议不超过 20 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>source.desc_color</td><td>否</td><td>来源文字的颜色,目前支持:0(默认) 灰色,1 黑色,2 红色,3 绿色</td></tr><tr><td>action_menu</td><td>否</td><td>卡片右上角更多操作按钮</td></tr><tr><td>action_menu.desc</td><td>否</td><td>更多操作界面的描述</td></tr><tr><td>action_menu.action_list</td><td>是</td><td>操作列表,列表长度取值范围为 [1, 3]</td></tr><tr><td>action_menu.action_list.text</td><td>是</td><td>操作的描述文案</td></tr><tr><td>action_menu.action_list.key</td><td>是</td><td>操作 key 值,用户点击后,会产生回调事件将本参数作为 EventKey 返回,回调事件会带上该 key 值,最长支持 1024 字节,不可重复</td></tr><tr><td>main_title.title</td><td>否</td><td>一级标题,建议不超过 36 个字,文本通知型卡片本字段非必填,但不可本字段和 sub_title_text 都不填,<strong>(支持 id 转译)</strong></td></tr><tr><td>main_title.desc</td><td>否</td><td>标题辅助信息,建议不超过 44 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>quote_area</td><td>否</td><td>引用文献样式</td></tr><tr><td>quote_area.type</td><td>否</td><td>引用文献样式区域点击事件,0 或不填代表没有点击事件,1 代表跳转 url,2 代表跳转小程序</td></tr><tr><td>quote_area.url</td><td>否</td><td>点击跳转的 url,quote_area.type 是 1 时必填</td></tr><tr><td>quote_area.appid</td><td>否</td><td>点击跳转的小程序的 appid,必须是与当前应用关联的小程序,quote_area.type 是 2 时必填</td></tr><tr><td>quote_area.pagepath</td><td>否</td><td>点击跳转的小程序的 pagepath,quote_area.type 是 2 时选填</td></tr><tr><td>quote_area.title</td><td>否</td><td>引用文献样式的标题</td></tr><tr><td>quote_area.quote_text</td><td>否</td><td>引用文献样式的引用文案</td></tr><tr><td>emphasis_content</td><td>否</td><td>关键数据样式</td></tr><tr><td>emphasis_content.title</td><td>否</td><td>关键数据样式的数据内容,建议不超过 14 个字</td></tr><tr><td>emphasis_content.desc</td><td>否</td><td>关键数据样式的数据描述内容,建议不超过 22 个字</td></tr><tr><td>sub_title_text</td><td>否</td><td>二级普通文本,建议不超过 160 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>horizontal_content_list</td><td>否</td><td>二级标题 + 文本列表,该字段可为空数组,但有数据的话需确认对应字段是否必填,列表长度不超过 6</td
|
|||
|
|
|||
|
#### [](#%E5%9B%BE%E6%96%87%E5%B1%95%E7%A4%BA%E5%9E%8B)图文展示型
|
|||
|
|
|||
|

|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "template_card",
|
|||
|
"agentid" : 1,
|
|||
|
"template_card" : {
|
|||
|
"card_type" : "news_notice",
|
|||
|
"source" : {
|
|||
|
"icon_url": "图片的url",
|
|||
|
"desc": "企业微信",
|
|||
|
"desc_color": 1
|
|||
|
},
|
|||
|
"action_menu": {
|
|||
|
"desc": "卡片副交互辅助文本说明",
|
|||
|
"action_list": [
|
|||
|
{"text": "接受推送", "key": "A"},
|
|||
|
{"text": "不再推送", "key": "B"}
|
|||
|
]
|
|||
|
},
|
|||
|
"task_id": "task_id",
|
|||
|
"main_title" : {
|
|||
|
"title" : "欢迎使用企业微信",
|
|||
|
"desc" : "您的好友正在邀请您加入企业微信"
|
|||
|
},
|
|||
|
"quote_area": {
|
|||
|
"type": 1,
|
|||
|
"url": "https://work.weixin.qq.com",
|
|||
|
"title": "企业微信的引用样式",
|
|||
|
"quote_text": "企业微信真好用呀真好用"
|
|||
|
},
|
|||
|
"image_text_area": {
|
|||
|
"type": 1,
|
|||
|
"url": "https://work.weixin.qq.com",
|
|||
|
"title": "企业微信的左图右文样式",
|
|||
|
"desc": "企业微信真好用呀真好用",
|
|||
|
"image_url": "https://img.iplaysoft.com/wp-content/uploads/2019/free-images/free_stock_photo_2x.jpg"
|
|||
|
},
|
|||
|
"card_image": {
|
|||
|
"url": "图片的url",
|
|||
|
"aspect_ratio": 1.3
|
|||
|
},
|
|||
|
"vertical_content_list": [
|
|||
|
{
|
|||
|
"title": "惊喜红包等你来拿",
|
|||
|
"desc": "下载企业微信还能抢红包!"
|
|||
|
}
|
|||
|
],
|
|||
|
"horizontal_content_list" : [
|
|||
|
{
|
|||
|
"keyname": "邀请人",
|
|||
|
"value": "张三"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 1,
|
|||
|
"keyname": "企业微信官网",
|
|||
|
"value": "点击访问",
|
|||
|
"url": "https://work.weixin.qq.com"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 2,
|
|||
|
"keyname": "企业微信下载",
|
|||
|
"value": "企业微信.apk",
|
|||
|
"media_id": "文件的media_id"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 3,
|
|||
|
"keyname": "员工信息",
|
|||
|
"value": "点击查看",
|
|||
|
"userid": "zhangsan"
|
|||
|
}
|
|||
|
],
|
|||
|
"jump_list" : [
|
|||
|
{
|
|||
|
"type": 1,
|
|||
|
"title": "企业微信官网",
|
|||
|
"url": "https://work.weixin.qq.com"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 2,
|
|||
|
"title": "跳转小程序",
|
|||
|
"appid": "小程序的appid",
|
|||
|
"pagepath": "/index.html"
|
|||
|
}
|
|||
|
],
|
|||
|
"card_action": {
|
|||
|
"type": 2,
|
|||
|
"url": "https://work.weixin.qq.com",
|
|||
|
"appid": "小程序的appid",
|
|||
|
"pagepath": "/index.html"
|
|||
|
}
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:template_card</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>card_type</td><td>是</td><td>模板卡片类型,图文展示型卡片此处填写 "news_notice"</td></tr><tr><td>source</td><td>否</td><td>卡片来源样式信息,不需要来源样式可不填写</td></tr><tr><td>source.icon_url</td><td>否</td><td>来源图片的 url,来源图片的尺寸建议为 72*72</td></tr><tr><td>source.desc</td><td>否</td><td>来源图片的描述,建议不超过 20 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>source.desc_color</td><td>否</td><td>来源文字的颜色,目前支持:0(默认) 灰色,1 黑色,2 红色,3 绿色</td></tr><tr><td>action_menu</td><td>否</td><td>卡片右上角更多操作按钮</td></tr><tr><td>action_menu.desc</td><td>否</td><td>更多操作界面的描述</td></tr><tr><td>action_menu.action_list</td><td>是</td><td>操作列表,列表长度取值范围为 [1, 3]</td></tr><tr><td>action_menu.action_list.text</td><td>是</td><td>操作的描述文案</td></tr><tr><td>action_menu.action_list.key</td><td>是</td><td>操作 key 值,用户点击后,会产生回调事件将本参数作为 EventKey 返回,回调事件会带上该 key 值,最长支持 1024 字节,不可重复</td></tr><tr><td>main_title.title</td><td>是</td><td>一级标题,建议不超过 36 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>main_title.desc</td><td>否</td><td>标题辅助信息,建议不超过 44 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>quote_area</td><td>否</td><td>引用文献样式</td></tr><tr><td>quote_area.type</td><td>否</td><td>引用文献样式区域点击事件,0 或不填代表没有点击事件,1 代表跳转 url,2 代表跳转小程序</td></tr><tr><td>quote_area.url</td><td>否</td><td>点击跳转的 url,quote_area.type 是 1 时必填</td></tr><tr><td>quote_area.appid</td><td>否</td><td>点击跳转的小程序的 appid,必须是与当前应用关联的小程序,quote_area.type 是 2 时必填</td></tr><tr><td>quote_area.pagepath</td><td>否</td><td>点击跳转的小程序的 pagepath,quote_area.type 是 2 时选填</td></tr><tr><td>quote_area.title</td><td>否</td><td>引用文献样式的标题</td></tr><tr><td>quote_area.quote_text</td><td>否</td><td>引用文献样式的引用文案</td></tr><tr><td>image_text_area</td><td>否</td><td>左图右文样式,news_notice 类型的卡片,card_image 和 image_text_area 两者必填一个字段,不可都不填</td></tr><tr><td>image_text_area.type</td><td>否</td><td>左图右文样式区域点击事件,0 或不填代表没有点击事件,1 代表跳转 url,2 代表跳转小程序</td></tr><tr><td>image_text_area.url</td><td>否</td><td>点击跳转的 url,image_text_area.type 是 1 时必填</td></tr><tr><td>image_text_area.appid</td><td>否</td><td>点击跳转的小程序的 appid,必须是与当前应用关联的小程序,image_text_area.type 是 2 时必填</td></tr><tr><td>image_text_area.pagepath</td><td>否</td><td>点击跳转的小程序的 pagepat
|
|||
|
|
|||
|
#### [](#%E6%8C%89%E9%92%AE%E4%BA%A4%E4%BA%92%E5%9E%8B)按钮交互型
|
|||
|
|
|||
|

|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "template_card",
|
|||
|
"agentid" : 1,
|
|||
|
"template_card" : {
|
|||
|
"card_type" : "button_interaction",
|
|||
|
"source" : {
|
|||
|
"icon_url": "图片的url",
|
|||
|
"desc": "企业微信",
|
|||
|
"desc_color": 1
|
|||
|
},
|
|||
|
"action_menu": {
|
|||
|
"desc": "卡片副交互辅助文本说明",
|
|||
|
"action_list": [
|
|||
|
{"text": "接受推送", "key": "A"},
|
|||
|
{"text": "不再推送", "key": "B"}
|
|||
|
]
|
|||
|
},
|
|||
|
"main_title" : {
|
|||
|
"title" : "欢迎使用企业微信",
|
|||
|
"desc" : "您的好友正在邀请您加入企业微信"
|
|||
|
},
|
|||
|
"quote_area": {
|
|||
|
"type": 1,
|
|||
|
"url": "https://work.weixin.qq.com",
|
|||
|
"title": "企业微信的引用样式",
|
|||
|
"quote_text": "企业微信真好用呀真好用"
|
|||
|
},
|
|||
|
"sub_title_text" : "下载企业微信还能抢红包!",
|
|||
|
"horizontal_content_list" : [
|
|||
|
{
|
|||
|
"keyname": "邀请人",
|
|||
|
"value": "张三"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 1,
|
|||
|
"keyname": "企业微信官网",
|
|||
|
"value": "点击访问",
|
|||
|
"url": "https://work.weixin.qq.com"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 2,
|
|||
|
"keyname": "企业微信下载",
|
|||
|
"value": "企业微信.apk",
|
|||
|
"media_id": "文件的media_id"
|
|||
|
},
|
|||
|
{
|
|||
|
"type": 3,
|
|||
|
"keyname": "员工信息",
|
|||
|
"value": "点击查看",
|
|||
|
"userid": "zhangsan"
|
|||
|
}
|
|||
|
],
|
|||
|
"card_action": {
|
|||
|
"type": 2,
|
|||
|
"url": "https://work.weixin.qq.com",
|
|||
|
"appid": "小程序的appid",
|
|||
|
"pagepath": "/index.html"
|
|||
|
},
|
|||
|
"task_id": "task_id",
|
|||
|
"button_selection": {
|
|||
|
"question_key": "btn_question_key1",
|
|||
|
"title": "企业微信评分",
|
|||
|
"option_list": [
|
|||
|
{
|
|||
|
"id": "btn_selection_id1",
|
|||
|
"text": "100分"
|
|||
|
},
|
|||
|
{
|
|||
|
"id": "btn_selection_id2",
|
|||
|
"text": "101分"
|
|||
|
}
|
|||
|
],
|
|||
|
"selected_id": "btn_selection_id1"
|
|||
|
},
|
|||
|
"button_list": [
|
|||
|
{
|
|||
|
"text": "按钮1",
|
|||
|
"style": 1,
|
|||
|
"key": "button_key_1"
|
|||
|
},
|
|||
|
{
|
|||
|
"text": "按钮2",
|
|||
|
"style": 2,
|
|||
|
"key": "button_key_2"
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:template_card</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>card_type</td><td>是</td><td>模板卡片类型,按钮交互型卡片填写 "button_interaction"</td></tr><tr><td>source</td><td>否</td><td>卡片来源样式信息,不需要来源样式可不填写</td></tr><tr><td>source.icon_url</td><td>否</td><td>来源图片的 url,来源图片的尺寸建议为 72*72</td></tr><tr><td>source.desc</td><td>否</td><td>来源图片的描述,建议不超过 20 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>source.desc_color</td><td>否</td><td>来源文字的颜色,目前支持:0(默认) 灰色,1 黑色,2 红色,3 绿色</td></tr><tr><td>action_menu</td><td>否</td><td>卡片右上角更多操作按钮</td></tr><tr><td>action_menu.desc</td><td>否</td><td>更多操作界面的描述</td></tr><tr><td>action_menu.action_list</td><td>是</td><td>操作列表,列表长度取值范围为 [1, 3]</td></tr><tr><td>action_menu.action_list.text</td><td>是</td><td>操作的描述文案</td></tr><tr><td>action_menu.action_list.key</td><td>是</td><td>操作 key 值,用户点击后,会产生回调事件将本参数作为 EventKey 返回,回调事件会带上该 key 值,最长支持 1024 字节,不可重复</td></tr><tr><td>main_title.title</td><td>是</td><td>一级标题,建议不超过 36 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>main_title.desc</td><td>否</td><td>标题辅助信息,建议不超过 44 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>quote_area</td><td>否</td><td>引用文献样式</td></tr><tr><td>quote_area.type</td><td>否</td><td>引用文献样式区域点击事件,0 或不填代表没有点击事件,1 代表跳转 url,2 代表跳转小程序</td></tr><tr><td>quote_area.url</td><td>否</td><td>点击跳转的 url,quote_area.type 是 1 时必填</td></tr><tr><td>quote_area.appid</td><td>否</td><td>点击跳转的小程序的 appid,必须是与当前应用关联的小程序,quote_area.type 是 2 时必填</td></tr><tr><td>quote_area.pagepath</td><td>否</td><td>点击跳转的小程序的 pagepath,quote_area.type 是 2 时选填</td></tr><tr><td>quote_area.title</td><td>否</td><td>引用文献样式的标题</td></tr><tr><td>quote_area.quote_text</td><td>否</td><td>引用文献样式的引用文案</td></tr><tr><td>sub_title_text</td><td>否</td><td>二级普通文本,建议不超过 160 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>horizontal_content_list</td><td>否</td><td>二级标题 + 文本列表,该字段可为空数组,但有数据的话需确认对应字段是否必填,列表长度不超过 6</td></tr><tr><td>horizontal_content_list.type</td><td>否</td><td>链接类型,0 或不填代表不是链接,1 代表跳转 url,2 代表下载附件,3 代表点击跳转成员详情</td></tr><tr><td>horizontal_content_list.keyname</td><td>是</td><td>二级标题,建议不超过 5 个字</td></tr><tr><td>horizontal_content_list.value</td><td>否</td><td>二级文本,如果 horizontal_content_li
|
|||
|
|
|||
|
备注:
|
|||
|
按钮样式
|
|||
|
|
|||
|

|
|||
|
|
|||
|
#### [](#%E6%8A%95%E7%A5%A8%E9%80%89%E6%8B%A9%E5%9E%8B)投票选择型
|
|||
|
|
|||
|

|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "template_card",
|
|||
|
"agentid" : 1,
|
|||
|
"template_card" : {
|
|||
|
"card_type" : "vote_interaction",
|
|||
|
"source" : {
|
|||
|
"icon_url": "图片的url",
|
|||
|
"desc": "企业微信"
|
|||
|
},
|
|||
|
"main_title" : {
|
|||
|
"title" : "欢迎使用企业微信",
|
|||
|
"desc" : "您的好友正在邀请您加入企业微信"
|
|||
|
},
|
|||
|
"task_id": "task_id",
|
|||
|
"checkbox": {
|
|||
|
"question_key": "question_key1",
|
|||
|
"option_list": [
|
|||
|
{
|
|||
|
"id": "option_id1",
|
|||
|
"text": "选择题选项1",
|
|||
|
"is_checked": true
|
|||
|
},
|
|||
|
{
|
|||
|
"id": "option_id2",
|
|||
|
"text": "选择题选项2",
|
|||
|
"is_checked": false
|
|||
|
}
|
|||
|
],
|
|||
|
"mode": 1
|
|||
|
},
|
|||
|
"submit_button": {
|
|||
|
"text": "提交",
|
|||
|
"key": "key"
|
|||
|
}
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:template_card</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>card_type</td><td>是</td><td>模板卡片类型,投票选择型卡片填写 "vote_interaction"</td></tr><tr><td>source</td><td>否</td><td>卡片来源样式信息,不需要来源样式可不填写</td></tr><tr><td>source.icon_url</td><td>否</td><td>来源图片的 url,来源图片的尺寸建议为 72*72</td></tr><tr><td>source.desc</td><td>否</td><td>来源图片的描述,建议不超过 20 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>main_title.title</td><td>是</td><td>一级标题,建议不超过 16 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>main_title.desc</td><td>否</td><td>二级普通文本,建议不超过 160 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>task_id</td><td>是</td><td>任务 id,同一个应用任务 id 不能重复,只能由数字、字母和 “_-@” 组成,最长 128 字节</td></tr><tr><td>checkbox</td><td>是</td><td>选择题样式</td></tr><tr><td>checkbox.question_key</td><td>是</td><td>选择题 key 值,用户提交选项后,会产生回调事件,回调事件会带上该 key 值表示该题,最长支持 1024 字节</td></tr><tr><td>checkbox.mode</td><td>否</td><td>选择题模式,单选:0,多选:1,不填默认 0</td></tr><tr><td>checkbox.option_list</td><td>是</td><td>选项 list,选项个数不超过 20 个,最少 1 个</td></tr><tr><td>checkbox.option_list.id</td><td>是</td><td>选项 id,用户提交选项后,会产生回调事件,回调事件会带上该 id 值表示该选项,最长支持 128 字节,不可重复</td></tr><tr><td>checkbox.option_list.text</td><td>是</td><td>选项文案描述,建议不超过 17 个字</td></tr><tr><td>checkbox.option_list.is_checked</td><td>是</td><td>该选项是否要默认选中</td></tr><tr><td>submit_button</td><td>是</td><td>提交按钮样式</td></tr><tr><td>submit_button.text</td><td>是</td><td>按钮文案,建议不超过 10 个字,不填默认为提交</td></tr><tr><td>submit_button.key</td><td>是</td><td>提交按钮的 key,会产生回调事件将本参数作为 EventKey 返回,最长支持 1024 字节</td></tr><tr><td>enable_id_trans</td><td>否</td><td>表示是否开启 id 转译,0 表示否,1 表示是,默认 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
#### [](#%E5%A4%9A%E9%A1%B9%E9%80%89%E6%8B%A9%E5%9E%8B)多项选择型
|
|||
|
|
|||
|

|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"touser" : "UserID1|UserID2|UserID3",
|
|||
|
"toparty" : "PartyID1 | PartyID2",
|
|||
|
"totag" : "TagID1 | TagID2",
|
|||
|
"msgtype" : "template_card",
|
|||
|
"agentid" : 1,
|
|||
|
"template_card" : {
|
|||
|
"card_type" : "multiple_interaction",
|
|||
|
"source" : {
|
|||
|
"icon_url": "图片的url",
|
|||
|
"desc": "企业微信"
|
|||
|
},
|
|||
|
"main_title" : {
|
|||
|
"title" : "欢迎使用企业微信",
|
|||
|
"desc" : "您的好友正在邀请您加入企业微信"
|
|||
|
},
|
|||
|
"task_id": "task_id",
|
|||
|
"select_list": [
|
|||
|
{
|
|||
|
"question_key": "question_key1",
|
|||
|
"title": "选择器标签1",
|
|||
|
"selected_id": "selection_id1",
|
|||
|
"option_list": [
|
|||
|
{
|
|||
|
"id": "selection_id1",
|
|||
|
"text": "选择器选项1"
|
|||
|
},
|
|||
|
{
|
|||
|
"id": "selection_id2",
|
|||
|
"text": "选择器选项2"
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"question_key": "question_key2",
|
|||
|
"title": "选择器标签2",
|
|||
|
"selected_id": "selection_id3",
|
|||
|
"option_list": [
|
|||
|
{
|
|||
|
"id": "selection_id3",
|
|||
|
"text": "选择器选项3"
|
|||
|
},
|
|||
|
{
|
|||
|
"id": "selection_id4",
|
|||
|
"text": "选择器选项4"
|
|||
|
}
|
|||
|
]
|
|||
|
}
|
|||
|
],
|
|||
|
"submit_button": {
|
|||
|
"text": "提交",
|
|||
|
"key": "key"
|
|||
|
}
|
|||
|
},
|
|||
|
"enable_id_trans": 0,
|
|||
|
"enable_duplicate_check": 0,
|
|||
|
"duplicate_check_interval": 1800
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明:**
|
|||
|
|
|||
|
<table><thead><tr><th>参数</th><th>是否必须</th><th>说明</th></tr></thead><tbody><tr><td>touser</td><td>否</td><td>成员 ID 列表(消息接收者,多个接收者用‘|’分隔,最多支持 1000 个)。特殊情况:指定为 @all,则向关注该企业应用的全部成员发送</td></tr><tr><td>toparty</td><td>否</td><td>部门 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>totag</td><td>否</td><td>标签 ID 列表,多个接收者用‘|’分隔,最多支持 100 个。当 touser 为 @all 时忽略本参数</td></tr><tr><td>msgtype</td><td>是</td><td>消息类型,此时固定为:template_card</td></tr><tr><td>agentid</td><td>是</td><td>企业应用的 id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 <a href="#10975/%E8%8E%B7%E5%8F%96%E4%BC%81%E4%B8%9A%E6%8E%88%E6%9D%83%E4%BF%A1%E6%81%AF" rel="nofollow">获取企业授权信息</a> 获取该参数值</td></tr><tr><td>card_type</td><td>是</td><td>模板卡片类型,多项选择型卡片填写 "multiple_interaction"</td></tr><tr><td>source</td><td>否</td><td>卡片来源样式信息,不需要来源样式可不填写</td></tr><tr><td>source.icon_url</td><td>否</td><td>来源图片的 url,来源图片的尺寸建议为 72*72</td></tr><tr><td>source.desc</td><td>否</td><td>来源图片的描述,建议不超过 20 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>main_title.title</td><td>是</td><td>一级标题,建议不超过 36 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>main_title.desc</td><td>否</td><td>标题辅助信息,建议不超过 160 个字,<strong>(支持 id 转译)</strong></td></tr><tr><td>task_id</td><td>是</td><td>任务 id,同一个应用任务 id 不能重复,只能由数字、字母和 “_-@” 组成,最长 128 字节</td></tr><tr><td>select_list</td><td>是</td><td>下拉式的选择器列表,multiple_interaction 类型的卡片该字段不可为空,一个消息最多支持 3 个选择器</td></tr><tr><td>select_list.question_key</td><td>是</td><td>下拉式的选择器题目的 key,用户提交选项后,会产生回调事件,回调事件会带上该 key 值表示该题,最长支持 1024 字节,不可重复</td></tr><tr><td>select_list.title</td><td>否</td><td>下拉式的选择器上面的 title</td></tr><tr><td>select_list.option_list</td><td>是</td><td>选项列表,下拉选项不超过 10 个,最少 1 个</td></tr><tr><td>select_list.selected_id</td><td>否</td><td>默认选定的 id,不填或错填默认第一个</td></tr><tr><td>select_list.option_list.id</td><td>是</td><td>下拉式的选择器选项的 id,用户提交选项后,会产生回调事件,回调事件会带上该 id 值表示该选项,最长支持 128 字节,不可重复</td></tr><tr><td>select_list.option_list.text</td><td>是</td><td>下拉式的选择器选项的文案,建议不超过 16 个字</td></tr><tr><td>submit_button</td><td>是</td><td>提交按钮样式</td></tr><tr><td>submit_button.text</td><td>是</td><td>按钮文案,建议不超过 10 个字,不填默认为提交</td></tr><tr><td>submit_button.key</td><td>是</td><td>提交按钮的 key,会产生回调事件将本参数作为 EventKey 返回,最长支持 1024 字节</td></tr><tr><td>enable_id_trans</td><td>否</td><td>表示是否开启 id 转译,0 表示否,1 表示是,默认 0</td></tr><tr><td>enable_duplicate_check</td><td>否</td><td>表示是否开启重复消息检查,0 表示否,1 表示是,默认 0</td></tr><tr><td>duplicate_check_interval</td><td>否</td><td>表示是否重复消息检查的时间间隔,默认 1800s,最大不超过 4 小时</td></tr></tbody></table>
|
|||
|
|
|||
|
[](#%E9%99%84%E5%BD%95)附录
|
|||
|
-------------------------
|
|||
|
|
|||
|
### [](#%E6%94%AF%E6%8C%81%E7%9A%84markdown%E8%AF%AD%E6%B3%95)支持的 markdown 语法
|
|||
|
|
|||
|
目前应用消息中支持的 markdown 语法是如下的子集:
|
|||
|
|
|||
|
1. 标题 (支持 1 至 6 级标题,注意 #与文字中间要有空格)
|
|||
|
|
|||
|
```
|
|||
|
# 标题一
|
|||
|
## 标题二
|
|||
|
### 标题三
|
|||
|
#### 标题四
|
|||
|
##### 标题五
|
|||
|
###### 标题六
|
|||
|
```
|
|||
|
|
|||
|
2. 加粗
|
|||
|
|
|||
|
3. 链接
|
|||
|
|
|||
|
```
|
|||
|
**bold**
|
|||
|
```
|
|||
|
|
|||
|
4. 行内代码段(暂不支持跨行)
|
|||
|
|
|||
|
5. 引用
|
|||
|
|
|||
|
6. 字体颜色 (只支持 3 种内置颜色)
|
|||
|
|
|||
|
```
|
|||
|
[这是一个链接](http://work.weixin.qq.com/api/doc)
|
|||
|
```
|
|||
|
|
|||
|
|
|||
|
### [](#id%E8%BD%AC%E8%AF%91%E8%AF%B4%E6%98%8E)id 转译说明
|
|||
|
|
|||
|
1. 支持的消息类型和对应的字段
|
|||
|
|
|||
|
<table><thead><tr><th>消息类型</th><th>支持字段</th></tr></thead><tbody><tr><td>文本(text)</td><td>content</td></tr><tr><td>文本卡片(textcard)</td><td>title、description</td></tr><tr><td>图文(news)</td><td>title、description</td></tr><tr><td>图文(mpnews)</td><td>title、digest、content</td></tr><tr><td>小程序通知(miniprogram_notice)</td><td>title、description、content_item.value</td></tr><tr><td>模版消息(template_msg)</td><td>value</td></tr><tr><td>模板卡片消息(template_card)</td><td>source.desc、main_title.title、main_title.desc、sub_title_text、horizontal_content_list.value</td></tr></tbody></table>
|
|||
|
|
|||
|
2.id 转译模版语法
|
|||
|
|
|||
|
```
|
|||
|
`code`
|
|||
|
```
|
|||
|
|
|||
|
其中 DEPARTMENT_ID 是数字类型的部门 id,USERID 是[成员账号](#14953/userid)。
|
|||
|
譬如,
|
|||
|
将`$departmentName=1$`替换成部门 id 为`1`对应的部门名,如 “企业微信部”;
|
|||
|
将`$userName=lisi007$`替换成 userid 为`lisi007`对应的用户姓名,如 “李四”;
|
|||
|
将`$userAlias=lisi007$`替换成 userid 为`lisi007`对应的用户别名,如 “lisi”;
|
|||
|
将`$userAliasOrName=lisi007$`替换成 userid 为`lisi007`对应的用户别名或姓名,别名优先级高于姓名,如 "lisi"。
|
|||
|
|
|||
|
> 若输入的模板不符合语法、不在权限范围内或无效的 userid 或者部门 ID,则不替换该项内容,保留原样
|
|||
|
> 转译 userAlias 时,如果用户没有别名,则不替换该项内容,保留原样
|
|||
|
> 转译 userAliasOrName 时,如果用户有别名,则替换为别名;否则,将替换为姓名
|
|||
|
|
|||
|
在**企业授权了会话内容存档接口权限**时,也支持转译消息内容和群聊名称,语法如下:
|
|||
|
|
|||
|
```
|
|||
|
> 引用文字
|
|||
|
```
|
|||
|
|
|||
|
* CHATID 是群聊 ID,MSGID 是消息 ID,SECRET-KEY 是[获取会话记录](#42660/%E8%8E%B7%E5%8F%96%E4%BC%9A%E8%AF%9D%E8%AE%B0%E5%BD%95)接口返回的这条消息对应的 encrypted_secretkey 字段进行解密得到,参考 [encrypt_secretkey 解密方式](#51799)。
|
|||
|
|
|||
|
* EXTERNAL_USERID 是客户的 ID。若是企业客户填:externalUserId
|
|||
|
若是客户群的外部成员填:chatid/externalUserId,例如:wraaaabbbb/wmccccdddd。若当前企业为 K12 教育行业,externalUserId 在家校通讯录中,则会转译为家长或者学生的名称。
|
|||
|
|
|||
|
譬如,
|
|||
|
将`$chatName=xxxxx$`替换成群聊 ID 为`xxxxx`对应的群聊名称;
|
|||
|
将`$msgContent=xxxxx/yyyyyy$`替换成消息 ID 为`xxxxx`对应的消息内容,其中[获取会话记录](#42660/%E8%8E%B7%E5%8F%96%E4%BC%9A%E8%AF%9D%E8%AE%B0%E5%BD%95)接口返回的这条消息对应的 encrypted_secretkey 字段进行解密得到的密钥为`yyyyyy`;
|
|||
|
将 `$externalUserName=xxxxx$` 替换成客户 ID 为 `xxxxx` 对应的客户名称;如果当前企业是 K12 教育行业,客户 ID 为家长或者学生的 externalUserId,则展示家长或者学生的名称,若非家长或者学生,则展示 “非学校家长”。若员工对客户有设置备注名,则展示 “备注名 (名称)”;若名称和备注名一致时仅展示 “备注名”;多个员工给客户有备注的,展示最早添加的员工给客户的备注。
|
|||
|
|
|||
|
> 若输入的模板不符合语法、群聊 ID 无效、消息 ID 无效或对应的密钥不正确,则不替换该项内容,保留原样
|
|||
|
> 当企业没有授权会话内容存档接口权限是,也不替换该项内容,保留原样
|
|||
|
> 为防止意外泄漏,消息 ID 转译失败的情况下,将只会展示 MSGID 部分的内容,SECRET-KEY 部分的内容不会展示
|
|||
|
|
|||
|
群聊 ID
|
|||
|
支持转译内部群和外部群的名称;
|
|||
|
不包括单聊;
|
|||
|
对于无名称的企业内部群聊,展示为`未命名内部群`;
|
|||
|
对于无名称的企业客户群聊,展示为`未命名客户群`;
|
|||
|
对于非企业客户群,展示为`非企业客户群`。
|
|||
|
|
|||
|
消息 ID
|
|||
|
|
|||
|
<table><thead><tr><th>消息类型</th><th>对应转译结果</th></tr></thead><tbody><tr><td>文本消息</td><td>文本消息的内容</td></tr><tr><td>图片消息</td><td><code>[图片]</code></td></tr><tr><td>Markdown 消息</td><td>Markdown 消息的文本内容</td></tr><tr><td>图文混排消息</td><td>文本的内容,涉及到其他类型的部分用消息类型名称代替,如<code>[图片]</code></td></tr><tr><td>其他</td><td>展示对应的消息类型名称,如<code>[小程序]</code>、<code>[红包消息]</code></td></tr></tbody></table>
|
|||
|
|
|||
|
> 其他特殊情况转译结果说明:
|
|||
|
> 企微后台系统失败 -> 消息获取失败
|
|||
|
> msgid 不存在或者过期 -> 消息已过期,消息内容无法展示
|
|||
|
> SECRET-KEY 错误 -> 消息密钥错误
|