Límite de Peticiones y Control de Concurrencia
Para salvaguardar la estabilidad de la base de datos de BaseGes y evitar sobrecargas accidentales por bucles infinitos de sincronización, la API implementa un limitador de frecuencia global.
Política Estándar
- Límite: 60 peticiones por minuto por cliente/IP.
- Ventana: Ventana fija de 1 minuto (
FixedWindowLimiter). - Cola de espera: Hasta 5 peticiones adicionales pueden quedar en cola brevemente antes de ser rechazadas.
- Identificador de cliente: Se prioriza el valor de
X-Api-Key; si no está presente, se utiliza la dirección IP de origen de la conexión.
Respuesta ante Exceso de Tráfico (429 Too Many Requests)
Cuando un cliente supera el cupo permitido y la cola está llena, el servidor responderá de inmediato:
- Código HTTP:
429 Too Many Requests - Cuerpo de respuesta:
{
"type": "https://tools.ietf.org/html/rfc6585#section-4",
"title": "Too Many Requests",
"status": 429,
"detail": "Ha superado el límite de peticiones por minuto permitidas."
}
Buenas Prácticas para Integradores
- Paginación adecuada: En lugar de solicitar páginas de tamaño 1000 en ráfaga, utilice
pageSize=50o100con un pequeño retardo (exponential backoff). - Filtro incremental (
updatedAfter): Para sincronizaciones periódicas, no descargue todo el catálogo o clientes; solicite únicamente los registros modificados desde la última sincronización.