API: Mail/Send - 郵件發(fā)送
概覽
mail/send
是 SUBMAIL 的郵件 API。 mail/send
API 提供強(qiáng)大的郵件發(fā)送功能。你可以通過(guò)設(shè)定一些參數(shù)來(lái)確定 API 以哪種模式發(fā)送。
mail/send
API 可以使用變量動(dòng)態(tài)的控制每封郵件的內(nèi)容。 了解如何使用文本變量和超鏈接變量。
URL
https://api-v4.mysubmail.com/mail/send
支持格式
格式 | URL |
---|---|
json | https://api-v4.mysubmail.com/mail/send.json (默認(rèn)) |
xml | https://api-v4.mysubmail.com/mail/send.xml |
yaml | https://api-v4.mysubmail.com/mail/send.yaml |
http 請(qǐng)求方式
請(qǐng)求方式 | content-type設(shè)置 |
---|---|
http post | multipart/form-data 、x-www-form-urlencoded 、application/json |
是否需要授權(quán)
是
參閱 API 授權(quán)和驗(yàn)證機(jī)制
請(qǐng)求參數(shù)
參數(shù) | 類型 | 必需/可選 | 默認(rèn) | 描述 |
---|---|---|---|---|
appid | string | 必需 | 無(wú) | 在 SUBMAIL 應(yīng)用集成中創(chuàng)建的郵件應(yīng)用ID |
to | string | 可選 | 無(wú) | 收件人地址 (多個(gè)聯(lián)系人用半角“,”隔開: e.g. "leo <leo@submail.cn>,<info@mysubmail.com>, service@submail.cn",單次請(qǐng)求提交郵箱數(shù)量控制在100個(gè)以內(nèi),SUBMAIL 支持完整的 RFC 822 收件人標(biāo)準(zhǔn),請(qǐng)確保您的郵件地址的有效性。請(qǐng)參見 維基百科 EMAIL ADDRESS RFC822 文檔) |
from | e-mail | 必需 | 無(wú) | 發(fā)件人地址 ,標(biāo)準(zhǔn)的發(fā)件人地址 e.g. leo@submail.cn |
from_name | string | 可選 | 無(wú) | 發(fā)件人稱呼,顯示名稱 e.g. Submail (20個(gè)字符以內(nèi)) |
reply | e-mail | 可選 | 無(wú) | 回復(fù)地址(標(biāo)準(zhǔn)的回復(fù)郵件地址 e.g. leo@submail.cn) |
cc | string | 可選 | 無(wú) | 抄送地址 (多個(gè)抄送地址請(qǐng)用 “ , ”半角逗號(hào)區(qū)分,請(qǐng)將抄送聯(lián)系人控制在 5 個(gè)以內(nèi)) 。 |
bcc | string | 可選 | 無(wú) | 密送地址(多個(gè)密送地址請(qǐng)用 “ ,”半角逗號(hào)區(qū)分,請(qǐng)將密送聯(lián)系人控制在 5 個(gè)以內(nèi)) 。 |
subject | string | 必需 | 無(wú) | 郵件標(biāo)題(100個(gè)字符以內(nèi)) |
text | string | 可選 | 無(wú) | 純文本郵件正文(5000個(gè)字符以內(nèi)) |
html | string | 可選 | 無(wú) | HTML 郵件正文(60 KB以內(nèi)) |
vars | json string | 可選 | 無(wú) | 使用文本變量動(dòng)態(tài)控制郵件中的文本,參閱 了解如何創(chuàng)建和使用文本變量 |
links | json string | 可選 | 無(wú) | 使用超鏈接變量動(dòng)態(tài)控制郵件中的超鏈接,參閱 了解如何創(chuàng)建和使用超鏈接變量 |
attachments | 文件 | 可選 | 無(wú) | 附件(文件數(shù)量不超過(guò)10個(gè),文件總大小應(yīng)小于5 MB,此參數(shù)不參與加密計(jì)算) |
atta | json array | 可選 | 無(wú) | 附件 base64格式文件附件,eg: atta= [{"name":"測(cè)試.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ù)量不超過(guò)10個(gè),文件總大小應(yīng)小于5 MB,此參數(shù)不參與加密計(jì)算 ) |
headers | json string | 可選 | 無(wú) | 自定義 EMAIL 頭文件指令,headers 是一個(gè)標(biāo)準(zhǔn)的 JSON 字符串,headers 參數(shù)可以讓開發(fā)者在 EMAIL 的標(biāo)頭部分插入自定義指令(500個(gè)字符以內(nèi))。如: {"X-Accept-Language": "zh-cn", "X-Priority":"3","X-Mailer": "My Application"} |
asynchronous | string | 可選 | false | 異步選項(xiàng),該值設(shè)為 true 時(shí)啟用異步發(fā)送模式 |
tag | string | 可選 | 無(wú) | 自定義標(biāo)簽功能,該標(biāo)簽可用作SUBHOOK追蹤(32 個(gè)字符以內(nèi)) |
timestamp | UNIX 時(shí)間戳 | 可選 | 無(wú) | 參閱 API 授權(quán)與驗(yàn)證機(jī)制 > Timestamp UNIX 時(shí)間戳 |
sign_type | string | 可選 | normal | API 授權(quán)模式( md5 or sha1 or normal )參閱 API 授權(quán)與驗(yàn)證機(jī)制 > 授權(quán)和驗(yàn)證方式 |
sign_version | string | 可選 | 無(wú) | signature加密計(jì)算方式(當(dāng)sign_version傳2時(shí),from_name,subject,text,html,vars,links,attachments參數(shù)不參與加密計(jì)算) |
signature | string | 必需 | 無(wú) | appkey或數(shù)字簽名 |
Submail 保留 x-submail-smtp-api 指令,請(qǐng)務(wù)必不要在郵件標(biāo)頭中使用此指令
自定義的 EMAIL headers 指令通常以字母 X- 開頭,請(qǐng)將此規(guī)范應(yīng)用到你的指令
vars, links 和 headers 參數(shù)要求嚴(yán)格的 JSON 格式,以下是將參數(shù)轉(zhuǎn)換為 JSON 格式的注意事項(xiàng)
json 字符串必須以雙引號(hào)包含
json 字符串必須是 utf8 編碼
不能有多余的逗號(hào) 如:[1,2,]
json 字符串首尾必須被大括號(hào){}包含
PS:大多數(shù)的語(yǔ)言都有專屬的JSON解析器( ENCODING 和 DECODEING 方法)。如 PHP,首先將需要的變量以數(shù)組形式(如 $var[‘key’]=value) 創(chuàng)建后,使用 json_encode($var)方法創(chuàng)建 JSON 字符串;
代碼示例
發(fā)送一封測(cè)試郵件
POST URL
https://api-v4.mysubmail.com/mail/send.json
POST DATA
appid=your_app_id
&to=leo@submail.cn
&subject=testing_Subject
&text=testing_text_body
&from=no-reply@submail.cn
&signature=your_app_key
返回
{
"status": "success",
"return": [
{
"send_id": "72d9f280fbd1584d27b5d31acb64b1fd",
"to": "leo@submail.cn"
}
]
}
發(fā)送一封測(cè)試郵件,多收件人
POST URL
https://api-v4.mysubmail.com/mail/send.json
POST DATA
appid=your_app_id
&to=leo@submail.cn,retro@submail.cn
&subject=testing_Subject
&text=testing_text_body
&from=no-reply@submail.cn
&signature=your_app_key
返回
{
"status": "success",
"return": [
{
"send_id": "adda40cbd0f226c92960e70662859efe",
"to": "leo@submail.cn"
},
{
"send_id": "850a4d5022c47aeab18d466575555f0e",
"to": "retro@submail.cn"
}
]
}
使用 CURL
發(fā)送一封測(cè)試郵件
發(fā)送 CURL
curl -d 'appid=your_app_id&to=leo@mysubmail.cn &subject=testing Subject&text=testing text body&from=no-reply@submail.cn&signature=your_app_key' https://api-v4.mysubmail.com/mail/send.json
返回
{
"status": "success",
"return": [
{
"send_id": "72d9f280fbd1584d27b5d31acb64b1fd",
"to": "leo@submail.cn"
}
]
}
使用 CURL
發(fā)送一封測(cè)試郵件,多收件人
發(fā)送 CURL
curl -d 'appid=your_app_id&to=leo@submail.cn,retro@submail.cn&subject=testing Subject&text=testing text body&from=no-reply@submail.cn&signature=your_app_key' https://api-v4.mysubmail.com/mail/send.json
返回
{
"status": "success",
"return": [
{
"send_id": "adda40cbd0f226c92960e70662859efe",
"to": "leo@submail.cn"
},
{
"send_id": "850a4d5022c47aeab18d466575555f0e",
"to": "retro@submail.cn"
}
]
}
請(qǐng)求成功
{
"status": "success",
"return": [
{
"to": "leo@submail.cn",
"send_id": "e180b6f28e8547ea4e47a4f93fd28907"
}
]
}
請(qǐng)求失敗
{
"status":"error",
"code":"1xx",
"msg":"error message"
}