Amazon が Amazon SES に発行するイベントデータの内容 SNS - Amazon Simple Email Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon が Amazon SES に発行するイベントデータの内容 SNS

Amazon SES は、Amazon Simple Notification Service に E メール送信イベントレコードを JSON 形式で発行します。

これらのすべての通知タイプのレコード例については、「Amazon SES が Amazon SNS に発行するイベントデータの例」を参照してください。

最上位JSONオブジェクト

E メール送信イベントレコードの最上位JSONオブジェクトには、次のフィールドが含まれます。他にどのオブジェクトが存在するのかは、イベントタイプによって決まります。

フィールド名 説明

eventType

イベントのタイプを説明する文字列。可能な値: BounceComplaintDeliverySendRejectOpenClickRendering FailureDeliveryDelay、または Subscription

もしイベント発行のセットアップをしなかった場合は、このフィールドは notificationType と名付けられます。

mail

イベントを生成した E メールに関する情報を含むJSONオブジェクト。

bounce

このフィールドは、eventTypeBounce の場合のみ表示されます。このフィールドには、バウンスに関する情報が含まれています。

complaint

このフィールドは、eventTypeComplaint の場合のみ表示されます。このフィールドには、苦情に関する情報が含まれています。

delivery

このフィールドは、eventTypeDelivery の場合のみ表示されます。このフィールドには、配信に関する情報が含まれています。

send

このフィールドは、eventTypeSend の場合のみ表示されます。

reject

このフィールドは、eventTypeReject の場合のみ表示されます。このフィールドには、拒否に関する情報が含まれています。

open

このフィールドは、eventTypeOpen の場合のみ表示されます。このフィールドには、オープンイベントに関する情報が含まれています。

click

このフィールドは、eventTypeClick の場合のみ表示されます。このフィールドには、クリックイベントに関する情報が含まれています。

failure

このフィールドは、eventTypeRendering Failure の場合のみ表示されます。このフィールドには、レンダリング失敗イベントに関する情報が含まれています。

deliveryDelay

このフィールドは、eventTypeDeliveryDelay の場合のみ表示されます。E メールの遅延配信に関する情報が含まれています。

subscription

このフィールドは、eventTypeSubscription の場合のみ表示されます。このフィールドには、サブスクリプション設定に関する情報が含まれています。

Mail オブジェクト

各メール送信イベントレコードには、mail オブジェクトの元のメールに関する情報が含まれています。JSON オブジェクトに関する情報を含むmailオブジェクトには、次のフィールドがあります。

フィールド名 説明

timestamp

メッセージの送信日時。ISO8601 形式 (YYYY-MM-DDThh:mm:ss.sZ) です。

messageId

Amazon がメッセージにSES割り当てた一意の ID。Amazon は、メッセージを送信したときにSESこの値を返しました。

注記

このメッセージ ID は Amazon によって割り当てられましたSES。元の E メールのメッセージ ID は、mail オブジェクトの headers および commonHeaders フィールドにあります。

source

メッセージが送信された E メールアドレス (エンベロープMAILFROMアドレス)。

sourceArn

E メールの送信に使用された ID の Amazon リソースネーム (ARN)。認証を送信する場合、 sourceArnは、ID 所有者が代理送信者に E メールの送信に使用することを承認した ID ARN の です。送信承認の詳細については、「E メールの認証方法」を参照してください。

sendingAccountId

E メールの送信に使用された AWS アカウントのアカウント ID。送信承認の場合、sendingAccountId は代理送信者のアカウント ID です。

destination

元のメールの受取人の E メールアドレスのリスト。

headersTruncated

通知でヘッダーが切り捨てられたかどうかを示す文字列。切り捨ては、ヘッダーが 10 KB を超える場合に発生します。指定できる値は true および false です。

headers

E メールの元のヘッダーの一覧。リスト内の各ヘッダーには、name フィールドと value フィールドがあります。

注記

headers フィールド内のメッセージ ID は、Amazon に渡した元のメッセージからのものですSES。その後 Amazon がメッセージにSES割り当てたメッセージ ID は、 mail オブジェクトの messageIdフィールドにあります。

commonHeaders

E メールの元の一般的に使用されるヘッダーのマッピング。

注記

commonHeaders フィールド内のメッセージ ID は、Amazon がmailオブジェクトの messageId フィールドのメッセージにSESその後割り当てたメッセージ ID です。

tags

E メールに関連付けられたタグのリストです。

Bounce オブジェクト

Bounce イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

bounceType

