Where a workflow can run
Why some workflows cannot run on Facebook, Instagram, email or phone calls, which steps and triggers decide it, how a workflow reaches someone who wrote in by email, and how it behaves on a call.
The five channels
A workflow belongs to one brand and can run anywhere that brand talks to people:
- The chat widget — always. Every workflow can run here, whatever steps it contains.
- Facebook Messenger — the brand's Facebook page conversations.
- Instagram — the brand's Instagram direct messages.
- Email — messages sent to the brand's inbound email address and answered by Vex.
- Phone calls — a call answered by the brand's voice agent.
The Channels column on Brand → (your brand) → Workflows shows all five as icons on every row. A greyed-out icon means this workflow cannot run there; hover it and the tooltip says why.
Which trigger starts where
The steps decide where a workflow can run; the trigger decides where it starts by itself. A workflow starts automatically only on a channel both allow.
| Trigger | Starts by itself on |
|---|---|
| User says | All five channels — wherever the AI answers |
| Rating given | The chat widget, Facebook and Instagram |
| Nobody picked up | The chat widget, Facebook, Instagram and email |
| Chat open, Chat closed, Visit, Online since, Custom event | The chat widget only |
| No automatic start | Nowhere |
Whatever the trigger, you can always start a workflow by hand: from the inbox, from another workflow's Start a workflow step, or from your website (a Home button, a conversation starter, Yaplet.startBot).
What blocks Facebook and Instagram
A Start a form step, and nothing else.
Facebook and Instagram conversations have no way to display a Yaplet form, so a workflow that tries to open one cannot run there. The tooltip reads "Cannot run on Facebook — it contains a form step", and the same for Instagram.
What blocks email
Any one of these steps: Ask a question, Buttons, Start a form, Send to VEX AI, or Collect data for anything other than the customer's email.
The reason is simple: an email that arrives later never continues a paused workflow — it starts a fresh turn with the AI. So a step that waits for the person's answer would wait forever. Collect data for the customer's email is the one exception, because the address is already known from the sender and the step fills itself in without asking.
The tooltip reads "Cannot run on email — it contains a question, buttons, form, Vex AI or a collect-data step other than the customer's email".
How a workflow reaches an email sender
A workflow running on an email conversation does not send a message per step. Everything the run produces — messages, the expected reply time, a link, and the confirmation and offline notice of a Request agent step — is collected and sent as one email at the end of the run, inside the thread the person already has with you. Their reply lands back in the same conversation.
A Call an API step runs on every channel, but it sends nothing by itself: what it fetched reaches the person only when a later step puts it into a message.
Two things are deliberately left out of that email: the "written by AI" line (a workflow is your script, not the AI's words) and the "Talk to a human" button. In the inbox the sent rows carry the envelope label, exactly like any other email you send. If the email cannot be sent — no verified sender address, no visitor email, a mail-provider error — a private event in the inbox says so, and the messages shown above it were not delivered.
What blocks phone calls
Any one of these eight steps: Start a form, Open link, Buttons, Show expected reply time, Request agent, Collect data, Ask a question or Stop — don't reply.
The first five need something a voice line does not have — a screen to render on, a link to click, a person to transfer to. Collect data and Ask a question are a current limitation: on a call there is no chat message to hang the visitor's answer off, so the workflow cannot pause and resume on the caller's next sentence. And a caller cannot be answered with silence, which is all Stop — don't reply does.
The tooltip spells the whole list out: "Cannot run on phone calls — it contains a form, link, buttons, reply-time, request-agent, collect-data, ask-question or stop step".
Making a workflow phone-safe
Drop the visual steps
Remove forms, links and button menus. On a call there is nothing to look at and nothing to click.
Let the AI ask instead of collecting
Where the workflow was collecting fields or asking a stored question, hand the question to the brand's Vex agent with a Send to VEX AI step, which works on a call.
Remove the handoff
A call cannot be transferred to a colleague from inside a workflow, so Request agent and Show expected reply time have to go.
Save and check the icons
Compatibility is recalculated on every save. Go back to the Workflows list and the phone icon should no longer be greyed out.
How a workflow behaves on a call
A workflow runs on a call the same way it runs in a chat, with these differences:
- Only the brand's own workflows. A call is offered the workflows of the voice agent's own brand — never another brand's in the same organization.
- Conditions takes one branch. Only the branch that matches runs, exactly as in a chat. (Until recently, every branch of a Conditions step ran on a call, one after another.)
- Placeholders are spoken. A value in a Write a message step, like
{{ order_id }}, is filled in and read out to the caller. - Call an API is kept short. On a call the request gets at most 4 seconds and a single try, whatever the step's own settings say, because a caller cannot be left in silence. If it fails and you drew no Failed branch, the caller hears "Sorry, I couldn't complete that request right now." in the language of the call.