概要
受信したメールを解析し、事前に登録したWebhook通知先URLに対して解析した内容を送信する機能です。
受信アドレス
ドメインパートをシステムに登録する必要があります。
ローカルパートは登録不要で、任意の文字列のローカルパートで受信・解析が可能です。
ローカルパートは登録不要で、任意の文字列のローカルパートで受信・解析が可能です。
対象のドメインについて、下記のMXレコードを別途登録する必要があります。
- server-inbound3.autobahn.email.
- server-inbound4.autobahn.email.
通知先URL
URIスキームはhttpsである必要があります。
HTTPメソッド
POST
送信仕様
リクエスト送信時に、通知先が2XXもしくは3XXではないステータスコードを返した場合は、一定期間再送を試行します。
送信内容
下記の内容をapplication/x-www-form-urlencoded形式で送信します。
|
項目名
|
型
|
説明
|
|||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| envelope_to | 文字列 | 受信したメールアドレス | |||||||||||||||
| envelope_from | 文字列 | 送信者のメールアドレス | |||||||||||||||
| ip_address | 文字列 | 送信元MTAのIPアドレス | |||||||||||||||
| subject | 文字列 |
件名
MIMEヘッダエンコードされている場合はデコード後の文字列が設定されています。 |
|||||||||||||||
| from | 文字列 |
FROMヘッダ
表示名がMIMEヘッダエンコードされている場合はデコード後の文字列が設定されています。 |
|||||||||||||||
| to | 文字列 |
TOヘッダ
表示名がMIMEヘッダエンコードされている場合はデコード後の文字列が設定されています。 |
|||||||||||||||
| headers | 配列 | 未整形メールヘッダのリスト | |||||||||||||||
| text_charset | 文字列 |
メール本文のTEXTパートの文字コード
メール本文にTEXTパートが存在する場合のみ |
|||||||||||||||
| html_charset | 文字列 |
メール本文のHTMLパートの文字コード
メール本文にHTMLパートが存在する場合のみ |
|||||||||||||||
| text | 文字列 |
メール本文のTEXTパート
メール本文にTEXTパートが存在する場合のみ |
|||||||||||||||
| html | 文字列 |
メール本文のHTMLパート
メール本文にHTMLパートが存在する場合のみ |
|||||||||||||||
| attachments | 配列 |
メール本文の添付ファイルオブジェクトの配列
メール本文に添付ファイルが存在する場合のみ 添付ファイルオブジェクトの要素
|
|||||||||||||||
| raw_body | 文字列 |
メールヘッダ部分を除く、メール本文
この項目が存在するのは、テキストパート及びHTMLパートと添付ファイルが1つも存在しない(解析できなかった)場合、もしくはパートの解析時に内部エラーが発生した場合 |
例
mail from: <from@example.net>
rcpt to: <inbound@example.net>
From: =?ISO-2022-JP?B?GyRCOjk9UD9NGyhC?= <from@example.com>
To: =?ISO-2022-JP?B?GyRCMDhAaBsoQg==?= <inbound@example.com>
Subject: =?ISO-2022-JP?Q?=1B=24B=24=33=24l=24O=25=35=25s=25W=25k=24G=24=39=1B=28B?=
Content-Type: multipart/mixed; boundary="PRIMARY"
--PRIMARY
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
=EF=BB=BF=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=AD=E3=82=B9=E3=83=88=
=E3=83=91=E3=83=BC=E3=83=88=E3=81=A7=E3=81=99
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=AD=E3=82=B9=E3=83=88=E3=83=91=
=E3=83=BC=E3=83=88=E3=81=A7=E3=81=99
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=AD=E3=82=B9=E3=83=88=E3=83=91=
=E3=83=BC=E3=83=88=E3=81=A7=E3=81=99
--PRIMARY
Content-Type: text/plain; filename="attachment1.txt"
Content-Disposition: attachment
Content-Transfer-Encoding: Base64
44GT44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn44GZ6ZaL5aeLDQrjgZPjgozjga/mt7vku5jj
g5XjgqHjgqTjg6vjgafjgZkNCuOBk+OCjOOBr+a3u+S7mOODleOCoeOCpOODq+OBp+OBmQ0K44GT
44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn44GZDQrjgZPjgozjga/mt7vku5jjg5XjgqHjgqTj
g6vjgafjgZkNCuOBk+OCjOOBr+a3u+S7mOODleOCoeOCpOODq+OBp+OBmQ0K44GT44KM44Gv5re7
5LuY44OV44Kh44Kk44Or44Gn44GZDQrjgZPjgozjga/mt7vku5jjg5XjgqHjgqTjg6vjgafjgZkN
CuOBk+OCjOOBr+a3u+S7mOODleOCoeOCpOODq+OBp+OBmQ0K44GT44KM44Gv5re75LuY44OV44Kh
44Kk44Or44Gn44GZDQrjgZPjgozjga/mt7vku5jjg5XjgqHjgqTjg6vjgafjgZkNCuOBk+OCjOOB
r+a3u+S7mOODleOCoeOCpOODq+OBp+OBmQ0K44GT44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn
44GZDQrjgZPjgozjga/mt7vku5jjg5XjgqHjgqTjg6vjgafjgZkNCuOBk+OCjOOBr+a3u+S7mOOD
leOCoeOCpOODq+OBp+OBmQ0K44GT44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn44GZDQrjgZPj
gozjga/mt7vku5jjg5XjgqHjgqTjg6vjgafjgZkNCuOBk+OCjOOBr+a3u+S7mOODleOCoeOCpOOD
q+OBp+OBmee1guS6hg==
--PRIMARY
Content-Type: text/plain; filename="attachment2.txt"
Content-Disposition: attachment
Content-Transfer-Encoding: quoted-printable
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=B9=E3=83=88=E3=81=A7=E3=81=99=0A=
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=B9=E3=83=88=E3=81=A7=E3=81=99=0A=
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=B9=E3=83=88=E3=81=A7=E3=81=99=0A=
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=B9=E3=83=88=E3=81=A7=E3=81=99=0A=
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=B9=E3=83=88=E3=81=A7=E3=81=99=0A=
=E3=81=93=E3=82=8C=E3=81=AF=E3=83=86=E3=82=B9=E3=83=88=E3=81=A7=E3=81=99=0A
--PRIMARY--
IPアドレス192.0.2.1の外部クライアントから上記のメールを受信した場合、通知先に以下のリクエストが送信されます。
※見やすいように、各項目ごとに改行しています。
POST /path HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 4125
envelope_to=inbound%40example.net&
envelope_from=from%40example.net&
ip_address=192.0.2.1&
subject=%1B%24B%243%24l%24O%255%25s%25W%25k%24G%249%1B%28B&
headers%5B0%5D=Return-Path%3A+%3Cfrom%40example.net%3E&
headers%5B1%5D=Received%3A+from+%5B192.0.2.1%5D+%28%5B192.0.2.1%5D%29+++++by+%5B0.0.0.0%5D+%28%5B0.0.0.0%5D%29+with+ESMTP+id+687341257014100026%3B+++++Mon%2C+9+Nov+2020+16%3A48%3A59+%2B0900&
headers%5B2%5D=From%3A+%3D%3FISO-2022-JP%3FB%3FGyRCOjk9UD9NGyhC%3F%3D+%3Cfrom%40example.com%3E&
headers%5B3%5D=To%3A+%3D%3FISO-2022-JP%3FB%3FGyRCMDhAaBsoQg%3D%3D%3F%3D+%3Cinbound%40example.net%3E&
headers%5B4%5D=Subject%3A+%3D%3FISO-2022-JP%3FQ%3F%3D1B%3D24B%3D24%3D33%3D24l%3D24O%3D25%3D35%3D25s%3D25W%3D25k%3D24G%3D24%3D39%3D1B%3D28B%3F%3D&
headers%5B5%5D=Content-Type%3A+multipart%2Fmixed%3B+boundary%3D%22PRIMARY%22&
headers%5B6%5D=Message-Id%3A+%3Cexample-tenant.687341314140520507%40%5B0.0.0.0%5D%3E&
headers%5B7%5D=X-MTA-Tenant%3A+example-tenant&
headers%5B8%5D=X-MTA-Sender-Key%3A+example-tenant.&
from=%E5%B7%AE%E5%87%BA%E4%BA%BA%3Cfrom%40example.com%3E&
to=%E5%AE%9B%E5%85%88%3Cinbound%40example.net%3E&
text=%EF%BB%BF%E3%81%93%E3%82%8C%E3%81%AF%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%91%E3%83%BC%E3%83%88%E3%81%A7%E3%81%99%0D%0A%E3%81%93%E3%82%8C%E3%81%AF%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%91%E3%83%BC%E3%83%88%E3%81%A7%E3%81%99%0D%0A%E3%81%93%E3%82%8C%E3%81%AF%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%91%E3%83%BC%E3%83%88%E3%81%A7%E3%81%99%0D%0A%0D%0A&
text_charset=utf-8&
attachments%5B0%5D%5Bfilename%5D=attachment1.txt&
attachments%5B0%5D%5Bcontent_type%5D=text%2Fplain&
attachments%5B0%5D%5Bencoding%5D=Base64&
attachments%5B0%5D%5Bcontent%5D=44GT44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn44GZ6ZaL5aeLDQrjgZPjgozjga%2Fmt7vku5jj%0D%0Ag5XjgqHjgqTjg6vjgafjgZkNCuOBk%2BOCjOOBr%2Ba3u%2BS7mOODleOCoeOCpOODq%2BOBp%2BOBmQ0K44GT%0D%0A44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn44GZDQrjgZPjgozjga%2Fmt7vku5jjg5XjgqHjgqTj%0D%0Ag6vjgafjgZkNCuOBk%2BOCjOOBr%2Ba3u%2BS7mOODleOCoeOCpOODq%2BOBp%2BOBmQ0K44GT44KM44Gv5re7%0D%0A5LuY44OV44Kh44Kk44Or44Gn44GZDQrjgZPjgozjga%2Fmt7vku5jjg5XjgqHjgqTjg6vjgafjgZkN%0D%0ACuOBk%2BOCjOOBr%2Ba3u%2BS7mOODleOCoeOCpOODq%2BOBp%2BOBmQ0K44GT44KM44Gv5re75LuY44OV44Kh%0D%0A44Kk44Or44Gn44GZDQrjgZPjgozjga%2Fmt7vku5jjg5XjgqHjgqTjg6vjgafjgZkNCuOBk%2BOCjOOB%0D%0Ar%2Ba3u%2BS7mOODleOCoeOCpOODq%2BOBp%2BOBmQ0K44GT44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn%0D%0A44GZDQrjgZPjgozjga%2Fmt7vku5jjg5XjgqHjgqTjg6vjgafjgZkNCuOBk%2BOCjOOBr%2Ba3u%2BS7mOOD%0D%0AleOCoeOCpOODq%2BOBp%2BOBmQ0K44GT44KM44Gv5re75LuY44OV44Kh44Kk44Or44Gn44GZDQrjgZPj%0D%0Agozjga%2Fmt7vku5jjg5XjgqHjgqTjg6vjgafjgZkNCuOBk%2BOCjOOBr%2Ba3u%2BS7mOODleOCoeOCpOOD%0D%0Aq%2BOBp%2BOBmee1guS6hg%3D%3D%0D%0A&
attachments%5B1%5D%5Bfilename%5D=attachment2.txt&
attachments%5B1%5D%5Bcontent_type%5D=text%2Fplain&
attachments%5B1%5D%5Bencoding%5D=quoted-printable&
attachments%5B1%5D%5Bcontent%5D=%3DE3%3D81%3D93%3DE3%3D82%3D8C%3DE3%3D81%3DAF%3DE3%3D83%3D86%3DE3%3D82%3DB9%3DE3%3D83%3D88%3DE3%3D81%3DA7%3DE3%3D81%3D99%3D0A%3D%0D%0A%3DE3%3D81%3D93%3DE3%3D82%3D8C%3DE3%3D81%3DAF%3DE3%3D83%3D86%3DE3%3D82%3DB9%3DE3%3D83%3D88%3DE3%3D81%3DA7%3DE3%3D81%3D99%3D0A%3D%0D%0A%3DE3%3D81%3D93%3DE3%3D82%3D8C%3DE3%3D81%3DAF%3DE3%3D83%3D86%3DE3%3D82%3DB9%3DE3%3D83%3D88%3DE3%3D81%3DA7%3DE3%3D81%3D99%3D0A%3D%0D%0A%3DE3%3D81%3D93%3DE3%3D82%3D8C%3DE3%3D81%3DAF%3DE3%3D83%3D86%3DE3%3D82%3DB9%3DE3%3D83%3D88%3DE3%3D81%3DA7%3DE3%3D81%3D99%3D0A%3D%0D%0A%3DE3%3D81%3D93%3DE3%3D82%3D8C%3DE3%3D81%3DAF%3DE3%3D83%3D86%3DE3%3D82%3DB9%3DE3%3D83%3D88%3DE3%3D81%3DA7%3DE3%3D81%3D99%3D0A%3D%0D%0A%3DE3%3D81%3D93%3DE3%3D82%3D8C%3DE3%3D81%3DAF%3DE3%3D83%3D86%3DE3%3D82%3DB9%3DE3%3D83%3D88%3DE3%3D81%3DA7%3DE3%3D81%3D99%3D0A%0D%0A
TEXTパート、HTMLパート、添付ファイルのいずれも解析できなかった場合もしくは、いずれかのパートの解析で内部エラーが発生した場合、raw_bodyがデータに含まれます。