翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SES の Amazon SNS 通知コンテンツ
バウンス、苦情、および配信の通知は、JavaScript Object Notation (JSON) 形式で、Amazon Simple Notification Service (Amazon SNS)notificationType
文字列と mail
オブジェクトに加え、bounce
オブジェクト、complaint
オブジェクト、または delivery
オブジェクトのいずれかが含まれます。
オブジェクトのタイプごとの詳細については以下のセクションを参照してください。
以下は、Amazon SES の Amazon SNS 通知の内容に関する重要な注意事項です。
-
該当する通知タイプにより、複数の受信者に対応する 1 つの Amazon SNS 通知を受け取ることもあれば、各受信者に 1 つの Amazon SNS 通知を受け取ることもあります。コードは Amazon SNS 通知を解析し、両方のケースを処理できる必要があります。SES は、Amazon SNS を介して送信される通知の注文またはバッチ処理を保証しません。ただし、タイプの異なる Amazon SNS 通知 (バウンスと苦情など) が 1 つの通知にまとめられることはありません。
-
1 人の受信者に対して複数のタイプの Amazon SNS 通知を受け取ることがあります。たとえば、受信メールサーバーは、E メールを受理した場合でも (配信の通知をトリガーします)、そのメールの処理後に、そのメールは実際にはバウンスであると判定する場合があります (バウンスの通知をトリガーします)。ただし、通知のタイプが異なるため、これらは常に個別に通知されます。
-
SES は、通知にフィールドを追加する権利を留保します。そのため、これらの通知を解析するアプリケーションには、不明なフィールドを処理できるだけの十分な柔軟性が必要です。
-
SES は、E メールを送信するときにメッセージのヘッダーを上書きします。
mail
オブジェクトのheaders
およびcommonHeaders
フィールドから元のメッセージのヘッダーを取得できます。
トップレベル JSON オブジェクト
SES 通知の最上位 JSON オブジェクトには、次のフィールドが含まれます。
フィールド名 | 説明 |
---|---|
notificationType |
通知のタイプを格納する文字列は、JSON オブジェクトによって表されます。想定される値は、 イベント発行をセットアップする場合、このフィールドの名前は |
mail |
通知に関連する元のメールについての情報を含む JSON オブジェクト。詳細については、「Mail オブジェクト」を参照してください。 |
bounce |
このフィールドは |
complaint |
このフィールドは |
delivery |
このフィールドは |
Mail オブジェクト
バウンス、苦情、または配信の通知にはそれぞれ、mail
オブジェクト内の元の E メールについての情報が含まれます。mail
オブジェクトについての情報を含む JSON オブジェクトには次のフィールドが含まれます。
フィールド名 | 説明 |
---|---|
timestamp
|
元のメッセージが送信された日時 (ISO 8601 形式)。 |
messageId
|
SES がメッセージに割り当てた一意の ID。SES は、メッセージを送信したときにこの値を返しました。 注記このメッセージ ID は SES によって割り当てられました。元の E メールのメッセージ ID は、 |
source
|
元のメッセージが送信された E メールアドレス (エンベロープ MAIL FROM アドレス)。 |
sourceArn
|
E メールの送信に使用された ID の Amazon リソースネーム (ARN)。送信承認の場合、 |
sourceIp
|
SES への E メール送信リクエストを実行したクライアントの発信パブリック IP アドレス。 |
sendingAccountId
|
E メールの送信に使用されたアカウントの AWS アカウント ID。送信承認の場合、 |
callerIdentity
|
E メールを送信した SES ユーザーの IAM ID |
destination
|
元のメールの受取人の E メールアドレスのリスト。 |
headersTruncated
|
元の E メールからヘッダーを含めるように通知設定を構成した場合にのみ、このオブジェクトが表示されます。 ヘッダーが通知で切り詰められるかどうかを示します。SES は、元のメッセージのヘッダーのサイズが 10 KB 以上の場合、通知内のヘッダーを切り捨てます。指定できる値は |
headers
|
元の E メールからヘッダーを含めるように通知設定を構成した場合にのみ、このオブジェクトが表示されます。 E メールの元のヘッダーの一覧。リスト内の各ヘッダーには、 注記
|
commonHeaders
|
元の E メールからヘッダーを含めるように通知設定を構成した場合にのみ、このオブジェクトが表示されます。 元の E メールからの一般的な E メールヘッダーに関する情報 (送信元、宛先、件名フィールドなど) が含まれます。このオブジェクト内では、各ヘッダーはキーとなります。送信元フィールドと宛先フィールドは、複数の値を含むことができる配列で表されます。 注記イベントの場合、 |
以下は、元の E メールヘッダーを含む mail
オブジェクトの例です。この通知タイプが元の E メールヘッダーを含めるように設定されていない場合は、mail
オブジェクトに headersTruncated
、headers
および commonHeaders
フィールドが含まれません。
{ "timestamp":"2018-10-08T14:05:45 +0000", "messageId":"000001378603177f-7a5433e7-8edb-42ae-af10-f0181f34d6ee-000000", "source":"sender@example.com", "sourceArn": "arn:aws:ses:us-east-1:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "destination":[ "recipient@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"Sender Name\" <sender@example.com>" }, { "name":"To", "value":"\"Recipient Name\" <recipient@example.com>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Mon, 08 Oct 2018 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "Sender Name <sender@example.com>" ], "date":"Mon, 08 Oct 2018 14:05:45 +0000", "to":[ "Recipient Name <recipient@example.com>" ], "messageId":" custom-message-ID", "subject":"Message sent using SES" } }
Bounce オブジェクト
バウンスに関する情報を含む JSON オブジェクトには以下のフィールドがあります。
フィールド名 | 説明 |
---|---|
bounceType
|
SES によって決定されるバウンスのタイプ。詳細については、「バウンスのタイプ」を参照してください。 |
bounceSubType
|
SES によって決定されるバウンスのサブタイプ。詳細については、「バウンスのタイプ」を参照してください。 |
bouncedRecipients
|
バウンスとなった元のメールの受取人についての情報を含むリスト。詳細については、「バウンスとなった受取人」を参照してください。 |
timestamp
|
バウンスが送信された日時 (ISO 8601 形式)。これは、通知が ISP によって送信された時刻であり、SES によって受信された時刻ではないことに注意してください。 |
feedbackId
|
バウンスの一意の ID。 |
SES がリモート Message Transfer Authority (MTA) に連絡できた場合、次のフィールドも表示されます。
フィールド名 | 説明 |
---|---|
remoteMtaIp
|
SES が E メールの配信を試みた MTA の IP アドレス。 |
配信状態通知 (DSN) がバウンスに添付されている場合は、次のフィールドも表示されます。
フィールド名 | 説明 |
---|---|
reportingMTA
|
DSN の |
以下は、bounce
オブジェクトの例です。
{ "bounceType":"Permanent", "bounceSubType": "General", "bouncedRecipients":[ { "status":"5.0.0", "action":"failed", "diagnosticCode":"smtp; 550 user unknown", "emailAddress":"recipient1@example.com" }, { "status":"4.0.0", "action":"delayed", "emailAddress":"recipient2@example.com" } ], "reportingMTA": "example.com", "timestamp":"2012-05-25T14:59:38.605Z", "feedbackId":"000001378603176d-5a4b5ad9-6f30-4198-a8c3-b1eb0c270a1d-000000", "remoteMtaIp":"127.0.2.0" }
バウンスとなった受取人
バウンスの通知には、1 人の受信者に関するものと複数の受信者に関するものがあります。bouncedRecipients
フィールドはオブジェクトのリスト (バウンスの通知が関係する受取人ごとに 1 つのオブジェクト) を保持し、常に次のフィールドが含まれます。
フィールド名 | 説明 |
---|---|
emailAddress
|
受取人の E メールアドレス。DSN が利用できる場合、これが DSN の |
オプションで、DSN がバウンスに添付されている場合、以下のフィールドも表示される場合があります。
フィールド名 | 説明 |
---|---|
action
|
DSN の |
status
|
DSN の |
diagnosticCode
|
ステータスコードは、Reporting-MTA により発行されます。これは、DSN の |
以下は、bouncedRecipients
のリストに示されるオブジェクトの例です。
{ "emailAddress": "recipient@example.com", "action": "failed", "status": "5.0.0", "diagnosticCode": "X-Postfix; unknown user" }
バウンスのタイプ
バウンスオブジェクトには、、 Undetermined
Permanent
(ハード)、または Transient
(ソフト) のバウンスタイプが含まれています。Permanent
(ハード) および Transient
(ソフト) バウンスタイプには、複数のバウンスサブタイプのいずれかを含めることもできます。
バウンスタイプが Transient
(ソフト) のバウンス通知を受け取った場合、メッセージのバウンスの原因となった問題が解決すれば、今後その受信者に E メールを送信できる可能性があります。
バウンスタイプが Permanent
(ハード) のバウンス通知を受信した場合、今後その受信者に E メールを送信できる可能性はほとんどありません。このため、バウンスを生じたアドレスを持つ受取人はメーリングリストから即座に削除してください。
注記
ソフトバウンス (受信者の受信トレイがいっぱいなど、一時的な問題に関連するバウンス) が発生すると、SES は一定期間にわたって E メールの再配信を試みます。その期間の終了時に、SES がまだ E メールを配信できない場合、SES は試行を停止します。
SES は、ハードバウンス、および配信の試行を停止したソフトバウンスの通知を提供します。ソフトバウンスが発生するたびに通知を受信する場合は、イベントの公開を有効にし、配信遅延イベントが発生したときに通知を送信するように設定します。
bounceType | bounceSubType | 説明 |
---|---|---|
Undetermined
|
Undetermined
|
受取人の E メールプロバイダーはバウンスメッセージを送信しました。バウンスメッセージには、SES がバウンスの理由を判断するのに十分な情報が含まれていませんでした。バウンスを生じた E メールのリターンパスヘッダーのアドレスに送信されたバウンス E メールには、E メールのバウンスを起こした問題について追加情報が含まれている可能性があります。 |
Permanent
|
General
|
受取人の E メールプロバイダーはハードバウンスメッセージを送信しました。 重要このタイプのバウンス通知を受信した場合は、受取人の E メールアドレスをメーリングリストから即座に削除してください。ハードバウンスを生じたアドレスにメッセージを送信すると、送信者としての評価に悪影響を及ぼす可能性があります。ハードバウンスを生じたアドレスに E メールを送信し続けると、追加の E メールの送信機能が一時停止される場合があります。「Amazon SES アカウントレベルのサプレッションリストの使用」を参照してください。 |
Permanent
|
NoEmail
|
バウンスメッセージから受信者のメールアドレスを取得できませんでした。 |
Permanent
|
Suppressed
|
受信者の E メールアドレスは、最近ハードバウンスを生成した履歴があるため、SES サプレッションリストに含まれています。グローバルサプレッションリストを上書きするには、「Amazon SES アカウントレベルのサプレッションリストの使用」を参照してください。 |
Permanent
|
OnAccountSuppressionList
|
SES は、アカウントレベルのサプレッションリストに含まれているため、このアドレスへの送信を抑制しました。これは、バウンス率のメトリクスに対してはカウントされません。 |
Permanent
|
UnsubscribedRecipient
|
このバウンスタイプは、受信者の連絡先がトピックからサブスクリプションを解除し、リスト管理オプションを使用してメールが受信者に送信された場合に発生します。SES は問い合わせ設定を尊重し、配信を試みません。また、このバウンスは、配信が試行されなかったために送信者の評価に影響を与えたり、バウンスのために受信者の連絡先がサプレッションリストに追加されたりすることはありません。 ヒントUnsubscribedRecipient イベントをサブスクライブして、サブスクライブしていない受信者に が引き続き送信されないようにすることをお勧めします。を検討してくださいリスト管理の使用。リスト管理は、サブスクライバーリストの信頼できるソースである必要があります。SES の適用の観点から、抑制された受信者またはサブスクライブされていない受信者に を送信し続けると、E メール送信のベストプラクティスに従わないという評判が得られます。 |
Transient
|
General
|
受取人の E メールプロバイダーは一般的なバウンスメッセージを送信しました。メッセージのバウンスを生じた問題が解決された場合、将来、同じ受取人にメッセージを送信できる可能性があります。 注記アクティブな自動応答ルール (不在メッセージなど) が設定されている受取人に E メールを送信すると、このタイプの通知を受け取る場合があります。レスポンスの通知タイプが であっても |
Transient
|
MailboxFull
|
受取人の E メールプロバイダーは、受取人の受信トレイが満杯であるために、バウンスメッセージを送信しました。メールボックスが満杯でなくなった場合、将来、同じ受取人に送信できる可能性があります。 |
Transient
|
MessageTooLarge
|
受取人の E メールプロバイダーは、受信したメッセージが大きすぎるために、バウンスメッセージを送信しました。メッセージのサイズを小さくすることで、同じ受取人にメッセージを送信できる可能性があります。 |
Transient
|
ContentRejected
|
受取人の E メールプロバイダーは、受信したメッセージにプロバイダーが許可しないコンテンツが含まれていたために、バウンスメッセージを送信しました。メッセージのコンテンツを変更することで、同じ受取人にメッセージを送信できる可能性があります。 |
Transient
|
AttachmentRejected
|
受取人の E メールプロバイダーは、メッセージ内に許容されないコンテンツが含まれていたために、バウンスメッセージを送信しました。たとえば、一部の E メールプロバイダーは特定のファイルタイプのファイルが添付されたメッセージや、非常に大きなファイルが添付されたメッセージを拒否する場合があります。添付ファイルのコンテンツを削除または変更することで、同じ受取人にメッセージを送信できる可能性があります。 |
苦情のオブジェクト
苦情に関する情報を含む JSON オブジェクトには以下のフィールドが含まれます。
フィールド名 | 説明 |
---|---|
complainedRecipients
|
苦情の原因である可能性がある受取人についての情報を含むリスト。詳細については、「苦情を申告した受取人」を参照してください。 |
timestamp
|
ISP が苦情通知を ISO 8601 形式で送信した日時。このフィールドの日時は、SES が通知を受信した日時と同じではない場合があります。 |
feedbackId
|
苦情に関連付けられた一意の ID。 |
complaintSubType
|
|
また、フィードバックレポートが苦情に添付されている場合、以下のフィールドが示される場合があります。
フィールド名 | 説明 |
---|---|
userAgent
|
フィードバックレポートの |
complaintFeedbackType
|
ISP から受け取ったフィードバックレポートの |
arrivalDate
|
ISO 8601 形式のフィードバックレポートの |
以下は、complaint
オブジェクトの例です。
{ "userAgent":"ExampleCorp Feedback Loop (V0.01)", "complainedRecipients":[ { "emailAddress":"recipient1@example.com" } ], "complaintFeedbackType":"abuse", "arrivalDate":"2009-12-03T04:24:21.000-05:00", "timestamp":"2012-05-25T14:59:38.623Z", "feedbackId":"000001378603177f-18c07c78-fa81-4a58-9dd1-fedc3cb8f49a-000000" }
苦情を申告した受取人
complainedRecipients
フィールドには、苦情の送信元と思われる受信者のリストが含まれます。この情報を使用して苦情を送信した受信者を特定し、その受信者をメーリングリストからすぐに削除する必要があります。
重要
ほとんどの ISP は、苦情の送信元である受取人の E メールアドレスを苦情通知から削除します。このため、このリストに含まれている苦情の送信元と思われる受信者に関する情報は、元のメッセージの受信者と、苦情の送信元の ISP に基づくものです。SES は元のメッセージに対して検索を実行して、この受信者リストを決定します。
このリストの JSON オブジェクトには以下のフィールドが含まれます。
フィールド名 | 説明 |
---|---|
emailAddress
|
受取人の E メールアドレス。 |
以下は、苦情を申告した受取人のオブジェクトの例です。
{ "emailAddress": "recipient1@example.com" }
注記
受信者 1 人につき 1 つのメッセージが送信されるように制限している (BCC 行に 30 個の異なる E メールアドレスを指定して送信しない) 場合は、この動作を利用して、メッセージに関する苦情を伝えている E メールアドレスをより確実に特定することできます。
苦情のタイプ
complaintFeedbackType
フィールドには以下の苦情のタイプが示されます (Internet Assigned Numbers Authority ウェブサイト
-
abuse
— 未承諾またはその他種類の不正使用メールを示します。 -
auth-failure
— E メールの認証の障害を示します。 -
fraud
— なんらかの詐欺またはフィッシング行為を示します。 -
not-spam
— レポートの提供者がこのメッセージをスパムではないと見なしていることを示します。このタイプは、誤ってスパムとしてタグ付けまたは分類されたメッセージを修正するために使用される場合があります。 -
other
— その他の登録されたタイプに該当しないフィードバックを示します。 -
virus
— 元のメッセージでウイルスが見つかったことを示します。
配信オブジェクト
配信に関する情報を含む JSON オブジェクトには常に以下のフィールドがあります。
フィールド名 | 説明 |
---|---|
timestamp
|
SES が E メールを受信者のメールサーバーに配信した時刻 (ISO8601 形式)。 |
processingTimeMillis
|
SES が送信者からのリクエストを受け入れてから受信者のメールサーバーにメッセージを渡すまでのミリ秒単位の時間。 |
recipients
|
配信通知を適用する E メールの対象となる受信者のリスト。 |
smtpResponse
|
SES からの E メールを受け入れたリモート ISP の SMTP レスポンスメッセージ。このメッセージは、E メール、受信メールサーバー、および受信 ISP ごとに異なります。 |
reportingMTA
|
メールを送信した SES メールサーバーのホスト名。 |
remoteMtaIp
|
SES が E メールを配信した MTA の IP アドレス。 |
以下は、delivery
オブジェクトの例です。
{ "timestamp":"2014-05-28T22:41:01.184Z", "processingTimeMillis":546, "recipients":["success@simulator.amazonses.com"], "smtpResponse":"250 ok: Message 64111812 accepted", "reportingMTA":"a8-70.smtp-out.amazonses.com", "remoteMtaIp":"127.0.2.0" }