Does anyone know how to properly handle rate limiting for Predictive Outbound campaigns when simulating high concurrency?
Background
I am running load tests for a new Predictive Outbound campaign setup in the ap-southeast-1 region. The goal is to validate API throughput and system stability under stress. I am using JMeter to simulate a burst of call dispositions and campaign status updates. The script targets the /api/v2/outbound/campaigns/{id}/start endpoint followed by rapid succession calls to /api/v2/outbound/predictivedials/contacts to update disposition codes. My JMeter thread group is configured with 200 concurrent users, ramp-up period of 10 seconds, and a loop count of 5. This is meant to mimic a high-volume BPO environment during peak hours.
Issue
Almost immediately after the ramp-up phase, the responses start failing. Instead of the expected 200 OK or 202 Accepted, I am getting a flood of 429 Too Many Requests errors. The response headers include Retry-After: 1, but even with that delay, the error rate stays above 80% when concurrency exceeds 50 threads. The error message body just says “Rate limit exceeded”. This is happening specifically for the predictive dialer endpoints, while other API calls like user management seem fine.
Troubleshooting
I have checked the API documentation and confirmed the rate limits for outbound operations. I tried adding a constant throughput timer in JMeter to limit requests per second, but the errors persist. I also verified that the campaign is active and has enough contacts. The issue seems to be tied to the concurrent nature of the predictive dialer logic rather than a simple endpoint limit. Is there a specific header or parameter I need to include to handle predictive outbound load better? Or is there a known limitation for ap-southeast-1 that I am missing? Any advice on tuning JMeter for this specific use case would be appreciated.