Webhook
Webhookはメール送受信で発生するイベントデータを、指定されたエンドポイントに HTTPでポストするインターフェイスを提供します。Webhookの使用方法については、APIリファレンスを参照ください。
このセクションでは Webhook の動作設定と、ログの参照について説明します。
Event Webhook
メールの配信ステータスをエンドポイントにリアルタイムに送信します。
設定
-
管理コンソールの画面右上にある「MENU」→「API設定」をクリックします。
-
「Webhook」タブをクリックします。
-
「イベント」タブをクリックします。
-
「設定」タブをクリックします。
-
以下項目を入力します。
項目 必須 説明 エンドポイントURL Yes イベントを受信するため、https://から始まるエンドポイントのURLを入力します。 Bounces No エラーステータスを受信する場合にチェックします。 Deliveries No 配信ステータスを受信する場合にチェックします。 Blocks Pro No 配信停止の操作イベントを受信する場合にチェックします。 バージョン Yes エンドポイントに送信するイベントデータのバージョンを指定します。 タイムゾーン Yes イベントデータに含まれる日時情報に適用するタイムゾーンを指定します。 Content Type No 「JSON形式を使用する」をチェックすると、イベントデータを application/json のコンテンツタイプで送信します。「バージョン」でversion 2以降を選択した場合に指定可能です。 「Blocks」のご利用について
「Blocks」は Proプランにてご利用いただける機能です。ご利用の際は Proプランをご契約ください。
Bounces
イベントタイプ | 説明 |
---|---|
bounced | SMTPエラーやバウンスメールを解析し、送信エラーとなったメールアドレスやエラーステータスなどを通知します。送信エラーをリアルタイムに管理したい場合、このイベントを監視します。 |
Deliveries
イベントタイプ | 説明 |
---|---|
queued | メールリレー元サーバからメールを受信したことを通知します。 |
succeeded | 宛先メールサーバとのSMTP通信が成功したことを通知します。 |
failed | 宛先メールサーバとのSMTP通信が失敗したことを通知します。 |
deferred | 一時的なエラーが発生したため、メールが再送キューに入ったことを通知します。 |
Blocks
イベントタイプ | 説明 |
---|---|
registered | 配信停止が有効である場合、配信停止の実行タイミングが到来した、または、画面上から即時実行を行ったことにより、配信停止の対象となるメールアドレスが登録された場合にこのイベントが通知されます。 |
deleted | 配信停止を解除したメールアドレスを通知します。以下の操作を行った際に、このイベントが通知されます。 ・配信停止画面からの解除操作 ・Transactional Email Blocks/delete APIの呼び出し ・Transactional Email Blocks/cancel APIの呼び出し |
「Advanced」をクリックすると以下の項目が設定できます。
セキュリティ
Webhookがエンドポイントにアクセスする際に、BASIC認証、および、アプリケーションが実装する任意のキー情報を渡すことができます。
項目 | 必須 | 説明 |
---|---|---|
BASIC認証 ユーザ名 | No | エンドポイントがBASIC認証を行う場合、ユーザ名を入力します。 |
パスワード | No | BASIC認証で使用するパスワードを入力します。 |
パスワード(確認) | No | パスワードと同じ値を入力します。 |
APIキー | No | エンドポイントに渡すシークレットキーを入力します。「Authorization: Bearerヘッダを使用する」をチェックすると、APIキーをHTTPリクエストのAuthorizationヘッダに Bearer トークンとして設定します。この場合、送信データにはAPIキーを含めません。 |
認証時の注意点
「BASIC認証」と「Authorization: Bearerヘッダ」は併用できません。
通知動作
イベントの通知動作を設定することができます。イベントは通知間隔毎または、最大イベント数を超えたタイミングで通知されます。
項目 | 必須 | 説明 |
---|---|---|
通知間隔(秒) | No | イベントの通知間隔を指定します。(1-600秒) |
最大イベント数 | No | 1リクエストで通知するイベントの最大数を指定します。(100-10000) |
タイムアウト(秒) | No | エンドポイントへの接続および応答待ち時間を秒数で指定します。(1-999秒) |
「保存する」ボタンをクリックすると、イベント通知設定が管理コンソールに保存されます。続けて、メールサーバに設定を反映してください。
ログ
Event Webhook の動作ログを参照できます。
-
「ログ」タブをクリックします。
-
「検索」ボタンをクリックすると該当するログを検索・表示します。
検索結果が100件を超える場合
検索結果が100件を超える場合、最初の100件を表示します。検索条件に期間、ステータスを指定し検索対象データを絞り込んでください。
検索結果の表示が10件を超える場合
検索結果が10件を超える場合ページングします。検索結果一覧の右上にあるページャーを操作して参照してください。
表示項目 説明 日時 ログを記録した日時を表示します。 ホスト名 ログを記録したサーバーのホスト名を表示します。 エンドポイントURL ログを記録した時点で設定されていたエンドポイントURLを表示します。 ステータス queued, succeeded, deferred, failed のいずれかを表示します。
詳細はイベントステータスを参照ください。
イベントステータス
通知対象となるメール配信イベントの発生、エンドポイントへのポスト処理の結果をイベントステータスとして記録します。
ステータス | 説明 |
---|---|
queued | 通知対象となるメール配信イベントが発生した。 |
succeeded | エンドポイントへのポストが成功した。 |
failed | 再送期間を経過した、またはポストが恒久エラーにより失敗したと判断したためにイベントデータを破棄した。 |
deferred | ポストが一時エラーにより失敗したと判断し、再送状態になった。 |
ログ詳細
ログ一覧のホスト名のリンクをクリックすると、詳細情報を示すダイアログが表示されます。
表示項目 | 説明 |
---|---|
日時 | ログを記録した日時を表示します。 |
ステータス | ステータスを表示します。 |
ホスト名 | ログを記録したサーバーのホスト名を表示します。 |
エンドポイントURL | ログを記録した時点で設定されていたエンドポイントURLを表示します。 |
エラー理由 | ステータスがdeferred,failed の場合、エラー理由が表示されます。 |
ログをダウンロードする
「ダウンロード」ボタンをクリックすると検索結果をCSVファイル形式でダウンロードすることができます。
検索結果とデータのダウンロードについて
100件以上の検索結果がある場合でも、全件数のデータがダウンロードできます。CSVファイルの文字コードは UTF-8、改行コードは、LF となります。
CSVファイルには以下の項目が出力されます。
項目名 | 説明 |
---|---|
received | ログを記録した日時 |
status | ステータス |
hostName | ログを記録したサーバーのホスト名 |
endpointUrl | ログ記録時に設定されていたエンドポイントURL |
reason | エラー理由 |
Inbound Webhook
メールを受信し、From, To, Subject, メール本文などのデータをパースして、エンドポイントに送信します。
インバウンドメールを受信するには、「設定」→「受信サーバ」→「インバウンドを受信する」で宛先メールアドレスのドメインの受信を許可する必要があります。
受信許可ドメインに関するスパムメール判定の条件について
以下の場合、スパムメールと判断し、受信拒否とします。
-
ヘッダFromが受信サーバの受信許可ドメインの場合
外部からの受信のはずなのに、From が自ドメインを名乗っているので、怪しいと判断しています。
-
ヘッダFromとヘッダToが同じメールアドレスの場合
これも自分宛てに投げるメールは怪しいと判断しています。
設定
-
管理コンソールの画面右上にある「MENU」→「API設定」をクリックします。
-
「Webhook」タブをクリックします。
-
「インバウンド」タブをクリックします。
-
「設定」タブをクリックします。
メールの受信は、メールヘッダと値の組み合わせを条件として指定することができます。
追加する
-
「追加」ボタンをクリックし、ダイアログを表示します。
-
以下項目を入力します。
項目 必須 説明 受信通知名 Yes インバウンドメールの受信設定を識別する名前を入力します。 エンドポイントURL Yes インバウンド通知を受信するため、https://から始まるエンドポイントのURLを入力します。 通知条件 Yes 受信したメールをエンドポイントに送信する条件を指定します。「+」をクリックすると通知条件を追加することができます。通知条件はANDで評価されます。 Content Type No 「JSON形式を使用する」をチェックすると、インバウンド通知を application/json のコンテンツタイプで送信します。JSON形式では、メールの添付ファイルは通知されません。 -
通知条件は以下の値を指定します。
項目 値 ヘッダ名 "To"を指定した場合、envelope-toを評価します。From, Subjectなどのメールヘッダを指定することもできます。メールヘッダは大文字小文字を無視してマッチします。 ヘッダ値 ヘッダ値をマッチさせる正規表現を入力します。共通仕様を参照ください。 -
「Advanced」をクリックすると以下の項目が設定できます。
セキュリティ
Webhookがエンドポイントにアクセスする際に、BASIC認証、および、アプリケーションが実装する任意のキー情報を渡すことができます。
項目 | 必須 | 説明 |
---|---|---|
BASIC認証 ユーザ名 | No | エンドポイントがBASIC認証を行う場合、ユーザ名を入力します。 |
パスワード | No | BASIC認証で使用するパスワードを入力します。 |
パスワード(確認) | No | パスワードと同じ値を入力します。 |
APIキー | No | エンドポイントに渡すシークレットキーを入力します。「Authorization: Bearerヘッダを使用する」をチェックすると、APIキーをHTTPリクエストのAuthorizationヘッダに Bearer トークンとして設定します。この場合、送信データにはAPIキーを含めません。 |
認証時の注意点
「BASIC認証」と「Authorization: Bearerヘッダ」は併用できません。
通知動作
インバウンドメールの通知動作を設定することができます。
項目 | 必須 | 説明 |
---|---|---|
リトライ間隔(秒) | No | エンドポイントに接続できない、または、エラー応答があった場合のリトライ間隔を指定します。(10-600秒) |
リトライ期間(日) | No | リトライの期間を日数で指定します。(1-10日) |
タイムアウト(秒) | No | エンドポイントへの接続および応答待ち時間を秒数で指定します。(1-999秒) |
状態 | No | この通知条件を削除せずに運用を停止したい場合、チェックします。 |
「保存する」ボタンをクリックするとインバウンド通知設定が管理コンソールに保存されます。続けて、メールサーバに 設定を反映してください。
削除する
インバウンド設定一覧の「削除」ボタンをクリックすると、確認ダイアログが表示されます。
ログインアカウントのパスワードを入力し、「削除する」ボタンをクリックするとインバウンド設定が削除されます。
ログ設定
宛先メールアドレスが受信許可ドメイン(インバウンド)に設定されていないために受信を拒否した場合、受信拒否ログを出力します。ログ設定ではこの受信拒否ログの出力の有無を設定します。
出力対象のログについて
ドメイン不一致のログは、スパムメールの受信でも出力されるため、膨大な量のログが出力される可能性があります。
そのため、受信許可ドメイン(インバウンド)の初回設定、新規追加などの動作確認時以外は、ログ出力しないように設定することを推奨します。
-
「ログ設定」ボタンをクリックし、ログ設定ダイアログを表示します。
-
「保存する」ボタンをクリックするとログ設定が管理コンソールに保存されます。続けて、メールサーバに 設定を反映してください。
ログ
Inbound Webhook の動作ログを参照できます。
-
「ログ」タブをクリックします。
-
「検索」ボタンをクリックすると該当するログを検索・表示します。
検索結果が100件を超える場合
検索結果が100件を超える場合、最初の100件を表示します。検索条件に期間、ステータスを指定し検索対象データを絞り込んでください。
検索結果の表示が10件を超える場合
検索結果が10件を超える場合ページングします。検索結果一覧の右上にあるページャーを操作して参照してください。
表示項目 | 説明 |
---|---|
日時 | ログを記録した日時を表示します。 |
宛先アドレス | 受信したメールの宛先アドレスを表示します。 |
差出人アドレス | 受信したメールのヘッダにあるFromアドレスを表示します。 |
フィルタ名 | 適用した受信設定の受信通知名を表示します。 |
ステータス | queued,succeeded,deferred,failed,denied のいずれかを表示します。詳細はインバウンドステータスを参照ください。 |
インバウンドステータス
通知対象となるメールの受信や、エンドポイントへのポスト結果をステータスとして記録します。
ステータス | 説明 |
---|---|
queued | 通知対象となるメールを受信した。 |
succeeded | エンドポイントへのポストが成功した。 |
failed | 再送期間を経過した場合、またはポストが恒久エラーにより失敗したと判断したために受信メールを破棄した。 |
deferred | ポストが一時エラーにより失敗したと判断し、再送状態になった。 |
denied | 宛先メールアドレスが受信許可ドメイン(インバウンド)に設定されていない場合や通知条件の不一致によりメールの受信を拒否した。 |
ログ詳細
ログ一覧の宛先アドレスのリンクをクリックすると詳細情報を示すダイアログが表示されます。
表示項目 | 説明 |
---|---|
日時 | ログを記録した日時を表示します。 |
ステータス | ステータスを表示します。 |
ホスト名 | ログを記録したサーバーのホスト名を表示します。 |
差出人アドレス | 受信したメールのヘッダにあるFromアドレスを表示します。 |
宛先アドレス | 受信したメールの宛先アドレスを表示します。 |
メッセージID | 受信したメールのヘッダにある Message-Id を表示します。 |
フィルタ名 | 適用した受信設定の受信通知名を表示します。 |
エラー理由 | ステータスが deferred,failed,denied の場合、エラー理由が表示されます。 |
ログをダウンロードする
-
ダウンロードボタンをクリックすると検索結果をCSVファイル形式でダウンロードすることができます。
-
以下項目を入力します。
項目 必須 説明 パスワード Yes ダウンロードするパスワード付き暗号化ZIPファイルのパスワード入力します。 検索結果とデータのダウンロードについて
100件以上の検索結果がある場合でも、全件数のデータがダウンロードできます。CSVファイルの文字コードは UTF-8、改行コードは、LF となります。
-
CSVファイルには以下の項目が出力されます。
項目名 説明 received ログを記録した日時 status ステータス from 受信したメールのヘッダにあるFromアドレス to 受信したメールの宛先アドレス hostName ログを記録したサーバーのホスト名 messageId 受信したメールのヘッダにある Message-Id filterName 適用した受信設定の受信通知名 reason エラー理由