用于向单个或多个手机号码发送短信,采用MD5加密密钥安全认证,支持定时发送功能
本接口用于向一个或多个手机号码发送短信。支持定时发送功能。V2.0版本采用MD5加密密钥进行安全认证,相比V1.0明文密码方式更加安全可靠。
UTF-8:http://cloud.thinksms.cn/v2sms.aspx
GBK:http://cloud.thinksms.cn/v2smsGBK.aspx
Content-Type: application/x-www-form-urlencoded
支持HTTPS协议
提示:V2.0接口使用MD5加密密钥替代明文密码,有效防止密码在传输过程中被窃取,建议新用户优先使用V2.0接口
V2.0接口使用MD5加密密钥替代V1.0的明文密码,签名生成规则如下:
第一步:将账号、接口密码、时间戳依次拼接
第二步:对拼接后的字符串进行MD5加密(32位小写)
第三步:将加密后的字符串作为sign参数提交
时间戳为系统当前时间字符串,格式为:年月日时分秒,例如:20190117230015
Java示例:
PHP示例:
Python示例:
Node.js示例:
| 参数名称 | 含义 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| action | 请求动作 | string | 是 | 固定为:send |
| userid | 企业ID | string | 是 | 企业ID(登录后台-客户管理-我的信息) |
| timestamp | 时间戳 | string | 是 | 系统当前时间字符串,年月日时分秒,例如:20190117230015 |
| sign | 接口密钥 | string | 是 | 使用(账号+接口密码+时间戳)拼接字符串后通过MD5加密(32位小写) |
| mobile | 接收号码 | string | 是 | 手机号码,多个号码之间用英文逗号隔开 |
| content | 发送内容 | string | 是 | 短信内容,内容需要UTF-8编码 |
| sendTime | 定时发送时间 | string | 否 | 为空表示立即发送,不能为0,定时发送格式:2010-10-24 09:08:10 |
| extno | 扩展子号 | string | 否 | 请先询问配置的通道是否支持扩展子号,如果不支持,请填空。子号只能为数字,且最多10位数。 |
| rt | 返回格式 | string | 否 | 固定值:json,不填则为XML格式返回 |
JSON格式请求:
XML格式请求:
| 参数 | V1.0 | V2.0 | 说明 |
|---|---|---|---|
| account | ✓ 必填 | ✗ 不需要 | V2.0账号信息已包含在sign中 |
| password | ✓ 必填(明文) | ✗ 不需要 | V2.0使用sign加密代替 |
| timestamp | ✗ 不需要 | ✓ 必填 | V2.0新增时间戳参数 |
| sign | ✗ 不需要 | ✓ 必填 | V2.0新增MD5签名 |
JSON格式响应:
| 返回信息提示 | 说明 |
|---|---|
| ok | 提交成功 |
| 用户名或密码不能为空 | 提交的用户名或密码为空 |
| 发送内容包含sql注入字符 | 包含sql注入字符 |
| 用户名或密码错误 | 表示用户名或密码错误 |
| 短信号码不能为空 | 提交的被叫号码为空 |
| 短信内容不能为空 | 发送内容为空 |
| 包含非法字符 | 表示检查到不允许发送的非法字符 |
| 对不起,您当前要发送的量大于您当前余额 | 当支付方式为预付费时,检查到账户余额不足 |
| 其他错误 | 其他数据库操作方面的错误 |
当签名验证失败时,将返回以下错误信息:
发送内容最前面须携带[短信签名]。调试模板:【安徽智想云创】您的注册验证码:8899
正式使用前先登录后台提交短信签名认证和模板报备,认证成功前可使用调试模板对接。
请勿将接口密码泄露给他人,建议在服务器端生成签名后再调用接口,避免在前端代码中暴露密钥。
建议使用服务器当前时间生成时间戳,避免因客户端时间不准确导致签名验证失败。或使用固定时间戳
对接过程中请注意接口编码,不同编码对接地址不同,请注意内容是否乱码。
注册验证码用户请添加人机行为验证,防止被注册机攻击。
短信70字按一条计费,超过70字属于长短信,长短信67字按一条计费!如71-134字计费2条。
短信调试结果登录 https://cloud.Thinksms.cn 查询"短信管理 - 我的状态报告"。