Get Started / Rate Limits
Document metadata
Category
Get Started
Version
1
Stability
stable
Deprecated
No
Last updated
2026-05-03

Rate Limits

Valora rate limits API traffic to protect service stability and keep access fair across integrations.

Default limits

Request type Limit
Unauthenticated requests 60 requests per minute per IP address.
Authenticated customer requests 120 requests per minute per customer.
Authenticated employee requests At least 2000 requests per minute per employee. The default is 5000 requests per minute.

Endpoint pages may document more specific limits when they differ.

Plan-based limits

Customer accounts may be assigned a plan with additional windows, such as hourly, daily, weekly, or monthly quotas. When multiple windows apply, every request must fit within all active windows.

For example, a plan can allow:

{
  "minute": 120,
  "hour": 5000,
  "day": 50000,
  "month": 1000000
}

If any one window is exhausted, the API returns 429 Too Many Requests until that window resets.

Check your current limits

Authenticated API token owners can check their current usage and reset times.

GET https://valora.spotahome.com/api/v1/tokens/limits
Authorization: Bearer {token}
Accept: application/json

Example response:

{
  "message": "Rate limits retrieved successfully",
  "rate_limits": {
    "audience": "customer",
    "plan": {
      "id": 12,
      "name": "Business",
      "slug": "business"
    },
    "limits": [
      {
        "window": "minute",
        "limit": 120,
        "used": 42,
        "remaining": 78,
        "resets_in_seconds": 31,
        "resets_at": "2026-05-03T22:30:00+02:00"
      }
    ]
  }
}

Rate limit response

When a client exceeds its limit, the API returns 429 Too Many Requests.

{
  "message": "Rate limit exceeded.",
  "rate_limit": {
    "window": "minute",
    "limit": 120,
    "used": 120,
    "remaining": 0,
    "resets_in_seconds": 31,
    "resets_at": "2026-05-03T22:30:00+02:00"
  }
}

Client behavior

  • Back off when receiving 429.
  • Retry after a delay instead of retrying immediately.
  • Add jitter to automated retries so many jobs do not retry at the same time.
  • Cache stable reference data where appropriate.
  • Avoid polling more frequently than the workflow requires.

Suggested retry strategy

For automated integrations:

Attempt Delay
1 30 seconds
2 60 seconds
3 2 minutes
4 5 minutes

Stop retrying after repeated failures and surface the issue to an operator or monitoring system.