1 模板短信接口请求方式

1.1 业务流程说明

1.2 Base URL

模板短信API引用的地址有Base URL。

生产环境的Base URL:https://app.cloopen.com:8883

注意:为了确保数据隐私,云通讯平台的REST API是通过HTTPS方式请求。

1.3 统一请求包头

URL格式:/2013-12-26/Accounts/{accountSid}/SMS/TemplateSMS?sig={SigParameter}

在URL格式中 {}内的内容表示为参数,非{}的内容固定不变。

属性说明:

属性 类型 约束 说明
accountSid
String 必选
开发者主账户ACCOUNT SID(登陆官网在管理控制台获取)
SigParameter
String 必选

REST API 验证参数,生成规则如下

1.使用MD5加密(账户Id + 账户授权令牌 + 时间戳)。其中账户Id和账户授权令牌根据url的验证级别对应主账户。

时间戳是当前系统时间,格式"yyyyMMddHHmmss"。时间戳有效时间为24小时,如:20140416142030

2.SigParameter参数需要大写,如不能写成sig=abcdefg而应该写成sig=ABCDEFG

1.4 HTTP标准包头字段

Accept:application/xml;
Content-Type:application/xml;charset=utf-8;
Content-Length:256;
Authorization:

属性说明:

属性 类型 约束 说明
Accept
String 必选 客户端响应接收数据格式:application/xml、application/json
Content-Type
String 必选 类型:application/xml;charset=utf-8、application/json;charset=utf-8
Content-Length
String 必选 Content-Length

Authorization

String

必选

验证信息,生成规则详见下方说明

1.使用Base64编码(账户Id + 冒号 + 时间戳)其中账户Id根据url的验证级别对应主账户

2.冒号为英文冒号

3.时间戳是当前系统时间,格式"yyyyMMddHHmmss",需与SigParameter中时间戳相同。

1.5 请求包体

属性
类型 约束 说明
to String 必选 短信接收端手机号码集合,用英文逗号分开,每批发送的手机号数量不得超过200个
appId
String 必选 应用Id
templateId String 必选 模板Id
datas String 可选 内容数据外层节点,模板如果没有变量,此参数可不传
data
String
可选
内容数据,用于替换模板中{序号}

1.5.1 XML请求示例

 POST /2013-12-26/Accounts/abcdefghijklmnopqrstuvwxyz012345/SMS/TemplateSMS?sig=
 C1F20E7A9733CE94F680C70A1DBABCDE HTTP/1.1
 Host:192.168.0.1:8883
 content-length: 139
 Accept:application/xml; 
 Content-Type:application/xml;charset=utf-8; 
 Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyMDExNTABCDE=
<?xml version='1.0' encoding='utf-8'?> 
<TemplateSMS>
  <to>13912345678</to>
  <appId>ff8080813c37da53013c3054f567007e</appId> 
  <templateId>1</templateId>
  <datas>
    <data>替换内容</data>
    <data>替换内容</data>
  </datas>
</TemplateSMS>            
            

1.5.2 JSON请求示例

 POST /2013-12-26/Accounts/abcdefghijklmnopqrstuvwxyz012345/SMS/TemplateSMS?sig=
 C1F20E7A9733CE94F680C70A1DBABCDE HTTP/1.1

 Host:192.168.0.1:8883
 content-length: 139
 Accept:application/json; 
 Content-Type:application/json;charset=utf-8; 
 Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyMDExNTABCDE=
 {"to":"13911281234,15010151234,13811431234","appId":
 "ff8080813fc70a7b013fc72312324213","templateId":"1","datas":["替换内容","替换内容"]}           
            

1.6 响应

此步响应只表明客户的短信请求发送成功,不表明短信通道已经发送短信成功。

属性 类型 约束 说明

statusCode

String

必选

请求状态码,取值000000(成功)

smsMessageSid
String 必选 短信唯一标识符
dateCreated
String 必选 短信的创建时间

1.6.1 XML响应示例

  HTTP/1.1 200 OK 
  Content-Length: 641 
  <?xml version="1.0" encoding="UTF-8" standalone="yes"?&;
  <Response>
   <statusCode>000000</statusCode>
    <TemplateSMS>
      <smsMessageSid>ff8080813c373cab013c94b0f0512345</smsMessageSid>
      <dateCreated>20130201153809</dateCreated>
    </TemplateSMS>
  </Response>          
            

1.6.2 JSON响应示例

 HTTP/1.1 200 OK 
 Content-Length: 641
 {"statusCode":"000000","templateSMS":{"dateCreated":"20130201155306",
 "smsMessageSid":" ff8080813c373cab013c94b0f0512345"}}        
            

1.7 判断发送失败,重发

对响应解析后,statusCode为"000000"表示请求发送成功。statusCode不是"000000",表示请求发送失败,客户服务端可以根据自己的逻辑进行重发或者其他处理。

文档更新时间:2017年7月7日