Data Action failure: BYOC Trunk Metrics API returning 429 Too Many Requests during high-volume reporting

Just noticed that our nightly aggregation job for BYOC trunk utilization metrics is failing consistently around the 02:30 SGT mark. This timing coincides with the peak post-shift reporting window for our APAC centers. The job invokes the POST /api/v2/analytics/reporting/data endpoint to fetch SIP registration status and call detail records for our 15 active BYOC trunks. While the initial batches process correctly, the subsequent requests targeting the Singapore and Jakarta trunk groups begin returning HTTP 429 status codes. This is unexpected because the request rate is well below the documented tenant-level concurrency caps, which we previously confirmed are set to 500 concurrent requests per second.

The error payload is specific and repeats across all failed instances:

{
“message”: “Rate limit exceeded for analytics reporting data actions.”,
“status”: 429,
“code”: “RATE_LIMIT_EXCEEDED”,
“details”: “Exceeded maximum requests per minute for the analytics_reporting scope. Please implement exponential backoff.”
}

We have implemented a standard exponential backoff strategy with a base delay of 5 seconds and a maximum retry count of 3. However, the 429 responses persist even after the backoff period, suggesting that the rate limiter might be scoped differently than anticipated, or there is a hidden burst limit applied specifically to BYOC-related metric queries. The SDK version in use is genesys-cloud-architect@2.1.4. We have verified that the reporting_type parameter is correctly set to byoc_trunk_utilization and that the start_time and end_time windows do not overlap with other scheduled reports. Given the verbose nature of the SIP registration logs we are pulling, could there be a payload size constraint triggering a secondary rate limit, or is this a known issue with the analytics engine during high-concurrency windows in the APAC region? Any insights into the specific bucketing logic for these API calls would be appreciated, as we need to adjust our scheduling logic to avoid these disruptions.