Analytics API aggregation_interval returning 400 for 30-minute buckets

Trying to pull agent utilization data broken down by 30-minute intervals using the Genesys Cloud Analytics API. Specifically looking for tHandle, tAcw, and tHold.

I’m hitting the endpoint:
/api/v2/analytics/interactions/summary

The request body looks like this:

{
 "dateFrom": "2023-10-01T08:00:00.000Z",
 "dateTo": "2023-10-01T09:00:00.000Z",
 "aggregationInterval": "PT30M",
 "groupBy": ["agentId"],
 "metrics": ["tHandle", "tAcw", "tHold"]
}

Getting a 400 Bad Request error. The response says aggregationInterval is invalid. The docs say PT30M should work for summary queries. I tried PT15M and PT1H and those work fine. Just 30 minutes breaks it.

Am I missing something about the supported intervals for this specific endpoint? Or is there a different endpoint I should be using for sub-hourly metrics?

That 400 error usually means the interval doesn’t align with the metric granularity or the date range is too wide. For tHandle, tAcw, and tHold, you generally need PT15M or smaller if you’re grouping by agent. PT30M is often rejected for summary interactions unless the date span is tiny.

  • Shrink the interval: Switch aggregationInterval to PT15M. The API enforces stricter bounds for half-hour buckets on interaction summaries.
  • Check the metrics array: Ensure you’re only requesting supported metrics. tHandle and tHold are standard, but verify tAcw isn’t causing a schema mismatch.
  • Narrow the date range: If you stick with PT30M, limit dateFrom and dateTo to under 24 hours. Large spans with coarse intervals trigger validation errors.

Here is a safer payload structure:

{
 "dateFrom": "2023-10-01T08:00:00.000Z",
 "dateTo": "2023-10-01T09:00:00.000Z",
 "aggregationInterval": "PT15M",
 "groupBy": ["agentId"],
 "metrics": ["tHandle", "tHold", "tAcw"]
}

Try that and see if the 400 clears up.