# 发送短信

接口应在服务器端调用,详细说明参见服务端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代商家进行调用

# 请求参数

属性 类型 必填 说明
access_token string 接口调用凭证,该参数为 URL 参数,非 Body 参数。使用access_token或者authorizer_access_token
env string 环境 ID
phone_number_list array<string> 手机号列表,单次请求最多支持 1000 个境内手机号,手机号必须以+86开头
sms_type number 短信类型,营销类短信:Marketing;通知类短信:Notification
template_id string sms_type="Notification" 时必填,模版 ID
content string sms_type="Marketing" 时必填,自定义短信内容,一条短信最多为70个字。可自定义内容最多为 30 个字符,详情参考短信规则
path string sms_type="Marketing" 时必填,云开发静态网站 path,不需要指定域名,例如/index.html
template_param_list array<string> sms_type="Notification" 时必填,短信模版变量数组
use_short_name boolean 是否使用小程序简称
resource_appid string 资源方appid,第三方代开发时可填第三方appid或小程序appid,应为所填环境所属的账号APPID

# 返回参数

属性 类型说明
errcode number 错误码
errmsg string 错误信息
send_status_list array<object> 开放数据列表
属性 类型 说明
serial_no string 发送流水号
phone_number string 手机号码
code string 短信请求错误码
message string 短信请求错误码描述
iso_code string 国家码或地区码

# 调用示例

示例说明: 营销类短信请求数据示例

# 请求数据示例


{
  "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"
} 

# 错误码

错误码 错误描述 解决方案
-601032 小程序昵称不能为空
-601027 无效的环境
-501007 参数有误,具体原因参考 errmsg
-1 system error 系统繁忙,此时请开发者稍候再试
40001 invalid credential  access_token isinvalid or not latest 获取 access_token 时 AppSecret 错误,或者 access_token 无效。请开发者认真比对 AppSecret 的正确性,或查看是否正在为恰当的公众号调用接口
-607004 无效的 URL Link
-601033 仅支持非个人主体小程序
-607001 无效的静态网站 Path 检查静态网站 Path 是否填写正确
-601028 没有开通静态网站 请在微信开发者工具开通静态网站(云开发/设置/拓展功能)
-601027 无效的环境 ID 检查环境 ID 是否填写正确
-501007 参数有误,具体原因参考 errmsg