Skip to main content
Page guide

Ticket routing

One page, top to bottom, for how a department's tickets find their team and person: how they arrive, routing rules for the exceptions, topic routes for the normal case, and each team's assignment method. Test where a ticket would land.

The Routing tab of Admin › Tickets › Topics & Routing shows, in order, every step that decides where a department's tickets go. Each step only fills what the steps above left open, and what a person chooses always stays. For the full picture, including AI triage, see how tickets are routed.

You need Manage helpdesk settings (tickets_admin.manage) to see this tab, and to add, edit or delete a rule. schoolOS staff first select an Account at the top of Intake; its topics, rules, channels, and routing test then use that account. When you have more than one department, pick one with Department. With departments turned off, the tab shows your account's one built-in department.

The Routing tab of Topics & Routing with its four numbered steps
The Routing tab of Topics & Routing with its four numbered steps

schoolOS administrators use Account to manage routing for a selected account. On Intake, the Kiosks tab also has this selector; Email failures keeps its platform-wide view.

1. How it arrives#

How a ticket comes in can already decide some things.

  • Email. The department's own address, when it has one. Mail sent there opens the ticket in this department. Email settings opens Admin › Tickets › General. A team can also have its own address.
  • schoolAgent. The schoolAgent routes that file tickets in this department, and what each sets: a topic, a team, a person, a priority. "schoolAgent routing is off" if schoolAgent doesn't route to tickets. Edit in Agent settings opens Admin › Agent › Configuration.

What a channel decides wins over rules and topics.

2. Rules#

Rules are the exceptions: tickets that shouldn't follow their topic's route, like everything from Super Admins going to Tier 2. Most departments need few or none.

The list shows the rules that send tickets to this department, or name no department. Each shows its number, its name, Off if it's turned off, When it matches and what it sets (Then). The number is its place among all your account's rules, which are checked in one order across departments, so the numbers here can skip. The arrows move a rule up or down past the next rule shown here, and the new order saves straight away; they only work in the list's own order, with the search and Status filter cleared. Select a rule to edit it. Its … menu holds Edit and Delete, which deletes it once you confirm. Tickets it already routed keep what it set.

Each step's section can be closed to leave the others in view; closed, it shows a summary, like "2 rules".

How rules run:

  • In order, and the first match wins. Only one rule applies to a ticket. A new rule goes to the bottom of the list; move it up with the arrows.
  • Twice. Once when the ticket arrives, and again once its topic is known, so a rule can match a topic.
  • Only into gaps. A rule never replaces what a person or a channel chose. On the second pass it keeps the ticket's department, and only sets the team if the ticket has none or is sitting with the department's default team.

Add or edit a rule#

Select Add rule, or a rule.

The rule editor: When a ticket matches all of these, Then send it to, and the reason
The rule editor: When a ticket matches all of these, Then send it to, and the reason
  • Name, and On to turn it on or off.

When a ticket matches all of these. Leave a box at its "Any" choice to ignore it.

  • Came in by. schoolAgent (the chat and the schoolAgent pages), Email, Support page (your public request form), Phone, Walk-in, Kiosk (a repair kiosk) or Staff (opened by staff with no channel of its own). A rule saved with Chat or Website now shows and matches as schoolAgent.
  • Requester's role. Pick one of your account's roles, built-in or your own. A rule typed before this was a list keeps its text and still matches a role with that name; pick a role from the list when you next edit it.
  • School. The ticket's location.
  • Subject contains. Words that appear in the subject, ignoring capitals.
  • Topic. A topic, and everything under it. Search by any part of its path.
  • Type. Issue, Outage, Question or Request. See Ticket types.
  • Device type. The type of the device on the ticket.

Then send it to. Leave a box at its "Leave …" choice to not set it.

  • Department. New rules start with the department you're viewing. Changing it clears the team, person, priority and topic, because those belong to a department.
  • Team. You need a department first.
  • Person. Assign someone directly. Also needs a department.
  • Priority.

Why, in a sentence agents will see. Required. It's kept on each ticket the rule routes, in its routing trail, and Otto repeats it when someone asks why the ticket is where it is.

Select Add rule, or Save rule.

To act on tickets after they're created or updated, like notifying someone, use a workflow instead.

3. Topic routes#

The normal case. Once AI or a person gives a ticket its topic, the topic sends it to a team and can set its priority.

The table lists the department's topics, at every level, with a Team and a Priority. Change them right here; they save straight away. Search topics... finds one by name. A subtopic that doesn't set its own shows the one it takes from the topic above it.

Anything no rule or topic places goes to the department's default team, so no ticket is left without an owner.

Topics opens the Topics tab of Admin › Tickets › Topics & Routing, where you can also set a topic's type and SLA.

4. The team picks a person#

Whichever step chose the team, the team's own method picks who works the ticket: Manual, Take turns or Fewest open tickets. The list shows each team in the department and its method. Select a team to change it. See assign new tickets.

Take turns gives the next ticket to the member who was assigned one of the team's tickets longest ago. A ticket still without a team waits in the department's queue.

Which step should I use?#

Most routing belongs in topic routes. Reach for the other steps only when a topic can't say it.

| To send tickets… | Use | Because | | --- | --- | --- | | About a subject to the team that handles it ("Printing" to Tier 1, "Heating & cooling" to Facilities – HVAC) | A topic route | It's the normal case, and AI triage picks the topic from what the requester wrote. One place to change when a team changes. | | That match something a topic can't see: who asked, which school, how it came in, a word in the subject | A rule | Rules match the requester's role, the school, the channel, the subject, the topic, the type and the device type. | | From a group of people who always email the same address, like records requests | A team's own address | Mail there goes straight to the team, before any rule or topic. | | That nothing else places | The default team | It catches the rest, so no ticket is left without an owner. | | After they're created, like notifying the principal when a safety ticket is filed | A workflow | Rules only decide where a new ticket goes. Workflows act on changes. |

Some examples:

  • A district with 12 schools and one IT department. Topic routes send "Accounts & access" to Tier 1 and "Network & internet" to the Network team. One rule, School is the high school and Topic is "Classroom technology", sends those tickets to the high school's own tech team, because that building has its own staff. Everything else follows its topic.
  • A Facilities department with HVAC, plumbing and custodial teams. Topic routes do all of it: "Heating & cooling" to Facilities – HVAC with priority High, "Custodial" to the custodians. No rules are needed. The default team is the Facilities front desk, which sorts anything triage couldn't give a topic.
  • Super Admins' tickets go to Tier 2 whatever they're about: a rule with Requester's role set to Super Admin and Team set to Tier 2. It's first in the list, so it wins over the topic's team.

A rule sets its team on the first pass, before the topic is known. So a rule with no Topic that sets a team beats every topic route for the tickets it matches. Keep such rules narrow.

Test routing#

In Test routing, below the steps, describe a ticket and see where it would land. Nothing is filed.

  • Came in by. The channel.
  • Topic. Let AI match it, or pick one.
  • Requester. Optional. Their role and school feed the rules.
  • Subject and Description.

Select Test. The result shows the topic (and whether AI matched it), then the Department, Team, Assignee, Priority and Type it would get, which step decided each, and why.

Test a few real tickets after you change rules or topic routes.

Was this article helpful?

Updated October 26, 2026