In short
- Contract a number in the dashboard or with
POST /v1/phone-numbers/orders. - Copy the id or number to use as origin (
from) in voice and SMS. - Configure inbound — what to do when someone calls that number.
Before you start
1. Contract a number
Via dashboard
Settings → Phone numbers: search by country and area code, select the number, and pay the monthly fee. When payment confirms, the number becomes active and you can dial.Via API (phone_numbers:create)
Creates an order with PIX or card payment:
GET /v1/phone-numbers/orders/:orderId. After payment → webhook phone_number.activated.
Regulated countries may require documents — see .../regulatory/* routes in the OpenAPI reference.
2. Search available numbers
Before contracting, list what’s in the catalog:
Response (200), example
3. List workspace numbers
See the numbers you’ve already contracted:RELEASED) don’t appear in the list.
Response (200), example
id or phoneE164 as from in calls and SMS.
4. Get a number
5. Configure what happens when someone calls
When a customer calls your number, you define the behavior:Inbound options
For spoken message:
inboundTtsText + optional inboundTtsVoice (female-natural, male-natural, etc.).
6. Lifecycle webhooks
When the number status changes (payment, suspension, release):phone_number.activated— number is active, can dialphone_number.past_due— renewal overduephone_number.suspended— suspendedphone_number.released— returned to catalog
voice.call.*), see Voice — webhooks.
Quick summary
Next steps
- API Key scopes
- Voice API, Quick Start — first call
- SMS — your own number

