Filter Tickets
Filtering tickets is a core part of building effective workflows in NeoAgent. Filters determine which tickets a workflow will process, giving you precise control over automation.
Building Filter Conditions
You can construct filter conditions using a combination of deterministic rules and boolean logic.
- Fields and Operators: Select ticket fields (e.g.,
Board.Name
,Company.Name
,Status
,Priority
) and use various operators (e.g.,=
,contains
,does not contain
,greater than
) to define specific criteria. - Adding Rules and Groups:
- Click the
+ Rule
button to add an individual condition. - Click the
+ Group
button to create a nested set of conditions, which can have its ownAND
orOR
logic.
- Click the
- AND/OR Boolean Logic: Combine multiple rules and groups using
AND
orOR
logic. This allows for complex scenarios. For instance, in the image above, the top-level condition is anAND
that combines:- A single rule:
Board.Name = Help Desk Triage
- An
OR
group with two rules:Company.Name = Ebay
Company.Name = Catchall
- A single rule:
This means a ticket will be processed if its board name is "Help Desk Triage" AND its company name is either "Ebay" OR "Catchall".
Custom Field Conditions
- The "Use custom field conditions" toggle (shown at the bottom of the image) allows to filter Ticket's custom fields (user-defined fields) for more advanced scenarios
[Extra] Fields & Conditions
These fields provide values that extend filtering capabilities beyond standard PSA fields. These values are calculated by NeoAgent and can be used to construct complex filter conditions. Availability may differ slightly based on your PSA.
Common [Extra] Fields
Field | Description | Example use |
---|---|---|
[Extra] # Technicians Worked on Ticket | Count of unique technicians that have worked the ticket. | > 1 |
[Extra] # Hours since the last Time Entry was updated | Hours elapsed since the most recent time entry update. | > 24 |
[Extra] # Hours since the last Ticket Note was updated | Hours elapsed since the most recent ticket note update. | > 12 |
[Extra] Ticket Notes contain | Boolean – True when any ticket note includes the provided text. | "VPN" |
[Extra] Audit Trail Contains | Boolean – True when the ticket audit trail includes the provided text. | "status changed" |
Autotask-specific fields
Field | Description |
---|---|
# Time Entries count | Total number of time entries associated with the ticket. |
# Hours worked on the Ticket | Sum of actual hours logged on the ticket. |
[Extra] Last Customer Ticket Note Contain | Boolean – True if the last customer-facing note contains the provided text. |
[Extra] Actual vs. Estimated Hours ("Actual" minus "Estimated" in minutes) | Difference between actual logged hours and estimated hours (in minutes). |
[Extra] Title DOES NOT contain | Boolean – True if the ticket title does NOT contain the provided text. |
[Extra] Count of Service Calls Scheduled for Anytime in the Future | Count of service calls scheduled at any point in the future. |
[Extra] Count of Todos Scheduled for Anytime in the Future | Count of todos scheduled at any point in the future. |
[Extra] Count of Service Calls Scheduled for Today | Count of service calls scheduled for the current day. |
[Extra] Count of Incomplete Service Calls Scheduled for Today | Count of incomplete service calls scheduled for the current day. |
[Extra] Count of Incomplete Service Calls Scheduled for Yesterday | Count of incomplete service calls that were scheduled for the previous day. |
[Extra] Count of Todos Scheduled for Today | Count of todos scheduled for the current day. |
[Extra] Company Classification | Classification name of the company associated with the ticket. |
[Extra] Ticket is Overdue | Boolean – True if the ticket is currently overdue based on its due date. |
# Days since Ticket was Created | Days that have passed since the ticket was created. |
# Days since Ticket was Updated | Days that have passed since the ticket was last updated. |
# Days since Ticket was Closed (resolved) | Days that have passed since the ticket was closed/resolved. |
ConnectWise-specific fields
Field | Description |
---|---|
[Extra] Ticket's longest time entry duration (in minutes) | Longest single time entry duration recorded for the ticket. |
[Extra] Has upcoming Scheduled Entry | Boolean – True if a scheduled entry exists in the future. |
[Extra] # of days since ticket contact was contacted via email | Days since the primary ticket contact was last emailed. |
[Extra] Minutes spent in current Status | Minutes the ticket has spent in its current status. |
[Extra] Minutes before the first contact via email | Minutes from ticket creation until the first email contact was sent. |
[Extra] Was in specified Status | Boolean – True if the ticket has ever been in the specified status. |
# Days since Ticket was Created | Days that have passed since the ticket was created. |
# Minutes since Ticket was Created | Minutes that have passed since the ticket was created. |
# Days since Ticket was Updated | Days that have passed since the ticket was last updated. |
# Days since Ticket was Closed | Days that have passed since the ticket was closed. |
If you require additional [Extra] fields tailored to your specific needs, please contact NeoAgent support.
[AI] Fields & Conditions
- These AI-powered fields provide values (often boolean, indicating a match or a classification) based on analysis of ticket content, intent, or sentiment. These values are then used to build filter conditions.
- These fields often require additional input to specify what the AI should look for.
- Important: Using AI-powered fields consumes 1 credit per ticket that is evaluated by the filter condition.
Common [AI] Fields
Field | Description | Example |
---|---|---|
[AI] Ticket content is related to | Boolean – True if the AI determines the ticket's content (title, description, notes) is semantically related to the specified topic or keyword. | "printer issue" |
[AI] Ticket config is related to | Boolean – True if the AI determines the ticket is semantically related to the specified configuration/asset. | "Server XYZ" |
- Example: Only process tickets where
[AI] Ticket content is related to "printer issue"
or[AI] Ticket config is related to "server XYZ"
.
Example: Filtering Tickets with Extra and AI Fields
The screenshot above shows how you can combine standard, [Extra], and [AI] fields to build powerful ticket filters. In this example:
- The filter will only match tickets where:
- The Board Name is "Help Desk Triage"
- [Extra] Technician Worked on Ticket is greater than 2
- [AI] Ticket content is related to "Security Issue"
You can mix and match as many conditions as needed, using AND/OR logic, to precisely target the tickets you want your workflow to process.
Example: Complex Logic with Standard Fields
This example demonstrates how to combine multiple standard PSA fields with nested AND
and OR
conditions to create sophisticated filters.
In the screenshot above, the filter is configured as follows:
- The top-level condition is an
AND
. - This
AND
condition combines twoOR
groups:- The first
OR
group targets tickets where:Board.Name
is "Professional Services" ORBoard.Name
is "Integration"
- The second
OR
group targets tickets where:Status.Name
is "Waiting on Customer" ORStatus.Name
is "Waiting on Down Payment"
- The first
A ticket will only be processed by the workflow if both OR
group conditions are met. That is, the ticket must belong to either the "Professional Services" or "Integration" board AND its status must be either "Waiting on Customer" or "Waiting on Down Payment".
If you require additional [AI] fields or have specific use cases for AI-powered filtering, please contact NeoAgent support to discuss possibilities.