Understanding Service Desk and Managing Tickets
Learn how to use the Harmony Service Desk to create tickets, manage conversations, assign work, use canned responses, and track SLA.
Understanding the Service Desk
The Service Desk is where you create, triage, and resolve IT support tickets. Tickets can be submitted via Slack, Microsoft Teams, email, or the web portal. The Harmony AI agent handles many requests automatically; human agents handle escalations and complex cases.
Understanding Desks
A desk is a service desk that groups teams and tickets. You may have access to one or more desks based on your roles. Each desk has its own teams, custom fields, tags, and canned responses.
Navigating the Tickets View
Open Tickets from the sidebar. Routes:
/tickets/desk/$deskId- Tickets for a specific desk/tickets/desk/all- All tickets across desks (when you have access to multiple desks)
The main view shows a table of tickets with columns for subject, status, priority, assignee, desk, SLA, and more. Use the toolbar filters and search to find specific tickets.
Switching Between Different Desks
Use the desk selector (sidebar or page header) to switch desks. Select a desk to see only its tickets.
Viewing All Tickets Across Desks
When you have access to multiple desks, choose All desks to see tickets from every desk you can access.

Creating and Managing Tickets
Creating a New Ticket

Click Create Ticket to open the creation dialog. Fill in the form and click Create.
You can also ask the IT Copilot to create a ticket on your behalf. Describe what you need in a conversation and the Copilot will collect all required details - title, ticket type, priority, and service desk - before asking for your confirmation. Nothing is created until you confirm.
Understanding Ticket Properties
Title
Required. Up to 255 characters.
Description
Required. Rich text (markdown). Up to 5000 characters. You can paste images from the clipboard or attach files from the editor.
Ticket Type
Request, Incident, Question, Task, or Change.
Priority
Low, Medium, High, or Urgent.
Desk
Which desk the ticket belongs to. Required.
Assignee
Team member or Harmony AI. Optional; defaults to Unassigned.
Reporter
(Service desk variant) Who reported the ticket. The reporter's office location is displayed next to their name for workload context.
Triggered Agent
A clickable link to the specific AI agent run that was triggered on this ticket, if any.
The Properties section uses a clean horizontal layout with one property per line. The reporter row is fully clickable - selecting the name, location, or dropdown chevron all open the reporter selector.
Setting Ticket Priority and Status
Priority is set when creating a ticket. Status is changed in the ticket preview panel: use the status selector in the Properties section. Statuses include Open, In Progress, Pending (Reporter, Approval, Internal Team, Third Party), Pending - On Hold, Resolved, Closed, Canceled.
Pending - On Hold Status
The Pending - On Hold status gives your team a dedicated way to mark tickets that are paused and waiting, without conflating them with other pending states:
SLA timers pause automatically while a ticket is on hold, so your metrics accurately reflect active work time.
All status transitions are available to and from Pending - On Hold, so agents can move tickets freely without restrictions.
Notifications fire as expected when a ticket enters or leaves this status.
Attaching Files to Tickets
Create form: Use the Attachments dropzone. Drag and drop files or paste images from the clipboard. Files upload before the ticket is created.
Description editor: Use the file picker in the Tiptap editor to attach files inline.
Using Custom Fields in Tickets
Custom fields are configured per desk and appear when you select that desk. Supported types:
Text
Text input
Number
Number input
Checkbox
Yes/No
Single Select
Dropdown with predefined options
Multi Select
Multi-select with predefined options
Mandatory custom fields are marked with an asterisk. Custom fields reset when you change desks.
Asset Fields for Desk Members
When a catalog item includes an asset selector field configured for desk member completion, agents see a searchable asset combobox in the ticket properties panel after the ticket is created. The selected asset is saved automatically. This field is only visible to desk members - portal users do not see or interact with it.
Creating and Linking Related Tickets
When creating a ticket (service desk variant), you can link it to an existing ticket:
In the Linked ticket from your desk section, choose a Relationship type: Relates to, Blocks, Blocked by, Duplicate of, Duplicated by, Depends on, Used by.
Use the Ticket combobox to search and select the ticket to link.
The new ticket is created and linked in one action.
Viewing Linked External ITSM Tickets
If your organization uses external ITSM tools such as ServiceNow or Jira, all active sync mappings for a ticket are available via the API. Pass include_linked_tickets=true as a query parameter when fetching a ticket to receive a linked_tickets field in the response. Each entry includes the provider name, ticket ID, display ID, and a direct URL so you can navigate straight to the corresponding record. Multiple mappings are fully supported - if a ticket has been exported to more than one tool, all links are returned in a single call.
Changing Ticket Type with the AI Agent
Harmony's AI Service Desk Agent can reclassify the type of an existing ticket without manual intervention. You can ask the agent to change a ticket to any of the following types:
Request - a standard service request
Incident - an unplanned disruption or service degradation
Task - an actionable work item (note: converting away from Task discards its checklist)
Change - a planned modification to your environment
The agent will confirm the reclassification with you before applying it, following the same confirmation flow as any other field update.
Creating Tickets from Catalog Forms
When an employee submits a catalog item form from the portal or Slack, the ticket is created directly from the saved form values. You receive your ticket confirmation immediately after submitting the form, with no additional processing steps or delays.
Working with Ticket Conversations
Viewing Ticket Details
Click a ticket row to open the ticket preview panel on the right. It shows description, properties, SLA, approvals, linked tickets, related assets/software, and chat.

