Call Monitoring
Supervisors can monitor live calls in real time — listening silently, whispering coaching to the agent, or barging in to join the conversation.
Overview
Monitoring lets supervisors improve quality and intervene when needed. Three modes are supported:
- Listen — hear the call without being heard by anyone
- Whisper — speak to the agent only; the customer cannot hear
- Barge — join the call as an audible third party
Base URL: https://api.afriroute.ai — Auth: Authorization: Bearer $AFRIROUTE_API_KEY
Endpoints
Start Monitoring
POST /v1/voice/monitor
| Field | Type | Required | Description |
|---|---|---|---|
call_id | string | Yes | Active call to monitor |
supervisor_id | string | Yes | Supervisor identifier |
mode | string | Yes | listen, whisper, barge |
curl -X POST https://api.afriroute.ai/api/v1/voice/monitor \
-H "Authorization: Bearer $AFRIROUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"call_id": "call_abc123",
"supervisor_id": "sup_mary",
"mode": "listen"
}'
{
"monitor_id": "mon_5521",
"call_id": "call_abc123",
"mode": "listen",
"status": "active",
"started_at": "2026-05-28T09:15:00Z"
}
Switch Mode
PATCH /v1/voice/monitor/:monitor_id
// Escalate from listening to whispering coaching to the agent
await fetch('https://api.afriroute.ai/api/v1/voice/monitor/mon_5521', {
method: 'PATCH',
headers: {
'Authorization': 'Bearer $AFRIROUTE_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({ mode: 'whisper' })
});
import requests
# Barge in to take over a difficult call
requests.patch(
'https://api.afriroute.ai/api/v1/voice/monitor/mon_5521',
headers={'Authorization': 'Bearer $AFRIROUTE_API_KEY'},
json={'mode': 'barge'}
)
Stop Monitoring
DELETE /v1/voice/monitor/:monitor_id
curl -X DELETE https://api.afriroute.ai/api/v1/voice/monitor/mon_5521 \
-H "Authorization: Bearer $AFRIROUTE_API_KEY"
Live Supervisor Feed
GET /v1/call-center/metrics/realtime
{
"timestamp": "2026-05-28T09:15:00Z",
"queues": [
{
"queue_id": "queue_support",
"calls_waiting": 5,
"longest_wait_time": 125,
"abandoned_calls": 2,
"service_level": 87.5
}
],
"agents": [
{
"agent_id": "agent_sarah_k",
"status": "on_call",
"current_call_duration": 234
}
]
}
Monitoring Modes
| Mode | Agent Hears | Customer Hears | Use Case |
|---|---|---|---|
listen | No | No | Silent quality checks |
whisper | Yes | No | Real-time coaching |
barge | Yes | Yes | Escalation/intervention |
Best Practices
- Start in
listenmode and only escalate towhisperorbargewhen necessary. - Notify agents that calls may be monitored to meet legal and compliance requirements.
- Use whisper coaching for new-agent ramp-up instead of interrupting calls.
- Pair monitoring with recording so supervisors can review flagged calls afterward.
Error Handling
| Code | Description | Action |
|---|---|---|
CALL_NOT_ACTIVE | Call has ended | Refresh the live call list |
MONITOR_LIMIT_REACHED | Too many monitors on one call | Stop an existing session |
INSUFFICIENT_PRIVILEGES | Not a supervisor | Grant supervisor role |
Related Links
Last Updated: May 2026