Amazon SES가 Amazon SNS에 게시하는 이벤트 데이터 예제 - Amazon Simple Email Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon SES가 Amazon SNS에 게시하는 이벤트 데이터 예제

이 단원에서는 Amazon SES가 Amazon SNS에 게시하는 이메일 전송 이벤트 레코드의 유형별 예제를 제공합니다.

참고

다음 예제에서는 tag 필드가 사용되며, SES가 모든 이벤트 유형에 대한 태그 게시를 지원하는 구성 집합을 통해 이벤트 게시를 사용하고 있습니다. 자격 증명에 직접 피드백 알림을 사용하는 경우 SES는 태그를 게시하지 않습니다. 구성 세트 생성 또는 구성 세트 수정 작업을 할 때 태그 추가하기에 대해 읽어보세요.

Bounce 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Bounce 이벤트 레코드의 예제입니다.

{ "eventType":"Bounce", "bounce":{ "bounceType":"Permanent", "bounceSubType":"General", "bouncedRecipients":[ { "emailAddress":"recipient@example.com", "action":"failed", "status":"5.1.1", "diagnosticCode":"smtp; 550 5.1.1 user unknown" } ], "timestamp":"2017-08-05T00:41:02.669Z", "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000", "reportingMTA":"dsn; mta.example.com" }, "mail":{ "timestamp":"2017-08-05T00:40:02.012Z", "source":"Sender Name <sender@example.com>", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "recipient@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"Sender Name <sender@example.com>" }, { "name":"To", "value":"recipient@example.com" }, { "name":"Subject", "value":"Message sent from Amazon SES" }, { "name":"MIME-Version", "value":"1.0" }, { "name":"Content-Type", "value":"multipart/alternative; boundary=\"----=_Part_7307378_1629847660.1516840721503\"" } ], "commonHeaders":{ "from":[ "Sender Name <sender@example.com>" ], "to":[ "recipient@example.com" ], "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject":"Message sent from Amazon SES" }, "tags":{ "ses:configuration-set":[ "ConfigSet" ], "ses:source-ip":[ "192.0.2.0" ], "ses:from-domain":[ "example.com" ], "ses:caller-identity":[ "ses_user" ] } } }

Complaint 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Complaint 이벤트 레코드의 예제입니다.

{ "eventType":"Complaint", "complaint": { "complainedRecipients":[ { "emailAddress":"recipient@example.com" } ], "timestamp":"2017-08-05T00:41:02.669Z", "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000", "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36", "complaintFeedbackType":"abuse", "arrivalDate":"2017-08-05T00:41:02.669Z" }, "mail":{ "timestamp":"2017-08-05T00:40:01.123Z", "source":"Sender Name <sender@example.com>", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "recipient@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"Sender Name <sender@example.com>" }, { "name":"To", "value":"recipient@example.com" }, { "name":"Subject", "value":"Message sent from Amazon SES" }, { "name":"MIME-Version","value":"1.0" }, { "name":"Content-Type", "value":"multipart/alternative; boundary=\"----=_Part_7298998_679725522.1516840859643\"" } ], "commonHeaders":{ "from":[ "Sender Name <sender@example.com>" ], "to":[ "recipient@example.com" ], "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject":"Message sent from Amazon SES" }, "tags":{ "ses:configuration-set":[ "ConfigSet" ], "ses:source-ip":[ "192.0.2.0" ], "ses:from-domain":[ "example.com" ], "ses:caller-identity":[ "ses_user" ] } } }

Delivery 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Delivery 이벤트 레코드의 예제입니다.

