Import Phone Number
Authentication
Enter your API key with the Bearer prefix, e.g. ‘Bearer sk_…’.
Headers
Request
The phone number in E.164 format. For provider=livekit this
is the number you want LiveKit to purchase. For provider=twilio,
provider=telnyx, and provider=byoc it is the number you
already own.
Which provider the number came from. Determines the provisioning and portability path.
livekit- LiveKit owns the carrier relationship; US inbound only.twilio- Customer’s own Twilio number bridged via Elastic SIP Trunk.telnyx- Customer’s own Telnyx number bridged via a Telnyx FQDN connection.byoc- Any SIP provider using a customer-supplied trunk.twilio_purchased- Bought throughPOST /v1/agents/phone-numbers/purchaseon Speechify’s master Twilio account; billed to Speechify.telnyx_purchased- Bought throughPOST /v1/agents/phone-numbers/purchase(withprovider=telnyx) on Speechify’s master Telnyx account; billed to Speechify.verified_caller_id- Customer-verified outbound caller ID on their own Twilio account (Twilio’s OutgoingCallerIds resource). Server-determined at import time: when ane164submitted withprovider=twiliois not a full DID on the customer’s account but IS a verified caller ID, the resulting row gets this provider. Outbound-only, never agent-bindable, rides the customer’s existing shared Twilio trunk for outbound routing. Requires a priortwiliofull-DID import from the same account; without it the import returns 400.
Optional workspace project to place this resource in (prefixed
proj_... id). Omit for the implicit Default project. An
unknown id returns 404 project_not_found.
Optional human-readable label.
For provider=byoc: the SIP trunk to bind this number to.
Prefixed wire identifier (trunk_<26 char Crockford base32>).
Not required for provider=livekit, provider=twilio, or
provider=telnyx.
Optional agent to bind on import. Prefixed wire identifier
(agent_<26 char Crockford base32>).
Twilio credentials for the one-click import flow. Used only when
provider=twilio. The Account SID and Auth Token are used to
provision an Elastic SIP Trunk on the customer’s Twilio account
pointing at LiveKit’s SIP endpoint, then stored for future trunk
management operations.
Telnyx connection details for the bring-your-own-connection import
flow. Used only when provider=telnyx. You provision an FQDN
connection on your Telnyx account whose inbound calls forward to
Speechify’s LiveKit SIP ingress, assign the number to it, then import
by passing the connection’s id. A second number on the same connection
reuses the one shared trunk + dispatch rule.
Response headers
Response
Prefixed wire identifier (phone_<26 char Crockford base32>).
URL paths accept only this
prefixed form; legacy UUID path parameters are rejected with
404.
The phone number in E.164 format (e.g. +12025551234).
Which provider the number came from. Determines the provisioning and portability path.
livekit- LiveKit owns the carrier relationship; US inbound only.twilio- Customer’s own Twilio number bridged via Elastic SIP Trunk.telnyx- Customer’s own Telnyx number bridged via a Telnyx FQDN connection.byoc- Any SIP provider using a customer-supplied trunk.twilio_purchased- Bought throughPOST /v1/agents/phone-numbers/purchaseon Speechify’s master Twilio account; billed to Speechify.telnyx_purchased- Bought throughPOST /v1/agents/phone-numbers/purchase(withprovider=telnyx) on Speechify’s master Telnyx account; billed to Speechify.verified_caller_id- Customer-verified outbound caller ID on their own Twilio account (Twilio’s OutgoingCallerIds resource). Server-determined at import time: when ane164submitted withprovider=twiliois not a full DID on the customer’s account but IS a verified caller ID, the resulting row gets this provider. Outbound-only, never agent-bindable, rides the customer’s existing shared Twilio trunk for outbound routing. Requires a priortwiliofull-DID import from the same account; without it the import returns 400.
Optional human-readable label set by the customer.
ID of the agent this number’s calls run as. Null only while the
number is unbound. Pointing a number at a brain provisions an agent
too - it is what gives an externally-brained call a conversation,
transcript and lifecycle - so this is also the agent_id to pass to
POST /v1/agents/outbound-calls to dial out from such a number.
The external brain answering this number’s traffic. Absent when
the number is unbound or answered by a hosted agent. Read the
endpoint, health and settings at /v1/agents/brains/{brain_id}.
ISO-3166 alpha-2 country of the number. Present on purchased numbers; may be absent on imported numbers.
Workspace project this resource lives in (prefixed external id). Null means the implicit Default project.
Carrier spam-reputation status for the number, refreshed on a schedule. Present once the number has been checked at least once; omitted otherwise.