单条发送接口
1 协议说明
协议 | HTTP POST |
---|---|
编码格式 | UTF8 |
URL | 举例:https://msg.yundashi.com/intf/sendsms?sdkappid=xxxxx&random=xxxx |
接口说明 | 给用户发短信验证码、短信通知,营销短信(内容长度不超过450字)。注:sdkappid请填写您在云大师短信官网上申请到的客户编号,random请填成随机数。 |
2 请求包体
包体为json字符串,参数如下:
{
"tel": {
"nationcode": "86", //国家码
"mobile": "13788888888" //手机号码
},
"type": 0, //0:普通短信;1:营销短信(强调:要按需填值,不然会影响到业务的正常使用)
"msg": "你的验证码是1234", //utf8编码
"sig": "30db206bfd3fea7ef0db929998642c8ea54cc7042a779c5a0d9897358f6e9505",
//app凭证,具体计算方式见下注
"time": 1457336869, //unix时间戳,请求发起时间,如果和系统时间相差超过10分钟则会返回失败
"extend": "", //通道扩展码,可选字段,默认没有开通(需要填空)。
//在短信回复场景中,云大师server会原样返回,开发者可依此区分是哪种类型的回复
"ext": "" //用户的session内容,云大师server回包中会原样返回,可选字段,不需要就填空。
}
参数 | 必选 | 类型 | 描述 |
---|---|---|---|
tel | 是 | object | 群发号码数组,群发时一次最多不要超过 200 个手机号 |
msg | 是 | string | 短信消息,utf8 编码,需要匹配审核通过的模板内容 |
sig | 是 | string | App 凭证,具体计算方式见下注 |
type | 是 | number | 短信类型,Enum{0: 普通短信, 1: 营销短信}(注意:要按需填值,不然会影响到业务的正常使用) |
time | 是 | number | 请求发起时间,unix 时间戳(单位:秒),如果和系统时间相差超过 10 分钟则会返回失败 |
ext | 否 | string | 用户的 session 内容 server回包中会原样返回,可选字段,不需要就填空 |
extend | 否 | string | 通道扩展码,可选字段,默认没有开通(需要填空) |
- 数组tel元素参数:
参数 | 必选 | 类型 | 描述 |
---|---|---|---|
mobile | 是 | string | 手机号码 |
nationcode | 是 | string | 国家码 |
注:
1、"msg"字段需要匹配审核通过的模板内容
如果您的模板是"你的验证码是{1}",则"msg"字段可赋值为:"你的验证码是xxxx"。(其中"xxxx"为下发的验证码)
如果您有多个短信签名,请将需要的短信签名放在短信内容前面
例如您有"【云大师】","【云大师讲座】"两个签名,但是想以"【云大师讲座】"签名发送短信, 则"msg"字段可赋值为:"【云大师讲座】你的验证码是xxxx"。(其中"xxxx"为下发的验证码)
2、"extend"字段的配置请联系云大师工作人员
3、"sig"字段根据公式sha256(appkey=$appkey&random=$random&time=$time&mobile=$mobile)生成 伪代码如下:
string strMobile = "13788888888"; //tel的mobile字段的内容
string strAppKey = "dffdfd6029698a5fdf4"; //sdkappid对应的appkey,需要业务方高度保密
string strRand = "7226249334"; //url中的random字段的值
string strTime = "1457336869"; //unix时间戳
string sig = sha256(appkey=$strAppKey&random=$strRand&time=$strTime&mobile=$strMobile);
3 应答包体
{
"result": 0, //0表示成功(计费依据),非0表示失败
"errmsg": "OK", //result非0时的具体错误信息
"ext": "", //用户的session内容,云大师server回包中会原样返回
"sid": "xxxxxxx", //标识本次发送id,标识一次短信下发记录
"fee": 1 //短信计费的条数
}