調用說明
一、短信下行
1、請求
(1)請求地址:
https://u.smsyun.cc/sms-partner/access/{用戶帳號}/sendsms
注意:為了確保數據隱私和安全,用戶需要通過Https Post方式請求,消息格式:json表達式。
(2)Https標準包頭字段:
Accept:application/json;
Content-Type:application/json;charset=utf-8;
(3)請求包體:
屬性 | 類型 | 約束 | 說明 |
---|
clientid | String | 必選 | 帳號,6位,
如:a00012,b00012 |
password | String | 必選 | 密碼,8-12位,MD5加密后32位,小寫,
如:1bbd886460827015e5d605ed44252251 |
mobile | String | 必選 | 發送手機號碼,
國內短信不要加前綴,國際短信號碼前須帶相應的國家區號,如日本:0081,
支持多號碼,號碼之間用英文逗號隔開,最多100個。
國內手機號碼如:18612341234
國際號碼如:0085265656565 |
smstype | String | 必選 | 短信類型,
"0":通知短信,"4":驗證碼短信,"5":營銷短信 |
content | String | 必選 | 【簽名】+ 短信內容,UTF-8編碼,
短信內容最長500個字(包括英文字母),其中簽名2-12個字(包括英文字母) |
sendtime | String | 可選 | 定時發送時間,
為空表示立即發送,定時發送格式2016-11-11 09:00:00
(未生效) |
extend | String | 可選 | 自擴展端口,
1-4位,只能為數字,可以為空
(注:請先詢問配置的通道是否支持自擴展端口,如果不支持,請填空) |
uid | String | 可選 | 用戶透傳ID,
隨狀態報告返回,最長60位 |
注:
①extend字段用于客戶傳送由客戶自行分配給子客戶的擴展端口,用于上行短信回來與之對應。
如:某客戶下有A、B、C三個子客戶,并且該客戶獲得某通道兩位自擴展,分別對其子客戶自行分配的擴展端口依次為子客戶A:01,子客戶B:02,子客戶C:03。
若子客戶A在發送下行短信時將該擴展端口01填入此字段即可,上行短信將會把此字段的擴展端口01發給客戶,用于客戶區分哪個子客戶的上行短信,子客戶A可根據上行短信中的電話號碼對應之前的下行手機號碼;
②uid字段用戶在單、群發短信時,由用戶生成并下發到平臺的序列號(最長不超過60位),該uid將在應答、狀態報告中返回給客戶,用于客戶區分或對應單、群發短信的批次。
群發一次最多100個號碼(目前不支持多內容組發)。
(4)JSON請求示例:
{
"clientid":"test",
"password":"6918d0046aab6a1ee290f751e02bd0b2",
"mobile":"13800138000,13800138001,19800138002,19800138003",
"smstype":"4",
"content":"【云通訊】您的驗證碼為:1234",
"sendtime":"2016-11-11 09:00:00",
"extend":"00",
"uid":"00"
}
包頭/包體 | 實例 | 備注 |
---|
Header | POST /sms-partner/access/test/sendsms HTTP/1.1 Accept-Encoding:identity Content-Length:191 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,
保證路徑正確,采用HTTPS的POST方式發送; |
Body | { "clientid":"test", "password":"6918d0046aab6a1ee290f751e02bd0b2", "mobile":"13800138000,13800138001,19800138002,19800138003", "smstype":"4", "content":"【云通訊】您的驗證碼為1234", "sendtime":"2016-11-11 09:00:00", "extend":"00", "uid":"00" }
| 藍色字體為可變部分 |
2、響應
(1)響應包體:
屬性 | 類型 | 約束 | 說明 |
---|
total_fee | Int | 必選 | 短信發送的計費總條數 |
data | | | 每個手機號發送的詳細情況 |
code | Int | 必選 | 短信請求響應返回碼,
參考“請求響應返回碼”定義的返回碼
(詳見第九章第1節) |
msg | String | 必選 | 短信請求響應返回中文描述,
參考“請求響應返回碼”定義的中文描述
(詳見第九章第1節) |
fee | Int | 必選 | 成功發送的短信計費條數,
計費規則如下:
70個字一條,超出70個字時按每67字一條計費
(英文按字母個數計算) |
mobile | String | 必選 | 接收短信的手機號碼 |
sid | String | 必選 | 短信標識符(用于匹配狀態報告),
一個手機號對應一個sid |
uid | String | 可選 | 用戶透傳ID,
隨狀態報告返回 |
注:
①total_fee表示單(群)發短(長)短信總共計費的條數,該條數等于data域中各個fee字段數量之和;
②fee表示每個短信接收的手機號碼收到短信的計費條數(長短信按照短信計費規則進行計費,長短信拆分最大不超過10條);
③sid是短信平臺產生的唯一標示,與后面返回的狀態報告中的sid一一對應,用于下發短息與狀態報告相對應;
④uid字段返回內容和第一章第1節請求中的“用戶透傳ID”一致,用于客戶區分或對應單、群發短信的批次;
(2)JSON響應示例:
{
"total_fee":2,
"data":[
{
"code":0,
"msg":"發送成功",
"fee":1,
"mobile":"13800138000",
"sid":"08faf6-5728-438d-95ed-e0e0cec4fd37",
"uid":"1234"
},
{
"code":0,
"msg":"發送成功",
"fee":1,
"mobile":"13800138001",
"sid":"09faf6-5728-838d-95ed-e0e0cec4fd39",
"uid":"1234"
},
{
"code":-7,
"msg":"手機號碼格式錯誤"
"fee":0,
"mobile":"19800138002",
"sid":"753af6-5728-838d-95ed-e0e0cec4fd39",
"uid":"1234"
},
{
"code":-7,
"msg":"手機號碼格式錯誤"
"fee":0,
"mobile":"19800138003",
"sid":"95sw6-5728-838d-95ed-e0e0cec4fd39",
"uid":"1234"
}
]
}
包頭/包體 | 實例 | 備注 |
---|
Header | HTTP/1.1 200 OK Accept-Encoding:identity Content-Length:424 Host:172.16.5.21:45302 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分 |
Body | { "total_fee":2, "data":[{ "code":0, "msg":"發送成功", "fee":1, "mobile":"13800138000", "sid":"08faf6-5728-438d-95ed-e0e0cec4fd37" }, { "code":0, "msg":"發送成功", "fee":1, "mobile":"13800138001", "sid":"09faf6-5728-838d-95ed-e0e0cec4fd39" }, { "code":-7, "msg":"手機號碼格式錯誤", "fee":0, "mobile":"19800138002", "sid":"753af6-5728-838d-95ed-e0e0cec4fd39" }, { "code":-7, "msg":"手機號碼格式錯誤", "fee":0, "mobile":"19800138003", "sid":"95sw6-5728-838d-95ed-e0e0cec4fd39", "uid":"1234" }] }
| 藍色字體為可變部分 |
二、定時短信下行
1、請求
(1)請求地址:
https://u.smsyun.cc/sms-partner/access/{用戶帳號}/timer_send_sms
注意:為了確保數據隱私和安全,用戶需要通過Https Post方式請求,消息格式:json表達式。
(2)Https標準包頭字段:
Accept:application/json;
Content-Type:application/json;charset=utf-8;
(3)請求包體:
屬性 | 類型 | 約束 | 說明 |
---|
clientid | String | 必選 | 帳號,6位,
如:a00012,b00012 |
password | String | 必選 | 密碼,8-12位,MD5加密后32位,小寫,
如:1bbd886460827015e5d605ed44252251 |
mobile | String | 必選 | 發送手機號碼,
國內短信不要加前綴,國際短信號碼前須帶相應的國家區號,如日本:0081,
支持多號碼,號碼之間用英文逗號隔開,最多10萬個。
國內手機號碼如:18612341234
國際號碼如:0085265656565
拼接起來以后用compress_type中指定的壓縮類型壓縮,然后用base64編碼壓縮后的數據 |
smstype | String | 必選 | 短信類型,
"0":通知短信,"4":驗證碼短信,"5":營銷短信 |
content | String | 必選 | 【簽名】+ 短信內容,UTF-8編碼,
短信內容最長500個字(包括英文字母),其中簽名2-12個字(包括英文字母) |
sendtime | String | 可選 | 定時發送時間,
定時發送格式2016-11-11 09:00:00,
定時發送時間距當前時間應該大于5分鐘以上 |
extend | String | 可選 | 自擴展端口,
1-4位,只能為數字,可以為空
(注:請先詢問配置的通道是否支持自擴展端口,如果不支持,請填空) |
uid | String | 可選 | 用戶透傳ID,
隨狀態報告返回,最長60位 |
compress_type | String | 可選 | 默認為gzip壓縮
"0": gzip壓縮 |
注:
①extend字段用于客戶傳送由客戶自行分配給子客戶的擴展端口,用于上行短信回來與之對應。
如:某客戶下有A、B、C三個子客戶,并且該客戶獲得某通道兩位自擴展,分別對其子客戶自行分配的擴展端口依次為子客戶A:01,子客戶B:02,子客戶C:03。
若子客戶A在發送下行短信時將該擴展端口01填入此字段即可,上行短信將會把此字段的擴展端口01發給客戶,用于客戶區分哪個子客戶的上行短信,子客戶A可根據上行短信中的電話號碼對應之前的下行手機號碼;
②uid字段用戶在單、群發短信時,由用戶生成并下發到平臺的序列號(最長不超過60位),該uid將在應答、狀態報告中返回給客戶,用于客戶區分或對應單、群發短信的批次。
定時短信一次最多設置10萬個號碼(目前不支持多內容組發)。
(4)JSON請求示例:
{
"clientid":"test",
"password":"6918d0046aab6a1ee290f751e02bd0b2",
"mobilelist":"H4sICGUEPloAA3Bob25lLmxpc3QATdo7bmNJEEXBDbUxWZW/2v/GmmxgwJCjpPD0rncMIuK/fz….",
"smstype":"4",
"content":"【云通訊】您的驗證碼為:1234",
"sendtime":"2016-11-11 09:00:00",
"extend":"00",
"uid":"00",
"compress_type":"0"
}
包頭/包體 | 實例 | 備注 |
---|
Header | POST /sms-partner/access/test/sendsms HTTP/1.1 Accept-Encoding:identity Content-Length:191 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,
保證路徑正確,采用HTTPS的POST方式發送; |
Body | { "clientid":"test", "password":"6918d0046aab6a1ee290f751e02bd0b2", "mobilelist":"H4sICGUEPloAA3Bob25lLmxpc3QATdo7bmNJEEXBD bUxWZW/2v/GmmxgwJCjpPD0rncMIuK/fz…", "smstype":"4", "content":"【云通訊】您的驗證碼為1234", "sendtime":"2016-11-11 09:00:00", "extend":"00", "uid":"00", "compress_type":"0" }
| 藍色字體為可變部分 |
2、響應
(1)響應包體:
屬性 | 類型 | 約束 | 說明 |
---|
total_fee | Int | 必選 | 短信發送的計費總條數 |
sid | String | 必選 | 短信標識符(sid + 手機號用于匹配狀態報告),
一批定時短信手機號對應一個sid |
uid | String | 可選 | 用戶透傳ID,
隨狀態報告返回 |
comporess_type | String | 可選 | 返回號碼列表使用的壓縮算法。
默認gzip:
0: gzip |
data | | | 發送的詳細情況 |
code | Int | 必選 | 短信請求響應返回碼,
參考“請求響應返回碼”定義的返回碼
(詳見第九章第1節) |
msg | String | 必選 | 短信請求響應返回中文描述,
參考“請求響應返回碼”定義的中文描述
(詳見第九章第1節) |
mobilelist | String | 可選 | 當code=-7或code=-30時存在,表示code對應的號碼列表(同樣使用compress_type指定類型壓縮+base64編碼);
code為其它時無此域 |
mobilecnt | Int | 可選 | 當code=0或code=-7或code=-30時存在,表示code對應的號碼個數;
code為其它時無此域 |
注:
①total_fee表示單(群)發短(長)短信總共計費的條數,該條數等于單條短信計費條數X所有成功返回的號碼數;
②sid是短信平臺產生的唯一標示,與后面返回的狀態報告中的sid+手機號一一對應,用于下發短息與狀態報告相對應;
③uid字段返回內容和第一章第1節請求中的“用戶透傳ID”一致,用于客戶區分或對應單、群發短信的批次;
(2)JSON響應示例:
{
"total_fee":200,
"sid":"08faf6-5728-438d-95ed-e0e0cec4fd37",
"uid":"1234",
"data":[
{
"code":0,
"msg":"發送成功",
"mobilecnt":200
},
{
"code":-7,
"msg":"手機號碼格式錯誤",
"mobilelist":"H4sICGUEPloAA3Bob25lLmxp….",
"mobilecnt":4
}
]
}
包頭/包體 | 實例 | 備注 |
---|
Header | HTTP/1.1 200 OK Accept-Encoding:identity Content-Length:424 Host:172.16.5.21:45302 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分 |
Body | { "total_fee":200, "sid":"08faf6-5728-438d-95ed-e0e0cec4fd37", "uid":"1234", "data":[{ "code":0, "msg":"發送成功", "mobilecnt":200, }, { "code":-7, "msg":"手機號碼格式錯誤", "fee":0, "mobilelist":"1843123454,1843123454,22344433,21822222", "mobilecnt":4 }] }
| 藍色字體為可變部分 |
三、短信上行-推送方式
1、請求
(1)請求地址:
需要第三方自行配置URL地址,接受http post請求,消息格式:json表達式。
該接口一次推送1條上行。
(2)請求包體:
屬性 | 類型 | 約束 | 說明 |
---|
moid | String | 必選 | 上行標識符 |
mobile | String | 必選 | 短信發送端手機號碼 |
content | String | 必選 | 短信內容,UTF-8編碼,最長600個字 |
sign | String | 必選 | 簽名字段,UTF-8編碼 |
extend | String | 可選 | 擴展端口(注:此功能需要通道支持) |
reply_time | String | 必選 | 上行時間 |
注:
①moid是由短信平臺產生的唯一標示,可用于客戶到平臺查詢上行情況;
②extend字段返回內容和第一章(或第二章)第1節請求中的“擴展端口”一致,請查看之前詳細說明;
上行短信中的extend字段與客戶自行分配給子客戶的擴展端口相對應,子客戶即可通過上行中的電話號碼找到之前下發的下行短信與之對應;
(3)JSON請求示例:
{
"moid":"79a11e15-5363-4a0f-b3f0-46240bd3cea6",
"mobile":"13800138000",
"content":"短信上行1",
"sign":"云通訊",
"extend":"00",
"reply_time":"2016-04-02 17:52:15",
}
包頭/包體 | 實例 | 備注 |
---|
Header | POST /xxx/xxx/xxx HTTP/1.1 Accept-Encoding:identity Content-Length:191 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,
保證路徑正確,采用HTTPS的POST方式發送; |
Body | { "moid":"test", "mobile":"13800138000", "content":"短信上行1", "sign":"云通訊", "extend":"00", "reply_time":"2016-04-02 17:52:15", }
| 藍色字體為可變部分 |
2、響應
(1)響應包體:
屬性 | 類型 | 約束 | 說明 |
---|
code | String | 必選 | 返回錯誤碼,0:成功,其它失敗 |
errmsg | String | 可選 | 返回錯誤詳細描述 |
注:
①total_fee表示單(群)發短(長)短信總共計費的條數,該條數等于單條短信計費條數X所有成功返回的號碼數;
②sid是短信平臺產生的唯一標示,與后面返回的狀態報告中的sid+手機號一一對應,用于下發短息與狀態報告相對應;
③uid字段返回內容和第一章第1節請求中的“用戶透傳ID”一致,用于客戶區分或對應單、群發短信的批次;
(2)JSON響應示例:
成功:
{
"code":"0",
}//成功
失?。?br> {
"code":"403",
"errmsg":"ip limit",
}//ip非法
包頭/包體 | 實例 | 備注 |
---|
Header | HTTP/1.1 200 OK Accept-Encoding:identity Content-Length:13 Host:172.16.5.21:45302 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分 |
Body | {"code":"0"} 或 {"code":"403","errmsg":"ip limit"}
| 藍色字體為可變部分 |
四、短信狀態報告-推送方式
1、請求
(1)請求地址:
需要第三方自行配置URL地址,接受http post請求,消息格式:json表達式。該接口一次最多推送100個狀態報告。
(2)請求包體:
屬性 | 類型 | 約束 | 說明 |
---|
sid | String | 必選 | 短信標識符 |
uid | String | 可選 | 用戶透傳ID,隨狀態報告返回 |
mobile | String | 必選 | 短信接收端手機號碼 |
report_status | String | 必選 | 狀態碼,SUCCESS/FAIL |
desc | String | 必選 | 狀態報告代碼,
代碼分類:
1.運營商返回的狀態報告代碼;
短信平臺返回的狀態報告代碼,參考“短信狀態報告返回碼”定義(詳見第九章第2節); |
user_receive_time | String | 必選 | 狀態報告時間 |
注:
①sid字段返回內容和第一章(或第二章)第2節響應中的“短信標識符”一致,用于與之前下行短信的發送記錄相對應;
②uid字段返回內容和第一章(或第二章)第2節響應中的“用戶透傳ID”一致,用于客戶區分或對應單、群發短信的批次;
③report_status表示短信是否成功投遞到手機,下行短信成功投遞到手機上(即手機收到下行短信)狀態碼為SUCCESS,④desc字段將會有投遞成功等相似字段出現(根據不同協議中文描述將會不一樣),如“DELIVER”、“投遞成功”等;下行短信沒有投遞到手機上(即手機沒有收到下行短信)狀態碼為FAIL;④desc字段將會有投遞失敗等相似字段出現(根據不同協議中文描述將會不一樣),如“空號”、“超頻”等。
通過sid和mobile兩字段可確定是哪個手機的下行短信狀態報告;
通過report_status和desc字段可確定手機是否收到下行短信,并清楚下行短信投遞狀態;
通過user_receive_time字段可確定下行短信的到達時間。
(3)JSON請求示例:
[
{
"sid":"08faf6-5728-438d-95ed-e0e0cec4fd37",
"uid":"00",
"mobile":"13800138000",
"report_status":"SUCCESS",
"desc":"DELIVRD",
"user_receive_time":"2016-04-02 17:52:15"
},
{
"sid":"08faf6-5728-438d-95ed-e0e0cec4fd37",
"uid":"00",
"mobile":"13800138001",
"report_status":"FAIL",
"desc":"MC:0001",
"user_receive_time":"2016-04-02 17:52:15"
}
]
包頭/包體 | 實例 | 備注 |
---|
Header | POST /xxx/xxx/xxx HTTP/1.1 Accept-Encoding:identity Content-Length:339 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,
保證路徑正確,采用HTTPS的POST方式發送; |
Body | [{ "sid":"08faf6-5728-438d-95ed-e0e0cec4fd37", "uid":"00", "mobile":"13800138000", "report_status":"SUCCESS", "desc":"DELIVRD", "user_receive_time":"2016-04-02 17:52:15", "clientid":"test", }, { "sid":"08faf6-5728-438d-95ed-e0e0cec4fd37", "uid":"00", "mobile":"13800138001", "report_status":"FAIL", "desc":"MC:0001", "user_receive_time":"2016-04-02 17:52:15", }]
| 藍色字體為可變部分 |
2、響應
(1)響應包體:
屬性 | 類型 | 約束 | 說明 |
---|
code | String | 必選 | 返回錯誤碼,0:成功,其它失敗 |
errmsg | String | 可選 | 返回錯誤詳細描述 |
注:
①total_fee表示單(群)發短(長)短信總共計費的條數,該條數等于單條短信計費條數X所有成功返回的號碼數;
②sid是短信平臺產生的唯一標示,與后面返回的狀態報告中的sid+手機號一一對應,用于下發短息與狀態報告相對應;
③uid字段返回內容和第一章第1節請求中的“用戶透傳ID”一致,用于客戶區分或對應單、群發短信的批次;
(2)JSON響應示例:
成功:
{
"code":"0",
}//成功
失?。?br> {
"code":"403",
"errmsg":"ip limit",
}//ip非法
包頭/包體 | 實例 | 備注 |
---|
Header | HTTP/1.1 200 OK Accept-Encoding:identity Content-Length:13 Host:172.16.5.21:45302 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分 |
Body | {"code":"0"} 或 {"code":"403","errmsg":"ip limit"}
| 藍色字體為可變部分 |
五、短信上行-拉取方式
1、請求
(1)請求地址:
https://u.smsyun.cc/sms-partner/report/{用戶帳號}/getmo
注意:為了確保數據隱私和安全,用戶需要通過Https Post方式請求,消息格式:json表達式。
(2)Https標準包頭字段:
Accept:application/json;
Content-Type:application/json;charset=utf-8;
(3)請求包體:
屬性 | 類型 | 約束 | 說明 |
---|
clientid | String | 必選 | 帳號,6位,如:a00012,b00012 |
password | String | 必選 | 密碼,8-12位,MD5加密后32位,小寫,如:1bbd886460827015e5d605ed44252251 |
(4)JSON請求示例:
{
"clientid":"test",
"password":"6918d0046aab6a1ee290f751e02bd0b2"
}
包頭/包體 | 實例 | 備注 |
---|
Header | POST /sms-partner/access/test/getmo HTTP/1.1 Accept-Encoding:identity Content-Length:67 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,
保證路徑正確,采用HTTPS的POST方式發送; |
Body | {"clientid":"test","password":"6918d0046aab6a1ee290f751e02bd0b2"}
| 藍色字體為可變部分 |
2、響應
(1)響應包體:
屬性 | 類型 | 約束 | 說明 |
---|
code | Int | 必選 | 拉取上行請求響應返回碼,參考“請求響應返回碼”定義的返回碼(詳見第九章第1節) |
msg | String | 必選 | 拉取上行請求響應返回的中文描述,參考“請求響應返回碼”定義的中文描述(詳見第九章第1節) |
data | | | 上行的詳細情況當code<0時,無此數組 |
moid | String | 必選 | 上行標識符 |
mobile | String | 必選 | 短信發送端手機號碼 |
content | String | 必選 | 短信內容,UTF-8編碼,最長600個字 |
sign | String | 必選 | 簽名字段,UTF-8編碼 |
extend | String | 可選 | 擴展端口(注:此功能需要通道支持) |
reply_time | String | 必選 | 上行時間 |
注:
①moid是由短信平臺產生的唯一標示,可用于客戶到平臺查詢上行情況;
②extend字段返回內容和第一章(或第二章)第1節請求中的“擴展端口”一致,請查看之前詳細說明;
上行短信中的extend字段與客戶自行分配給子客戶的擴展端口相對應,子客戶即可通過上行中的電話號碼找到之前下發的下行短信與之對應;
(2)JSON響應示例:
{
"code":0,
"msg":"成功",
"data":[
{
"moid":"79a11e15-5363-4a0f-b3f0-46240bd3cea6",
"mobile":"13800138000",
"content":"短信上行1",
"sign":"云通訊",
"extend":"00",
"reply_time":"2016-04-02 17:52:15"
}
]
}
包頭/包體 | 實例 | 備注 |
---|
Header | POST /xxx/xxx/xxx HTTP/1.1 Accept-Encoding:identity Content-Length:157 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,保證路徑正確,采用HTTPS的POST方式發送; |
Body | { "code":0 ,"msg":"成功" , "data":[{ "moid":"79a11e15-5363-4a0f-b3f0-46240bd3cea6", "mobile":"13800138000", "content":"短信上行1", "sign":"云通訊", "extend":"00", "reply_time":"2016-04-02 17:52:15" }] }
| 藍色字體為可變部分 |
六、短信狀態報告-拉取方式
1、請求
(1)請求地址:
https://u.smsyun.cc/sms-partner/report/{用戶帳號}/getreport
注意:為了確保數據隱私和安全,用戶需要通過Https Post方式請求,消息格式:json表達式。
(2)Https標準包頭字段:
Accept:application/json;
Content-Type:application/json;charset=utf-8;
(3)請求包體:
屬性 | 類型 | 約束 | 說明 |
---|
clientid | String | 必選 | 帳號,6位,如:a00012,b00012 |
password | String | 必選 | 密碼,8-12位,MD5加密后32位,小寫,如:1bbd886460827015e5d605ed44252251 |
(4)JSON請求示例:
{
"clientid":"test",
"password":"6918d0046aab6a1ee290f751e02bd0b2"
}
包頭/包體 | 實例 | 備注 |
---|
Header | POST /sms-partner/access/test/getreport HTTP/1.1 Accept-Encoding:identity Content-Length:67 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,保證路徑正確,采用HTTPS的POST方式發送; |
Body | {"clientid":"test","password":"6918d0046aab6a1ee290f751e02bd0b2"}
| 藍色字體為可變部分 |
2、響應
(1)響應包體:
屬性 | 類型 | 約束 | 說明 |
---|
code | Int | 必選 | 拉取狀態報告請求響應返回碼,參考“請求響應返回碼”定義的返回碼(詳見第九章第1節) |
msg | String | 必選 | 拉取狀態報告請求響應返回的中文描述,參考“短信請求響應返回碼”定義的中文描述(詳見第九章第1節) |
data | | | 上行的詳細情況當code<0時,無此數組 |
sid | String | 必選 | 短信標識符 |
uid | String | 可選 | 用戶透傳ID,隨狀態報告返回 |
mobile | String | 必選 | 短信接收端手機號碼 |
report_status | String | 必選 | 狀態碼,SUCCESS/FAIL |
desc | String | 必選 | 狀態報告代碼,
代碼分類:
1.運營商返回的狀態報告代碼;
短信平臺返回的狀態報告代碼,參考“短信狀態報告返回碼”定義(詳見第八章第2節) |
user_receive_time | String | 可選 | 狀態報告時間 |
注:
①sid字段返回內容和第一章(或第二章)第2節響應中的“短信標識符”一致,用于與之前下行短信的發送記錄相對應;
②uid字段返回內容和第一章(或第二章)第2節響應中的“用戶透傳ID”一致,用于客戶區分或對應單、群發短信的批次;
③report_status表示短信是否成功投遞到手機,下行短信成功投遞到手機上(即手機收到下行短信)狀態碼為SUCCESS;④desc字段將會有投遞成功等相似字段出現(根據不同協議中文描述將會不一樣),如“DELIVER”、“投遞成功”等;下行短信沒有投遞到手機上(即手機沒有收到下行短信)狀態碼為FAIL;④desc字段將會有投遞失敗等相似字段出現(根據不同協議中文描述將會不一樣),如“空號”、“超頻”等。
通過sid和mobile兩字段可確定是哪個手機的下行短信狀態報告;
通過report_status和desc字段可確定手機是否收到下行短信,并清楚下行短信投遞狀態;
通過user_receive_time字段可確定下行短信的到達時間。
(2)JSON響應示例:
{
"code":0,
"msg":"成功" ,
"data":[
{
"sid":"08faf6-5728-438d-95ed-e0e0cec4fd37",
"uid":"00",
"mobile":"13800138000",
"report_status":"SUCCESS",
"desc":" DELIVRD",
"user_receive_time":"2016-04-02 17:52:15"
},
{
"sid":"08faf6-5728-438d-95ed-e0e0cec4fd37",
"uid":"00",
"mobile":"13800138001",
"report_status":"FAIL",
"desc":"MC:0001",
"user_receive_time":"2016-04-02 17:52:15"
}
]
}
包頭/包體 | 實例 | 備注 |
---|
Header | HTTP/1.1 200 OK Accept-Encoding:identity Content-Length:339 Host:172.16.5.21:45302 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,保證路徑正確,采用HTTPS的POST方式發送; |
Body | { "code":0, "msg":"成功" , "data":[ { "sid":"08faf6-5728-438d-95ed-e0e0cec4fd37", "uid":"00", "mobile":"13800138000", "report_status":"SUCCESS", "desc":"DELIVRD", "user_receive_time":"2016-04-02 17:52:15" }, { "sid":"08faf6-5728-438d-95ed-e0e0cec4fd37", "uid":"00", "mobile":"13800138001", "report_status":"FAIL", "desc":"MC:0001", "user_receive_time":"2016-04-02 17:52:15" } ] }
| 藍色字體為可變部分 |
七、余額查詢
1、請求
(1)請求地址:
https://u.smsyun.cc/sms-partner/report/{用戶帳號}/getbalance
注意:為了確保數據隱私和安全,用戶需要通過Https Post方式請求,消息格式:json表達式。
(2)Https標準包頭字段:
Accept:application/json;
Content-Type:application/json;charset=utf-8;
(3)請求包體:
屬性 | 類型 | 約束 | 說明 |
---|
clientid | String | 必選 | 帳號,6位,如:a00012,b00012 |
password | String | 必選 | 密碼,8-12位,MD5加密后32位,小寫,如:1bbd886460827015e5d605ed44252251 |
(4)JSON請求示例:
{
"clientid":"test",
"password":"6918d0046aab6a1ee290f751e02bd0b2"
}
包頭/包體 | 實例 | 備注 |
---|
Header | POST /sms-partner/access/test/getreport HTTP/1.1 Accept-Encoding:identity Content-Length:67 Host:172.16.5.20:9999 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,保證路徑正確,采用HTTPS的POST方式發送; |
Body | {"clientid":"test","password":"6918d0046aab6a1ee290f751e02bd0b2"}
| 藍色字體為可變部分 |
2、響應
(1)響應包體:
屬性 | 類型 | 約束 | 說明 |
---|
code | Int | 必選 | 余額查詢請求返回碼,參考“請求響應返回碼”定義的返回碼(詳見第八章第1節) |
msg | String | 必選 | 余額查詢請求應答返回中文描述參考“請求響應返回碼”定義的中文描述(詳見第八章第1節) |
data | | | 余額的詳細情況當code<0時,無此數組 |
product_type | Int | 必選 | 產品類型,0:行業,1:營銷,2:國際,7:USSD,8:閃信,9:掛機短信 |
remain_quantity | String | 可選 | 剩余總數量,普通短信:條,國際短信:元 |
注:
行業、營銷、USSD、閃信和掛機短信等類型產品返回剩余總條數,國際類型產品返回剩余余額。
(2)JSON響應示例:
{
"code":0,
"msg":"成功" ,
"data":[
{
"product_type":0,
"remain_quantity":"1000"
},
{
"product_type":1,
"remain_quantity":"800"
},
{
"product_type":2,
"remain_quantity":"618.00"
},
{
"product_type":7,
"remain_quantity":"700"
},
{
"product_type":8,
"remain_quantity":"800"
},
{
"product_type":9,
"remain_quantity":"900"
}
]
}
失敗回應:
{
"code":-13,
"data":null,
"msg":"您的費用信息不存在"
}
包頭/包體 | 實例 | 備注 |
---|
Header | HTTP/1.1 200 OK Accept-Encoding:identity Content-Length:314 Host:172.16.5.21:45302 Accept:application/json Content-Type:application/json;charset=utf-8
| 藍色字體為可變部分,保證路徑正確,采用HTTPS的POST方式發送; |
Body | { "code":0, "msg":"成功", "data":[{ "product_type":0, "remain_quantity":"1000" }, { "product_type":1, "remain_quantity":"800" }, { "product_type":2, "remain_quantity":"618.00" }, { "product_type":7, "remain_quantity":"700" }, { "product_type":8, "remain_quantity":"800" }, { "product_type": 9, "remain_quantity":"900" }] }
| 藍色字體為可變部分 |
八、返回碼定義
1、請求返回碼
返回碼 | 描述 | 適用類型 |
0 | 成功 | 全部 |
-1 | 鑒權失?。◣ぬ柣蛎艽a錯誤) | 全部 |
-2 | 賬號余額不足 | 短信下行、 模板短信下行 |
-3 | 賬號被注銷 | 全部 |
-4 | 賬號被鎖定 | 短信下行、 模板短信下行、定時短信下行 |
-5 | ip鑒權失敗 | 全部 |
-6 | 發送號碼為空 | 全部 |
-7 | 手機號碼格式錯誤 | 短信下行、 模板短信下行、定時短信下行 |
-8 | 短信內容超長 | 短信下行、 模板短信下行、定時短信下行 |
-9 | 簽名未報備 | 短信下行、 模板短信下行 |
-10 | 協議類型不匹配 | 短信下行、 模板短信下行、定時短信下行 |
-11 | 不允許拉取狀態報告 | 短信狀態報告 |
-12 | 訪問頻率過快 | 余額查詢、 短信狀態報告、 短信上行 |
-13 | 您的費用信息不存在 | 余額查詢 |
-14 | 內部錯誤 | 余額查詢、 短信狀態報告、 短信上行 |
-15 | 用戶對應的模板ID不存在、或模板未通過審核、或模板已刪除 | 模板短信下行 |
-16 | 模板參數不匹配 | 模板短信下行 |
-17 | USSD、閃信和掛機短信模板不允許發送國際號碼 | 模板短信下行 |
-18 | 模板ID為空 | 模板短信下行 |
-19 | 模板參數含有非法字符 | 模板短信下行 |
-20 | json格式錯誤 | 全部 |
-21 | 解析json失敗 | 全部 |
-22 | 賬號被凍結 | 短信下行、 模板短信下行、定時短信下行 |
-23 | 短信類型為空 | 短信下行、 定時短信下行 |
-24 | 短信內容為空 | 短信下行、 定時短信下行 |
-25 | 發送號碼數量超過100個 | 短信下行、 模板短信下行 |
-26 | 未找到簽名 | 短信下行、 定時短信下行 |
-27 | 簽名長度過短(少于2個字) | 短信下行、 定時短信下行 |
-28 | 簽名長度過長 | 短信下行、 定時短信下行 |
-29 | 發送號碼黑名單 | 短信下行、 模板短信下行、 定時短信下行 |
-30 | 重復的發送號碼 | 短信下行、 模板短信下行、 定時短信下行 |
-31 | 無查詢結果 | 狀態報告查詢接口 |
-32 | 不允許拉取上行 | 短信上行 |
-33 | 定時短信時間格式錯誤 | 定時短信下行 |
-34 | 定時發送時間太短 | 定時短信下行 |
-35 | 客戶不支持發送定時短信 | 定時短信下行 |
-36 | 號碼解壓失敗 | 定時短信下行 |
2、狀態報告返回碼
返回碼 | 描述 |
YX:1000 | 發送號碼超頻 |
YX:1006 | 關鍵字超頻 |
YX:4000 | 系統內部錯誤4000 |
YX:4001 | 系統內部錯誤4001 |
YX:4002 | 短信處理超時 |
YX:4010 | 系統內部錯誤4010 |
YX:4011 | 系統內部錯誤4011 |
YX:4012 | 系統內部錯誤4012 |
YX:4014 | 系統內部錯誤4014 |
YX:4015 | 系統內部錯誤4015 |
YX:4016 | 系統內部錯誤4016 |
YX:4017 | 系統內部錯誤4017 |
YX:4018 | 系統內部錯誤4018 |
YX:4019 | 系統內部錯誤4019 |
YX:5001 | 系統內部錯誤5001 |
YX:5002 | 系統內部錯誤5002 |
YX:5004 | 系統內部錯誤5004 |
YX:5006 | 系統內部錯誤5006 |
YX:5007 | 系統內部錯誤5007 |
YX:5008 | 系統內部錯誤5008 |
YX:5009 | 訂單余額不足 |
YX:7000 | 審核不通過 |
YX:8008 | 系統黑名單 |
YX:8010 | 系統內部錯誤8010 |
YX:8019 | 系統關鍵字 |
YX:9000 | 系統內部錯誤9000 |
YX:9001 | 號碼格式錯誤 |
YX:9002 | 賬號不存在 |
YX:9003 | 系統內部錯誤9003 |
YX:9004 | 無可用通道組 |
YX:9005 | 系統內部錯誤9005 |
YX:9006 | 無可選用通道 |
YX:9007 | 系統內部錯誤9007 |
YX:9008 | 系統內部錯誤9008 |
YX:9010 | 系統內部錯誤9010 |
YX:9011 | 系統內部錯誤9011 |
YX:9012 | 系統超頻錯誤9012 |
YX:9013 | 系統內部錯誤9013 |
YX:9014 | 系統內部錯誤9014 |
YX:9015 | 系統內部錯誤9015 |