# Bulk lookup

> Submit up to 1,000 lookups in one request. Each item accepts the same fields as a single lookup. All items are enqueued under a shared batchId you can use to…

Source: https://warmerly.com/docs/email-finder/bulk-lookup

```text
POST /email-finder/bulk
```

Submit up to 1,000 lookups in one request. Each item accepts the same fields as a single lookup. All items are enqueued under a shared `batchId` you can use to track progress via [Batches](https://warmerly.com/docs/email-finder/bulk-lookup#batch-status).

```bash
curl https://app.warmerly.com/api/v1/email-finder/bulk \
  -X POST \
  -H "X-Api-Key: wmv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "X-Project-Id: 8f14e45f-ceea-4c6a-8c8d-6b1a5b5c9c1a" \
  -H "Content-Type: application/json" \
  -d '{
    "items": [
      { "domain": "acme.com", "person": { "firstName": "Jane", "lastName": "Doe" } },
      { "website": "https://widgetco.io" },
      { "name": "Roasted Coffee Co", "location": "Austin, TX" }
    ]
  }'
```

```json
{
  "batchId": "6e6f9d0a-4a3f-4c7e-9c86-1b6a4e5c2f01",
  "results": [
    { "index": 0, "ok": true, "jobId": "3f9a2e2a-1c4b-4a2e-9b1e-2f6c8a7d5e10", "cached": true, "result": { "email": "jane.doe@acme.com", "confidence": 92, "verifyStatus": "verified", "source": "pattern_guess", "isCatchAll": false, "mxHost": "aspmx.l.google.com", "evidenceUrl": "https://acme.com/team", "providerName": "Google Workspace" } },
    { "index": 1, "ok": true, "jobId": "7c1e9b3d-8a2f-4e11-9d0c-5b3a1f4e6c22", "cached": false },
    { "index": 2, "ok": false, "error": "invalid input" }
  ]
}
```

`items` must hold 1 to 1,000 entries, otherwise `400 bad_request` (`invalid_body`). Each item is evaluated independently: an invalid item (`ok: false`) does not fail the rest of the batch. Items that hit the cache resolve immediately (`cached: true`, `result` present); the rest are enqueued (`cached: false`) and must be polled individually via their `jobId`, or tracked in aggregate via batch status.

## More from Email Finder

- [Single lookup](https://warmerly.com/docs/email-finder/single-lookup): Submit one lookup. Provide at least one of domain, website, or name, add person to narrow the search to a…
- [Get a job](https://warmerly.com/docs/email-finder/get-a-job): Fetch the current status of a lookup job, whether it came from a single or bulk request.
- [Delete a job](https://warmerly.com/docs/email-finder/delete-a-job): Deletes the job and its discovered email records.
