Node: Handoff to Agent
How to use the Handoff to Agent node to pass a conversation from AI or a bot to a human from a workflow.
The Handoff to Agent node hands a conversation off to a human: it assigns the given agent or team, stops every other workflow currently running on that conversation, and optionally posts a visible note in the chat announcing the handoff. It's the standard node for closing the "AI → human" loop in any support flow.
When to use it
- At the end of a reception flow, when the customer asks to talk to a person.
- When the AI agent detects it can't resolve the request (escalation).
- After a period of AI inactivity with no response from the customer (automatic handoff).
Configuration
- Assign to:
User,Team,Agent within a team, orUnassigned. - User / Team (depending on the option above): the assignment target. Accepts either a fixed ID or a variable (e.g.
$last_agent_id) to reassign to the last agent who handled the conversation. - Selection logic (only for "Agent within a team"):
round_robin,least load, ormanual, to automatically pick a specific team member. - Filters (only for "Agent within a team"): "online agents only" and/or "max open conversations", so you don't assign to someone overloaded or offline.
- Notify text (optional): a message posted in the chat announcing the handoff (supports variables).
- Stop other workflows (enabled by default): cancels any other workflow running on the same conversation so the AI doesn't keep responding after the handoff.
Example
An AI workflow detects the customer wrote "I want to talk to a person". You add Handoff to Agent with Assign to = Agent within a team, Team = Support, Logic = round_robin, Filter = online agents only, and Notify text = Transferring you to a human agent, one moment please. The conversation goes to the first available online agent on the team, and the AI stops responding.
Tips
- Leaving "Stop other workflows" enabled (recommended) prevents the AI from continuing to answer after a human has already taken over the conversation.
- Use "Unassigned" when you just want to pull the conversation out of AI hands without deciding yet who handles it (e.g. so it lands in the team's general queue).
Troubleshooting
- Nobody gets assigned: if you chose "Agent within a team" with very restrictive filters (e.g. online only + a low max conversations), no agent may qualify; the team is still assigned as a fallback.
- The team doesn't exist: if the configured team ID no longer exists in the workspace, the node returns an error and nothing gets assigned.
Related articles
-
Build your first workflow
Omnifox workflows automate your operation: a trigger starts the automation and action nodes do the work. Build a welcome message in minutes.
-
Workflow triggers catalog
Learn which events can start a workflow automatically in Omnifox.
-
Action nodes available in workflows
Discover the actions a workflow can run automatically.
-
Conditions and branching (if/then) in a workflow
Make your flows take decisions and follow different paths based on each contact data.
-
Ready-to-use workflow templates
Start your automations in minutes from prebuilt flows you can customize.