Route questions to a person
When schoolAgent can't or shouldn't answer, routing sends the question to the right people by email or as a schoolOS ticket. Set up routes, the School Safety Team and the crisis resources the agent shares.
Some questions need a person: a broken bus route, a records request, a student in trouble. Routing lets schoolAgent hand those to the right people, by email or as a schoolOS ticket. It's on the Routing tab of the Configuration page.
You need Manage the agent to change it.

Inquiry Routing#
-
Enable Routing. On by default. On, the agent can offer to send a question to the route that fits it best. It can also show where to reach the right team as buttons under its answer: a department's contact card from Admin › Account › Departments when someone asks how to reach that department, or your facilities work-order system when someone reports a building problem. Off, it never offers or shows those buttons, and people only get answers. Your routes are kept and come back when you turn it on again.
-
Show a "Talk to a person" option. Lets people pick a route themselves instead of waiting for the agent to offer:
- Chat widget. Adds Talk to a person to the website chat's menu.
- Full-page agent. Adds a Talk to a person button to the signed-in agent in schoolOS.
Both are on by default. Turn one off if you'd rather people ask their question first, so the agent can answer it before anyone is contacted.
Select Save to keep these three settings. It only appears active once something has changed.
Routes#
Intelligence Routes lists where questions can go. The agent reads each route's description of what it handles and picks the one that fits.
- School Safety Team is always first. See School Safety Team.
- Your routes come next, in order. Use the arrows to move one up or down.
- Default Route (marked Fallback) is always last. It takes anything no other route matches. It can't be moved or deleted. See The Default Route.
Each route shows its name, its description, and where it sends questions: a number of emails, schoolOS ticket, or No recipient — add an email when an email route has nobody to send to. The Default Route with no email of its own shows where it goes instead, like Goes to IT, your default department, as a schoolOS ticket. A route that emails an address outside your account's domains is marked Sends outside your account, or Outside address not confirmed when nobody has confirmed that address yet (see Addresses outside your district). Beside it:
- Edit opens the route.
- The switch turns the route on or off. Off, the agent never uses it, but it's kept.
- The trash button deletes it, after you confirm.
Turning a route on or off, moving it and deleting it save right away, and a message confirms it. If the save fails, the list goes back to how it was and the message says why.
The Default Route#
The Default Route never sends a question nowhere. Until you give it an email, it goes to your default department: the one marked default in Admin › Account › Departments, or your first department if none is. It's the same place When nothing fits sends a request:
| Who's asking | Where it goes | | --- | --- | | Staff, students and families | Your primary department, the way it takes requests: a schoolOS ticket when it works in schoolOS, its confirmed forward address, or its contact details. | | The public (your website's chat) | Your main contact: your District Office, if you have one, else your primary department. |
When that department wouldn't take the question from this person (it shares contact details with the public, but its card is for staff only), the question still goes somewhere, never to a card they can't see: a schoolOS ticket in your primary department, or, without schoolHelpdesk, your main contact's confirmed forward address. With none of those, it goes to your Super Admins, as any route with nowhere to send does.
Add an email to the Default Route and it goes there instead, exactly as you set it. A Default Route you turned off stays off, and the agent picks among your other routes.
For example, a district whose default department is IT, with no email on the Default Route. A teacher asking about something none of the routes covers sees "This inquiry will be sent to Default Route" and it becomes an IT ticket. The list says Goes to IT, your default department, as a schoolOS ticket, with a link to change the default department.
Add or edit a route#
Select New Route, or Edit on a route.

