API Throttling

API throttling is a method used in Cloud APIs to manage platform capacity. It limits the number of requests that can be made within a specific amount of time.

It helps ensure API availability by managing server resources efficiently, preventing abuse, and allowing fair usage across all customers. It also allows the platform to remain stable and responsive.

Currently, only the Python SDK is compatible. For more information, see API Retry Strategy.

OUTSCALE’s Throttling Strategy

API throttling works by tracking the number of API requests and applying defined limits.

If an account or Region exceeds a limit, the request fails and the API responds with an error.

OUTSCALE implements three sequential limiters. Each request must pass all three limiters one after the other to be processed.

Order Limiter Description API error

1

Whole platform

This limiter enforces a maximum number of requests allowed across an entire platform regardless of the source. This limit is defined per second.

HTTP 503 - Code 6 - ErrorOperationThrottledWholePlatform: Request rate exceeded.

2

Per account

This limiter enforces a maximum number of requests allowed per account. This limit is defined per second.

  • A default limit is applied to all accounts.

  • A custom limit can be set for specific accounts.

HTTP 429 - Code 24 - ErrorOperationThrottledPerAccount: Request rate exceeded.

3

Per account + Per call

This limiter enforces a maximum number of requests authorized per account and also per request (call). This limit is defined per second.

  • A custom limit can be set for a specific combination of account ID and API request.

  • If no such customized limit exists, the system checks for a default limit on the API request.

  • If neither is defined, this limiter is not applied.

HTTP 429 - Code 25 - ErrorOperationThrottledPerCall: Request rate exceeded.

Related Page