Dark Web Search - Onion Index Results API avatar

Dark Web Search - Onion Index Results API

Pricing

from $25.00 / 1,000 search results

Go to Apify Store
Dark Web Search - Onion Index Results API

Dark Web Search - Onion Index Results API

Search a public Tor hidden-service index by keyword and return bounded .onion result metadata. Does not fetch result pages, log in, or bypass controls.

Pricing

from $25.00 / 1,000 search results

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

Search a public Tor hidden-service index with 1–10 keywords and receive one structured record for each returned .onion result. Records contain the query, rank, title, onion URL, domain, source snippet, reported match count, and collection time. It is for lawful threat-intelligence, brand-protection, academic, and OSINT triage when the first need is a bounded list of index results—not page content.

Best fit for this Actor

  • Start with a short search query such as an authorized research topic or brand.
  • Set maxResultsPerQuery before starting to bound both result volume and cost.
  • Use Dark Web Scraper - Tor .onion Page Extractor only after you have a lawful, specific URL you are permitted to inspect. This actor does not fetch search-result pages.

This focused workflow covers public-index result metadata. The supplied-URL extractor is the constructive next step for a separately authorized page review.

Research workflow

An analyst runs one bounded query for an authorized topic, keeps sourceUrl, query, and fetchedAt alongside their notes, and manually decides whether any result is in scope for a later authorized review. The actor never opens returned .onion links, keeping search and page collection separate and auditable.

Quick start

{
"searchQueries": ["Tor privacy research"],
"maxResultsPerQuery": 10,
"responseFormat": "concise"
}
FieldTypeWhat it controls
searchQueriesstring[]One to ten unique keywords, each 2–100 characters. URLs are not accepted.
maxResultsPerQueryintegerSaved-result cap per query, from 1 to 50; defaults to 10.
responseFormatenumconcise returns core fields; detailed adds a provenance statement but still does not fetch a result page.

What data you receive

One dataset item is one valid .onion result returned by the public source for one query. The URL and snippet are source-index metadata; availability, safety, and page content are not verified.

{
"query": "Tor privacy research",
"rank": 1,
"title": "Illustrative result title",
"url": "http://exampleexample.onion/research/",
"onionDomain": "exampleexample.onion",
"snippet": "Snippet returned by the source index.",
"source": "ahmia",
"totalResultsReported": 42,
"fetchedAt": "2026-08-30T14:26:00.000Z"
}

The run saves OUTPUT (compact outcome) and RUN_SUMMARY (counts, warnings, safe errors, and actual charges). COMPLETE, PARTIAL, VALID_EMPTY, and INVALID_INPUT are successful terminal outcomes. A source outage with no useful output becomes UPSTREAM_FAILED, not a misleading empty success.

Pricing

This actor uses Pay per event plus Apify platform usage.

EventPriceWhen charged
Actor start$0.00005Once after valid input is accepted.
Search result$0.025Once for each validated onion result saved to the dataset.

A run capped at 10 results costs at most about $0.25005 in actor events, plus Apify platform usage. Open the live Pricing tab for the current event details; result events apply only to validated records that reach the dataset.

API and MCP

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('khadinakbar/dark-web-search').call({
searchQueries: ['Tor privacy research'],
maxResultsPerQuery: 10,
responseFormat: 'concise',
});
console.log((await client.dataset(run.defaultDatasetId).listItems()).items);

Search the public hidden-service index for my authorized research topic. Return at most 10 result metadata records, preserve query, sourceUrl, and fetchedAt, and keep the workflow at result-metadata scope.

For AI agents, use the current client-specific setup at Apify MCP. Inspect OUTPUT before treating an empty dataset as no matches: VALID_EMPTY means the source responded with no valid results; UPSTREAM_FAILED means it could not be reached.

Best results

  • Use precise, non-sensitive research queries and keep the result cap low while validating relevance.
  • Preserve source fields in an evidence log; index results can change and may include stale URLs.
  • Treat each returned URL as a lead for human authorization and relevance review before the next workflow step.

Builder's note

I built the source flow after testing the live index: it rotates both the hidden form-field name and value before returning results. The actor retrieves that server-issued pair on every run, which keeps the integration aligned with the source's current form contract.

Responsible use

Use only for legitimate, authorized research and comply with applicable laws, regulations, source terms, and Apify policies. Search indexes can expose harmful or illegal material. This actor intentionally returns limited metadata only and does not access, download, authenticate to, or bypass controls on returned services.