Throttling
Our backend services apply throttling to provide consistent performance across all services. When the backend is receiving too many requests from one specific user/client it will return responses with status code 429 (Too Many Requests). These responses will not contain the requested payload.
Retrying
Make sure to handle the case where the Retry-After
header is missing to prevent instantly retrying until the backend releases the client again. This would increase the load on the server instead of reducing it.
A Retry-After
header might be included in the response. This header will contains the amount of seconds the client is supposed to wait. Sending requests before this threshold is reached, will all results in responses with status code 429. There is no benefit in not respecting the Retry-After
value.
When the Retry-After
value header is missing, a default value can be chosen freely, for example 30 seconds.
When you receive an HTTP 429 response from Content Hub, the sleep period is always one second. This value is returned in the header of the response, and you cannot change it.
Users using the Portal with a web browser will not be throttled.
Versions with throttling support
Throttling support was added in version 3.2.0, but was also backported to version 3.0.5 and 3.1.2.