Operators

Operator dashboard overview

get
/v1/{workspace_id}/operators/dashboard

Live dashboard with operator status counts, active escalation queue, and today's escalation statistics.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Responses
chevron-right
200

Successful Response

application/json
workspace_idstring · uuidRequired
active_escalationsintegerRequired
get
/v1/{workspace_id}/operators/dashboard
200

Successful Response

Operator performance summary

get
/v1/{workspace_id}/operators/performance

Aggregate performance across all operators with per-operator breakdown.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Responses
chevron-right
200

Successful Response

application/json
workspace_idstring · uuidRequired
total_operatorsintegerRequired
onlineintegerRequired
busyintegerRequired
offlineintegerRequired
total_escalations_handledintegerRequired
avg_handle_time_secondsnumberRequired
get
/v1/{workspace_id}/operators/performance
200

Successful Response

List active escalations

get
/v1/{workspace_id}/operators/escalations/active

List calls with active escalations (status: requested or connected).

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Query parameters
limitinteger · max: 20OptionalDefault: 10
continuation_tokenintegerOptionalDefault: 0
Responses
chevron-right
200

Successful Response

application/json
has_morebooleanRequired
continuation_tokenany ofOptional
integerOptional
or
nullOptional
get
/v1/{workspace_id}/operators/escalations/active

Escalation statistics

get
/v1/{workspace_id}/operators/escalations/stats

Aggregated escalation statistics over a time period.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Query parameters
periodstringOptional

Time period: day, week, or month.

Default: day
group_bystringOptional

Grouping dimension: status, trigger, or operator.

Default: status
Responses
chevron-right
200

Successful Response

application/json
workspace_idstring · uuidRequired
periodstringRequired
group_bystringRequired
totalintegerRequired
get
/v1/{workspace_id}/operators/escalations/stats

List escalation events

get
/v1/{workspace_id}/operators/escalations/

List escalation lifecycle events for a workspace.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Query parameters
limitinteger · max: 20OptionalDefault: 10
continuation_tokenintegerOptionalDefault: 0
Responses
chevron-right
200

Successful Response

application/json
has_morebooleanRequired
continuation_tokenany ofOptional
integerOptional
or
nullOptional
get
/v1/{workspace_id}/operators/escalations/

Query audit log

get
/v1/{workspace_id}/operators/audit-log/

Query audit events (operator actions) for a workspace.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Query parameters
limitinteger · max: 20OptionalDefault: 10
continuation_tokenintegerOptionalDefault: 0
Responses
chevron-right
200

Successful Response

application/json
has_morebooleanRequired
continuation_tokenany ofOptional
integerOptional
or
nullOptional
get
/v1/{workspace_id}/operators/audit-log/

Get call transcript

get
/v1/{workspace_id}/operators/calls/{call_sid}/transcript

Per-speaker transcript segments from operator takeover sessions.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
call_sidstringRequired
Responses
chevron-right
200

Successful Response

application/json
call_entity_idstring · uuidRequired
call_sidany ofRequired
stringOptional
or
nullOptional
total_segmentsintegerRequired
get
/v1/{workspace_id}/operators/calls/{call_sid}/transcript

Join active call as operator

post
/v1/{workspace_id}/operators/{operator_id}/join-call

Add operator to an active call's Twilio Conference.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
operator_idstring · uuidRequired
Body

Request to join an active call as operator.

call_sidstringRequired
modestringOptionalDefault: takeover
Responses
chevron-right
200

Successful Response

application/json

Confirmation of operator joining a call's conference.

participant_call_sidstringRequired
conference_sidstringRequired
modestringRequired
operator_entity_idstringRequired
post
/v1/{workspace_id}/operators/{operator_id}/join-call

Remove operator from active call

post
/v1/{workspace_id}/operators/{operator_id}/leave-call

Remove operator from an active call's Twilio Conference.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
operator_idstring · uuidRequired
Body

Request to remove operator from an active call.

call_sidstringRequired
Responses
chevron-right
200

Successful Response

application/json
successbooleanRequired
post
/v1/{workspace_id}/operators/{operator_id}/leave-call

Generate browser audio access token

post
/v1/{workspace_id}/operators/{operator_id}/access-token

Generate a Twilio AccessToken with VoiceGrant for browser-based operator audio.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
operator_idstring · uuidRequired
Body

