Documentazione/Limiti di frequenza

Limiti di frequenza

Scopri i limiti di richieste dell'API, il consumo di crediti e come gestire il throttling senza intoppi.

Limiti attuali

AmbitoLimiteCosa significa
Richieste con chiave API60 richieste / minuto e 5,000 richieste / giornoQuota predefinita per le chiavi API autenticate.
/api/batchFino a 500 email / richiestaInvia batch entro il limite di email per richiesta.
Verifica anonima5 controlli / giorno / indirizzo IPSi applica allo strumento di verifica pubblico quando non viene usata la chiave API di un account.
Volume di verificaCrediti disponibili sull'accountI crediti determinano quante verifiche puoi eseguire.
Caricamenti CSV in bloccoCrediti richiesti per ogni email nel fileI caricamenti richiedono crediti sufficienti per il numero di email da verificare.

Quote di richieste e crediti sono controlli separati. Le chiavi API hanno di default 60 richieste al minuto e 5,000 richieste al giorno. Queste quote stabiliscono con quale velocità un'integrazione autenticata può chiamare l'API. I crediti dell'account stabiliscono quante verifiche puoi eseguire.

Per lavorare su liste di grandi volumi, /api/batch accetta fino a 500 email in una sola richiesta. I caricamenti CSV in blocco dipendono dai crediti e non dal numero di richieste: l'account deve avere crediti sufficienti per il numero di email nel file caricato prima che il job di verifica possa partire.

Lo strumento di verifica anonimo pubblico è limitato a 5 controlli al giorno per indirizzo IP. Per le regole sul saldo dell'account, vedi Crediti e utilizzo. Per importazioni di grandi dimensioni, usa Verifica in Blocco; per il comportamento delle integrazioni, consulta Gestione degli errori, Guida rapida, e prezzi.

Risposta di rate limit

Quando una chiave API supera la sua quota di richieste, l'API restituisce una risposta 429 Too Many Requests . La risposta include Retry-After così il client sa quanto attendere prima di riprovare.

json
{
  "error": "Too Many Requests",
  "message": "Rate limit exceeded. Please retry after the indicated delay.",
  "status_code": 429,
  "retry_after": 15
}

Header Retry-After

Il campo Retry-After L'header di risposta indica quanti secondi attendere prima di ripetere una richiesta con chiave API che ha superato la quota:

http
HTTP/1.1 429 Too Many Requests
Retry-After: 15
Content-Type: application/json

Gestire i rate limit nel codice

Leggi prima l'header, attendi il numero di secondi indicato e poi riprova. Se l'header manca, usa un ritardo di riserva prudente.

python
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")

Best practice