Skip to content

Skills and languages

Enterprise feature (new in 1.19.2, helpdesk). See the Helpdesk overview.

Some tickets need a particular person: the Mac question should go to someone who knows Macs, and the request in French to someone who answers in French. Skills and languages records what each agent knows and speaks, every ticket gets a language, and an assignment rule can then send a ticket to an agent who matches.

Desk settings → Skills and languages (in the People group, after Agents):

  • Manage teams adds, renames and removes the workspace’s skills and languages, and tags anyone on the desk.
  • A team lead (Manage people in their teams) tags the people in their own teams who are below their own role. They can’t tag themselves or a desk Admin.

The Skills card lists the things your agents know (“Mac”, “Networking”, “Payroll”, “Building access”), each with how many agents have it. Add a skill to add one; rename or delete it from its row.

Deleting a skill takes it off every agent. Tickets already assigned keep their owner. A skill that an assignment rule needs can’t be deleted: the page names the rule (“The assignment rule “French Mac support” needs the skill Mac. Change it first.“).

The Languages card lists the languages your agents answer in. Add a language picks one from about fifty, by name. Removing a language takes it off every agent; tickets keep their language. A language a rule asks for by name can’t be removed until the rule is changed.

The table lists everyone on the desk, with their Teams, Skills and Languages. Choose the edit button on a row to tick their skills and the Languages they speak, then save. A skill or language has to be on the cards above before you can tick it.

Every new ticket gets a language, worked out once, before assignment runs:

  1. From the requester’s directory entry, when their entry holds one (see below).
  2. Otherwise detected from the first message: the subject and opening message (see The detector).
  3. Otherwise it stays Unknown.

Agents see it in the ticket’s Properties as Language, with where it came from as the tooltip: From the requester’s directory entry, Detected from the first message or Set by an agent. Anyone who works the ticket can change it there. The change adds an internal line to the timeline (“Sam Lee changed the language from English to French”) and an audit entry; requesters never see the language.

Changing a ticket’s language later doesn’t assign it again.

The language comes from a directory field, in either of two ways:

  • a field mapped to Microsoft Graph’s preferredLanguage property (Enterprise; see Directory mappings), which suits a synced Entra directory; or
  • a custom field whose key is language or locale (also lang, languages or preferred_language).

Values can be a language tag (“fr-CA”, “pt_BR”), the English name (“French”) or the language’s own name (“Français”). In a list (“French, English”) the first one counts. The value is read as the directory shows it, so a value an admin typed wins over the synced one. No directory schema change is needed.

Two things are never read: entries hidden from the directory, and fields set to Admins only (see Who sees what), because every agent on the ticket sees its language. Tickets from integrations skip the directory and go straight to the detector.

The detector knows seven languages: English, French, German, Spanish, Italian, Portuguese and Dutch. It runs on your own server, and the text never leaves it. It drops the quoted thread under a reply first, so a French reply to an English email reads as French. On text that is too short or too mixed to tell, it answers Unknown rather than guess, so a ticket is never routed on a guess.

A ticket in any other language can be set by hand, or comes from the directory.

Assignment rules gain:

  • a Ticket language condition (is, is not, is empty, is not empty), and
  • an action, An agent with the right skills or language: who speaks a language and knows every skill you list.

See Assignment: skills and languages for how the agent is picked and what happens when nobody matches.

Tickets waiting in the queue for an agent with a skill or language you delete or remove are updated at once, each with an internal note:

  • a ticket that needed only that skill or language now waits for the team’s turn;
  • one that needed more just stops needing it.

A rule or a waiting ticket that names a skill or language that no longer exists falls back to the team’s turn, so nothing waits forever.

What Limit
Skills in the workspace 200, names up to 60 characters
Languages in the workspace 60
Skills one rule may ask for 10
Skills on one agent 100
Action Shown as
helpdesk.skills.skill_created / .skill_renamed / .skill_deleted Added / Renamed / Deleted a helpdesk skill
helpdesk.skills.language_added / .language_removed Added / Removed a helpdesk language
helpdesk.skills.agent_updated Changed an agent’s skills or languages
helpdesk.ticket.language_changed Changed a ticket’s language