Use a published template.
Create and preview the design, publish the intended version, then pass recipient values at send time. Publishing content and sending a message are separate steps.
Build a stored template ↗Create a recognisable starting point for each message. Publish reusable designs, supply customer values, and bring the same care to campaigns and application email.
Make a receipt or welcome email feel personal. Change the example customer details, compare versions and preview the message on a smaller screen.
A required value is missing. Supply the named single-send parameters before sending; an omitted required parameter returns 422.
Enter a complete HTTPS destination and validate it in your application before supplying the value.
Draft preview. An edit does not change published v1. Publish deliberately before using a new version.
Published v1 preview. This browser layout is illustrative; test HTML and text in your target email clients.
Hi Alex,
Your next chapter starts here.
Order FN-1042 is confirmed. Total: €42.00.
Use the short-lived link to reset access. Ignore this message if you did not request it.
{
"first_name": "Alex",
"account_url": "https://example.com/account"
}These are single-send parameters, not a complete API request. Broadcast personalization uses contact fields. Render React Email to HTML before storing its content.
Companies that trust Bird across their communications.
Read Bird customer storiesCreate and preview the design, publish the intended version, then pass recipient values at send time. Publishing content and sending a message are separate steps.
Build a stored template ↗HTML is the stored content. Render React Email to HTML before storage or submission, and check the supported variables before changing a template used by an application.
Send application email ↗Donnez à chaque message votre empreinte
Un message de bienvenue, une newsletter, une confirmation de commande. Offrez à chaque moment son propre design, avec le même workflow de templates en coulisses.
Notes de la côteAccueillez quelqu'un par son nom et donnez-lui une raison de revenir.
Notes de la côteIntégrez vos photos, votre ton éditorial et une mise en page réutilisable dans chaque campagne.
Merci, Alex. Nous préparons votre commande.

Transformez les données de commande en une confirmation à l'image de votre marque.
Des maquettes montrant ce que vous pouvez créer avec votre propre contenu.
Preview and download HTML email templates ↗Les templates font partie de l<hub>API Email de Bird</hub>. Stockez la mise en page et sa logique une seule fois ; chaque envoi désigne le template par slug ou id et transmet les valeurs dont ses tokens ont besoin. Le message final est rendu de notre côté, de sorte que le même template convient à un reçu unique, un lot de cent ou une diffusion à toute une audience.
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();
Liquid, résolu côté Bird au moment de la génération du message.
Un bloc Liquid if ne s'affiche que lorsque sa valeur s'applique, comme une note réservée aux membres ou une bannière de livraison gratuite, de sorte qu'un seul template couvre les deux cas.
Une boucle for répète une ligne pour chaque élément d'un tableau, de sorte qu'un seul template de confirmation de commande liste chaque article réellement acheté par le client. Une limite à connaître d'emblée : une diffusion ne porte qu'une seule valeur par propriété de contact et n'a rien à itérer, donc un template avec des boucles s'envoie via l'API messages plutôt que par diffusion.
Pipe a value through a Liquid filter before it renders. The default filter can give an explicitly empty first name a natural greeting. Include required named parameters in the send request; omitting one returns 422.
Utilisez des noms simples pour vos propres paramètres, par exemple order_number. Les champs réservés bird.contact lisent les propriétés du destinataire. Les chemins de paramètres avec points sont rejetés à la publication.
La liste de tokens est extraite de votre balisage et combinée pour toutes les langues : il n'y a pas de schéma de variables distinct à synchroniser avec le corps. Utilisez les formats de paramètres documentés pour votre flux d'envoi ; les diffusions sont limitées aux propriétés de contact enregistrées.
Trois points d'entrée, tous menant au même template. Le builder du tableau de bord est l'option visuelle. Le bird CLI pilote tout le cycle de vie depuis un script ou une étape de déploiement, et un agent accède aux mêmes opérations via MCP. Vous avez déjà des composants React Email ? Rendez-les en HTML et stockez le résultat, en laissant les tokens de Bird sous forme de texte littéral dans le JSX pour qu'ils survivent au rendu au lieu d'être figés en valeur lors de l'exécution de React.
# 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
Create the template through CLI or MCP, inspect its version and use the published content when sending. Follow the template guide from the first draft through publication.
Un workflow créatif fiable
Les modifications se font sur un brouillon et ne touchent jamais ce qui est en production, car un envoi résout toujours la version publiée en cours et les brouillons ne sont jamais envoyés. La publication fige une version immuable et numérotée et la met en production ; si un changement tourne mal, revenez à une version antérieure. Les sauvegardes portent la révision que vous avez lue en dernier, de sorte que si un collègue a modifié cette langue entre-temps, la sauvegarde est refusée comme conflit au lieu d'écraser son travail. Les statistiques de livraison et d'engagement sont ventilées par template, pour que vous puissiez voir lequel fonctionne réellement.
Un template porte du contenu dans jusqu'à 25 langues, chacune avec son propre objet et corps, indexée par un tag BCP-47 comme en ou pt-BR. Un envoi nomme la langue souhaitée, ou l'omet et obtient la langue par défaut du template. Quand un envoi demande une langue que le template ne possède pas, on_missing_language décide du comportement : fallback sert la correspondance la plus proche, de sorte qu'une requête pour pt-BR reçoit un pt disponible, et fail rejette l'envoi purement et simplement, pour les contenus où la mauvaise langue est pire que pas d'envoi du tout.
Remplissez un template avec des valeurs d'exemple et obtenez en retour l'objet ainsi que les corps HTML et texte qu'un envoi livrerait. L'aperçu rend le brouillon, ce qui vous permet de vérifier une modification avant sa mise en production, ou une version publiée quand vous voulez voir ce qui part actuellement. Rien n'est envoyé. Il exécute aussi les mêmes vérifications de personnalisation que la publication, de sorte qu'une construction qui serait rejetée apparaît ici en premier.
Commencez avec l'éditeur du tableau de bord ou copiez un modèle intégré dans un brouillon modifiable. Vérifiez l'objet, le texte d'aperçu, la langue et les valeurs de repli des contacts avant de publier. Gardez la version publiée stable pendant que vous préparez la modification suivante.
Le guide des templates couvre les brouillons, les versions publiées, le contenu par langue et les règles Liquid. Le guide d'envoi décrit le contrat côté envoi, et événements e-mail et webhooks vous permet de récupérer les ouvertures et les clics.
Poursuivez avec la documentation, les guides et les exemples sur ce sujet. Les ressources sont en anglais.
Review variables, languages and a version change with a recovery record.
Utilisez votre contenu réutilisable dans une campagne conçue autour de votre audience.
Campagnes marketing : rédigez, ciblez une audience, planifiez et envoyez.
E-mail transactionnel et marketing, modèles et envois par lots.
Parlez à notre équipe e-mail
Échangez sur votre workflow de templates, la personnalisation et l'intégration. Nous vous aiderons à planifier la façon dont votre équipe crée et envoie des e-mails avec Bird.
Créez votre compte, puis créez un modèle réutilisable et prévisualisez son contenu.
Une clé API de test est disponible immédiatement. L'accès production se débloque dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.
Lire la doc