Amazon によって決定されるバウンスのタイプSES。

bounceSubType

Amazon によって決定されるバウンスのサブタイプSES。

bouncedRecipients

バウンスとなった元のメールの受取人についての情報を含むリスト。

timestamp

がバウンス通知ISPを送信したときの ISO8601 形式の日時 (YYYY-MM-DDThh:mm:ss.sZ)。

feedbackId

バウンスの一意の ID。

reportingMTA

からの Reporting-MTAフィールドの値DSN。これは、 で説明されている配信、リレー、またはゲートウェイオペレーションを実行しようとした Message Transfer Authority (MTA) の値ですDSN。

注記

このフィールドは、配信ステータス通知 (DSN) がバウンスにアタッチされた場合にのみ表示されます。

バウンスとなった受取人

バウンスイベントには、1 人の受信者に関するものと複数の受信者に関するものがあります。bouncedRecipients フィールドにはオブジェクトのリストが含まれ (バウンスを作成した E メールアドレスの受信者ごとに 1 つのオブジェクト)、以下のフィールドが含まれています。

フィールド名 説明

emailAddress

受取人の E メールアドレス。DSN が使用可能な場合、これは の Final-Recipientフィールドの値ですDSN。

オプションで、 DSNがバウンスにアタッチされている場合、次のフィールドが存在する場合もあります。

フィールド名 説明

action

からの Actionフィールドの値DSN。これは、この受信者にメッセージを配信しようとした結果MTA、レポートによって実行されたアクションを示します。

status

からの Statusフィールドの値DSN。これは、メッセージの配信状態を示す、受取人ごとに個別の、トランスポート独立型ステータスコードです。

diagnosticCode

レポート によって発行されたステータスコードMTA。これは、 の Diagnostic-Codeフィールドの値ですDSN。このフィールドは、 には存在しない DSN (したがって、 にも存在しないJSON) 場合があります。

バウンスのタイプ

各バウンスイベントは、以下の表に示すいずれかのタイプになります。

イベント発行システムは、Amazon によって再試行されなくなったハードバウンスとソフトバウンスのみを公開しますSES。というマークが付いたバウンスを受け取ったらPermanent、対応する E メールアドレスをメーリングリストから削除する必要があります。今後送信することはできません。Transientバウンスは、メッセージが数回ソフトバウンスし、Amazon SESが再配信を停止したときに送信されます。最初は Transient バウンスとして返されても、将来的には同じアドレスに正常に再送できる場合があります。

bounceType bounceSubType 説明

Undetermined

Undetermined

Amazon SES は特定のバウンス理由を判断できませんでした。

Permanent

General

Amazon は一般的なハードバウンスSESを受け取りました。このタイプのバウンスを受信した場合は、メーリングリストからこの受信者のメールアドレスを削除する必要があります。

Permanent

NoEmail

ターゲット E メールアドレスが存在しないため、Amazon は永続的なハードバウンスSESを受信しました。このタイプのバウンスを受信した場合は、メーリングリストからこの受信者のメールアドレスを削除する必要があります。

Permanent

Suppressed

Amazon SES は、無効なアドレスとしてバウンスした最近の履歴があるため、このアドレスへの送信を抑制しました。グローバルサプレッションリストを上書きするには、「Amazon SESアカウントレベルのサプレッションリストの使用」を参照してください。

Permanent OnAccountSuppressionList Amazon SESは、アカウントレベルのサプレッションリスト にあるため、このアドレスへの送信を抑制しました。これは、バウンス率のメトリクスに対してはカウントされません。

Transient

General

Amazon は一般的なバウンスSESを受け取りました。今後、この受信者に正常に再送できる可能性があります。

Transient

MailboxFull

Amazon はメールボックスのフルバウンスSESを受信しました。今後、この受信者に正常に再送できる可能性があります。

Transient

MessageTooLarge

Amazon がバウンスが多すぎるメッセージSESを受信しました。メッセージサイズを小さくすることで、この受信者に正常に再送できる可能性があります。

Transient

CustomTimeoutExceeeded

Amazon SESは、E メール送信者が指定した時間内に E メールを正常に配信できませんでした。(バウンスメッセージは、定義された 内で配信試行に失敗する可能性のある理由を指定します)TTL。

Transient

ContentRejected

Amazon はコンテンツ拒否バウンスSESを受信しました。メッセージのコンテンツを変更することで、この受信者に正常に再送できる可能性があります。

Transient

AttachmentRejected