Understanding the Ticket Preview Panel
The preview panel has configurable sections: SLA, Approvals, Properties, Linked tickets, Assigned assets, Assigned software, and Chat. Use the header settings to show, hide, or reorder sections. Some sections (e.g. Approvals, Linked tickets) can be set to "If exist" so they only appear when there is data.
Seeing Which Agent Was Triggered
A Triggered Agent field appears in the Properties section of the ticket preview panel as a clickable link, taking you directly to the specific agent run. In the ticket table view, a Triggered Agent column is also available - it is shown by default but can be hidden via column settings.
Resizing the Ticket Chat Panel
The chat section has a drag handle at the top. Drag it to resize the chat area. The entire preview panel can also be resized horizontally by dragging the left edge.
Adding Messages to Tickets
Type in the chat input at the bottom and send. You can mark messages as internal (visible only to agents) or external (visible to the reporter).
Ticket Status Updates in Conversation Threads
Key ticket events are automatically posted as system messages in the relevant conversation thread - whether you are working in Slack, Microsoft Teams, or the Harmony portal. The following events appear as thread messages:
Ticket created - a message appears when a new ticket is opened
Status changed - updates are shown whenever a ticket's status changes
Priority changed - the thread reflects any changes to ticket priority
Assignee changed - the thread shows reassignment events
This keeps your team fully informed without switching views.
Using @Mentions in Messages
Type @ to open a list of participants (reporter, assignee, watchers, others in the conversation). Select a person to insert a mention. Mentioned users receive notifications. Mentions use the format <@employeeId|DisplayName> and render as clickable badges that link to the person's profile.
Message Editing During Active Approvals
When a ticket is undergoing an active approval process, the edit and delete controls on all conversation messages are automatically hidden. This ensures that content being reviewed cannot be changed mid-decision. Once the approval is completed or overridden, the controls reappear automatically within a few seconds.
Replying to Ticket Conversations
Send messages in the chat. Replies appear in chronological order. You can attach files to messages.
Viewing Ticket Activity History
Activity (status changes, assignments, workflow events, approval actions, etc.) appears in the chat timeline and in the ticket's activity log. The activity timeline now captures all key stages of the workflow and approval lifecycle - see Workflow Activity in the Timeline and Approval Activity in the Audit Log below for details.
Workflow Activity in the Timeline
Workflow lifecycle events are recorded directly in the ticket activity log. When a workflow starts, progresses through approval steps, or is cancelled, these events appear in the ticket's activity timeline - giving agents and managers a clear picture of what happened and when. This makes it easier to audit workflow execution and understand how automated processes have interacted with a given ticket.
Assigning and Reassigning Tickets
Assigning Tickets to Team Members
Use the Assignee selector in the ticket Properties section. You can assign to any employee on the desk (or on the ticket's team when a team is set).
Assigning Tickets to Teams
Use the Team selector in Properties to assign the ticket to a team. Team membership filters the assignee list to that team's members.
Assigning Tickets to AI Agents
The assignee selector includes Harmony AI as an option. Assigning to Harmony AI routes the ticket to the AI agent for triage and resolution.
Moving Tickets Between Desks
Use Move to another desk in Properties. Select the target desk and confirm. The ticket's desk changes; custom fields may reset for the new desk.
Moving Tickets Between Teams
Use Move to team in Properties. Select the target team on the same desk. Assignee options update to the new team's members.
Reassigning Your Tickets
Change the assignee in Properties. The previous assignee is replaced by the new one.
Watching Tickets
Adding Watchers to Tickets
You can add any active employee in your organization as a watcher on a ticket - not just desk members or platform admins. The Add Watcher picker lists all active employees alphabetically, so you can notify the right people regardless of their role or team membership.
Automatic Watcher on Comment
Any user who posts a comment on a ticket is automatically added as a watcher, keeping them informed of all subsequent activity. This applies to all commenters, not only those who are explicitly mentioned or tagged. Watcher status persists if the ticket is moved to a different desk. AI agent responses do not trigger auto-watching.
Email CC Recipients as Watchers
When a ticket is created via email, anyone CC'd on that email is automatically added as a watcher. This ensures that all relevant parties receive ongoing updates without needing to be added manually.
Using Email as a Service Desk Channel
Automatic Reply Threading
When a user replies directly to an original inbound email, their reply is added as a new message within the existing ticket rather than creating a duplicate ticket. This applies to CC'd users and any other recipients replying to the original email.
CC Recipients Added as Watchers
When a ticket is created via email, anyone CC'd on that email is automatically added as a watcher so they receive updates throughout the ticket's lifecycle.
Using Canned Responses
What are Canned Responses?
Canned responses are reusable templates for common replies. Insert them into ticket messages to save time and keep responses consistent.
Creating Canned Response Templates
Canned responses are created in desk settings (Settings → Tickets → Canned Responses). Each template has a name, content, availability (Personal or Shared), and optional attachments.
Searching and Inserting Canned Responses
In the ticket chat, use the canned response action to open the Search canned responses dialog. Search by name, preview the content, and click to insert. Variables in the template are replaced with current ticket data before insertion.

Using Variables in Canned Responses
Insert variables into templates. They are replaced when the template is used:
{{ticket.subject}}
Ticket title
{{ticket.id}}
Ticket ID
{{ticket.description}}
Ticket description
{{ticket.reporter}}
Reporter name
{{ticket.agent}}
Assignee/agent name
{{ticket.status}}
Status
{{ticket.priority}}
Priority
{{ticket.source}}
Source
{{ticket.ticket_type}}
Type
{{desk_name}}
Desk name
{{currentUser}}
Current user name
{{portalUrl}}
Portal URL
Creating Personal vs Shared Canned Responses
When creating a template, set availability to Personal (only you) or Shared (all desk members).
Managing Canned Response Attachments
Templates can include attachments. Upload them when creating or editing the template. Attachments are included when the template is inserted.
Working with Knowledge Base Solutions
Inserting KB Solutions into Tickets
When a ticket has a KB resolution (AI-suggested solution from the knowledge base), you can use Respond with knowledge base solution. A modal shows the answer summary. Use Add as comment to insert it as a message (from Harmony AI) into the ticket.
{/* IMAGE: Respond with knowledge base solution modal → /guides/understanding-service-desk-and-managing-tickets/screenshots/kb-solution-modal.png | UI: frontend-app/src/features/service-desk/components/kb-solution-modal.tsx | Route: /tickets/desk/$deskId */}
Using the KB Solution Search
The KB solution is surfaced when the AI finds a matching article. The modal displays the summary and sources. You can copy the answer or add it as a comment.
Understanding AI Insights and Classification
How AI Insights Work
Harmony's AI automatically classifies tickets to suggest category, priority, summary, and desk routing. AI Insights use the ticket's title, description, and conversation history as primary inputs - so the most informative fields on a ticket directly shape routing and priority suggestions.
AI Re-classification on Title and Description Changes
When you update a ticket's title or description, AI Insights automatically re-classify the ticket. This ensures that category, priority suggestion, summary, and desk routing always reflect the current state of the ticket rather than only its comment history. Previously, changes to these key fields could leave triage results stale; now they are included as first-class inputs alongside comments.
Triggering Custom Agents from Tickets
Using Custom Agents on a Ticket
A Custom Agents section in the ticket sidebar lists all your manually-triggerable agents. You can trigger any of them directly from the ticket view without leaving the conversation:
Search agents by name to quickly find the right one.
A confirmation step ensures agents are never triggered accidentally.
Ticket context is automatically injected - the current ticket, desk, and requester are passed into the agent so you do not need to fill them in manually.
Using the IT Copilot for Tickets
Creating Tickets with the Copilot
Ask the IT Copilot to create a new support ticket by describing what you need. The Copilot collects all required fields - title, type, priority, and service desk - through a natural conversation, then asks for your confirmation before submitting. Nothing is created without your explicit approval.
Updating Tickets with the Copilot
The Copilot can update ticket fields on behalf of agents during a conversation. It can modify priority, status, assignee, and other ticket fields in real time through tool calls, keeping tickets accurate as conversations progress.
Managing Ticket Approvals
Understanding Ticket Approvals
Some tickets require approval before they can proceed. Approvals are configured in workflows and appear in the ticket's Approvals section when present.
Viewing Ticket Approval Status
The Approvals section in the ticket preview shows each approval step with status: Requested, Pending, Approved, Rejected, or Removed (cancelled). Approvers are displayed with avatars.
{/* IMAGE: Approvals section in ticket preview → /guides/understanding-service-desk-and-managing-tickets/screenshots/ticket-approvals-section.png | UI: frontend-app/src/features/service-desk/components/ticket-preview/ticket-approvals-section.tsx | Route: /tickets/desk/$deskId */}
Approving and Denying Ticket Requests
Approval actions (approve/deny) are available from the Approvals section or workflow actions when the ticket is in an approval state. Exact UI depends on workflow configuration.
Approval Outcomes Posted to the Ticket Thread
When a workflow approval resolves, an internal note is automatically posted to the ticket thread summarising the outcome. The note includes whether the request was approved or denied, who made the decision, and any reason provided for a denial. This gives agents full visibility into what happened without leaving the ticket view.
Cancelling a Ticket Approval
Desk managers can cancel an approval requirement on a ticket at any point before a decision is made, without it counting as an approval or denial:
The cancelled approval is shown as removed in the Approvals card - not approved and not rejected.
Pending approvers are automatically notified via Slack or Teams that their approval is no longer needed, and any scheduled reminders are stopped.
The cancellation is recorded in the ticket's activity log for full auditability.
Understanding Approval Chains
Multiple approval steps are shown in order. A connector indicates flow: once a step is approved, the next can proceed. Rejected steps halt the chain.
Approval Activity Now Visible in Ticket Audit Log
The activity timeline captures all key stages of the approval lifecycle:
Approval requested - logged each time an approval request is sent to an approver
Approved - logged when an approver accepts the request
Rejected - logged when an approver declines the request
Overridden - logged when an admin overrides the approval decision
Cancelled - logged when an approval requirement is removed before a decision
Each event appears in the timeline with the relevant user and a description, giving you a complete audit trail without leaving the ticket view.
Closing Tickets
Closing Tickets with Comments
To close a ticket, change the status to Resolved or Closed. If mandatory close comment is enabled for the desk, a dialog prompts for an internal comment (min 3 characters) before closing. Enter the comment and confirm.
{/* IMAGE: Mandatory close comment dialog → /guides/understanding-service-desk-and-managing-tickets/screenshots/close-ticket-comment-dialog.png | UI: frontend-app/src/features/service-desk/components/close-ticket-comment-dialog.tsx | Route: /tickets/desk/$deskId */}
Understanding Ticket Closure Workflow
Closing moves the ticket to Resolved or Closed. The ticket remains in the list but is excluded from "open" filters by default.
Ticket Status After Closure
Resolved and Closed are terminal states. Reopening requires changing status back to Open or In Progress, if your workflow allows it.
Understanding and Tracking SLA
Understanding SLA Policies
SLA policies define response and resolution targets per desk. They are configured in desk settings.
Understanding SLA Timers
Each ticket can have SLA timers: Response (time to first reply) and Resolution (time to resolve). Timers start when the ticket is created and may pause based on status or business hours. SLA timers also pause automatically when a ticket is set to Pending - On Hold.
Viewing Ticket SLA Status
The SLA section in the ticket preview shows each timer with deadline, hours remaining, and status (e.g. in progress, completed, breached). Expand to see details.

Track
Last updated
Was this helpful?
