Rate Limits

Learn about the rate limits we employ in our API and how to work with them.


As you develop your integration, it's important to keep the rate limits Finix has set for our APIs in mind.

A rate limit, in simplest terms, limits the number of API requests you can make in any given period. Rate limits play a crucial role in ensuring the stability and performance of an API.

It's important to keep these limits in mind while developing your integration and making sure your application doesn't programmatically create unnecessary requests.

info

Finix can change limits to prevent abuse or enable high-traffic applications. If your application needs different rate limits, reach out to your Finix point of contact or email the Finix Support team.

By controlling the number of requests your application makes, you can avoid hitting these limits and keep the performance of your application consistent and stable.

Rate Limits in Finix's API

Finix rate limits read and write requests at the:

Request Definition        Example
Read GET API requests used to retrieve data/resources.
Write POST/PUT/PATCH/DELETE API requests used to create or update data/resources.

Treat these individual limits as a guide to how many requests your application should make at any given time. Develop your application so it doesn’t create unnecessary requests or load and works within these limits.

Application

Environment        Limits
Live
  • Up to 20 read requests per second.
  • Up to 100 write requests per second.
Sandbox
  • Up to 10 read requests per second.
  • Up to 20 write requests per second.

IP Address

To prevent abuse, rate limits based on the IP address request originate from are also in place. These limits are less restrictive than the public application rate limits and shouldn't affect legitimate customer requests.

Exceeding Rate Limits

Any requests over these limits get rejected and return a 429 HTTP Error. If a 429 HTTP Error is returned, your application won't be able to get the data it needs from responses to process transactions.

See Handling Rate Limits for tips on how to develop your application to work within these limits and handle 429 HTTP Errors.

If you suddenly see a rising number of requests get rate limited, please reach out to Finix Support.

Handling Rate Limits

Understanding and developing within rate limits is important to ensure the stability and performance of your application.

To avoid exceeding these rate limits, optimize your application, so it makes the least amount of requests needed. By optimizing your code and monitoring usage, you can develop an application that's both efficient and effective.

Here are some ways you can optimize your application:

Cache Response

Caching responses can reduce the number of requests your application needs to make to process transactions.

Error Handling

If your application exceeds rate limits, make sure you have error handling in place to catch the 429 HTTP Error and handle it appropriately. Error handling can include retrying the request later or displaying an error message to the user.

Exponential Backoff

Use exponential backoff to handle errors. When your application exceeds a limit and receives a 429 HTTP Error, employ exponential backoff and gradually increase the time between requests. Exponential backoff helps the API recover before you the subsequent request gets made.

Monitor Usage

Regularly monitor how many requests your application makes and ensure you stay within limits. This enables you to identify any issues that come up early and make changes as needed.

Webhooks

Instead of using GET requests to retrieve data, setup webhooks to be programmatically alerted of responses and changes to resources you manage.