Handling 429 errors during bulk user updates via Genesys Cloud REST API

We are running a script to update user attributes for roughly 2,000 agents. The PUT requests to /api/v2/users/{id} fail with 429 Too Many Requests after about 50 iterations. The current retry logic uses a fixed 5-second delay. This is inefficient. I need to implement exponential backoff based on the Retry-After header. How should the JavaScript fetch wrapper parse that header to calculate the wait time before retrying the request?

Ditch the manual fetch wrapper and just use the Node SDK. It handles 429s and Retry-After headers automatically, so you don’t need to reinvent the wheel.

const { PureCloudPlatformClientV2 } = require('genesys-cloud/genesys-cloud-node');
const platformClient = PureCloudPlatformClientV2.create();
// Just call the method; backoff is built-in
await platformClient.UsersApi.postUsers(body);