Start scan
Scan keywords or a domain for breach data and create a stored DarkRecon result.
Start scan
Creates a stored scan and returns thescan_id you will use for follow-up retrieval.
Choose one input mode
keywords: send one or more search terms such as emails, phone numbers, usernames, IPs, passwords, car plates, social IDs, or composite strings.domain: send a single domain to enumerate breached emails and scan the discovered addresses automatically.
Keyword guidance
- Each keyword is queried independently against the breach dataset.
- Composite queries are supported when you want to correlate multiple terms inside a single search string.
- Domain scans can return
discovered_emailsimmediately in thePOST /scanresponse.
Response semantics
scan_idis the durable identifier for the stored scan.statuscan besuccess,no_results, orno_queries.total_breachesis the number of matched breach sources.- Full raw breach records are not returned by
POST /scan; retrieve them withGET /scan/{scan_id}.
Error behavior
422: request validation failed, including a missingX-API-Keyheader or malformed request structure.403: the API key could not be validated.502: the upstream breach-data provider returned an error.
Authorizations
API key for authentication. Create keys via the admin dashboard.
Body
Send exactly one of keywords or domain.
List of search terms — emails, phone numbers, usernames, IPs, passwords, car plates, social account IDs, or composite queries. Provide this OR domain, not both.
["user@example.com"]Domain name to enumerate emails from and scan. Provide this OR keywords, not both.
"example.com"
Response
Scan completed
Initial acknowledgement returned by POST /scan. Use scan_id with GET /scan/{scan_id} to retrieve full records.
Unique identifier for retrieving scan results via GET /scan/{scan_id}
Scan result status
success, no_results, no_queries Number of breach databases found
x >= 0Emails discovered from domain enumeration (only present when domain was provided)
Additional context (e.g. when no keywords were provided)
