发送短信
# 发送短信
接口应在服务器端调用,详细说明参见服务端API。
本接口支持云调用。需开发者工具版本 >= 1.02.1904090
(最新稳定版下载),wx-server-sdk
>= 0.4.0
# 接口说明
# 接口英文名
sendCloudBaseSms
# 功能描述
发送支持打开云开发静态网站的短信,该 H5 可以打开小程序。详情可参考静态网站 H5 跳小程序。
# 注意事项
短信内容
短信由签名和正文内容组成:
短信签名是位于短信正文前【】中的署名,小程序发送短信时,签名为小程序名称。 正文内容是由短信模板和变量构成,例:{1},跳转小程序 {2} 回T退订,模板参数中 {1},{2} 是变量: {1} :用户可自定义传入的内容,当前最长为30个字。 {2} :用户传入的静态托管的地址,例如 /action/index.html?action=double12。 示例:【云开发】能力上新,跳转小程序 https://tcbe.cn/VcdrUJK0 回T退订
短信资源包
前往“开发者工具-云开发-设置-环境设置-资源包”中购买。
第三方代开发
小程序需要将【短信服务】或【云开发】权限集授权给第三方,第三方才可代小程序调用此接口。第三方在调用接口时,可选择使用第三方的环境或小程序的环境,默认使用小程序的环境。在resource_appid填入第三方的appid,在env填入第三方账号下的环境,即可使用第三方的环境。
模版ID
云开发短信模版 ID,填写 844110,即为当前统一的跳转小程序短信模板。非营销类内容,需要24小时触达,可走通知类短信,当前内测中,可通过提交工单进行申请。例如:【腾讯电子签】您有一份已完成的收据,请登录“腾讯电子签”小程序查看详情。 https://tcbe.cn/9a3vCqlK 工单链接:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/operations/ticket.html
# 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/tcb/sendsms?access_token=ACCESS_TOKEN
# 云调用
出入参和HTTPS调用相同,调用方式可查看云调用说明文档
接口方法为: openapi.cloudbase.sendSms
# 第三方调用
调用方式以及出入参和HTTPS相同,仅是调用的token不同
该接口所属的权限集id为:49、64、99
服务商获得其中之一权限集授权后,可通过使用authorizer_access_token代商家进行调用
# 请求参数
# 返回参数
# 调用示例
示例说明: 营销类短信请求数据示例
# 请求数据示例
{
"env":"online-12345678910",
"phone_number_list":[
" 8612345678910"
],
"sms_type": "Marketing",
"content":"发布了新的能力",
"path":"/index.html",
"use_short_name": true
}
# 返回数据示例
{
"errcode":0,
"send_status_list":[
{
"serial_no":"8:gFIqWUHzllUyOFRHgeu20201231",
"phone_number":" 8612345678910",
"code":"Ok",
"message":"send success",
"iso_code":""
}
]
}
示例说明: 通知类短信请求数据示例
# 请求数据示例
{
"env":"online-12345678910",
"phone_number_list":[
" 8612345678910"
],
"sms_type": "Notification",
"template_id": "923584",
"template_param_list": ["商品", "/index.html"]
}
# 返回数据示例
{
"errcode":0,
"send_status_list":[
{
"serial_no":"8:gFIqWUHzllUyOFRHgeu20201231",
"phone_number":" 8612345678910",
"code":"Ok",
"message":"send success",
"iso_code":""
}
]
}
示例说明: 云函数调用示例
# 请求数据示例
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV,
})
exports.main = async (event, context) => {
try {
const result = await cloud.openapi.cloudbase.sendSms({
"env": 'online-12345678910',
"content": '发布了新的能力',
"path": '/index.html',
"phoneNumberList": [
" 8612345678910"
],
"smsType": 'Marketing',
"useShortName": true
})
return result
} catch (err) {
return err
}
}
# 返回数据示例
{
"errCode": 0,
"sendStatusList": [
{
"code": "Ok",
"message": "send success",
"serialNo": "8:gFIqWUHzllUyOFRHgeu20201231",
"phoneNumber": " 8612345678910",
"isoCode": ""
}
],
"errMsg": "openapi.cloudbase.sendSms:ok"
}