Las solicitudes usan una única ventana móvil de 60 segundos por cuenta, compartida por todas las claves. El gasto exitoso retenido de por vida determina el nivel de la cuenta; las protecciones por IP y por acción pueden rechazar antes o por separado. No hay cuota por hora ni por clave.
20.000 solicitudes / minuto / dirección IPSe aplica antes de validar la clave, de modo que la enumeración de claves por fuerza bruta queda acotada. Se comparte entre todas las claves detrás de la misma IP. El valor por defecto se establece globalmente y no es configurable por el usuario.
120–2.400 solicitudes / 60 segundos móvilesTodas las claves API activas de una cuenta consumen el mismo contador. La escala fija de gasto exitoso acumulado proporciona el límite, salvo que exista una anulación directa de RPM.
Depende de la acciónAlgunas acciones sensibles añaden una regla de cuenta más estrecha. Por ejemplo, cancel admite 30 solicitudes por minuto por cuenta; su 429 informa action.
La calificación usa el gasto exitoso retenido durante toda la vida de la cuenta. Las entregas completadas y parciales suman el importe exitoso retenido; los reembolsos posteriores lo reducen. El límite efectivo se actualiza desde el total almacenado sin un proceso diario. Usa action=account_status para consultar el nivel ganado y las RPM efectivas.
| Nivel | Gasto acumulado mínimo | Solicitudes / minuto |
|---|---|---|
| 0 | $0.00000000 | 120 |
| 1 | $10.00000000 | 300 |
| 2 | $50.00000000 | 600 |
| 3 | $100.00000000 | 900 |
| 4 | $500.00000000 | 1,200 |
| 5 | $1000.00000000 | 1,800 |
| 6 | $2500.00000000 | 2,400 |
| Cabecera | Descripción |
|---|---|
| X-RateLimit-Limit | En respuestas normales, el límite efectivo de solicitudes por minuto compartido por la cuenta. En un 429, el límite informado por la capa que rechazó. |
| X-RateLimit-Remaining | En respuestas normales, las solicitudes restantes en la ventana compartida de la cuenta. En un 429, el valor restante informado por la capa que rechazó. |
| X-RateLimit-Reset | Número relativo de segundos hasta que se reinicie la ventana informada; no es una marca de tiempo Unix. |
| X-RateLimit-Tier | El nivel ganado por gasto exitoso acumulado (0–6). Una anulación personalizada de RPM no cambia este valor. |
| X-RateLimit-Source | "tier" cuando la escala fija proporciona las RPM efectivas; "custom" cuando las proporciona una anulación directa del administrador. |
| X-RateLimit-DeniedBy | Se envía en respuestas 429 cuando rechaza un limitador identificado: "ip", "api_requests_per_minute" o "action". |
| Retry-After | En un 429 o 503 reintentable, espera al menos los segundos indicados por Retry-After antes de reintentar. Para action=add, reutiliza la misma clave de idempotencia después de esperar. |
ip, api_requests_per_minute y action identifican la capa que rechazó; cambiar de clave no evita el límite compartido de cuenta, IP o acción.action=status.