Amazon は添付ファイルの拒否バウンスSESを受信しました。添付ファイルを削除または変更することで、この受信者に正常に再送できる可能性があります。

苦情のオブジェクト

Complaint イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

complainedRecipients

苦情を送信した可能性がある受取人に関する情報を含むリスト。

timestamp

が苦情通知ISPを送信したときの ISO8601 形式の日時 (YYYY-MM-DDThh:mm:ss.sZ)。

feedbackId

苦情の一意の ID。

complaintSubType

Amazon によって決定される苦情のサブタイプSES。

また、フィードバックレポートが苦情に添付されている場合、以下のフィールドが示される場合があります。

フィールド名 説明

userAgent

フィードバックレポートの User-Agent フィールドの値。これは、レポートを生成したシステムの名前とバージョンを示します。

complaintFeedbackType

から受信したフィードバックレポートの Feedback-Typeフィールドの値ISP。これには、フィードバックのタイプが含まれます。

arrivalDate

フィードバックレポートの Arrival-Dateまたは Received-Dateフィールドの値を ISO8601 形式で指定します (YYYY-MM-DDThh:mm:ss.sZ)。このフィールドはレポートに存在しない (したがって にも存在しない) 場合がありますJSON。

苦情を申告した受取人

complainedRecipients フィールドには、苦情の送信元と思われる受信者のリストが含まれます。

重要

ほとんどの場合、苦情を送信する受信者の E メールアドレスISPsを編集します。このため、complainedRecipients フィールドには、苦情通知を発行したドメインにアドレスが含まれていて、E メールが送信された全員のリストが含まれます。

JSON このリストのオブジェクトには、次のフィールドが含まれます。

フィールド名 説明

emailAddress

受取人の E メールアドレス。

苦情のタイプ

Internet Assigned Numbers Authority ウェブサイト によるとISP、 レポート によって割り当てられた complaintFeedbackTypeフィールドに次の苦情タイプが表示される場合があります。

フィールド名 説明

abuse

迷惑メールまたはその他のメール不正使用。

auth-failure

E メールの認証障害レポート

fraud

なんらかの詐欺またはフィッシング行為を示します。

not-spam

レポートの提供者がこのメッセージをスパムではないと見なしていることを示します。このタイプは、誤ってスパムとしてタグ付けまたは分類されたメッセージを修正するために使用される場合があります。

other

その他の登録されたタイプに該当しないフィードバックを示します。

virus

元のメッセージでウイルスが見つかったことを示します。

苦情のサブタイプ

complaintSubType フィールドの値は、null または OnAccountSuppressionList のいずれかになります。値が の場合OnAccountSuppressionList、Amazon はメッセージSESを受け入れましたが、アカウントレベルのサプレッションリスト にあるため、送信しようとしませんでした。

配信オブジェクト

Delivery イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

timestamp

Amazon が受信者のメールサーバーに E メールをSES配信した日時。ISO8601 形式 (YYYY-MM-DDThh:mm:ss.sZ)。

processingTimeMillis

Amazon が送信者からのリクエストSESを受け入れてから、Amazon が受信者のメールサーバーにメッセージをSES渡したまでの時間をミリ秒単位で表します。

recipients

配信イベントの適用対象となる受信者のリスト。

smtpResponse

Amazon からの E メールを受け入れISPたリモートのSMTP応答メッセージSES。このメッセージは、E メール、メールサーバー、 の受信によって異なりますISP。

reportingMTA

メールを送信した Amazon SESメールサーバーのホスト名。

Send オブジェクト

send イベントに関する情報を含むJSONオブジェクトは常に空です。

Reject オブジェクト

Reject イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

reason

メールが拒否された理由。唯一の可能な値は です。つまりBad content、Amazon は E メールにウイルスが含まれていることをSES検出しました。メッセージが拒否されると、Amazon はその処理SESを停止し、受信者のメールサーバーに配信しようとしません。

Open オブジェクト

Open イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

ipAddress

受信側の IP アドレス

timestamp

オープンイベントが ISO8601 形式で発生した日時 (YYYY-MM-DDThh:mm:ss.sZ)。

userAgent

受取人がメールを開くために使用したしたデバイスまたは E メールクライアントのユーザーエージェント。

Click オブジェクト

Click イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

ipAddress

受信側の IP アドレス

timestamp

クリックイベントが ISO8601 形式で発生した日時 (YYYY-MM-DDThh:mm:ss.sZ)。

userAgent

受信者が E メールのリンクをクリックするために使用したクライアントのユーザーエージェント。

