Skip to main content
The Dashlink API implements rate limiting to ensure fair usage and maintain optimal performance for all users. Rate limits control the number of API requests you can make within a specific time window. The rate limit windows are measured in minutes, and the reset time is provided in seconds. Rate limits are determined by your subscription plan and are applied at the organization level. All API keys within the same organization share the same rate limit quota.

Rate Limit Headers

Every API response includes rate limit information in the response headers. These headers help you monitor your API usage and implement proper rate limit handling in your application. Rate Limit Response Headers:
HeaderDescription
X-RateLimit-LimitThe maximum number of requests you can make within the current time window (window duration is in minutes)
X-RateLimit-RemainingThe number of requests remaining in the current time window
X-RateLimit-ResetThe time (in seconds) until the current rate limit window resets

Understanding Rate Limit Headers

X-RateLimit-Limit

This header indicates the maximum number of requests that your organization can make within the current rate limit window. This limit is shared across all API keys in your organization and is based on your subscription plan. Example:
X-RateLimit-Limit: 300
This means your organization can make up to 300 requests within the current time window, shared across all API keys.

X-RateLimit-Remaining

This header shows the number of requests that your organization can still make before hitting the rate limit. This count is shared across all API keys in your organization. Example:
X-RateLimit-Remaining: 299
This indicates your organization has 299 requests remaining in the current window, shared across all API keys. As requests are made using any API key, this value will decrease.

X-RateLimit-Reset

This header specifies the time (in seconds) until the current rate limit window resets and your request count is refreshed. Example:
X-RateLimit-Reset: 49
This means the rate limit window will reset in 49 seconds, at which point your request count will be reset to the maximum limit.

Example Response

When you make an API request, the response headers will include the rate limit information:
Example Response Headers
HTTP/1.1 200 OK
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 299
X-RateLimit-Reset: 49
Content-Type: application/json

Handling Rate Limits

When you exceed the rate limit, the API will return a 429 Too Many Requests status code. Here’s how to handle rate limits effectively: Best Practices:
  • Monitor Rate Limit Headers - Always check the X-RateLimit-Remaining header to track your remaining requests
  • Implement Exponential Backoff - If you receive a 429 response, wait before retrying, and increase the wait time for subsequent retries
  • Respect the Reset Time - Use the X-RateLimit-Reset header to know when you can make requests again
  • Cache Responses - Reduce API calls by caching responses when appropriate
Example Error Response:
Rate Limit Exceeded
{
    "error": {
        "message": "Rate limit exceeded. Please try again later.",
        "status_code": 429,
        "code": "RATE_LIMIT_EXCEEDED"
    }
}
If you consistently hit rate limits, consider optimizing your application to reduce the number of API calls or contact support to discuss your usage requirements.
Rate limits are determined by your subscription plan and are applied at the organization level. All API keys within the same organization share the same rate limit quota. This means if you have multiple API keys, they all contribute to and share the same rate limit pool.

Rate limits by plan

The rate limit quota for your organization depends on your subscription plan. The following table shows the rate limits for each plan:
PlanRate Limit
Free60 requests per minute
Plus300 requests per minute
Growth1,200 requests per minute
Pro3,000 requests per minute
EnterpriseCustom - contact sales for more details
Enterprise plans have custom rate limits tailored to your specific needs. Contact our sales team to discuss your requirements and get a custom rate limit configuration.