{ "eventType": "Delivery", "mail": { "timestamp": "2016-10-19T23:20:52.240Z", "source": "sender@example.com", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "recipient@example.com" ], "headersTruncated": false, "headers": [ { "name": "From", "value": "sender@example.com" }, { "name": "To", "value": "recipient@example.com" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "text/html; charset=UTF-8" }, { "name": "Content-Transfer-Encoding", "value": "7bit" } ], "commonHeaders": { "from": [ "sender@example.com" ], "to": [ "recipient@example.com" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "ses:outgoing-ip": [ "192.0.2.0" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "delivery": { "timestamp": "2016-10-19T23:21:04.133Z", "processingTimeMillis": 11893, "recipients": [ "recipient@example.com" ], "smtpResponse": "250 2.6.0 Message received", "reportingMTA": "mta.example.com" } }

Send 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Send 이벤트 레코드의 예제입니다. 일부 필드는 표시되지 않을 수도 있습니다. 예를 들어 템플릿으로 작성된 이메일을 사용하면 제목이 나중에 렌더링되고 후속 이벤트에 포함됩니다.

{ "eventType": "Send", "mail": { "timestamp": "2016-10-14T05:02:16.645Z", "source": "sender@example.com", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "recipient@example.com" ], "headersTruncated": false, "headers": [ { "name": "From", "value": "sender@example.com" }, { "name": "To", "value": "recipient@example.com" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/mixed; boundary=\"----=_Part_0_716996660.1476421336341\"" }, { "name": "X-SES-MESSAGE-TAGS", "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2" } ], "commonHeaders": { "from": [ "sender@example.com" ], "to": [ "recipient@example.com" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "send": {} }

Reject 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Reject 이벤트 레코드의 예제입니다.

{ "eventType": "Reject", "mail": { "timestamp": "2016-10-14T17:38:15.211Z", "source": "sender@example.com", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "sender@example.com" ], "headersTruncated": false, "headers": [ { "name": "From", "value": "sender@example.com" }, { "name": "To", "value": "recipient@example.com" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/mixed; boundary=\"qMm9M+Fa2AknHoGS\"" }, { "name": "X-SES-MESSAGE-TAGS", "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2" } ], "commonHeaders": { "from": [ "sender@example.com" ], "to": [ "recipient@example.com" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "reject": { "reason": "Bad content" } }

Open 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Open 이벤트 레코드의 예제입니다.

{ "eventType": "Open", "mail": { "commonHeaders": { "from": [ "sender@example.com" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES", "to": [ "recipient@example.com" ] }, "destination": [ "recipient@example.com" ], "headers": [ { "name": "X-SES-CONFIGURATION-SET", "value": "ConfigSet" }, { "name":"X-SES-MESSAGE-TAGS", "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2" }, { "name": "From", "value": "sender@example.com" }, { "name": "To", "value": "recipient@example.com" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/alternative; boundary=\"XBoundary\"" } ], "headersTruncated": false, "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "sendingAccountId": "123456789012", "source": "sender@example.com", "tags": { "myCustomTag1":[ "myCustomValue1" ], "myCustomTag2":[ "myCustomValue2" ], "ses:caller-identity": [ "IAM_user_or_role_name" ], "ses:configuration-set": [ "ConfigSet" ], "ses:from-domain": [ "example.com" ], "ses:source-ip": [ "192.0.2.0" ] }, "timestamp": "2017-08-09T21:59:49.927Z" }, "open": { "ipAddress": "192.0.2.1", "timestamp": "2017-08-09T22:00:19.652Z", "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Mobile/14G60" } }

Click 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Click 이벤트 레코드의 예제입니다.

{ "eventType": "Click", "click": { "ipAddress": "192.0.2.1", "link": "http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html", "linkTags": { "samplekey0": [ "samplevalue0" ], "samplekey1": [ "samplevalue1" ] }, "timestamp": "2017-08-09T23:51:25.570Z", "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36" }, "mail": { "commonHeaders": { "from": [ "sender@example.com" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES", "to": [ "recipient@example.com" ] }, "destination": [ "recipient@example.com" ], "headers": [ { "name": "X-SES-CONFIGURATION-SET", "value": "ConfigSet" }, { "name":"X-SES-MESSAGE-TAGS", "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2" }, { "name": "From", "value": "sender@example.com" }, { "name": "To", "value": "recipient@example.com" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/alternative; boundary=\"XBoundary\"" }, { "name": "Message-ID", "value": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000" } ], "headersTruncated": false, "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "sendingAccountId": "123456789012", "source": "sender@example.com", "tags": { "myCustomTag1":[ "myCustomValue1" ], "myCustomTag2":[ "myCustomValue2" ], "ses:caller-identity": [ "ses_user" ], "ses:configuration-set": [ "ConfigSet" ], "ses:from-domain": [ "example.com" ], "ses:source-ip": [ "192.0.2.0" ] }, "timestamp": "2017-08-09T23:50:05.795Z" } }

Rendering Failure 레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 Rendering Failure 이벤트 레코드의 예제입니다.

{ "eventType":"Rendering Failure", "mail":{ "timestamp":"2018-01-22T18:43:06.197Z", "source":"sender@example.com", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "recipient@example.com" ], "headersTruncated":false, "tags":{ "ses:configuration-set":[ "ConfigSet" ] } }, "failure":{ "errorMessage":"Attribute 'attributeName' is not present in the rendering data.", "templateName":"MyTemplate" } }

DeliveryDelay레코드

다음은 Amazon SES가 Amazon SNS에 게시하는 DeliveryDelay 이벤트 레코드의 예제입니다.

{ "eventType": "DeliveryDelay", "mail":{ "timestamp":"2020-06-16T00:15:40.641Z", "source":"sender@example.com", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "recipient@example.com" ], "headersTruncated":false, "tags":{ "ses:configuration-set":[ "ConfigSet" ] } }, "deliveryDelay": { "timestamp": "2020-06-16T00:25:40.095Z", "delayType": "TransientCommunicationFailure", "expirationTime": "2020-06-16T00:25:40.914Z", "delayedRecipients": [{ "emailAddress": "recipient@example.com", "status": "4.4.1", "diagnosticCode": "smtp; 421 4.4.1 Unable to connect to remote host" }] } }

구독 레코드

다음은 Amazon SES가 Firehose에 게시하는 Subscription 이벤트 레코드의 예입니다.

{ "eventType": "Subscription", "mail": { "timestamp": "2022-01-12T01:00:14.340Z", "source": "sender@example.com", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com", "sendingAccountId": "123456789012", "messageId": "EXAMPLEe4bccb684-777bc8de-afa7-4970-92b0-f515137b1497-000000", "destination": ["recipient@example.com"], "headersTruncated": false, "headers": [ { "name": "From", "value": "sender@example.com" }, { "name": "To", "value": "recipient@example.com" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "text/html; charset=UTF-8" }, { "name": "Content-Transfer-Encoding", "value": "7bit" } ], "commonHeaders": { "from": ["sender@example.com"], "to": ["recipient@example.com"], "messageId": "EXAMPLEe4bccb684-777bc8de-afa7-4970-92b0-f515137b1497-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:operation": ["SendEmail"], "ses:configuration-set": ["ConfigSet"], "ses:source-ip": ["192.0.2.0"], "ses:from-domain": ["example.com"], "ses:caller-identity": ["ses_user"], "myCustomTag1": ["myCustomValue1"], "myCustomTag2": ["myCustomValue2"] } }, "subscription": { "contactList": "ContactListName", "timestamp": "2022-01-12T01:00:17.910Z", "source": "UnsubscribeHeader", "newTopicPreferences": { "unsubscribeAll": true, "topicSubscriptionStatus": [ { "topicName": "ExampleTopicName", "subscriptionStatus": "OptOut" } ] }, "oldTopicPreferences": { "unsubscribeAll": false, "topicSubscriptionStatus": [ { "topicName": "ExampleTopicName", "subscriptionStatus": "OptOut" } ] } } }