Verify a single email address in real-time.
Endpoint
POST https://api.kawaa.com/v1/verifyRequest body
{
"email": "john@example.com",
"options": {
"deep_verify": true,
"enrich": false
}
}Only the options listed below are recognised. Any other key inside options is ignored rather than rejected, so check the spelling against this table.
Parameters
| Parameter | Type | Description |
|---|---|---|
email | string | Required. Email to verify |
options.deep_verify | boolean | Run SMTP mailbox probing and catch-all detection (default: true) |
options.include_ai | boolean | Include AI analysis such as typo suggestions (default: true) |
options.enrich | boolean | Include name/gender data (default: false). Requires a plan with data enrichment |
options.skip_cache | boolean | Force a fresh verification instead of reusing a cached result (default: false) |
options.timeout_ms | number | How long to wait for a synchronous result before returning pending, capped at 60000 |
Response
{
"success": true,
"data": {
"job_id": "29f094a4-c170-40ed-91c8-2915f9a40063",
"email": "john@example.com",
"status": "risky",
"sub_status": "catch_all",
"quality_score": 72,
"verification": {
"syntax_valid": true,
"domain_exists": true,
"mx_found": true,
"catch_all": true,
"greylisted": false
},
"flags": {
"disposable": false,
"role_account": false,
"free_provider": false,
"spam_trap": false,
"abuse_email": false,
"honeypot": false,
"complainer": false,
"bot_generated": false
},
"domain_info": {
"domain": "example.com",
"provider_type": "corporate",
"auth_score": 74,
"auth_grade": "C",
"has_spf": true,
"has_dmarc": true,
"has_dkim": true
},
"credits_used": 1,
"credits_remaining": 9994,
"verified_at": "2026-01-10T12:00:00Z",
"request_id": "098616d8-0738-4aeb-b6b8-be49d85ac51b"
}
}