提交發送接口

蒙彼利埃碧蓝 www.oxlgqu.com.cn 功能說明:用于提交發送短信的常規方法

請求地址: //api.51welink.com/EncryptionSubmit/SendSms.ashx
https://api.51welink.com/EncryptionSubmit/SendSms.ashx

參數說明:

參數名 參數類型 是否必傳 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,長度9,不能含有小數及L
ExtendNo string N 企業代碼,不超過15位數字,超出會被截斷,數字串
Random Long Y 隨機數,大于等于1,小于等于9223372036854775807
ProductId int Y 產品編碼
PhoneNos string Y 接收號碼間用英文半角逗號“,”隔開,觸發產品一次只能提交一個,其他產品一次不能超過10萬個號碼
Content string Y 短信內容:不超過4000字符
SendTime datetime N 短信定時時間,格式:yyyy-MM-dd HH:mm:ss
OutId string N 用戶自定義參數,長度≤32,字符串格式

AccessKey加密說明:

AccessKey根據公式sha(AccountId={賬戶名稱}&PhoneNos={第一個手機號碼}&Password={md5(密碼原文+SMmsEncryptKey)}&Random={隨機數}&Timestamp={unix時間戳精確到秒})生成。AccessKey串中的參數名稱注意大小寫和參數順序,隨機數是long類型,數值范圍在1 至9223372036854775807之間。

譬如:賬戶(AccountId):yanfa001,第一個手機號碼(PhoneNos):13699999999,密碼(Password):yanfa001,固定的加密key:SMmsEncryptKey,隨機數(Random):6203922,時間戳(Timestamp):1532928860。

則MD5加密后的密碼(password)為:

MD5("yanfa001SMmsEncryptKey")="B54B89712EB997BE99114478E3673E3F",必須為大寫。

則憑證(AccessKey)為:

