What you send
Authenticate with Authorization: Bearer ev_live_…. Body is JSON: the address, and optionally include_country when you want a region code.
POST /api/v1/verify
{"email":"[email protected]","include_country":true}
The response is a verdict (valid, invalid, unknown, risky, or error), optional country, and credits_charged for that call.
What it costs
You only pay for valid or invalid. Unknown, error, and risky are not billed. Country is 2 credits only when a code is actually returned — not for asking. If one credit remains, the check still runs at 1 credit and country is stripped.
Credits never expire. The same balance pays for bulk CSV jobs and single API calls.
Where it fits
- Signup and checkout — reject an address before you create the user.
- Enrichment pipelines — one hop, then store the verdict.
- Lists too small for a file — or a second pass after a job.
Lost a key? The dashboard emails a 30-minute reset link. The old key dies when the new one is issued. Full field list is on the API reference.