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:

Equipos que crean software de primer nivel confían en nosotros cada día

Leer más historias de clientes

Intégralo de una vez.

La misma forma, en cada 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.

Leer documentación de 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 / Operadores Tier-1 / Respaldo de OTP por voz

SMS is being upgraded

Envía SMS. Operadores Tier-1, más de 190 países, con la carga de cumplimiento normativo resuelta por ti.

A2P 10DLC, IDs de remitente alfa, registro de entidad DLT — nosotros gestionamos lo que tú tienes que presentar. Enrutamiento inteligente por destino. Respaldo de OTP por voz cuando el SMS falla. Un código de 6 dígitos llega en menos de tres segundos en las líneas que importan.

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
Solicitud 10DLC + verificación de marca en 48 h
Diversidad de rutas por destino
Respaldo de OTP por voz (activación opcional por cuenta)
Precios exactos por segmento en la respuesta

03 PSTN + SIP / TTS en streaming / flujos declarativos

Voice is being upgraded

Usa Voice. Voz programable, en PSTN y SIP, con TTS que no suena robótico.

Saliente y entrante. JSON de flujos declarativos para IVR. Grabación y transcripción en vivo. TTS en streaming en treinta idiomas con audio de primer byte en menos de 250 ms — el modelo se carga antes de que se conecte la llamada.

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 en más de 30 idiomas
Flujos declarativos: say, gather, dial, transfer
Grabación + transcripción en vivo por WebSocket
Terminación PSTN + SIP, BYOC compatible

04 Cloud API / mensajes de plantilla / respuestas interactivas

WhatsApp is being upgraded

Envía WhatsApp. Cloud API oficial. Plantillas, botones interactivos y multimedia — en el canal que ya usan tres mil millones de personas.

Plantillas preaprobadas, mensajería de sesión y respuestas interactivas. Confirmaciones de entrega y lectura en cada mensaje. Un número, todas las conversaciones — con la misma API tipada que email y 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
Acceso oficial a Cloud API
Mensajería de plantilla + sesión
Botones y listas interactivas
Confirmaciones de entrega + lectura

Somos un equipo de ingenieros que ama crear herramientas para otros ingenieros.

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

Modo de prueba. Simula cada estado — entregado, rebotado, reclamado, en cola — sin gastar presupuesto real ni alcanzar a un destinatario real.

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 modulares. Real-time event webhooks, per channel. email.delivered, sms.failed, voice.completed, whatsapp.read. HMAC-signed. Replay-protected. Same shape every channel.

MCP para agentes. 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.

Cinco productos.

Una capa compartida.

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

Autenticación. 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.

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

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

Paginación. 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.

Tus mensajes, realmente llegando.

Señales en tiempo real sobre la ubicación en la bandeja de entrada, tasas de rebote y volumen de envío — en cada canal, cada región. Sin conjeturas.

De los mensajes comerciales del mundo, por volumen, transitan por la red de Bird.

40%

Países con relaciones directas con operadores, diversidad de rutas y cumplimiento normativo local gestionado.

190+

Operando esta infraestructura. El equipo detrás de ella es el mismo que construye la API.

10 años

Empieza con un canal.
Añade los demás cuando estés listo.

Una clave API de prueba es tuya de inmediato. El acceso a producción se desbloquea cuando añades un método de pago y verificas un remitente.

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