Inbound Numbers

Provision phone numbers and configure call routing destinations

Inbound numbers (DIDs) are telephone numbers that route incoming calls into your PBX. Each number can be pointed at a different destination -- an extension, ring group, call flow, queue, or voicemail.

Routing Destinations

DestinationDescription
extensionRing a single extension directly
ring_groupRing a group of extensions simultaneously or sequentially
call_flowEnter a visual IVR menu
call_queueEnter an ACD queue
externalForward to an external phone number
voicemailGo directly to a voicemail box
voice_agentConnect to an AI voice agent

List Numbers

GET/v1/pbx/inbound-numbers

List all inbound numbers

Requires:pbx:dids:read
curl -X GET "https://api.do.dev/v1/pbx/inbound-numbers" \
  -H "Authorization: Bearer do_live_your_key_here"
{
  "numbers": [
    {
      "id": "did_xyz789",
      "number": "2395551234",
      "formatted": "(239) 555-1234",
      "destinationType": "call_flow",
      "destinationId": "flow_abc",
      "destinationName": "Main Menu"
    }
  ]
}

Assign a Number

POST/v1/pbx/inbound-numbers

Provision and route an inbound number

Requires:pbx:dids:write

Body Parameters

numberstringrequired
10-digit phone number to provision
destinationTypestringrequired
Routing destination type (see table above)
destinationIdstringrequired
ID of the destination (extension, queue, flow, etc.)
curl -X POST "https://api.do.dev/v1/pbx/inbound-numbers" \
  -H "Authorization: Bearer do_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "number": "2395559876",
    "destinationType": "extension",
    "destinationId": "ext_abc123"
  }'

Routing changes take effect immediately. The SBC updates its routing table in real-time via Redis.