Querying agent utilization metrics (tHandle, tAcw, tHold) by 30-minute intervals via API

Hey everyone,

I’m working on a script to pull agent utilization metrics for our WFM adherence reports. I need to break down tHandle, tAcw, and tHold into 30-minute intervals. The goal is to spot any dips in productivity during specific parts of the day.

I’ve been looking at the Analytics API, specifically the /api/v2/analytics/users/summary endpoint. I tried constructing a query with interval=PT30M in the request body, but I’m not sure how to map the specific metrics correctly. Here’s the JSON payload I’ve been testing:

{
 "query": {
 "select": [
 { "name": "tHandle" },
 { "name": "tAcw" },
 { "name": "tHold" }
 ],
 "interval": "PT30M",
 "groupings": [
 { "name": "user.id", "type": "user" }
 ]
 }
}

When I send this POST request, I get a 200 OK, but the response data seems to aggregate everything into hourly buckets instead of 30-minute ones. The tHandle values look correct for the hour, but I need the granular breakdown.

Is there a specific parameter I’m missing to enforce the 30-minute interval? Or should I be using a different endpoint like /api/v2/analytics/users/details? I’ve checked the documentation, but it’s a bit dense.

Any help would be appreciated.

The docs state: “Valid interval values are 1m, 5m, 10m, 15m, 30m, 1h, 1d.” You’re using ISO 8601 duration syntax PT30M. The API rejects that. Switch to interval=30m in your query params. It’s a strict enum. Try that.