Bird Products

Eleven surfaces. One platform. Same shape.

Email, Mailbox, SMS, Voice, WhatsApp, Verify, Lookup, RCS, Push, Realtime, and eSIM — each a first-class API. Same auth, same idempotency, same webhooks, same error envelope. Learn one, you've learned them all.

Configura en:
Cursor

Todos los productos. Eleven surfaces, one SDK.

01POST /v1/emails

Email. La API de email para desarrolladores que también envían el resto del mensaje.

welcome.tsx
await bird.email.send({
  from: "hello@yourdomain.com",
  to: ["alex@example.com"],
  subject: "Welcome to Bird",
  html: "<p>You're in. Let's ship.</p>",
});
02POST /v1/email/mailboxes

Mailbox. La API de Mailbox para agentes que responden su propio correo electrónico.

claim-mailbox.sh
curl -X POST https://us1.platform.bird.com/v1/email/mailboxes \
  -H "Authorization: Bearer $BIRD_API_KEY" \
  -d '{"domain": "inbox.ai", "receive_policy": "open"}'

{
  "id": "mbx_01krdgeqcxet5s7t44vh8rt9mg",
  "address": "k7mq3vx2npr5wcj4tzh6@inbox.ai",
  "state": "active"
}
03POST /v1/sms/messages

SMS. La API de SMS para desarrolladores que realmente necesitan lanzar.

notify.ts
await bird.sms.send({
  to: "+15005550006",
  text: "Your code is 847291. Expires in 10 min.",
  category: "authentication",
});
04POST /v1/voice/calls

Voice. Voz programable en JSON. Llamadas, IVR, grabación, TTS.

dial.ts
await bird.voice.calls.create({
  to: "+15005550010",
  from: "+14155550199",
  flow: [
    { say: "Your order is confirmed." },
  ],
});
Voice se está actualizando
05POST /v1/whatsapp/messages

WhatsApp. Conecta con clientes en todo el mundo con la API de WhatsApp.

message.ts
await bird.whatsapp.send({
  from: "+15557654321",
  to:   "+15005550006",
  text: { body: "Order confirmed! 🎉" },
});
06POST /v1/verify/verifications

Verify. La API de OTP para desarrolladores que necesitan que los códigos lleguen.

verify.ts
await bird.verify.verifications.create({
  to: { phone_number: "+15005550006" },
});
// check by target — no id to store
await bird.verify.verifications.check({
  to: { phone_number: "+15005550006" }, code: userCode,
});
07POST /v1/lookup/phone-number

Lookup. Verifica un número de teléfono o una dirección de correo electrónico antes de enviar.

lookup.ts
await bird.lookup.phoneNumber({
  phone_number: "+31612345678",
});
08POST /v1/rcs

RCS. La API de RCS for Business, el hermano mejor parecido de SMS.

rich.ts
await bird.rcs.send({
  to: "+15005550006",
  text: "Your order shipped! 📦",
  suggestions: [
    { type: "openUrl", text: "Track it", url },
  ],
});
RCS se está actualizando
09POST /v1/push

Push. Notificaciones push para iOS, Android y web.

push.ts
await bird.push.send({
  to: { deviceToken },
  notification: {
    title: "Order shipped!",
    body: "Your package is on its way.",
  },
});
Push se está actualizando
10POST /v1/realtime/publish

Realtime. Pub/sub alojado sobre WebSocket. Suscríbete, publica, escala.

realtime.ts
await bird.realtime.publish("rap_01krdgeqcxet5s7t44vh8rt9mg", {
  channels: ["orders"],
  event: "order.shipped",
  data: { orderId, status: "shipped" },
});
11POST /v1/esims

eSIM. Corporate eSIMs, employee phone plans, connectivity in your product.

esim.ts
await bird.esim.issue({
  recipient: { externalId: employeeId },
  plan: { region: "eu", dataMb: 5_000 },
  policy: { blockStreaming: true },
});
The eSIM API is coming to Bird

Todos los productos anteriores comparten un mismo modelo de autenticación, un mismo contrato de idempotencia, un mismo formato de errores, un mismo contrato de webhooks y un mismo esquema de paginación por cursor. Aprende uno y los conoces todos.

/ Auth

/ Idempotency

/ Errors

/ Webhooks

/ Pagination

/ Typed IDs

Ver los endpoints de la API

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.

¿Usas Claude Code, Cursor o Codex? Copia un prompt de configuración y tu agente instalará el Bird CLI y las habilidades por ti. Elige el tuyo:

Cursor