Uso de plantillas para enviar correos electrónicos personalizados con Amazon SES API - Amazon Simple Email Service

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.

Uso de plantillas para enviar correos electrónicos personalizados con Amazon SES API

Puede utilizar la CreateTemplateAPIoperación para crear plantillas de correo electrónico. Estas plantillas incluyen una línea de asunto y el texto y HTML partes del cuerpo del correo electrónico. Las secciones de asunto y cuerpo también podrían contener valores únicos personalizados para cada destinatario.

Existen unos límites y otras consideraciones al utilizar estas características:

  • Puedes crear hasta 20 000 plantillas de correo electrónico en cada una Región de AWS.

  • Cada plantilla puede tener un tamaño máximo de 500 KB, incluidos el texto y HTML las partes.

  • Puede incluir un número ilimitado de variables de sustitución en cada plantilla.

  • Puede enviar correo electrónico a un máximo de 50 destinos en cada llamada a la operación SendBulkTemplatedEmail. Un destino incluye una lista de destinatarios, que incluye el CC y BCC los destinatarios. La cantidad de destinos a los que puedes contactar en una sola llamada API puede estar limitada por la tasa máxima de envío de tu cuenta. Para obtener más información, consulte Administración de sus límites de envío de Amazon SES.

Esta sección incluye procedimientos para la creación de plantillas de correo electrónico y para el envío de correos electrónicos personalizados.

nota

En los procedimientos de esta sección se supone que ya ha instalado y configurado el AWS CLI. Para obtener más información sobre la instalación y configuración del AWS CLI, consulte la AWS Command Line Interface Guía del usuario.

Parte 1: Configurar las notificaciones de eventos de errores de presentación

Si envías un correo electrónico con contenido de personalización no válido, Amazon SES podría aceptar el mensaje, pero no podrá entregarlo. Por este motivo, si planea enviar correos electrónicos personalizados, debe configurar Amazon SES para que envíe notificaciones de eventos de errores de renderización a través de AmazonSNS. Cuando reciba una notificación de evento de error de presentación, puede identificar qué mensaje incluía el contenido no válido, solucionar los problemas y enviar el mensaje de nuevo.

Es absolutamente recomendable que realice el procedimiento de esta sección, aunque sea opcional.

Para configurar notificaciones de eventos de errores de presentación
  1. Crea un SNS tema de Amazon. Para obtener información acerca de los procedimientos, consulte Creación de un tema en la Guía para desarrolladores de Amazon Simple Notification Service.

  2. Suscríbete al SNS tema de Amazon. Por ejemplo, si desea recibir notificaciones de errores de presentación por correo electrónico, suscriba un punto de enlace de correo electrónico (es decir, su dirección de correo electrónico) al tema.

    Para obtener información acerca de los procedimientos, consulte Suscribirse a un tema en la Guía para desarrolladores de Amazon Simple Notification Service.

  3. Complete los procedimientos Configuración de un destino de eventos de Amazon SNS para la publicación de eventos para configurar sus conjuntos de configuración para publicar los eventos de error de renderización en su SNS tema de Amazon.

Parte 2: Crear una plantilla de correo electrónico

En esta sección, utilizará la CreateTemplate API operación para crear una nueva plantilla de correo electrónico con atributos de personalización.

En este procedimiento se presupone que ya ha instalado y configurado el AWS CLI. Para obtener más información sobre la instalación y configuración del AWS CLI, consulte la AWS Command Line Interface Guía del usuario.

Para crear la plantilla
  1. En un editor de texto, cree un nuevo archivo. Pegue el código siguiente en el archivo.

    { "Template": { "TemplateName": "MyTemplate", "SubjectPart": "Greetings, {{name}}!", "HtmlPart": "<h1>Hello {{name}},</h1><p>Your favorite animal is {{favoriteanimal}}.</p>", "TextPart": "Dear {{name}},\r\nYour favorite animal is {{favoriteanimal}}." } }

    Este código contiene las siguientes propiedades:

    • TemplateName— El nombre de la plantilla. Cuando envíe el correo electrónico, consulte este nombre.

    • SubjectPart— La línea de asunto del correo electrónico. Esta propiedad podría contener etiquetas de sustitución. Estas etiquetas utilizan el siguiente formato: {{tagname}}. Cuando envíe el correo electrónico, puede especificar un valor para tagname para cada destino.

      El ejemplo anterior incluye dos etiquetas: {{name}} y {{favoriteanimal}}.

    • HtmlPart— El HTML cuerpo del correo electrónico. Esta propiedad podría contener etiquetas de sustitución.

    • TextPart— El cuerpo del texto del correo electrónico. Los destinatarios cuyos clientes de correo electrónico no muestran el HTML correo electrónico ven esta versión del correo electrónico. Esta propiedad podría contener etiquetas de sustitución.

  2. Personalice el ejemplo anterior para adaptarse a sus necesidades y, a continuación, guarde el archivo como mytemplate.json.

  3. En la línea de comandos, escriba el siguiente comando para crear una plantilla nueva mediante la CreateTemplate API operación:

    aws ses create-template --cli-input-json file://mytemplate.json

Parte 3: Enviar el correo electrónico personalizado

Después de crear una plantilla de correo electrónico, puede utilizarla para enviar correo electrónico. Hay dos API operaciones que puede utilizar para enviar correos electrónicos mediante plantillas:SendTemplatedEmail, ySendBulkTemplatedEmail. Esta SendTemplatedEmail operación resulta útil para enviar un correo electrónico personalizado a un único destino (un conjunto de destinatarios «Para», «CC» y BCC «» que recibirán el mismo correo electrónico). La SendBulkTemplatedEmail operación es útil para enviar correos electrónicos únicos a varios destinos en una sola llamada a Amazon SESAPI. En esta sección se proporcionan ejemplos de cómo utilizar el AWS CLI para enviar correos electrónicos mediante estas dos operaciones.

