Workflows
Last updated February 28, 2026
Visual automation for ticket routing and state changes.
Workflows automate repetitive ticket operations with a visual node builder.
Availability
Workflow access requires:
- Organization role:
owneroradmin - Plan:
growthorenterprise
Builder model
A workflow is a graph of:
- Trigger nodes
- Condition nodes
- Action nodes
Current trigger nodes
on_ticket_createdon_status_changedon_ticket_assigned
Current condition node
if_condition(expression-based branching)
Current action nodes
change_statuschange_priorityassign_to_user
Practical use cases
- Route new tickets from specific templates
- Escalate priority when status changes indicate risk
- Auto-assign ownership for repeatable categories
Start simple, then layer conditions to avoid brittle automation.
Step-by-step example: auto-escalate urgent tickets
This example creates a workflow that automatically sets priority to urgent when a new ticket is created from a specific template:
- Add a trigger node -- Select
on_ticket_created - Add a condition node -- Configure
if_conditionwith:- Field:
template.name - Operator:
equals - Value:
"Outage Report"
- Field:
- Add an action node -- Select
change_priorityand set the target tourgent - Connect the nodes -- Trigger > Condition (true branch) > Action
- Save and activate the workflow
When a customer submits an "Outage Report" ticket, the workflow fires and escalates priority without agent intervention.
How conditions work
The if_condition node evaluates a single expression composed of three parts:
- Field -- The ticket property to evaluate (e.g.,
status,priority,template.name,website.domain) - Operator -- The comparison type:
equals,not_equals,contains,greater_than,less_than - Value -- The target value to compare against. String values are case-insensitive.
The condition node produces two branches: true (condition met) and false (condition not met). You can chain multiple condition nodes to build complex logic trees.
Common workflow patterns
| Pattern | Trigger | Condition | Action |
|---|---|---|---|
| Auto-assign by template | on_ticket_created | template.name equals "Billing" | assign_to_user (billing lead) |
| Escalate stale tickets | on_status_changed | status equals "open" | change_priority to high |
| Close resolved tickets | on_status_changed | status equals "resolved" | change_status to closed |
Best practices
- One workflow per concern. Avoid building a single workflow that handles multiple unrelated automations. Keep each workflow focused on one outcome.
- Test with low-risk tickets first. Activate new workflows on a staging website before applying them organization-wide.
- Document your logic. Use descriptive workflow names (e.g., "Escalate outage reports") so other admins understand the intent without opening the builder.
- Review regularly. As your team structure or templates change, audit existing workflows to ensure conditions still match.
- Avoid circular triggers. A workflow that changes status can trigger
on_status_changed, which can trigger another workflow. Vicket prevents infinite loops, but unintended chains still produce confusing results.