# Throttling Limits
The following throttling limits apply to the Bulk API.
Endpoint | HTTP Operation | Max Requests Per Minute | Max Requests Per Hour | Max Requests Per Day |
---|---|---|---|---|
/services/api/x/bulk-api/v1/schemas | POST | 5 | 300 | 7,200 |
/services/api/x/bulk-api/v1/specification | GET | 5 | 300 | 7,200 |
/services/api/x/bulk-api/v1/jobs | POST | 5 | 300 | 7,200 |
/services/api/x/bulk-api/v1/jobs/{job_id} | GET | 5 | 300 | 7,200 |
/services/api/x/bulk-api/v1/imports/{import_id} | POST | 30 | 1,800 | 43,200 |
/services/api/x/bulk-api/v1/imports/{import_id}/report /services/api/x/bulk-api/v1/imports/{import_id}/warnings /services/api/x/bulk-api/v1/imports/{import_id}/errors | GET | 10 (combined across all three endpoints) | 600 (combined across all three endpoints) | 14,400 (combined across all three endpoints) |
Please note the following:
- Throttle limits apply to all authenticated APIs calls.
- Throttle limits are for each environment. For example, if an API has a limit of 300 requests per hour, that means you can make 300 requests each in Pilot, Stage, and Production environments. If a request is made after the throttle limit is reached, Cornerstone will respond with the following HTTP 429 error, which is to be handled elegantly. We recommend that your applications queue such requests until the throttle limit duration has passed after which the request can be re-sent.
// Throttle Limit Error
{
"status": "429",
"timeStamp": "2020-06-10T10:34:25+0000",
"error": {
"errorId": "7103da65-60aa-4bef-2a3f-e7169012da4b",
"message": "CSOD Too many requests.",
"code": "429",
"description": null,
"details": null
}
}