Get a number, point it at an agent
Search availability
Browse purchasable numbers by area code, city, or vanity suffix. Filter by capability
(require
voice, and sms if you plan to text from it later).Reserve (optional), then purchase
Hold a number for ~30 minutes so it can’t be sniped while you confirm, then purchase it.
Purchase debits your prepaid wallet. Already own a number elsewhere? Import it instead —
no wallet charge.
On the call
The agent opens with its configured greeting (spoken in the agent’s primary language), listens with real-time turn detection, and responds with the platform’s voice engine. Knowledge lookups, skills, and playbooks all run live. Per-agent call control governs the experience: a maximum call length, “are you still there?” idle reminders, and what to do on silence.Transfer and handoff
When a caller needs a person, the agent transfers the call. You configure a default handoff destination plus a transfer-by-context table — plain-language rules that route specific situations (billing, Spanish line, a region) to specific numbers. A data-lookup skill can also supply a dynamic destination at call time (for example, route to the booked technician). The original caller ID is passed through to the receiving line.Keypad input (DTMF)
Callers can press keypad digits during a call — useful for menus, account numbers, or confirmations. See DTMF / Keypad.In the API
| Action | Endpoint | Scope |
|---|---|---|
| Search available numbers | GET /numbers/search | numbers:read |
| Reserve a number | POST /numbers/reserve | numbers:write |
| Purchase a number | POST /numbers/purchase | numbers:write |
| Import a number you own | POST /numbers/import | numbers:write |
| Assign to an agent | POST /numbers/{id}/assign | numbers:write |
| Unassign (keep, pool it) | DELETE /numbers/{id}/assign | numbers:write |
| Release a number | DELETE /numbers/{id} | numbers:write |
| Review call summaries | GET /agents/{agentId}/calls | calls:read |