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.
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)
