Skip to main content
When an agent places an outbound call, the caller ID the recipient sees is the phone number the call is dialed from. That number is resolved at conversation-creation time from the agent’s outbound assignment, and it becomes the agent_number on the conversation — the number Anyreach presents on the outbound leg.

How the outbound number is chosen

Outbound conversation creation resolves the dialing number in this order:
You provideNumber used
agent_numberThat exact number, if your org owns it or it is shared with you (see Shareable).
agent_version_idThe number whose outbound slot (outbound_agent_version_id) points at that version.
agent_idThe number bound to that agent’s resolved version on its outbound slot.
none of the aboveFallback: any outbound-capable number in your org, preferring numbers with no outbound agent assigned.
The resolved number must have a trunk with an outbound configuration, or conversation creation fails. The slot that maps an agent to a number is the number’s outbound slot — see Assigning agents to numbers.
The recipient’s caller ID is the resolved number itself. There is no separate “caller ID” field for a normal outbound call — set which number the call dials from, and that is what is displayed.

Caller ID on transfers

On a transfer, the call is already in progress and a third party joins. What that party sees as caller ID depends on the transfer type.

Cold transfer

A cold_transfer action hands the live caller to transfer_number and the agent leaves. The action carries a displayed_number field that selects which caller ID the transferee sees:
ValueTransferee sees
transferee_number (default)The original caller’s number.
agent_numberThe agent’s number (the number the call came from).
The Anyreach-managed Twilio trunk is created with transfer_caller_id="from-transferee" and transfer_mode="sip-only", so the SIP REFER transfer presents the transferee’s caller ID by default. For the full action reference, see Call transfers and conference.

Warm transfer and conference

For warm_transfer (briefing a supervisor) and conference (dialing a number into the room), the agent dials out to the third party from the conversation’s agent_number — the same number resolved when the outbound or inbound call started.

The Shareable toggle

Each phone number has an outbound_shareable flag, surfaced as the Shareable switch in the Phone Numbers table. It is off by default (outbound_shareable defaults to false). Enabling Shareable lets descendant organizations dial out from your number. With it on, a child org can pass your number as agent_number when creating an outbound conversation and Anyreach will place the call from it, even though the child does not own the number.
parent org  ──── owns ────▶  +1 555 123 4567  (outbound_shareable = true)

child org  ── dials out from ───────┘   (allowed: number is shareable
                                         AND owner is an ancestor)
Authorization requires both conditions: the number is marked shareable and its owner is an ancestor of the calling org. A non-shareable number, or a number owned by an unrelated org, resolves as “not found” for the caller.
Sharing only affects outbound dialing. Inbound routing is unchanged — a call placed to a shared number always rings the owner’s bound inbound agent, never a descendant’s.
When a descendant org dials out from a shared number, it must supply its own agent (agent_config, agent_version_id, or agent_id). It cannot reuse the owner’s bound outbound agent, because that assignment lives in the owner’s org and is not readable across orgs.

Managing the toggle

ActionHow
Set at creationSend outbound_shareable on the phone-number create request (defaults to false).
Change laterPATCH the phone number with outbound_shareable — it is the only field that can be patched.
In the UIFlip the Shareable switch in the Phone Numbers table (requires permission to manage phone numbers).

Campaigns overview

Run outbound calling at scale across many contacts.

Call transfers and conference

Cold transfer, warm transfer, and conference, including displayed_number.

Assigning agents to numbers

Bind an agent version to a number’s outbound slot.

Telephony overview

How numbers, trunks, and calls fit together.