API文档

模板短信接口请求方式

1 短信发送接口

1.1 业务流程说明

1.2 Base URL

模板短信API引用的地址有Base URL。
生产环境的Base URL: https://sms.dahancloud.com/

1.3 统一请求包头

URL格式: /API/sendMessage?sig={SigParameter}
在URL格式中 {}内的内容表示为参数。
属性 类型 约束 说明
SigParameter String 必选 REST API 验证参数,生成规则如下
1.使用MD5加密(账户Id + 账户授权令牌 + 时间戳)。其中账户Id和账户授权令牌根据url的验证级别对应主账户。 时间戳是当前系统时间,格式"yyyyMMddHHmmss"。时间戳有效时间为24小时,如:20170904112030
2.SigParameter参数需要大写,如不能写成sig=abcdefg而应该写成sig=ABCDEFG

1.4 HTTP标准包头字段

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

属性 类型 约束 说明
Accept String 必选 客户端响应接收数据格式:application/json
Content-Type String 必选 类型: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 必选 短信接收端手机号码集合,用英文逗号分开,每批发送的手机号数量不得超过500个
appId String 必选 应用Id
templateId String 必选 模板Id
datas String 必选 内容数据,用于替换模板中{序号}


1.5.1 JSON请求示例

POST /API/sendMessage?sig=C1F20E7A9733CE94F680C70A1DBABCDE HTTP/1.1
Host: https://sms.dahancloud.com/
content-length: 139
Accept:application/json;
Content-Type:application/json;charset=utf-8;
Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyMDExNTABCDE=
{"to":"13955821xxx,15064001xxx,13874771xxx","appId":
"ff8080813fc70a7b013fc7231232xxxx","templateId":"1","datas":["替换内容","替换内容"]}

1.6 响应

此步响应只表明客户的短信请求发送成功,不表明短信通道已经发送短信成功。
属性 类型 约束 说明
statusCode String 必选 请求状态码,取值000000(成功)
smsMessageSid String 必选 短信唯一标识符
dateCreated String 必选 短信的创建时间

1.6.1 JSON响应示例

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

1.7 判断发送失败,重发

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

2 短信状态报告接口

2.1 请求方式

POST请求(仅支持POST请求)


2.2 请求参数

2.2.1 请求完整路径    (注:此接口最多只能获取三天的状态报告,如需获取更多状态报告,请联系平台客服人员)

https://report.dahancloud.com/sms/report


2.2.1 HTTP标准包头字段

Accept:application/json;
Content-Type:application/json;charset=utf-8;
Content-Length:256;
Authorization:” ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDN2M6MxNTABCDE= ”
sig:”c1f20e7a9733ce94f680c70a1dbabcde”
					
属性 类型 说明
sig String 1、使用MD5加密(账户Id + 账户授权令牌 + 时间戳)。其中账户Id和账户授权令牌根据url的验证级别对应主账户。 时间戳是当前系统时间,格式"yyyyMMddHHmmss"。
2、时间戳有效时间为24小时,如:20170904112030
Authorization String 1、使用Base64编码(账户Id + 冒号 + 时间戳)其中账户Id根据url的验证级别对应主账户
2、冒号为英文冒号
3、时间戳是当前系统时间,格式"yyyyMMddHHmmss",需与sig中时间戳相同。

2.3 返回内容

2.3.1 提交响应数据格式

{
	"code":"DH:0000",
	"datas":
		[{
			"msgId ":"502f34ea6eae47288bd0917c46d83003",
			"phone ":"155**********",
			"status ":0,
			"time ":"2018-06-27 18:32:00"
		}],
	"msg":"请求成功"
}

						

2.3.2 字段解释

属性 类型 说明
code String 请求状态码
msg String 请求状态码对应描述
datas phone String 下行手机号码
status String 短信发送状态
time String 状态报告时间
msgId String 短信编号id