Docs/Rate limits

Rate limits

Begrijp de requestlimieten van de API, het creditverbruik en hoe je throttling netjes afhandelt.

Markdown bekijken OpenAPI JSON

Huidige limieten

OnderdeelLimietWat het betekent
Requests met API-sleutel60 requests / minuut en 5,000 requests / dagStandaardquotum voor geauthenticeerde API-sleutels.
/api/batchTot 500 e-mails / requestDien batches in binnen de e-maillimiet per request.
Anonieme checker5 checks / dag / IP-adresGeldt voor de openbare checker als er geen API-sleutel van een account wordt gebruikt.
VerificatievolumeBeschikbare accountcreditsCredits bepalen hoeveel verificaties je kunt uitvoeren.
Bulk-CSV-uploadsCredits nodig voor elke e-mail in het bestandVoor uploads heb je genoeg credits nodig voor het aantal e-mails dat wordt geverifieerd.

Requestquota en credits zijn aparte controles. API-sleutels hebben standaard 60 requests per minuut en 5,000 requests per dag. Die quota bepalen hoe snel een geauthenticeerde integratie de API kan aanroepen. Accountcredits bepalen hoeveel verificaties je kunt uitvoeren.

Voor lijstwerk met hoog volume accepteert /api/batch tot 500 e-mails in één request. Bulk-CSV-uploads worden begrensd door credits in plaats van door het aantal requests: het account moet genoeg credits hebben voor het aantal e-mails in het geüploade bestand voordat de verificatiejob kan starten.

De openbare anonieme checker is beperkt tot 5 checks per dag per IP-adres. Voor de regels rond je accountsaldo, zie Credits en verbruik. Voor grote imports gebruik je Bulkverificatie; voor het gedrag van integraties, bekijk Foutafhandeling, Snel aan de slag, en prijzen.

Response bij rate limit

Als een API-sleutel zijn requestquotum overschrijdt, retourneert de API een 429 Too Many Requests -response. De response bevat Retry-After zodat de client weet hoe lang hij moet wachten voordat hij het opnieuw probeert.

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

Retry-After-header

Het Retry-After -responseheader geeft aan hoeveel seconden je moet wachten voordat je een API-sleutelrequest dat het quotum overschreed opnieuw probeert:

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

Rate limits afhandelen in code

Lees eerst de header, wacht het aangegeven aantal seconden en probeer het dan opnieuw. Ontbreekt de header, gebruik dan een voorzichtige standaardwachttijd.

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 practices