# WhoisGenius > WhoisGenius is a domain intelligence API. It attributes a domain to the entity that operates it, with a confidence score and a per-signal evidence chain, and it correlates sets of domains to surface shared infrastructure and common operators. Base URL: https://api.whoisgeni.us Auth: send your key in the `X-API-Key` header on every request. Create a key at https://whoisgeni.us/get-started or with `POST /auth/keys`. Flow: analysis is asynchronous. Submit a job, receive a `job_id`, then poll for the result. ## Core endpoints - [Analyze a domain](https://whoisgeni.us/api-reference/analyze): `POST /analyze` with `{"domain": "example.com"}` returns `202` and a `job_id`. Poll `GET /jobs/{job_id}` until `status` is `completed`. - [Correlate domains](https://whoisgeni.us/api-reference/correlate): `POST /correlate` with `{"domains": [...]}` (2 to 100 domains) returns a `job_id`. Poll `GET /correlate/{correlation_id}`. - [Job results](https://whoisgeni.us/api-reference/jobs): `GET /jobs/{job_id}` returns the full attribution result once the job completes. - [Domain history and portfolio](https://whoisgeni.us/api-reference/domains): `GET /domains/{domain}/history` and `GET /domains/{domain}/portfolio`. - [Entity lookup](https://whoisgeni.us/api-reference/entities): `GET /entities/search` and `GET /entities/{name}/portfolio`. - [Webhooks](https://whoisgeni.us/api-reference/webhooks): pass a `callback_url` to receive the result instead of polling. Register a signing secret first with `POST /webhooks/secret`. - [Authentication](https://whoisgeni.us/api-reference/auth): `POST /auth/keys` and key management. ## Output Responses are JSON by default. Request TOON output, a compact token-efficient format for language models, with the `Accept: application/toon` header. ## MCP server (for AI agents) WhoisGenius runs a hosted Model Context Protocol server at `https://api.whoisgeni.us/mcp` (Streamable HTTP, JSON-RPC 2.0). It exposes two tools: `analyze_domain` and `correlate_domains`. Auth is optional (no key uses the free tier; send `X-API-Key` for your tier). Add it to Claude Code with `claude mcp add --transport http whoisgenius https://api.whoisgeni.us/mcp`. MCP tool calls run synchronously and return in a few seconds, unlike the asynchronous REST endpoints above. ## Blog (guides and worked examples) - [How to tell if two domains are run by the same operator](https://whoisgeni.us/blog/same-operator-correlation/) - [WHOIS said REDACTED. We found the operator anyway.](https://whoisgeni.us/blog/whois-redacted-found-anyway/) - [Reading a WHOIS record: what actually matters for investigations](https://whoisgeni.us/blog/reading-whois-records/) - [Beyond WHOIS: what domain signals reveal about intent](https://whoisgeni.us/blog/beyond-whois-domain-signals/) - [One operator, many domains: unmasking a portfolio](https://whoisgeni.us/blog/one-operator-many-domains/) - [The domain says Facebook. The company is Meta.](https://whoisgeni.us/blog/domain-says-facebook-company-is-meta/) - [What a screenshot tells you about who runs a domain](https://whoisgeni.us/blog/what-a-screenshot-reveals/) - [From analytics to pipeline: qualifying the companies that visit your site](https://whoisgeni.us/blog/analytics-to-pipeline-lead-qualification/) - [RSS feed](https://whoisgeni.us/blog/rss.xml) ## More - [Full agent guide](https://whoisgeni.us/llms-full.txt) - [API reference](https://whoisgeni.us/api-reference) - [OpenAPI schema](https://api.whoisgeni.us/openapi.json) - [Postman collection](https://whoisgeni.us/whoisgenius-postman-collection.json)