> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nextsportsapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Rate Limits

> Use rate limit headers and recommended polling intervals safely.

Rate limits depend on your plan and product access. Every response can include usage headers so your application can slow down before it is blocked.

## Response headers

| Header                  | Description                                             |
| ----------------------- | ------------------------------------------------------- |
| `X-RateLimit-Limit`     | Maximum requests allowed in the current rolling window. |
| `X-RateLimit-Remaining` | Requests remaining in the current rolling window.       |
| `X-RateLimit-Reset`     | Unix timestamp when the current rolling window resets.  |
| `X-Quota-Limit`         | Daily request quota for the API key or project.         |
| `X-Quota-Remaining`     | Daily quota remaining.                                  |

## Recommended polling

| Data type                     | Recommended pattern                                       |
| ----------------------------- | --------------------------------------------------------- |
| Timezones, countries, seasons | Cache for days or longer.                                 |
| Leagues and teams             | Refresh daily unless your product needs faster discovery. |
| Standings                     | Refresh hourly during active competition periods.         |
| Fixtures before matchday      | Refresh daily or a few times per day.                     |
| Live fixtures                 | Poll more frequently only while matches are live.         |

## Handling `429`

When you receive `429 Too Many Requests`, pause requests until the reset time and retry with backoff.

```json theme={"system"}
{
  "get": "football/fixtures",
  "parameters": {},
  "errors": [
    {
      "code": "rate_limit.exceeded",
      "message": "The request limit for this API key has been reached."
    }
  ],
  "results": 0,
  "paging": {
    "current": 1,
    "total": 1
  },
  "response": []
}
```
