Request access first
OSINT is off by default on every account: submits return 403 PRODUCT_NOT_AVAILABLE until it is enabled, so request access before you build against it.
Runs an autonomous OSINT investigation across public sources and reconciles everything it finds into a single person report: identity, aliases, usernames, emails, phones, social accounts (including when an account was created and last seen active, where that is known), employment and education history, locations, websites, public content, public records, corporate roles, adverse findings, breach exposure, images, and wallets. Sections with no findings are omitted. Requires at least one direct identifier (email, phone, social_media_url, username, or domain), or a name together with a company or city. mode selects how hard the agent works the search (shallow, medium by default, or deep) and therefore what it costs; the retired depth parameter is rejected with 400 rather than silently downgraded. A search keeps running server-side for up to 30 minutes, so poll about every 10 seconds or supply a callback_url. This endpoint is disabled by default for every account - see Access below before you integrate it.
OSINT Deep Search is off by default on every account, so there is nothing to test until it is switched on for yours: submits return 403 PRODUCT_NOT_AVAILABLE and the playground below stays disabled. Request access and we will enable it for your workspace, then the same API key you already use starts working here.
Manual credentials take precedence over your account key.
OSINT Deep Search runs an autonomous investigation across public sources and reconciles the findings into a single person report, for investigation, due-diligence, and trust-and-safety work. It is disabled by default on every account and enabled on request.
OSINT is off by default on every account: submits return 403 PRODUCT_NOT_AVAILABLE until it is enabled, so request access before you build against it.
The mode parameter (shallow, medium, deep) sets how hard the agent works the search and what the request costs; medium is the default when it is omitted.
A search runs for up to 30 minutes server-side, so poll the submit path with the request_id about every 10 seconds, or supply a callback_url for webhook delivery.
+.400.company or city when used without a direct identifier.name for name-based search.name. Truncated to 100 chars.shallow, medium (default), or deep. Case-insensitive; any other value returns 400. See Credit usage for the per-tier price.This endpoint is asynchronous. A successful submit returns a request_id while the job runs in the background. Poll the same path with a GET request - same authentication headers - passing the request_id and any
endpoint-specific page values shown below as query parameters:
Each poll returns the job's current status; once it is completed the payload carries the result shown under Responses. Polling an
unknown or expired request_id returns 404 request_not_found.
| Status | Meaning |
|---|---|
| queued · processing · pending | The job is still running - keep polling. |
| completed | The job finished; the payload carries the result and completed: true. |
| failed | Terminal - the job could not complete; the error field explains why. |
Poll every few seconds at first, backing off for long-running jobs. Polling is free - status checks never burn credits.
callback_url parameter and the completed payload is POSTed to your endpoint
when the job finishes - no polling required. Delivery is retried up to 5 times with exponential backoff (1s,
5s, 15s, 1m, 5m) and a 30-second timeout per attempt; respond with a 2xx status to acknowledge receipt.Credits are charged based on the matched configuration. The listed cost is the per-result unit price.
| Feature | Credits | Notes |
|---|---|---|
| OSINT Deep Search (medium) | 100 | Default mode - charged once, when a report with data is delivered |
| Shallow mode | 50 | Charged instead of the default when mode is shallow |
| Deep mode | 150 | Charged instead of the default when mode is deep |
A newly queued submit returns 202 Accepted. It contains the polling identifier, not the result:
{
"success": true,
"data": {
"request_id": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4_1717000000_4271",
"status": "processing",
"message": "OSINT deep search request submitted. Use GET with request_id to check status.",
"created_on": "2026-01-15T10:45:02"
},
"timestamp": "2026-01-01T00:00:00"
}A successful terminal poll returns 200 with the completed payload:
{
"success": true,
"data": {
"request_id": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4_1717000000_4271",
"status": "completed",
"completed": true,
"created_on": "2026-01-15T10:45:02",
"completed_on": "2026-01-15T10:52:31",
"result": {
"identity": {
"name": "Jane Doe",
"kind": "person",
"labels": [
"product leadership"
],
"confidence": 0.92,
"identifiers": [
{
"value": "jane.doe@acme.com",
"confidence": 0.95,
"best": true
}
]
},
"aliases": [
{
"value": "Jane A. Doe",
"kind": "legal",
"confidence": 0.71
}
],
"usernames": [
{
"value": "janedoe",
"platform": "github",
"url": "https://github.com/janedoe",
"confidence": 0.88
}
],
"emails": [
{
"value": "jane.doe@acme.com",
"kind": "work",
"verified": true,
"confidence": 0.95
}
],
"phones": [
{
"value": "+15551234567",
"kind": "mobile",
"verified": false,
"confidence": 0.62
}
],
"social_profiles": [
{
"platform": "linkedin",
"url": "https://linkedin.com/in/janedoe",
"username": "janedoe",
"display_name": "Jane Doe",
"follower_count": 4200,
"confidence": 0.93,
"first_seen": "2026-01-15T10:47:10Z",
"last_seen": "2026-01-15T10:47:10Z",
"usage": {
"created_at": "2011-03-08T00:00:00Z",
"last_seen_at": "2026-01-10T00:00:00Z"
},
"registered": true,
"verified": false,
"platform_variables": {
"headline": "VP of Product at Acme"
}
}
],
"employment_history": [
{
"company": "Acme",
"title": "VP of Product",
"start_date": "2023-04",
"current": true,
"confidence": 0.9
}
],
"education_history": [
{
"institution": "State University",
"degree": "BSc",
"field": "Computer Science",
"confidence": 0.7
}
],
"locations": [
{
"city": "Austin",
"region": "TX",
"country": "US",
"current": true,
"confidence": 0.81
}
],
"websites": [
{
"url": "https://janedoe.dev",
"title": "Jane Doe",
"domain": "janedoe.dev",
"confidence": 0.76
}
],
"public_content": [
{
"title": "Jane Doe on shipping AI products",
"url": "https://example.com/interview",
"description": "Interview covering product strategy at Acme.",
"published_at": "2025-11-02T00:00:00Z",
"confidence": 0.65
}
],
"breaches": [
{
"breach_name": "ExampleForum",
"date": "2019-05-01",
"exposed_fields": [
"email",
"password_hash"
],
"confidence": 0.8
}
],
"confidence": 0.88
}
},
"timestamp": "2026-01-01T00:00:00"
}