Skip to main content

API reference

Batch verification

Verify multiple email addresses in a single API call.

Endpoint

POST https://api.kawaa.com/v1/verify/batch

Request body

{
  "emails": [
    "john@example.com",
    "jane@example.com",
    "bob@company.org"
  ]
}

Limits

The number of emails one request may carry depends on your plan:

  • Free: up to 100 emails per batch request
  • Starter: up to 1,000 emails per batch request
  • Professional: up to 5,000 emails per batch request
  • Business: up to 5,000 emails per batch request
  • Enterprise: up to 10,000 emails per batch request
  • For larger lists, use the File Upload API
  • Batch requests count as 1 credit per email verified

Response

Batch verification is asynchronous. The endpoint returns 202 Accepted with a job id — it does not return results inline:

{
  "success": true,
  "data": {
    "job_id": "8d005380-7e75-4cfe-a9ab-6abcf44652b7",
    "status": "processing",
    "total_submitted": 3,
    "duplicates_removed": 0,
    "invalid_emails_skipped": 0,
    "unique_emails": 3,
    "estimated_time_seconds": 6,
    "credits_used": 3,
    "credits_remaining": 9991,
    "message": "Batch verification started. Use GET /v1/jobs/{job_id} to check status."
  }
}

Getting the results

Poll GET /v1/jobs/{job_id} until data.status is completed, then read the per-email results from that response. Duplicate addresses are removed before billing, so credits_used reflects unique_emails rather than the number you submitted.

Something wrong or missing here?

Tell us what to fix. Your email goes to the support team with this article's title already filled in.

Send feedback

Still need help?

Email support@kawaa.com. If your question is about a bulk job, include its job ID from the dashboard.

Contact support