授权和验证机制
- 接口密码 –
MD5(32位)加密,联系管理员获取/修改 - ip限制 – 联系管理员进行ip配置
- API接口帐户及密码请联系管理员获取(非web端帐户信息及密码)
字段说明
- account – 账号,全局统一
- pwd – 接口密码,全局统一
- taskId – 发送批次id,全局统一并且唯一,示例中为 “199819d7be8c42febbd1d436e169b2ce”
–发送接口自定义或者系统生成并返回
–发送统计接口可根据taskId查询某一批次的发送统计 - extNo – 用户自定义拓展子号
字符编码
- 发送和接收数据均以
UTF-8编码和解码 - Params 传参时,url 编码涉及的转义字符需要替换处理
–用全角&替换半角&
–用全角%替换半角%
–用全角+替换半角+
接口文档
1、发送接口(文字短信)
采用 HTTP POST 发送模式
URL
http://120.26.69.132:7891/api/v1/send
协议
HTTP POST
编码格式
utf-8
Content-Type
application/x-www-form-urlencoded (Params 传参)
application/json (Body JSON 传参)
传入参数
| 参数 | 是否必须 | 类型 | 描述 |
| account | 必填 | string | 账号 |
| pwd | 必填 | string | 接口密码,MD5加密后的值 |
| taskId | 非必填 | string | 自定义批次id,全局唯一 |
| mobiles | 必填 | string | 用户发送手机号码,多个手机号码用逗号分割,最大不超过3000 |
| content | 必填 | string | 用户发送的自定义短信内容,建议长度不要超过500字 |
| countryCode | 非必填 | string | 国家码,国内短信不⽤填,国际短信必填 |
| extNo | 非必填 | string | 用户自定义拓展子号,只能为正整数 |
返回参数
{
"code": "00",
"message": "成功",
"data": {
"taskId": "27b9a4f28301416eb8b34bc9432a190a",
"createDate": "2025-02-25" }
}
2、发送接口(文字短信-点对点批量发送 )
采用 HTTP POST 发送模式
URL
http://120.26.69.132:7891/api/v1/batchOneToOneSend
协议
HTTP POST
编码格式
utf-8
Content-Type
application/x-www-form-urlencoded (Params 传参)
application/json (Body JSON 传参)
传入参数
| 参数 | 是否必须 | 类型 | 描述 |
| account | 必填 | string | 账号 |
| pwd | 必填 | string | 接口密码,MD5加密后的值 |
| data | 必填 | Array | 下发数据列表 |
| extNo | 非必填 | string | 用户自定义拓展子号,只能为正整数 |
data字段说明
| 参数 | 是否必须 | 类型 | 描述 |
| mobile | 必填 | string | 用户发送手机号码 |
| content | 必填 | string | 用户发送的自定义短信内容,建议长度不要超过500字 |
| taskId | 非必填 | string | 自定义批次id,全局唯一 |
请求参数
{
"account": "账号",
"pwd": "密码",
"data": [
{
"mobile": "手机号1",
"content": "内容1",
"taskId": "xxx",
},
{
"mobile": "手机号2",
"content": "内容2",
"taskId": "xxx",
}
],
"extNo": ""}
返回参数
{
"code": "00",
"message": "成功",
"data": [
{
"mobile": "手机号1",
"taskId": "xxx" },
{
"mobile": "手机号2",
"taskId": "xxx" }
]
}
3、发送接口(语音呼叫)
采用 HTTP POST 发送模式
URL
http://120.26.69.132:7891/api/v1/voice/send
协议
HTTP POST
编码格式
utf-8
Content-Type
application/x-www-form-urlencoded (Params 传参)
application/json (Body JSON 传参)
传入参数
| 参数 | 是否必须 | 类型 | 描述 |
| account | 必填 | string | 账号 |
| pwd | 必填 | string | 接口密码,MD5加密后的值 |
| mobiles | 必填 | string | 用户发送手机号码,多个手机号码用逗号分割,最大不超过3000 |
| content | 必填 | string | 用户发送的自定义语音内容,建议长度不要超过200字 |
| taskId | 非必填 | string | 自定义批次id,全局唯一 |
目前不支持特殊参数(挂机短信、语音模型等)
返回参数
{
"code": "00",
"message": "成功",
"data": {
"taskId": "27b9a4f28301416eb8b34bc9432a190a",
"createDate": "2025-02-25" }
}
4、发送统计接口(文字短信/语音)
采用 HTTP POST 发送模式
数据只统计当天数据且一小时统计一次,客户无需频繁调用
URL
http://120.26.69.132:7891/api/v1/queryTotal
协议
HTTP POST
编码格式
utf-8
Content-Type
application/x-www-form-urlencoded (Params 传参)
application/json (Body JSON 传参)
传入参数
| 参数 | 是否必须 | 类型 | 描述 |
| account | 必填 | string | 账号 |
| pwd | 必填 | string | 接口密码,MD5加密后的值 |
| taskId | 选填 | string | 自定义任务id,全局唯一 |
| createDate | 选填 | string | 格式:2020-01-08,当taskId不为空时,必填 |
返回参数
{
"code":"00",
"message":"成功",
"data":{
"count": 200000, //提交数量"success": 199999, //成功数量"fail": 1, //失败数量"unknown": 0, //未知数量"rate":"99.99"//成功率 }
}
5、状态查询接口(文字短信/语音)
URL
http://120.26.69.132:7891/api/v1/report
协议
HTTP POST
编码格式
utf-8
Content-Type
application/x-www-form-urlencoded (Params 传参)
application/json (Body JSON 传参)
传入参数
| 参数 | 是否必须 | 类型 | 描述 |
| account | 必填 | string | 账号 |
| pwd | 必填 | string | 接口密码,MD5加密后的值 |
返回参数
{
"code": "00",
"message": "成功",
"data": {[
{
"taskId": "199819d7be8c42febbd1d436e169b2ce", //发送接口返回的taskId
"status": "DELIVRD", // DELIVRD = 成功,其他值 = 失败
"times": "2020-01-08 10:55:08",
"mobile": "15502162678",
"extNo": "" //扩展码号
},{
"taskId": "199819d7be8c42febbd1d436e169b2ce",
"status": "MBBLACK",
"times": "2020-01-08 15:55:08",
"mobile": "13816554051",
"extNo": "" }
]}
}
6、上行查询接口(文字短信)
URL
http://120.26.69.132:7891/api/v1/mo
协议
HTTP POST
编码格式
utf-8
Content-Type
application/x-www-form-urlencoded (Params 传参)
application/json (Body JSON 传参)
传入参数
| 参数 | 是否必须 | 类型 | 描述 |
| account | 必填 | string | 账号 |
| pwd | 必填 | string | 接口密码,MD5加密后的值 |
返回参数
{
"code": "00",
"message": "成功",
"data": {[
{
"taskId": "199819d7be8c42febbd1d436e169b2ce", //发送接口返回的taskId
"mobile": "15502162678",
"content": "回复短信内容1", //回复内容
"times": "2020-01-08 15:56:06", //回复时间
"extNo": "" },{
"taskId": "199819d7be8c42febbd1d436e169b2ce",
"mobile": "13816554051",
"content": "回复短信内容2",
"times": "2020-01-08 15:56:08",
"extNo": "" }
]}
}
7、用户余额查询接口(文字短信)
URL
http://120.26.69.132:7891/api/v1/queryBalance
协议
HTTP POST
编码格式
utf-8
Content-Type
application/x-www-form-urlencoded (Params 传参)
application/json (Body JSON 传参)
传入参数
| 参数 | 是否必须 | 类型 | 描述 |
| account | 必填 | string | 账号 |
| pwd | 必填 | string | 接口密码,MD5加密后的值 |
返回参数
{
"code": "00",
"message": "成功",
"data": {
"balance": 999998, //预付费余额"payment": 0, //0 = 预付费 1=后付费"paymentName": "预付费" }
}
8、状态推送接口(文字短信/语音)
每个状态只推送一次
状态报告推送接口和状态查询接口互斥,接入时只能选择一种
用户接口接收到状态后需要返回http 200
URL
用户提供推送地址 http://xxx.xxx
推送参数
{
"taskId": "199819d7be8c42febbd1d436e169b2ce", //发送接口返回的taskId"mobile": "15502162678",
"times": "2020-01-08 10:55:08", //yyyy-MM-dd HH:mm:ss "status": "DELIVRD", // DELIVRD = 成功,其他值 = 失败 "extNo":""//扩展码号 }
9、上行推送接口(文字短信)
每个状态只推送一次
上行推送接口和上行查询接口互斥,接入时只能选择一种。
用户接口接收到状态后需要返回http 200
URL
用户提供推送地址 http://xxx.xxx
推送参数
{
"taskId":"199819d7be8c42febbd1d436e169b2ce", //关联发送的taskId"mobile": "15502162678",
"content": "回复短信内容1", //上行内容 "times": "2020-01-08 15:56:06", //yyyy-MM-dd HH:mm:ss "extNo": ""//扩展码号}
接口返回代码
| code | message | 说明 |
| 00 | 成功 | |
| 01 | 用户名或者密码不能为空 用户名不存在 Authorization fail | 认证失败 |
| 02 | 参数错误 | |
| 03 | 权限不足 | |
| 04 | 请求的资源不存在 | |
| 05 | 服务器异常 | |
| 06 | 余额不足 | |
| 07 | 内容不能为空 | |
| 08 | 手机号不能为空 | |
| 09 | 超扩展位数 | |
| 10 | 超最多提交号码数 | |
| 11 | 扩展位必须为数字类型 | |
| 12 | 查询频率超限 | |
| 13 | 提交的号码包中有异常号码 |
反馈与建议
有任务问题请与我们联系
- 邮箱:sms@2014idc.com
- 电话:132 6543 4321
