StyloDocs

Conditions

Filter which tickets a Response Workflow applies to based on ticket fields, tags, and custom data.

View as Markdown

Conditions let you control exactly which tickets a Response Workflow runs on. Instead of matching every ticket, you can filter by ticket status, channel, tags, requester info, and custom fields — ensuring the workflow only fires when it's relevant.

How conditions work

Conditions are evaluated before a workflow executes. If the ticket doesn't match the conditions, the workflow is skipped entirely — no response is generated, no resources are used.

Conditions use three logic groups that are combined with AND:

GroupLogicMeaning
All ofANDEvery condition in this group must be true
Any ofORAt least one condition must be true
None ofNOTNo condition in this group can be true

All three groups must pass for the workflow to run. If any group fails, the workflow is skipped.

Example: A workflow that handles refund requests might use:

  • All of: Status is "open", Channel is "email"
  • Any of: Tags contain "refund" OR Subject contains "return"
  • None of: Tags contain "vip" (VIP customers get routed to a senior agent instead)

Available fields

Standard ticket fields

FieldTypeDescription
SubjectTextThe ticket subject line
StatusTextCurrent ticket status (new, open, pending, solved, closed)
ChannelTextHow the ticket was created (email, web, chat, phone, etc.)
PriorityTextTicket priority level (low, normal, high, urgent)
TagsTagsTags applied to the ticket

People fields

FieldTypeDescription
Requester nameTextThe customer's name
Requester emailTextThe customer's email address
Assignee nameTextThe assigned agent's name
Organization nameTextThe requester's organization

Custom fields

You can also filter on Zendesk custom fields. Select the field from the dropdown and choose the appropriate operator for the field type (text, number, or dropdown).

Operators

Text fields

OperatorMatches when...
EqualsField value exactly matches the specified value
Not equalsField value does not match
ContainsField value includes the specified text anywhere
Not containsField value does not include the text
Starts withField value begins with the specified text
Ends withField value ends with the specified text

Numeric fields (custom fields)

OperatorMatches when...
EqualsField value exactly matches the number
Not equalsField value does not match
Greater thanField value is above the threshold
Greater than or equalsField value is at or above the threshold
Less thanField value is below the threshold
Less than or equalsField value is at or below the threshold

Tag fields

OperatorMatches when...
Contains anyAt least one of the specified tags is present
Contains allAll of the specified tags are present
Not contains anyNone of the specified tags are present
Not contains allNot all of the specified tags are present (some may be)

Presence

OperatorMatches when...
Is presentThe field has any value (not empty or null)
Is not presentThe field is empty or null

Setting up conditions

  1. Open your workflow and go to the Conditions section
  2. Add conditions to the appropriate logic group (all of, any of, none of)
  3. For each condition, select the field, operator, and value
  4. Conditions are saved automatically as you edit

Leave conditions empty if the workflow should match any ticket — the classification step (based on the "when to use" description) still controls whether the workflow fires.

Conditions vs. "When to use"

These serve different purposes:

Conditions"When to use"
How it worksDeterministic field matchingAI classification based on description
When it runsBefore classificationDuring classification
Use forHard requirements (must be this status, must have this tag)Soft matching (ticket topic, customer intent)

Use conditions for absolute requirements ("only run on open tickets in the email channel") and "when to use" for intent matching ("customer asking about order status").

Common patterns

Channel-specific workflows:

  • All of: Channel equals "chat"
  • Ensures the workflow only generates responses appropriate for live chat (shorter, more conversational)

Priority routing:

  • None of: Priority equals "urgent"
  • Skips the workflow for urgent tickets, letting agents handle them directly

Tag-based activation:

  • Any of: Tags contain any ["billing", "payment", "invoice"]
  • Fires for any billing-related ticket regardless of exact wording

VIP exclusion:

  • None of: Tags contain any ["vip", "enterprise"]
  • Routes VIP customers to human agents instead of automated responses

Custom field filtering:

  • All of: Custom field "order_value" greater than 500
  • Only handles high-value orders with this workflow (useful paired with escalation rules)

Tips

  • Start broad, then narrow. Begin with no conditions and use the "when to use" description for matching. Add conditions once you identify specific cases that need filtering.
  • Combine conditions with escalation rules. Conditions prevent a workflow from running at all. Escalation rules let the workflow run but prevent it from responding if certain criteria are met. Use conditions for coarse filtering and escalation rules for fine-grained safety checks.
  • Test your conditions. Use the test panel with different ticket IDs to verify your conditions match the right tickets and exclude the wrong ones.

On this page