BIRD Email

Die E-Mail-API für Entwickler, die auch den Rest der Nachricht versenden.

oder

Transactional and marketing email on the same infrastructure that carries your SMS, voice, and WhatsApp. About 40% of the world's commercial email transits the Bird network — we've been at this a decade. 99.99% SLA on Email specifically.

welcome.tsx
200 · 1.2s
import { BirdClient } from "@bird/sdk";
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",
  react:   <WelcomeEmail name="Ada" />,
}).safe();

if (error) throw error;
console.log(data.id);
// → "email_2bX91Yk8h..."

5 Minuten von npm install bis zum ersten Versand

Senden Sie eine E-Mail in der Sprache, die Sie bereits verwenden.

SDKs für jede gängige Runtime. Der erste Versand geht an einen freigegebenen Testempfänger (delivered@bird.dev), damit Sie einen CI-Check einrichten können, bevor Sie eine Domain verifizieren.

1
2
3
4
5
6
7
8
9
10
import { BirdClient } from "@bird/sdk";

const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });

const { data, error } = await bird.email.send({
  from:    "you@yourdomain.com",
  to:      ["delivered@bird.dev"],
  subject: "Hello from Node",
  html:    "<p>It works.</p>",
}).safe();

Ten parts of email that aren't your problem anymore.

Deliverability and operational primitives, named and audit-able.

  1. 01

    Signed at the edge.

    DKIM, SPF, DMARC und BIMI signiert für jede verifizierte Absenderdomain.

  2. 02

    Proactive blocklist tracking.

    Live-Monitoring über die wichtigsten DNSBLs; Warnungen, bevor die Öffnungsrate sinkt.

  3. 03

    Managed dedicated IPs.

    Pro Account bereitgestellt, automatisch über 21 Tage aufgewärmt, bei Reputationsverlust des Absenders sofort ausgetauscht.

  4. 04

    Dynamic suppression list.

    Bounces, Beschwerden und Abmeldungen unterdrücken den Empfänger automatisch und reversibel.

  5. 05

    DNS verification in 60s.

    Domain hinzufügen, Einträge einfügen, auf Verifizieren klicken. Die meisten Verifizierungen sind in unter einer Minute abgeschlossen.

  6. 06

    React Email templates.

    Serverseitig im SDK gerendert. Übergeben Sie eine React-Komponente als Body; wir rendern die MIME beim Senden.

  7. 07

    Public share link per email.

    Jede gesendete E-Mail erhält eine 48-Stunden-URL für Screenshots, Tickets und Bug-Reports.

  8. 08

    Forty-two deliverability metrics.

    Pro Domain, pro ISP, pro IP — im Dashboard und über die Diagnostics-API verfügbar.

  9. 09

    Inbound parsing.

    HMAC-signierte Webhooks pro Empfängeradresse. Antworten parsen; Thread-basierte Apps bauen.

  10. 10

    Batch send up to 500.

    Individuelle Empfänger pro Aufruf, jeder mit eigenen Variablen. Ein Idempotency-Key deckt den gesamten Batch ab.

Why we build email

Weil Ihre Verifizierungscodes nicht bei einem anderen Anbieter liegen sollten als Ihre Zustellbestätigungen.

E-Mail ist kein eigenständiges Produkt — es ist ein Kanal in einem Flow. Auth-Codes starten als E-Mail und fallen auf SMS zurück. Belege werden per WhatsApp versendet, wenn der Kunde es bevorzugt. Bird Email ist die Lösung, deren API, Webhooks und Idempotency-Vertrag zu jedem anderen Kanal passen — weil dasselbe Engineering-Team sie alle gebaut hat, auf denselben Leitungen, die wir seit einem Jahrzehnt betreiben.

welcome.tsx
200 · 1.2s
import { BirdClient } from "@bird/sdk";
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",
  react:   <WelcomeEmail name="Ada" />,
}).safe();

if (error) throw error;
console.log(data.id);
// → "email_2bX91Yk8h..."

Jede Statusänderung ist ein Webhook.

HMAC-signierte Payloads, Replay-geschützt, idempotent. Dasselbe Envelope auf jedem Bird-Kanal — einen lernen, alle kennen.

POST /webhooks/bird
signed
{
  "type": "email.delivered",
  "id":   "evt_3nB91x...",
  "created_at": "2026-05-19T15:42:01.221Z",
  "data": {
    "email_id": "email_2bX91Yk8h",
    "from":     "hello@bird.com",
    "to":       "ada@example.com",
    "subject":  "Your invite is ready",
    "isp":      "gmail",
    "latency_ms": 1842
  }
}

Retry-Plan: 5s, 30s, 5m, 30m, 2h, 6h, 12h. Dead-Letter nach dem letzten Versuch; jedes Dead-Letter-Event kann über das Dashboard oder die API erneut abgespielt werden.

  • email.queuedVon der API akzeptiert und zum Versand eingereiht.
  • email.sentAn den empfangenden MTA übergeben.
  • email.deliveredDer empfangende MTA hat die Nachricht akzeptiert.
  • email.openedTracking-Pixel abgerufen (falls Tracking aktiviert).
  • email.clickedEin getrackter Link wurde geklickt.
  • email.bouncedSoft- oder Hard-Bounce — Bounce-Code im Payload.
  • email.complainedEmpfänger hat die Nachricht als Spam markiert.
  • email.unsubscribedEmpfänger hat den List-Unsubscribe-Header verwendet.
  • email.failedPermanenter Fehler vor dem Versand.

Wenn Sie E-Mail integriert haben, haben Sie auch SMS integriert.

Gleiches Auth-Modell, gleicher Idempotency-Vertrag, gleiches Error-Envelope, gleiche Webhook-Struktur. Der Unterschied liegt in der Funktion — nicht im Aufruf.

Email

Verified domain, signed at the edge, suppression-aware. Render React or pass raw HTML.

order-shipped.tsx
await bird.email.send({
  from:    "hello@bird.com",
  to:      ["ada@example.com"],
  subject: "Your code",
  html:    `<p>Code: ${code}</p>`,
});

SMS

Same envelope, same idempotency, same error type registry. The transport is the only difference.

order-shipped.tsx
await bird.sms.send({
  from: "Bird",
  to:   "+14155550172",
  text: `Your code is ${code}.`,
});

Pricing

From $1.50 per 1,000 emails

Abrechnung nach Verbrauch. Mengenrabatte greifen automatisch ab 100K/Monat und erneut ab 10M/Monat. Keine Plattformgebühr, keine Lizenzgebühr pro Nutzer, keine Features hinter Jahresverträgen gesperrt.

Trusted every day by teams that build world-class software

Starten Sie mit einem Kanal.
Fügen Sie die anderen hinzu, wenn Sie bereit sind.

Ein Test-API-Key steht Ihnen sofort zur Verfügung. Der Produktivzugang wird freigeschaltet, sobald Sie eine Zahlungsmethode hinzufügen und einen Absender verifizieren.

Jetzt startenDokumentation lesenoder

Using Claude Code, Cursor, or Codex? Point it at our MCP server — tools for every channel we expose, with scoped agent keys.

Cursor