POST
/
v1.1
/
email
/
verify
/
batch
curl --request POST \
  --url https://api.usebouncer.com/v1.1/email/verify/batch \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '[
  {
    "email": "john@usebouncer.com"
  },
  {
    "email": "jenny@usebouncer.com"
  }
]'
{
  "batchId": "4d5fdf6b5ee97c4dbbccbfe1",
  "created": "2023-03-26T18:08:15.033Z",
  "status": "queued",
  "quantity": 2,
  "duplicates": 0
}

If you need to verify multiple email addresses in a batch, you can use our Batch Email Verification API.

Bouncer distributed infrastructure will make sure to get best possible results and retry any verification in case one is required.

Provide array of email addresses, with names if needed (optional).

Names will be returned in the response data and can also be used to pass your internal ID.

For example:


[
  { "email": "jane@usebouncer.com"},
  { "email": "john@usebouncer.com"}
]


Please make sure to store batchId as it will be necessary to check status and get results for the request.

Speed

Default settings allow our customers to verify 100-200k email addresses per hour, however if your use case requires higher throughput, please let us know and we will be able to adjust your configuration.

Rate Limiting

The Batch Email Verification API is limited to creating up to 60 batches per minute and 200 requests to other related endpoints.

Batch size recommendation

Single batch can process up to 100,000 emails, while recommended size would be anything between 1000-10000 emails.

This method is recommended when the quality of verification is of a value as it characterises the best precision of email validation and the lowest possible amount of “unknown” results.

Integration flow

There are 2 ways to integrate with batch, using status endpoint or using callback parameter.

Up to 25 batches will be processed in parallel.

Using Status Endpoint


title Batch Integration Flow With Status Endpoint

Client->>Bouncer: POST /v1.1/email/verify/batch

loop every 10-30s until status == 'completed'
    Client->>Bouncer: GET /v1.1/email/verify/batch/<ID>
end

Client->>Bouncer: GET
/v1.1/email/verify/batch/<ID>/download?download=all


Using Callbacks


title Batch Integration Flow With Callbacks

Client->>Bouncer: POST /v1.1/email/verify/batch?callback=<YOUR-URL>

Bouncer->>Client: POST <YOUR-URL>

Client->>Bouncer: GET
/v1.1/email/verify/batch/<ID>/download?download=all


Authorizations

x-api-key
string
headerrequired

Query Parameters

callback
string

Body

application/json · string

The body is of type string.

Response

200 - application/json

The response is of type object.