Files API rate limits

Introduced in GitLab 14.3.

On self-managed GitLab, by default this feature is not available. To make it available, ask an administrator to enable the files_api_throttling flag. On GitLab.com, this feature is available but can be configured by GitLab.com administrators only. The feature is not ready for production use.

The Repository files API enables you to fetch, create, update, and delete files in your repository. To improve the security and durability of your web application, you can enforce rate limits on this API. Any rate limits you create for the Files API override the general user and IP rate limits.

Define Files API rate limits

Rate limits for the Files API are disabled by default. When enabled, they supersede the general user and IP rate limits for requests to the Repository files API. You can keep any general user and IP rate limits already in place, and increase or decrease the rate limits for the Files API. No other new features are provided by this override.

Prerequisites:

  • You must have the Administrator role for your instance.
  • The files_api_throttling feature flag must be enabled.

To override the general user and IP rate limits for requests to the Repository files API:

  1. On the top bar, select Menu > Admin.
  2. On the left sidebar, select Settings > Network.
  3. Expand Files API Rate Limits.
  4. Select the check boxes for the types of rate limits you want to enable:
    • Unauthenticated API request rate limit
    • Authenticated API request rate limit
  5. If you enabled unauthenticated API request rate limits:
    1. Select the Max unauthenticated API requests per period per IP.
    2. Select the Unauthenticated API rate limit period in seconds.
  6. If you enabled authenticated API request rate limits:
    1. Select the Max authenticated API requests per period per user.
    2. Select the Authenticated API rate limit period in seconds.

Resources