Messaging infrastructure for developers.

A developer API for email, SMS, voice, and WhatsApp.
Running on the network that already carries 40% of the world's commercial messages.

Using Claude Code, Cursor, or Codex? Copy a setup prompt and your agent installs the Bird CLI and skills for you. Pick yours:

Des équipes qui créent des logiciels de classe mondiale nous font confiance au quotidien

Découvrir plus de témoignages clients

Intégrez-le directement.

Même structure, quelle que soit la stack.

SDKs in every major runtime. REST when you need it and SMTP coming soon. MCP for the agent on your shoulder.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import express from 'express';

import { BirdClient } from '@messagebird/sdk';

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

app.post('/welcome', async (req, res) => {
  await bird.email.send({
    from: 'onboarding@bird.dev',
    to: [req.body.email],
    subject: 'Welcome to Bird',
    html: '<p>You are in.</p>',
  });
  res.json({ sent: true });
});

01 Direct sending IPs / React Email rendering (Soon) / Managed warm-up

Send Email. HTML and plain text, React Email soon. Delivered on the network the ISPs already trust.

Lire la documentation Email

Direct sending IPs, managed warm-up, ISP-aware routing, SPF/DKIM/DMARC handled. Templates render in HTML and plain text; React Email coming soon.

email.tsx
200 · 1.2s
import { BirdClient } from '@messagebird/sdk';

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

await bird.email.send({
  from: 'onboarding@bird.dev',
  subject: 'Hello from Bird',
  html: '<p>Your first email is <strong>live</strong>.</p>',
});
View on Github
Per-ISP delivery breakdown
Per-message audit log

02 A2P 10DLC / Opérateurs Tier-1 / Fallback OTP vocal

SMS is being upgraded

Envoyez des SMS. Opérateurs Tier-1, plus de 190 pays, avec la conformité gérée pour vous.

A2P 10DLC, identifiants d'expéditeur alpha, enregistrement d'entité DLT — nous déposons ce que vous devez déposer. Routage intelligent par destination. Fallback OTP vocal quand le SMS se dégrade. Un code à 6 chiffres arrive en moins de trois secondes sur les lignes qui comptent.

sms.ts
200 · 0.4s
import { BirdClient } from '@messagebird/sdk';

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

await bird.sms.send({
  from: 'Bird',
  to: '+14155550182',
  text: 'Your Bird code is 482917.',
});

Today at 2:14 PM

Hey Ada — your Bird sign-in code is 482917. It'll expire in 10 minutes. Don't share it with anyone.
482917
Delivered
Demande 10DLC + vérification de marque en 48 h
Diversité de routage par destination
Fallback OTP vocal (activation par compte)
Tarification précise au segment dans la réponse

03 PSTN + SIP / TTS en streaming / flux déclaratifs

Voice is being upgraded

Utilisez Voice. Voix programmable, sur PSTN et SIP, avec un TTS qui ne sonne pas robotique.

Appels sortants et entrants. Flux déclaratifs JSON pour IVR. Enregistrement et transcription en direct. TTS en streaming dans trente langues avec un premier octet audio en moins de 250 ms — le modèle se charge avant que l'appel ne se connecte.

voice.ts
201 · 0.4s
import { BirdClient } from '@messagebird/sdk';

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

await bird.calls.create({
  from: '+14155550100',
  to: '+14155550182',
  flow: [{ say: 'Your verification code is four, eight, two...' }],
});

Bird Verify

+1 (415) 555-0182

Yourverificationcodeisfoureighttwonineoneseven.

TTS en streaming dans plus de 30 langues
Flux déclaratifs : say, gather, dial, transfer
Enregistrement + transcription en direct via WebSocket
Terminaison PSTN + SIP, BYOC pris en charge

04 Cloud API / messages modèles / réponses interactives

WhatsApp is being upgraded

Envoyez des WhatsApp. Cloud API officielle. Modèles, boutons interactifs et médias — sur le canal que trois milliards de personnes utilisent déjà.

Modèles pré-approuvés, messagerie de session et réponses interactives. Accusés de réception et de lecture sur chaque message. Un seul numéro, toutes les conversations — avec la même API typée que pour l'e-mail et le SMS.

