Amazon Simple Email Service
開発者ガイド

Amazon SES の E メール受信通知の内容

E メール受信に関するすべての通知は、JavaScript Object Notation (JSON) 形式で Amazon Simple Notification Service (Amazon SNS) トピックに公開されます。

トップレベル JSON オブジェクト

最上位の JSON オブジェクトには以下のフィールドが含まれます。

フィールド名 説明

notificationType

通知タイプ。このタイプの通知の場合、この値は常に Received です。

receipt

E メール配信に関する情報を格納するオブジェクト。

mail

通知が関係する E メールについての情報を格納するオブジェクト。

content

通常は多目的インターネットメール拡張 (MIME) 形式の、変更を加えていない raw E メールを格納する文字列。MIME 形式の詳細については、RFC 2045 を参照してください。

注記

このフィールドは、通知が SNS アクションによってトリガーされたときだけ使用されます。その他のすべてのアクションによってトリガーされる通知には、このフィールドは含まれません。

receipt オブジェクト

receipt オブジェクトには以下のフィールドがあります。

フィールド名 説明

action

実行されたアクションに関する情報をカプセル化するオブジェクト。可能な値の一覧については、action オブジェクト を参照してください。

dkimVerdict

ドメインキーアイデンティファイドメール (DKIM) のチェックに合格したどうかを示すオブジェクト。可能な値の一覧については、dkimVerdict オブジェクト を参照してください。

dmarcPolicy

送信元ドメインの Domain-based Message Authentication、Reporting & Conformance (DMARC) の設定を示します。このフィールドは、メッセージが DMARC 認証に失敗した場合にのみ表示されます。

このフィールドに可能な値は次のとおりです。

  • none: 送信元ドメインの所有者は、DMARC 認証に失敗するメッセージに対して特定のアクションをリクエストしません。

  • quarantine: 送信元ドメインの所有者は、DMARC 認証に失敗するメッセージが受信者によって疑わしいものとして扱われるようリクエストします。

  • reject: 送信元ドメインの所有者は、DMARC 認証に失敗するメッセージが拒否されるようリクエストします。

dmarcVerdict Domain-based Message Authentication、Reporting & Conformance (DMARC) のチェックに合格したかどうかを示すオブジェクト。可能な値の一覧については、dmarcVerdict オブジェクト を参照してください。

processingTimeMillis

Amazon SES がメッセージを受信した時点からアクションをトリガーした時点までの期間をミリ秒で表す文字列。

recipients

アクティブな受信ルールによって一致した受信者のリスト (具体的には、エンベロープの RCPT TO アドレス)。ここにリストされるアドレスは、「mail オブジェクト」の [destination] フィールドに記載されているものとは異なる場合があります。

spamVerdict

メッセージがスパムであるかどうかを示すオブジェクト。可能な値の一覧については、spamVerdict オブジェクト を参照してください。

spfVerdict

Sender Policy Framework (SPF) のチェックに合格したかどうかを示すオブジェクト。可能な値の一覧については、spfVerdict オブジェクト を参照してください。

timestamp

ISO 8601 フォーマットでアクションがトリガーされた日時を指定する文字列。

virusVerdict

メッセージにウイルスが含まれているかどうかを示すオブジェクト。可能な値の一覧については、virusVerdict オブジェクト を参照してください。

action オブジェクト

action オブジェクトには以下のフィールドがあります。

フィールド名 説明

type

実行されたアクションのタイプを示す文字列。使用できる値は、S3SNSBounceLambdaStop、および WorkMail です。

topicArn

通知が公開された Amazon SNS トピックの Amazon リソースネーム (ARN) を格納する文字列。

bucketName

メッセージが公開された Amazon S3 バケットの名前を格納する文字列。S3 アクションタイプでのみ使用されます。

objectKey

Amazon S3 バケット内の E メールを一意に識別する名前を格納する文字列。これは、「mail オブジェクト」の messageId と同じです。S3 アクションタイプでのみ使用されます。

smtpReplyCode

RFC 5321 で定義されている SMTP 応答コードを格納する文字列。バウンスアクションタイプでのみ使用されます。

statusCode

RFC 3463 で定義されている SMTP 拡張ステータスコードを格納する文字列。バウンスアクションタイプでのみ使用されます。

message

バウンスメッセージに含める、人間が読み取れるテキストを格納する文字列。バウンスアクションタイプでのみ使用されます。

sender

バウンスした E メールの送信元 E メールアドレスを格納する文字列。これは、バウンスメッセージの送信元のアドレスです。バウンスアクションタイプでのみ使用されます。

functionArn

トリガーされた Lambda 関数の ARN を格納する文字列。Lambda アクションタイプでのみ使用されます。

invocationType

Lambda 関数の呼び出しタイプを格納する文字列。指定できる値は RequestResponse および Event です。Lambda アクションタイプでのみ使用されます。

organizationArn

Amazon WorkMail 組織の ARN を格納する文字列。WorkMail アクションタイプでのみ使用されます。

dkimVerdict オブジェクト

dkimVerdict オブジェクトには以下のフィールドがあります。

フィールド名 説明

status

DKIM 判定を格納する文字列。想定される値は次のとおりです。

  • PASS: メッセージは DKIM 認証に合格しています。

  • FAIL: メッセージは DKIM 認証に失敗しました。

  • GRAY: メッセージが DKIM 署名されていません。

  • PROCESSING_FAILED: Amazon SES で DKIM 署名をチェックできない問題が存在します。たとえば、DNS クエリに失敗しているか、DKIM 署名ヘッダーが正しくフォーマットされていません。

dmarcVerdict オブジェクト

dmarcVerdict オブジェクトには以下のフィールドがあります。

フィールド名 説明

status

DMARC 判定を格納する文字列。想定される値は次のとおりです。

  • PASS: メッセージは DMARC 認証に合格しています。

  • FAIL: メッセージは DMARC 認証に失敗しました。

  • GRAY: メッセージは DMARC 認証に失敗しました。送信元ドメインに DMARC ポリシーが存在しないか、p=none ポリシーを使用しています。

  • PROCESSING_FAILED: Amazon SES で DMARC の判定を提供できない問題が存在します。

spamVerdict オブジェクト

spamVerdict オブジェクトには以下のフィールドがあります。

フィールド名 説明

status

スパムスキャンの結果を格納する文字列。想定される値は次のとおりです。

  • PASS: スパムスキャンにより、メッセージにスパムが含まれている可能性は低いと判定されました。

  • FAIL: スパムスキャンにより、メッセージにスパムが含まれている可能性が高いと判定されました。

  • GRAY: Amazon SES で E メールをスキャンしましたが、スパムかどうかを断定できませんでした。

  • PROCESSING_FAILED: Amazon SES で E メールをスキャンできません。たとえば、メールが有効な MIME メッセージではありません。

spfVerdict オブジェクト

spfVerdict オブジェクトには以下のフィールドがあります。

フィールド名 説明

status

SPF 判定を格納する文字列。想定される値は次のとおりです。

  • PASS: メッセージは SPF 認証に合格しています。

  • FAIL: メッセージは SPF 認証に失敗しました。

  • GRAY: MAIL FROM コマンドで使用されているドメインに SPF ポリシーがありません。

  • PROCESSING_FAILED: Amazon SES で SPF レコードをチェックできない問題が存在します。たとえば、DNS クエリに失敗しています。

virusVerdict オブジェクト

virusVerdict オブジェクトには以下のフィールドがあります。

フィールド名 説明

status

ウイルススキャンの結果を格納する文字列。想定される値は次のとおりです。

  • PASS: メッセージにウイルスは含まれていません。

  • FAIL: メッセージにウイルスが含まれています。

  • GRAY: Amazon SES で E メールをスキャンしましたが、ウイルスが含まれているかどうかを断定できませんでした。

  • PROCESSING_FAILED: Amazon SES で E メールの内容をスキャンできません。たとえば、メールが有効な MIME メッセージではありません。

mail オブジェクト

mail オブジェクトには以下のフィールドがあります。

フィールド名 説明

destination

受信 E メールの MIME ヘッダーからのすべての受信者アドレス (To: および CC: 受信者を含む) の完全なリスト。

messageId

Amazon SES によって E メールに割り当てられる一意の ID を格納する文字列。E メールが Amazon S3 に配信された場合、このメッセージ ID は、Amazon S3 バケットにメッセージを書き込むために使用される Amazon S3 オブジェクトキーにもなります。

source

E メールの送信元の E メールアドレス (具体的には、エンベロープ MAIL FROM アドレス) を格納する文字列。

timestamp

E メールを受信した時刻を ISO8601 形式で格納する文字列。

headers

Amazon SES ヘッダーおよびカスタムヘッダーのリスト。リスト内の各ヘッダーには、name フィールドと value フィールドがあります。

commonHeaders

すべての E 子メールに共通するヘッダーのリスト。リスト内の各ヘッダーは名前と値で構成されます。

headersTruncated

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

commonHeaders オブジェクト

commonHeaders オブジェクトには、次の表に示すフィールドを含めることができます。このオブジェクトに存在するフィールドは、受信 E メールにどのフィールドが存在するかに応じて異なります。

フィールド名 説明

messageId

元のメッセージの ID。

date

Amazon SES がメッセージを受信した日時。

to

E メールの To ヘッダーの値。

cc

E メールの CC ヘッダーの値。

bcc

E メールの BCC ヘッダーの値。

from

E メールの From ヘッダーの値。

sender

E メールの Sender ヘッダーの値。

returnPath

E メールの Return-Path ヘッダーの値。

reply-to

E メールの Reply-To ヘッダーの値。

subject

E メールの Subject ヘッダーの値。