Documentation Index
Fetch the complete documentation index at: https://docs.wittify.ai/llms.txt
Use this file to discover all available pages before exploring further.
Agents is the page that ranks every agent in your contact center against the calls they handled in the active filter window. Today the page renders preview data scoped to your active filter, the real roster ships when agent ingestion lands.
Page anatomy
| Region | What you see |
|---|---|
| Filter bar | Date and hour controls, see Overview. |
| Mock-data notice | An amber strip pinned above the KPI strip with the message Preview data scoped to your active filter. Real roster ships when agent ingestion lands. |
| Aggregate KPI strip | Four summary cards specific to this page. |
| Tab bar | Agents and Teams pills. Agents is the default. |
| Agents table | A 9-column table with a toolbar, sort dropdown, search, and CSV export. |
| Teams tab | An empty state until ingestion gains a team identifier. |
Aggregate KPI strip
Four cards, all reactive to the active filter window.| KPI | Subtitle |
|---|---|
| Agents in range | Active in the selected window |
| Total calls handled | Sum across all agents |
| Avg Sentiment Δ | Mean change per call |
| Top Performer | Highest positive share in range |
Agents tab
The default tab. A 9-column table with a toolbar at the top.Toolbar
| Element | Notes |
|---|---|
| Search box | Placeholder Search agents by name or id. |
| Sort by dropdown | One of Calls (high to low), Handle time (low to high), Sentiment change (high to low), Escalation (low to high), Name (A to Z). The default is Calls (high to low). |
| Export CSV button | Exports the table for the active filter and search. |
Table columns
| Column | What it shows |
|---|---|
| Agent | Avatar circle with the agent’s initials plus name. |
| Calls | Total calls handled in scope. Sortable. |
| Avg Handle Time | Mean call length. Lower is better. Sortable. |
| Sentiment Δ | Customer sentiment change from the opening to the closing of each call, averaged across the agent’s calls. Positive values mean the agent moved customers up the sentiment scale. Sortable. |
| FCR | First Contact Resolution. Renders — with a small help tooltip Shipped when Customer Journey (plan #32) lands. |
| Escalation | Share of the agent’s calls that were handed off or flagged. Lower is better. Sortable. |
| Sentiment mix | A stacked bar inside the cell showing positive / neutral / negative shares for the agent. The bar’s accessible label reads Sentiment distribution for this agent. |
| Top intents | Up to three small chips of the agent’s most-frequent intent labels. |
| Trend (30d) | A 30-day call-volume sparkline inside the cell. The sparkline’s accessible label reads 30-day call volume trend. |
Row interactions
| Interaction | What happens |
|---|---|
| Hover row | The row highlights and a small hint Row click drills into this agents calls appears. |
| Click row | Drills into the agent’s calls. The destination route is wired once per-call agent attribution lands. |
Empty states
| State | Message |
|---|---|
| Search returns nothing | No agents match your search. |
| Filter window has no agent data | Could not load agent scorecards. |
Showing-of footer
A small Showing of line appears below the table when not all rows fit on screen. The render cap is 100 rows.Teams tab
The Teams tab shows an empty state today.| Element | What it says |
|---|---|
| Title | Team scorecards coming soon |
| Body | Once agents are grouped into teams on ingest, this view rolls up call volume, sentiment shift, and escalation by team, with a per agent breakdown. |
| Hint | Blocked on the team id column in Part A. |
CSV export
The Export CSV button downloads the table for the active filter and search. Rows are limited to the same 100-row render cap as the table.| Column | Notes |
|---|---|
| agent | Agent name. |
| calls | Total calls. |
| avg_handle_time | In seconds. |
| sentiment_delta | Mean change. |
| fcr | Empty until Customer Journey ships. |
| escalation | Share, 0 to 1. |
| positive_share, neutral_share, negative_share | The three components of the sentiment mix bar. |
| top_intents | Comma-separated list of the agent’s top intents. |
Common questions
Why does the FCR column show a dash?
Why does the FCR column show a dash?
The FCR (First Contact Resolution) calculation depends on cross-call attribution, which is part of an upcoming Customer Journey feature. Until that ships, the column carries the placeholder dash with a tooltip explaining why. Once available, the column fills automatically with no UI change required.
The amber notice says preview data. Are these numbers real?
The amber notice says preview data. Are these numbers real?
The numbers reflect the active filter window’s calls, but the agent identifiers and roster are preview data while we wait for per-call agent attribution to be added on the ingestion side. When agent attribution lands, the same view shows your real roster.
My agent is missing from the table.
My agent is missing from the table.
Two possibilities. The agent has zero calls in the active filter window (widen the date range to confirm), or the filter window is narrower than the agent’s last call (set the date range to Last 90 days and check again).
The Teams tab is empty.
The Teams tab is empty.
By design, until ingestion gains a team identifier. The empty state explains exactly that.
Sort by Calls works but sort by Sentiment change does not.
Sort by Calls works but sort by Sentiment change does not.
Each sort key is supported. If you do not see the data move when changing the sort, the active filter window has no agents with that signal, the order looks the same because every row is tied.
Why does the row drill-through go nowhere?
Why does the row drill-through go nowhere?
The destination is wired the moment per-call agent attribution lands. Until then, the hint Row click drills into this agents calls appears but the click is a no-op.
The CSV is missing rows.
The CSV is missing rows.
The render cap is 100 rows for client-side performance. Larger exports require server-side pagination, which ships with the dedicated CSV endpoint. Use the search to scope down to the agents you need, or wait for the dedicated endpoint.
Where to go next
Compliance
Per-agent script adherence breakdown.
Sentiment Analysis
Project-wide view of the same metric.
Goals
Set targets and track progress as rings.
Alerts
Watch a metric and route notifications.