Request to generate a Twilio AccessToken for browser-based audio.

call_sidstringRequired
Responses
chevron-right
200

Successful Response

application/json
tokenstringRequired
identitystringRequired
conference_sidstringRequired
post
/v1/{workspace_id}/operators/{operator_id}/access-token

Toggle operator listen/takeover mode

post
/v1/{workspace_id}/operators/{operator_id}/switch-mode

Switch between listen mode and takeover mode.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
operator_idstring · uuidRequired
Body

Request to toggle operator mode on an active call.

call_sidstringRequired
participant_call_sidstringOptionalDefault: ""
modestringRequired
Responses
chevron-right
200

Successful Response

application/json
modestringRequired
post
/v1/{workspace_id}/operators/{operator_id}/switch-mode

List operators

get
/v1/{workspace_id}/operators/

List all operator entities for a workspace.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Query parameters
limitinteger · max: 20OptionalDefault: 10
continuation_tokenintegerOptionalDefault: 0
Responses
chevron-right
200

Successful Response

application/json
has_morebooleanRequired
continuation_tokenany ofOptional
integerOptional
or
nullOptional
get
/v1/{workspace_id}/operators/

Register an operator

post
/v1/{workspace_id}/operators/

Create an operator entity with profile and initial offline status.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Body
namestringRequired
emailstringRequired
typestringOptionalDefault: clinical
skillsstring[]Optional
connection_methodstringOptionalDefault: browser
phone_numberany ofOptional
stringOptional
or
nullOptional
rolestringOptionalDefault: operator
Responses
post
/v1/{workspace_id}/operators/

Get an operator

get
/v1/{workspace_id}/operators/{operator_id}

Get operator entity with computed state (profile, availability, performance).

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
operator_idstring · uuidRequired
Responses
chevron-right
200

Successful Response

application/json
idstring · uuidRequired
workspace_idstring · uuidRequired
nameany ofRequired
stringOptional
or
nullOptional
emailany ofRequired
stringOptional
or
nullOptional
typeany ofRequired
stringOptional
or
nullOptional
skillsstring[]Required
connection_methodstringRequired
phone_numberany ofRequired
stringOptional
or
nullOptional
rolestringRequired
statusstringRequired
last_status_changeany ofRequired
stringOptional
or
nullOptional
active_call_sidany ofRequired
stringOptional
or
nullOptional
total_escalations_handledintegerRequired
avg_handle_time_secondsnumberRequired
last_call_atany ofRequired
stringOptional
or
nullOptional
created_atany ofRequired
string · date-timeOptional
or
nullOptional
updated_atany ofRequired
string · date-timeOptional
or
nullOptional
get
/v1/{workspace_id}/operators/{operator_id}

Update an operator

patch
/v1/{workspace_id}/operators/{operator_id}

Update operator profile fields or status. Each change writes a world event.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
operator_idstring · uuidRequired
Body
nameany ofOptional
stringOptional
or
nullOptional
emailany ofOptional
stringOptional
or
nullOptional
typeany ofOptional
stringOptional
or
nullOptional
skillsany ofOptional
string[]Optional
or
nullOptional
connection_methodany ofOptional
stringOptional
or
nullOptional
phone_numberany ofOptional
stringOptional
or
nullOptional
roleany ofOptional
stringOptional
or
nullOptional
statusany ofOptional
stringOptional
or
nullOptional
Responses
chevron-right
200

Successful Response

application/json
idstring · uuidRequired
workspace_idstring · uuidRequired
nameany ofRequired
stringOptional
or
nullOptional
emailany ofRequired
stringOptional
or
nullOptional
typeany ofRequired
stringOptional
or
nullOptional
skillsstring[]Required
connection_methodstringRequired
phone_numberany ofRequired
stringOptional
or
nullOptional
rolestringRequired
statusstringRequired
last_status_changeany ofRequired
stringOptional
or
nullOptional
active_call_sidany ofRequired
stringOptional
or
nullOptional
total_escalations_handledintegerRequired
avg_handle_time_secondsnumberRequired
last_call_atany ofRequired
stringOptional
or
nullOptional
created_atany ofRequired
string · date-timeOptional
or
nullOptional
updated_atany ofRequired
string · date-timeOptional
or
nullOptional
patch
/v1/{workspace_id}/operators/{operator_id}

Last updated

Was this helpful?