Quotas and Spike Arrests

We ask our open platform developers to limit the number of calls to our API in order to ensure a pleasant listening experience for everyone. We also understand that different developers have different business needs when it comes to API calls. Applications that have more users will be making more API calls than those with fewer.


Quotas

We have determined that a reasonable quota for each application is 1,000 requests per minute. This number is large enough to allow our largest partner applications with the most users to function comfortably. If your application has fewer than 100,000 users, this number should be easy to adhere to. If your application is still surpassing the quota regularly, please make sure your application is adhering to a subscribe/eventing model rather than a polling model. See this documentation for more information.

If your application in aggregate makes more than 1,000 requests in a minute, your API request will fail with a TOO_MANY_REQUESTS error code. The response header will contain information about the request and request retry information as follows:

Where RateLimit-Reset and Retry-After are expressed in seconds.

Spike Arrests

We have also implemented a spike arrest policy, where any unusual spikes in requests get throttled with a TOO_MANY_REQUESTS error code. If there is an unusual spike in user activity, you might see an increase in these errors. This is to protect against malicious attacks, and should not be triggered by normal use.

The response header will contain:

Where Retry-After is expressed in seconds.

Spike arrests are measured in requests per second. An application’s spike arrest will throttle if more than 100 requests occur in the space of one second.

If your application regularly and continuously surpasses its quota or spike policy, we will reach out to you to make changes. If ample time is given to make these changes and violations still occur regularly, we reserve the right to restrict or revoke your access.