

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

# Firehose에서 Amazon SES 이벤트 데이터 검색
<a name="event-publishing-retrieving-firehose"></a>

Amazon SES에서 이메일 전송 이벤트를 Firehose에 JSON 레코드로 게시합니다. 그러면 Firehose는 Firehose에서 전송 스트림을 설정할 때 선택한 AWS 서비스 대상에 레코드를 게시합니다. Firehose 전송 스트림 설정에 대한 자세한 내용은 *Amazon Data Firehose 개발자 가이드*의 [Firehose 전송 스트림 생성](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html)을 참조하세요.

**Topics**
+ [Amazon SES에서 Firehose에 게시하는 이벤트 데이터 콘텐츠](event-publishing-retrieving-firehose-contents.md)
+ [Amazon SES에서 Firehose에 게시하는 이벤트 데이터 예제](event-publishing-retrieving-firehose-examples.md)

# Amazon SES에서 Firehose에 게시하는 이벤트 데이터 콘텐츠
<a name="event-publishing-retrieving-firehose-contents"></a>

Amazon SES에서 이메일 전송 이벤트 레코드를 Amazon Data Firehose에 JSON 형식으로 게시합니다. Firehose에 이벤트를 게시할 때 Amazon SES는 줄바꿈 문자가 포함된 각 JSON 레코드를 따릅니다.

이러한 모든 알림 유형에 대한 레코드 예는 [Amazon SES에서 Firehose에 게시하는 이벤트 데이터 예제](event-publishing-retrieving-firehose-examples.md)에서 찾을 수 있습니다.

