WebSocket connection refused during JMeter ramp-up

Does anyone understand why the WebSocket handshake fails with a 403 Forbidden error when JMeter threads exceed 200?

Background

Running Genesys Cloud version 2024-12. Using JMeter to simulate high concurrent call volume via the WebSocket API for real-time analytics.

Issue

The connection is established for low thread counts (1-50). When ramping up to 200 threads, the server returns 403 Forbidden: Rate limit exceeded on the handshake request. This happens immediately, not after a delay.

Troubleshooting

  • Verified API key permissions in the admin console.
  • Checked that the X-Genesys-Request-Id headers are unique per thread.
  • Reduced the ramp-up period to 10 seconds, but the 403 errors persist at the same threshold.