Build a workflow
Create and set live a workflow that automates routing, SLAs and housekeeping on conversations and tickets, with every trigger and action listed.
Workflows watch for events on conversations and tickets, then run conditions and actions automatically, with no teammate needed. This article explains how a workflow is built and lists every trigger and action.
Find them at Admin > Settings > Workflows, in the AI & Automation section.
Note: Workflows appear when the support inbox is on (the Support module in Admin > Settings > General). On Quackback Cloud, workflows are included from the Business plan.
Create a workflow
- Go to Admin > Settings > Workflows and click New workflow.
- Choose Create from template or Create from scratch. Templates are the fastest start (see Start from a workflow template).
- Pick a trigger, then add steps.
- Click Save. A new workflow is a Draft and does not run.
- Click Set live when you're ready. Use Pause to stop a live workflow without deleting it.
Each workflow is either Customer-facing (it can hold a guided conversation in Messenger and wait for the customer's reply) or Background (it acts behind the scenes and never waits for a reply).
How a workflow is built
A workflow starts with a trigger, then runs through steps:
- Conditions decide whether the run continues.
- Branches split the run into named paths.
- Waits pause the run, for up to 90 days, before continuing.
- Actions change the conversation or ticket.
- Blocks post messages and collect answers in Messenger (customer-facing workflows only). See Workflow blocks.
Live workflows run in the order shown on the Workflows page. For customer-facing workflows the first match wins, and drafts never run.
Triggers
Trigger | Runs when |
|---|---|
New conversation | A new conversation starts |
Message received | A customer or teammate sends a message |
Status changed | A conversation's status changes |
Assigned to team or agent | A conversation is assigned or unassigned, including auto-routing |
Priority changed | A conversation's priority changes |
Attribute changed | A conversation attribute is set or changed by AI or a teammate |
CSAT rating submitted | A customer submits a satisfaction rating |
Internal note added | A teammate adds an internal note |
AI agent handed off to a human | Quinn hands a conversation to your team |
AI agent resolved the conversation | Quinn settles a conversation without a handoff |
Customer stopped responding | The customer has been silent for a set time after the last reply |
Teammate hasn't responded | No teammate has replied for a set time after the customer's last message |
SLA approaching breach | An SLA deadline is close |
SLA breached | An SLA deadline has passed |
Ticket created | A new ticket is created |
Ticket status changed | A ticket's status changes |
Note: The two "not responding" triggers never fire on a closed or snoozed conversation. The ticket triggers only fire when the ticket is linked to a customer conversation.
Actions
Action | What it does |
|---|---|
Assign to teammate | Assigns the conversation or ticket to a teammate |
Assign to team | Assigns it to a team |
Add tag | Adds a tag |
Remove tag | Removes a tag |
Set priority | Changes the priority |
Snooze | Snoozes the conversation for a set time |
Close conversation | Closes the conversation |
Reopen conversation | Reopens a closed conversation |
Apply SLA policy | Applies an SLA policy |
Set attribute | Sets a conversation attribute |
Add internal note | Adds an internal note |
Set ticket status | Changes the linked ticket's status |
Convert to ticket | Converts the conversation into a ticket |
Send webhook | Sends the event to an HTTPS URL |
Note: Send webhook only accepts HTTPS URLs. See Webhooks for the payload format and signature verification.
Preview, versions and manual runs
- Preview runs the workflow against a real conversation without changing anything. Conditions and branches are evaluated against that conversation's data, but no message is sent and no action runs.
- Version history keeps every save, up to 50 versions per workflow. Open it to restore an earlier version.
- Manual runs: from a conversation, use Run a workflow in the composer to run a workflow once against that conversation. A manual run skips the trigger's targeting checks (audience, channel, send window and frequency caps), but every condition and branch inside the workflow still applies.
Related articles
Was this helpful?
Your feedback shapes what we write next.
