Bird Products
Your channels. Your customer. One platform.
Build across email, messaging, voice and connectivity. Explore developer APIs and native customer conversations, with guides for the setup, access and integrations each product needs.
All products. Find the right experience for your customer.
Email. The email API for developers who ship the rest of the message too.
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>",
});Mailbox. The Mailbox API for agents that answer their own email.
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"
}
SMS. The SMS API for developers who actually need to ship.
await bird.sms.send({
to: "+15005550006",
text: "Your code is 847291. Expires in 10 min.",
category: "authentication",
});Voice. SIP trunking, with a record and events on every call.
const call = await bird.voice.get("vcl_01k0p3v9wera3v6q6xw3e9y2mh");
call.status; // "answered" | "no_answer" | "ringing" | …
WhatsApp. Engage customers worldwide with WhatsApp API.
await bird.whatsapp.send({
from: "+15557654321",
to: "+15005550006",
text: { body: "Order confirmed! 🎉" },
});Verify. The OTP API for developers who need codes to land.
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,
});Lookup. Check a phone number or an email address before you send to it.
await bird.lookup.phoneNumber({
phone_number: "+31612345678",
});RCS. The RCS for Business API, SMS's better-looking sibling.
await bird.rcs.send({
to: "+15005550006",
text: "Your order shipped! 📦",
suggestions: [
{ type: "openUrl", text: "Track it", url },
],
});Push. Push notifications for iOS, Android, and web.
await bird.push.send({
to: { deviceToken },
notification: {
title: "Order shipped!",
body: "Your package is on its way.",
},
});Realtime. Hosted pub/sub over WebSockets. Subscribe, publish, scale.
await bird.realtime.publish("rap_01krdgeqcxet5s7t44vh8rt9mg", {
channels: ["orders"],
event: "order.shipped",
data: { orderId, status: "shipped" },
});
eSIM. Corporate eSIMs, employee phone plans, connectivity in your product.
await bird.esim.issue({
recipient: { externalId: employeeId },
plan: { region: "eu", dataMb: 5_000 },
policy: { blockStreaming: true },
});
Apple Messages. Native choices, appointments and service in the Messages app.
Bird’s public APIs use familiar authentication, errors and pagination. Follow the product guide for supported operations, permissions and integration requirements.
/ Auth
/ Idempotency
/ Errors
/ Webhooks
/ Pagination
/ Typed IDs
Put it into practice.
Continue with the documentation, guides and examples for this topic. Resources are in English.