When you create a new deployment, we set default service quotas (also referred to as rate limits) for various aspects of the Backend API. The configured quotas for your deployment can be viewed on the "Manage API" page on the data browser. You must ensure that any API requests you make do not exceed the current rate limit.
Example API Limits for a deployment
There is a predetermined maximum sustained rate of requests per second that the API can accept, with a provision for burst capacity above the sustained rate. The burst capacity is the total number of requests allowed once the sustained rate has been exceeded. The burst rate is replenished when the number of requests made is less than the sustained rate.
A request that exceeds the rate limit of an API will result in a HTTP Response with the status code 429 "Too many requests". An appropriate handler for this response would pause for a few seconds before retrying the request.
The limit named "REST API" applies to the API described in this section of the documentation, and is applied globally for all API clients, including CloudCode, SQL data pipelines and external integrations, but excluding OnlineDB requests from an app.
The limit named "Per App User" applies to the internal APIs that the app uses to synchronize data, upload attachments, etc., as well as OnlineDB queries. As the name suggests, these limits apply on a per-user basis and are typically handled automatically by the app.