**Topics**
+ [최상위 JSON 객체](#event-publishing-retrieving-firehose-contents-top-level-json-object)
+ [Mail 객체](#event-publishing-retrieving-firehose-contents-mail-object)
+ [Bounce 객체](#event-publishing-retrieving-firehose-contents-bounce-object)
+ [Complaint 객체](#event-publishing-retrieving-firehose-contents-complaint-object)
+ [전송 객체](#event-publishing-retrieving-firehose-contents-delivery-object)
+ [Send 객체](#event-publishing-retrieving-firehose-contents-send-object)
+ [Reject 객체](#event-publishing-retrieving-firehose-contents-reject-object)
+ [Open 객체](#event-publishing-retrieving-firehose-contents-open-object)
+ [Click 객체](#event-publishing-retrieving-firehose-contents-click-object)
+ [Rendering Failure 객체](#event-publishing-retrieving-firehose-contents-failure-object)
+ [DeliveryDelay 객체](#event-publishing-retrieving-firehose-delivery-delay-object)
+ [구독 객체](#event-publishing-retrieving-firehose-subscription-object)

## 최상위 JSON 객체
<a name="event-publishing-retrieving-firehose-contents-top-level-json-object"></a>

이메일 전송 이벤트 레코드의 최상위 JSON 객체는 다음 필드로 구성됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `eventType`  |  이벤트 유형을 설명하는 문자열입니다. 가능한 값: `Bounce`, `Complaint`, `Delivery`, `Send`, `Reject`, `Open`, `Click`, `Rendering Failure`, `DeliveryDelay` 또는 `Subscription` [이벤트 게시를 설정](monitor-sending-using-event-publishing-setup.md)하지 않은 경우 이 필드의 이름은 `notificationType`입니다.  | 
|  `mail`  |  이벤트를 만드는 이메일 관련 정보를 포함하는 JSON 객체입니다.  | 
|  `bounce`  |  이 필드는 `eventType`이 `Bounce`인 경우에만 존재합니다. 이 파일에는 반송 관련 정보가 포함되어 있습니다.  | 
|  `complaint`  |  이 필드는 `eventType`이 `Complaint`인 경우에만 존재합니다. 이 파일에는 수신 거부 관련 정보가 포함되어 있습니다.  | 
|  `delivery`  |  이 필드는 `eventType`이 `Delivery`인 경우에만 존재합니다. 이 파일에는 전송 관련 정보가 포함되어 있습니다.  | 
|  `send`  |  이 필드는 `eventType`이 `Send`인 경우에만 존재합니다.  | 
|  `reject`  |  이 필드는 `eventType`이 `Reject`인 경우에만 존재합니다. 이 파일에는 거부 관련 정보가 포함되어 있습니다.  | 
|  `open`  |  이 필드는 `eventType`이 `Open`인 경우에만 존재합니다. 이 파일에는 열기 이벤트 관련 정보가 포함되어 있습니다.  | 
|  `click`  |  이 필드는 `eventType`이 `Click`인 경우에만 존재합니다. 이 파일에는 클릭 이벤트 관련 정보가 포함되어 있습니다.  | 
| `failure` | 이 필드는 `eventType`이 `Rendering Failure`인 경우에만 존재합니다. 이 파일에는 렌더링 오류 이벤트 관련 정보가 포함되어 있습니다. | 
|  `deliveryDelay`  |  이 필드는 `eventType`이 `DeliveryDelay`인 경우에만 존재합니다. 이메일 전송 지연에 대한 정보가 포함되어 있습니다.  | 
|  `subscription`  |  이 필드는 `eventType`이 `Subscription`인 경우에만 존재합니다. 여기에는 구독 기본 설정에 대한 정보가 포함되어 있습니다.  | 

## Mail 객체
<a name="event-publishing-retrieving-firehose-contents-mail-object"></a>

각 이메일 전송 이벤트 레코드는 `mail` 객체에 원래 메일에 대한 정보를 포함하고 있습니다. `mail` 객체 정보를 포함하는 JSON 객체는 다음 필드로 구성됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `timestamp`  |  메시지가 전송된 날짜와 시간으로, ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)으로 표시됩니다.  | 
|  `messageId`  |  Amazon SES가 메시지에 할당한 고유 ID입니다. 메시지를 보낼 때 Amazon SES에서 이 값을 반환했습니다.  이 메시지 ID는 Amazon SES에서 할당한 것입니다. `mail` 객체의 `headers` 및 `commonHeaders` 필드에서 원래 메시지의 메시지 ID를 찾을 수 있습니다.   | 
|  `source`  |  메시지를 전송한 이메일 주소(엔벌로프 MAIL FROM 주소).  | 
|  `sourceArn`  |  이메일을 전송하는 데 사용된 ID의 Amazon 리소스 이름(ARN). 권한 부여 전송의 경우 `sourceArn`은 ID 소유자가 위임 발신자에게 메일 전송 시 사용하도록 권한을 부여한 ID의 ARN입니다. 권한 부여 전송에 대한 자세한 내용은 [이메일 인증 방법전송 권한 부여 사용](sending-authorization.md) 섹션을 참조하세요.  | 
|  `sendingAccountId`  |  이메일을 보내는 데 사용된 AWS 계정의 계정 ID입니다. 권한 부여 전송의 경우 `sendingAccountId`는 위임 발신자의 계정 ID입니다.  | 
|  `destination`  |  원래 메일의 수신자인 이메일 주소의 목록.  | 
|  `headersTruncated`  |  알림에서 헤더가 잘렸는지 여부를 나타내는 문자열입니다. 헤더의 용량이 10KB를 초과할 경우 헤더가 잘립니다. 가능한 값은 `true` 및 `false`입니다.  | 
|  `headers`  |  이메일의 원래 헤더 목록입니다. 목록의 각 헤더에는 `name` 필드와 `value` 필드가 존재합니다.  `headers` 필드의 모든 메시지 ID는 Amazon SES에 전달한 원본 메시지에서 가져온 것입니다. 이어서 Amazon SES가 메시지에 할당한 메시지 ID는 `mail` 객체의 `messageId` 필드에 들어 있습니다.   | 
|  `commonHeaders`  |  자주 사용되는 원래 이메일 헤더의 매핑입니다.  `commonHeaders` 필드의 모든 메시지 ID는 Amazon SES가 `mail` 객체의 `messageId` 필드 내 메시지에 할당한 메시지 ID입니다.   | 
|  `tags`  |  이메일과 연결된 태그 목록입니다.  | 

## Bounce 객체
<a name="event-publishing-retrieving-firehose-contents-bounce-object"></a>

`Bounce` 이벤트에 대한 정보를 포함하는 JSON 객체에는 항상 다음 필드가 포함됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `bounceType`  |  Amazon SES가 결정한 반송 메일의 유형.  | 
|  `bounceSubType`  |  Amazon SES가 결정한 반송 메일의 하위 유형.  | 
|  `bouncedRecipients`  |  반송된 원래 메일의 수신자 정보를 포함하는 목록.  | 
|  `timestamp`  |  ISP가 반송 메일 알림을 전송한 날짜와 시간으로, ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)으로 표시됩니다.  | 
|  `feedbackId`  |  반송 메일의 고유 ID.  | 
|  `reportingMTA`  |  DSN의 `Reporting-MTA` 필드의 값. DSN에서 설명하는 전송, 중계 또는 게이트웨이 작업을 시도하는 메시지 전송 권한(MTA)의 값입니다.  이 필드는 반송 메일에 전송 상태 알림(DSN)이 첨부된 경우에만 표시됩니다.   | 

### 반송 수신자
<a name="event-publishing-retrieving-firehose-contents-bounced-recipients"></a>

반송 이벤트는 단일 수신자 또는 여러 수신자와 관련이 있을 수 있습니다. `bouncedRecipients` 필드는 객체(반송 메일 이벤트가 관련된 수신자당 객체 1개)의 목록을 포함하고 있으며 항상 다음 필드로 구성됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `emailAddress`  |  수신자의 이메일 주소. DSN이 사용 가능할 경우, DSN의 `Final-Recipient` 필드의 값입니다.  | 

또는 반송 메일에 DSN이 첨부된 경우 다음 필드도 존재할 수 있습니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `action`  |  DSN의 `Action` 필드의 값. 이 수신자에게 메시지를 전송하려는 시도의 결과로 보고-MTA가 수행하는 작업을 나타냅니다.  | 
|  `status`  |  DSN의 `Status` 필드의 값. 메시지의 전송 상태를 나타내는 수신자별 전송 독립적 상태 코드입니다.  | 
|  `diagnosticCode`  |  보고-MTA가 발행한 상태 코드. DSN의 `Diagnostic-Code` 필드의 값입니다. 이 필드가 DSN에는 없을 수 있습니다(따라서 JSON에도 없음).  | 

### 반송 메일 유형
<a name="event-publishing-retrieving-firehose-contents-bounce-types"></a>

각 반송 메일 이벤트는 다음 표에 나와 있는 유형 중 하나가 됩니다.

이벤트 게시 시스템은 Amazon SES에서 더 이상 재시도하지 않을 하드 바운스 및 소프트 바운스만 게시합니다. `Permanent`로 표시된 반송 메일을 받으면 메일 그룹에서 해당 이메일 주소를 삭제해야 하며 다음부터는 그러한 이메일 주소로 전송할 수 없습니다. `Transient` 반송 메일은 메시지가 여러 번 소프트 바운스되어 Amazon SES에서 이러한 메일에 대해 재전송 시도를 중지한 경우에 전송됩니다. 처음에 `Transient` 반송 메일이 발생한 주소로 이후 전송 재시도가 성공할 수도 있습니다.


| bounceType | bounceSubType | 설명 | 
| --- | --- | --- | 
|  `Undetermined`  |  `Undetermined`  |  Amazon SES가 특정 반송 사유를 결정하지 못했습니다.  | 
|  `Permanent`  |  `General`  |  Amazon SES가 일반 하드 바운스를 수신했습니다. 이 유형의 반송 메일을 받은 경우, 이 수신자의 이메일 주소를 메일 발송 목록에서 삭제해야 합니다.  | 
|  `Permanent`  |  `NoEmail`  |  대상 이메일 주소가 존재하지 않아 Amazon SES가 영구 하드 바운스를 수신했습니다. 이 유형의 반송 메일을 받은 경우, 이 수신자의 이메일 주소를 메일 발송 목록에서 삭제해야 합니다.  | 
|  `Permanent`  |  `Suppressed`  |  최근의 잘못된 주소로 인한 반송 이력 때문에 Amazon SES가 이 주소로 메일 전송을 금지했습니다. 전역 금지 목록을 재정의하려면 [Amazon SES 계정 수준 금지 목록 사용](sending-email-suppression-list.md) 섹션을 참조하세요.  | 
| Permanent | OnAccountSuppressionList | [계정 수준 금지 목록](sending-email-suppression-list.md)에 있으므로 Amazon SES가 이 주소로 보내는 것을 금지했습니다. 이는 반송 비율 지표에 반영되지 않습니다. | 
|  `Transient`  |  `General`  |  Amazon SES가 일반 반송 메일을 수신했습니다. 이후에 이 수신자에게 전송이 성공할 수도 있습니다.  | 
|  `Transient`  |  `MailboxFull`  |  Amazon SES가 메일박스 가득 참 반송 메일을 수신했습니다. 이후에 이 수신자에게 전송이 성공할 수도 있습니다.  | 
|  `Transient`  |  `MessageTooLarge`  |  Amazon SES가 메시지 너무 큼 반송 메일을 수신했습니다. 메시지 크기를 줄일 경우 이 수신자에게 전송이 성공할 수도 있습니다.  | 
|  `Transient`  |  `CustomTimeoutExceeded`  |  Amazon SES가 이메일 발신자가 지정한 시간 내에 이메일을 성공적으로 전송하지 못했습니다. *(반송 메시지는 정의된 TTL 내에서 가능한 전송 시도 실패의 이유를 지정합니다.)*   | 
|  `Transient`  |  `ContentRejected`  |  Amazon SES가 내용 거부 반송 메일을 수신했습니다. 메시지 내용을 변경할 경우 이 수신자에게 전송이 성공할 수도 있습니다.  | 
|  `Transient`  |  `AttachmentRejected`  |  Amazon SES가 첨부 파일 거부 반송 메일을 수신했습니다. 첨부 파일을 제거하거나 변경할 경우 이 수신자에게 전송이 성공할 수도 있습니다.  | 

## Complaint 객체
<a name="event-publishing-retrieving-firehose-contents-complaint-object"></a>

`Complaint` 이벤트 정보를 포함하는 JSON 객체는 다음 필드로 구성됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `complainedRecipients`  |  수신 거부를 제출했을 수 있는 수신자에 대한 정보를 포함하는 목록.  | 
|  `timestamp`  |  ISP가 수신 거부 알림을 전송한 날짜와 시간으로, ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)으로 표시됩니다.  | 
|  `feedbackId`  |  수신 거부의 고유 ID.  | 
|  `complaintSubType`  |  Amazon SES가 결정한 수신 거부의 하위 유형.  | 

또한, 수신 거부에 피드백 보고서가 첨부된 경우 다음 필드가 포함될 수 있습니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `userAgent`  |  피드백 보고서의 `User-Agent` 필드의 값입니다. 보고서를 생성한 시스템의 이름 및 버전을 나타냅니다.  | 
|  `complaintFeedbackType`  |  ISP로부터 수신된 피드백 보고서의 `Feedback-Type` 필드의 값. 이 값은 피드백의 유형을 포함합니다.  | 
|  `arrivalDate`  |  피드백 보고서의 `Arrival-Date` 또는 `Received-Date` 필드 값으로 ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)입니다. 이 필드가 보고서에는 없을 수 있습니다(따라서 JSON에도 없음).  | 

### 수신 거부한 수신자
<a name="event-publishing-retrieving-firehose-contents-complained-recipients"></a>

`complainedRecipients` 필드는 수신 거부를 제출했을 수 있는 수신자의 목록을 포함합니다.

**중요**  
대부분의 ISP가 수신 거부를 제출한 수신자의 이메일 주소를 수신 거부 알림에서 삭제하므로, 이 목록에는 원래 메시지의 수신자 그리고 수신 거부를 보낸 ISP를 기준으로 수신 거부를 제출했을 수 있는 수신자의 목록이 포함되어 있습니다. Amazon SES는 원래 메시지를 조회하여 이 수신자 목록을 결정합니다.

이 목록의 JSON 객체는 다음 필드를 포함합니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `emailAddress`  |  수신자의 이메일 주소.  | 

### 수신 거부 유형
<a name="event-publishing-retrieving-firehose-contents-complaint-types"></a>

[Internet Assigned Numbers Authority 웹사이트](https://www.iana.org/assignments/marf-parameters/marf-parameters.xml#marf-parameters-2):에 따라 `complaintFeedbackType` 필드에 보고 ISP가 할당한 다음과 같은 수신 거부 유형이 나타날 수 있습니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `abuse`  |  원치 않는 이메일 또는 기타 유형의 이메일 침해를 나타냅니다.  | 
|  `auth-failure`  |  이메일 인증 실패 보고서.  | 
|  `fraud`  |  일종의 사기 또는 피싱 활동을 나타냅니다.  | 
|  `not-spam`  |  보고서를 제공하는 엔터티가 메시지를 스팸으로 간주하지 않음을 나타냅니다. 이는 스팸으로 잘못 태그 지정 또는 분류된 메시지를 교정하기 위해 사용될 수 있습니다.  | 
|  `other`  |  다른 등록된 유형에 들어맞지 않는 기타 피드백을 나타냅니다.  | 
|  `virus`  |  발원 메시지에서 바이러스가 발견되었다는 보고서.  | 

## 전송 객체
<a name="event-publishing-retrieving-firehose-contents-delivery-object"></a>

`Delivery` 이벤트에 대한 정보를 포함하는 JSON 객체에는 항상 다음 필드가 포함됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `timestamp`  |  Amazon SES가 수신자의 메일 서버로 이메일을 전송한 날짜와 시간으로, ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)으로 표시됩니다.  | 
|  `processingTimeMillis`  |  Amazon SES가 발신자로부터 요청을 수락한 때로부터 Amazon SES가 수신자의 메일 서버로 메시지를 전송한 때까지의 시간(단위: 밀리초).  | 
|  `recipients`  |  전송 이벤트가 적용되는 의도한 수신자의 목록.  | 
|  `smtpResponse`  |  Amazon SES로부터 이메일을 수락한 원격 ISP의 SMTP 응답 메시지. 이 메시지는 이메일, 수신 메일 서버, 수신 ISP마다 다릅니다.  | 
|  `reportingMTA`  |  메일을 전송한 Amazon SES 메일 서버의 호스트 이름.  | 
|  `remoteMtaIp`  |  Amazon SES에서 이메일을 전송한 MTA의 IP 주소입니다.  | 

## Send 객체
<a name="event-publishing-retrieving-firehose-contents-send-object"></a>

`send` 이벤트 정보를 포함하는 JSON 객체는 항상 비어 있습니다.

## Reject 객체
<a name="event-publishing-retrieving-firehose-contents-reject-object"></a>

`Reject` 이벤트에 대한 정보를 포함하는 JSON 객체에는 항상 다음 필드가 포함됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `reason`  |  이메일이 거부된 이유입니다. 유일하게 가능한 값은 `Bad content`로, Amazon SES가 바이러스 포함 이메일을 감지했다는 뜻입니다. 메시지가 거부되면 Amazon SES는 메시지 처리를 중지하고 해당 메시지를 수신자의 메일 서버로 전송하지 않습니다.  | 

## Open 객체
<a name="event-publishing-retrieving-firehose-contents-open-object"></a>

`Open` 이벤트에 대한 정보를 포함하는 JSON 객체는 항상 다음 필드를 포함합니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `ipAddress`  |  수신자의 IP 주소입니다.  | 
|  `timestamp`  |  열기 이벤트가 발생한 날짜와 시간으로, ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)으로 표시됩니다.  | 
|  `userAgent`  |  수신자가 이메일을 여는 데 사용한 이메일 클라이언트 또는 디바이스의 사용자 에이전트입니다.  | 

## Click 객체
<a name="event-publishing-retrieving-firehose-contents-click-object"></a>

`Click` 이벤트에 대한 정보를 포함하는 JSON 객체는 항상 다음 필드를 포함합니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `ipAddress`  |  수신자의 IP 주소입니다.  | 
|  `timestamp`  |  클릭 이벤트가 발생한 날짜와 시간으로, ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)으로 표시됩니다.  | 
|  `userAgent`  |  수신자가 이메일의 링크를 클릭하는 데 사용한 클라이언트의 사용자 에이전트입니다.  | 
|  `link`  |  수신자가 클릭한 링크의 URL입니다.  | 
|  `linkTags`  |  `ses:tags` 속성을 사용하여 링크에 추가된 태그 목록입니다. 이메일의 링크에 태그를 추가하는 방법은 [Q5. 링크에 고유 식별자로 태그를 지정할 수 있습니까?](faqs-metrics.md#sending-metric-faqs-clicks-q5)의 [Amazon SES 이메일 전송 지표 FAQ](faqs-metrics.md) 섹션을 참조하세요.  | 

## Rendering Failure 객체
<a name="event-publishing-retrieving-firehose-contents-failure-object"></a>

`Rendering Failure` 이벤트 정보를 포함하는 JSON 객체는 다음 필드로 구성됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `templateName`  |  이메일을 전송하는 데 사용하는 템플릿의 이름입니다.  | 
|  `errorMessage`  |  렌더링 오류에 관한 자세한 정보를 제공하는 메시지입니다.  | 

## DeliveryDelay 객체
<a name="event-publishing-retrieving-firehose-delivery-delay-object"></a>

`DeliveryDelay` 이벤트 정보를 포함하는 JSON 객체는 다음 필드로 구성됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `delayType`  |  지연 유형입니다. 가능한 값은 다음과 같습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/ses/latest/dg/event-publishing-retrieving-firehose-contents.html)  | 
|  `delayedRecipients`  |  이메일 수신자에 대한 정보가 있는 객체입니다.  | 
|  `expirationTime`  |  Amazon SES에서 메시지 전송 시도를 중지할 날짜 및 시간입니다. 이 값은 ISO 8601 형식으로 표시됩니다.  | 
|  `reportingMTA`  |  지연을 보고한 MTA(메시지 전송 에이전트) 의 IP 주소입니다.  | 
|  `timestamp`  |  지연이 발생한 날짜 및 시간으로 ISO 8601 형식으로 표시됩니다.  | 

### 지연된 수신자
<a name="event-publishing-retrieving-firehose-contents-delivery-delay-object-recipients"></a>

`delayedRecipients` 객체는 다음 값을 포함합니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `emailAddress`  |  메시지 전송이 지연된 이메일 주소입니다.  | 
|  `status`  |  전송 지연 관련된 SMTP 상태 코드입니다.  | 
|  `diagnosticCode`  |  수신 메시지 전송 에이전트(MTA)에서 제공하는 진단 코드입니다.  | 

## 구독 객체
<a name="event-publishing-retrieving-firehose-subscription-object"></a>

`Subscription` 이벤트 정보를 포함하는 JSON 객체는 다음 필드로 구성됩니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `contactList`  |  연락처가 있는 목록의 이름입니다.  | 
|  `timestamp`  |  ISP가 구독 알림을 전송한 날짜와 시간으로, ISO8601 형식(*YYYY-MM-DDThh:mm:ss.sZ*)으로 표시됩니다.  | 
|  `source`  |  메시지를 전송한 이메일 주소(엔벌로프 MAIL FROM 주소).  | 
|  `newTopicPreferences`  |  연락처 목록에 있는 모든 주제의 구독 상태를 지정하는 JSON 데이터 구조(맵)로, 변경 후 상태를 나타냅니다(연락처 구독함 또는 구독 취소함).  | 
|  `oldTopicPreferences`  |  연락처 목록에 있는 모든 주제의 구독 상태를 지정하는 JSON 데이터 구조(맵)로, 변경 전 상태를 나타냅니다(연락처 구독함 또는 구독 취소함).  | 

### 신규/이전 주제 기본 설정
<a name="event-publishing-retrieving-firehose-contents-subscription-object-topic-preferences"></a>

`newTopicPreferences` 및 `oldTopicPreferences` 객체는 다음 값을 포함합니다.


| 필드 이름 | 설명 | 
| --- | --- | 
|  `unsubscribeAll`  |  연락처 목록의 모든 주제에서 연락처가 구독을 취소했는지를 지정합니다.  | 
|  `topicSubscriptionStatus`  |  지정된 이벤트 유형에 대해 현재 SES로부터 알림을 수신하도록 구독하고 있는지를 나타내는 `topicName` 필드에서 주제의 구독 상태를 지정합니다. `subscriptionStatus` 필드에서 사용 가능한 값은 **OptIn**(구독) 또는 **OptOut**(구독 취소)입니다.  | 
|  `topicDefaultSubscriptionStatus`  |  `topicName` 필드에서 주제의 기본 구독 상태를 지정하여 이벤트 대상에 추가된 새 주제를 기본적으로 구독할지 아니면 구독 취소할지 결정합니다. `subscriptionStatus` 필드에서 사용 가능한 값은 **OptIn**(기본적으로 구독) 또는 **OptOut**(기본적으로 구독 취소)입니다.  | 

# Amazon SES에서 Firehose에 게시하는 이벤트 데이터 예제
<a name="event-publishing-retrieving-firehose-examples"></a>

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

**Topics**
+ [Bounce 레코드](#event-publishing-retrieving-firehose-bounce)
+ [Complaint 레코드](#event-publishing-retrieving-firehose-complaint)
+ [Delivery 레코드](#event-publishing-retrieving-firehose-delivery)
+ [Send 레코드](#event-publishing-retrieving-firehose-send)
+ [Reject 레코드](#event-publishing-retrieving-firehose-reject)
+ [Open 레코드](#event-publishing-retrieving-firehose-open)
+ [Click 레코드](#event-publishing-retrieving-firehose-click)
+ [Rendering Failure 레코드](#event-publishing-retrieving-firehose-failure)
+ [DeliveryDelay 레코드](#event-publishing-retrieving-firehose-delayed-delivery)
+ [구독 레코드](#event-publishing-retrieving-firehose-subscription)

**참고**  
다음 예제에서는 `tag` 필드가 사용되며, SES가 모든 이벤트 유형에 대한 태그 게시를 지원하는 구성 집합을 통해 이벤트 게시를 사용하고 있습니다. ID에 직접 피드백 알림을 사용하는 경우 SES는 태그를 게시하지 않습니다. [구성 세트 생성](creating-configuration-sets.md) 또는 [구성 세트 수정](managing-configuration-sets.md#console-detail-configuration-sets) 작업을 할 때 태그 추가하기에 대해 읽어보세요.

## Bounce 레코드
<a name="event-publishing-retrieving-firehose-bounce"></a>

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

```
 1. {
 2.   "eventType":"Bounce",
 3.   "bounce":{
 4.     "bounceType":"Permanent",
 5.     "bounceSubType":"General",
 6.     "bouncedRecipients":[
 7.       {
 8.         "emailAddress":"recipient@example.com",
 9.         "action":"failed",
10.         "status":"5.1.1",
11.         "diagnosticCode":"smtp; 550 5.1.1 user unknown"
12.       }
13.     ],
14.     "timestamp":"2017-08-05T00:41:02.669Z",
15.     "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000",
16.     "reportingMTA":"dsn; mta.example.com"
17.   },
18.   "mail":{
19.     "timestamp":"2017-08-05T00:40:02.012Z",
20.     "source":"Sender Name <sender@example.com>",
21.     "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
22.     "sendingAccountId":"123456789012",
23.     "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
24.     "destination":[
25.       "recipient@example.com"
26.     ],
27.     "headersTruncated":false,
28.     "headers":[
29.       {
30.         "name":"From",
31.         "value":"Sender Name <sender@example.com>"
32.       },
33.       {
34.         "name":"To",
35.         "value":"recipient@example.com"
36.       },
37.       {
38.         "name":"Subject",
39.         "value":"Message sent from Amazon SES"
40.       },
41.       {
42.         "name":"MIME-Version",
43.         "value":"1.0"
44.       },
45.       {
46.         "name":"Content-Type",
47.         "value":"multipart/alternative; boundary=\"----=_Part_7307378_1629847660.1516840721503\""
48.       }
49.     ],
50.     "commonHeaders":{
51.       "from":[
52.         "Sender Name <sender@example.com>"
53.       ],
54.       "to":[
55.         "recipient@example.com"
56.       ],
57.       "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
58.       "subject":"Message sent from Amazon SES"
59.     },
60.     "tags":{
61.       "ses:configuration-set":[
62.         "ConfigSet"
63.       ],
64.       "ses:source-ip":[
65.         "192.0.2.0"
66.       ],
67.       "ses:from-domain":[
68.         "example.com"
69.       ],
70.       "ses:caller-identity":[
71.         "ses_user"
72.       ]
73.     }
74.   }
75. }
```

## Complaint 레코드
<a name="event-publishing-retrieving-firehose-complaint"></a>

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

```
 1. {
 2.   "eventType":"Complaint",
 3.   "complaint": {
 4.     "complainedRecipients":[
 5.       {
 6.         "emailAddress":"recipient@example.com"
 7.       }
 8.     ],
 9.     "timestamp":"2017-08-05T00:41:02.669Z",
10.     "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000",
11.     "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36",
12.     "complaintFeedbackType":"abuse",
13.     "arrivalDate":"2017-08-05T00:41:02.669Z"
14.   },
15.   "mail":{
16.     "timestamp":"2017-08-05T00:40:01.123Z",
17.     "source":"Sender Name <sender@example.com>",
18.     "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
19.     "sendingAccountId":"123456789012",
20.     "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
21.     "destination":[
22.       "recipient@example.com"
23.     ],
24.     "headersTruncated":false,
25.     "headers":[
26.       {
27.         "name":"From",
28.         "value":"Sender Name <sender@example.com>"
29.       },
30.       {
31.         "name":"To",
32.         "value":"recipient@example.com"
33.       },
34.       {
35.         "name":"Subject",
36.         "value":"Message sent from Amazon SES"
37.       },
38.       {
39.         "name":"MIME-Version","value":"1.0"
40.       },
41.       {
42.         "name":"Content-Type",
43.         "value":"multipart/alternative; boundary=\"----=_Part_7298998_679725522.1516840859643\""
44.       }
45.     ],
46.     "commonHeaders":{
47.       "from":[
48.         "Sender Name <sender@example.com>"
49.       ],
50.       "to":[
51.         "recipient@example.com"
52.       ],
53.       "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
54.       "subject":"Message sent from Amazon SES"
55.     },
56.     "tags":{
57.       "ses:configuration-set":[
58.         "ConfigSet"
59.       ],
60.       "ses:source-ip":[
61.         "192.0.2.0"
62.       ],
63.       "ses:from-domain":[
64.         "example.com"
65.       ],
66.       "ses:caller-identity":[
67.         "ses_user"
68.       ]
69.     }
70.   }
71. }
```

## Delivery 레코드
<a name="event-publishing-retrieving-firehose-delivery"></a>

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

```
 1. {
 2.   "eventType": "Delivery",
 3.   "mail": {
 4.     "timestamp": "2016-10-19T23:20:52.240Z",
 5.     "source": "sender@example.com",
 6.     "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
 7.     "sendingAccountId": "123456789012",
 8.     "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
 9.     "destination": [
10.       "recipient@example.com"
11.     ],
12.     "headersTruncated": false,
13.     "headers": [
14.       {
15.         "name": "From",
16.         "value": "sender@example.com"
17.       },
18.       {
19.         "name": "To",
20.         "value": "recipient@example.com"
21.       },
22.       {
23.         "name": "Subject",
24.         "value": "Message sent from Amazon SES"
25.       },
26.       {
27.         "name": "MIME-Version",
28.         "value": "1.0"
29.       },
30.       {
31.         "name": "Content-Type",
32.         "value": "text/html; charset=UTF-8"
33.       },
34.       {
35.         "name": "Content-Transfer-Encoding",
36.         "value": "7bit"
37.       }
38.     ],
39.     "commonHeaders": {
40.       "from": [
41.         "sender@example.com"
42.       ],
43.       "to": [
44.         "recipient@example.com"
45.       ],
46.       "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
47.       "subject": "Message sent from Amazon SES"
48.     },
49.     "tags": {
50.       "ses:configuration-set": [
51.         "ConfigSet"
52.       ],
53.       "ses:source-ip": [
54.         "192.0.2.0"
55.       ],
56.       "ses:from-domain": [
57.         "example.com"
58.       ],
59.       "ses:caller-identity": [
60.         "ses_user"
61.       ],
62.       "ses:outgoing-ip": [
63.         "192.0.2.0"
64.       ],
65.       "myCustomTag1": [
66.         "myCustomTagValue1"
67.       ],
68.       "myCustomTag2": [
69.         "myCustomTagValue2"
70.       ]      
71.     }
72.   },
73.   "delivery": {
74.     "timestamp": "2016-10-19T23:21:04.133Z",
75.     "processingTimeMillis": 11893,
76.     "recipients": [
77.       "recipient@example.com"
78.     ],
79.     "smtpResponse": "250 2.6.0 Message received",
80.     "remoteMtaIp": "123.456.789.012",
81.     "reportingMTA": "mta.example.com"
82.   }
83. }
```

## Send 레코드
<a name="event-publishing-retrieving-firehose-send"></a>

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

```
 1. {
 2.   "eventType": "Send",
 3.   "mail": {
 4.     "timestamp": "2016-10-14T05:02:16.645Z",
 5.     "source": "sender@example.com",
 6.     "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
 7.     "sendingAccountId": "123456789012",
 8.     "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
 9.     "destination": [
10.       "recipient@example.com"
11.     ],
12.     "headersTruncated": false,
13.     "headers": [
14.       {
15.         "name": "From",
16.         "value": "sender@example.com"
17.       },
18.       {
19.         "name": "To",
20.         "value": "recipient@example.com"
21.       },
22.       {
23.         "name": "Subject",
24.         "value": "Message sent from Amazon SES"
25.       },
26.       {
27.         "name": "MIME-Version",
28.         "value": "1.0"
29.       },
30.       {
31.         "name": "Content-Type",
32.         "value": "multipart/mixed;  boundary=\"----=_Part_0_716996660.1476421336341\""
33.       },
34.       {
35.         "name": "X-SES-MESSAGE-TAGS",
36.         "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2"
37.       }
38.     ],
39.     "commonHeaders": {
40.       "from": [
41.         "sender@example.com"
42.       ],
43.       "to": [
44.         "recipient@example.com"
45.       ],
46.       "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
47.       "subject": "Message sent from Amazon SES"
48.     },
49.     "tags": {
50.       "ses:configuration-set": [
51.         "ConfigSet"
52.       ],
53.       "ses:source-ip": [
54.         "192.0.2.0"
55.       ],
56.       "ses:from-domain": [
57.         "example.com"
58.       ],      
59.       "ses:caller-identity": [
60.         "ses_user"
61.       ],
62.       "myCustomTag1": [
63.         "myCustomTagValue1"
64.       ],
65.       "myCustomTag2": [
66.         "myCustomTagValue2"
67.       ]      
68.     }
69.   },
70.   "send": {}
71. }
```

## Reject 레코드
<a name="event-publishing-retrieving-firehose-reject"></a>

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

```
 1. {
 2.   "eventType": "Reject",
 3.   "mail": {
 4.     "timestamp": "2016-10-14T17:38:15.211Z",
 5.     "source": "sender@example.com",
 6.     "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
 7.     "sendingAccountId": "123456789012",
 8.     "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
 9.     "destination": [
10.       "sender@example.com"
11.     ],
12.     "headersTruncated": false,
13.     "headers": [
14.       {
15.         "name": "From",
16.         "value": "sender@example.com"
17.       },
18.       {
19.         "name": "To",
20.         "value": "recipient@example.com"
21.       },      
22.       {
23.         "name": "Subject",
24.         "value": "Message sent from Amazon SES"
25.       },
26.       {
27.         "name": "MIME-Version",
28.         "value": "1.0"
29.       },      
30.       {
31.         "name": "Content-Type",
32.         "value": "multipart/mixed; boundary=\"qMm9M+Fa2AknHoGS\""
33.       },
34.       {
35.         "name": "X-SES-MESSAGE-TAGS",
36.         "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2"
37.       }  
38.     ],
39.     "commonHeaders": {
40.       "from": [
41.         "sender@example.com"
42.       ],
43.       "to": [
44.         "recipient@example.com"
45.       ],
46.       "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
47.       "subject": "Message sent from Amazon SES"
48.     },
49.     "tags": {
50.       "ses:configuration-set": [
51.         "ConfigSet"
52.       ],
53.       "ses:source-ip": [
54.         "192.0.2.0"
55.       ],
56.       "ses:from-domain": [
57.         "example.com"
58.       ],    
59.       "ses:caller-identity": [
60.         "ses_user"
61.       ],
62.       "myCustomTag1": [
63.         "myCustomTagValue1"
64.       ],
65.       "myCustomTag2": [
66.         "myCustomTagValue2"
67.       ]      
68.     }
69.   },
70.   "reject": {
71.     "reason": "Bad content"
72.   }
73. }
```

## Open 레코드
<a name="event-publishing-retrieving-firehose-open"></a>

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

```
 1. {
 2.   "eventType": "Open",
 3.   "mail": {
 4.     "commonHeaders": {
 5.       "from": [
 6.         "sender@example.com"
 7.       ],
 8.       "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
 9.       "subject": "Message sent from Amazon SES",
10.       "to": [
11.         "recipient@example.com"
12.       ]
13.     },
14.     "destination": [
15.       "recipient@example.com"
16.     ],
17.     "headers": [
18.       {
19.         "name": "X-SES-CONFIGURATION-SET",
20.         "value": "ConfigSet"
21.       },
22.       {
23.         "name":"X-SES-MESSAGE-TAGS",
24.         "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2"
25.       },
26.       {
27.         "name": "From",
28.         "value": "sender@example.com"
29.       },
30.       {
31.         "name": "To",
32.         "value": "recipient@example.com"
33.       },
34.       {
35.         "name": "Subject",
36.         "value": "Message sent from Amazon SES"
37.       },
38.       {
39.         "name": "MIME-Version",
40.         "value": "1.0"
41.       },
42.       {
43.         "name": "Content-Type",
44.         "value": "multipart/alternative; boundary=\"XBoundary\""
45.       }
46.     ],
47.     "headersTruncated": false,
48.     "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
49.     "sendingAccountId": "123456789012",
50.     "source": "sender@example.com",
51.     "tags": {
52.       "myCustomTag1":[
53.         "myCustomValue1"
54.       ],
55.       "myCustomTag2":[
56.         "myCustomValue2"
57.       ],
58.       "ses:caller-identity": [
59.         "IAM_user_or_role_name"
60.       ],
61.       "ses:configuration-set": [
62.         "ConfigSet"
63.       ],
64.       "ses:from-domain": [
65.         "example.com"
66.       ],
67.       "ses:source-ip": [
68.         "192.0.2.0"
69.       ]
70.     },
71.     "timestamp": "2017-08-09T21:59:49.927Z"
72.   },
73.   "open": {
74.     "ipAddress": "192.0.2.1",
75.     "timestamp": "2017-08-09T22:00:19.652Z",
76.     "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Mobile/14G60"
77.   }
78. }
```

## Click 레코드
<a name="event-publishing-retrieving-firehose-click"></a>

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

```
 1. {
 2.   "eventType": "Click",
 3.   "click": {
 4.     "ipAddress": "192.0.2.1",
 5.     "link": "http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html",
 6.     "linkTags": {
 7.       "samplekey0": [
 8.         "samplevalue0"
 9.       ],
10.       "samplekey1": [
11.         "samplevalue1"
12.       ]
13.     },
14.     "timestamp": "2017-08-09T23:51:25.570Z",
15.     "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36"
16.   },
17.   "mail": {
18.     "commonHeaders": {
19.       "from": [
20.         "sender@example.com"
21.       ],
22.       "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
23.       "subject": "Message sent from Amazon SES",
24.       "to": [
25.         "recipient@example.com"
26.       ]
27.     },
28.     "destination": [
29.       "recipient@example.com"
30.     ],
31.     "headers": [
32.       {
33.         "name": "X-SES-CONFIGURATION-SET",
34.         "value": "ConfigSet"
35.       },
36.       {
37.         "name":"X-SES-MESSAGE-TAGS",
38.         "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2"
39.       },
40.       {
41.         "name": "From",
42.         "value": "sender@example.com"
43.       },
44.       {
45.         "name": "To",
46.         "value": "recipient@example.com"
47.       },
48.       {
49.         "name": "Subject",
50.         "value": "Message sent from Amazon SES"
51.       },
52.       {
53.         "name": "MIME-Version",
54.         "value": "1.0"
55.       },
56.       {
57.         "name": "Content-Type",
58.         "value": "multipart/alternative; boundary=\"XBoundary\""
59.       },
60.       {
61.         "name": "Message-ID",
62.         "value": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000"
63.       }
64.     ],
65.     "headersTruncated": false,
66.     "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
67.     "sendingAccountId": "123456789012",
68.     "source": "sender@example.com",
69.     "tags": {
70.       "myCustomTag1":[
71.         "myCustomValue1"
72.       ],
73.       "myCustomTag2":[
74.         "myCustomValue2"
75.       ],
76.       "ses:caller-identity": [
77.         "ses_user"
78.       ],
79.       "ses:configuration-set": [
80.         "ConfigSet"
81.       ],
82.       "ses:from-domain": [
83.         "example.com"
84.       ],
85.       "ses:source-ip": [
86.         "192.0.2.0"
87.       ]
88.     },
89.     "timestamp": "2017-08-09T23:50:05.795Z"
90.   }
91. }
```

## Rendering Failure 레코드
<a name="event-publishing-retrieving-firehose-failure"></a>

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

```
 1. {
 2.   "eventType":"Rendering Failure",
 3.   "mail":{
 4.     "timestamp":"2018-01-22T18:43:06.197Z",
 5.     "source":"sender@example.com",
 6.     "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
 7.     "sendingAccountId":"123456789012",
 8.     "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
 9.     "destination":[
10.       "recipient@example.com"
11.     ],
12.     "headersTruncated":false,
13.     "tags":{
14.       "ses:configuration-set":[
15.         "ConfigSet"
16.       ]
17.     }
18.   },
19.   "failure":{
20.     "errorMessage":"Attribute 'attributeName' is not present in the rendering data.",
21.     "templateName":"MyTemplate"
22.   }
23. }
```

## DeliveryDelay 레코드
<a name="event-publishing-retrieving-firehose-delayed-delivery"></a>

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

```
 1. {
 2.   "eventType": "DeliveryDelay",
 3.   "mail":{
 4.     "timestamp":"2020-06-16T00:15:40.641Z",
 5.     "source":"sender@example.com",
 6.     "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
 7.     "sendingAccountId":"123456789012",
 8.     "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
 9.     "destination":[
10.       "recipient@example.com"
11.     ],
12.     "headersTruncated":false,
13.     "tags":{
14.       "ses:configuration-set":[
15.         "ConfigSet"
16.       ]
17.     }
18.   },
19.   "deliveryDelay": {
20.     "timestamp": "2020-06-16T00:25:40.095Z",
21.     "delayType": "TransientCommunicationFailure",
22.     "expirationTime": "2020-06-16T00:25:40.914Z",
23.     "delayedRecipients": [{
24.       "emailAddress": "recipient@example.com",
25.       "status": "4.4.1",
26.       "diagnosticCode": "smtp; 421 4.4.1 Unable to connect to remote host"
27.     }]
28.   }
29. }
```

## 구독 레코드
<a name="event-publishing-retrieving-firehose-subscription"></a>

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

```
 1. {
 2.   "eventType": "Subscription",
 3.   "mail": {
 4.     "timestamp": "2022-01-12T01:00:14.340Z",
 5.     "source": "sender@example.com",
 6.     "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
 7.     "sendingAccountId": "123456789012",
 8.     "messageId": "EXAMPLEe4bccb684-777bc8de-afa7-4970-92b0-f515137b1497-000000",
 9.     "destination": ["recipient@example.com"],
10.     "headersTruncated": false,
11.     "headers": [
12.       {
13.         "name": "From",
14.         "value": "sender@example.com"
15.       },
16.       {
17.         "name": "To",
18.         "value": "recipient@example.com"
19.       },
20.       {
21.         "name": "Subject",
22.         "value": "Message sent from Amazon SES"
23.       },
24.       {
25.         "name": "MIME-Version",
26.         "value": "1.0"
27.       },
28.       {
29.         "name": "Content-Type",
30.         "value": "text/html; charset=UTF-8"
31.       },
32.       {
33.         "name": "Content-Transfer-Encoding",
34.         "value": "7bit"
35.       }
36.     ],
37.     "commonHeaders": {
38.       "from": ["sender@example.com"],
39.       "to": ["recipient@example.com"],
40.       "messageId": "EXAMPLEe4bccb684-777bc8de-afa7-4970-92b0-f515137b1497-000000",
41.       "subject": "Message sent from Amazon SES"
42.     },
43.     "tags": {
44.       "ses:operation": ["SendEmail"],
45.       "ses:configuration-set": ["ConfigSet"],
46.       "ses:source-ip": ["192.0.2.0"],
47.       "ses:from-domain": ["example.com"],
48.       "ses:caller-identity": ["ses_user"],
49.       "myCustomTag1": ["myCustomValue1"],
50.       "myCustomTag2": ["myCustomValue2"]
51.     }
52.   },
53.   "subscription": {
54.     "contactList": "ContactListName",
55.     "timestamp": "2022-01-12T01:00:17.910Z",
56.     "source": "UnsubscribeHeader",
57.     "newTopicPreferences": {
58.       "unsubscribeAll": true,
59.       "topicSubscriptionStatus": [
60.         {
61.           "topicName": "ExampleTopicName",
62.           "subscriptionStatus": "OptOut"
63.         }
64.       ]
65.     },
66.     "oldTopicPreferences": {
67.       "unsubscribeAll": false,
68.       "topicSubscriptionStatus": [
69.         {
70.           "topicName": "ExampleTopicName",
71.           "subscriptionStatus": "OptOut"
72.         }
73.       ]
74.     }
75.   }
76. }
```