Submits a single email for verification. Returns a verdict computed from your custom rules over the underlying detection signals, plus reasoning. Default mode can use AI and recent signup context; latency varies. Local mode skips the AI call.
Keep the API key server-side. Validate responses and set a timeout. A failed request should leave costly trial benefits pending, with a real retry or review path. An AI failure can return local signals with HTTP 200; there is no structured degraded flag. An allow verdict does not prove identity or inbox ownership.
Persist eligibility and grant credits atomically with a unique grant key. Use a durable job queue for background checks. Read the Next.js guide and download the helper →
Paste this into Claude Code, Codex, Cursor, or your preferred coding agent in your project. It covers the API contract, server-side secrets, failure handling, and trial-credit safeguards.
Add your real API key to your server environment after reviewing the generated changes.
curl https://trueuser.dev/api/v1/verify \
-H "Authorization: Bearer $TRUEUSER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected]",
"username": "alex_42",
"ip": "203.0.113.42"
}'{
"email": "[email protected]",
"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
}The free tool checks blocklist membership. Sign in to try the full verification API.