Developer
Developer - Phone Numbers

Create Phone Number

Create a new phone number entry for the current customer.

This endpoint is restricted to developer users only. Creates a phone number or SIP endpoint entry that can be used for inbound call routing.

  • phone_number: The phone number (e.g., +15551234567) or SIP endpoint (e.g., 1000)
  • label: Optional friendly label like "Main Line" or "After Hours"
  • is_active: Whether the number is active (default: true)
post/developer/phone-numbers

Request body

phone_numberstring required

Phone number or SIP endpoint (e.g., +15551234567 or 1000)

labelstring nullable

Friendly label like 'Main Line' or 'After Hours'

is_activeboolean required

Whether the number is active

is_testboolean required

Whether this is a test number (calls won't make real changes)

provider'twilio' | 'daily' | 'vapi' required

Telephony provider (twilio, daily, or vapi)

call_transport'daily_sip' | 'twilio_websocket'

Call transport: 'daily_sip' (legacy) or 'twilio_websocket' (WebSocket Media Streams)

agent_platform'pipecat' | 'vapi'

Voice agent platform: 'pipecat' or 'vapi'

inbound_squad_idstring nullable

Vapi squad ID for inbound assistant-request routing

outbound_squad_idstring nullable

Vapi squad ID for outbound calls

business_hours_inbound_squad_idstring nullable

Vapi squad ID for inbound calls during business hours (used when business_hours_enabled feature flag is on)

after_hours_inbound_squad_idstring nullable

Vapi squad ID for inbound calls outside business hours (used when business_hours_enabled feature flag is on)

outbound_enabledboolean

Whether this number is available for automated outbound dialing

provider_bypass_enabledboolean

Route inbound Twilio calls through our own /telephony/inbound-vapi endpoint instead of Vapi's inbound webhook. Required for attended transfer, which needs Twilio call control to stay on our side

is_bounce_backboolean

Dedicated bounce-back return line: unanswered transferred calls forwarded back here are matched to their original call and the conversation is injected into the inbound squad

vapi_phone_number_idstring nullable

VAPI phone number resource ID (for outbound API calls)

default_greeting_overridestring nullable

Per-number default greeting; overrides the customer-wide default/business-hours greeting selection for calls to this number

contact_greeting_overridestring nullable

Per-number known-contact greeting template ({first_name}/{last_name}); overrides the customer-wide contact greeting for calls to this number

Response

Successful Response

phone_numberstring required

Phone number or SIP endpoint (e.g., +15551234567 or 1000)

labelstring nullable

Friendly label like 'Main Line' or 'After Hours'

is_activeboolean required

Whether the number is active

is_testboolean required

Whether this is a test number (calls won't make real changes)

provider'twilio' | 'daily' | 'vapi' required

Telephony provider (twilio, daily, or vapi)

call_transport'daily_sip' | 'twilio_websocket'

Call transport: 'daily_sip' (legacy) or 'twilio_websocket' (WebSocket Media Streams)

agent_platform'pipecat' | 'vapi'

Voice agent platform: 'pipecat' or 'vapi'

inbound_squad_idstring nullable

Vapi squad ID for inbound assistant-request routing

outbound_squad_idstring nullable

Vapi squad ID for outbound calls

business_hours_inbound_squad_idstring nullable

Vapi squad ID for inbound calls during business hours (used when business_hours_enabled feature flag is on)

after_hours_inbound_squad_idstring nullable

Vapi squad ID for inbound calls outside business hours (used when business_hours_enabled feature flag is on)

outbound_enabledboolean

Whether this number is available for automated outbound dialing

provider_bypass_enabledboolean

Route inbound Twilio calls through our own /telephony/inbound-vapi endpoint instead of Vapi's inbound webhook. Required for attended transfer, which needs Twilio call control to stay on our side

is_bounce_backboolean

Dedicated bounce-back return line: unanswered transferred calls forwarded back here are matched to their original call and the conversation is injected into the inbound squad

vapi_phone_number_idstring nullable

VAPI phone number resource ID (for outbound API calls)

default_greeting_overridestring nullable

Per-number default greeting; overrides the customer-wide default/business-hours greeting selection for calls to this number

contact_greeting_overridestring nullable

Per-number known-contact greeting template ({first_name}/{last_name}); overrides the customer-wide contact greeting for calls to this number

phone_number_idstring uuid required

Phone number ID

customer_idstring uuid required

Customer ID

created_atstring required

Creation timestamp

type'PSTN' | 'SIP' required

Derived phone number type based on format.

Changes

No recorded changes to this endpoint across all 1 revision of this API.