Skip to main content

Overview

Bulk search is for batched investigations where one search shape needs to run against many terms. Instead of sending hundreds of separate search requests, you create one job with a shared query_config and a list of terms. Use bulk search when:
  • you have many domains, emails, usernames, or identifiers to check
  • each term should reuse the same service, fields, filters, and output format
  • you want an asynchronous job with status polling and a downloadable result
For one-off searches, use the normal breach, stealer, or victims search guides.

How It Works

  1. create one job with the shared search shape and all target terms
  2. poll the job until it finishes
  3. download the generated output file
  4. list recent jobs when you need history or recovery after a client restart
Bulk search responses are job snapshots. Create responses use the standard success/data envelope; list and status responses are raw JSON snapshots.

Query Config

query_config is the reusable part of the search. It can contain the same flat filters and structured filter grammar used by normal V2 search.
Supported service values are stealer, docs, victims, and breach. Supported format values are csv, json, jsonl, txt, and html.

Polling

Bulk jobs may include next_poll_after_ms. Prefer that value when present, and fall back to a conservative interval when it is missing.

Downloads

The download endpoint returns a file or text stream, not JSON. Save the response body directly.

Exact Request Details

Use the OpenAPI reference for the complete schema, enum list, response fields, and playground requests for each bulk-search endpoint.