---
updatedAt: 2025-10-08T10:49:43.000Z
agentTools:
  projectIndex: https://developers.tidio.com/llms.txt
---

# Rate Limiting

Rate limiting is used to prevent abuse or excessive usage of an API, and ensure that the API remains available for all users.

<Table align={["left","left"]}>
  <thead>
    <tr>
      <th style={{ textAlign: "left" }}>
        Pricing plan
      </th>

      <th style={{ textAlign: "left" }}>
        Rate limit
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td style={{ textAlign: "left" }}>
        Tidio Free Trial
      </td>

      <td style={{ textAlign: "left" }}>
        max 10 requests in 1 minute per project  
        <sup>**Products Recommendation only**</sup>
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        Tidio Free
      </td>

      <td style={{ textAlign: "left" }}>
        OpenAPI not available
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        Tidio Starter / Growth  
        Paid Lyro AI Agent / Flows
      </td>

      <td style={{ textAlign: "left" }}>
        max 10 requests in 1 minute per project  
        <sup>**Products Recommendation only**</sup>
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        Tidio Plus
      </td>

      <td style={{ textAlign: "left" }}>
        max 60 requests in 1 minute per project
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        Tidio Premium
      </td>

      <td style={{ textAlign: "left" }}>
        max 120 requests in 1 minute per project
      </td>
    </tr>
  </tbody>
</Table>

## Response headers

X-RateLimit headers are used to indicate the limit of requests that a client can make to an API.

The X-RateLimit headers include the following information:

* `x-ratelimit-limit`: The maximum number of requests a client can make in a given period.
* `x-ratelimit-remaining`: The number of remaining requests a client can make before hitting the limit.

## Exceeding the limit

After the limit is exceeded, the following response will be returned:

```
< HTTP/2 429
< content-type: application/json
{
    "errors": [
        {
            "code": "too_many_requests",
            "message": "You have reached the limit of allowed attempts"
        }
    ]
}
```