Quickstart

Send your first message with Bird in under five minutes.

Get a test API key

Open the dashboard and copy a test key — it'll look like bird_test_xxxxxxxx. Test keys send only to the sanctioned test recipients listed below, are free, and ship with full feature parity to live keys. Production unlocks when you add a payment method and verify a sender.

Install the SDK

pnpm add @bird/sdk
# npm install @bird/sdk
# yarn add @bird/sdk
# bun add @bird/sdk

Send your first message

import { BirdClient } from "@bird/sdk";

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

const { data, error } = await bird.email.send({
  to: ["delivered@bird.dev"],
  from: "Bird Test <onboarding@bird.dev>",
  subject: "Hello from Bird",
  text: "If you're reading this, the quickstart worked.",
});

if (error) throw error;
console.log(data.id); // email_2bX91...

SMS

const { data, error } = await bird.sms.send({
  to: "+15005550006",
  from: "+18885550101",
  text: "Your code is 482917.  Don't share it.",
});

Voice

const { data, error } = await bird.voice.calls.create({
  to: "+15005550010",
  from: "+18885550101",
  flow: {
    steps: [
      { type: "say", text: "Your code is four, eight, two, nine, one, seven." },
      { type: "hangup" },
    ],
  },
});

WhatsApp

const { data, error } = await bird.whatsapp.send({
  to: "+15005550009",
  template: "order_confirmed",
  variables: { name: "Ada", order_id: "A-2491" },
});

What just happened

You hit POST /v1/emails and sent a real message to delivered@bird.dev — a sanctioned test recipient that always accepts a send and emits delivery events without touching the production carrier network. Every Bird call returns the same { data, error } envelope: data is the typed resource on success, error is the structured envelope documented at /docs/errors on failure. The send shows up in the dashboard under Logs within a second, with the full request, response, and per-step carrier trace.

Next steps

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.

ComenzarLeer documentacióno

¿Usas Claude Code, Cursor o Codex? Apúntalos a nuestro servidor MCP — 141 herramientas, una por endpoint de API, con claves de agente con permisos limitados.