Quickstart
Verify your first email address with the VerifAi REST API in two steps. Every request is authenticated with an API key and returns a single JSON object.
1. Create an API key
Sign in and open API keys in your dashboard. Click Create key, give it a name, and copy the key shown once — it looks like vk_live_… and is never shown again. See Authentication for how to send it.
2. Verify an address
Send a POST to /v1/validate with the address and a depth (syntax, mx_only or full). Replace YOUR_API_KEY with the key you created:
curl https://ratifai.app/hook/FlowClick/FlowVerify/v1/validate -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"email":"support@github.com","depth":"full"}'{
"email": "support@github.com",
"verdict": "unknown",
"reason": "probe_failed_open",
"depth_requested": "full",
"depth_applied": "full",
"billable": false,
"credits_charged": 0,
"checks": {
"syntax": { "valid": true, "origin": "checked" },
"mx": { "records": ["github-com.mail.protection.outlook.com"], "origin": "checked" },
"smtp": { "accepted": false, "status": "unknown", "origin": "failed_open" },
"catch_all": { "value": false, "origin": "skipped" }
},
"mail_provider": "Microsoft 365",
"request_id": "req_1785952959868"
}Here the mailbox probe could not complete, so the verdict is unknown and the check is free — you are charged one credit only for a definitive answer, never for an attempt. A definitive result returns deliverable, undeliverable or risky. See Verdicts & reasons and How billing works.
Next steps
- Authentication — API keys, rate limits and safe retries with idempotency keys.
- API reference — the full request and response schema for /v1/validate and /v1/credits, with Python and JavaScript examples.
- Verdicts & reasons — what each result means.
- OpenAPI document — the machine-readable specification.