link

受信者がクリックしたリンクURLの 。

linkTags

ses:tags 属性を使用してリンクに追加されたタグのリスト。メール内のリンクにタグを追加する方法については、「Amazon SES E メール送信メトリクスに関するよくある質問」の「Q5. リンクに一意の識別子をタグ付けできますか?」を参照してください。

レンダリング失敗オブジェクト

Rendering Failure イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

templateName

E メールの送信に使用されるテンプレートの名前。

errorMessage

レンダリング失敗に関する詳細情報を提供するメッセージ。

DeliveryDelay オブジェクト

DeliveryDelay イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

delayType

遅延のタイプ。可能な値は以下のとおりです。

  • InternalFailure – Amazon 内部SESの問題により、メッセージが遅延しました。

  • 全般 – SMTP会話中に一般的な障害が発生しました。

  • MailboxFull – 受信者のメールボックスがいっぱいで、追加のメッセージを受信できません。

  • SpamDetected – 受信者のメールサーバーが、アカウントから大量の未承諾 E メールを検出しました。

  • RecipientServerError – 受信者の E メールサーバーで一時的な問題が発生し、メッセージの配信が妨げられています。

  • IPFailure – メッセージを送信している IP アドレスは、受信者の E メールプロバイダーによってブロックまたはスロットリングされています。

  • TransientCommunicationFailure – 受信者の E メールプロバイダーとのSMTP会話中に一時的な通信障害が発生しました。

  • BYOIPHostNameLookupUnavailable — Amazon SES は IP アドレスのDNSホスト名を検索できませんでした。このタイプの遅延は、Bring Your Own IP を使用する場合にのみ発生します。

  • 未確定 – Amazon SESは配信遅延の理由を特定できませんでした。

  • SendingDeferral – Amazon SESは、メッセージを内部的に延期することが適切であると判断しました。

delayedRecipients

E メールの受取人に関する情報を含むオブジェクト。

expirationTime

Amazon SESがメッセージの配信を停止する日時。この値は 8601 ISO 形式で表示されます。

reportingMTA

遅延を報告したメッセージ転送エージェント (MTA) の IP アドレス。

timestamp

遅延が発生した日時。8601 ISO 形式で表示されます。

遅延受取人

delayedRecipients オブジェクトには、以下の値が含まれています。

フィールド名 説明

emailAddress

メッセージの配信が遅れる原因となった E メールアドレス。

status

配信遅延に関連付けられたSMTPステータスコード。

diagnosticCode

受信メッセージ転送エージェント () によって提供される診断コードMTA。

サブスクリプションオブジェクト

Subscription イベントに関する情報を含むJSONオブジェクトには、次のフィールドがあります。

フィールド名 説明

contactList

連絡先が含まれているリストの名前。

timestamp

がサブスクリプション通知ISPを送信したときの ISO8601 形式の日時 (YYYY-MM-DDThh:mm:ss.sZ)

source

メッセージが送信された E メールアドレス (エンベロープMAILFROMアドレス)。

newTopicPreferences

変更後のステータスを示す連絡先リスト内のすべてのトピックのサブスクリプションステータスを指定するJSONデータ構造 (マップ) (サブスクライブまたは非サブスクライブのコンタクト)。

oldTopicPreferences

変更前のステータスを示す連絡先リスト内のすべてのトピックのサブスクリプションステータスを指定するJSONデータ構造 (マップ) (サブスクライブまたは非サブスクライブのコンタクト)。

新旧トピックの設定

newTopicPreferences および oldTopicPreferences オブジェクトには、以下の値が含まれています。

フィールド名 説明

unsubscribeAll

連絡先リストのすべてのトピックから、連絡先がサブスクライブ解除されているかどうかを指定します。

topicSubscriptionStatus

指定されたイベントタイプの から通知を受信するように現在サブスクライブされているかどうかを示す、 topicNameフィールド内のトピックSESのサブスクリプションステータスを指定します。subscriptionStatus フィールドで指定できる値は、 OptIn (サブスクライブ済み) または OptOut (非サブスクライブ済み) です。

topicDefaultSubscriptionStatus

イベント送信先に追加された新しいトピックをデフォルトでサブスクライブするか、サブスクライブ解除するかを決定するtopicNameフィールドで、トピックのデフォルトのサブスクリプションステータスを指定します。使用可能な値は、 subscriptionStatusフィールドで OptIn (デフォルトでサブスクライブ) または OptOut (デフォルトでサブスクライブ解除) です。