Start from a template (new routes only) fills in a route for IT, Facilities, HR, Finance, Transportation or Athletics: its name, a detailed description of what it handles, and an email address.
Then:
- Route Name and Description. People see both when the agent offers them a choice of routes, or when they pick one with Talk to a person. Write them for families: "Transportation: buses, stops and pickup times."
- Route Destination. Where the question goes:
- Email. Sends it to the addresses in Email Address(es). Add several at once, separated by commas, semicolons or new lines, or paste a list. Simple, and works for teams that don't use schoolOS tickets.
- schoolOS Ticket (with schoolHelpdesk). Opens a ticket in schoolHelpdesk. If your account has more than one department, pick the Department; otherwise the ticket goes to your default department. Topic, Ticket Type, Priority and Assign To can each stay on Automatic, which means AI triage fills them in and the topic's routing picks the team, as for any other ticket. Tags adds tags from your catalog (Add managed tag) or new ones you type. Use tickets when the team works in schoolHelpdesk: nothing gets lost in an inbox, and you can see what happened to each one.
- Email Template (email routes). The Subject and Message Template of the email. Type
{{in either box, or select Insert variable, to add variables: the person's name and email, the conversation's subject, summary, last question, transcript and link, what they answered when asked for their details, your account's name and today's date. Preview fills them in with a sample conversation. Templates written with the first route variables ({{subject_summary}},{{conversation_summary}},{{conversation_transcript}},{{user_name}},{{user_email}},{{user_phone}},{{conversation_url}}) keep working. A subject that's only the summary variable is sent as "New chat escalation from" and your agent's name. - Must know before sending (email and ticket routes). What this route's people need before a chat reaches them. See below.
- Phone line. A number people can call instead of sending their request. See Phone line.
- Matching Criteria. In plain words, when this route applies: "Someone asking about a broken Chromebook or a missing charger." This is what the agent reads, so be specific. Say what doesn't belong too, if it's close to another route.
- Keywords/Phrases. Comma-separated words that also send a question here. Any one of them is enough. An active route needs matching criteria or keywords.
- Audience. Who can be sent down this route: Public (all), Everyone signed in, Staff, Admins, Students, Guardians, or your own school roles. Clear every box to allow everyone. A new route starts with Public (all) ticked, which covers everyone. Narrow it for routes only some people should reach, like an HR route for staff.
Select Add Route or Save. Cancel throws away your edits to this route.
Must know before sending#
Some routes can't do anything without a detail or two: Transportation needs the bus number, Facilities the room. List them here, and the agent gets them before it hands the chat over, so nobody has to write back and ask.
Select Add a question for each, and use the arrows to put them in order.
- Question. What the person is asked for, in plain words: "Bus number".
- Variable key. Filled in from the question; change it if you like. The answer is
{{answers.<key>}}in the route's email, like{{answers.bus_number}}. It can't bename,email,phoneorall, which the agent's own details use. - Answer. Text, Date, Number or Choice. A choice lists its options, separated by commas. The agent only keeps an answer that fits.
- Required or Nice to have. A required question has to be answered before the chat is sent. A nice-to-have one is asked once and skipped if the person doesn't know.
- Save to (ticket routes). A ticket field the answer fills in. Every answer is also written in the ticket's description under Must know before sending.
Preview shows how the agent asks and what it shows before sending.
When a chat is headed to the route, the agent first reads the conversation for each answer. It only counts what the person actually said, never a guess. Then it asks for what's still missing, one or two at a time. When everything required is answered, it shows "Here's what will be sent…" with each answer. The person selects Yes, send it, or tells the agent what to change, or says "cancel". A ticket route with a topic also asks for the topic's required ticket fields, and saves the answers to them. When the topic requires a device or a location, it asks for those too, and only then: "which device is this about?", with the person's own devices to pick when they're signed in, or the asset tag or make and model typed in. The ticket is filed with the device whose asset tag they gave, and with the school they named or, when they're signed in, their own school, which shows in "Here's what will be sent…" so they can correct it. A topic that requires neither adds no questions.
For example, the Transportation route asks Bus number (required, number) and Stop (nice to have, a choice of the district's stops). A parent writes "Bus 42 didn't come this morning". The agent already has the bus number, so it only asks "what's the stop?". The parent doesn't know, so it shows the summary with Bus number: 42 and sends it on Yes.
| Choice | Choose it when | | --- | --- | | Required | The team can't act without it: a bus number, a building. | | Nice to have | It helps, but the team can follow up: a date, a photo description. | | Save to a ticket field | You report or route on the value in schoolHelpdesk. | | Description only | The team just needs to read it. |
Phone line#
When someone asks to reach a person, the agent can offer a number to call beside the routes, like Call the IT help desk (555) 555-0100. On a phone the number dials; Copy copies it.
- Phone number. Digits, with spaces, dashes or parentheses, and an extension after x or ext. if you have one.
- What the option says. "Call the IT help desk". Empty, it says Call us.
- Hours line. Shown under it: "Mon–Fri, 7:30–4:00".
- Show in chat.
- Never, to start: the number isn't offered.
- When someone asks for a person: offered every time.
- During business hours only: offered while the department's business hours say you're open, and not after hours, when only sending the request is offered. With no business hours set, it's always offered.
- On your website too. Off, only people signed in to schoolOS see the number. On, visitors to your website's chat do too.
The agent offers the number of the route it suggests. A route with no number of its own uses its department's phone line, when the department shows it in chat, and otherwise the Default Route's, so one help desk number can cover them all and Facilities can still have its own.
Checking the addresses#
Each address is checked as you add it. One that can't be an address, like jane@district or jane [email protected], stays in the box with a note naming it, for example "jane@district is not a valid email address.", and Add Route or Save stays off until you fix or remove it. Unusual but real addresses are accepted: [email protected], [email protected], [email protected]. A placeholder like [email protected] is refused.
Addresses outside your district#
An address on one of your account's domains, or a subdomain of one, is accepted without a word. Your account's domains are the ones in Account Domains on Admin › Account › Account Settings and on the Deploy Code tab.
An address anywhere else, like [email protected] or a vendor's address, gets a warning under the list: "[email protected] is outside your account's domains — messages from families and staff will be sent outside the district." Select Send to this address anyway to confirm it. Until you do, the route can't be saved. Your confirmation is saved with the route, so you're only asked once for each address.
Confirm an outside address only when it should really get families' and staff's messages, for example a transportation contractor that runs your buses. A personal Gmail address is almost never right: use the team's district address instead.
Routes saved before this check with an outside address keep sending to it. They're marked Outside address not confirmed in the list, and the warning appears when you open them.
If your account has no domains registered, every address is accepted without a warning.
Which should I choose?#
| Option | What it does | Choose it when | | --- | --- | --- | | Email | Emails a summary and the transcript to the addresses you list. Replies go straight to the person, when they gave an email. | The team works from a shared inbox, or doesn't use schoolOS: Transportation, HR, the registrar. | | schoolOS Ticket | Opens a ticket in schoolHelpdesk, with the conversation attached, and tells the person its number. | The team already works tickets in schoolHelpdesk, like IT or Facilities, and you want each request tracked to done. |
A route with nowhere to send (no ticket, no email) sends to your Super Admins instead (the Default Route goes to your default department first), and tells the person their question went to the school's administrators. The email your Super Admins get starts with a note that says why, and the same note is saved on the conversation:
The route "Transportation" has no recipients set up, so this was sent to the account's Super Admins instead. To fix it, add a recipient to the route in Admin › Agent › Configuration › Routing.
If no Super Admin has an email on file either, nothing is sent: the person is told their question couldn't be sent and to contact the school office, and the conversation shows it wasn't routed, with the same note.
For Audience, leave Public (all) for anything a family might need, and narrow it only when the team shouldn't hear from the public. Guests are never offered a route limited to signed-in people.
Examples:
- A Facilities team that handles HVAC work orders in schoolHelpdesk. A Facilities route set to schoolOS Ticket, department Facilities, Topic on Automatic. "The heat in room 204 at Lincoln Elementary isn't working" becomes a Facilities ticket that AI triage sorts like any other, and the teacher sees the ticket number in the chat.
- A Transportation office that isn't in schoolOS. A Transportation route set to Email, to the dispatch inbox, with Matching Criteria "Bus routes, stops, pickup times and late buses. Not field trips." A parent asking why the bus was late gets an offer to send it to Transportation, and dispatch gets the transcript by email.
- An HR route for staff only. Audience set to Staff. A teacher signed in can be routed to HR; a guest on the public website is never offered it.
Routes created earlier as a link reply show Link reply in the list. They answer right away with a message and a link, and send nothing to anyone. You can edit their Reply Message, but new routes can only be Email or, with schoolHelpdesk, schoolOS Ticket.
School Safety Team#
The School Safety Team route handles messages about self-harm, violence, threats, weapons, abuse or danger before any other route. When the agent detects one, its reply goes in this order:
- Crisis resources for the situation, like the 988 Suicide & Crisis Lifeline for self-harm or 911 when someone is in danger. See Crisis Resources.
- "This conversation was flagged to the school's safety contacts by email." The message is emailed to the addresses in Notify (email), or to your Super Admins while there are none.
- An offer to share the person's contact details with the route. If they accept, their name and email go to the same people, as a reply to the first email. The confirmation says only that their details were passed along.
The agent never says that someone will call, reach out or respond, or when. Nothing in schoolOS makes that happen, so whether and how anyone follows up is up to your district. The same message only alerts once per conversation for each kind of concern.
Its settings come from the Safety department on Admin › Account › Departments, so every schoolAgent in your district alerts the same people and shares the same resources. Edit and Crisis Resources show the department's settings with a note that says so; select Edit in Safety to change them there (Safety). The switch that turns the route on or off stays this agent's.
To give one agent different settings, select Use its own settings: it starts from the department's, and then Edit and Crisis Resources change this agent alone. Use the department's brings it back. Both show Undo.
It's on by default. Edit opens:
- Notify (email). Who gets the alert. Use an address someone watches all day, like your safety coordinator's. Addresses are checked the same way as a route's: see Checking the addresses and Addresses outside your district.
- Anonymous tip line. A name, a call or text number, and a web address. The agent shares it for threats, weapons, abuse, bullying and self-harm, so a student can report without giving their name. Leave it blank if your district has none.
- Share crisis resources. On, the agent shares the resources in Crisis Resources when a situation matches. Off, it shares the built-in crisis resources instead of your list.
The switch on the row turns the route on or off, and saves right away. Off, the agent still answers a crisis message with the built-in crisis resources and says it was flagged, but doesn't offer to share contact details. Safety alerts still go out, to your Super Admins.
If there's no safety email when you switch the agent on (on the Deploy Code tab, or Enable signed-in schoolAgent), you're asked first:
- Add safety email opens this route so you can add one.
- Proceed, alert Super Admins for now turns it on anyway. Until you add an email, safety alerts go to your Super Admins.
Whatever you set here, the agent's guardrails (Agent Guardrails, linked from the Behavior part of the Config tab) always tell it to point someone in crisis to 988, 911 and a trusted adult.
Crisis resources#
Crisis Resources is what the agent shares when it detects a crisis. It starts with a built-in list. Select the count to show them.
- Edit on a resource changes its Title, When to display (the situation, in plain words) and Agent response (what the agent says). Select Done when finished.
- Add resource adds your district's own, like your counseling line.
- The trash button removes one. The core lines (988, 911, Crisis Text Line and a trusted adult) come back even if you remove them.
Select Save crisis resources to keep your changes.
If the School Safety Team route is off, a note says the agent is sharing the built-in resources instead of your list.
Was this article helpful?
Related articles
- Set up schoolAgentHow schoolAgent looks, what it tells people before they chat, the instructions it follows, its suggested prompts, and where it's switched on. Every setting on the Config and Knowledge tabs.
- Read schoolAgent conversationsEvery conversation people have had with schoolAgent, with who asked, what was said, how it was rated and whether it was routed. Filter, open a transcript, or export them.
- See how schoolAgent is doingHow often people found schoolAgent's answers helpful, what was sent to a person, how visitors rated their chats, and which questions need better knowledge.
- DepartmentsDecide where each kind of request goes: departments that work in schoolOS with their own tickets, and departments that work elsewhere, with a contact card or a forwarded email.
- VariablesPut a ticket's, person's, device's or your own fields' values into replies, macros, auto-responses, task templates and workflows with {{variables}}. Every variable, fallbacks, previews and what requesters never see.
Updated October 26, 2026
