BIRD Email
L'API Email pour les développeurs qui envoient aussi le reste du message.
E-mails transactionnels et marketing sur la même infrastructure que vos SMS, appels vocaux et WhatsApp. Environ 40 % des e-mails commerciaux dans le monde transitent par le réseau Bird. Nous faisons ça depuis dix ans. Lors du week-end du Black Friday 2025, nous avons traité 19,9 milliards d'e-mails.
import { BirdClient } from "@messagebird/sdk";
import { render } from "@react-email/render";
import { WelcomeEmail } from "./emails/welcome";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
const { data, error } = await bird.email.send({
from: "Bird <hello@bird.com>",
to: ["ada@example.com"],
subject: "Your invite is ready",
html: await render(<WelcomeEmail name="Ada" />),
}).safe();
if (error) throw error;
console.log(data.id);
// → "em_2bX91Yk8h..."
You can sign in any time at bird.com/login.
Your test API key is on your dashboard, ready to send.
5 minutes entre npm install et le premier envoi
Envoyez un e-mail dans le langage que vous utilisez déjà.
Des SDK dans tous les principaux runtimes. Le premier envoi peut être adressé à une adresse de test dédiée (delivered@messagebird.dev), ce qui vous permet de développer sur l'API live (envois, webhooks, tout le flux) avant même de vérifier un domaine.
const msg = await bird.email.send({
from: { email: "onboarding@messagebird.dev", name: "Bird" },
to: ["delivered@messagebird.dev"],
subject: "Hello from Bird",
html: "<p>My first Bird email.</p>",
});
console.log(msg.id, msg.status); // "em_…", "accepted"Dix aspects de l'e-mail qui
ne sont plus votre problème.
Primitives de délivrabilité et opérationnelles,
nommées et auditables.
- 01
Signé en périphérie.
Three records to publish: DKIM, a return-path CNAME, and a DMARC policy. The CNAME covers SPF too, so nothing has to go on your domain apex.
- 02
An audit before you send a byte.
Point the audit tool at any domain and it resolves the live DMARC, SPF, DKIM, BIMI, and MX records, grades how they work together, and ranks what to fix. No account needed.
- 03
IP dédiées managées.
Provisionnées par compte et préchauffées automatiquement sur environ 30 jours, organisées en pools que vous contrôlez.
- 04
Liste de suppression dynamique.
Rebonds, plaintes et désinscriptions suppriment le destinataire automatiquement et de manière réversible.
- 05
No polling to verify a domain.
Add a domain, publish the records, and Bird re-checks on its own until they resolve, usually within minutes of DNS propagating. There's a verify call if you want an answer right now.
- 06
Stored templates, or your own HTML.
Name a stored template and Bird renders it with Liquid, or render React Email to HTML in your app and pass the result.
- 07
Journal d'e-mails consultable.
Chaque message envoyé est journalisé avec ses événements de livraison et son statut. Interrogez n'importe quel e-mail par son ID.
- 08
Des métriques de délivrabilité, détaillées.
Codes de rejet, types de plaintes, et répartition par fournisseur de messagerie et par client, ventilés par domaine, FAI et IP, dans le dashboard et via l'API de statistiques.
- 09
Parsing entrant.
Take a Bird-generated forwarding address, or publish MX records on a subdomain you own. Either way the mail arrives as a signed webhook you can thread.
- 10
Envoi par lot jusqu'à 100.
Jusqu'à 100 messages indépendants par appel, chacun avec son propre destinataire et ses variables. Une seule clé d'idempotence couvre le lot.
Explorer la plateforme Email
Chaque capacité en profondeur. Une seule API, un seul jeu de clés.
Délivrabilité.
Authentification, préchauffage d'IP, suppression et surveillance des blocklists.
Analytique.
Métriques de livraison et d'engagement, par domaine, ISP et IP.
Envoi.
E-mails transactionnels et marketing, modèles et envois par lot.
Modèles.
Modèles d''e-mail stockés et versionnés, personnalisés pour chaque destinataire à l''envoi.
IP dédiées.
IP dédiées et pools gérés, préchauffés automatiquement.
Domaines d'envoi.
Vérification de domaine, signature DKIM/SPF/DMARC et surveillance DMARC.
Suppressions.
Suppression automatique et réversible des rejets, plaintes et désabonnements.
Diffusions.
Campagnes marketing : rédigez, ciblez une audience, planifiez et envoyez.
Audiences.
Vos contacts et les audiences que vous ciblez depuis un broadcast.
Boîtes mail agents.
Une vraie boîte de réception contrôlée par votre code. Revendiquez une adresse, recevez les e-mails sous forme de fils de discussion et répondez via l'API.
Pourquoi nous développons l'e-mail
Parce que vos codes de vérification ne devraient pas vivre chez un fournisseur différent de vos accusés de réception.
L'e-mail n'est pas un produit isolé ; c'est un canal parmi d'autres dans un flux. Les codes d'authentification partent par e-mail et basculent en SMS en cas d'échec. Les reçus sont envoyés par WhatsApp quand le client le préfère. Bird Email est le seul dont l'API, les webhooks et le contrat d'idempotence correspondent à tous les autres canaux, parce que la même équipe d'ingénierie les a tous construits sur le même réseau.
import { BirdClient } from "@messagebird/sdk";
import { render } from "@react-email/render";
import { WelcomeEmail } from "./emails/welcome";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
const { data, error } = await bird.email.send({
from: "Bird <hello@bird.com>",
to: ["ada@example.com"],
subject: "Your invite is ready",
html: await render(<WelcomeEmail name="Ada" />),
}).safe();
if (error) throw error;
console.log(data.id);
// → "em_2bX91Yk8h..."
You can sign in any time at bird.com/login.
Your test API key is on your dashboard, ready to send.
Chaque changement d'état est un webhook.
Charges utiles signées en HMAC, protégées contre le rejeu, idempotentes. La même enveloppe signée sur chaque canal Bird, si bien que le handler que vous écrivez pour l'e-mail parse déjà vos événements SMS et WhatsApp.
{
"type": "email.delivered",
"timestamp": "2026-05-19T15:42:01.221Z",
"data": {
"email_id": "em_01krdgeqcxet5s7t44vh8rt9mg",
"recipient_id": "er_01krdgeqcxet5s7t44vh8rt9mg",
"workspace_id": "ws_01krdgeqcxet5s7t44vh8rt9mg",
"recipient": "ada@example.com",
"recipient_role": "to",
"tags": [{ "name": "campaign", "value": "spring-2026" }],
"metadata": { "order_id": "ord_5512" }
}
}
Eight attempts over roughly 27.5 hours, backing off 5s, 5m, 30m, 2h, 5h, 10h, 10h with 20% jitter so retries don't synchronize. Every attempt reuses the same webhook-id, which is what makes your deduplication check work. After the last one the delivery is permanently failed, and a replay call recovers it.
email.acceptedThe send was accepted and is being prepared for delivery.email.processedQueued for the recipient's mail server.email.deliveredThe recipient's mail server accepted the message.email.openedThe recipient opened the message. Can fire more than once.email.clickedThe recipient clicked a tracked link.email.bouncedPermanently failed: bounce type and SMTP code in the payload.email.complainedThe recipient reported the message as spam.email.unsubscribedThe recipient opted out through a tracked unsubscribe link.email.list_unsubscribedThe recipient used their mail client's one-click unsubscribe.
Si vous avez intégré l'e-mail, vous avez intégré le SMS.
Même modèle d'authentification, même contrat d'idempotence, même enveloppe d'erreur, même forme de webhook. La différence tient à ce que chacun fait, pas à la façon dont vous l'appelez.
Domaine vérifié, signature en périphérie, gestion des suppressions intégrée. Rendez du React ou transmettez du HTML brut.
await bird.email.send({
from: "hello@bird.com",
to: ["ada@example.com"],
subject: "Your code",
html: `<p>Code: ${code}</p>`,
});
SMS
Même enveloppe, même idempotence, même registre de types d'erreurs. Le transport est la seule différence.
await bird.sms.send({
from: "Bird",
to: "+14155550172",
text: `Your code is ${code}.`,
category: "authentication",
});
Tarifs
À partir de 0,30 $ par 1 000 e-mails
Démarrez gratuitement : 1 000 e-mails par mois, sans carte. Les forfaits payants commencent à $15 pour 50 K, et le tarif par message Growth continue de baisser à mesure que vous montez en charge jusqu'à 2,5 M. Pas de frais de plateforme, pas de frais par siège, aucune fonctionnalité de palier verrouillée derrière un engagement annuel.