Rate limiting
Límites
| Métrica | Valor |
|---|---|
| Requests por minuto | 120 por API key |
| Ventana | Fixed window de 60 s |
| Particionado por | api_key_id (con fallback a IP si la llamada no está autenticada) |
| Body máximo | 256 KB por request |
Headers de respuesta
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 73
X-RateLimit-Reset: 1747234560Cuando excedés el límite
HTTP/1.1 429 Too Many Requests
Retry-After: 23{ "error": "Rate limit excedido." }Estrategia recomendada
async function withRateLimitHandling(fn, maxRetries = 5) {
for (let i = 0; i < maxRetries; i++) {
try {
return await fn();
} catch (err) {
if (err.response?.status === 429) {
const retryAfter = parseInt(err.response.headers['retry-after'] || '60');
await sleep(retryAfter * 1000);
continue;
}
throw err;
}
}
throw new Error('Rate limit excedido tras 5 reintentos');
}¿Necesitás más?
Si tu volumen legítimo excede los 120/min, contactá a soporte. Podemos subir el límite para una key específica.
Ver también: reintentos cliente e idempotencia.