A local number.
A real reply path.
A long code is a full phone number used as a messaging identity. Choose a number with SMS capability when recipients need to reply. For US application-to-person traffic, register the brand and campaign through A2P 10DLC before sending.
A number they can reply to
Sender example
+1 202 555 0194
Choose capabilities
Filter for SMS, voice or both.
Prepare registration
Complete the applicable US 10DLC program.
Receive a reply
Act on signed SMS inbound events.
Illustrative US number. Capabilities belong to the allocated number, not its type alone.
When a long code is the right call.
Long codes are one of the four sender types on the Bird SMS numbers surface, part of the broader Bird SMS API. They're local, two-way, and quick to provision: the right starting point for most conversational and transactional traffic before volume justifies a short code.
What a long code gives you.
Local presence, two-way traffic, moderate volume.
- 01
A recognizable local identity.
Choose an available local number for the market you serve. Read its SMS and voice capabilities before ordering; a local number does not always support both.
- 02
A reply path when SMS is supported.
Point the number's inbound traffic at a webhook and replies arrive as signed events, the foundation for conversational flows.
- 03
Registered through A2P 10DLC.
US application-to-person traffic uses the relevant 10DLC brand and campaign registration. Registration establishes eligibility; delivery still depends on message and carrier conditions.
- 04
Complete the sender setup.
Order an available number, complete any ownership requirements, register the relevant sender program and enable the destination before sending.
Find the number. Prepare it for launch.
Search by country and capability and buy the number, the same client you send with. Inbound traffic is routed by a workspace webhook subscribed to sms.received, not per number. Check each number’s capabilities and registration status; short codes follow an assisted allocation path.
// A US long code is a `local` number: the type names the numbering plan's
// own category, and "long code" is not one of them.
const { data: page, error: searchError } = await bird.numbers.available
.list({
country_code: "US",
number_type: "local",
capabilities: ["sms"],
})
.safe();
if (searchError) throw searchError;
const { data: order, error: orderError } = await bird.numbers.orders
.create({ number: page.data[0].number })
.safe();
if (orderError) throw orderError;
console.log(order.status, order.number_id); // → "completed" "nda_0ydh2yfw..."
Registration is part of the deal.
To send application-to-person traffic to US numbers, a long code runs over a registered A2P 10DLC campaign. Bird files the brand and campaign from the dashboard and reports approval status through the API, so you can review eligibility and the assigned sending limits before launching.
Questions about this sender
What is a 10DLC long code?
Can every local number send and receive SMS?
How much throughput does a long code provide?
Other ways to send
Long codes are one of four sender types. Compare the rest.
Scale without
losing control.
Organize teams in workspaces, control API access, and trace changes through audit logs.
Audit log
Production- Workspace
- Production
- Resource
- Delivery agent
- ReadRead & write