BIRD Email

API e-mail dla programistów, którzy wysyłają też resztę wiadomości.

lub

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 minut od npm install do pierwszej wysyłki

Wyślij e-mail w języku programowania, którego już używasz.

SDK dla każdego popularnego środowiska uruchomieniowego. Pierwsza wysyłka trafia do zatwierdzonego odbiorcy testowego (delivered@bird.dev), więc możesz dodać test CI, zanim zweryfikujesz domenę.

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.

Dostarczalność i podstawowe narzędzia operacyjne, named and audit-able.

  1. 01

    Podpisywane na brzegu sieci.

    DKIM, SPF, DMARC i BIMI podpisane dla każdej zweryfikowanej domeny nadawczej.

  2. 02

    Proaktywne monitorowanie list blokad.

    Monitoring na żywo w głównych bazach DNSBL; alerty, zanim spadnie wskaźnik otwarć.

  3. 03

    Zarządzane dedykowane adresy IP.

    Przydzielane per konto, rozgrzewane automatycznie przez 21 dni, wymieniane na gorąco, gdy nadawca straci reputację.

  4. 04

    Dynamiczna lista wykluczeń.

    Odbicia, skargi i wypisania automatycznie i odwracalnie blokują odbiorcę.

  5. 05

    Weryfikacja DNS w 60 s.

    Dodaj domenę, wklej rekordy, kliknij weryfikuj. Większość weryfikacji kończy się w mniej niż minutę.

  6. 06

    Szablony React Email.

    Renderowane po stronie serwera w SDK. Przekaż komponent React jako treść; renderujemy MIME w momencie wysyłki.

  7. 07

    Publiczny link udostępniania dla każdego e-maila.

    Każdy wysłany e-mail otrzymuje 48-godzinny publiczny URL do zrzutów ekranu, zgłoszeń i raportów o błędach.

  8. 08

    Czterdzieści dwie metryki dostarczalności.

    Na domenę, na ISP, na IP — widoczne w dashboardzie i przez API diagnostyczne.

  9. 09

    Parsowanie wiadomości przychodzących.

    Webhooki podpisane HMAC na adres odbiorcy. Parsuj odpowiedzi; buduj aplikacje z wątkami.

  10. 10

    Wysyłka wsadowa do 500.

    Odrębni odbiorcy na jedno wywołanie, każdy ze swoimi zmiennymi. Jeden klucz Idempotency-Key obejmuje całą partię.

Dlaczego budujemy e-mail

Bo Twoje kody weryfikacyjne nie powinny żyć u innego dostawcy niż potwierdzenia doręczenia.

E-mail nie jest osobnym produktem — to jeden kanał w przepływie. Kody uwierzytelniające zaczynają jako e-mail i przełączają się na SMS. Potwierdzenia wysyłane są przez WhatsApp, gdy klient tego woli. Bird Email to rozwiązanie, którego API, webhooki i kontrakt idempotencji pasują do każdego innego kanału — bo ten sam zespół inżynierów zbudował je wszystkie, na tych samych łączach, które obsługujemy od dekady.

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..."

Każda zmiana stanu to webhook.

Ładunki podpisane HMAC, chronione przed ponownym odtworzeniem, idempotentne. Ta sama koperta na każdym kanale Bird — poznaj jeden, znasz je wszystkie.

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
  }
}

Harmonogram ponowień: 5s, 30s, 5m, 30m, 2h, 6h, 12h. Przeniesienie do dead-letter po ostatniej próbie; każde zdarzenie dead-letter można ponownie odtworzyć z dashboardu lub API.

  • email.queuedZaakceptowane przez API i umieszczone w kolejce do wysyłki.
  • email.sentPrzekazane do odbierającego MTA.
  • email.deliveredOdbierający MTA zaakceptował wiadomość.
  • email.openedPiksel śledzący pobrany (jeśli śledzenie włączone).
  • email.clickedKliknięto śledzony link.
  • email.bouncedMiękkie lub twarde odbicie — kod odbicia w ładunku.
  • email.complainedOdbiorca oznaczył wiadomość jako spam.
  • email.unsubscribedOdbiorca użył nagłówka list-unsubscribe.
  • email.failedTrwały błąd przed wysyłką.

Jeśli zintegrowałeś e-mail, zintegrowałeś SMS.

Ten sam model autoryzacji, ten sam kontrakt idempotencji, ta sama koperta błędów, ten sam format webhooków. Różnica polega na tym, co każdy z nich robi — nie jak go wywołujesz.

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}.`,
});

Cennik

Od 1,50 $ za 1000 e-maili

Rozliczenie według zużycia. Rabaty ilościowe włączają się automatycznie powyżej 100 tys./mies. i ponownie powyżej 10 mln/mies. Bez opłaty za platformę, bez opłaty za stanowisko, bez funkcji zablokowanych za rocznym zobowiązaniem.

Codziennie zaufany przez zespoły tworzące oprogramowanie światowej klasy

Zacznij od jednego kanału.
Dodaj kolejne, gdy będziesz gotowy.

Testowy klucz API otrzymasz od razu. Dostęp produkcyjny odblokujesz po dodaniu metody płatności i weryfikacji nadawcy.

RozpocznijPrzeczytaj dokumentacjęlub

Using Claude Code, Cursor, or Codex? Point it at our hosted MCP server: curated Bird tools, a browser sign-in, and no API key. Or install the bird-ai plugin.

Cursor