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

# Limits

> Rate limits, maximum sizes, how many keys and webhooks you can have, and how long data is retained.

## Request limit

Each key can make **300 requests per minute**. The limit is per key, not per account: two integrations with different keys do not consume each other's quota.

Each response tells you where you are:

```http theme={null}
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 287
```

If you exceed the limit, you receive `429 Too Many Requests`, with the header `Retry-After`: the number of seconds after which you can resume.

```http theme={null}
HTTP/1.1 429 Too Many Requests
Retry-After: 18

{
  "type": "https://housera.ro/problems/too_many_requests",
  "title": "Prea multe cereri. Reîncearcă după numărul de secunde din Retry-After.",
  "status": 429,
  "code": "too_many_requests",
  "detail": "Prea multe cereri. Reîncearcă după numărul de secunde din Retry-After."
}
```

<Tip>
  Do not wait `429`. When `X-RateLimit-Remaining` approaches zero, reduce your requests. And at `429`, respect `Retry-After` instead of retrying immediately: every rejected request still counts.
</Tip>

The vocabulary (`GET /schema`) has a separate limit of 60 requests per minute per IP address because it is requested without a key.

There is no daily cap on new listings: you can publish as much stock as you have, at the pace of the limit above. However, each new listing goes through moderation.

## Sizes

| What | Limit |
| - | - |
| Title | 10–90 characters |
| Description | 30–5,000 characters |
| Photos per listing | 100 |
| Size of a photo | 20 MB |
| Resolution of a photo | 100 megapixels |
| Photo types | JPEG, PNG, WebP |
| Photo URL | 2,048 characters, only HTTPS |
| Room labels on photo | 3 |
| Validity of an upload URL | 15 minutes |
| An unused upload key | is deleted after about 24 hours |
| `external_ref` | 1–100 characters: letters, digits, `.` `_` `:` `/` `-` |
| `Idempotency-Key` | 64 characters, remembers the request for 10 minutes |
| `per_page` for lists | 1–100 (default 50) |
| `limit` for `GET /events` | 1–500 (default 100) |
| Types of units in a development | 50 |

## Keys and webhooks

| What | Limit |
| - | - |
| API keys per account | 10 |
| Validity of a key | 30, 90, or 365 days |
| Webhooks per account | 5 |
| Your endpoint's response time | 10 seconds |
| Attempts to deliver an event | 7, over about 9 hours |

## Retention

| What | How long |
| - | - |
| Events (`GET /events`) | 35 days |
| Webhook delivery log | 30 days |
| Request and response bodies in the API log | 30 days |
| Other information in the API log | 365 days |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.