Number Pooling
Number pooling lets one agent use several phone numbers at once. An inbound agent answers calls to any number in its pool. An outbound agent can place each call from a different number in its pool, so you can route traffic by campaign, region, or brand while keeping one agent configuration.
You manage a pool through the Platform API. Pooled numbers can be numbers bought in Synthflow, custom numbers, or numbers from your imported Twilio account.
Attached numbers
Get agent returns the numbers in the agent’s pool in attached_phone_numbers:
Use slug to detach a number. Use number to choose the caller ID for an outbound call.
Adding numbers
Attach phone numbers adds one or more numbers to the agent’s pool. Identify them either by phone number in E.164 format or by slug, not both in the same request.
A number can serve only one inbound agent at a time, but it can be in the pool of several outbound agents.
Removing a number
Detach phone number removes one number from the pool by its slug.
The number stops routing calls to the agent as soon as the request succeeds. Calls to it no longer reach the agent, and the agent can no longer place calls from it. The number stays in your workspace, ready to attach to another agent.
Outbound caller ID
Make a call takes an optional from_phone_number, which sets the caller ID for that call. It must be a number in the agent’s pool.
Without from_phone_number, the call uses the agent’s default outbound number. Call logs show the number each call was placed from, so you can check which caller ID was used.
FAQ
Does number pooling work for inbound agents?
Yes. Attach several numbers to an inbound agent, and calls to any of them reach that agent.
Can I send phone numbers and slugs in the same attach request?
No. Choose one of the two in each request.
Does a detached number still reach the agent?
No. Once the detach request succeeds, calls to the number no longer reach the agent. Attach the number again to restore routing.