You need a valid bearer token first. See Authentication.
1) Check service health
2) Validate your token
2.1) Optional: test Radar (free plan)
Radar access is free, but still requires an authenticated API key.3) Create a search
data.search.id for the next calls.
Optional: run selected modules only
Use real, currently listed module IDs fromGET /modules. The UUIDs in this example show the payload shape and are not guaranteed to exist.
modules is omitted, Osintly uses the default module set for the selected search type.
4) Stream progress (SSE)
search.progress messages such as:
5) Fetch search state
6) Fetch final structured results
7) Fetch leak source payloads
8) Optional: receive results by webhook
Providedelivery.webhook.url (and optionally delivery.webhook.secret) when creating the search:
searchIdstatus(finishedorerror)finishedAtsearchmetadata (id,value,type,options,created_at)summarycountslinksto retrieve state, results, BYOK details, and leaks
9) Recommended: clean up completed searches
After you have fetched and stored the data you need, delete completed searches you no longer need:100 IDs per call.
Cleanup guidance: Search Retention
Rate limits and usage
UseGET /usage to read current global and daily usage windows.
Terms and ethics
- Terms of Use: https://osint.ly/terms
- Ethics Policy: https://osint.ly/ethics
Next steps
- Explore the OpenAPI endpoint docs in the Endpoints group
- Read Domains for type values and request patterns