Límites de Uso
AstroAPI aplica límites de uso para garantizar un uso justo y la estabilidad de la plataforma.
Límites por Defecto
Los límites de uso vienen determinados por vuestro plan de suscripción:
| Suscripción | Solicitudes/minuto | Solicitudes/mes |
|---|---|---|
| Basic | 60 | 150.000 |
| Gold | 120 | 300.000 |
| Premium | 300 | 750.000 |
| Deluxe | 600 | 1.000.000 |
Vuestros límites específicos dependen de vuestra suscripción activa. Consultad el panel para ver vuestros límites actuales.
Cabeceras de Límite de Uso
Todas las respuestas incluyen información sobre los límites de uso:
http
X-RateLimit-Limit: 60
X-RateLimit-Reset: 1699999999Gestión de Límites de Uso
Cuando superéis el límite de uso, la API devuelve una respuesta 429 Too Many Requests:
json
{
"errors": [{
"status": "429",
"title": "Too Many Requests",
"detail": "Rate limit exceeded. Please retry after 60 seconds."
}]
}Estrategia de Reintento
Implementad un retroceso exponencial al recibir respuestas 429:
typescript
async function fetchWithRetry(url: string, options: RequestInit, maxRetries = 3) {
for (let i = 0; i < maxRetries; i++) {
const response = await fetch(url, options);
if (response.status !== 429) {
return response;
}
const retryAfter = response.headers.get('Retry-After') || '60';
await new Promise(resolve =>
setTimeout(resolve, parseInt(retryAfter) * 1000)
);
}
throw new Error('Max retries exceeded');
}Límites por Endpoint
Algunos endpoints tienen límites adicionales:
| Endpoint | Límite Adicional |
|---|---|
/api/chart/* | 100 renderizados/hora |
/api/calc/batch | 10 solicitudes batch/minuto |
Aumentar los Límites
Contactad con el soporte para hablar sobre límites de uso personalizados para vuestra aplicación.