Límites de uso
Cuántas peticiones por minuto admite cada ruta de la API de partners de SLAN y cómo reaccionar correctamente a un 429.
Los límites se cuentan por credencial, no por dirección IP. Si repartes tu integración entre varios servidores, todos comparten el mismo cubo.
| Rutas | Límite |
|---|---|
| Todas, por omisión | 120 peticiones por minuto |
POST /v1/partner/users |
60 por minuto |
POST /v1/partner/wallets |
60 por minuto |
POST /v1/partner/api-keys/rotate |
5 por hora |
La ventana es fija de un minuto (o de una hora en la rotación), no deslizante.
El límite más bajo de rotación es deliberado: cada rotación revoca la llave anterior, así que no es una operación que se automatice en un bucle.
Qué llega cuando te pasas
Un 429 con el formato de error habitual y code: RATE_LIMITED, más la cabecera estándar:
HTTP/1.1 429 Too Many RequestsRetry-After: 23Content-Type: application/problem+jsonRetry-After viene en segundos. Es el número que hay que respetar, no una sugerencia: si
reintentas antes, la petición vuelve a consumir un intento y solo alarga el bloqueo.
Cómo reintentar bien
Espera los segundos que indique Retry-After y reintenta. Si esa cabecera no viniera, usa una
espera creciente: un segundo, dos, cuatro, ocho.
Pon siempre un número máximo de intentos y falla con ruido cuando se agote. Un bucle de reintentos sin tope convierte un problema temporal en una caída.
Cuando la petición sea un POST, reintenta con la misma Idempotency-Key. Un 429 ocurre
antes de ejecutar nada, así que no hay duplicado posible; pero mantener la clave te protege
igual si el reintento coincide con una respuesta que sí llegó a procesarse.
Cómo no chocar con ellos
- Pagina con
limit=100en vez de hacer muchas peticiones pequeñas. - Guarda los
publicIdque te devolvemos: volver a listar para encontrar algo que ya conocías es la causa más común de consumo innecesario. - Usa
externalRefpara reconciliar contra tu base de datos sin tener que consultarnos.