发送相关

send

发送一个短信模板给一个或多个用户

URL

http://www.sendcloud.net/smsapi/send

返回数据格式

json

HTTP请求方式

GET POST    

参数说明

参数 类型 必选 说明
smsUser string smsUser
templateId int 模板ID
msgType int 0表示短信, 1表示彩信, 默认值为0
phone string 收信人手机号,多个手机号用逗号,分隔,每次调用最大支持2000,更多地址建议使用联系人列表功能
vars string 替换变量的json串
signature string 签名, 合法性验证
timestamp string UNIX时间戳

vars格式示例:

{"name": "lucy"} or {"%money%": "100"}

注意:

  1. 系统会用vars中的参数替换短信模板中的变量, 所有手机号收到替换后的同一个内容. 参数 vars 可能含有特殊字符, 记得 urlencode.

  2. vars 所传递的变量的值, 长度不能超过 32 个字符, 格式为字符串, 变量中不能含有 HTTP 链接

  3. 生成签名时, 参数不要使用 urlencode. 在调用 api 时, 才需要对参数做 urlencode


sendx

发送一个短信模板给多个用户, 每个用户对应一个替换变量.

URL

http://www.sendcloud.net/smsapi/sendx

返回数据格式

json

HTTP请求方式

GET POST    

参数说明

参数 类型 必选 说明
smsUser string smsUser
templateId int 模板ID
msgType int 0表示短信, 1表示彩信, 默认值为0
tos string 手机号和替换变量的对应的json串,每次调用最大支持200,更多地址建议使用联系人列表功能
signature string 签名, 合法性验证
timestamp string UNIX时间戳

vars格式示例:

{"name": "lucy"} or {"%name%": "lucy"}

tos格式示例:

[{"phone": "13111111111", "vars": {"%name%": "name1"}}, {"phone": "13122222222", "vars": {"%name%": "name2"}}]

注意:

  1. 参数 vars 可能含有特殊字符, 记得 urlencode

  2. vars 所传递的变量的值, 长度不能超过 32 个字符, 格式为字符串, 变量中不能含有 HTTP 链接

  3. 生成签名时, 参数不要使用 urlencode. 在调用 api 时, 才需要对参数做 urlencode

  4. tos里面必须要有vars参数,可以是空,但是不能没有这个字段。


sendVoice

发送语音验证码

URL

http://www.sendcloud.net/smsapi/sendVoice

返回数据格式

json

HTTP请求方式

GET POST

参数说明

参数 类型 必选 说明
smsUser string smsUser
phone string 收信人手机号
code string 验证码
signature string 签名, 合法性验证
timestamp string UNIX时间戳

code格式示例:

{"code": "123456"}

注意:

  1. 参数 code 格式为字符串,内容为4-6位长度的数字

sendCode(不需要短信模板)

发送短信验证码

URL

http://www.sendcloud.net/smsapi/sendCode

返回数据格式

json

HTTP请求方式

GET POST

参数说明

参数 类型 必选 说明
smsUser string smsUser
phone string 收信人手机号
signId Integer * 短信签名id
signName string * 短信签名名称
code string 验证码
signature string 签名, 合法性验证
timestamp string UNIX时间戳

code格式示例:

{"code": "123456"}

注意:

  1. 参数 code 格式为字符串,内容为4-6位长度的数字
  2. signId为短信签名的id,signId和signName两个参数只需要传一个即可,如果signId不为空,signName自动忽略

timestamp

获取服务器时间戳

URL

http://www.sendcloud.net/smsapi/timestamp/get

返回数据格式

json

HTTP请求方式

GET

参数说明


返回码

短信 API 返回的结果是 JSON 格式, 示例如下:

# 请求成功
{
    "message":"请求成功",
    "info":{"successCount":1,"smsIds":["1458113381893_15_3_11_1ainnq$131112345678"]}},
    "result":true,
    "statusCode":200
}

# 手机号格式错误
{
    "message":"手机号格式错误",
    "info":{},
    "result":false,
    "statusCode":412
}

# 部分成功
{
    "message":"部分成功",
    "info":{
            "successCount":1,
            "failedCount":1,
            "items":[{"phone":"1312222","vars":{},"message":"手机号格式错误"}],
            "smsIds":["1458113381893_15_3_11_1ainnq$131112345678"]}
            },
    "result":true,
    "statusCode":311
}

API 返回码 含义
200 请求成功
311 部分号码请求成功
312 全部请求失败
411 手机号不能为空
412 手机号格式错误
413 有重复的手机号
421 签名参数错误
422 签名错误
431 模板不存在
432 模板未提交审核或者未审核通过
433 模板ID不能为空
441 替换变量格式错误
451 定时发送时间的格式错误
452 定时发送时间早于服务器时间, 时间已过去
461 时间戳无效, 与服务器时间间隔大于6秒
471 smsUser不存在
472 smsUser不能为空
473 没有权限, 免费用户不能发送短信
474 用户不存在
481 手机号和替换变量不能为空
482 手机号和替换变量格式错误
483 替换变量长度不能超过32个字符
496 一分钟内给当前手机号发信太多
498 一天内给当前手机号发信太多
499 账户额度不够
501 服务器异常
601 你没有权限访问
SMSHook 错误码(statusCode) 含义
410 处理失败, 手机号在全局拦截列表
420 处理失败, 手机号在局部拦截列表
430 处理失败, 取消订阅
440 处理失败, 关键词过滤
450 处理失败, 替换变量错误
460 处理失败, 短信内容不能超过500个字符
500 发送失败, 手机空号
510 发送失败, 手机停机
550 发送失败, 该模板内容被投诉
580 发送失败, 手机关机
590 发送失败, 其他原因