

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Opciones de las acciones
<a name="receiving-email-action"></a>

Cada regla de recepción para recibir correo electrónico de Amazon SES contiene una lista ordenada de acciones. En esta sección, se describen las opciones específicas para cada tipo de acción.

Los tipos de acción son los siguientes:
+ [Acción Add header (Agregar encabezado)](receiving-email-action-add-header.md)
+ [Acción de devolución de respuesta de rebote](receiving-email-action-bounce.md)
+ [Acción de invocación de una función de Lambda](receiving-email-action-lambda.md)
+ [Acción Entregar al bucket de S3](receiving-email-action-s3.md)
+ [Acción de publicación en un tema de Amazon SNS](receiving-email-action-sns.md)
+ [Acción de detención del conjunto de reglas](receiving-email-action-stop.md)
+ [Acción de integración con Amazon WorkMail](receiving-email-action-workmail.md)

# Acción Add header (Agregar encabezado)
<a name="receiving-email-action-add-header"></a>

La acción **Add Header** (Agregar encabezado) agrega un encabezado personalizado al email recibido. Normalmente, utilice esta acción solo en combinación con otra acción. Esta acción tiene las siguientes opciones.
+ **Header name**: nombre del encabezado que se va a agregar. Debe tener entre 1 y 50 caracteres, incluidos y consta únicamente de caracteres alfanuméricos (a-z, A-Z, 0-9) y guiones.
+ **Header value**: valor del encabezado que se va a agregar. Debe tener menos de 2 048 caracteres y no debe contener caracteres de línea nueva ("\$1r" o "\$1n").

# Acción de devolución de respuesta de rebote
<a name="receiving-email-action-bounce"></a>

