Hand off from a workflow to a human agent

Updated May 22, 2026

The Request agent step

This is the handover mechanism inside a workflow. When the script reaches it, the conversation is marked as waiting for a person, an "agent requested" line is added to the thread, and the conversation sits in your inbox unassigned until somebody opens it.

Add it like any other step: click Add a step on the card where the handover should happen and pick Request agent. It has two optional settings:

  • Message to the visitor (optional) — what the visitor reads at the moment of handover. Leave it empty and Yaplet sends its own wording, in the visitor's language.
  • Note for the colleague (optional) — only your team sees it. It is added to the conversation as an internal note just before the handover, so whoever picks the conversation up finds it right above the handover line.

Both can contain values the workflow collected, such as {{ order_id }} or what a Call an API step read. The workflow does not wait for a colleague: it hands over and goes straight on to its next step.

What the visitor sees next

It depends on whether anybody who has access to this brand is online at that moment, and Yaplet checks that for real rather than assuming:

  • Somebody is online. The visitor gets your expected-reply-time line — the one you chose at Brand → Chat widget → Messages → Reply Time, in their own language — so they know roughly how long they are waiting.
  • Nobody is online. The visitor gets a short built-in "we are not available right now" notice, and if Yaplet does not already have their email address, an email box appears so they can leave one and be answered later.

Both messages are stored in the conversation, so a colleague opening it afterwards sees exactly what the visitor was told. There is no page anywhere in Yaplet for editing the offline notice — it is built in, and each visitor reads it in their own language.

What your colleague sees

  • The whole scripted conversation, in order — every message the bot sent, every button the visitor clicked, and every answer they typed.
  • What you wrote under Note for the colleague, if anything, as an internal note the visitor never sees.
  • The visitor's email address on their profile, if the script collected one.
  • The same thread, continued. The visitor never has to repeat themselves.

Who is allowed to pick it up

Access is decided per brand. A teammate can only see a conversation if they have been granted the brand that the chat widget belongs to. Owners and administrators always have access to every brand; everyone else is granted brands explicitly.

  1. Open your account menu — your avatar in the top right — and choose Manage team.
  2. Open the teammate.
  3. Under Brand access, switch on the brands they should be able to work in, and save.

This also decides the "is anybody online?" check above: only people who can actually open the conversation are counted as available.

Setting expectations before the handover

Put a Show expected reply time step immediately before Request agent. It posts the wait-time line on its own, before the handover happens, which reads better than dropping someone into a silent queue.

When nobody picks up

You can also plan for the moment nobody takes the conversation. Build a separate workflow and choose Nobody picked up under Starts when. It starts the set number of Minutes (5 by default, 45 at most) after the visitor asked for a colleague — but only if nobody has taken the conversation and nobody on your team has written to the visitor since. It runs once per request; if the visitor asks again, the clock starts over.

Use it to apologize for the wait, ask for an email address so your team can answer later, or offer a callback. It works in website chat, Facebook, Instagram and email — not on phone calls, where nobody is ever handed over.

Handing over to the AI instead

If what you want is an AI answer rather than a person, use Send to VEX AI in place of Request agent. You write the question that gets passed over, and the brand's Vex agent answers it from everything the brand knows. The brand needs a Vex agent for this to do anything at all.

There is a related setting worth knowing about on the AI side. On Brand → Vex → Personality → Agent Handoff there is a switch called Automatic Agent Handoff. When you turn it off, the screen tells you why you probably want a workflow instead: without it "the AI might tell visitors it's connecting them to an agent without actually doing so". It even names the recipe — build a workflow for this brand with the trigger User says and the intent "The user wants to talk to the support team", and let that workflow do the handing over.

One channel note

A Request agent step rules the whole workflow out of phone calls. On a call there is nobody to hand the caller to, so a script containing this step is simply never offered on the phone. It works normally in chat, in Facebook and Instagram messages, and in email conversations.

Next step

Learn how several workflows behave when they could all fire at once: Run multiple workflows at the same time. Not sure whether to script this at all? Which chatbot should I use — Vex AI or workflows?

Did this article answer your question?