Java SDK connection pool exhaustion with high-volume screen pop requests

We’re hitting a wall with the Java Platform SDK in our custom agent desktop. The app fires off concurrent requests to fetch interaction context for screen pops. Under load, the underlying HttpClient starts throwing java.util.concurrent.TimeoutException and eventually ConnectionPoolTimeoutException.

I’ve been debugging this for a day. The default ApiClient configuration seems to cap the max connections per route at 20. We need around 100 concurrent connections to handle our peak agent count.

Here’s the config snippet I’m using:

ApiClient client = ApiClient.builder()
 .withBaseUri("https://mycompany.mypurecloud.com")
 .withClientSecret("secret")
 .withClientId("id")
 .build();

// Attempting to override connection pool settings
client.getHttpClient().getConfiguration()
 .setMaxConnections(200)
 .setMaxConnectionsPerHost(100);

The issue is that getHttpClient() returns a read-only configuration object in the current SDK version (v1.5.8). Modifying it doesn’t seem to persist or apply to the actual connection pool used by the generated API clients. I’ve tried passing a custom OkHttpClient instance, but the SDK’s internal builder ignores it and creates a new default one.

Is there a supported way to inject a pre-configured OkHttpClient with a custom ConnectionPool into the Genesys Cloud Java SDK? Or am I missing a builder method that allows passing these settings directly during ApiClient initialization?