Limites de Taxa
Entenda os limites de requisições da API, o consumo de créditos e como lidar com throttling sem dor de cabeça.
Limites atuais
| Área | Limite | O que significa |
|---|---|---|
| Requisições por chave de API | 60 requisições / minuto e 5,000 requisições / dia | Cota padrão para chaves de API autenticadas. |
/api/batch | Até 500 e-mails / requisição | Envie lotes dentro do limite de e-mails por requisição. |
| Verificador anônimo | 5 verificações / dia / endereço IP | Vale para o verificador público quando nenhuma chave de API de conta é usada. |
| Volume de verificação | Créditos disponíveis na conta | Os créditos determinam quantas verificações podem ser feitas. |
| Uploads de CSV em massa | Créditos necessários para cada e-mail do arquivo | Os uploads exigem créditos suficientes para o número de e-mails a verificar. |
Cotas de requisição e créditos são controles separados. Por padrão, as chaves de API têm 60 requisições por minuto e 5,000 requisições por dia. Essas cotas controlam a velocidade com que uma integração autenticada pode chamar a API. Os créditos da conta controlam quantas verificações podem ser feitas.
Para trabalhar com listas de alto volume, /api/batch aceita até 500 e-mails em uma única requisição. Uploads de CSV em massa são regidos pelos créditos, não pelo número de requisições: a conta precisa ter créditos suficientes para o número de e-mails do arquivo enviado antes que o job de verificação possa rodar.
O verificador anônimo público é limitado a 5 verificações por dia por endereço IP. Para as regras de saldo da conta, veja Créditos e Uso. Para importações grandes, use Verificação em Massa; para o comportamento das integrações, consulte Tratamento de Erros, Início Rápido, e preços.
Resposta de limite de requisições
Quando uma chave de API ultrapassa sua cota de requisições, a API retorna uma resposta 429 Too Many Requests . A resposta inclui Retry-After para que o cliente saiba quanto tempo esperar antes de tentar de novo.
{
"error": "Too Many Requests",
"message": "Rate limit exceeded. Please retry after the indicated delay.",
"status_code": 429,
"retry_after": 15
}
Cabeçalho Retry-After
Os Retry-After O cabeçalho de resposta indica quantos segundos esperar antes de repetir uma requisição com chave de API que excedeu a cota:
HTTP/1.1 429 Too Many Requests
Retry-After: 15
Content-Type: application/json
Como lidar com limites de requisição no código
Leia o cabeçalho primeiro, aguarde o número de segundos indicado e então tente de novo. Se o cabeçalho não vier, use um intervalo de espera conservador como fallback.
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")
Boas práticas
- Mantenha as integrações autenticadas com a API abaixo de 60 requisições por minuto e 5,000 requisições por dia, a menos que sua conta tenha limites diferentes.
- Mantenha os
/api/batchpayloads com 500 e-mails ou menos. - Sempre respeite o
Retry-Aftercabeçalho quando uma requisição com chave de API receber um 429. - Confira os créditos disponíveis antes de iniciar uma verificação grande.
- Use a Verificação em massa para listas em CSV e garanta que a conta tenha créditos suficientes para o número de e-mails do arquivo.