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'
        }
      })
    console.log(result)
    return result
  } catch (err) {
    console.log(err)
    return err
  }
}

返回数据示例

{
  "errCode": 0,
  "errMsg": "openapi.uniformMessage.send:ok"
}