Skip to content

Skills

Describe skills: the tags that match callers to the agents best able to help.

Skills are free-form tags (e.g. spanish, billing) stored as a TEXT[] on both agents.skills and queues.required_skills (migration 043). They are only engaged under a queue’s skills_based strategy: when picking work for a newly-available agent, the worker skips any queue whose required_skills the agent does not fully hold. Other strategies ignore skills entirely.

Assign skills to agents (PUT /api/v1/agents/{id}/skills) and set required_skills on a queue, then set the queue strategy to skills_based. An empty requirement always passes. A GIN index supports array-overlap lookups.

A billing call in Spanish requires billing + spanish; under skills_based routing only agents holding both tags are considered for that queue, so the caller reaches someone who can actually help.

  • The agent must hold all of a queue’s required skills (superset match), not just one.
  • Too many fine-grained skills fragment the agent pool and raise wait times.
  • Within a queue, caller selection is FIFO with preferred-agent affinity; the strategy field primarily gates the skills check today.