La acción **Bounce** (Rebotar) rechaza el correo electrónico. Para ello, devuelve una respuesta de rebote al remitente y, opcionalmente, se lo notifica a usted a través de Amazon SNS. Esta acción tiene las siguientes opciones.
+ **SMTP Reply Code**: el código de respuesta SMTP, tal como define [RFC 5321](https://tools.ietf.org/html/rfc5321).
+ **SMTP Status Code**: el código de estado mejorado SMTP, tal como define [RFC 3463](https://tools.ietf.org/html/rfc3463).
+ **Message (Mensaje)**: texto en lenguaje natural para incluir en el email de rebote.
+ **Reply Sender**: dirección de correo electrónico del remitente del correo electrónico rebotado. Es la dirección desde la que se enviará el email de rebote. Se debe verificar con Amazon SES.
**nota**  
Los mensajes de rebote no se envían a través de tu dominio MAIL FROM personalizado, sino que SES los genera internamente y los firma únicamente con la firma `amazonses.com` DKIM. Como solución alternativa, use la opción **Remitente de respuesta** para configurar una dirección de correo electrónico para los mensajes de rebote. Consulte este [artículo de AWS re:Post](https://repost.aws/questions/QURvN-26L_SJOcY9JoSFgCdg/ses-receiving-return-bounce-response-action-not-sending-bounce) para obtener más información.
+ **SNS Topic** (Tema de SNS): nombre o ARN del tema de Amazon SNS para enviar una notificación opcional cuando se envía un email de rebote. Un ejemplo de un ARN de tema de Amazon SNS es: *arn:aws:sns:us-east-1:123456789012:MyTopic*. Para crear un tema de Amazon SNS al configurar la acción, puede elegir **Create SNS Topic** (Crear tema de SNS). Para obtener más información acerca de los temas de Amazon SNS, consulte la [Guía para desarrolladores de Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). 
**nota**  
El tema de Amazon SNS que elija deberá estar en la misma región de AWS que el punto de conexión de Amazon SES que utilice para recibir correo electrónico.

Puede introducir sus propios valores para estos campos o bien puede elegir una plantilla que rellene los campos SMTP Reply Code, SMTP Status Code y Message con valores en función del motivo del rebote. Están disponibles las siguientes plantillas:
+ **Mailbox Does Not Exist**: código de respuesta de SMTP = 550, código de estado SMTP = 5.1.1
+ **Message Too Large**: código de respuesta de SMTP = 552, código de estado SMTP = 5.3.4
+ **Message Full**: código de respuesta de SMTP = 552, código de estado SMTP = 5.2.2
+ **Message Content Rejected**: código de respuesta de SMTP = 500, código de estado SMTP = 5.6.1
+ **Unknown Failure**: código de respuesta de SMTP = 554, código de estado SMTP = 5.0.0
+ **Temporary Failure**: código de respuesta de SMTP = 450, código de estado SMTP = 4.0.0

Para obtener códigos de rebote adicionales que podría utilizar introduciendo valores personalizados en los campos, consulte [RFC 3463](https://tools.ietf.org/html/rfc3463).

# Acción de invocación de una función de Lambda
<a name="receiving-email-action-lambda"></a>

La acción de Lambda llama al código a través de una función de Lambda y, opcionalmente, se lo notifica a usted a través de Amazon SNS. Esta acción tiene las siguientes opciones y requisitos.

**Opciones**
+ **Lambda function** (Función de Lambda): ARN de la función de Lambda. *Un ejemplo del ARN de una función Lambda es arn:aws:lambda:us-east-1:account-id:function:. MyFunction*
+ **Invocation type** (Tema de invocación): tipo de invocación de la función de Lambda. Un tipo **RequestResponse**de invocación significa que la ejecución de la función produce una respuesta inmediata. Un tipo de invocación de **Event (Evento)** significa que la función se invoca de forma asíncrona. Le recomendamos que utilice el tipo de invocación **Event (Evento)** a menos que su caso de uso requiera la ejecución sincrónica.

  Se produce un desfase de 30 segundos en las invocaciones **RequestResponse**.

  Para obtener más información, consulte [Invocar funciones de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-invocation.html) en la *Guía para desarrolladores de AWS Lambda *.
+ **SNS Topic (Tema de SNS)**: nombre o ARN del tema de Amazon SNS al que se debe enviar la notificación cuando se desencadena la función de Lambda especificada. Un ejemplo de un ARN de tema de Amazon SNS es *arn:aws:sns:us-east* - 1:123456789012:. MyTopic Para obtener instrucciones, consulte el [tema Creación de un tema de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) en la *Guía para desarrolladores de Amazon Simple Notification Service*.

**Requisitos**
+ La función Lambda que elija debe estar en la misma AWS región que el punto de conexión de Amazon SES que utilice para recibir el correo electrónico.
+ El tema de Amazon SNS que elija debe estar en la misma AWS región que el punto de conexión de Amazon SES que utilice para recibir correos electrónicos.

## Escritura de la función de Lambda
<a name="receiving-email-action-lambda-function"></a>

Para procesar el correo electrónico, la función de Lambda se puede invocar de manera asíncrona (es decir, utilizando el tipo de invocación `Event`). El objeto de evento transferido a su función de Lambda contendrá metadatos pertenecientes al evento de correo electrónico de entrada. También puede utilizar los metadatos para acceder al contenido del mensaje desde su bucket de Amazon S3.

Si desea controlar realmente el flujo de correo electrónico, debe invocar la función de Lambda de forma síncrona (es decir, utilizando el tipo de invocación `RequestResponse`) y la función de Lambda debe llamar al método `callback` con dos argumentos: el primer argumento es `null` y el segundo argumento es una propiedad `disposition` que se establece en `STOP_RULE`, `STOP_RULE_SET` o `CONTINUE`. Si el segundo argumento es `null` o no tiene una propiedad `disposition` válida, el flujo de correo continúa y se procesan acciones y reglas adicionales, que es lo mismo que con `CONTINUE`.

Por ejemplo, puede detener el conjunto de reglas de recepción escribiendo la siguiente línea al final del código de la función de Lambda:

```
callback( null, { "disposition" : "STOP_RULE_SET" });
```

Para ver ejemplos AWS Lambda de códigos, consulte[Ejemplos de funciones de Lambda](receiving-email-action-lambda-example-functions.md). Para ver ejemplos de casos de uso de alto nivel, consulte [Ejemplos de casos de uso](receiving-email-action-lambda-example-use-cases.md).

### Formato de entrada
<a name="receiving-email-action-lambda-input"></a>

Amazon SES transfiere información a la función de Lambda en formato JSON. El objeto de nivel superior contiene una matriz `Records`, que se rellena con las propiedades `eventSource`, `eventVersion` y `ses`. El objeto `ses` contiene objetos `receipt` y `mail`, que tienen exactamente el mismo formato que en las notificaciones de Amazon SNS descritas en [Contenido de las notificaciones](receiving-email-notifications-contents.md).

Los datos que Amazon SES transmite a Lambda incluyen metadatos acerca del mensaje, así como varios encabezados de correo electrónico. Sin embargo, no contiene el cuerpo del mensaje.

A continuación, se ofrece una vista de alto nivel de la estructura de la entrada que Amazon SES proporciona a la función de Lambda.

```
{
   "Records": [
      {
        "eventSource": "aws:ses",
        "eventVersion": "1.0",
        "ses": {
           "receipt": {
               <same contents as SNS notification>
            },
           "mail": {
               <same contents as SNS notification>
           }
         }
     }
   ]
}
```

### Valores de retorno:
<a name="receiving-email-action-lambda-function-return-values"></a>

La función de Lambda puede controlar el flujo de correo electrónico devolviendo uno de los siguientes valores:
+ `STOP_RULE`: no se procesarán acciones adicionales en la regla de recepción actual, pero se pueden procesar reglas de recepción adicionales.
+ `STOP_RULE_SET`: no se procesarán acciones o reglas de recepción adicionales.
+ `CONTINUE` o cualquier otro valor no válido: esto significa que se pueden procesar acciones y reglas de recepción adicionales.

**Topics**
+ [Escritura de la función de Lambda](#receiving-email-action-lambda-function)
+ [Muestra de evento de correo electrónico entrante](receiving-email-action-lambda-event.md)
+ [Ejemplos de casos de uso](receiving-email-action-lambda-example-use-cases.md)
+ [Ejemplos de funciones de Lambda](receiving-email-action-lambda-example-functions.md)

# Muestra de evento de correo electrónico entrante
<a name="receiving-email-action-lambda-event"></a>

Hay dos formas de enviar eventos de correo electrónico entrante a una función de Lambda. El primer método consiste en utilizar una acción de Lambda en la regla de recepción para enviar el registro de eventos directamente a la función. El segundo método consiste en utilizar una acción de Amazon SNS en la regla de recepción para enviar los registros de eventos a Amazon SNS y, a continuación, agregar la función de Lambda como punto de enlace de suscripción al tema de Amazon SNS.

Esta sección contiene ejemplos de los registros de eventos que Amazon SES puede enviar a Lambda. Puede utilizar estos ejemplos para crear y probar funciones de Lambda.

**nota**  
Los ejemplos de esta sección incluyen saltos de línea para facilitar su lectura. Si copia los ejemplos de esta sección, debe eliminar los saltos de línea adicionales para producir objetos JSON válidos.

## Registros de eventos proporcionados por la acción de Lambda
<a name="receiving-email-action-lambda-event-lambdaaction"></a>

Al agregar una acción de Lambda a una regla de recepción, Amazon SES envía un registro de eventos a Lambda cada vez que recibe un mensaje entrante. Este evento contiene información acerca de varios de los encabezados de correo electrónico para el mensaje entrante, así como los resultados de varias pruebas que Amazon SES realiza en los mensajes entrantes. Sin embargo, omite el cuerpo del email entrante.

En el siguiente ejemplo se muestran los valores que estos registros de eventos suelen contener.

```
{
  "Records": [{
    "eventSource": "aws:ses",
    "eventVersion": "1.0",
    "ses": {
      "mail": {
        "timestamp": "2019-08-05T21:30:02.028Z",
        "source": "prvs=144d0cba7=sender@example.com",
        "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
        "destination": ["recipient@example.com"],
        "headersTruncated": false,
        "headers": [{
          "name": "Return-Path",
          "value": "<prvs=144d0cba7=sender@example.com>"
        }, {
          "name": "Received",
          "value": "from smtp.example.com [203.0.113.0]) by inbound-smtp.us-east-1.amazonaws.com 
                    with SMTP id bsvpsoklfhu7u50iur7h0kk9a2ou0r7iexample for recipient@example.com;
                    Mon, 05 Aug 2019 21:30:02 +0000 (UTC)"
        }, {
          "name": "X-SES-Spam-Verdict",
          "value": "PASS"
        }, {
          "name": "X-SES-Virus-Verdict",
          "value": "PASS"
        }, {
          "name": "Received-SPF",
          "value": "pass (spfCheck: domain of example.com designates 203.0.113.0 as permitted sender) 
                    client-ip=203.0.113.0; envelope-from=prvs=144d0cba42=sender@example.com; helo=
                    smtp.example.com;"
        }, {
          "name": "Authentication-Results",
          "value": "amazonses.com; spf=pass (spfCheck: domain of example.com designates 203.0.113.0
                    as permitted sender) client-ip=203.0.113.0; envelope-from=prvs=144d0cba42=
                    sender@example.com; helo=smtp.example.com; dkim=pass header.i=@example.com; 
                    dmarc=none header.from=example.com;"
        }, {
          "name": "X-SES-RECEIPT",
          "value": "AEFBQUFBQUFBQUFHbFo0VU81VzVuYmRDNm51nhTVWpabDh6J4V2l5cG5PSHFtNzlBeUk90example"
        }, {
          "name": "X-SES-DKIM-SIGNATURE",
          "value": "a=rsa-sha256; q=dns/txt; b=Cm1emU30VcD6example=; c=relaxed/simple; s=6gbrjpgwjs
                    5zn6fwqknexample; d=amazonses.com; t=1567719002; v=1; bh=DSofsjAoUvyZj6YsBDP5en
                    pRO1otGb7Nes0Qexample=; h=From:To:Cc:Bcc:Subject:Date:Message-ID:MIME-Version:
                    Content-Type:X-SES-RECEIPT;"
        }, {
          "name": "DKIM-Signature",
          "value": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; i=@example.com; q=dns/txt; 
                    s=example12345; t=1567719001; x=1599255001; h=from:to:subject:date:message-id:
                    references:in-reply-to:mime-version; bh=sjAoUvyZj6YsBDP5enpRO1otGb7s0Qexample=; 
                    b=EQw2D4RLOW2IHE9OgfEA4WXp+AENJtaD2+63wmd5J+d+t/xoaiKUGClOS7WhpyOmlipryOz+iOhxU
                    v350xJIHjLTi9Jsnlw76mRK8o4770TaUz620joCVN21n4cxsrRZpv+1kS0EcAxaF30pmwlni+XT4ems
                    Vxn7zO0I8example=;"
        }, {
          "name": "Received",
          "value": "from mail.example.com (mail.example.com [203.0.113.0]) by email-inbound-relay-
                    1d-9ec21598.us-east-1.example.com (Postfix) with ESMTPS id 57F83A2042 for 
                    <recipient@example.com>; Mon, 5 Aug 2019 21:29:58 +0000 (UTC)"
        }, {
          "name": "From",
          "value": "\"Doe, John\" <sender@example.com>"
        }, {
          "name": "To",
          "value": "\"recipient@example.com\" <recipient@example.com>"
        }, {
          "name": "Subject",
          "value": "This is a test"
        }, {
          "name": "Thread-Topic",
          "value": "This is a test"
        }, {
          "name": "Thread-Index",
          "value": "AQHVZDAaQ58yKI8q7kaAjkhC5stGexample"
        }, {
          "name": "Date",
          "value": "Mon, 5 Aug 2019 21:29:57 +0000"
        }, {
          "name": "Message-ID",
          "value": "<F8098FDD-49A3-442D-9935-F6112example@example.com>"
        }, {
          "name": "References",
          "value": "<1FCED16B-F6B0-4506-A6F0-594DFexample@example.com>"
        }, {
          "name": "In-Reply-To",
          "value": "<1FCED16B-F6B0-4506-A6F0-594DFexample@example.com>"
        }, {
          "name": "Accept-Language",
          "value": "en-US"
        }, {
          "name": "Content-Language",
          "value": "en-US"
        }, {
          "name": "X-MS-Has-Attach",
          "value": ""
        }, {
          "name": "X-MS-TNEF-Correlator",
          "value": ""
        }, {
          "name": "x-ms-exchange-messagesentrepresentingtype",
          "value": "1"
        }, {
          "name": "x-ms-exchange-transport-fromentityheader",
          "value": "Hosted"
        }, {
          "name": "x-originating-ip",
          "value": "[203.0.113.0]"
        }, {
          "name": "Content-Type",
          "value": "multipart/alternative; boundary=\"_000_F8098FDD49A344F6112B195BDAexamplecom_\""
        }, {
          "name": "MIME-Version",
          "value": "1.0"
        }, {
          "name": "Precedence",
          "value": "Bulk"
        }],
        "commonHeaders": {
          "returnPath": "prvs=144d0cba7=sender@example.com",
          "from": ["\"Doe, John\" <sender@example.com>"],
          "date": "Mon, 5 Aug 2019 21:29:57 +0000",
          "to": ["\"recipient@example.com\" <recipient@example.com>"],
          "messageId": "<F8098FDD-49A3-442D-9935-F6112B195BDA@example.com>",
          "subject": "This is a test"
        }
      },
      "receipt": {
        "timestamp": "2019-08-05T21:30:02.028Z",
        "processingTimeMillis": 1205,
        "recipients": ["recipient@example.com"],
        "spamVerdict": {
          "status": "PASS"
        },
        "virusVerdict": {
          "status": "PASS"
        },
        "spfVerdict": {
          "status": "PASS"
        },
        "dkimVerdict": {
          "status": "PASS"
        },
        "dmarcVerdict": {
          "status": "GRAY"
        },
        "action": {
          "type": "Lambda",
          "functionArn": "arn:aws:lambda:us-east-1:123456789012:function:IncomingEmail",
          "invocationType": "Event"
        }
      }
    }
  }]
}
```

## Registros de eventos proporcionados por la acción de Amazon SNS
<a name="receiving-email-action-lambda-event-snsaction"></a>

Al agregar una acción de Amazon SNS a la regla de recepción, la notificación contiene todo el contenido del correo electrónico. Si desea que una función de Lambda procese el cuerpo del correo electrónico, debe agregar una acción de Amazon SNS a la regla de recepción y, a continuación, en Amazon SNS, suscribir la función de Lambda a la función de Amazon SNS. Esta configuración hace que la función de Lambda se active cuando recibe una notificación del tema de Amazon SNS.

```
{
    'Records': [
        {
            'EventSource': 'aws:sns',
            'EventVersion': '1.0',
            'EventSubscriptionArn': 'arn:aws:sns:us-east-1:123456789012:IncomingEmail:12345678',
            'Sns': {
                'Type': 'Notification',
                'MessageId': 'EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000',
                'TopicArn': 'arn:aws:sns:us-east-1:123456789012:IncomingEmail',
                'Subject': 'Amazon SES Email Receipt Notification',
                'Message': <message content—see below>,
                'Timestamp': '2019-09-06T18:52:16.076Z',
                'SignatureVersion': '1',
                'Signature': '012345678901example==',
                'SigningCertUrl': 'https://sns.us-east-1.amazonaws.com/SimpleNotificationService
                                   -01234567890123456789012345678901.pem',
                'UnsubscribeUrl': 'https://sns.us-east-1.amazonaws.com/?Action=Unsubscribe&
                                   SubscriptionArn=arn:aws:sns:us-east-1:0123456789012:IncomingEmail:
                                   0b863538-3f32-462e-9c89-8d8e0example',
                'MessageAttributes': {}
            }
        }
    ]
}
```

El atributo `Message` contiene una cadena codificada en JSON. Esta cadena contiene los encabezados y el contenido del mensaje. El cuerpo del mensaje en sí está codificado en base64. Si desea usar el cuerpo del mensaje en su función de Lambda, primero tiene que decodificar el atributo `Message` y luego decodificar el objeto `Content`.

En el siguiente ejemplo se muestran los valores contenidos en el atributo `Message`.

```
{
  "notificationType": "Received",
  "mail": {
    "timestamp": "2019-09-06T18:52:14.965Z",
    "source": "0100016d07eb7477-8e1938ce-475e-4e4b-89cb-example-000000@amazonses.com",
    "messageId": "12345678901example",
    "destination": ["recipient@example.com"],
    "headersTruncated": false,
    "headers": [{
      "name": "Return-Path",
      "value": "<0100016d07eb7477-8e1938ce-475e-4e4b-89cb-example-000000@amazonses.com>"
    }, {
      "name": "Received",
      "value": "from a1-23.smtp-out.amazonses.com (a1-23.smtp-out.amazonses.com [203.0.113.0]) by
                inbound-smtp.us-east-1.amazonaws.com with SMTP id
                12345678901example for recipient@example.com; Fri, 06 Sep 2019
                18:52:14 +0000 (UTC)"
    }, {
      "name": "X-SES-Spam-Verdict",
      "value": "PASS"
    }, {
      "name": "X-SES-Virus-Verdict",
      "value": "PASS"
    }, {
      "name": "Received-SPF",
      "value": "pass (spfCheck: domain of amazonses.com designates 203.0.113.0 as permitted sender)
                client-ip=203.0.113.0; envelope-from=0100016d07eb7477-8e1938ce-475e-4e4b-89cb-example
                -000000@amazonses.com; helo=a1-23.smtp-out.amazonses.com;"
    }, {
      "name": "Authentication-Results",
      "value": "amazonses.com; spf=pass (spfCheck: domain of amazonses.com designates 203.0.113.0
                as permitted sender) client-ip=203.0.113.0; envelope-from=0100016d07eb7477-8e1938ce
                -475e-4e4b-89cb-example-000000@amazonses.com; helo=a1-23.smtp-out.amazonses.com;
                dkim=pass header.i=@amazonses.com; dmarc=none header.from=example.com;"
    }, {
      "name": "X-SES-RECEIPT",
      "value": "AEFBQUFBQUFBQUFFQkx0QUJZZENEXAMPLE="
    }, {
      "name": "X-SES-DKIM-SIGNATURE",
      "value": "a=rsa-sha256; q=dns/txt; b=d5azwgA2iBqAjA4NBm1ARzjJ95raRmy4G84iVdd3x2JzSHeUnQuTuLmJ
                AqRrYY3WpMIVRFy01hITaguCVjUPWBR0xF6fCEXH85cf3RNeFQyLfWZqoXKfBdjFRV+13troDterH2MxBUL
                8rjzcvdHetl0ImwlaK2PGmePTexample=; c=relaxed/simple; s=EXAMPLE7c191be45-e9aedb9a-02
                f9-4d12-a87d-dd0099a07f8a-000000; d=amazonses.com; t=1567795935; v=1; bh=CZ1SghsYaA
                6SSCbitzsLISeFoNlpdtH1Pyiexample=; h=From:To:Cc:Bcc:Subject:Date:Message-ID:MIME-
                Version:Content-Type:X-SES-RECEIPT;"
    }, {
      "name": "DKIM-Signature",
      "value": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=EXAMPLE7c191be45-e9aedb9a-02f9-
                4d12-a87d-dd0099a07f8a-000000; d=amazonses.com; t=1567795934; h=From:To:Subject:
                MIME-Version:Content-Type:Message-ID:Date:Feedback-ID; bh=CZ1SghsYaA6SSCbitzsLISeFo
                NlpdtH1Pyiexample=; b=L6VXqR1PSN/FYqJI/VAfPRKFgtakcHCYJvuJqVYbuJT8I3FOhqOvkbcgHxOgs
                woxPfvGrL6S53H8Er5Do/CPvOM4Tx3ilE+a0GTYVLjKmwltNeN09YWlJAoqG5KMQPZUxRYaNvYPInLzUdGi
                rdjkbSIgZEnrvq5MzaMWexample="
    }, {
      "name": "From",
      "value": "sender@example.com"
    }, {
      "name": "To",
      "value": "recipient@example.com"
    }, {
      "name": "Subject",
      "value": "Amazon SES Test"
    }, {
      "name": "MIME-Version",
      "value": "1.0"
    }, {
      "name": "Content-Type",
      "value": "multipart/alternative;  boundary=\"----=_Part_869787_396523212.15677example\""
    }, {
      "name": "Message-ID",
      "value": "<0100016d07eb7477-8e1938ce-475e-4e4b-89cb-example-000000@email.amazonses.com>"
    }, {
      "name": "Date",
      "value": "Fri, 6 Sep 2019 18:52:14 +0000"
    }, {
      "name": "X-SES-Outgoing",
      "value": "2019.09.06-203.0.113.0"
    }, {
      "name": "Feedback-ID",
      "value": "1.us-east-1.ZitRoTk0xziun8WEJevt+cSJ17QNuCwulg2D2v3nrT0=:AmazonSES"
    }],
    "commonHeaders": {
      "returnPath": "0100016d07eb7477-8e1938ce-475e-4e4b-89cb-example-000000@amazonses.com",
      "from": ["sender@example.com"],
      "date": "Fri, 6 Sep 2019 18:52:14 +0000",
      "to": ["recipient@example.com"],
      "messageId": "<0100016d07eb7477-8e1938ce-475e-4e4b-89cb-example-000000@email.amazonses.com>",
      "subject": "Amazon SES Test"
    }
  },
  "receipt": {
    "timestamp": "2019-09-06T18:52:14.965Z",
    "processingTimeMillis": 1098,
    "recipients": ["recipient@example.com"],
    "spamVerdict": {
      "status": "PASS"
    },
    "virusVerdict": {
      "status": "PASS"
    },
    "spfVerdict": {
      "status": "PASS"
    },
    "dkimVerdict": {
      "status": "GRAY"
    },
    "dmarcVerdict": {
      "status": "GRAY"
    },
    "action": {
      "type": "SNS",
      "topicArn": "arn:aws:sns:us-east-1:123456789012:IncomingEmail",
      "encoding": "BASE64"
    }
  },
  "content": "UmV0dXJuLVBhdGg6IDwwMTAwMDE2ZDA3ZWI3NDc3LThlMTkzOGNlLTQ3NWUtNGU0Yi04OWNiLWV4YW1wbGUtM
              DAwMDAwQGFtYXpvbnNlcy5jb20+ClJlY2VpdmVkOiBmcm9tIGExLTIzLnNtdHAtb3V0LmFtYXpvbnNlcy5jb2
              0gKGExLTIzLnNtdHAtb3V0LmFtYXpvbnNlcy5jb20gWzIwMy4wLjExMy4wXSkKIGJ5IGluYm91bmQtc210cC5
              1cy1lYXN0LTEuYW1hem9uYXdzLmNvbSB3aXRoIFNNVFAgaWQgZW5xMTBpYW1lMXFjdTMxamg1ZGEyZ244OWlt
              dm90Mms2ZXhhbXBsZQogZm9yIHJlY2lwaWVudEBleGFtcGxlLmNvbTsKIEZyaSwgMDYgU2VwIDIwMTkgMTg6N
              TI6MTQgKzAwMDAgKFVUQykKWC1TRVMtU3BhbS1WZXJkaWN0OiBQQVNTClgtU0VTLVZpcnVzLVZlcmRpY3Q6IF
              BBU1MKUmVjZWl2ZWQtU1BGOiBwYXNzIChzcGZDaGVjazogZG9tYWluIG9mIGFtYXpvbnNlcy5jb20gZGVzaWd
              uYXRlcyAyMDMuMC4xMTMuMCBhcyBwZXJtaXR0ZWQgc2VuZGVyKSBjbGllbnQtaXA9MjAzLjAuMTEzLjA7IGVu
              dmVsb3BlLWZyb209MDEwMDAxNmQwN2ViNzQ3Ny04ZTE5MzhjZS00NzVlLTRlNGItODljYi1leGFtcGxlLTAwM
              DAwMEBhbWF6b25zZXMuY29tOyBoZWxvPWExLTIzLnNtdHAtb3V0LmFtYXpvbnNlcy5jb207CkF1dGhlbnRpY2
              F0aW9uLVJlc3VsdHM6IGFtYXpvbnNlcy5jb207CiBzcGY9cGFzcyAoc3BmQ2hlY2s6IGRvbWFpbiBvZiBhbWF
              6b25zZXMuY29tIGRlc2lnbmF0ZXMgMjAzLjAuMTEzLjAgYXMgcGVybWl0dGVkIHNlbmRlcikgY2xpZW50LWlw
              PTIwMy4wLjExMy4wOyBlbnZlbG9wZS1mcm9tPTAxMDAwMTZkMDdlYjc0NzctOGUxOTM4Y2UtNDc1ZS00ZTRiL
              Tg5Y2ItZXhhbXBsZS0wMDAwMDBAYW1hem9uc2VzLmNvbTsgaGVsbz1hMS0yMy5zbXRwLW91dC5hbWF6b25zZX
              MuY29tOwogZGtpbT1wYXNzIGhlYWRlci5pPUBhbWF6b25zZXMuY29tOwogZG1hcmM9bm9uZSBoZWFkZXIuZnJ
              vbT1leGFtcGxlLmNvbTsKWC1TRVMtUkVDRUlQVDogQUVGQlFVRkJRVUZCUVVGRlFreDBRVUpaWkVORVhBTVBM
              RT0KWC1TRVMtREtJTS1TSUdOQVRVUkU6IGE9cnNhLXNoYTI1NjsgcT1kbnMvdHh0OyBiPWQ1YXp3Z0EyaUJxQ
              WpBNE5CbTFBUnpqSjk1cmFSbXk0Rzg0aVZkZDN4Mkp6U0hlVW5RdVR1TG1KQXFScllZM1dwTUlWUkZ5MDFoSV
              RhZ3VDVmpVUFdCUjB4RjZmQ0VYSDg1Y2YzUk5lRlF5TGZXWnFvWEtmQmRqRlJWKzEzdHJvRHRlckgyTXhCVUw
              4cmp6Y3ZkSGV0bDBJbXdsYUsyUEdtZVBUZXhhbXBsZT07IGM9cmVsYXhlZC9zaW1wbGU7IHM9RVhBTVBMRTdj
              MTkxYmU0NS1lOWFlZGI5YS0wMmY5LTRkMTItYTg3ZC1kZDAwOTlhMDdmOGEtMDAwMDAwOyBkPWFtYXpvbnNlc
              y5jb207IHQ9MTU2Nzc5NTkzNTsgdj0xOyBiaD1DWjFTZ2hzWWFBNlNTQ2JpdHpzTElTZUZvTmxwZHRIMVB5aW
              V4YW1wbGU9OyBoPUZyb206VG86Q2M6QmNjOlN1YmplY3Q6RGF0ZTpNZXNzYWdlLUlEOk1JTUUtVmVyc2lvbjp
              Db250ZW50LVR5cGU6WC1TRVMtUkVDRUlQVDsKREtJTS1TaWduYXR1cmU6IHY9MTsgYT1yc2Etc2hhMjU2OyBx
              PWRucy90eHQ7IGM9cmVsYXhlZC9zaW1wbGU7CglzPUVYQU1QTEU3YzE5MWJlNDUtZTlhZWRiOWEtMDJmOS00Z
              DEyLWE4N2QtZGQwMDk5YTA3ZjhhLTAwMDAwMDsgZD1hbWF6b25zZXMuY29tOyB0PTE1Njc3OTU5MzQ7CgloPU
              Zyb206VG86U3ViamVjdDpNSU1FLVZlcnNpb246Q29udGVudC1UeXBlOk1lc3NhZ2UtSUQ6RGF0ZTpGZWVkYmF
              jay1JRDsKCWJoPUNaMVNnaHNZYUE2U1NDYml0enNMSVNlRm9ObHBkdEgxUHlpTWV4YW1wbGU9OwoJYj1leGFt
              cGxlPQpGcm9tOiBzZW5kZXJAZXhhbXBsZS5jb20KVG86IHJlY2lwaWVudEBleGFtcGxlLmNvbQpTdWJqZWN0O
              iBBbWF6b24gU0VTIFRlc3QKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvYWx0ZX
              JuYXRpdmU7IAoJYm91bmRhcnk9Ii0tLS09X1BhcnRfODY5Nzg3XzM5NjUyMzIxMi4xNTY3N2V4YW1wbGUiCk1
              lc3NhZ2UtSUQ6IDwwMTAwMDE2ZDA3ZWI3NDc3LThlMTkzOGNlLTQ3NWUtNGU0Yi04OWNiLWV4YW1wbGUtMDAw
              MDAwQGVtYWlsLmFtYXpvbnNlcy5jb20+CkRhdGU6IEZyaSwgNiBTZXAgMjAxOSAxODo1MjoxNCArMDAwMApYL
              VNFUy1PdXRnb2luZzogMjAxOS4wOS4wNi0yMDMuMC4xMTMuMApGZWVkYmFjay1JRDogMS51cy1lYXN0LTEuWm
              l0Um9UazB4eml1bjhXRUpldnQrZXhhbXBsZT06QW1hem9uU0VTCgotLS0tLS09X1BhcnRfODY5Nzg3XzM5NjU
              yMzIxMi4xNTY3N2V4YW1wbGUKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CkNvbnRl
              bnQtVHJhbnNmZXItRW5jb2Rpbmc6IDdiaXQKCkFtYXpvbiBTRVMgVGVzdApUaGlzIGVtYWlsIHdhcyBzZW50I
              HdpdGggQW1hem9uIFNFUy4KLS0tLS0tPV9QYXJ0Xzg2OTc4N18zOTY1MjMyMTIuMTU2NzdleGFtcGxlCkNvbn
              RlbnQtVHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PVVURi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDd
              iaXQKCjxodG1sPgo8aGVhZD48L2hlYWQ+Cjxib2R5PgogIDxoMT5BbWF6b24gU0VTIFRlc3Q8L2gxPgogIDxw
              PlRoaXMgZW1haWwgd2FzIHNlbnQgd2l0aCBBbWF6b24gU0VTLjwvcD4KPGltZyBhbHQ9IiIgc3JjPSJodHRwO
              i8vZXhhbXBsZS5yLnVzLWVhc3QtMS5hd3N0cmFjay5tZS9JMC8wMTAwMDE2ZDA3ZWI3NDc3LThlMTkzOGNlLT
              Q3NWUtNGU0Yi04OWNiLWV4YW1wbGUtMDAwMDAwL3UtWUphaHRkTTJTclhZQ2QiIHN0eWxlPSJkaXNwbGF5OiB
              ub25lOyB3aWR0aDogMXB4OyBoZWlnaHQ6IDFweDsiPgo8L2JvZHk+CjwvaHRtbD4KICAgICAgICAgICAgCi0t
              LS0tLT1fUGFydF84Njk3ODdfMzk2NTIzMjEyLjE1Njc3ZXhhbXBsZS0tCg=="
}
```

# Ejemplos de casos de uso
<a name="receiving-email-action-lambda-example-use-cases"></a>

Los siguientes ejemplos describen algunas reglas que podría configurar para utilizar los resultados de la función de Lambda para controlar el flujo de correo electrónico. Para fines de demostración, muchos de estos ejemplos utilizan la acción de S3 como resultado.

## Caso de uso 1: Rechazar spam en todos los dominios
<a name="receiving-email-action-lambda-example-use-cases-1"></a>

Este ejemplo muestra una regla global que rechaza spam en todos sus dominios. Las reglas 2 y 3 se incluyen para mostrar que puede aplicar reglas específicas de dominio después de rechazar el spam en todos los dominios.

### Regla 1
<a name="receiving-email-action-lambda-example-use-cases-1-rule-1"></a>

*Lista de destinatarios: *vacía. Esta regla, por tanto, se aplicará a todos los destinatarios en todos los dominios verificados.

 *Acciones* 

1. Acción Lambda (síncrona) que devuelve `STOP_RULE_SET` si el email es spam. De lo contrario, devuelve `CONTINUE`. Consulte el ejemplo de la función de Lambda para rechazar spam en [Ejemplos de funciones de Lambda](receiving-email-action-lambda-example-functions.md).

### Regla 2
<a name="receiving-email-action-lambda-example-use-cases-1-rule-2"></a>

*Lista de destinatarios: *example1.com

 *Acciones* 

1. Cualquier acción.

### Regla 3
<a name="receiving-email-action-lambda-example-use-cases-1-rule-3"></a>

*Lista de destinatarios: *example2.com

 *Acciones* 

1. Cualquier acción.

## Caso de uso 2: Rebotar spam en todos los dominios
<a name="receiving-email-action-lambda-example-use-cases-2"></a>

Este ejemplo muestra una regla global que rebota spam en todos sus dominios. Las reglas 2 y 3 se incluyen para mostrar que puede aplicar reglas específicas de dominio después de rebotar el spam en todos los dominios.

### Regla 1
<a name="receiving-email-action-lambda-example-use-cases-2-rule-1"></a>

*Lista de destinatarios: *vacía. Esta regla, por tanto, se aplicará a todos los destinatarios en todos los dominios verificados.

 *Acciones* 

1. Acción Lambda (síncrona) que devuelve `CONTINUE` si el email es spam. De lo contrario, devuelve `STOP_RULE`.

1. Acción de rebote ("500 5.6.1. Message content rejected").

1. Acción Stop.

### Regla 2
<a name="receiving-email-action-lambda-example-use-cases-2-rule-2"></a>

*Lista de destinatarios: *example1.com

 *Acciones* 

1. Cualquier acción

### Regla 3
<a name="receiving-email-action-lambda-example-use-cases-2-rule-3"></a>

*Lista de destinatarios: *example2.com

 *Acciones* 

1. Cualquier acción

## Caso de uso 3: Aplicar la regla más específica
<a name="receiving-email-action-lambda-example-use-cases-3"></a>

Este ejemplo ilustra cómo puede utilizar la acción Stop (Detener) para impedir que varias reglas procesen los emails. En este ejemplo, dispone de una regla para una dirección específica y de otra para todas las direcciones de email del dominio. Al utilizar la acción Stop (Detener), los mensajes que coinciden con la regla de la dirección de emails específica no se procesan con la regla más genérica que se aplica al dominio.

### Regla 1
<a name="receiving-email-action-lambda-example-use-cases-3-rule-1"></a>

*Lista de destinatarios: *user@example.com

 *Acciones* 

1. Acción Lambda (asíncrona)

1. Acción Stop.

### Regla 2
<a name="receiving-email-action-lambda-example-use-cases-3-rule-2"></a>

*Lista de destinatarios: *example.com

 *Acciones* 

1. Cualquier acción.

## Caso de uso 4: Registrar eventos de correo en CloudWatch
<a name="receiving-email-action-lambda-example-use-cases-4"></a>

Este ejemplo muestra cómo mantener un registro de auditoría de todo el correo que pasa por el sistema antes de guardar el correo en Amazon SES.

### Regla 1
<a name="receiving-email-action-lambda-example-use-cases-4-rule-1"></a>

*Lista de destinatarios: *example.com

 *Acciones* 

1. Acción lambda (asincrónica) que escribe el objeto de evento en un registro. CloudWatch El ejemplo de funciones Lambda en [Ejemplos de funciones de Lambda](receiving-email-action-lambda-example-functions.md) log to. CloudWatch

1. Acción S3.

## Caso de uso 5: Rechazar correo que no supera DKIM
<a name="receiving-email-action-lambda-example-use-cases-5"></a>

Este ejemplo muestra cómo puede guardar todo el correo electrónico entrante en un bucket de Amazon S3, pero solo enviar correo electrónico que vaya a una dirección de correo electrónico específica y supere DKIM, a su aplicación de correo electrónico automatizada.

### Regla 1
<a name="receiving-email-action-lambda-example-use-cases-5-rule-1"></a>

*Lista de destinatarios: *example.com

 *Acciones* 

1. Acción S3.

1. Acción Lambda (síncrona) que devuelve `STOP_RULE_SET` si el mensaje no supera DKIM. De lo contrario, devuelve `CONTINUE`.

### Regla 2
<a name="receiving-email-action-lambda-example-use-cases-5-rule-2"></a>

*Lista de destinatarios: *support@example.com

 *Acciones* 

1. Acción Lambda (asíncrona) que activa la aplicación automatizada.

## Caso de uso 6: Filtrar correo en función de la línea de asunto
<a name="receiving-email-action-lambda-example-use-cases-6"></a>

Este ejemplo ilustra cómo puede rechazar todo el email entrante de un dominio que contenga la palabra "descuento" en la línea de asunto y, a continuación, procesar los emails destinados a un sistema automatizado de forma unidireccional y procesar todo el email dirigido a todos los demás destinatarios del dominio de una forma diferente.

### Regla 1
<a name="receiving-email-action-lambda-example-use-cases-6-rule-1"></a>

*Lista de destinatarios: *example.com

 *Acciones* 

1. Acción Lambda (síncrona) que devuelve `STOP_RULE_SET` si la línea de asunto contiene la palabra "descuento". De lo contrario, devuelve `CONTINUE`.

### Regla 2
<a name="receiving-email-action-lambda-example-use-cases-6-rule-2"></a>

*Lista de destinatarios: *support@example.com

 *Acciones* 

1. Acción S3 con bucket 1.

1. Acción Lambda (asíncrona) que activa la aplicación automatizada.

1. Acción Stop.

### Regla 3
<a name="receiving-email-action-lambda-example-use-cases-6-rule-3"></a>

*Lista de destinatarios: *example.com

 *Acciones* 

1. Acción S3 con bucket 2.

1. Acción Lambda (asíncrona) que procesa el email para el resto del dominio.

# Ejemplos de funciones de Lambda
<a name="receiving-email-action-lambda-example-functions"></a>

Este tema contiene ejemplos de funciones de Lambda que controlan el flujo de correo.

## Ejemplo 1: Rechazar spam
<a name="receiving-email-action-lambda-example-functions-1"></a>

Este ejemplo detiene el procesamiento de mensajes que tienen al menos un indicador de spam.

```
export const handler = async (event, context, callback) => {
    console.log('Spam filter');
    
    const sesNotification = event.Records[0].ses;
    console.log("SES Notification:\n", JSON.stringify(sesNotification, null, 2));
    
    // Check if any spam check failed
    if (sesNotification.receipt.spfVerdict.status === 'FAIL'
            || sesNotification.receipt.dkimVerdict.status === 'FAIL'
            || sesNotification.receipt.spamVerdict.status === 'FAIL'
            || sesNotification.receipt.virusVerdict.status === 'FAIL') {
                
        console.log('Dropping spam');

        // Stop processing rule set, dropping message
        callback(null, {'disposition':'STOP_RULE_SET'});
    } else {
        callback(null, {'disposition':'CONTINUE'});   
    }
};
```

## Ejemplo 2: Continuar si se encuentra un encabezado en particular
<a name="receiving-email-action-lambda-example-functions-2"></a>

Este ejemplo continúa el procesamiento de la regla actual únicamente si el email contiene un valor de encabezado específico.

```
export const handler = async (event, context, callback) => {
    console.log('Header matcher');
 
    const sesNotification = event.Records[0].ses;
    console.log("SES Notification:\n", JSON.stringify(sesNotification, null, 2));
    
    // Iterate over the headers
    for (let index in sesNotification.mail.headers) {
        const header = sesNotification.mail.headers[index];
        
        // Examine the header values
        if (header.name === 'X-Header' && header.value === 'X-Value') {
            console.log('Found header with value.');
            callback(null, {'disposition':'CONTINUE'});
            return;
        }
    }
    
    // Stop processing the rule if the header value wasn't found
    callback(null, {'disposition':'STOP_RULE'});
};
```

## Ejemplo 3: Recuperar correo electrónico de Amazon S3
<a name="receiving-email-action-lambda-example-functions-3"></a>

Este ejemplo obtiene el correo electrónico sin procesar de Amazon S3 y lo procesa.

**nota**  
En primer lugar, debe escribir el correo electrónico en Amazon S3 con una acción de S3.
Asegúrese de que la función de Lambda tenga permisos de IAM para recuperar objetos del bucket de S3; consulte este [artículo de AWS re:Post](https://repost.aws/knowledge-center/lambda-execution-role-s3-bucket) para obtener más información.
Es posible que los tiempos de espera de ejecución predeterminados de Lambda sean demasiado cortos para su flujo de trabajo; considere aumentarlos. 

```
import { S3Client, GetObjectCommand } from "@aws-sdk/client-s3"; 
const bucketName = '<Your Bucket Name>';

export const handler = async (event, context, callback) => {
    const client = new S3Client();
    console.log('Process email');
  
    var sesNotification = event.Records[0].ses;
    console.log("SES Notification:\n", JSON.stringify(sesNotification, null, 2));
    console.log("MessageId: " + sesNotification.mail.messageId)
  
    const getObjectCommand = new GetObjectCommand({
        Bucket: bucketName,
        Key: sesNotification.mail.messageId
    });
  
    try {
        const response = await client.send(getObjectCommand);
        const receivedMail = await response.Body.transformToString();
        console.log(receivedMail);
        callback(null, {'disposition':'CONTINUE'})
    } catch (e) {
        // Perform error handling here
        console.log("Encountered S3 client error: "+ e, e.stack);
        callback(null, {'disposition':'STOP_RULE_SET'})
    }
};
```

## Ejemplo 4: Rebotar los mensajes que no superan la autenticación DMARC
<a name="receiving-email-action-lambda-example-functions-4"></a>

Este ejemplo envía un mensaje de rebote si un email entrante no supera la autenticación DMARC.

**nota**  
Cuando utilice este ejemplo, defina el valor de la variable de entorno `emailDomain` en su dominio de recepción de emails.
Asegúrese de que la función de Lambda tenga los permisos `ses:SendBounce` para la identidad de SES que envía los mensajes de rebote.

```
import { SESClient, SendBounceCommand } from "@aws-sdk/client-ses";
const sesClient = new SESClient();
// Assign the emailDomain environment variable to a constant.
const emailDomain = process.env.emailDomain;

export const handler = async (event, context, callback) => {
    console.log('Spam filter starting');

    const sesNotification = event.Records[0].ses;
    const messageId = sesNotification.mail.messageId;
    const receipt = sesNotification.receipt;

    console.log('Processing message:', messageId);

    // If DMARC verdict is FAIL and the sending domain's policy is REJECT
    // (p=reject), bounce the email.
    if (receipt.dmarcVerdict.status === 'FAIL' 
        && receipt.dmarcPolicy.status === 'REJECT') {
        // The values that make up the body of the bounce message.
        const sendBounceParams = {
            BounceSender: `mailer-daemon@${emailDomain}`,
            OriginalMessageId: messageId,
            MessageDsn: {
                ReportingMta: `dns; ${emailDomain}`,
                ArrivalDate: new Date(),
                ExtensionFields: [],
            },
            // Include custom text explaining why the email was bounced.
            Explanation: "Unauthenticated email is not accepted due to the sending domain's DMARC policy.",
            BouncedRecipientInfoList: receipt.recipients.map((recipient) => ({
                Recipient: recipient,
                // Bounce with 550 5.6.1 Message content rejected
                BounceType: 'ContentRejected',
            })),
        };

        console.log('Bouncing message with parameters:');
        console.log(JSON.stringify(sendBounceParams, null, 2));
        
        const sendBounceCommand = new SendBounceCommand(sendBounceParams);
        
        // Try to send the bounce. 
        try {
          const response = await sesClient.send(sendBounceCommand);
          console.log(response);
          console.log(`Bounce for message ${messageId} sent, bounce message ID: ${response.MessageId}`);
          // Stop processing additional receipt rules in the rule set.
          callback(null, {disposition: 'STOP_RULE_SET'});
        } catch (e) {
          // If something goes wrong, log the issue.
          console.log(`An error occurred while sending bounce for message: ${messageId}`, e);
          // Perform any additional error handling here
          callback(e)
        }
        
    // If the DMARC verdict is anything else (PASS, QUARANTINE or GRAY), accept
    // the message and process remaining receipt rules in the rule set.
    } else {
        console.log('Accepting message:', messageId);
        callback(null, {disposition: 'CONTINUE'});
    }
};
```

# Acción Entregar al bucket de S3
<a name="receiving-email-action-s3"></a>

La acción **Entregar al bucket de S3** entrega el correo a un bucket de S3 y, opcionalmente, se lo notifica a través de SNS, entre otros. Esta acción tiene las siguientes opciones.
+ **Bucket de S3**: el nombre del bucket de S3 en el que guardar los correos electrónicos recibidos. También puede crear un nuevo bucket de S3 cuando configure la acción; para ello, elija **Crear bucket de S3**. Amazon SES proporciona el correo electrónico sin procesar y sin modificar que normalmente está en formato Multipurpose Internet Mail Extensions (MIME). Para obtener más información acerca del formato MIME, consulte [RFC 2045](https://tools.ietf.org/html/rfc2045).
**importante**  
El bucket de Amazon S3 debe existir en una región en la que [Recepción de correo electrónico](regions.md#region-receive-email) de SES esté disponible; de lo contrario, debe usar la opción de rol de IAM que se explica a continuación.
Cuando se guardan los correos electrónicos en un bucket de S3, el tamaño máximo predeterminado del correo electrónico (incluidos los encabezados) es de 40 MB.
SES no admite reglas de recepción que se carguen en los buckets de S3 habilitados con el bloqueo de objetos y configurados con un periodo de retención predeterminado.
Si aplica el cifrado en su bucket de S3 mediante la especificación de su propia clave de KMS, asegúrese de utilizar el ARN completo de la clave de KMS, y no el alias de la clave. El uso del alias puede hacer que los datos se cifren con una clave de KMS que pertenece al solicitante, y no al administrador del bucket. Consulte [Uso del cifrado con operaciones entre cuentas](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html#bucket-encryption-update-bucket-policy).
+ **Prefijo de clave de objeto**: un prefijo opcional de nombre de clave para utilizarlo dentro del bucket de S3. Los prefijos de nombre de clave le permiten organizar su bucket de S3 en una estructura de carpetas. Por ejemplo, si utiliza *Email* como **Prefijo de clave de objeto**, sus correos electrónicos aparecerán en el bucket de S3 en una carpeta denominada *Email*.
+ **Cifrado de mensajes**: opción que permite cifrar los mensajes de correo electrónico recibidos antes de entregarlos en el bucket de S3.
+ **Clave de cifrado de KMS**: (disponible si se selecciona *Cifrado de mensajes*). Clave de AWS KMS que SES deberá utilizar para cifrar sus correos electrónicos antes de guardarlos en el bucket de S3. Puede utilizar la clave de KMS predeterminada o una clave administrada por el cliente que haya creado en KMS.
**nota**  
La clave de KMS que elija deberá estar en la misma región de AWS que el punto de conexión de SES que utilice para recibir correo electrónico. 
  + Para utilizar la clave de KMS predeterminada, elija **aws/ses** al configurar la regla de recepción en la consola de SES. Si utiliza la API de SES, puede especificar la clave de KMS predeterminada si proporciona un ARN con el formato `arn:aws:kms:REGION:AWSACCOUNTID:alias/aws/ses`. Por ejemplo, si su ID de cuenta de AWS es 123456789012 y desea utilizar la clave de KMS predeterminada en la región us-east-1, el ARN de la clave de KMS predeterminada sería `arn:aws:kms:us-east-1:123456789012:alias/aws/ses`. Si usa la clave de KMS predeterminada, no tiene que realizar ningún paso adicional a fin de conceder permiso a SES para que utilice la clave.
  + Para utilizar una clave administrada personalizada que ha creado en KMS, proporcione el ARN de la clave de KMS y asegúrese de agregar una instrucción a su política de claves que conceda a SES permiso para utilizarla. Para obtener más información sobre la concesión de permisos, consulte [Otorgar permisos a Amazon SES para recepción de correo electrónico](receiving-email-permissions.md).

  Para obtener más información sobre el uso de KMS con SES, consulte la [Guía para desarrolladores de AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/services-ses.html). Si no especifica una clave de KMS en la consola o la API, SES no cifrará los correos electrónicos.
**importante**  
SES cifra su correo electrónico mediante el cliente de cifrado de S3 antes de que el correo electrónico se envíe a S3 para su almacenamiento. No se cifra utilizando el cifrado del servidor de S3. Esto significa que se debe utilizar el cliente de cifrado de S3 para descifrar el correo electrónico después de recuperarlo desde S3, ya que el servicio no tiene acceso para utilizar las claves de KMS para el descifrado. Este cliente de cifrado está disponible en el [AWS SDK para Java](https://aws.amazon.com/sdk-for-java/) y en el [AWS SDK para Ruby](https://aws.amazon.com/sdk-for-ruby/). Para obtener más información, consulte la [Guía del usuario de Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html).
+ **Rol de IAM**: rol de IAM que SES utiliza para tener acceso a los recursos de la acción *Entregar a S3* (bucket de Amazon S3, tema de SNS y clave de KMS). Si no lo proporciona, tendrá que conceder permisos a SES de forma explícita para acceder a cada recurso de forma individualmente; consulte [Otorgar permisos a Amazon SES para recepción de correo electrónico](receiving-email-permissions.md).

  Si desea escribir en un bucket de S3 que existe en una región donde *Recepción de correo electrónico* de SES no está disponible, debe utilizar un rol de IAM que tenga la política de permisos de escritura en S3 como política interna del rol. Puede aplicar la política de permisos para esta acción directamente en la consola:

  1. Seleccione **Crear nuevo rol** en el campo **Rol de IAM** y especifique un nombre. A continuación, seleccione **Crear rol** (la política de confianza de IAM de este rol se generará automáticamente en segundo plano).

  1. Puesto que la política de confianza de IAM se genera automáticamente, solo tiene que agregar al rol la política de permisos de la acción: seleccione **Ver rol** en el campo **Rol de IAM** para abrir la consola de IAM.

  1. En la pestaña **Permisos**, elija **Agregar permisos** y seleccione **Crear política insertada**.

  1. En la página **Especificar permisos**, seleccione **JSON** en el **Editor de políticas**.

  1. Copie y pegue la política de permisos de [Permisos de roles de IAM para la acción de S3](receiving-email-permissions.md#receiving-email-permissions-s3-iam-role) en el **Editor de políticas** y reemplace los datos de texto rojo por los suyos propios (asegúrese de eliminar cualquier ejemplo de código del editor).

  1. Elija **Siguiente**.

  1. Revise y cree su política de permisos para el rol de IAM; para ello, seleccione **Crear política**.

  1. Seleccione la pestaña del navegador en la que esté abierta la página **Crear regla**-**Agregar acciones** y continúe con los pasos restantes para crear las reglas.
+ **Tema de SNS**: nombre o ARN del tema de Amazon SNS para notificar cuando se guarda un correo electrónico en el bucket de S3. Un ejemplo de un ARN de tema de SNS es: *arn:aws:sns:us-east-1:123456789012:MyTopic*. También puede crear un tema de SNS cuando configure su acción eligiendo **Crear tema de SNS**. Para obtener más información sobre los temas de SNS, consulte la [Guía para desarrolladores de Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
**nota**  
El tema de SNS que elija deberá estar en la misma región de AWS que el punto de conexión de SES que utilice para recibir correo electrónico. 
Utilice únicamente el cifrado de claves *administradas por el cliente* de KMS con los temas de SNS que asocie a las reglas de recepción de SES, ya que tendrá que editar la política de claves de KMS para permitir que SES publique en SNS. Esto contrasta con las políticas de claves *administradas por AWS* de KMS que, por diseño, no se pueden editar. 

# Acción de publicación en un tema de Amazon SNS
<a name="receiving-email-action-sns"></a>

La acción de **SNS** publica el correo con una notificación de Amazon SNS. La notificación incluye todo el contenido del email. Esta acción tiene las siguientes opciones.
+ **SNS Topic** (Tema de SNS): nombre o ARN del tema de Amazon SNS en el que se publican los correos electrónicos. Las notificaciones de Amazon SNS contendrán una copia del correo electrónico sin modificar y sin procesar, que normalmente está en formato Multipurpose Internet Mail Extensions (MIME). Para obtener más información acerca del formato MIME, consulte [RFC 2045](https://tools.ietf.org/html/rfc2045).
**importante**  
Si decide recibir los correos electrónicos mediante notificaciones de Amazon SNS, el tamaño máximo del correo electrónico (incluidos los encabezados) es de 150 KB. Los emails de mayor tamaño rebotarán. Si prevé utilizar correos electrónicos de un tamaño mayor, guárdelos en un bucket de Amazon S3.

  Un ejemplo de un ARN de tema de Amazon SNS es: *arn:aws:sns:us-east-1:123456789012:MyTopic*. Para crear un tema de Amazon SNS al configurar la acción, puede elegir **Create SNS Topic** (Crear tema de SNS). Para obtener más información acerca de los temas de Amazon SNS, consulte la [Guía para desarrolladores de Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
**nota**  
El tema de Amazon SNS que elija deberá estar en la misma región de AWS que el punto de enlace de Amazon SES que utilice para recibir correo electrónico. 
Utilice únicamente el cifrado de claves *administradas por el cliente* de KMS con los temas de SNS que asocie a las reglas de recepción de SES, ya que tendrá que editar la política de claves de KMS para permitir que SES publique en SNS. Esto contrasta con las políticas de claves *administradas por AWS* de KMS que, por diseño, no se pueden editar. 
+ **Encoding** (Cifrado): cifrado que se va a utilizar para el correo electrónico en la notificación de Amazon SNS. UTF-8 es más fácil de utilizar, pero no conservará todos los caracteres especiales si un mensaje se ha cifrado con un formato de cifrado diferente. Base64 conserva todos los caracteres especiales. Para obtener información sobre UTF-8 y Base64, consulte [RFC 3629](https://tools.ietf.org/html/rfc3629) y [RFC 4648](https://tools.ietf.org/html/rfc4648), respectivamente.

Cuando se recibe un correo electrónico, Amazon SES ejecuta las reglas del conjunto de reglas de recepción activo. Puede configurar reglas de recepción para que se le envíen notificaciones mediante Amazon SNS. Las reglas de recepción pueden enviar dos tipos distintos de notificaciones:
+ **Notificaciones enviadas desde acciones de SNS**: cuando se agrega una acción de [SNS](#receiving-email-action-sns) a una regla de recepción, esta envía información acerca del correo electrónico, así como su contenido. Si el mensaje tiene 150 KB o menos, este tipo de notificación también incluye el cuerpo MIME completo del correo electrónico.
+ **Notificaciones enviadas desde otros tipos de acciones:** cuando agrega cualquier otro tipo de acción (incluidas las acciones [Bounce](receiving-email-action-bounce.md), [Lambda](receiving-email-action-lambda.md), [Stop Rule Set](receiving-email-action-stop.md) o [WorkMail](receiving-email-action-workmail.md)) a una regla de recepción, es posible de especificar un tema de Amazon SNS. Si lo hace, recibirá notificaciones cuando se realicen estas acciones. Estas notificaciones contienen información sobre el correo electrónico, pero no incluyen el contenido del correo electrónico.

**Topics**
+ [Contenido de las notificaciones para recibir correo electrónico de Amazon SES](receiving-email-notifications-contents.md)
+ [Ejemplos de notificaciones para recepción de correo electrónico de Amazon SES](receiving-email-notifications-examples.md)

# Contenido de las notificaciones para recibir correo electrónico de Amazon SES
<a name="receiving-email-notifications-contents"></a>

Todas las notificaciones para la recepción de correos electrónicos se publican en los temas del Amazon Simple Notification Service (Amazon SNS) JavaScript en formato Object Notation (JSON).

Para obtener ejemplos de notificaciones, consulte [Ejemplos de notificaciones](receiving-email-notifications-examples.md).

**Contents**
+ [Objeto JSON de nivel superior](#receiving-email-notifications-contents-top-level-json-object)
+ [Objeto receipt](#receiving-email-notifications-contents-receipt-object)
  + [Objeto action](#receiving-email-notifications-contents-action-object)
  + [Objeto dkimVerdict](#receiving-email-notifications-contents-dkimverdict-object)
  + [Objeto dmarcVerdict](#receiving-email-notifications-contents-dmarcverdict-object)
  + [Objeto spamVerdict](#receiving-email-notifications-contents-spamverdict-object)
  + [Objeto spfVerdict](#receiving-email-notifications-contents-spfverdict-object)
  + [Objeto virusVerdict](#receiving-email-notifications-contents-virusverdict-object)
+ [Objeto mail](#receiving-email-notifications-contents-mail-object)
  + [Objeto commonHeaders](#receiving-email-notifications-contents-mail-object-commonHeaders)

## Objeto JSON de nivel superior
<a name="receiving-email-notifications-contents-top-level-json-object"></a>

Los objetos JSON de nivel superior contienen los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  notificationType  |  El tipo de notification. Para este tipo de notificación, el valor siempre es `Received`.  | 
|  [`receipt`](#receiving-email-notifications-contents-receipt-object)  |  Objeto que contiene información sobre la entrega de correo electrónico.   | 
|  [`mail`](#receiving-email-notifications-contents-mail-object)  |  Objeto que contiene información sobre el correo electrónico relacionado con la notificación.   | 
|  content  |  Cadena que contiene el correo electrónico sin procesar y sin modificar que normalmente está en formato Multipurpose Internet Mail Extensions (MIME). Para obtener más información acerca del formato MIME, consulte [RFC 2045](https://tools.ietf.org/html/rfc2045).  Este campo está presente solo si la notificación la activó una acción SNS. Las notificaciones activadas por las demás acciones no contienen este campo.   | 

## Objeto receipt
<a name="receiving-email-notifications-contents-receipt-object"></a>

El objeto `receipt` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  [`action`](#receiving-email-notifications-contents-action-object)  |  Objeto que encapsula información sobre la acción que se ha ejecutado. Para obtener una lista de los posibles valores, consulte [Objeto action](#receiving-email-notifications-contents-action-object).  | 
|  [`dkimVerdict`](#receiving-email-notifications-contents-dkimverdict-object)  |  Objeto que indica si se DomainKeys ha superado la comprobación del correo identificado (DKIM). Para obtener una lista de los posibles valores, consulte [Objeto dkimVerdict](#receiving-email-notifications-contents-dkimverdict-object).  | 
| dmarcPolicy | Indica la configuración Domain-based Message Authentication, Reporting & Conformance (DMARC) para el dominio de envío. Este campo solo aparece si el mensaje no supera la autenticación DMARC. Los valores posibles para este campo son:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/ses/latest/dg/receiving-email-notifications-contents.html) | 
| [`dmarcVerdict`](#receiving-email-notifications-contents-dmarcverdict-object) | Objeto que indica si se ha superado la comprobación de Domain-based Message Authentication, Reporting & Conformance (DMARC). Para obtener una lista de los posibles valores, consulte [Objeto dmarcVerdict](#receiving-email-notifications-contents-dmarcverdict-object). | 
|  processingTimeMillis  |  Cadena que especifica el periodo, en milisegundos, desde el momento en que Amazon SES recibió el mensaje hasta el momento en que se desencadenó la acción.  | 
|  recipients  |  Los destinatarios (específicamente, las direcciones RCPT TO del sobre) que se corresponde con la [regla de recepción](receiving-email-receipt-rules-console-walkthrough.md) activa. Las direcciones indicadas aquí pueden ser distintas de las que figuran en el campo `destination` del [Objeto mail](#receiving-email-notifications-contents-mail-object).  | 
|  [`spamVerdict`](#receiving-email-notifications-contents-spamverdict-object)  |  Objeto que indica si el mensaje es spam. Para obtener una lista de los posibles valores, consulte [Objeto spamVerdict](#receiving-email-notifications-contents-spamverdict-object).  | 
|  [`spfVerdict`](#receiving-email-notifications-contents-spfverdict-object)  |  Objeto que indica si se ha superado la comprobación de Sender Policy Framework (SPF). Para obtener una lista de los posibles valores, consulte [Objeto spfVerdict](#receiving-email-notifications-contents-spfverdict-object).  | 
|  timestamp  |  Cadena que especifica la fecha y la hora a la que se desencadenó la acción, en formato [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601).  | 
|  [virusVerdict](#receiving-email-notifications-contents-virusverdict-object)  |  Objeto que indica si el mensaje contiene un virus. Para obtener una lista de los posibles valores, consulte [Objeto virusVerdict](#receiving-email-notifications-contents-virusverdict-object).  | 

### Objeto action
<a name="receiving-email-notifications-contents-action-object"></a>

El objeto `action` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  type  |  Cadena que indica el tipo de acción que se ha ejecutado. Los valores posibles son `S3`, `SNS`, `Bounce`, `Lambda`, `Stop` y `WorkMail`.  | 
|  topicArn  |  Cadena que contiene el Nombre de recurso de Amazon (ARN) del tema de Amazon SNS en el que se publicó la notificación.  | 
|  bucketName  |  Cadena que contiene el nombre del bucket de Amazon S3 en el que se publicó el mensaje. Presente solo para el tipo de acción de S3.  | 
|  objectKey  |  Cadena que contiene un nombre que identifica de forma única el correo electrónico en el bucket de Amazon S3. Coincide con el `messageId` del [Objeto mail](#receiving-email-notifications-contents-mail-object). Presente solo para el tipo de acción de S3.  | 
|  smtpReplyCode  |  Cadena que contiene el código de respuesta de SMTP, tal y como se define en [RFC 5321](https://tools.ietf.org/html/rfc5321). Presente solo para el tipo de acción de rebote.  | 
|  statusCode  |  Cadena que contiene el código de estado mejorado de SMTP, tal y como se define en [RFC 3463](https://tools.ietf.org/html/rfc3463). Presente solo para el tipo de acción de rebote.  | 
|  message  |  Cadena que contiene texto en lenguaje natural para incluir en el mensaje de rebote. Presente solo para el tipo de acción de rebote.  | 
|  sender  |  Cadena que contiene la dirección de correo electrónico del remitente del correo electrónico rebotado. Esta es la dirección desde la que se envió el mensaje de rebote. Presente solo para el tipo de acción de rebote.  | 
|  functionArn  |  Cadena que contiene el ARN de la función de Lambda que se desencadenó. Presente solo para el tipo de acción Lambda.  | 
|  invocationType  |  Cadena que contiene el tipo de invocación de la función de Lambda. Los posibles valores son `RequestResponse` y `Event`. Presente solo para el tipo de acción Lambda.  | 
|  organizationArn  |  Cadena que contiene el ARN de la organización Amazon WorkMail. Presente solo para el tipo de WorkMail acción.  | 

### Objeto dkimVerdict
<a name="receiving-email-notifications-contents-dkimverdict-object"></a>

El objeto `dkimVerdict` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  status  |  Cadena que contiene el veredicto de DKIM. Los valores posibles son los que se indican a continuación. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/ses/latest/dg/receiving-email-notifications-contents.html)  | 

### Objeto dmarcVerdict
<a name="receiving-email-notifications-contents-dmarcverdict-object"></a>

El objeto `dmarcVerdict` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  status  |  Cadena que contiene el veredicto de DMARC. Los valores posibles son los que se indican a continuación. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/ses/latest/dg/receiving-email-notifications-contents.html)  | 

### Objeto spamVerdict
<a name="receiving-email-notifications-contents-spamverdict-object"></a>

El objeto `spamVerdict` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  status  |  Cadena que contiene el resultado del análisis de spam. Los valores posibles son los que se indican a continuación. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/ses/latest/dg/receiving-email-notifications-contents.html)  | 

### Objeto spfVerdict
<a name="receiving-email-notifications-contents-spfverdict-object"></a>

El objeto `spfVerdict` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  status  |  Cadena que contiene el veredicto de SPF. Los valores posibles son los que se indican a continuación. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/ses/latest/dg/receiving-email-notifications-contents.html)  | 

### Objeto virusVerdict
<a name="receiving-email-notifications-contents-virusverdict-object"></a>

El objeto `virusVerdict` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|  status  |  Cadena que contiene el resultado del análisis de virus. Los valores posibles son los que se indican a continuación. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/ses/latest/dg/receiving-email-notifications-contents.html)  | 

## Objeto mail
<a name="receiving-email-notifications-contents-mail-object"></a>

El objeto `mail` tiene los siguientes campos.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
|   destination  |  Lista completa de todas las direcciones de los destinatarios (incluidos en los campos To: y CC:) de los encabezados MIME de los mensajes de correo electrónico entrantes.  | 
|  messageId  |  Cadena que contiene un ID único que Amazon SES asigna al correo electrónico. Si el correo electrónico se ha entregado a Amazon S3, el ID de mensaje es también la clave de objeto de Amazon S3 que se utilizó para escribir el mensaje en el bucket de Amazon S3.  | 
|  source  |  Cadena que contiene la dirección de correo electrónico (específicamente, la dirección MAIL FROM del sobre) desde la que se envió el correo electrónico.  | 
|  timestamp  |  Cadena que contiene la hora a la que se recibió el correo electrónico, en ISO8601 formato.  | 
|  headers  |  Los encabezados de Amazon SES y sus encabezados personalizados. Cada encabezado tiene los siguientes campos: `name` y `value`.  | 
|  [`commonHeaders`](#receiving-email-notifications-contents-mail-object-commonHeaders)  |  Los encabezados comunes a todos los correos electrónicos. Cada encabezado tiene los siguientes campos: `name` y `value`.  | 
|  headersTruncated  |  Cadena que especifica si los encabezados se truncaron en la notificación, lo que ocurre si los encabezados tienen un tamaño superior a 10 KB. Los posibles valores son `true` y `false`.  | 

### Objeto commonHeaders
<a name="receiving-email-notifications-contents-mail-object-commonHeaders"></a>

El objeto `commonHeaders` puede tener los campos que se muestran en la tabla siguiente. Los campos presentes en este objeto varían en función de los campos existentes en el correo electrónico entrante.


| Nombre del campo | Description (Descripción) | 
| --- | --- | 
| messageId | El ID del mensaje original. | 
| date | La fecha y hora en que Amazon SES recibió el mensaje. | 
| to | El encabezado To del correo electrónico. | 
| cc | El encabezado CC del correo electrónico. | 
| bcc | El encabezado BCC del correo electrónico. | 
| from | El encabezado From del correo electrónico. | 
| sender | El encabezado Sender del correo electrónico. | 
| returnPath | El encabezado Return-Path del correo electrónico. | 
| replyTo | El encabezado Reply-To del correo electrónico. | 
| subject | El encabezado Subject del correo electrónico. | 

# Ejemplos de notificaciones para recepción de correo electrónico de Amazon SES
<a name="receiving-email-notifications-examples"></a>

En esta sección, se ofrecen ejemplos de los siguientes tipos de notificaciones:
+ [Una notificación enviada como resultado de una acción de SNS.](#receiving-email-notifications-examples-sns-action)
+ [Una notificación enviada como resultado de otro tipo de acción](#receiving-email-notifications-examples-alert) (una *notificación de alerta*).

## Notificación de una acción de SNS
<a name="receiving-email-notifications-examples-sns-action"></a>

Esta sección contiene un ejemplo de una notificación de acción de SNS. A diferencia de la notificación de alerta mostrada anteriormente, incluye una sección `content` que contiene el correo electrónico, que suele estar en formato Multipurpose Internet Mail Extensions (MIME).

```
{
  "notificationType":"Received",
  "receipt":{
    "timestamp":"2015-09-11T20:32:33.936Z",
    "processingTimeMillis":222,
    "recipients":[
      "recipient@example.com"
    ],
    "spamVerdict":{
      "status":"PASS"
    },
    "virusVerdict":{
      "status":"PASS"
    },
    "spfVerdict":{
      "status":"PASS"
    },
    "dkimVerdict":{
      "status":"PASS"
    },
    "action":{
      "type":"SNS",
      "topicArn":"arn:aws:sns:us-east-1:012345678912:example-topic"
    }
  },
  "mail":{
    "timestamp":"2015-09-11T20:32:33.936Z",
    "source":"61967230-7A45-4A9D-BEC9-87CBCF2211C9@example.com",
    "messageId":"d6iitobk75ur44p8kdnnp7g2n800",
    "destination":[
      "recipient@example.com"
    ],
    "headersTruncated":false,
    "headers":[
      {
        "name":"Return-Path",
        "value":"<0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com>"
      },
      {
        "name":"Received",
        "value":"from a9-183.smtp-out.amazonses.com (a9-183.smtp-out.amazonses.com [54.240.9.183]) by inbound-smtp.us-east-1.amazonaws.com with SMTP id d6iitobk75ur44p8kdnnp7g2n800 for recipient@example.com; Fri, 11 Sep 2015 20:32:33 +0000 (UTC)"
      },
      {
        "name":"DKIM-Signature",
        "value":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=ug7nbtf4gccmlpwj322ax3p6ow6yfsug; d=amazonses.com; t=1442003552; h=From:To:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Date:Message-ID:Feedback-ID; bh=DWr3IOmYWoXCA9ARqGC/UaODfghffiwFNRIb2Mckyt4=; b=p4ukUDSFqhqiub+zPR0DW1kp7oJZakrzupr6LBe6sUuvqpBkig56UzUwc29rFbJF hlX3Ov7DeYVNoN38stqwsF8ivcajXpQsXRC1cW9z8x875J041rClAjV7EGbLmudVpPX 4hHst1XPyX5wmgdHIhmUuh8oZKpVqGi6bHGzzf7g="
      },
      {
        "name":"From",
        "value":"sender@example.com"
      },
      {
        "name":"To",
        "value":"recipient@example.com"
      },
      {
        "name":"Subject",
        "value":"Example subject"
      },
      {
        "name":"MIME-Version",
        "value":"1.0"
      },
      {
        "name":"Content-Type",
        "value":"text/plain; charset=UTF-8"
      },
      {
        "name":"Content-Transfer-Encoding",
        "value":"7bit"
      },
      {
        "name":"Date",
        "value":"Fri, 11 Sep 2015 20:32:32 +0000"
      },
      {
        "name":"Message-ID",
        "value":"<61967230-7A45-4A9D-BEC9-87CBCF2211C9@example.com>"
      },
      {
        "name":"X-SES-Outgoing",
        "value":"2015.09.11-54.240.9.183"
      },
      {
        "name":"Feedback-ID",
        "value":"1.us-east-1.Krv2FKpFdWV+KUYw3Qd6wcpPJ4Sv/pOPpEPSHn2u2o4=:AmazonSES"
      }
    ],
    "commonHeaders":{
      "returnPath":"0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com",
      "from":[
        "sender@example.com"
      ],
      "date":"Fri, 11 Sep 2015 20:32:32 +0000",
      "to":[
        "recipient@example.com"
      ],
      "messageId":"<61967230-7A45-4A9D-BEC9-87CBCF2211C9@example.com>",
      "subject":"Example subject"
    }
  },
  "content":"Return-Path: <61967230-7A45-4A9D-BEC9-87CBCF2211C9@example.com>\r\nReceived: from a9-183.smtp-out.amazonses.com (a9-183.smtp-out.amazonses.com [54.240.9.183])\r\n by inbound-smtp.us-east-1.amazonaws.com with SMTP id d6iitobk75ur44p8kdnnp7g2n800\r\n for recipient@example.com;\r\n Fri, 11 Sep 2015 20:32:33 +0000 (UTC)\r\nDKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple;\r\n\ts=ug7nbtf4gccmlpwj322ax3p6ow6yfsug; d=amazonses.com; t=1442003552;\r\n\th=From:To:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Date:Message-ID:Feedback-ID;\r\n\tbh=DWr3IOmYWoXCA9ARqGC/UaODfghffiwFNRIb2Mckyt4=;\r\n\tb=p4ukUDSFqhqiub+zPR0DW1kp7oJZakrzupr6LBe6sUuvqpBkig56UzUwc29rFbJF\r\n\thlX3Ov7DeYVNoN38stqwsF8ivcajXpQsXRC1cW9z8x875J041rClAjV7EGbLmudVpPX\r\n\t4hHst1XPyX5wmgdHIhmUuh8oZKpVqGi6bHGzzf7g=\r\nFrom: sender@example.com\r\nTo: recipient@example.com\r\nSubject: Example subject\r\nMIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding: 7bit\r\nDate: Fri, 11 Sep 2015 20:32:32 +0000\r\nMessage-ID: <61967230-7A45-4A9D-BEC9-87CBCF2211C9@example.com>\r\nX-SES-Outgoing: 2015.09.11-54.240.9.183\r\nFeedback-ID: 1.us-east-1.Krv2FKpFdWV+KUYw3Qd6wcpPJ4Sv/pOPpEPSHn2u2o4=:AmazonSES\r\n\r\nExample content\r\n"
}
```

## Notificación de alerta
<a name="receiving-email-notifications-examples-alert"></a>

Esta sección contiene un ejemplo de una notificación de Amazon SNS que se puede desencadenar mediante una acción de S3. Las notificaciones activadas por acciones Lambda, acciones de rebote, acciones de detención y acciones de WorkMail son similares. Aunque la notificación contiene información sobre el correo electrónico, no incluye el contenido del propio correo electrónico.

```
{
     "notificationType": "Received",
	   "receipt": {
	     "timestamp": "2015-09-11T20:32:33.936Z",
	     "processingTimeMillis": 406,
	     "recipients": [
	       "recipient@example.com"
	     ],
	     "spamVerdict": {
	       "status": "PASS"
	     },
	     "virusVerdict": {
	       "status": "PASS"
	     },
	     "spfVerdict": {
	       "status": "PASS"
	     },
	     "dkimVerdict": {
	       "status": "PASS"
	     },
	     "action": {
	       "type": "S3",
	       "topicArn": "arn:aws:sns:us-east-1:012345678912:example-topic",
	       "bucketName": "my-S3-bucket",
	       "objectKey": "\email"
	     }
	   },
	   "mail": {
	     "timestamp": "2015-09-11T20:32:33.936Z",
	     "source": "0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com",
	     "messageId": "d6iitobk75ur44p8kdnnp7g2n800",
	     "destination": [
	       "recipient@example.com"
	     ],
	     "headersTruncated": false,
	     "headers": [
	       {
	         "name": "Return-Path",
	         "value": "<0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com>"
	       },
	       {
	         "name": "Received",
	         "value": "from a9-183.smtp-out.amazonses.com (a9-183.smtp-out.amazonses.com [54.240.9.183]) by inbound-smtp.us-east-1.amazonaws.com with SMTP id d6iitobk75ur44p8kdnnp7g2n800 for recipient@example.com; Fri, 11 Sep 2015 20:32:33 +0000 (UTC)"
	       },
	       {
	         "name": "DKIM-Signature",
	         "value": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=ug7nbtf4gccmlpwj322ax3p6ow6yfsug; d=amazonses.com; t=1442003552; h=From:To:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Date:Message-ID:Feedback-ID; bh=DWr3IOmYWoXCA9ARqGC/UaODfghffiwFNRIb2Mckyt4=; b=p4ukUDSFqhqiub+zPR0DW1kp7oJZakrzupr6LBe6sUuvqpBkig56UzUwc29rFbJF hlX3Ov7DeYVNoN38stqwsF8ivcajXpQsXRC1cW9z8x875J041rClAjV7EGbLmudVpPX 4hHst1XPyX5wmgdHIhmUuh8oZKpVqGi6bHGzzf7g="
	       },
	       {
	         "name": "From",
	         "value": "sender@example.com"
	       },
	       {
	         "name": "To",
	         "value": "recipient@example.com"
	       },
	       {
	         "name": "Subject",
	         "value": "Example subject"
	       },
	       {
	         "name": "MIME-Version",
	         "value": "1.0"
	       },
	       {
	         "name": "Content-Type",
	         "value": "text/plain; charset=UTF-8"
	       },
	       {
	         "name": "Content-Transfer-Encoding",
	         "value": "7bit"
	       },
	       {
	         "name": "Date",
	         "value": "Fri, 11 Sep 2015 20:32:32 +0000"
	       },
	       {
	         "name": "Message-ID",
	         "value": "<61967230-7A45-4A9D-BEC9-87CBCF2211C9@example.com>"
	       },
	       {
	         "name": "X-SES-Outgoing",
	         "value": "2015.09.11-54.240.9.183"
	       },
	       {
	         "name": "Feedback-ID",
	         "value": "1.us-east-1.Krv2FKpFdWV+KUYw3Qd6wcpPJ4Sv/pOPpEPSHn2u2o4=:AmazonSES"
	       }
	     ],
	     "commonHeaders": {
	       "returnPath": "0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com",
	       "from": [
	         "sender@example.com"
	       ],
	       "date": "Fri, 11 Sep 2015 20:32:32 +0000",
	       "to": [
	         "recipient@example.com"
	       ],
	       "messageId": "<61967230-7A45-4A9D-BEC9-87CBCF2211C9@example.com>",
	       "subject": "Example subject"
	     }
	   }
	 }
```

# Acción de detención del conjunto de reglas
<a name="receiving-email-action-stop"></a>

La acción **Stop** (Detener) termina la evaluación del conjunto de reglas de recepción y, opcionalmente, lo notifica a través de Amazon SNS. Esta acción tiene las siguientes opciones.
+ **SNS Topic** (Tema de SNS): el nombre o ARN del tema de Amazon SNS al que se enviará la notificación cuando se ejecute la acción Stop (Detener). Un ejemplo de un ARN de tema de Amazon SNS es: *arn:aws:sns:us-east-1:123456789012:MyTopic*. Para crear un tema de Amazon SNS al configurar la acción, puede elegir **Create SNS Topic** (Crear tema de SNS). Para obtener más información acerca de los temas de Amazon SNS, consulte la [Guía para desarrolladores de Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
**nota**  
El tema de Amazon SNS que elija deberá estar en la misma región de AWS que el punto de conexión de Amazon SES que utilice para recibir correo electrónico. 

# Acción de integración con Amazon WorkMail
<a name="receiving-email-action-workmail"></a>

La acción de **WorkMail** se integra con Amazon WorkMail. Si Amazon WorkMail realiza todo el procesamiento del correo electrónico, normalmente no utilizará esta acción de manera directa, ya que Amazon WorkMail se encarga de la configuración. Esta acción tiene las siguientes opciones.
+ **Organization ARN** (ARN de la organización): el ARN de la organización de Amazon WorkMail. Los ARN de la organización de Amazon WorkMail tienen la forma `arn:aws:workmail:region:account_ID:organization/organization_ID`, donde:
  + `region` es la región en la que utiliza Amazon SES y Amazon WorkMail. (Debe utilizarlos desde la misma región). Por ejemplo, us-east-1.
  + `account_ID` es el ID de cuenta de AWS. Puede encontrar su ID de cuenta de AWS en la página [Account (Cuenta)](https://console.aws.amazon.com/billing/home?#/account) de la consola de administración de AWS.
  + `organization_ID` es un identificador único que genera Amazon WorkMail cuando se crea una organización. Puede encontrar el ID de la organización en la consola de Amazon WorkMail en la página Organization Settings (Configuración de la organización) de su organización. 

  Un ejemplo de ARN de la organización de Amazon WorkMail completo es *arn:aws:workmail:us-east-1:123456789012:organization/m-68755160c4cb4e29a2b2f8fb58f359d7*. Para obtener más información sobre las organizaciones de Amazon WorkMail, consulte la [Guía del administrador de Amazon WorkMail](https://docs.aws.amazon.com/workmail/latest/adminguide/organizations_overview.html).
+ **SNS Topic** (Tema de SNS): el nombre o ARN del tema de Amazon SNS al que se enviará una notificación cuando se ejecute la acción de Amazon WorkMail. Un ejemplo de un ARN de tema de Amazon SNS es: *arn:aws:sns:us-east-1:123456789012:MyTopic*. Para crear un tema de Amazon SNS al configurar la acción, puede elegir **Create SNS Topic** (Crear tema de SNS). Para obtener más información acerca de los temas de Amazon SNS, consulte la [Guía para desarrolladores de Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
**nota**  
El tema de Amazon SNS que elija deberá estar en la misma región de AWS que el punto de conexión de Amazon SES que utilice para recibir correo electrónico.

**nota**  
Amazon SES solo admite las acciones de WorkMail en las regiones en las que WorkMail esté disponible. Consulte [Puntos de enlace y cuotas de Amazon WorkMail](https://docs.aws.amazon.com/general/latest/gr/workmail.html) en la Referencia general de AWS.