开发 服务端 发送订阅消息
# 发送订阅消息
更新时间:2024-05-28 14:31:29
向用户发送订阅消息.需要保证用户已经在小程序客户端订阅过此消息,才能发送成功(注意:目前限制调用的qps最大为100)
# 请求地址
POST https://open.kuaishou.com/openapi/mp/developer/message/template/send
content-type: x-www-form-urlencoded
# 参数
属性 | 类型 | 必填 | 说明 |
---|---|---|---|
app_id | string | 是 | 小程序的 appId |
access_token | string | 是 | 接口调用凭证 |
template_id | string | 是 | 在小程序平台申请的模板 id |
to_user | string | 是 | 发送目标用户的 open id |
page | string | 是 | 点击消息卡片的跳转链接,只需要传 uri 的 path 部分 |
data | string | 是 | 消息卡片填充数据,是 json 格式,格式如下 |
{
"thing01" : {
"value" : "会员卡"
},
"thing02" : {
"value" : "这是一张会员卡"
},
"date01" : {
"value" : "2020年02月25号"
}
}
注意:上面 data 中的 key 值由开发者申请的模板内容参数类型来定。可登录开发者平台,在“我的模板 / 详情”中查看模板信息。
参数类型与 key 值对应关系如下表所示。同一类型的参数从 01 开始按顺序编号。例如,事物类型,第一个 key 为 thing01,第二个为 thing02。
参数类型 | key 前缀 | 长度限制 | 内容说明 |
---|---|---|---|
事物 | thing | 20 字以内 | 内容无限制 |
数字 | number | 32 位以内 | 必须为数字,可带小数 |
字母 | letter | 32 位以内 | 必须为字母 |
符号 | symbol | 5 位以内 | 限制在“+-*/”4 个符号 |
字符串 | string | 32 位以内 | 数字、字母组合 |
日期 | date | xxxx 年 xx 月 xx 号 | |
金额 | amount | 20 字以内 | 数字,不需要带单位。发送消息时会补上“元” |
电话 | phone | 11 位 | 11 位电话号码 |
车牌 | licensePlate | 7 或 8 位 | 如:京B12345 |
状态 | status | 5 位以内 | 汉字 |
举例,模板详细内容为:
{{thing01}}
{{thing02}}
{{phone01}}
对应的 data 参数为:
{
"thing01" : {
"value" : "会员卡"
},
"thing02" : {
"value" : "这是一张会员卡"
},
"phone01" : {
"value" : "13311112222"
}
}
# 返回值
{
"result": 1,
"error_msg" : "success"
}
# 错误码
当 result 不为 1 时,说明请求错误。错误码如下
错误码 | 含义 |
---|---|
100200102 | access_token 授权错误 |
10000200 | 参数为空或格式有误 |
10001024 | 用户关闭了此小程序的消息接收总开关,无法发送消息 |
10001025 | 用户关闭了此条消息的开关,无法发送消息 |
10001026 | 用户未订阅此消息,或剩余可发送次数为 0 |
10001027 | 一个小程序生命周期内重复调用了订阅消息接口 |
10001028 | 服务器错误,发送消息失败 |
10001029 | 模板消息 data 数据格式有误 |
10001030 | 用户拒绝接收消息,例如用户设置了只接受关注者私信等 |
10000305 | 表示qps被限流(目前限制调用的qps最大为100) |
# 请求示例
curl --location 'https://open.kuaishou.com/openapi/mp/developer/message/template/send?app_id=ks2112***&access_token=*****' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'template_id=*****' \
--data-urlencode 'to_user=*****' \
--data-urlencode 'page=/page/****' \
--data-urlencode 'data={"thing01":{"value":"会员卡"}}'
上一篇:《getAccessToken》
下一篇:《用户数据的签名验证和加解密》
仍有疑问? 前往社区提问