Plantillas de correo
Personal por diseño. Listo en el momento de envío.
Crea plantillas de correo reutilizables con tu equipo o herramientas de IA. Publica una versión y personalízala con los datos del destinatario en el momento de envío. El panel, API, CLI y MCP trabajan con las mismas plantillas almacenadas.
Crea tu cuenta, luego crea una plantilla reutilizable y previsualiza su contenido.
Correo de bienvenida
Vista previa de plantilla
Gracias por unirte. Tu próximo capítulo empieza con un poco de inspiración.
first_name: "Alex"Versión publicadaUna plantilla publicada, personalizada con los valores de cada destinatario. Contenido de ejemplo; no se envía nada.
Almacena una plantilla. Personaliza en el envío.
El marcado ya está en Bird.
Las plantillas son parte de la Bird Email API. Almacena el diseño y su lógica una sola vez; cada envío nombra la plantilla por slug o id y pasa los valores que sus tokens necesitan. El mensaje final se renderiza en nuestro lado, así que la misma plantilla sirve para un recibo, un lote de cien o un envío masivo a toda una audiencia.
import { BirdClient } from "@messagebird/sdk";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
// No subject and no html: the template's published version supplies both.
const { data, error } = await bird.email
.send({
from: "orders@acme.com",
to: ["delivered@messagebird.dev"],
category: "transactional",
template: {
slug: "order-confirmation",
parameters: {
first_name: "Ada",
order_number: "A-1043",
},
},
})
.safe();
Más que buscar y reemplazar.
Liquid, resuelto en el lado de Bird cuando se genera el mensaje.
- 01
Condicionales.
Un bloque if de Liquid se muestra solo cuando su valor aplica, como una nota exclusiva para miembros o un banner de envío gratis, así una sola plantilla cubre ambos casos.
- 02
Bucles.
Un bucle for repite una fila por cada elemento en un array, así una sola plantilla de confirmación de pedido lista cada artículo que el cliente realmente compró. Un límite que conviene conocer de entrada: un envío masivo lleva un único valor por propiedad de contacto y no tiene nada que iterar, así que una plantilla con bucles se envía a través de la API de mensajes en lugar de un envío masivo.
- 03
Filtros.
Pasa un valor a través de un filtro de Liquid antes de renderizarlo. El filtro default captura un nombre faltante antes de que se envíe como un saludo vacío.
- 04
Parámetros con nombre y campos de contacto.
Usa nombres simples para tus propios parámetros, como order_number. Los campos reservados bird.contact leen las propiedades del destinatario. Las rutas de parámetros con puntos se rechazan al publicar.
- 05
Nada que declarar.
La lista de tokens se extrae de tu marcado y se combina en todos los idiomas, así que no hay un esquema de variables separado que mantener sincronizado con el cuerpo. Usa las formas de parámetros documentadas para tu flujo de envío; los envíos masivos están limitados a propiedades de contacto registradas.
Créala como ya trabajas.
Tres formas de entrada, todas llegando a la misma plantilla. El editor del panel es el visual. La bird CLI gestiona todo el ciclo de vida desde un script o un paso de despliegue, y un agente accede a las mismas operaciones a través de MCP. ¿Ya tienes componentes de React Email? Renderízalos a HTML y almacena el resultado, dejando los tokens de Bird como texto literal en el JSX para que sobrevivan al renderizado en lugar de quedar fijados con un valor cuando React se ejecuta.
# Render React Email to HTML, then publish it as a template version.
node scripts/render-receipt.mjs > receipt.json
bird email templates create receipt --category transactional --source html
bird email templates versions languages set "$TEMPLATE" "$DRAFT" en \
--body-file receipt.json --yes
# --validate-only reports every problem across every language, freezing nothing.
bird email templates versions submit "$TEMPLATE" "$DRAFT" --validate-only --yes
bird email templates versions submit "$TEMPLATE" "$DRAFT" --yes
Versionada, como el resto de tu código.
La edición ocurre en un borrador y nunca toca lo que está en producción, porque un envío siempre resuelve la versión publicada actual y los borradores nunca se envían. Publicar congela una versión inmutable y numerada y la pone en producción; si un cambio sale mal, revierte a una anterior. Los guardados llevan la revisión que leíste por última vez, así que si un compañero cambió ese idioma mientras tanto, el guardado se rechaza como conflicto en lugar de sobrescribir su trabajo. Las estadísticas de entrega e interacción se desglosan por plantilla, para que puedas ver cuál está funcionando realmente.
Una plantilla, hasta 25 idiomas.
Una plantilla lleva contenido en hasta 25 idiomas, cada uno con su propio asunto y cuerpo, identificado por una etiqueta BCP-47 como en o pt-BR. Un envío indica el idioma que quiere, o lo omite y obtiene el predeterminado de la plantilla. Cuando un envío solicita un idioma que la plantilla no tiene, on_missing_language decide qué ocurre: fallback sirve la coincidencia más cercana, así que una solicitud de pt-BR se responde con un pt disponible, y fail rechaza el envío directamente, para contenido donde el idioma incorrecto es peor que no enviar nada.
Previsualiza exactamente lo que se enviará.
Llena una plantilla con valores de ejemplo y obtén de vuelta el asunto y los cuerpos HTML y texto que un envío entregaría. La vista previa renderiza el borrador, que es cómo verificas un cambio antes de publicarlo, o una versión publicada cuando quieres ver qué se está enviando ahora mismo. No se envía nada. También ejecuta las mismas validaciones de personalización que la publicación, así que una construcción que sería rechazada aparece aquí primero.
Empieza con un borrador reutilizable.
Empieza con el editor del panel o copia una plantilla prediseñada en un borrador editable. Revisa el asunto, el texto de vista previa, el idioma y los valores por defecto de contacto antes de publicar. Mantén la versión publicada estable mientras preparas el siguiente cambio.
Profundiza en la documentación.
La guía de plantillas cubre borradores, versiones publicadas, contenido por idioma y las reglas de Liquid. La guía de envío tiene el contrato del lado de envío, y eventos de email y webhooks pone en marcha el flujo de aperturas y clics.
Ponlo en práctica.
Continúa con la documentación, guías y ejemplos sobre este tema. Los recursos están en inglés.
Preguntas sobre plantillas
¿Tengo que usar un editor visual?
¿Cómo funciona la personalización?
¿Puedo revertir una plantilla?
¿Puede una plantilla servir para varios idiomas?
Pon tu plantilla a trabajar
Crea una plantilla que puedas reutilizar.
Almacena, versiona y personaliza plantillas en la misma API de correo que se encarga del envío, la entregabilidad, la supresión y la analítica. Un solo conjunto de claves.
Crea tu cuenta, luego crea una plantilla reutilizable y previsualiza su contenido.