How-to

Create inbound and outbound agents for your niche

Last updated: September 8, 2026

Two things about an agent are yours to decide: which direction it works in and, for an inbound agent, whose call-backs it answers. Direction is a routing rule: an outbound agent is the one your CRM workflows start call cycles with, an inbound agent is the one that answers when those leads call your number back.

What pairs them is an explicit choice, not a guess. On the inbound agent you tick the outbound agents it answers for — Answers the call-backs of — and that is the whole pairing. The Niche is a free label for your own organisation: it groups agents in your head, it decides nothing.

Before you start

  • Retell is connected in Connections — agents are provisioned on your own Retell account. See Connect Retell.
  • At least one active number in your agency pool (Numbers page). The outbound agent will need it assigned; the inbound one does not.

Step 1 — Create the outbound agent

Go to AgentsNew agent. Fill in the Name, then the Niche: a plain text field (up to 60 characters) whose suggestions are simply the niches you have already used on other agents or clients. Pick one from the list to stay consistent, or type a brand new one.

Leave the direction on Outbound — that is the default and it is what you want for the agent that starts call cycles. Write the prompt, choose the voice, and click Create agent as usual (Create your first AI agent).

Step 2 — Assign its phone numbers

Open the agent, go to the Numbers tab and tick the numbers this agent may dial from, then Save numbers. This step is not optional: an agent with zero assigned numbers never places a call. Full detail in Assign phone numbers to an agent.

Step 3 — Write what to tell a lead who calls back

Still on the outbound agent, open the Identity & routing tab and fill in What to tell a lead who calls back (up to 300 characters) — for example "you filled the 'First visit' form on our website". Whoever answers the call-back receives that line as part of its context, so it can say why we had called without you writing a single rule about it. {{cv_*}} variables work here too and are resolved from the lead's own sub-account.

Step 4 — Create the inbound agent

Create a second agent the same way, but this time:

  • set the direction to Inbound,
  • write a prompt for someone who is receiving a call, not making one — the caller already knows why they were contacted, so the script starts from "how can I help?" rather than a pitch,
  • give it any niche you like: it is a label, not a routing key.

Step 5 — Pair it with the outbound agent

Open the inbound agent → Identity & routing. Under Answers the call-backs of tick the outbound agents whose leads this agent takes over when they call back, then Save identity. Numbers do not matter here: the pairing is enough, and an inbound agent needs no number assigned to answer.

Go back to the outbound agent's Identity & routing tab to see the other side of the same fact, read-only: "Its call-backs are answered by: …", or "No inbound agent answers its call-backs yet: the agent itself will."

Who answers a call-back

SituationWho picks up
An active inbound agent lists the outbound agent that called this lead from that numberThat inbound agent — the explicit pairing always wins over the outbound agent that dialed. (When no outbound agent ever called that lead from the number, the candidates are the outbound agents that dial from it, so a cold call-back still reaches their paired receptionist.)
Nobody lists itThe outbound agent that last called that lead from that number, with the full context of the previous call.
Neither of the twoNobody: the call is not answered by an agent.

More on the conditions and the context passed to the agent in Inbound call routing.

An inbound agent never starts a call cycle

This is enforced, not just advised. If you point a CRM workflow at an inbound agent's webhook URL, the trigger answers skipped with reason inbound_agent and no call is placed. The same applies to anything already queued for that agent: it is dropped rather than dialed. Change the direction back to Outbound, or point the workflow at the right agent.

So an inbound agent needs no workflow, no trigger and no numbers — ticking the outbound agents it answers for is the whole setup.

Agents you created before this

Nothing changed for them: every existing agent is Outbound and keeps its niche as-is. To convert an agent into the inbound receiver for a campaign, open it, go to the Identity & routing tab, switch the direction, tick the outbound agents under Answers the call-backs of and click Save identity.

One guardrail on the flip: if calls are still queued on that agent, the save is refused and the panel tells you how many. An inbound agent never dials, so those calls would be dropped one by one and their leads never called — tick Discard the queued calls and switch to inbound to remove them explicitly (the discard is recorded in the audit log), or wait for the queue to drain and save again.

Next steps