sha256(AccountId=yanfa001&PhoneNos=13699999999&Password=B54B89712EB997BE99114478E3673E3F&Random=6203922&Timestamp=1532928860)="6ba256e4cf24dd386cfa8f6835df7b41e8d6f5c1ccdc1a1062646a05133e0f51"

  • 傳參示例:

    									

    {

    AccountId:"yanfa001",

    AccessKey:" 6ba256e4cf24dd386cfa8f6835df7b41e8d6f5c1ccdc1a1062646a05133e0f51",

    Timestamp:"1532928860",

    Random:"6203922",

    ExtendNo: "",

    ProductId: "1011618",

    PhoneNos: "13699999999",

    Content:"短信內容【微網通聯】",

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值,返回succ標識提交成功
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
MsgId long 信息批次號
SplitCount byte 單條短信內容拆分條數
  • 返回值示例:

    									

    {

    "Result":"succ",

    "Reason":"提交成功",

    "MsgId": 1906051002570082261,

    "SplitCount":1

    }

個性化短信發送

功能說明:用于提交個性化短信

請求地址: //api.51welink.com/EncryptionSubmit/SendMultiSms.ashx
https://api.51welink.com/EncryptionSubmit/SendMultiSms.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
ExtendNo string N 企業代碼,不超過15位數字,超出會被截斷,數字串
Random int Y 隨機數,大于等于1,小于等于9223372036854775807
ProductId int Y 產品編碼
OutId string N 用戶自定義參數,長度≤32,字符串格式
TempParams string Y 模板變量,見下方說明
TemplateSms string Y 模板,見下方說明

AccessKey加密說明:

AccessKey根據公式sha(AccountId={賬戶名稱}&Password={md5(密碼原文+SMmsEncryptKey)}&Random={隨機數}&Timestamp={unix時間戳精確到秒})生成。AccessKey串中的參數名稱注意大小寫和參數順序,隨機數是long類型,數值范圍在1 至9223372036854775807之間。

譬如:賬戶(AccountId):yanfa001,密碼(Password):yanfa001,固定的加密key:SMmsEncryptKey,隨機數(Random):6203922,時間戳(Timestamp):1532928860,則MD5加密后的密碼(password)為:MD5("yanfa001SMmsEncryptKey")="B54B89712EB997BE99114478E3673E3F",必須為大寫。

則憑證(AccessKey)為:

sha256(AccountId=yanfa001&Password=B54B89712EB997BE99114478E3673E3F&Random=6203922&Timestamp=1532928860)="e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137"

  • TempParams參數說明

    結構說明:

    									

    <ISMV> /*結構頭標識*/

    <VU>

    <VT><V>13810252940</V></VT> /*此處必須為手機號碼,不能是其他內容*/

    <VT><V>P1</V></VT> /*第一個參數名稱,會作為信息內容顯示*/

    <VT><V>P2</V></VT> /*第二個參數名稱,會作為信息內容顯示*/

    <VT><V>P3</V></VT> /*第三個參數名稱,會作為信息內容顯示*/

    <VT><V>PN</V></VT> /*第N個參數名稱,會作為信息內容顯示,N,短信變量數量,根據實際需求定義*/

    </VU>

    <VU>

    <VT><V>13810252940</V></VT> /*此處必須為手機號碼,不能是其他內容*/

    <VT><V>P1</V></VT> /*第一個參數名稱,會作為信息內容顯示*/

    <VT><V>P2</V></VT> /*第二個參數名稱,會作為信息內容顯示*/

    <VT><V>P3</V></VT> /*第三個參數名稱,會作為信息內容顯示*/

    <VT><V>PN</V></VT> /*第N個參數名稱,會作為信息內容顯示,N,短信變量數量,根據實際需求定義*/

    </VU>

    </ISMV> /*結構尾標識*/

以上結構中:

如果要發送至多個號碼則需要多個<VU>單元,上述的結構示例中表示信息要發送到2個手機號碼上。

實際參數示例:

							

<ISMV><VU><VT><V>13963330881</V></VT><VT><V>A1</V></VT><VT><V>B2</V></VT><VT><V>C3</V></VT></VU><VU><VT><V>13863320432</V></VT><VT><V>A1</V></VT><VT><V>B2</V></VT><VT><V>C3</V></VT></VU></ISMV>

TemplateSms參數說明

結構說明:

{##}P1的內容{##}P2的內容{##}P3的內容……{##}PN的內容
其中【{##}】的個數要和短信變量參數中的參數的個數和順序對應。
【{##}】相當于各參數的占位符
實際參數示例:{##}提交{##}個性{##}信息

  • 傳參示例

    									

    {

    "ExtendNo":"8899",

    "OutId":"",

    "ProductId":"1010888",

    "TemplateSms":"個性短信測試{##}【微網】",

    "TempParams":"<ISMV><VU><VT><V>18954426057</V></VT><VT><V>anbaili</V></VT></VU></ISMV>",

    "TimeStamp":1532928860,

    "AccessKey":"e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137",

    "AccountId":"yanfa001",

    "Random":6203922

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
MsgId string 信息批次號
  • 返回值示例:

    									

    {

    "State":"succ",

    "MsgId":"072317322747d1f",

    "MsgState":"成功"

    }

模板發送接口

功能說明:用于提交模板短信

請求地址: //api.51welink.com/EncryptionSubmit/SendTemplateSms.ashx
https://api.51welink.com/EncryptionSubmit/SendTemplateSms.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
ExtendNo string N 企業代碼,不超過15位數字,超出會被截斷,數字串
Random long Y 隨機數,大于等于1,小于等于9223372036854775807
ProductId int Y 產品編碼
TempCode int Y 審核通過的模板 ID
PhoneNos string Y 接收號碼間用英文半角逗號“,”隔開,觸發產品一次只能提交一個,其他產品一次不能超過10萬個號碼
TempParams JSON格式 N 模板參數(單個參數長度不超過30字符)示例:["參數1","參數2"]
SendTime datetime N 短信定時時間,格式:yyyy-MM-dd HH:mm:ss
OutId string N 用戶自定義參數,長度≤32,字符串格式

加密說明:

AccessKey根據公式sha(AccountId={賬戶名稱}&PhoneNos={第一個手機號碼}&Password={md5(密碼原文+SMmsEncryptKey)}&Random={隨機數}& TempCode={模板Id}&Timestamp={unix時間戳精確到秒})生成。AccessKey串中的參數名稱注意大小寫和參數順序,隨機數是long類型,數值范圍在1 至9223372036854775807之間。

譬如:賬戶(AccountId):yanfa001,第一個手機號碼(PhoneNos)=13699999999,密碼(Password):yanfa001,固定的加密key:SMmsEncryptKey,隨機數(Random):6203922,模板Id(TempCode):412220,時間戳(Timestamp):1532928860,則MD5加密后的密碼(password)為:

MD5("yanfa001SMmsEncryptKey")="B54B89712EB997BE99114478E3673E3F",必須為大寫。

則憑證(AccessKey)為:

sha256(AccountId=yanfa001&PhoneNos=13699999999&Password=B54B89712EB997BE99114478E3673E3F&Random=6203922&TempCode=412220&Timestamp=1532928860)="027d09845c4d6dad73411a9a5783f9224f7363cecf05818e832ceccc55cf6648"

  • 傳參示例

    如已報備模板:尊貴的會員:{1},您于{2}在{3}消費了{4}元,謝謝您的惠顧【星巴克】

    									

    {

    AccountId:"yanfa001",

    TempCode:412220,

    AccessKey:"027d09845c4d6dad73411a9a5783f9224f7363cecf05818e832ceccc55cf6648",

    Timestamp:"1532928860",

    Random:"6203922",

    ExtendNo:"",

    ProductId:"1012812",

    PhoneNos:"13699999999",

    TempParams:["姚磊","2019-07-24 12:00:00","萬達廣場店","103.87"]

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
MsgId long 信息批次號
SplitCount byte 單條短信內容拆分條數
  • 返回值示例:

    									

    {

    "Result":"succ",

    "Reason":"提交成功",

    "MsgId":1906061056110000277

    "SplitCount":1

    }

拉取短信狀態

功能說明:用于查詢狀態報告

請求地址: //api.51welink.com/EncryptionQuery/GetReport.ashx
https://api.51welink.com/EncryptionQuery/GetReport.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
Random int Y 隨機數,大于0
OutId string N 發送短信時用戶自定義的key
ReportTime string N 狀態報告接收時間,格式YYYY-MM-DD,(如果填寫空字符串,默認無時間限制,即從最早的狀態報告開始取,否則獲取指定日的報告)

加密說明:

同個性化短信加密說明

  • 傳參示例

    									

    {

    "OutId":"",

    "TimeStamp":1532928860,

    "AccessKey":"e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137",

    "AccountId":"yanfa001",

    "Random":6203922,

    "ReportTime":"2019-06-05"

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見《Json加密接口返回狀態碼說明》文檔
ReportInfos List<ReportInfo> ReportInfo類型集合

ReportInfo說明:

字段名 字段類型 描述
MsgID string 信息編號
PhoneNos string 手機號碼
SendTime datetime 發送時間
ReportDesc string 供應商狀態碼描述
ReportCode string 供應商狀態碼(1是成功,0是失敗),標識是否送達至用戶手機終端
ReportTime datetime 狀態報告時間
SpNo string 長號碼
ExtendNo string 擴展號
OutId string 客戶傳入的Key
SendCode string 供應商發送狀態碼(1是成功,0是失敗),標識此條信息是否送達至運營商網關
SendDesc string 供應商發送狀態碼說明
SplitCount int 長短信短信拆分條數,普通短信默認1
MsgNo int 長短信條數序號
AccountId string 客戶賬號
SourceCode string 網關狀態碼,同ReportCode
SourceDesc string 網關狀態碼描述,如成功DELIVRD等
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "ReportInfos": [

    {

    "MsgID":"1906051540450647601",

    "PhoneNos": "13212345678",

    "SendTime": "2019-06-05 15:38:54",

    "ReportDesc": "成功",

    "ReportCode": "DELIVRD",

    "ReportTime": "2019-06-05 15:38:54",

    "SpNo": "10698888987",

    "ExtendNo": "987",

    "OutId": "131231231",

    "SendCode": "1",

    "SendDesc": "0",

    "SplitCount": "1",

    "MsgNo": "1",

    "AccountId": "wd20180921",

    "SourceCode": "1",

    "SourceDesc": "DELIVRD"

    },

    {

    "MsgID":"1906051540450647602",

    "PhoneNos": "13212345672",

    "SendTime": "2019-06-05 15:38:54",

    "ReportDesc": "空號|?;?quot;,

    "ReportCode": "LM0001",

    "ReportTime": "2019-06-05 15:38:54",

    "SpNo": "10698888987",

    "ExtendNo": "987",

    "OutId": "131231231",

    "SendCode": "1",

    "SendDesc": "0",

    "SplitCount": "1",

    "MsgNo": "1",

    "AccountId": "wd20180921",

    "SourceCode": "0",

    "SourceDesc": "MK:0115"

    }

    ]

    }

供應商狀態碼說明:

供應商狀態碼ReportCode 描述ReportDesc
DELIVRD 成功
LM0001 空號|?;?/td>
LM0002 關機|無法接通
LM0003 內容|敏感關鍵詞攔截
LM0004 黑名單|屏蔽
LM0005 地區屏蔽
LM0006 簽名未報備
LM0007 流量限制
LM0008 網關異常|無法連接
LM0009 簽名攔截
LM0010 同號碼流控
LM0011 網關攔截
LM0012 手機內存滿|超有效期
LM0013 同內容流控
LM0014 其它異常

拉取短信上行

功能說明:用于查詢上行信息

請求地址: //api.51welink.com/EncryptionQuery/GetMo.ashx
https://api.51welink.com/EncryptionQuery/GetMo.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
Random int Y 隨機數,大于0

加密說明:

同個性化短信的加密說明

  • 傳參示例

    									

    {

    "TimeStamp":1532928860,

    "AccessKey":"e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137",

    "AccountId":"yanfa001",

    "Random":6203922

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
MoInfos List<MoInfo> MoInfo類型集合
IsFull bool 取的信息條數是否符合配置的信息條數

MoInfo返回值說明:

字段名 字段類型 描述
MsgID string 信息編號
PhoneNos string 手機號碼
SpNo string 長號碼
MoContent string 上行內容
MoTime datetime 上行時間
ExtendNo string 擴展號
Province string 手機號歸屬省份
City string 手機號歸屬城市
OutId string 發送短信的自定義key
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "IsFull": true,

    "MoInfos": [

    {

    "MsgID": "123123123",

    "SpNo": "106900006666",

    "PhoneNos": "18512345678",

    "MoContent": "這是上行信息",

    "MoTime": "2019-06-05 15:49:58",

    "ExtendNo": "6666",

    "Province": "北京",

    "City": "北京",

    "OutId": "12312312"

    }

    ]

    }

視頻短信發送

功能說明:用于提交視頻短信

請求地址: //api.51welink.com/EncryptionSubmit/SendVideoSms.ashx
https://api.51welink.com/EncryptionSubmit/SendVideoSms.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
ExtendNo string N 企業代碼,不超過15位數字,超出會被截斷,數字串
Random Long Y 隨機數,大于等于1,小于等于9223372036854775807
ProductId int Y 產品編碼
TempCode int Y 審核通過的模板 ID
PhoneNos string Y 接收號碼間用英文半角逗號“,”隔開,觸發產品一次只能提交一個,其他產品一次不能超過10萬個號碼
SendTime datetime N 短信定時時間,格式:yyyy-MM-dd HH:mm:ss
OutId string N 用戶自定義參數,長度≤32,字符串格式

加密說明:

AccessKey根據公式sha256(AccountId={賬戶名稱}&PhoneNos={第一個手機號碼}&Password={md5(密碼原文+SMmsEncryptKey)}&Random={隨機數}& TempCode={模板Id}&Timestamp={unix時間戳精確到秒})生成。AccessKey串中的參數名稱注意大小寫和參數順序,隨機數是long類型,數值范圍在1 至9223372036854775807之間。

譬如:賬戶(AccountId):yanfa001,第一個手機號碼(PhoneNos)=13699999999,密碼(Password):yanfa001,固定的加密key:SMmsEncryptKey,隨機數(Random):123456,模板Id(TempCode):412239,時間戳(Timestamp):123654978,則MD5加密后的密碼(password)為:MD5("yanfa001SMmsEncryptKey")="B54B89712EB997BE99114478E3673E3F",必須為大寫。

則憑證(AccessKey)為:

sha256(AccountId=yanfa001&PhoneNos=13699999999&Password=B54B89712EB997BE99114478E3673E3F&Random=123456&TempCode=412239&Timestamp=123654978)="21e3aa7f9913bad93acef94b501f80949a7782a83693a64a922e23d86124def7"

  • 傳參示例

    如已報備視頻短信模板: 412239

    									

    {

    AccountId:"yanfa001",

    TempCode:412239,

    AccessKey:"21e3aa7f9913bad93acef94b501f80949a7782a83693a64a922e23d86124def7",

    Timestamp:"123654978",

    Random:"123456",

    ExtendNo:"",

    ProductId:"2012883",

    PhoneNos:"13699999999"

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
MsgId long 信息批次號
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "提交成功",

    "MsgId": 1907311938430000377

    }

視頻短信模板報備

功能說明:用于報備視頻短信模板

請求地址: //api.51welink.com/EncryptionQuery/AddVideoTemplate.ashx
https://api.51welink.com/EncryptionQuery/AddVideoTemplate.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
Random int Y 隨機數,大于0
VideoSmsContents Object Y 報備的內容,必須在2M以內,文件個數在1-6個。
TempTitle string Y 模板名稱(長度不超過20字符)
Callback string N 審核結果異步推送至該地址 //callback
Remark string N 模板備注,比如申請原因,使用場景等(長度不超過60字符)

VideoSmsContents參數說明:

參數名 參數類型 值是否必填 參數描述
Filename string Y 文件名稱(帶有擴展名,支持文本[txt],圖片[gif,jpg,bmp,jpe,jpeg,png],視頻[rm,avi,3gp,mp4],音頻[mid,midi,mp2,mp3,amr,mp3,wma,arm]。

注意,文件擴展名須與實際文件類型擴展名相同。某些格式音頻視頻在特定手機上可能不受支持

Content string Y 讀取文件流并進行Base64編碼。注意文本使用UTF-8編碼。

加密說明:

加密說明:AccessKey根據公式sha256(AccountId={賬戶名稱}&Password={md5(密碼原文+SMmsEncryptKey)}&Random={隨機數}&Timestamp={unix時間戳精確到秒})生成。AccessKey串中的參數名稱注意大小寫和參數順序,隨機數是long類型,數值范圍在1 至9223372036854775807之間。

譬如:賬戶(AccountId):yanfa001,密碼(Password):yanfa001,固定的加密key:SMmsEncryptKey,隨機數(Random):6203922,時間戳(Timestamp):1532928860,則MD5加密后的密碼(password)為:MD5("yanfa001SMmsEncryptKey")="B54B89712EB997BE99114478E3673E3F",必須為大寫。

則憑證(AccessKey)為:

sha256(AccountId=yanfa001&Password=B54B89712EB997BE99114478E3673E3F&Random=6203922&Timestamp=1532928860)="e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137"

  • 傳參示例

    									

    {

    AccountId:"yanfa001",

    AccessKey:"e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137",

    Timestamp:" 1532928860",

    Random:" 6203922",

    VideoSmsContents:[

    {

    Filename:"1.txt",

    Content:"Base64(Encoding.UTF8.GetBytes(“中文”))"

    },

    {

    Filename:"2.jpg",

    Content:"Base64(File.ReadAllBytes("2.jpg"))"

    },

    {

    Filename:"3.mp4",

    Content:" Base64(File.ReadAllBytes("3.mp4"))"

    }

    ],

    Callback: "//xxx.xxx.com/template",

    TempTitle: "視頻短信模板",

    Remark:"星巴克會員消費通知2019-01-01添加"

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
TempCode int 模板編號
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "TempCode": 412226

    }

添加短信模板

功能說明:用于添加短信模板

請求地址: //api.51welink.com/EncryptionQuery/AddTemplate.ashx
https://api.51welink.com/EncryptionQuery/AddTemplate.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
Random int Y 隨機數,大于0
Content string Y 模板內容不超過500字符,內容必須帶簽名,在內容開始或結束位置;
示例:【微網通聯】您的驗證碼是123456.,請于3分鐘內填寫;
模板創建為:【微網通聯】您的驗證碼是{1},請于{2} 分鐘內填寫;
TempTitle string Y 模板名稱(長度不超過20字符)
Callback string N 審核結果異步推送至該地址 //callback
Remark string N 模板備注,比如申請原因,使用場景等(長度不超過60字符)

加密說明:

加密說明:AccessKey根據公式sha(AccountId={賬戶名稱}&Password={md5(密碼原文+SMmsEncryptKey)}&Random={隨機數}&Timestamp={unix時間戳精確到秒})生成。AccessKey串中的參數名稱注意大小寫和參數順序,隨機數是long類型,數值范圍在1 至9223372036854775807之間。

譬如:賬戶(AccountId):yanfa001,密碼(Password):yanfa001,固定的加密key:SMmsEncryptKey,隨機數(Random):6203922,時間戳(Timestamp):1532928860,則MD5加密后的密碼(password)為:MD5("yanfa001SMmsEncryptKey")="B54B89712EB997BE99114478E3673E3F",必須為大寫。

則憑證(AccessKey)為:

sha256(AccountId=yanfa001&Password=B54B89712EB997BE99114478E3673E3F&Random=6203922&Timestamp=1532928860)="e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137"

  • 傳參示例

    									

    {

    AccountId:"yanfa001",

    AccessKey:"e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137",

    Timestamp:"1532928860",

    Random:"6203922",

    Content:"尊貴的會員:{1},您于{2}在{3}消費了{4}元,謝謝您的惠顧【星巴克】",

    Callback:"//xxx.xxx.com/template",

    TempTitle:"消費通知模板",

    Remark:"星巴克會員消費通知2019-01-01添加"

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
TempCode int 模板編號
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "TempCode": 412226

    }

查詢短信(視頻短信)模板

功能說明:用于查詢短信(視頻短信)模板

請求地址: //api.51welink.com/EncryptionQuery/GetTemplate.ashx
https://api.51welink.com/EncryptionQuery/GetTemplate.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
TempCode int Y 模板Id標識
Random int Y 隨機數,大于0

加密說明:

AccessKey根據公式sha256(AccountId={賬戶名稱}&Password={md5(密碼原文+SMmsEncryptKey)}&TempCode ={模板Id}&Random={隨機數}&Timestamp={unix時間戳精確到秒})生成。AccessKey串中的參數名稱注意大小寫和參數順序,隨機數是long類型,數值范圍在1 至9223372036854775807之間。

譬如:賬戶(AccountId):yanfa001,密碼(Password):yanfa001,固定的加密key:SMmsEncryptKey,模板Id(TempCode): 412122,隨機數(Random):6203922,時間戳(Timestamp):1532928860,則MD5加密后的密碼(password)為:

MD5("yanfa001SMmsEncryptKey")="B54B89712EB997BE99114478E3673E3F",必須為大寫。

則憑證(AccessKey)為:

sha256(AccountId=yanfa001&Password=B54B89712EB997BE99114478E3673E3F&TempCode=412122&Random=6203922&Timestamp=1532928860)="4c51ce38d87a4b6c333afccba751821552a38e7229f6263b3249448ed6636c03"

  • 傳參示例

    									

    {

    AccountId:"yanfa001",

    AccessKey:"4c51ce38d87a4b6c333afccba751821552a38e7229f6263b3249448ed6636c03",

    Timestamp:"1532928860",

    Random:"6203922",

    TempCode:412122

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔 錯誤碼-返回值枚舉部分
TempCode int 模板Id標識
TempTitle string 模板標題(視頻短信為短信標題,模板短信為模板名稱)
Content string 模板內容(視頻短信為空,模板短信為模板內容)
TempStatus int 當前狀態,1:未審核,2:有效,3:無效。
TempDesc string 審批信息,供應商駁回原因說明
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "TempCode": 412225,

    "TempStatus": 1,

    "TempDesc": "",

    "TempTitle": "",

    "Content": "尊貴的會員:{1},您于{2}在{3}消費了{4}元,謝謝您的惠顧【星巴克】"

    }

刪除短信模板

功能說明:用于刪除短信模板

請求地址: //api.51welink.com/EncryptionQuery/DelTemplate.ashx
https://api.51welink.com/EncryptionQuery/DelTemplate.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
TempCode int Y 模板Id標識
Random int Y 隨機數,大于0

加密說明:

同添加短信模板加密方式

  • 傳參示例

    									

    {

    "TimeStamp":1532928860,

    "AccessKey":"a48a5803c5e3965cbcd3c42e739c558b8d9815c640addd057ecd87d2555268a7",

    "AccountId":"yanfa001",

    "Random":12345,

    "TempCode":412122

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
Content string 模板內容
TempStatus int 刪除前的狀態,1:未審核,2:有效,3:無效。
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "Content": "尊貴的會員:*{V1:.{1,30}}*,您于*{V2:.{1,30}}*在*{V3:.{1,30}}*消費了*{V4:.{1,30}}*元,謝謝您的惠顧【星巴克】",

    "TempStatus": 2

    }

模板審核結果推送

回調推送說明:

功能說明:只給客戶模板報備時傳遞了回調地址參數的模板進行審核結果推送

推送方式:只支持POST

數據格式式:JSON

推送的參數說明:

參數名 參數類型 參數描述
TempCode int 模板ID
TempStatus int 審核結果
0:已通過
1:待審核,
2:已拒絕
Content string 模板內容
TempDesc string 審核說明,審核狀態為“無效”時才有值

回調推送響應結果說明:

如果返回json數據 {"result":"ok"}則表示回調推送成功,否則認為是回調推送失敗

查詢賬號余量

功能說明:用于查詢余量

請求地址: //api.51welink.com/EncryptionQuery/GetRemain.ashx
https://api.51welink.com/EncryptionQuery/GetRemain.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
ProductId int Y 產品編號
Random int Y 隨機數,大于0

加密說明:

同個性化短信加密說明

  • 傳參示例

    									

    {

    "TimeStamp":1532928860,

    "AccessKey":"e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137",

    "AccountId":"yanfa001",

    "Random":6203922,

    "ProductId":1012812

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
Remain int 余量
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "Remain": 1004640454

    }

查詢發送計費

功能說明:用于查詢計費量

請求地址: //api.51welink.com/EncryptionQuery/GetCharge.ashx
https://api.51welink.com/EncryptionQuery/GetCharge.ashx

參數說明:

參數名 參數類型 值是否必填 參數描述
AccountId string Y 提交賬戶
AccessKey string Y 加密后的key,加密說明見下方
Timestamp long Y Unix時間戳,精確到秒,不能含有小數及L
ProductId string N 產品編號,不填代表查詢所有產品數據
Random long Y 隨機數,大于0
BeginDate Date Y 查詢開始時間,格式:2019-06-24
EndDate Date Y 查詢結束時間,格式:2019-06-30

加密說明:

同個性化短信加密說明

  • 傳參示例

    									

    {

    "TimeStamp":1532928860,

    "AccessKey":"e2e0c1c377356545688cf25658fc9bbaf590d7d23e030513717c22ad8f16a137",

    "AccountId":"yanfa001",

    "Random":6203922,

    "ProductId":"1012812",

    "BeginDate":"2019-06-24",

    "EndDate":"2019-06-30"

    }

返回值字段說明:

字段名 字段類型 描述
Result string 返回狀態值
Reason string 返回狀態描述,參見文檔錯誤碼-返回值枚舉部分
ChargeInfos List<ChargeInfo> ChargeInfo類型集合

ChargeInfo返回值說明:

字段名 字段類型 描述
AccountId string 賬號Id
ProductId int 產品Id
Date date 日期
TotalCount int 號碼數量
TotalCharge int 計費數量
  • 返回值示例:

    									

    {

    "Result": "succ",

    "Reason": "成功",

    "ChargeInfos": [

    {

    "AccountId": "wd20180921",

    "ProdutcId": 1010888,

    "Date": "2019-06-21",

    "TotalCount": 1,

    "TotalCharge": 0

    }

    ]

    }

SDK文檔

SDK 名稱 SDK 文檔
Java SDK 短信 Java SDK 文檔
PHP SDK 短信 PHP SDK 文檔

錯誤碼-返回值

狀態碼 描述
succ 成功,表示提交成功
101 提交參數不可為空,或參數格式錯誤
102 時間格式不正確,正確格式為yyyy-MM-dd HH:mm:ss
104 暫不支持該請求方式,只支持GET和POST
105 登錄憑證校驗失敗
106 與服務器時間差異超過 10 分鐘
107 模板長度超過限制
108 模板內容無簽名
109 模板變量數量超過限制
110 模板參數格式不正確
111 模板名稱長度超過限制
112 模板備注長度超過限制
113 指定的模板不存在
114 指定的模板未審核通過
115 參數與模板無法匹配
116 模板已刪除或不存在
117 模板添加失敗
118 模板回調地址格式不正確
119 時間范圍不正確
1000 尚未成功啟動請檢查日志,供應商內部錯誤,請聯系供應商
1001 提交參數錯誤!
1002 未成功加載號段???,供應商內部錯誤,請聯系供應商
1003 超過最大內容長度,內容長度:%d,短信提交時,提交的內容長度大于4000
1004 未成功加載賬戶???,供應商內部錯誤,請聯系供應商
1005 未成功加載私有關鍵字???,供應商內部錯誤,請聯系供應商
1006 未成功加載擴展產品???,供應商內部錯誤,請聯系供應商
1007 錯誤的信息類型:消息類型
1008 超過最大并發提交用戶數%d
1009 號碼為空或超過最大提交號碼個數%d,最大10w個手機號碼
1010 信息內容為空或超過最大信息字節長度:%d,內容長度:%d
1011 超過最大企業號碼長度:%d,或企業號碼不包含:%s
1012 超過最大企業號碼長度:%d或%d企業號碼不可擴展
1013 賬號密碼不正確或賬號狀態異常,帳號:%s,狀態:%d
1014 賬戶提交方式不正確或Ip受限
1015 系統登錄名檢測不正確或IP受限
1016 產品不存在或未開啟:%d,供應商內部錯誤,請聯系供應商
1017 提交信息類型與產品信息類型不符合
1018 提交失敗:超過產品發送時段(%s-%s)
1019 提交彩信必須有標題
1020 提交短信不可超過%d個字,消息長度:%d
1021 提交彩信不可超過%dK
1022 計費數為0,供應商內部錯誤,請聯系供應商
1023 無效計費條數,號碼不規則
1025 Account:%s 余額不足或計費異常(異常碼:%d)
1026 提交至調度中心失敗,供應商內部錯誤,請聯系供應商
1028 提交號碼未達到產品要求數量,或賬戶%s無對應的產品%d(異常碼:%d)
1029 擴展產品%d不可提交多個號碼
1031 提交時間[%s]+%d天>定時發送時間[%s]>提交時間[%s] 規則不成立
1032 自由簽名的產品%d,簽名格式不正確
1033 產品%d的正則簽名%s配置有誤
1034 錯誤的內容長度,ErrorCode:%d
1035 強制簽名的產品%d,簽名格式不正確
1036 企業代碼不正確,賬號上企業碼:%s,用戶提交的企業碼:%s
1037 未成功加載賬戶強制簽名報備???,供應商內部錯誤,請聯系供應商
1038 產品%d要求強制簽名,賬號%s,企業代碼%s,簽名 %s 未報備
1039 未成功加載白名單???,供應商內部錯誤,請聯系供應商
1040 消息編號生成失敗,供應商內部錯誤,請聯系供應商
1041 未成功加載賬戶內容模版???,供應商內部錯誤,請聯系供應商
1042 內容不符合模版,供應商內部錯誤,請聯系供應商
1043 未成功加載賬戶安全登錄???,供應商內部錯誤,請聯系供應商
1044 未成功加載計費???,供應商內部錯誤,請聯系供應商
1045 未成功加載組合關鍵字???,供應商內部錯誤,請聯系供應商
1046 未成功加載賬戶平臺資源模版???,供應商內部錯誤,請聯系供應商
1047 信息內容不可為空
1048 該信息未成功報備,請審核通過再提交發送,accId=%d,templateID=%d
1049 超過最大企業號碼長度:%d,且賬號不支持超長擴展,企業接入號:%s
1050 賬號密碼不正確或賬號狀態異常,賬號:%d,CommitIP:%d
1051 提交短信不可超過%d個字,提交消息長度:%d
1052 無效計費條數,號碼不規則
1053 產品%d的正則簽名%s配置有誤
1054 企業代碼不正確,用戶提交的企業碼:%s
2001 變量文件格式不正確
2002 模版文件格式不正確
2003 提交隊列失敗,供應商內部錯誤,請聯系供應商
-99 異常,供應商內部錯誤,請聯系供應商

常見問題

  • 提交返回“提交參數不可為空,或參數格式錯誤”

    可能由以下原因導致:

    1) 請求URL時未傳遞參數或者body。

    2) 請求Body參數中,缺少必傳參數項,如AccountId、AccessKey、Random、PhoneNos、TimeStamp、ProductId、Content。

    3) 請求頭類型Content Type未與請求數據格式相對應,如json格式參數沒有使用application/json,使用了application/x-www-form-urlencoded。如字符串&符號拼接參數方式沒有使用application/x-www-form-urlencoded類型,使用了其他類型。

  • 提交返回“登錄憑證校驗失敗”

    可能由以下原因導致:

    1) MD5加密后的字符串不是32位大寫。

    2) MD5加密串AccessKey中沒有包含固定key:SMmsEncryptKey。

    3) 加密串AccessKey中的參數值拼寫不正確,包括未按照要求大小寫。

    4) 時間戳Timestamp沒有精確到秒或者超過10分鐘。

    5) 請求body中的Random值與AccessKey串中的Random值不一致。

    6) 請求body中的Timestamp值與AccessKey串中的Timestamp值不一致。

    7) 請求body中的AccountId值與AccessKey串中的AccountId值不一致。

    8) AccessKey串中的手機號碼與PhoneNos參數中的第一個號碼不一致。

    9) AccessKey串中各個參數的順序不符合示例要求。

    10) Random值為0、負數或者0開頭的數字串。