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.
Contenidos de notificaciones de Amazon SNS para Amazon SES
Las notificaciones de rebote, queja y entrega se publican en los temas del Amazon Simple Notification Service (Amazon SNS) en formato JavaScript Object Notation (JSON)notificationType
, un objeto mail
y un objeto bounce
, un objeto complaint
o un objeto delivery
.
Consulte las secciones siguientes para las descripciones de los diferentes tipos de objetos:
A continuación se muestran algunas notas importantes acerca del contenido de las notificaciones de Amazon SNS para Amazon SES:
-
Para un tipo de notificación determinado, es posible que reciba una notificación de Amazon SNS para varios destinatarios o puede recibir una sola notificación de Amazon SNS por destinatario. El código debe ser capaz de analizar la notificación de Amazon SNS y gestionar ambos casos; Amazon SES no garantiza el orden ni la agrupación de las notificaciones enviadas a través de Amazon SNS. Sin embargo, distintos tipos de notificación de Amazon SNS (por ejemplo, rebotes y reclamos) nunca se combinan en una sola notificación.
-
Podría recibir varios tipos de notificaciones de Amazon SNS para un destinatario. Por ejemplo, el servidor de correo electrónico receptor podría aceptar el correo electrónico (activando una notificación de entrega), pero después de procesar el correo electrónico, el servidor de correo electrónico receptor podría determinar que el correo electrónico da lugar en realidad a un rebote (desencadenando una notificación de rebote). Sin embargo, estas notificaciones siempre son independientes, ya que son tipos de notificación distintos.
-
Amazon SES se reserva el derecho de agregar campos adicionales a las notificaciones. Por tanto, las aplicaciones que analizan estas notificaciones deben ser lo suficientemente flexibles como para gestionar campos desconocidos.
-
Amazon SES sobrescribe los encabezados del mensaje cuando envía el correo electrónico. Puede recuperar los encabezados del mensaje original desde los campos
headers
ycommonHeaders
del objetomail
.
Objeto JSON de nivel superior
El objeto JSON de nivel superior de una notificación de Amazon SES contiene los siguientes campos.
Nombre del campo | Descripción |
---|---|
notificationType |
Una cadena que contiene el tipo de notificación representado por el objeto JSON. Los valores posibles son Si configuró la publicación de eventos, este campo se denomina |
mail |
Un objeto JSON que contiene información sobre el correo original al que pertenece la notificación. Para obtener más información, consulte Objeto Mail. |
bounce |
Este campo está presente solo si |
complaint |
Este campo está presente solo si |
delivery |
Este campo está presente solo si |
Objeto Mail
Cada notificación de rebote, reclamación o entrega contiene información sobre el correo electrónico original en el objeto mail
. El objeto JSON que contiene información acerca de un objeto mail
tiene los campos siguientes.
Nombre del campo | Descripción |
---|---|
timestamp
|
La hora a la que se envió el mensaje original (en formato ISO86 01). |
messageId
|
Un ID exclusivo que Amazon SES asignó al mensaje. Amazon SES le devolvió este valor cuando envió el mensaje. notaEste ID de mensaje lo asignó Amazon SES. Puede encontrar el ID de mensaje del correo electrónico original en el campo |
source
|
La dirección de correo electrónico desde la que se envió el mensaje original (la dirección MAIL FROM del sobre). |
sourceArn
|
El nombre de recurso de Amazon (ARN) de la identidad que se utilizó para enviar el correo electrónico. En el caso de una autorización de envío, el |
sourceIp
|
La dirección IP pública de origen del cliente que realizó la solicitud de envío de correo electrónico a Amazon SES. |
sendingAccountId
|
El Cuenta de AWS ID de la cuenta que se utilizó para enviar el correo electrónico. En el caso de la autorización de envío, el |
callerIdentity
|
La identidad de IAM del usuario de Amazon SES que ha enviado el correo electrónico. |
destination
|
Una lista de direcciones de correo electrónico que han sido destinatarios del correo electrónico original. |
headersTruncated
|
Este objeto solo está presente si configuró la configuración de las notificaciones para incluir los encabezados del correo electrónico original. Indica si los encabezados están truncados en la notificación. Amazon SES trunca los encabezados en la notificación cuando los encabezados del mensaje original tienen un tamaño de 10 KB o superior. Los posibles valores son |
headers
|
Este objeto solo está presente si configuró la configuración de las notificaciones para incluir los encabezados del correo electrónico original. Una lista de los encabezados originales del correo electrónico. Cada encabezado de la lista tiene un campo notaCualquier ID de mensaje dentro del objeto |
commonHeaders
|
Este objeto solo está presente si configuró la configuración de las notificaciones para incluir los encabezados del correo electrónico original. Incluye información sobre los encabezados de correo electrónico comunes del correo electrónico original, incluido los campos Desde, A y Asunto. Dentro de este objeto, cada encabezado es una clave. Los campos Desde y A se representan por matrices que contienen varios valores. notaPara eventos, el ID de mensaje dentro del campo |
A continuación, se muestra un ejemplo de un objeto mail
que incluye los encabezados de correo electrónico originales. Cuando este tipo de notificación no está configurado para incluir los encabezados de correo electrónico originales, el objeto mail
no incluye los campos headersTruncated
, headers
y commonHeaders
.
{ "timestamp":"2018-10-08T14:05:45 +0000", "messageId":"000001378603177f-7a5433e7-8edb-42ae-af10-f0181f34d6ee-000000", "source":"sender@example.com", "sourceArn": "arn:aws:ses:us-east-1:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "destination":[ "recipient@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"Sender Name\" <sender@example.com>" }, { "name":"To", "value":"\"Recipient Name\" <recipient@example.com>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Mon, 08 Oct 2018 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "Sender Name <sender@example.com>" ], "date":"Mon, 08 Oct 2018 14:05:45 +0000", "to":[ "Recipient Name <recipient@example.com>" ], "messageId":" custom-message-ID", "subject":"Message sent using Amazon SES" } }
Objeto Bounce
El objeto JSON que contiene información acerca de rebotes contiene los campos siguientes.
Nombre del campo | Descripción |
---|---|
bounceType
|
El tipo de rebote, tal como determina Amazon SES. Para obtener más información, consulte Tipos de rebote. |
bounceSubType
|
El subtipo de rebote, tal como determina Amazon SES. Para obtener más información, consulte Tipos de rebote. |
bouncedRecipients
|
Una lista que contiene información acerca de los destinatarios del mensaje de correo electrónico original que dio lugar a un rebote. Para obtener más información, consulte Destinatarios con rebote. |
timestamp
|
La fecha y la hora en que se envió el rebote (en formato ISO86 01). Tenga en cuenta que se trata de la hora a la que el ISP envió la notificación y no la hora a la que la recibió Amazon SES. |
feedbackId
|
Un ID único para el rebote. |
Si Amazon SES pudo contactar con la autoridad de transferencia de mensajes (MTA) remota, también está presente el siguiente campo.
Nombre del campo | Descripción |
---|---|
remoteMtaIp
|
La dirección IP de la MTA a la que Amazon SES intentó entregar el correo electrónico. |
Si se adjunta una notificación de estado de entrega (DSN) al rebote, también está presente el siguiente campo.
Nombre del campo | Descripción |
---|---|
reportingMTA
|
El valor del campo |
A continuación se muestra un ejemplo de un objeto bounce
.
{ "bounceType":"Permanent", "bounceSubType": "General", "bouncedRecipients":[ { "status":"5.0.0", "action":"failed", "diagnosticCode":"smtp; 550 user unknown", "emailAddress":"recipient1@example.com" }, { "status":"4.0.0", "action":"delayed", "emailAddress":"recipient2@example.com" } ], "reportingMTA": "example.com", "timestamp":"2012-05-25T14:59:38.605Z", "feedbackId":"000001378603176d-5a4b5ad9-6f30-4198-a8c3-b1eb0c270a1d-000000", "remoteMtaIp":"127.0.2.0" }
Destinatarios con rebote
Una notificación de rebote podría pertenecer a un único destinatario o a varios destinatarios. El campo bouncedRecipients
aloja una lista de objetos (un objeto por destinatario a quien pertenece la notificación de rebote) y siempre contiene el campo siguiente.
Nombre del campo | Descripción |
---|---|
emailAddress
|
La dirección de correo electrónico del destinatario. Si hay un DSN disponible, se trata del valor del campo |
Opcionalmente, si hay un DSN adjunto al rebote, los siguientes campos también podrían estar presentes.
Nombre del campo | Descripción |
---|---|
action
|
El valor del campo |
status
|
El valor del campo |
diagnosticCode
|
El código de estado emitido por la MTA de notificación. Este es el valor del campo |
A continuación se muestra un ejemplo de objeto que podría estar en la lista bouncedRecipients
.
{ "emailAddress": "recipient@example.com", "action": "failed", "status": "5.0.0", "diagnosticCode": "X-Postfix; unknown user" }
Tipos de rebote
El objeto de rebote contiene un tipo de rebote Undetermined
, Permanent
o Transient
. Los tipos de rebote Permanent
y Transient
también pueden contener uno de varios subtipos de rebote.
Cuando reciba una notificación de rebote con un tipo Transient
, es posible que pueda enviar correo electrónico a ese destinatario en el futuro si se resuelve el problema que provocó el rebote del mensaje.
Cuando recibes una notificación de rebote con un tipo Permanent
, es poco probable que pueda enviar correo electrónico a ese destinatario en el futuro. Por este motivo, debe quitar inmediatamente el destinatario cuya dirección produjo el rebote de las listas de correo.
nota
Cuando se produce un rebote temporal (un rebote relacionado con un problema temporal, por ejemplo, que se llene la bandeja de correo del destinatario), Amazon SES intenta entregar de nuevo el correo electrónico durante un determinado periodo de tiempo. Al final de ese periodo de tiempo, si Amazon SES sigue sin poder entregar el correo electrónico, deja de intentarlo.
Amazon SES ofrece notificaciones de los rebotes permanentes, así como de los rebotes temporales cuya entrega ha dejado de intentar. Si desea recibir una notificación cada vez que se produzca un rebote temporal, habilite la publicación de eventos y configúrela para que envíe notificaciones cuando se produzcan eventos en de retraso en la entrega.
bounceType | bounceSubType | Descripción |
---|---|---|
Undetermined
|
Undetermined
|
El proveedor de correo electrónico del destinatario envió un mensaje de rebote. El mensaje de rebote no contenía información suficiente para que Amazon SES determinara el motivo del rebote. El correo electrónico de rebote, que se envió a la dirección del encabezado Return-Path del correo electrónico que generó el rebote, podría contener información adicional sobre el problema que provocó que rebotara el correo electrónico. |
Permanent
|
General
|
El proveedor de correo electrónico del destinatario envió un mensaje de devolución permanente. importanteCuando reciba este tipo de notificación de rebote, debe quitar inmediatamente la dirección de correo electrónico del destinatario de su lista de correo. El envío de mensajes a direcciones que producen rebotes permanentes puede tener un impacto negativo en su reputación como remitente. Si sigue enviando correos electrónicos a direcciones que producen rebotes permanentes, podríamos detener su capacidad para enviar correo electrónico adicional. Consulte Uso de la lista de supresión de nivel de cuenta de Amazon SES. |
Permanent
|
NoEmail
|
No fue posible recuperar la dirección de correo electrónico del destinatario del mensaje de rebote. |
Permanent
|
Suppressed
|
La dirección de correo electrónico del destinatario está en la lista de supresión de Amazon SES porque tiene un historial reciente de generar rebotes permanentes. Para anular la lista de supresión global, consulte Uso de la lista de supresión de nivel de cuenta de Amazon SES. |
Permanent
|
OnAccountSuppressionList
|
Amazon SES ha suprimido el envío a esta dirección porque está en la lista de supresión de nivel de cuenta. Esto no se toma en cuenta para calcular la métrica de porcentaje de rebotes. |
Transient
|
General
|
El proveedor de correo electrónico del destinatario envió un mensaje de rebote general. Puede enviar un mensaje al mismo destinatario en el futuro si se resolviera el problema que provocó el rebote del mensaje. notaSi envía un correo electrónico a un destinatario que tiene una regla de respuesta automática activa (como, por ejemplo, un mensaje de "fuera de la oficina"), es posible que reciba este tipo de notificación. Aunque la respuesta tiene un tipo de notificación |
Transient
|
MailboxFull
|
El proveedor de correo electrónico del destinatario envió un mensaje de rebote porque la bandeja de entrada del destinatario estaba llena. Podría realizar el envío al mismo destinatario en el futuro cuando la bandeja de entrada deje de estar llena. |
Transient
|
MessageTooLarge
|
El proveedor de correo electrónico del destinatario envió un mensaje de rebote porque el mensaje enviado era demasiado grande. Podría enviar un mensaje al mismo destinatario si reduce el tamaño del mensaje. |
Transient
|
ContentRejected
|
El proveedor de correo electrónico del destinatario envió un mensaje de rebote porque el mensaje enviado incluye contenido que el proveedor no permite. Podría enviar un mensaje al mismo destinatario si cambia el contenido del mensaje. |
Transient
|
AttachmentRejected
|
El proveedor de correo electrónico del destinatario envió un mensaje de rebote porque el mensaje contenía un archivo adjunto inaceptable. Por ejemplo, algunos proveedores de correo electrónico pueden rechazar mensajes con archivos adjuntos de un determinado tipo de archivo o mensajes con archivos adjuntos muy grandes. Podría enviar un mensaje al mismo destinatario si quita o cambia el contenido del archivo adjunto. |
Objeto Complaint
El objeto JSON que contiene información acerca de reclamaciones tiene los campos siguientes.
Nombre del campo | Descripción |
---|---|
complainedRecipients
|
Una lista que contiene información sobre destinatarios que podrían haber sido responsables de la reclamación. Para obtener más información, consulte Destinatarios con reclamaciones. |
timestamp
|
La fecha y la hora a la que el ISP envió la notificación de reclamación, en formato ISO 8601. La fecha y la hora de este campo podrían no ser las mismas en que Amazon SES recibió la notificación. |
feedbackId
|
Un ID único asociado con la reclamación. |
complaintSubType
|
El valor del campo |
Además, si se adjunta un informe de retroalimentación a la reclamación, podrían estar presentes los siguientes campos.
Nombre del campo | Descripción |
---|---|
userAgent
|
El valor del campo |
complaintFeedbackType
|
El valor del campo |
arrivalDate
|
El valor del |
A continuación se muestra un ejemplo de un objeto complaint
.
{ "userAgent":"ExampleCorp Feedback Loop (V0.01)", "complainedRecipients":[ { "emailAddress":"recipient1@example.com" } ], "complaintFeedbackType":"abuse", "arrivalDate":"2009-12-03T04:24:21.000-05:00", "timestamp":"2012-05-25T14:59:38.623Z", "feedbackId":"000001378603177f-18c07c78-fa81-4a58-9dd1-fedc3cb8f49a-000000" }
Destinatarios con reclamaciones
El campo complainedRecipients
contiene una lista de destinatarios que podrían haber enviado la reclamación. Debe usar esta información para determinar qué destinatario presentó la queja y, a continuación, eliminar inmediatamente a ese destinatario de sus listas de correo.
importante
La mayoría ISPs elimina la dirección de correo electrónico del destinatario que presentó la queja de su notificación de queja. Por este motivo, esta lista contiene información acerca de los destinatarios que podrían haber enviado el reclamo, en función de los destinatarios del mensaje original y el ISP del que hemos recibido el reclamo. Amazon SES realiza una búsqueda en el mensaje original para determinar esta lista de destinatarios.
Los objetos JSON de esta lista contienen el siguiente campo.
Nombre del campo | Descripción |
---|---|
emailAddress
|
La dirección de correo electrónico del destinatario. |
A continuación se muestra un ejemplo de un objeto de destinatario con reclamo.
{ "emailAddress": "recipient1@example.com" }
nota
Debido a este comportamiento, puede estar más seguro de que sabe qué dirección de correo electrónico ha presentado una reclamación por su mensaje si limita el envío a un mensaje por destinatario (en lugar de enviar un mensaje con 30 direcciones de correo electrónico distintas en la línea CCO).
Tipos de reclamación
Es posible que vea los siguientes tipos de reclamación en el campo complaintFeedbackType
tal como los ha asignado el ISP que realiza la notificación, de acuerdo con el sitio web de Internet Assigned Numbers Authority
-
abuse
: indica correo electrónico no solicitado o algún otro tipo de abuso de correo electrónico. -
auth-failure
: informe de error de autenticación de correo electrónico. -
fraud
: indica algún tipo de fraude o actividad de phishing. -
not-spam
: indica que la entidad que proporciona el informe no considera el mensaje como spam. Esto se puede utilizar para corregir un mensaje que estaba mal etiquetado o clasificado como spam. -
other
: indica cualquier otra retroalimentación que no encaje en otros tipos registrados. -
virus
: notifica que se ha encontrado un virus en el mensaje de origen.
Objeto Delivery
El objeto JSON que contiene información sobre entregas tiene siempre los campos siguientes.
Nombre del campo | Descripción |
---|---|
timestamp
|
La hora en que Amazon SES entregó el correo electrónico al servidor de correo del destinatario (en formato ISO86 01). |
processingTimeMillis
|
El tiempo en milisegundos desde el momento en que Amazon SES; acepta la solicitud del remitente para transferir el mensaje al servidor de correo del destinatario. |
recipients
|
Una lista de sus destinatarios de los correos electrónicos a los que corresponde la notificación de entrega. |
smtpResponse
|
El mensaje de respuesta SMTP del ISP remoto que ha aceptado el correo electrónico desde Amazon SES. Este mensaje varía por correo electrónico, por servidor de correo electrónico de recepción y por ISP de recepción. |
reportingMTA
|
El nombre de host del servidor de correo electrónico de Amazon SES que envió el correo electrónico. |
remoteMtaIp
|
La dirección IP de la MTA a la que Amazon SES entregó el correo electrónico. |
A continuación se muestra un ejemplo de un objeto delivery
.
{ "timestamp":"2014-05-28T22:41:01.184Z", "processingTimeMillis":546, "recipients":["success@simulator.amazonses.com"], "smtpResponse":"250 ok: Message 64111812 accepted", "reportingMTA":"a8-70.smtp-out.amazonses.com", "remoteMtaIp":"127.0.2.0" }