whatsapp.ts
200 · 480ms
import { BirdClient } from '@messagebird/sdk';

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

await bird.whatsapp.send({
  to: '+14155550182',
  template: 'order_shipped',
  variables: { order: 'RG-29481', carrier: 'UPS' },
});

Order RG-29481 shipped

Hey Ada — your order is on the way. Carrier UPS, ETA Wednesday.

Track order
Contact support
9:42 AM
Accès officiel à la Cloud API
Messagerie modèle + session
Boutons et listes interactifs
Accusés de réception + de lecture

Nous sommes une équipe d'ingénieurs passionnés par la création d'outils pour d'autres ingénieurs.

Test mode, real-time webhooks, and an MCP server for the agent on your shoulder.

202 Accepted: { "id": "em_01kove1gv2hs72p4rq94zmt" }
202 Accepted: { "id": "em_01k50rmp0fe5kbyt8rah4ja" }
202 Accepted: { "id": "em_01km947y1ofmto7ilsfudgv" }
202 Accepted: { "id": "em_01k3eho76xg32xg32tk7idg" }
202 Accepted: { "id": "em_01kkju9g76dgb6psfupkna1" }
202 Accepted: { "id": "em_01k1o7qlcfexojyhwvqxw7i" }

Mode test. Simulez chaque état — livré, rejeté, signalé, en file d'attente — sans consommer de budget réel ni atteindre un vrai destinataire.

POST /webhooks/bird
15:42:16200sms.failed128ms
15:42:13500email.delivered42ms
15:42:10200whatsapp.read55ms
15:42:07200voice.completed91ms
15:42:04200sms.failed128ms
15:42:01200email.delivered42ms

Webhooks modulaires. Real-time event webhooks, per channel. email.delivered, sms.failed, voice.completed, whatsapp.read. HMAC-signed. Replay-protected. Same shape every channel.

MCP pour les agents. Connect Claude or Cursor to Bird's hosted MCP server, or run it locally with the bird CLI. Your agent gets typed tools across every channel — scoped keys, full audit, no leakage.

Cinq produits.

Une couche partagée.

Email, SMS, voice, WhatsApp, and Realtime — all built on the same primitives. Learn the platform once, ship across every channel.

Auth. One key format. Scoped to send vs. manage, read vs. write. Prefix + fingerprint so you know which key did what. Multiple keys live at once, so you rotate on your schedule.

Idempotence. Idempotency-Key on every POST, PATCH, and DELETE. Replays come back free and flagged. Reuse a key with a different body and you get a 409, not a surprise.

Erreurs. One envelope. One closed type union. Every code ships with a docs link and a message that tells you what to do.

Webhooks. Standard Webhooks spec: HMAC-SHA256, per-endpoint secrets, 5-minute replay window — verify with any off-the-shelf library. Rotate secrets with a 24-hour dual-signing overlap. Attempt logs and replay built in.

Pagination. Cursor-based. Stable order on every list, enforced by construction — no page drift, ever.

Rate limits. IETF RateLimit headers on every response — not just the 429. You can see your budget before you hit the wall, and Retry-After when you do.

Suppressions. Bounces, complaints, unsubscribes — managed automatically, queryable and editable via API. Transactional streams can bypass marketing unsubscribes. Idempotent by design.

Vos messages, bien reçus.

Signaux en temps réel sur le placement en boîte de réception, les taux de rebond et les volumes d'envoi — sur chaque canal, dans chaque région. Sans approximation.

Des messages commerciaux mondiaux, en volume, transitent par le réseau Bird.

40%

Pays avec des relations directes avec les opérateurs, une diversité de routes et une conformité locale assurée.

190+

À exploiter cette infrastructure. L'équipe qui l'a bâtie est celle qui développe l'API.

10 ans

Commencez avec un seul canal.
Ajoutez les autres quand vous êtes prêt.

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.

Using Claude Code, Cursor, or Codex? Copy a setup prompt and your agent installs the Bird CLI and skills for you. Pick yours: