Skip to main content

Installation

Requirements: Go 1.21+ Source: oathnet/oathnet-go

Quick Start

Authentication

Search Service

Initialize Session

Search sessions group related lookups for the same query. Set SearchType when you already know what the query is; otherwise OathNet will detect it. Reuse the returned Session.ID as SearchID on follow-up searches.

AI Filters

Translate natural-language prompts into reusable V2 structured filters.
Use aiFilter.FilterID with V2 search, export, bulk-search, or scanner QueryConfig flows when you want OathNet to reuse the generated filter context. Set FilterID on V2AIFilterRequest to refine an existing context. Use V2 breach search when you need fielded filters, structured filters, or autocomplete-driven workflows. GET is best for simple filters that fit in query parameters. POST is best when the filter tree comes from AI filters, saved UI state, or a complex manual builder.

Investigation And Phonebook

Use investigation when one query should fan out across credentials, victims, files, properties, and related credentials. Use phonebook when you want domain host and email intelligence before deciding which pivots to run next.

Victims

Victim search returns stealer-log profiles. Use the LogID from a selected victim to inspect its file tree, fetch one raw file, or download the whole archive. Passing the SearchID from InitSession keeps these follow-up requests tied to the same search workflow.
File search runs an asynchronous scan across selected stealer-log files. Use metadata search first when you only need file names and IDs. Create a file-search job when you need to scan file contents with a literal, regex, or wildcard expression.

Exports

Exports are asynchronous jobs for large result sets. Create a job with the service and structured QueryConfig you want, poll the job status, then download the completed file. Use docs for credential-style stealer exports, victims for victim/profile exports, and breach for breach-record exports.
Bulk search is for many input terms or a saved structured filter that should run as one background job. Create the job, poll it, and download the result file when it completes.

Scanners

Scanners monitor newly indexed breach or stealer data and send notifications. Use regular search endpoints for historical investigation; scanners only watch new data after their baseline.
Use client.Scanners.Delete(scannerUID) when you want to permanently remove a scanner and its run history. Webhook receivers should verify signed_json or signed_encrypted deliveries against the exact raw request body before parsing JSON. See Scanners for the HMAC and encryption contract.

OSINT Lookups

Utility Service

Error Handling

Timeout Configuration

Configuration Options

CLI Tool

Next: CLI documentation

JavaScript SDK

Previous: JavaScript SDK