Skip to content

Workflows

Workflows automate what happens to conversations, so you don’t have to tag/assign/route the same kind of ticket by hand every time. Every workflow has the same shape:

TriggerConversation created by customer
ConditionSubject contains "refund"
ActionAdd tag "billing", assign to Anyone

A trigger, a set of conditions (optionally grouped with “and”/“or”), and one or more actions run in order. Managed under Settings → Workflows — creating, editing, reordering, and deleting them is an admin task, but using the ones that exist is everyone’s.

  • Automatic workflows run themselves — when a conversation arrives or changes, plus once an hour for anything based purely on elapsed time.
  • Manual workflows don’t run on their own. You apply one deliberately, to conversations you’ve selected in the list view, via the bulk-actions bar’s Workflow dropdown (“Run manual workflow”).

Conversation created (by customer or by a user), customer replied, user replied, note added, status changed, assignee changed, moved, customer changed — plus the hourly time-based recheck mentioned above. There’s no “tag added” trigger; tags are something you filter on, not something you react to directly.

Grouped by what they look at:

  • Conversation — Subject, Body, From, To, Cc, Has attachments, Conversation type, Status, Assignee, Tag
  • Customer — Customer email, Customer name
  • Timing — Created, Waiting since, Since last agent reply, Since last customer reply

Each has operators appropriate to its type — contains / doesn’t contain / is / is not / starts with / ends with / matches regex / is more than / is less than.

Assign to user, Change status, Move to mailbox, Add tag, Remove tag, Send reply, Add a note, Forward, Mark as spam, Delete conversation, and Stop processing rules. They run top to bottom — put Stop processing rules last, or the editor will warn you. Send reply and Add a note both accept template variables: {%customer.first_name%}, {%customer.full_name%}, {%mailbox.name%}, {%conversation.number%}.

Workflows brought in from a FreeScout import always land deactivated — review and turn each one on deliberately rather than trusting an automated translation to have gotten the intent right.