One API call tells you if an email is real, disposable, or part of a batch attack — in under 80 ms. Drop it into your signup flow and stop paying to email ghosts.
Hits the same endpoint as production. Powered by Gemini for the nuanced calls — disposable lookups stay local for sub-millisecond rejections.
POST the email (and optional IP, user agent) to /api/v1/verify when a user submits the signup form.
Disposable domain match, MX + SMTP probe, free-provider flag, role account, batch-velocity fingerprint — all in one round trip.
Use our verdict, or roll your own policy with the raw signals. Every call streams to your dashboard for replay and tuning.
We crawl, fingerprint, and rank every disposable provider — Mailinator, Guerrilla, 10MinuteMail, the 5,400 long-tail clones, and the 30+ new ones that pop up every week. Browse the full list →
We cluster incoming signups by IP block, ASN, fingerprint, timing, and email pattern. When 200 accounts that look identical hit you in 90 seconds, you’ll see a single batch — not 200 noisy false alarms.
No SDK to install. It’s a single POST that any HTTP client speaks — curl, fetch, requests, net/http, you pick.
curl https://api.trueuser.dev/api/v1/verify \
-H "Authorization: Bearer tu_live_••••" \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected]",
"ip": "203.0.113.42"
}'{
"verdict": "block",
"signals": {
"format_valid": true,
"disposable": true,
"public_domain": false,
"relay_domain": false,
"alias": false,
"role_account": false,
"spam": false,
"suspicious_pattern": 0.84,
"batch_cluster": 0.91
},
"reasoning": "Disposable provider with batch-shaped local part.",
"latency_ms": 68
}For prototyping and side projects.
Drag to pick the volume you need. Switch tiers anytime.