
Domain History Contact OSINT - Previous Owner + WHOIS History
io.github.AnshumanAtreyPublished by GitHub account AnshumanAtreyv1.0.23Updated Oct 29, 2026
Domain History Lookup - WHOIS History + Past Owner Contacts
The publisher's own server: osint.foundation
Overview
Apify-hosted OSINT server that scans a domain's history to recover past owners, contacts and registration data, even for dead or expired sites.
- What you can do
- Run a domain history scan on one or more domains, choosing depth and which report sections to build
- Recover contacts with provenance: emails, phones, people and organisations, each with source URL and capture date
- Retrieve registration and ownership data: RDAP registrant, registrar, events, nameservers, plus optional WHOIS history
- Inspect DNS now and then, certificate history, historical IPs with geolocation, and archived server headers
- Collect tracking IDs, archived page versions and inbound references from urlscan.io, Arquivo.pt, Common Crawl and public code
- Read a per-source coverage report and summary row stating which sources answered, were empty, or were throttled
- When to use it
- Useful when you need to find who owned a domain in the past, or who ran a website that is now offline, parked or scrubbed. Suited to due diligence, fraud investigation, expired-domain purchases, journalism and legal discovery where each finding must carry a source URL and date.
- Requirements
- Remote MCP endpoint at mcp.apify.com with OAuth; an Apify API token sent as an Authorization Bearer header, and runs bill to that Apify account. Optional SecurityTrails or Whoxy API keys can be supplied as inputs for WHOIS and DNS history. Network access to public archives and lookup sources is handled by the hosted run.
Installation
In SourceWeft
- Open Domain History Contact OSINT - Previous Owner + WHOIS History in the dashboard and add it to a workspace.
- Connect the required credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.AnshumanAtrey%2Fdomain-history-contact-osint/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.
{
"mcpServers": {
"domain-history-contact-osint-previous-ow": {
"type": "http",
"url": "https://mcp.apify.com/?tools=anshumanatrey/domain-history-contact-osint"
}
}
}README
Domain History Contact OSINT - Previous Owner + WHOIS History
Domain history and previous owner lookup for dead, expired and parked domains. WHOIS history, Wayback Machine pages, and the owner's emails, phones, people and organisations, each with a source URL and capture date.
Available as an Apify Actor. $0.25 per domain scan + $0.02 per contact found. One input field, no API key needed.
What does it do?
You type a domain and press Start. You get who owned it and how to reach them, even when the website is gone, as a table where every row carries the URL and capture date it came from. It reads 14 public sources, works on domains that no longer resolve, and always finishes with a report that says which sources answered and which did not.
- Contacts with provenance. Emails, phones, people and organisations. One dataset row per contact per source, each with
sourceUrl,snapshotTimestamp,replayUrlandextractionMethod. One row is one claim you can cite. - People and organisations, with roles. A multilingual named-entity model reads the rendered archived pages. Each person carries a
rolewhen the page stated one ("Founder", "Geschäftsführer"), aworksForwhen a company sat next to the name, arelationflag (site= part of the site itself,mention= named in its content) and the visiblesnippetthe name was read from. - Registration. RDAP registrant and organisation where not redacted, registrar, the registrar abuse contact, creation and expiry events, nameservers. WHOIS history back to 2008 with a free SecurityTrails key, or from 2012 with a Whoxy key: pre-GDPR registrant names, emails and phones.
- DNS now and then. Current A, AAAA, MX, NS, TXT and SOA, historical nameservers and historical IPs from passive DNS, each IP geolocated to country, city, ISP and AS number. SaaS verification tokens in TXT are flagged because they tie a domain to named vendors.
- Certificate history. Every hostname that ever appeared in a certificate for the domain. Certificates outlive domains.
- Past versions of the website. Archived pages sampled across the domain's whole lifetime and weighted toward contact, about, team, imprint, careers, management and board pages.
- Server software. The dead origin's own response headers, recovered from the archive. From a domain offline for years:
Apache/1.3.36 (Unix) ... PHP/4.4.2 FrontPage/5.0.2.2635 mod_ssl/2.8.27 OpenSSL/0.9.7a. - Tracking IDs. Google Analytics, GTM, AdSense, Google Ads, Segment, Optimizely, Hotjar, Mixpanel and Meta pixel IDs from the archived bytes. Reverse-look these up to find every other domain the same owner ran.
- Inbound references. Who else mentioned this domain: urlscan.io submissions, Arquivo.pt full-text archive hits, Common Crawl, and public source code on grep.app. Config files and mail settings name real addresses.
- A per-source coverage report. Which sources answered, which held nothing, and which throttled you. Throttled is reported as unknown, not as empty.
How is it different from a contact scraper or a WHOIS history service?
Three measurements behind that table. On one dropped domain the archived contact page held 0 addresses, while certificate transparency returned 2,644 certificates and public code search returned 3 genuine addresses: the extra sources are where dead domains still answer. The largest contact scraper on the Store (58,952 users) returns a flat array of pages next to a flat array of emails with no mapping between them, which looks like provenance and is not. And since GDPR in 2018, the registrant on current WHOIS is redacted for most domains, so a named owner comes from archived pages, certificates and WHOIS history, not from today's record.
Two open-source tools deserve a mention. WayTrace and kronikier both mine web archives for historical contacts and both are MIT. If archives are all you need, use them. This actor exists for the case where the archive is thin and you still need an answer, which is the normal case on a fully dropped domain.
When should I use it?
- You need to find out who owned a domain in the past, or who ran a website that is now offline.
- A counterparty, supplier or "company" you are checking has a website that has vanished, been scrubbed or been parked, and you need the people behind it.
- You are investigating fraud, a scam or financial crime and every finding must carry a source URL and date you can put in a report.
- You are buying an expired domain and want to know what it used to be, who ran it, and which analytics IDs tie it to other sites.
- You are a journalist or in legal discovery and need the Wayback Machine mined for emails and phone numbers with the capture date on each hit.
- You want to contact the previous owner of a domain, for a purchase, a takedown, or a transfer.
What does it cost?
Pay-per-event. You pay for the scan and for what it finds; platform compute is included.
On paid Apify plans the contact and mention prices are 10% less on Scale ($0.018 and $0.0018) and 20% less on Business and above ($0.016 and $0.0016); the domain scan fee is the same on every plan.
The summary row is free.
Typical scan costs
Row counts measured on the platform at Standard depth (Quick, the default, finds most of the same contacts from fewer pages); prices at the default 2 GB:
- Small dead site (youthgrowyouth.in): 6 contacts + 36 mentions, $0.44
- Sparse result (yikyakapp.com): 3 contacts, no mentions, $0.31
- Large corporate archive (theranos.com, 231 rows): 47 contacts + 183 mentions, $1.56
- Nothing recoverable: $0.25, the scan plus the free summary row that says why
A Quick run takes about 3 minutes at 2 GB and Standard about 6; raising memory to 4 GB roughly halves the time and doubles the scan fee. Deep depends on how much the archive holds. Set a spending limit on the run for a hard cap; the summary row says so if it was reached. A run also always finishes inside its own timeout: when the timeout comes before the scan is done, the report is written with what was read and says which pages and sources were left, as unknown rather than absent. Raise the timeout under Run options to read the rest.
Which inputs does it take?
What does the output look like?
Each dataset record is one contact from one source. A person row from a real run, with the sightings array cut to one entry:
An email row. This address was hidden behind Cloudflare's email obfuscation on the page and decoded:
The last row for each domain is a summary, so a domain with nothing recoverable still tells you why:
The full report is the run's OUTPUT record (Console: the Output tab; API: the default key-value store, key OUTPUT). Shortened:
Common questions
Q: How do I find out who owned a domain in the past? Run this actor on the domain. The contacts table lists the people and organisations that appeared on the archived site with relation: site, the emails and phones with the page and date each came from, and the registration record. Add a free SecurityTrails key and the ownership section gains dated WHOIS history back to 2008.
Q: Does it work if the website is offline or the domain has expired? That is the point. A dead domain is the expected input. The run always completes with a populated table and report; if a source held nothing the report says so, and if the archive throttled the run it says the data is unknown rather than absent, so you re-run instead of concluding there was nothing there.
Q: Is WHOIS history included, and is it free? Current registration (RDAP) is always included and free. Historical WHOIS is a paid dataset everywhere; this actor accepts your own key so you pay the provider directly and nothing on top. SecurityTrails gives 2,500 queries a month on its free tier with no card. Whoxy charges $0.005 per lookup and nothing when a domain has no history.
Q: How accurate are the people and organisation names? The entity model was chosen by a bake-off across a WordPress blog, a hand-built site and a German Impressum, 13 ground-truth names: 12 of 13 recovered, one false positive, removed by a two-word rule. On theranos.com's 2013 to 2015 archive it returned the full board and executive team with no site-specific code. Every name carries its snippet, so you read the evidence yourself, and relation separates the site's own people from names in its articles.
Q: What does "UNKNOWN, not absent" mean? archive.org, grep.app and crt.sh all rate-limit or fail on occasion. When that happens the affected section is marked incomplete with the reason, and the summary row repeats it. An empty section with status complete means the source answered and there was genuinely nothing.
Q: Why did my run return only a summary row? Nothing was recoverable for that domain from the sources you selected. Read the summary row: it says whether the sources were checked and empty, or unreachable. If unreachable, re-run later. If empty, try Deep depth or add a WHOIS history key.
Q: Can I scan many domains at once? Yes, one per line in the domains field. Each domain gets its own block of rows and its own REPORT-<domain> record; OUTPUT holds the list.
Q: What about single-page apps and JavaScript-heavy sites? Archived HTML is rendered in a headless browser and inline scripts run, so JavaScript-injected contacts are recovered. Script bundles hosted on the dead origin cannot load, so a site that drew everything from an external bundle will yield less. Certificates, DNS, registration and public code still answer.
Q: Is this legal to use? Every source is public: web archives, certificate transparency logs, registration records, passive DNS and public code. Nothing is fetched from the live site beyond a DNS lookup. Use it for legitimate investigation, due diligence, research and recovery, and handle personal data under the law that applies to you.
About the maintainer (priority response within 1-2 hours)
Built and maintained by Anshuman Atrey (@AnshumanAtrey).
- Purple-team security researcher, 5x hackathon winner
- Co-founder of Walrus Securitas (AI cybersecurity SaaS) and The Drone Syndicate (autonomous defence drones)
- Author of the canonical OSINT actor portfolio on Apify Store: 15 shipped actors covering email, phone, username, IP and domain, network, secret, social, LinkedIn, domain history and Indian fintech OSINT
Custom feature requests shipped within 1-2 hours (priority)
If you have a use case this actor does not cover, the maintainer ships custom additions (new fields, new modes, new sources, new output formats) directly into this actor, typically within 1-2 hours for priority requests during active hours and within 24 hours overnight, for legitimate security research, OSINT investigation, compliance, fraud detection and authorised penetration testing. This is direct one-to-one service from the maintainer, not a contractor queue.
Fastest contact channels (ranked by response speed):
- LinkedIn DM -> linkedin.com/in/anshumanatrey, typically under 1 hour during active hours
- GitHub issue on this actor's repo
- Apify Console DM to
@anshumanatrey - Email via atrey.dev
The maintainer also takes paid custom OSINT and security-tooling engagements through atrey.dev: bespoke scanners, vendor-specific integrations, India-specific compliance pipelines (UPI, IFSC, GSTIN, PAN, Aadhaar), and end-to-end OSINT systems beyond what a single actor can express.
Sibling actors in the same OSINT portfolio
When your need extends beyond this actor's scope, the matching sibling is maintained by the same author on the same 1-2 hour priority custom-feature-request SLA via LinkedIn:
Documentation
- Apify Store: https://apify.com/anshumanatrey/domain-history-contact-osint
- GitHub repo: https://github.com/AnshumanAtrey/domain-history-contact-osint
- Changelog: CHANGELOG.md
- Issues / feature requests: open an issue on the GitHub repo or DM LinkedIn for the fastest response
- License: MIT
- Credits: snapshot sampling, the archive politeness stack and the email de-obfuscation branches are adapted from WayTrace (MIT, (c) 2024-2026 thomashousset). Licence notices are kept in the files that borrow from it.
Last updated
2026-09-11 (version 1.0)
Source: README.md at commit 31e5dcd
Tools
0Version history
5- v1.0.23LatestOct 29, 2026
- v1.0.22Oct 7, 2026
- v1.0.21Oct 6, 2026
- v1.0.20Sep 25, 2026
- v1.0.19Sep 24, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Osint integrations
osint.foundation
foundation.osintOfficial publisher
osint.foundation's hosted MCP server, published by osint.foundation; credential required; Streamable HTTP; 51 tools.

OSINT.SX
Published by GitHub account osintsx
Runs OSINT.SX people and account lookups from an assistant: one search across all sources, plus Google, Microsoft, Epic, X, Steam, Instagram and TikTok tools.

Domain Osint Mcp
Published by GitHub account robertoyanguas-ops
A remote MCP server that lets an assistant run domain OSINT checks: live DNS resolution, TLS certificate details and an HTTP security grade.

OSINT
Published by GitHub account robyroro
Local MCP server for OSINT-style domain and website investigations: recon, WHOIS/RDAP, DNS, certificates, archive and infrastructure comparison from public…

Robin: AI-Powered Dark Web OSINT
Published by GitHub account apurvsinghgautam
Robin runs dark web OSINT investigations over Tor, letting an assistant search onion search engines, scrape pages and save reports using the agent's own model.