Envío de correo electrónico con plantilla a un destino único

Puede utilizar la operación SendTemplatedEmail para enviar un correo electrónico a un destino único. Todos los destinatarios del objeto Destination recibirán el mismo correo electrónico.

Para enviar un correo electrónico con plantilla a un destino único
  1. En un editor de texto, cree un nuevo archivo. Pegue el código siguiente en el archivo.

    { "Source":"Mary Major <mary.major@example.com>", "Template": "MyTemplate", "ConfigurationSetName": "ConfigSet", "Destination": { "ToAddresses": [ "alejandro.rosalez@example.com" ] }, "TemplateData": "{ \"name\":\"Alejandro\", \"favoriteanimal\": \"alligator\" }" }

    Este código contiene las siguientes propiedades:

    • Source: la dirección de correo electrónico del remitente.

    • Template: el nombre de la plantilla que aplicar al correo electrónico.

    • ConfigurationSetName— El nombre del conjunto de configuraciones que se utilizará al enviar el correo electrónico.

      nota

      Le recomendamos que utilice un conjunto de configuraciones que esté configurado para publicar eventos de errores de renderización en AmazonSNS. Para obtener más información, consulte Parte 1: Configurar las notificaciones de eventos de errores de presentación.

    • Destination: las direcciones de destinatario. Puede incluir varias direcciones «Para», «CC» y BCC «». Cuando utiliza la operación SendTemplatedEmail, todos los destinatarios reciben el mismo mensaje de correo electrónico.

    • TemplateData— Una JSON cadena de escape que contiene pares clave-valor. Las claves corresponden a las variables de la plantilla (por ejemplo, {{name}}). Los valores representan el contenido que sustituye las variables en el correo electrónico.

  2. Cambie los valores del código del paso anterior según sus necesidades y, a continuación, guarde el archivo como myemail.json.

  3. En la línea de comandos, escriba el siguiente comando para enviar el correo electrónico:

    aws ses send-templated-email --cli-input-json file://myemail.json

Envío de correo electrónico con plantilla a varios destinos

Puede utilizar la SendBulkTemplatedEmail operación para enviar un correo electrónico a varios destinos en una sola llamada al. API Amazon SES envía un correo electrónico único al destinatario o destinatarios de cada Destination objeto.

Para enviar un correo electrónico con plantilla a varios destinos
  1. En un editor de texto, cree un nuevo archivo. Pegue el código siguiente en el archivo.

    { "Source":"Mary Major <mary.major@example.com>", "Template":"MyTemplate", "ConfigurationSetName": "ConfigSet", "Destinations":[ { "Destination":{ "ToAddresses":[ "anaya.iyengar@example.com" ] }, "ReplacementTemplateData":"{ \"name\":\"Anaya\", \"favoriteanimal\":\"angelfish\" }" }, { "Destination":{ "ToAddresses":[ "liu.jie@example.com" ] }, "ReplacementTemplateData":"{ \"name\":\"Liu\", \"favoriteanimal\":\"lion\" }" }, { "Destination":{ "ToAddresses":[ "shirley.rodriguez@example.com" ] }, "ReplacementTemplateData":"{ \"name\":\"Shirley\", \"favoriteanimal\":\"shark\" }" }, { "Destination":{ "ToAddresses":[ "richard.roe@example.com" ] }, "ReplacementTemplateData":"{}" } ], "DefaultTemplateData":"{ \"name\":\"friend\", \"favoriteanimal\":\"unknown\" }" }

    Este código contiene las siguientes propiedades:

    • Source: la dirección de correo electrónico del remitente.

    • Template: el nombre de la plantilla que aplicar al correo electrónico.

    • ConfigurationSetName— El nombre del conjunto de configuraciones que se utilizará al enviar el correo electrónico.

      nota

      Le recomendamos que utilice un conjunto de configuraciones que esté configurado para publicar eventos de errores de renderización en AmazonSNS. Para obtener más información, consulte Parte 1: Configurar las notificaciones de eventos de errores de presentación.

    • Destinos: una matriz que contiene uno o varios destinos.

      • Destination: las direcciones de destinatario. Puede incluir varias direcciones «Para», «CC» y BCC «». Cuando utiliza la operación SendBulkTemplatedEmail, todos los destinatarios dentro del mismo objeto Destination reciben el mismo mensaje de correo electrónico.

      • ReplacementTemplateData— Un JSON objeto que contiene pares clave-valor. Las claves corresponden a las variables de la plantilla (por ejemplo, {{name}}). Los valores representan el contenido que sustituye las variables en el correo electrónico.

    • DefaultTemplateData— Un JSON objeto que contiene pares clave-valor. Las claves corresponden a las variables de la plantilla (por ejemplo, {{name}}). Los valores representan el contenido que sustituye las variables en el correo electrónico. Esta objeto contiene datos alternativos. Si un Destination objeto contiene un JSON objeto vacío en la ReplacementTemplateData propiedad, se utilizan los valores de la DefaultTemplateData propiedad.

  2. Cambie los valores del código del paso anterior según sus necesidades y, a continuación, guarde el archivo como mybulkemail.json.

  3. En la línea de comandos, escriba el siguiente comando para enviar el correo masivo:

    aws ses send-bulk-templated-email --cli-input-json file://mybulkemail.json