Skip to main content
API Reference

File Upload Verification

Upload a CSV or TXT file containing email addresses for bulk verification.

Endpoint

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

Request

File verification is a two-step JSON flow. First request a presigned upload URL:

curl -X POST https://api.kawaa.com/v1/verify/file \
  -H "X-Api-Key: ev_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"action": "get_upload_url", "filename": "emails.csv"}'

Then PUT your file to the returned upload_url (valid for 15 minutes) and start processing with the returned file_key:

curl -X PUT "UPLOAD_URL" --data-binary @emails.csv

curl -X POST https://api.kawaa.com/v1/verify/file \
  -H "X-Api-Key: ev_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"action": "process", "file_key": "FILE_KEY"}'

Supported Formats

  • CSV - Comma-separated values with optional headers
  • TXT - One email per line

File Limits

PlanMax File SizeMax Emails
Free50 MB100
Starter50 MB1,000
Professional / Business50 MB5,000
Enterprise50 MB10,000

Response

File uploads are processed asynchronously. You'll receive a job ID to check status:

{
  "job_id": "9f8f6d2e-4c1b-4f6e-9a3b-2d1e5c7a8b90",
  "status": "processing",
  "total_submitted": 5000,
  "unique_emails": 4988,
  "credits_used": 4988,
  "message": "File verification started. Use GET /v1/jobs/{job_id} to check status."
}

Was this article helpful?

Still need help?

Can't find what you're looking for? Our support team is here to assist you.

Contact Support