API: Mail/XSend - 郵件模板發(fā)送
概覽
mail/xsend
是郵件 API 的升級版本。與 mail/send
API 一樣,mail/xsend
提供強大的郵件發(fā)送功能,區(qū)別于 mail/send
API,mail/xsend
無需提交 html 源碼或郵件文本內(nèi)容,甚至無需提交郵件標題或發(fā)件人,僅需提交你在 SUBMAIL MAIL 中創(chuàng)建的郵件項目模板ID,并可以使用變量動態(tài)的控制每封郵件的內(nèi)容。
項目模版ID:
了解如何使用文本變量和超鏈接變量。
使用 mail/xsend
API 你將可以使用 SUBMAIL 編輯器 高效、可視化地創(chuàng)建你的觸發(fā)郵件,無需管理郵件中的一切靜態(tài)資源或編碼(如圖片,html 代碼兼容等問題),甚至移動設(shè)備兼容問題,SUBMAIL 編輯器 已為你做好了一切。
URL
https://api-v4.mysubmail.com/mail/xsend
支持格式
格式 | URL |
---|---|
json | https://api-v4.mysubmail.com/mail/xsend.json (默認) |
xml | https://api-v4.mysubmail.com/mail/xsend.xml |
yaml | https://api-v4.mysubmail.com/mail/xsend.yaml |
http 請求方式
請求方式 | content-type設(shè)置 |
---|---|
http post | multipart/form-data 、x-www-form-urlencoded 、application/json |
是否需要授權(quán)
是
參閱 API 授權(quán)和驗證機制
請求參數(shù)
參數(shù) | 類型 | 必需/可選 | 默認 | 描述 |
---|---|---|---|---|
appid | string | 必需 | 無 | 在 SUBMAIL 應(yīng)用集成中創(chuàng)建的郵件應(yīng)用ID |
to | string | 必需 | 無 | 收件人地址 (多個聯(lián)系人用半角“,”隔開:e.g. "leo <leo@submail.cn>, <info@mysubmail.com>, service@submail.cn" ,SUBMAIL 支持完整的 RFC 822 收件人標準,請確保您的郵件地址的有效性。請參見 維基百科 EMAIL ADDRESS RFC822 文檔) |
from | e-mail | 可選 | 無 | 發(fā)件人地址 ,標準的發(fā)件人地址 e.g. leo@submail.cn |
from_name | string | 可選 | 無 | 發(fā)件人稱呼,顯示名稱 e.g. Submail (20個字符以內(nèi)) |
reply | e-mail | 可選 | 無 | 回復(fù)地址,標準的回復(fù)郵件地址 e.g. leo@submail.cn |
cc | string | 可選 | 無 | 抄送地址 (多個抄送地址請用 “ , ”半角逗號區(qū)分,請將抄送聯(lián)系人控制在 5 個以內(nèi))。 |
bcc | string | 可選 | 無 | 密送地址 (多個密送地址請用 “ ,”半角逗號或區(qū)分,請將密送聯(lián)系人控制在 5 個以內(nèi))。 |
subject | string | 可選 | 無 | 郵件標題(100個字符以內(nèi),不提交郵件標題,此標題將讀取項目標題 ) |
project | string | 必須 | 無 | 項目標記(ID)在SUBMAIL>MAIL>項目中,(如果您的賬戶已開通應(yīng)用集成,提交并驗證了的開發(fā)者身份后)你將可以查看你所創(chuàng)建的郵件項目標記。 此參數(shù)將根據(jù)你提交的標記來確定該發(fā)送的項目。 |
vars | json string | 可選 | 無 | 使用文本變量動態(tài)控制郵件中的文本, 參閱 了解如何創(chuàng)建和使用文本變量 |
links | json string | 可選 | 無 | 使用超鏈接變量動態(tài)控制郵件中的超鏈接, 參閱 了解如何創(chuàng)建和使用超鏈接變量 |
headers | json string | 可選 | 無 | 自定義 EMAIL 頭文件指令,headers 是一個標準的 JSON 字符串,headers 參數(shù)可以讓開發(fā)者在 EMAIL 的標頭部分插入自定義指令(500個字符以內(nèi))。 如: {"X-Accept-Language": "zh-cn", "X-Priority":"3","X-Mailer": "My Application"} |
asynchronous | string | 可選 | false | 異步選項,該值設(shè)為 true 時啟用異步發(fā)送模式 |
attachments | 文件 | 可選 | 無 | 附件(文件數(shù)量不超過10個,文件總大小應(yīng)小于5 MB,此參數(shù)不參與加密計算) |
atta | json array | 可選 | 無 | 附件 base64格式文件附件,eg: atta= [{"name":"測試.zip","data":"base64"},{"name":"2","data":"base64 file"},...](atta參數(shù)可用于base64格式的附件傳輸,此參數(shù)為jason array格式,每組數(shù)據(jù)需包含 name 和 data 參數(shù),name 為文件名,data 為 附件的base 64數(shù)據(jù);文件數(shù)量不超過10個,文件總大小應(yīng)小于5 MB,此參數(shù)不參與加密計算 ) |
tag | string | 可選 | 無 | 自定義標簽功能,該標簽可用作SUBHOOK追蹤(32 個字符以內(nèi)) |
timestamp | UNIX 時間戳 | 可選 | 無 | 參閱 API 授權(quán)與驗證機制 > Timestamp UNIX 時間戳 |
sign_type | string | 可選 | normal | API 授權(quán)模式( md5 or sha1 or normal )參閱 API 授權(quán)與驗證機制 > 授權(quán)和驗證方式 |
sign_version | string | 可選 | 無 | signature加密計算方式(當sign_version傳2時,from_name,subject,vars,links參數(shù)不參與加密計算) |
signature | string | 必需 | 無 | appkey或數(shù)字簽名 |
注意:
Submail 保留 x-submail-smtp-api 指令,請務(wù)必不要在郵件標頭中使用此指令
自定義的 EMAIL headers 指令通常以字母 X- 開頭,請將此規(guī)范應(yīng)用到你的指令
vars, links 和 headers 參數(shù)要求嚴格的 JSON 格式,以下是將參數(shù)轉(zhuǎn)換為 JSON 格式的注意事項
json 字符串必須以雙引號包含
json 字符串必須是 utf8 編碼
不能有多余的逗號 如:[1,2,]
json 字符串首尾必須被大括號{}包含
PS:大多數(shù)的語言都有專屬的JSON解析器( ENCODING 和 DECODEING 方法)。如 PHP,首先將需要的變量以數(shù)組形式(如 $var[‘key’]=value) 創(chuàng)建后,使用 json_encode($var)方法創(chuàng)建 JSON 字符串;
代碼示例
發(fā)送一封測試郵件
POST URL
https://api-v4.mysubmail.com/mail/xsend.json
POST Data
appid=your_app_id
&to=leo@submail.cn
&project=ThJBE4
&signature=your_app_key
返回
{
"status": "success",
"return": [
{
"to": "leo@submail.cn",
"send_id": "e6243d12875942204e757a08c6487e24"
}
]
}
發(fā)送一封測試郵件,多收件人
POST URL
https://api-v4.mysubmail.com/mail/xsend.json
POST DATA
appid=your_app_id
&to=leo@submail.cn,retro@submail.cn
&project=ThJBE4
&signature=your_app_key
返回
{
"status": "success",
"return": [
{
"send_id": "adda40cbd0f226c92960e70662859efe",
"to": "leo@submail.cn"
},
{
"send_id": "850a4d5022c47aeab18d466575555f0e",
"to": "retro@submail.cn"
}
]
}
使用 CURL
發(fā)送一封測試郵件
發(fā)送 CURL
curl -d 'appid=your_app_id&to=leo@submail.cn&project=ThJBE4&signature=your_app_key' https://api-v4.mysubmail.com/mail/xsend.json
返回
{
"status": "success",
"return": [
{
"to": "leo@submail.cn",
"send_id": "e6243d12875942204e757a08c6487e24"
}
]
}
使用 CURL
發(fā)送一封測試郵件,多收件人
發(fā)送 CURL
curl -d 'appid=your_app_id&to=leo@submail.cn,retro@submail.cn&&project=ThJBE4&signature=your_app_key' https://api-v4.mysubmail.com/mail/xsend.json
返回
{
"status": "success",
"return": [
{
"send_id": "adda40cbd0f226c92960e70662859efe",
"to": "leo@submail.cn"
},
{
"send_id": "850a4d5022c47aeab18d466575555f0e",
"to": "retro@submail.cn"
}
]
}
請求成功
{
"status": "success",
"return": [
{
"to": "leo@submail.cn",
"send_id": "e6243d12875942204e757a08c6487e24"
}
]
}
請求失敗
{
"status":"error",
"code":"1xx",
"msg":"error message"
}