This article walks you through configuring a Triage Policy in Horizon, including setting up classification steps, text generation steps, title formulas, and triage hints that give you deterministic control over how tickets are classified and titled.
Where to find it: Admin Panel → Components → Triage → Policies
Picklist steps classify tickets into predefined field values (e.g., Priority, Issue Type). All picklist steps run in parallel.
priority, issueType, subIssueType in Autotask).Text steps generate or assemble values for text fields like the ticket title. They run after picklist steps and can use picklist results as context.
title).Formulas let you define a template for the output instead of relying entirely on AI. A formula uses {{namespace:key}} tokens that are replaced with real values at triage time.
| Namespace | What It Resolves From | Example |
|---|---|---|
field |
The ticket's current field values (before triage) | {{field:title}}, {{field:queueID}} |
result |
Triage classification results from earlier steps | {{result:priority}}, {{result:issueType}} |
contact |
The linked contact's attributes | {{contact:firstName}}, {{contact:lastName}} |
company |
The linked company's attributes | {{company:companyName}} |
ai |
AI-generated text for this step | {{ai:text}} |
Note: Field names within each namespace use your helpdesk provider's native naming. The examples above use Autotask field names. ConnectWise, HaloPSA, and other providers will have different field names.
Use the pipe character (|) to define fallbacks. If the first value is empty, the next one is tried. Segments without a colon are treated as literal text.
{{result:priority|field:priority}} — Use triage result, or fall back to the ticket's current priority if triage skipped it.{{result:priority|N/A}} — Use triage result, or show "N/A" if empty.{{result:priority|field:priority|Unclassified}} — Try result, then field, then the literal "Unclassified".{{contact:firstName|Unknown}} — Use contact name, or "Unknown" if no contact is linked.| Formula | Example Output | Uses AI? |
|---|---|---|
{{result:priority|field:priority}} - {{field:title}} |
High - Printer is down | No |
{{result:priority}} {{contact:firstName}} - {{ai:text}} |
Critical John - Server connectivity failure on VLAN 12 | Yes |
[{{result:priority|Unclassified}}] {{company:companyName|?}} - {{ai:text}} |
[High] Contoso Corp - Printer paper jam on floor 3 | Yes |
{{field:title}} |
Printer is down | No (passes through original title unchanged) |
{{ai:text}}, the AI runs first, then the formula wraps the AI output with other variables.{{ai:text}}, the AI is skipped entirely. This is faster and costs nothing.Hints give the AI additional context to improve classification accuracy. They are injected into the AI's system prompt when triage runs. There are three levels of hints, each layering on top of the previous.
Where to find it: Admin Panel → Components → Triage → Customer Context
These are MSP-wide hints that apply to every ticket triaged under your account. Use them to tell the AI about your business, common terminology, or classification preferences that apply across all customers.
Each hint has a Label (the category, e.g., "Industry", "Naming Convention") and a Body (the instruction). Examples:
| Label | Body |
|---|---|
| Industry | We are an MSP serving manufacturing and healthcare clients. |
| Priority Rules | Any ticket mentioning "production down" or "server offline" should be Critical priority. |
| Naming Convention | Tickets about recurring maintenance should be classified as IT:Change, not IT:Problem. |
Company hints are scoped to a specific customer company. When a ticket is linked to that company, its hints are used instead of any account-level hint with the same label. Non-overridden account-level hints still apply.
For example, if you have an account-level hint with label "Priority Rules" and a company-level hint for ABLE Manufacturing with the same label "Priority Rules", the company version wins for ABLE Manufacturing tickets. All other customers still see the account-level version.
Account-level: Admin Panel → Components → Triage → Field Hints
Policy-level: Open a policy → Field Hints tab
These hints operate at the picklist value level. For each picklist value in your helpdesk (e.g., each Priority option, each Issue Type), you can configure:
Account-level settings apply to all policies. Policy-level exclusions add additional exclusions on top of account-level settings, allowing different policies to offer different picklist options to the AI.
Your triage policy now has classification and text generation steps configured. When triage runs on a ticket, picklist fields are classified first, then text fields are generated using your formulas (or AI). The results appear as recommended changes on the ticket, subject to your confidence thresholds.