1. 首页
  2. 文本短信
  3. API文档
  4. API接口文档
菜单
本页目录

API接口文档

欢迎您使用秒信通短信服务SMS(Simple Message Service),秒信通SMS是构建在可靠云基础设施之上,便捷高效、稳定可靠的短消息下行服务,帮助用户完成短消息的及时下发,而用户只需按使用量付费。用户可以通过本文档提供的API接口,进行模板申请、短信下发等操作.

提示信息

1.本文档适用于国内短信 & 国际短信API接口对接;

2.ip_address:port/IP地址和端口请联系客服索取。

1.单条短信发送

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-single

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

2. 批量短信发送接口

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-batch

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

3. 变量短信发送接口

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-variable

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

4. 一对一批量发送接口

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-biunique

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

5. 获取状态报告

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/report

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:GET 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

6. 推送状态报告

*注意事项:推送的是utf8原始字节流

推送格式:扩展号,调用发送接口返回的msg_id,手机号,状态,时间,售价 字段以,分隔 多条记录以|分隔

内容示范:123,2,1762532xxxx,DELIVRD,2021-12-23 01:02:03,0.2|123,2,17862532xxxx,DELIVRD,2021-12-23 01:02:03,0.1

主动拉取需要登入后台回填推送地址

1、此配置仅针对采用HTTP接口提交的短信
2、主动拉取:需要您根据HTTP接口文档定期拉取短信状态
3、被动接收:即回调方式,会定期将状态和回复推送到您指定的 地址+端口+URL上,推送采用的是POST,RAW data传输(utf8原始字节流)

7. 获取用户上行回复

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-single

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

8. 推送用户上行回复

*注意事项:推送的是utf8原始字节流

推送格式:扩展号,调用发送接口返回的msg_id,手机号,状态,时间,售价 字段以,分隔 多条记录以|分隔

内容示范:123,2,1762532xxxx,DELIVRD,2021-12-23 01:02:03,0.2|123,2,17862532xxxx,DELIVRD,2021-12-23 01:02:03,0.1

主动拉取需要登入后台回填推送地址

1、此配置仅针对采用HTTP接口提交的短信
2、主动拉取:需要您根据HTTP接口文档定期拉取短信状态
3、被动接收:即回调方式,会定期将状态和回复推送到您指定的 地址+端口+URL上,推送采用的是POST,RAW data传输(utf8原始字节流)

9. 获取帐号余额

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-single

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

10. 模板报备

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-single

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

11. 获取模板审核状态

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-single

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

请求响应示例

{ "code": 0, "msg": "SUCCESS", "msg_id": 100000061 }

12. 签名报备

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-single

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

13. 获取签名审核状态

*接口操作必须先在应用中添加白名单,设置后仅允许白名单中的IP地址调用API。

请求地址:https://ip_address:port/api/send-sms-single

http头信息:Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求方式:POST 返回值:JSON

请求参数:

请求响应:

14. 签名生成规则

第一步:准备QueryString

  • 将所有参数(除了signature)按照key排序(顺序)

  • 将排序好的参数key和值进行URLEncode,之后再增加三种字符替换:加号(+)替换成 %20、星号(*)替换成 %2A、%7E 替换回波浪号(~)

  • 将格式化后的key和值按照key + "=" + 值进行拼接成字符串QueryString,多个参数间用&连接,例:”a=%E5%93%88%E5%93%88&b=haha”

  • 在上一步得到的QueryString前拼接上请求方式,生成新的QueryString,HTTPMethod + "&" + URLEncode("/") + "&" + QueryString

第二步:准备signature

  • 将上面得到的QueryString进行HmacSHA1算法进行编码,HMAC生成信息摘时需要用您的产品密码作为密钥。

  • 之后将上面加编码后的字符串进行base64编码,得到签名signature

注意

本文档的所有接口都不支持 curl的100 continue协议,如果接口响应过慢就关闭此协议,在Curl中加入curl_setopt($ch, CURLOPT_HTTPHEADER, array("Expect:"))即可

15. aes加密规则

  • aes加密发送,需要同时分别加密手机号字段和内容字段

  • 发送地址在原来的地址加上-aes,地址:https://ip_address:port/api/send-sms-single-aes

  • 先向客服索要加密key,然后自行生成iv,用AES-128-CBC将手机号或者内容进行加密,并对加密的数据进行base64处理获得字符串s1

  • 将生成的iv也进行base64处理生成字符串s2

  • 将两个字符串进行json处理生成如下的json字符串s3:"{"iv":"s2","value":"s1"}"

  • 将上述得到的s3进行base64处理,然后放入相应post数据字段中代替未加密的数据

        $cipher = 'AES-128-CBC';

        $iv = random_bytes(openssl_cipher_iv_length($cipher));

        $value = openssl_encrypt($value, $cipher, $key, 0, $iv);

        if ($value === false) {
            throw new RuntimeException('Could not encrypt the data.');
        }

        $iv = base64_encode($iv);

        $json = json_encode(compact('iv', 'value'), JSON_UNESCAPED_SLASHES);

        if (json_last_error() !== JSON_ERROR_NONE) {
            throw new RuntimeException('Could not encrypt the data.');
        }

        return base64_encode($json);

16. 错误码说明

请求响应返回值错误

提交响应返回值错误

技术咨询:400-186-1525