Límites de requests
Algunos endpoints aplican diferentes políticas de límite de requests (rate limiting).
La API de Zipnova define cuatro niveles de límite a la cantidad de requests por minuto que acepta el servidor. Cada uno de ellos tiene un máximo de requests admitidos por minuto, y un tiempo específico en que el consumo es liberado en caso de superar el máximo permitido.
🔴 Alto
100 reqs/minuto
3 minutos
Creación de envíos
🟠 Medio
500 reqs/minuto
2 minutos
Cotización de envíos
🟡 Bajo
1000 reqs/minuto
1 minuto
Obtención de envíos y tracking
🟢 Nulo
Ninguno
Resto de los endpoints
Actualmente, los límites son aplicados por IP.
Monitorear el consumo de requests
Cuando hagas requests a un endpoint limitado, notarás que aparecen los siguientes headers en la respuesta:
X-RateLimit-Limit
indica el límite de requests para el endpoint.X-RateLimit-Remaining
indica cuántos requests disponibles tienes actualmente.
Si consumieras todos los requests permitidos en el minuto, la API te devolverá un error HTTP con código 429: Too Many Requests.
Verás que aparecen otros headers adicionales en la respuesta:
Retry-After
indica cuantos segundos faltan para que se resetee la disponibilidad de requests.X-RateLimit-Reset
es un timestamp UNIX de cuándo reseteará la disponibilidad de requests.
Recomendamos que utilices algún método para consumir el retry-after o utilizar backoff exponencial evitar errores en tu integración. Muchos clientes tienen la posibilidad de utilizar middlewares para gestionar esto automáticamente.
Por ejemplo, si utilizas PHP y el cliente Guzzle, podrías usar el paquete este paquete.
Última actualización