BIRD Email
L'API Email per sviluppatori che inviano anche il resto del messaggio.
Email transazionali e di marketing sulla stessa infrastruttura che gestisce SMS, voce e WhatsApp. Circa il 40% delle email commerciali mondiali transita sulla rete Bird. Siamo in questo settore da un decennio. Durante il weekend del Black Friday 2025 abbiamo elaborato 19,9 miliardi di email.
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 minuti con npm install al primo invio
Invia un'email dal linguaggio che già utilizzi.
SDK per ogni runtime principale. Il primo invio puo essere indirizzato a un indirizzo di test dedicato (delivered@messagebird.dev), cosi puoi sviluppare sull'API live (invii, webhook, l'intero flusso) prima di verificare un dominio.
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"Dieci aspetti dell'email che
non sono più un vostro problema.
Primitive di deliverability e operative,
nominati e verificabili.
- 01
Firma all'edge.
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 dedicati gestiti.
Forniti per account e riscaldati automaticamente nell'arco di circa 30 giorni, organizzati in pool che controlli tu.
- 04
Lista di soppressione dinamica.
Bounce, reclami e disiscrizioni sopprimono il destinatario automaticamente e in modo reversibile.
- 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
Log delle email ricercabile.
Ogni messaggio inviato viene registrato con i relativi eventi di consegna e lo stato. Interroga qualsiasi email tramite ID.
- 08
Metriche di deliverability, dettagliate.
Codici di bounce, tipi di reclamo e suddivisioni per provider di posta e client, ripartiti per dominio, ISP e IP, nella dashboard e tramite l'API delle statistiche.
- 09
Parsing in entrata.
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
Invio in batch fino a 100.
Fino a 100 messaggi indipendenti per chiamata, ciascuno con il proprio destinatario e le proprie variabili. Una sola chiave di idempotenza copre l'intero batch.
Esplora la piattaforma Email
Ogni funzionalita in dettaglio. Un'unica API, un unico set di chiavi.
Recapitabilità.
Autenticazione, warmup degli IP, soppressione e monitoraggio delle blocklist.
Analisi.
Metriche di consegna e di engagement, per dominio, ISP e IP.
Invio.
Email transazionali e marketing, template e invii in batch.
Template.
Template email memorizzati e con versioni, personalizzati per ogni destinatario al momento dell'invio.
IP dedicati.
IP dedicati e pool gestiti, riscaldati automaticamente.
Domini di invio.
Verifica del dominio, firma DKIM/SPF/DMARC e monitoraggio DMARC.
Soppressioni.
Soppressione automatica e reversibile di bounce, reclami e disiscrizioni.
Broadcast.
Campagne di marketing: redigi, scegli un pubblico, pianifica e invia.
Pubblico.
I tuoi contatti e i pubblici a cui ti rivolgi da un broadcast.
Caselle di posta agente.
Una vera casella di posta gestita dal vostro codice. Richiedete un indirizzo, ricevete le email in thread e rispondete tramite API.
Perché sviluppiamo l'email
Perché i tuoi codici di verifica non dovrebbero trovarsi su un fornitore diverso dalle tue ricevute di consegna.
L'email non e un prodotto a se; e un canale all'interno di un flusso. I codici di autenticazione partono come email e ripiegano su SMS. Le ricevute vengono inviate via WhatsApp quando il cliente lo preferisce. Bird Email e quello la cui API, i cui webhook e il cui contratto di idempotenza corrispondono a ogni altro canale, perche lo stesso team di ingegneria li ha costruiti tutti sulla stessa rete.
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.
Ogni cambio di stato è un webhook.
Payload firmati in HMAC, protetti dai replay, idempotenti. La stessa busta firmata su ogni canale Bird, cosi l'handler che scrivi per l'email gia analizza i tuoi eventi SMS e 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.
Se hai integrato l'email, hai integrato gli SMS.
Stesso modello di autenticazione, stesso contratto di idempotenza, stessa busta di errore, stessa forma del webhook. La differenza sta in cosa fa ciascuno, non in come lo chiami.
Dominio verificato, firma all'edge, gestione delle soppressioni integrata. Renderizza con React o invia HTML grezzo.
await bird.email.send({
from: "hello@bird.com",
to: ["ada@example.com"],
subject: "Your code",
html: `<p>Code: ${code}</p>`,
});
SMS
Stesso envelope, stessa idempotenza, stesso registro dei tipi di errore. Il trasporto è l'unica differenza.
await bird.sms.send({
from: "Bird",
to: "+14155550172",
text: `Your code is ${code}.`,
category: "authentication",
});
Prezzi
A partire da 0,30$ ogni 1.000 email
Inizia gratis: 1.000 email al mese, senza carta. I piani a pagamento partono da $15 per 50K, e la tariffa per messaggio del piano Growth continua a calare man mano che scali fino a 2,5M. Nessun costo di piattaforma, nessun costo per postazione, nessuna funzionalita di livello bloccata dietro impegni annuali.