Skip to main content

Agent Activity

The Agent Activity report shows per-agent interaction handling across the PBX — how many interactions each agent accepted, missed or rejected, the time they spent talking, wrapping up and on hold, their current status, and any interaction they are handling right now. It backs the User Status view in Analytics for Work.

It is served by a single endpoint:

Request

Method: GET

Headers

NameRequiredDescriptionExample
8x8-apikeyThe 8x8-apikey providedtest_key_kjdfidj238jf9123df221
AuthorizationThe access_token as a Bearer tokenBearer eyJhbGciOiJSUzI1NiJ9.yyyyyyyy.zzzzzzzzzz

Path

NameRequiredDescriptionExample
pbxIdThe opaque id of the PBX (not the PBX name).P2DlDO1HSKe0uPdZlClziw

Query

NameRequiredDescriptionExample
userIdsRestrict to specific agents/users (comma-separated).u1,u2
userStatusesFilter by current user status (comma-separated).AVAILABLE,BUSY
queueIdsRestrict to agents in specific queues (comma-separated).q1
siteIdsRestrict to specific sites (comma-separated).site1
startDate / endDateHistorical window in ISO 8601. Omit both for the current live state.2026-07-01T00:00:00Z
intraDayStart / intraDayEndOptional intra-day window; only valid together with startDate/endDate.2026-07-01T09:00:00Z
metricsComma-separated metrics to return (see below).acceptedInteractions,agentTotalTalkTime
includeSummaryDefaults to true; pass false to omit the aggregated summary of the metrics.false

Metrics

Full descriptions are on the reference page. They fall into these groups:

  • VolumeenteredInteractions, acceptedInteractions, acceptedInteractionsPercentage, missedInteractions, missedInteractionsPercentage, rejectedInteractions, rejectedInteractionsPercentage
  • Timing (seconds) — agentAverageTimeToAnswer, agentTotalTalkTime, averageTalkingInteractionsTime, averageOnHoldInteractionsTime, averageWrapUpTime, totalInteractionTime
  • StatususerStatusTime
  • Live (ongoing)ongoingHandlingInteractions, ongoingTalkingInteractions, ongoingOnHoldInteractions, ongoingWrapUpInteractions, ongoingAvgTalkingInteractionsTime, ongoingAvgHandlingInteractionsTime, ongoingTalkingInteractionsTime, ongoingOnHoldInteractionsTime, ongoingWrapUpInteractionsTime, ongoingTotalHandlingInteractionsTime

Example request

📘 Try it out

You can try this endpoint from the reference.

curl --location --request GET 'https://api.8x8.com/analytics/work/v2/pbxes/{pbxId}/agent-activity?startDate=2026-07-01T00:00:00Z&endDate=2026-07-15T23:59:59Z&metrics=acceptedInteractions,missedInteractions,agentTotalTalkTime' \
--header 'Authorization: Bearer {access_token here}' \
--header '8x8-apikey: {8x8-apikey input here}'

Response

Each entry in agentActivity identifies the agent (userId, agentExtension, agentName), their userStatus / activityStatus, the queues they are logged in to, any interaction they are currently handling, and the requested metrics. When includeSummary=true, a top-level summary aggregates the metrics.

📘 Durations are in seconds. Timing and percentage values may be decimals (percentages are 0–100); only counts are integers.

{
"agentActivity": [
{
"userId": "5f2c1a90-1b23-4d56-8e90-abcdef012345",
"agentExtension": "1014",
"agentName": "Chandler Hollow",
"userStatus": "AVAILABLE",
"activityStatus": "HANDLING",
"loggedInQueues": ["Support CQ", "Sales CQ"],
"interaction": {
"caller": "Chay Hoss",
"address": "1006"
},
"metrics": {
"acceptedInteractions": 42,
"missedInteractions": 3,
"rejectedInteractions": 1,
"agentTotalTalkTime": 5820.5,
"averageWrapUpTime": 12.4,
"userStatusTime": 3600.0,
"ongoingTalkingInteractions": 1
}
}
],
"summary": {
"acceptedInteractions": 42,
"missedInteractions": 3
}
}

Response fields

FieldDescription
agentActivity[]One entry per agent matching the filters
agentActivity[].userId / agentExtension / agentNameAgent identifier, extension and display name
agentActivity[].userStatus / activityStatusThe agent's presence status and current call-handling activity
agentActivity[].loggedInQueuesQueues the agent is currently logged in to
agentActivity[].interactionThe interaction the agent is currently handling (caller, address), if any
agentActivity[].metricsObject holding each requested metric and its value
summaryAggregated metrics across all returned agents (only when includeSummary=true)