Get a bulk job

Check the status and summary counts of a bulk verification job.

Returns a bulk verification job with its processing progress and a per-verdict summary. Poll it until status reaches completed, or pass webhook_url at creation and wait for the completion webhook instead.

GET /v3/validate/bulk/{jobId}

Path parameters

ParameterTypeRequiredDescription
jobIdstringRequiredThe job_id returned by POST /v3/validate/bulk.

Response fields

ParameterTypeRequiredDescription
statusstringOptionalJob lifecycle state — completed when every row has a verdict; deleted after a soft delete.
total_count · processed_countintegersOptionalHow many addresses the job holds and how many have been verified so far.
summaryobjectOptionalPer-verdict counts: { valid, invalid, catch_all, unknown, do_not_mail, spamtrap, abuse }.
filename · created_at · completed_at · webhook_url · error_messagemetadataOptionalThe display name, timestamps, completion webhook and any failure detail.
can_retrybooleanOptionalWhether the job still stores its source addresses and can be re-run.

Responses

StatusDescription
200OK. The job object described above.
401Missing or invalid API key.
404No job with that id on your account.

Code examples

cURL
curl https://api.wemail.io/v3/validate/bulk/{jobId} \
  -H "Authorization: Bearer afn_live_…"
Node.js
const res = await fetch("https://api.wemail.io/v3/validate/bulk/{jobId}", {
  headers: {
    Authorization: `Bearer ${process.env.WEMAIL_API_KEY}`,
  },
});
const data = await res.json();
Python
import os, requests

r = requests.get(
    "https://api.wemail.io/v3/validate/bulk/{jobId}",
    headers={"Authorization": f"Bearer {os.environ['WEMAIL_API_KEY']}"},
)
data = r.json()