Límites de frecuencia
Entiende los límites de solicitudes de la API, el uso de créditos y cómo gestionar el throttling sin problemas.
Límites actuales
| Área | Límite | Qué significa |
|---|---|---|
| Solicitudes con API key | 60 solicitudes / minuto y 5,000 solicitudes / día | Cuota predeterminada para las API keys autenticadas. |
/api/batch | Hasta 500 emails / solicitud | Envía lotes dentro del límite de emails por solicitud. |
| Verificador anónimo | 5 comprobaciones / día / dirección IP | Se aplica al verificador público cuando no se usa ninguna API key de cuenta. |
| Volumen de verificación | Créditos disponibles en la cuenta | Los créditos determinan cuántas verificaciones se pueden ejecutar. |
| Subidas de CSV masivo | Se necesitan créditos para cada email del archivo | Las subidas requieren créditos suficientes para el número de emails que se van a verificar. |
Las cuotas de solicitudes y los créditos son controles distintos. Las API keys tienen por defecto 60 solicitudes por minuto y 5,000 solicitudes por día. Esas cuotas controlan con qué rapidez una integración autenticada puede llamar a la API. Los créditos de la cuenta controlan cuántas verificaciones se pueden ejecutar.
Para trabajar con listas de gran volumen, /api/batch acepta hasta 500 emails en una sola solicitud. Las subidas de CSV masivo se rigen por los créditos y no por el número de solicitudes: la cuenta debe tener créditos suficientes para el número de emails del archivo subido antes de que se pueda ejecutar el trabajo de verificación.
El verificador público anónimo está limitado a 5 comprobaciones por día por dirección IP. Para las reglas del saldo de la cuenta, consulta Créditos y uso. Para importaciones grandes, usa Verificación masiva; para el comportamiento de las integraciones, revisa Gestión de errores, Inicio rápido, y precios.
Respuesta por límite de solicitudes
Cuando una API key supera su cuota de solicitudes, la API devuelve una respuesta 429 Too Many Requests . La respuesta incluye Retry-After para que el cliente sepa cuánto esperar antes de reintentar.
{
"error": "Too Many Requests",
"message": "Rate limit exceeded. Please retry after the indicated delay.",
"status_code": 429,
"retry_after": 15
}
Cabecera Retry-After
El Retry-After La cabecera de respuesta indica cuántos segundos esperar antes de reintentar una solicitud con API key que superó la cuota:
HTTP/1.1 429 Too Many Requests
Retry-After: 15
Content-Type: application/json
Cómo gestionar los límites de solicitudes en el código
Lee primero la cabecera, espera el número de segundos indicado y luego reintenta. Si falta la cabecera, usa un tiempo de espera de respaldo conservador.
import requests, time
def verify_with_retry(email, api_key, max_retries=3):
for attempt in range(max_retries):
response = requests.post(
"https://verimails.com/api/verify/single",
headers={"Authorization": f"Bearer {api_key}"},
json={"email": email}
)
if response.status_code == 200:
return response.json()
if response.status_code == 429:
retry_after = int(response.headers.get("Retry-After", 15))
print(f"Rate limited. Waiting {retry_after}s...")
time.sleep(retry_after)
continue
response.raise_for_status()
raise Exception("Max retries exceeded")
Buenas prácticas
- Mantén las integraciones de API autenticadas por debajo de 60 solicitudes por minuto y 5,000 solicitudes por día, salvo que tu cuenta tenga límites distintos.
- Mantén los payloads de
/api/batchen 500 emails o menos. - Respeta siempre la cabecera
Retry-Aftercuando una solicitud con API key reciba un 429. - Consulta los créditos disponibles antes de iniciar una verificación grande.
- Usa la Verificación masiva para listas CSV y asegúrate de que la cuenta tenga créditos suficientes para el número de emails del archivo.