The single-verification endpoint is the right choice for synchronous flows — signup forms, lead capture, anywhere you need a verdict on one address in the same request cycle. Typical response time is 1–3 seconds.
async function qualifyLead(email) {
const result = await verifyEmail(email);
return {
email,
isValid: result.is_valid,
quality: result.deliverability,
risk: result.risk_score,
isBusinessEmail: !result.is_free_email,
recommendation: recommend(result),
};
}
function recommend(r) {
if (r.status === 'safe' && !r.is_free_email) return 'HIGH_PRIORITY';
if (r.status === 'safe') return 'NORMAL';
if (r.is_valid) return 'LOW_PRIORITY';
return 'SKIP';
}
Common questions
How fast is the verification?
Most calls finish in 1–3 seconds. Complex domains or those with aggressive anti-spam measures can take longer. The connection holds open until the answer is back.
What if I get `unknown`?
The mail server didn't respond, timed out, or rate-limited the check. The credit is auto-refunded. Retry later, or treat as risky if the contact is valuable.
Are credits refunded for any non-safe result?
No. A successful verification consumes a credit regardless of the verdict — invalid is still an answer. Only unknown is refunded, because we genuinely couldn't produce an answer.
Is there a sandbox or test mode?
No dedicated sandbox right now. The recommended pattern is to verify a small set of known-good addresses (your own email, a teammate's) during integration testing before going to production.