Routing

The path from send to handset.

Reach customers through one sending API while Bird handles carrier connectivity. Choose supported destinations and the appropriate sender, then follow the reported delivery outcome. Inspect failures by country or carrier when a route, recipient or registration needs attention.

Cursor

The route behind your message

Sending workflow

01

Your application

Choose the recipient, sender, category and message.

02

Destination and sender checks

Use an enabled market and the required registration.

03

Carrier handoff

Bird submits the message through its carrier connections.

04

A reported outcome

Follow the receipt in message records, webhooks and analytics.

A conceptual flow. Acceptance, carrier handoff and a delivery receipt describe different stages of the message lifecycle.

Trusted every day by teams that build world-class software

Read more customer stories

The layer your send rides on.

Routing sits beneath the Bird SMS API. Bird checks the destination and sender before acceptance, then submits the prepared message to its carrier transport. Inspect the reported carrier and outcome when deciding whether to investigate a sender, destination or recipient issue.

Understand the decisions before carrier handoff.

Eligibility, message preparation and carrier submission have distinct roles.

  1. 01

    Carrier connectivity.

    Bird manages the carrier connections behind your send. Use the destination catalogue to check supported sender types and registration requirements for the markets you serve.

  2. 02

    A prepared sender and destination.

    Sender type, destination rules and registration determine which originator can be used. A valid setup is established before the message is queued for transport.

  3. 03

    Operator information when available.

    Processing can resolve the recipient's operator for pricing. A missing or failed lookup falls back to country pricing. Carrier information in a receipt may also be absent; avoid inferring a network from the phone prefix alone.

  4. 04

    Delivery receipts as carrier evidence.

    A carrier receipt can report delivery or a terminal non-delivery outcome. Some messages remain awaiting a receipt, and missing carrier fields are unknown. Read the event timeline alongside the current status.

  5. 05

    Discuss route requirements for a rollout.

    The public SMS request does not offer a least-cost versus highest-quality route selector. Discuss destination mix, sender requirements and throughput with an SMS specialist when planning larger traffic.

A delivery outcome you can investigate.

A successful SMS journey depends on the destination, sender registration, message content and carrier path. Bird brings those decisions into one sending workflow. Start with the destination's requirements, then use message records and carrier outcomes to identify what needs to change.

The delivery receipt, straight from the carrier.

A successful request returns 202 before carrier delivery. Subsequent events can include the reported carrier and MCC/MNC. Treat absent fields as unknown and inspect the message timeline for the available evidence.

POST /webhooks/bird
signed
{
  "type": "sms.delivered",
  "timestamp": "2026-05-19T15:42:01.221Z",
  "data": {
    "sms_id":       "sms_4kT01Lq2m",
    "workspace_id": "ws_8KQ2",
    "to":           "+15005550006",
    "from":         "+12025550188",
    "tags":         null,
    "metadata":     null,
    "carrier":      "Verizon",
    "mcc_mnc":      "311480",
    "cost": {
      "amount":             "0.0079",
      "currency_code":      "USD",
      "transaction_amount": "0.0079",
      "passthrough_amount": null
    }
  }
}

Carrier and MCC/MNC fields are reported where available. A difference from prefix-based expectations is a reason to investigate; it does not by itself prove number portability.

  • sms.deliveredCarrier confirmed the handset received the message (DLR).
  • sms.failedCarrier rejected or could not deliver, with the reason attached.

Routing leans on number intelligence.

Use Lookup when your application needs supported phone-number intelligence. Subscribe to webhooks for SMS outcomes and use the error reference and deliverability guide to interpret reported failures. A lookup result does not establish sender eligibility or guarantee delivery.

Questions before you build

How do I check destination coverage?
Open the destination catalogue and review the sender types and registration requirements for each market. Your workspace must also allow the destination before a send is accepted.
What does a carrier receipt establish?
It reports a delivery outcome from the carrier. Receipts can arrive after acceptance, and the message record may still be pending. Delivery does not measure whether someone read or acted on a text.
How should I investigate a failed route?
Start with the message status and failure reason. Compare reporting by carrier, country or sender, then check registration and destination configuration. An aggregate failure rate alone does not identify the cause.
Can I inspect a phone number separately?
Use Lookup when your application needs phone-number intelligence before sending. Review the signals and availability for that lookup rather than treating an SMS delivery report as a complete number check.

Make routing outcomes easier to investigate.

Prepare destinations and senders through Bird, then investigate message outcomes with the available carrier evidence. Use the destination guide when planning a new market.

Your details

All contact fields are required.

So our team can reach you about your demo.

Products of interest

Optional

We’ll contact you to arrange your demo.
Privacy policy

Start with one channel.
Add the others when you're ready.

A test API key is yours immediately. Production unlocks when you add a payment method and verify a sender.

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

Cursor