Skip to content

How to Use the Filter Actions in HappyFox Workflows

Views
3
Last updated

This article explains how to configure the Filter Tickets and Filter Contacts actions in HappyFox Workflows, including how condition matching, result limits, and field-specific operators work.

Applicable Plans: Available on all plans.

What these actions do

Filter Tickets and Filter Contacts search HappyFox Help Desk for records that match one or more conditions you define, and return the matching results for use in later workflow steps. Both actions work the same way — you add conditions, choose which condition group they belong to, and set a limit on how many results come back.

 

Filter Assets searches HappyFox assets the same way, but with two differences worth knowing upfront:

How condition matching works

The Filter Tickets and Filter Contacts actions show two separate condition groups on the same screen:

Each group has its own + button — labeled Add condition on hover — for adding conditions to that group. This uses the same AND/OR structure as combining trigger conditions when starting a workflow.

The Filter Tickets action configuration panel, showing the separate Match All and Match Any condition groups, the Add condition button, and the Number of tickets to be filtered field.

Note: When conditions are indicated in BOTH Match All and Match Any, the overall evaluation is done as [Match ALL conditions] AND [Match ANY one condition]

Result limits and sort order

Note: By default, Filter Tickets returns up to 10 matching tickets, sorted by Last Modified At in descending order — the most recently updated ticket first. Set Number of tickets to be filtered to raise this to a maximum of 25.

Note: Filter Contacts returns up to 10 matching contacts by default, sorted by ID in descending order — not by last modified date. Set Number of contacts to be filtered to raise this to a maximum of 25.

Note: If no tickets or contacts match the conditions you've configured, the filter action has an empty output and continues past this step. If you can want to configure a dedicated block to check if there are no filtered records, you would be able to do that. 

Note: Matched tickets or contacts are available in later workflow steps as a merge field array, indexed starting at 0 — the first matching record is index 0, the second is index 1, and so on. See how to use merge fields and dynamic variables for the exact syntax once that article is published.

Filter Tickets — available conditions

Available operators depend on the field type. This is most visible on Ticket Custom Fields, where the operator list changes based on whether the underlying field is a dropdown, text, number, or date field.

Field Available operators
Status Is, Is Not
Status Behavior (Pending / Completed group) Is, Is Not
Priority Is, Is Not
Assignee Is, Is Not, Is Set, Is Not Set
Category Is, Is Not
Due Date Is, Is Not (with Yesterday, Today, Tomorrow, Next 7 Days, a specific date, or a date range), Is Set, Is Not Set
Tags Contains, Does Not Contain, Is Empty, Is Not Empty
Unresponded No operator — filters for unresponded tickets directly
Subscribed No operator — filters for tickets with subscribers directly
Has Attachments No operator — filters for tickets with attachments directly
SLA Breached No operator — filters for tickets that have breached SLA directly
Ticket Custom Fields Dropdown/multi-select and text fields: Is, Is Not, Is Set, Is Not Set. Number fields add: less than, less than or equal to, greater than, greater than or equal to. Date fields: Is, Is Not, Is Set, Is Not Set, on or before, on or after
Ticket Visibility (Private / Public) Is, Is Not
No. of Messages Is, Is Not, less than, less than or equal to, greater than, greater than or equal to
Created On, Before, On or Before, After, On or After, Between
Last Contact Reply On, Before, On or Before, After, On or After, Between
Last Modified At On, Before, On or Before, After, On or After, Between
Last Staff Reply On, Before, On or Before, After, On or After, Between
Last Updated At On, Before, On or Before, After, On or After, Between
Contact (by contact ID) Is, Is Not
Subject Contains, Does Not Contain
Ticket ID Is

Note: Contains, Does Not Contain, and other text-based operators are case-sensitive — "Refund" and "refund" are treated as different values.

Filter Contacts — available conditions

Field Available operators
Name Is, Is Not
Email Is, Is Not
Contact Phone Number Is, Is Not
Contact Custom Fields Dropdown/multi-select and text fields: Is, Is Not, Is Set, Is Not Set. Number fields add: less than, less than or equal to, greater than, greater than or equal to. Date fields: Is, Is Not, Is Set, Is Not Set, on or before, on or after

 

Filter Assets — available conditions

Field Available operators
Asset Type Is
Asset Custom Fields Is only. For dropdown or multi-select custom fields, you pick from the available options. For text, textarea, number, or date custom fields, you enter a matching value.

Note: Unlike Ticket Custom Fields and Contact Custom Fields, Asset Custom Fields only support Is — there's no Is Not, no Is Set/Is Not Set, and no greater-than/less-than comparison, even for number or date fields.

Note: Filter Assets returns full asset records, not just IDs. If you only need details for one specific asset rather than a filtered list, use Get Asset Info instead — it looks up a single asset directly by Asset ID or Display ID (you need at least one of the two) and is simpler than filtering when you already know which asset you want.

How to use it

  1. In your workflow, add a new step, then type into the action search field and select Filter Tickets or Filter Contacts from the HappyFox Helpdesk group of results.

    Searching for and selecting the Filter Tickets action under the HappyFox Helpdesk group when adding a new workflow step.

  2. Click + under Match All to add a condition that must always be true, or under Match Any to add a condition where only one match is required.

  3. In the Add Filter row, select the field you want to filter by from the Select field dropdown — for example, Status or Priority for tickets, or Email for contacts.

    The Select field dropdown showing available ticket fields, including Status, Priority, Assignee, Category, and Due Date.

  4. Select the operator for that field. Available operators depend on the field type — see the tables above.

  5. Enter or select the value to match against.

  6. Repeat steps 2–5 for each additional condition, adding it to whichever group — Match All or Match Any — matches your logic.

  7. Enter a value in Number of tickets to be filtered (or Number of contacts to be filtered) if you want to raise the default limit, up to a maximum of 25.

  8. Click Save & Test to save the action and confirm it returns the results you expect.

Your Filter Tickets or Filter Contacts action now returns only the records that match your defined conditions, ready to use in later workflow steps. 

 

Tags