uniformMessage.send
本接口应在服务器端调用,详细说明参见服务端API。
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载)
wx-server-sdk >= 0.4.0
下发小程序和公众号统一的服务消息
调用方式:
HTTPS 调用
请求地址
POST https://api.weixin.qq.com/cgi-bin/message/wxopen/template/uniform_send?access_token=ACCESS_TOKEN
请求参数
属性 |
类型 |
默认值 |
必填 |
说明 |
access_token |
string |
|
是 |
接口调用凭证 |
touser |
string |
|
是 |
用户openid,可以是小程序的openid,也可以是mp_template_msg.appid对应的公众号的openid |
weapp_template_msg |
Object |
|
否 |
小程序模板消息相关的信息,可以参考小程序模板消息接口; 有此节点则优先发送小程序模板消息 |
mp_template_msg |
Object |
|
是 |
公众号模板消息相关的信息,可以参考公众号模板消息接口;有此节点并且没有weapp_template_msg节点时,发送公众号模板消息 |
weapp_template_msg 的结构
属性 |
类型 |
默认值 |
必填 |
说明 |
template_id |
string |
|
是 |
小程序模板ID |
page |
string |
|
是 |
小程序页面路径 |
form_id |
string |
|
是 |
小程序模板消息formid |
data |
string |
|
是 |
小程序模板数据 |
emphasis_keyword |
string |
|
是 |
小程序模板放大关键词 |
mp_template_msg 的结构
属性 |
类型 |
默认值 |
必填 |
说明 |
appid |
string |
|
是 |
公众号appid,要求与小程序有绑定且同主体 |
template_id |
string |
|
是 |
公众号模板id |
url |
string |
|
是 |
公众号模板消息所要跳转的url |
miniprogram |
string |
|
是 |
公众号模板消息所要跳转的小程序,小程序的必须与公众号具有绑定关系 |
data |
string |
|
是 |
公众号模板消息的数据 |
返回值
Object
返回的 JSON 数据包
属性 |
类型 |
说明 |
errcode |
number |
错误码 |
errmsg |
string |
错误信息 |
错误
错误码 |
错误信息 |
说明 |
40037 |
|
模板id不正确,weapp_template_msg.template_id或者mp_template_msg.template_id |
41028 |
|
weapp_template_msg.form_id过期或者不正确 |
41029 |
|
weapp_template_msg.form_id已被使用 |
41030 |
|
weapp_template_msg.page不正确 |
45009 |
|
接口调用超过限额 |
40003 |
|
touser不是正确的openid |
40013 |
|
appid不正确,或者不符合绑定关系要求 |
请求数据示例
{
"touser":"OPENID",
"weapp_template_msg":{
"template_id":"TEMPLATE_ID",
"page":"page/page/index",
"form_id":"FORMID",
"data":{
"keyword1":{
"value":"339208499"
},
"keyword2":{
"value":"2015年01月05日 12:30"
},
"keyword3":{
"value":"腾讯微信总部"
},
"keyword4":{
"value":"广州市海珠区新港中路397号"
}
},
"emphasis_keyword":"keyword1.DATA"
},
"mp_template_msg":{
"appid":"APPID ",
"template_id":"TEMPLATE_ID",
"url":"http://weixin.qq.com/download",
"miniprogram":{
"appid":"xiaochengxuappid12345",
"pagepath":"index?foo=bar"
},
"data":{
"first":{
"value":"恭喜你购买成功!",
"color":"#173177"
},
"keyword1":{
"value":"巧克力",
"color":"#173177"
},
"keyword2":{
"value":"39.8元",
"color":"#173177"
},
"keyword3":{
"value":"2014年9月22日",
"color":"#173177"
},
"remark":{
"value":"欢迎再次购买!",
"color":"#173177"
}
}
}
}
返回数据示例
{
"errcode": 0,
"errmsg": "ok"
}
云调用
云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。
接口方法
openapi.uniformMessage.send
需在 config.json 中配置 uniformMessage.send API 的权限,详情
请求参数
属性 |
类型 |
默认值 |
必填 |
说明 |
touser |
string |
|
是 |
用户openid,可以是小程序的openid,也可以是mp_template_msg.appid对应的公众号的openid |
weappTemplateMsg |
Object |
|
否 |
小程序模板消息相关的信息,可以参考小程序模板消息接口; 有此节点则优先发送小程序模板消息 |
mpTemplateMsg |
Object |
|
是 |
公众号模板消息相关的信息,可以参考公众号模板消息接口;有此节点并且没有weapp_template_msg节点时,发送公众号模板消息 |
weappTemplateMsg 的结构
属性 |
类型 |
默认值 |
必填 |
说明 |
templateId |
string |
|
是 |
小程序模板ID |
page |
string |
|
是 |
小程序页面路径 |
formId |
string |
|
是 |
小程序模板消息formid |
data |
string |
|
是 |
小程序模板数据 |
emphasisKeyword |
string |
|
是 |
小程序模板放大关键词 |
mpTemplateMsg 的结构
属性 |
类型 |
默认值 |
必填 |
说明 |
appid |
string |
|
是 |
公众号appid,要求与小程序有绑定且同主体 |
templateId |
string |
|
是 |
公众号模板id |
url |
string |
|
是 |
公众号模板消息所要跳转的url |
miniprogram |
string |
|
是 |
公众号模板消息所要跳转的小程序,小程序的必须与公众号具有绑定关系 |
data |
string |
|
是 |
公众号模板消息的数据 |
返回值
Object
返回的 JSON 数据包
属性 |
类型 |
说明 |
errCode |
number |
错误码 |
errMsg |
string |
错误信息 |
异常
Object
抛出的异常
属性 |
类型 |
说明 |
errCode |
number |
错误码 |
errMsg |
string |
错误信息 |
errCode 的合法值
错误
错误码 |
错误信息 |
说明 |
40037 |
|
模板id不正确,weapp_template_msg.template_id或者mp_template_msg.template_id |
41028 |
|
weapp_template_msg.form_id过期或者不正确 |
41029 |
|
weapp_template_msg.form_id已被使用 |
41030 |
|
weapp_template_msg.page不正确 |
45009 |
|
接口调用超过限额 |
40003 |
|
touser不是正确的openid |
40013 |
|
appid不正确,或者不符合绑定关系要求 |
请求数据示例
const cloud = require('wx-server-sdk')
cloud.init()
exports.main = async (event, context) => {
try {
const result = await cloud.openapi.uniformMessage.send({
touser: 'OPENID',
weappTemplateMsg: {
page: 'page/page/index',
data: {
keyword1: {
value: '339208499'
},
keyword2: {
value: '2015年01月05日 12:30'
},
keyword3: {
value: '腾讯微信总部'
},
keyword4: {
value: '广州市海珠区新港中路397号'
}
},
templateId: 'TEMPLATE_ID',
formId: 'FORMID',
emphasisKeyword: 'keyword1.DATA'
},
mpTemplateMsg: {
appid: 'APPID ',
url: 'http://weixin.qq.com/download',
miniprogram: {
appid: 'xiaochengxuappid12345',
pagepath: 'index?foo=bar'
},
data: {
first: {
value: '恭喜你购买成功!',
color: '#173177'
},
keyword1: {
value: '巧克力',
color: '#173177'
},
keyword2: {
value: '39.8元',
color: '#173177'
},
keyword3: {
value: '2014年9月22日',
color: '#173177'
},
remark: {
value: '欢迎再次购买!',
color: '#173177'
}
},
templateId: 'TEMPLATE_ID'
}
})
return result
} catch (err) {
return err
}
}
返回数据示例
{
"errCode": 0,
"errMsg": "openapi.uniformMessage.send:ok"
}