Rate limiting is a common technique used to improve the security and durability
of a web application.
For example, a simple script can make thousands of web requests per second. The requests could be:
Malicious.
Apathetic.
Just a bug.
Your application and infrastructure may not be able to cope with the load. For more details, see
Denial-of-service attack
.
Most cases can be mitigated by limiting the rate of requests from a single IP address.
A rate limit for
downloading repository archives
is
available. The limit applies to the project and to the user initiating the download either through
the UI or the API.
There is a rate limit per IP address on the
/users/sign_up
endpoint. This is to mitigate attempts to misuse the endpoint. For example, to mass
discover usernames or email addresses in use.
The
rate limit
is 20 calls per minute per IP address.
There is a rate limit on how frequently a username can be changed. This is enforced to mitigate misuse of the feature. For example, to mass discover
which usernames are in use.
The
rate limit
is 10 calls per minute per authenticated user.
There is a rate limit for the internal endpoint
/users/:username/exists
, used upon sign up to check if a chosen username has already been taken.
This is to mitigate the risk of misuses, such as mass discovery of usernames in use.
The
rate limit
is 20 calls per minute per IP address.
If you didn't find what you were looking for,
search the docs
.
If you want help with something specific and could use community support,
post on the GitLab forum
.
For problems setting up or using this feature (depending on your GitLab
subscription).