One or more non-transitory, computer-readable media at least collectively storing instructions executable by processing circuitry to provide an instance of a representational state transfer (REST) application programming interface (API) server, the instructions comprising:
- instructions to receive, at the instance of the REST API server, a REST API request and to prepare a REST API response;
- instructions to, when the REST API request matches a rate limit rule associated with the instance of the REST API server, add rate limiting response headers to the REST API response, wherein the rate limiting response headers include information related to the rate limit rule;
- instructions to, when the REST API request matches a rate limit violation associated with the instance of the REST API, add an error message to the REST API response, and otherwise, fulfill the REST API request and add corresponding data to the REST API response;
- and
- instructions to send, from the instance of the REST API server, the REST API response including the rate limiting response headers and either the error message or the corresponding data.