# Domain Intelligence Scraper (`lergassy/domain-intelligence-scraper`) Actor

Analyze any domain in one row: WHOIS (registrar, dates, nameservers), DNS records, SSL certificate, technology stack, subdomains from Certificate Transparency, and hosting with ASN. HTTP and DNS only, no login or API key. For lead enrichment, domain due diligence, SEO and AI agents.

- **URL**: https://apify.com/lergassy/domain-intelligence-scraper.md
- **Developed by:** [Matvey](https://apify.com/lergassy) (community)
- **Categories:** Developer tools, Lead generation, SEO tools
- **Stats:** 2 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $2.80 / 1,000 domain analyzeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

Analyze any domain and get a complete public profile in a single row: **WHOIS, DNS records, SSL certificate, technology stack, subdomains and hosting**. Built for lead enrichment, domain due diligence, SEO research and AI agents. HTTP + DNS only — **no login, no API key, no browser**.

### Tested head-to-head — 25 Sep 2026

![Domain Intelligence Scraper tested against the six most-used domain, WHOIS and tech-stack Actors on Apify Store](https://raw.githubusercontent.com/lergassy/apify-actor-assets/main/benchmarks/domainintel-tested-2026-09-25.png)

Same 20 company domains for every Actor, run from an ordinary account on 25 Sep 2026.

| | This Actor | Other popular Actors |
|---|---|---|
| Domains returned (20 asked) | **20** | 5–20 |
| Technologies found per site, average | **8.8**, plus WHOIS, DNS, SSL, hosting and subdomains in the same row | 3–16, and the tech-stack Actors return tech only |
| Email security (SPF, DMARC policy, DKIM) and email provider | **Yes** | Only one of six |
| Price per 1,000 domains | **$4.00** | $3.05–$100 |

### What data can it extract

| Field | What you get |
|---|---|
| **WHOIS** | Registrar, creation / update / expiry dates, domain age, days until expiry (RDAP with classic WHOIS fallback for ccTLDs like .so), registrant org & country, domain status, nameservers, DNSSEC |
| **DNS** | A, AAAA, MX, NS, TXT, CAA records |
| **SSL** | Certificate issuer, subject, valid-from / valid-to, days until expiry, SAN list |
| **Technologies** | 1,000+ fingerprints plus modern SaaS tags: CMS, frameworks, CDN, hosting, analytics, ad pixels, marketing automation, live chat, payments, A/B testing, consent tools — grouped by category |
| **Email security** | Email provider (Google Workspace, Microsoft 365, …), SPF record, DMARC policy, DKIM selectors, and SaaS services verified in DNS (e.g. Atlassian, Stripe, HubSpot) |
| **Quick columns** | Registrar, domain age in days, days until domain and SSL expiry, tech count — ready to sort in the table view |
| **Subdomains** | Discovered from public Certificate Transparency logs |
| **Hosting** | IP, country, city, hosting org / ISP, ASN |

### How much does it cost

Pay-per-result: **$0.004 per domain analyzed**. Invalid or unregistered domains are **not charged**. No per-run charge. With the Apify Free plan ($5 credit) you can analyze ~1,250 domains.

### How to use

1. Click **Try for free**.
2. In **Domains**, paste one or more domains (e.g. `apify.com`) — one per line.
3. (Optional) Toggle subdomains, SSL or technology detection.
4. Click **Start** and download results as JSON, CSV or Excel, or via API.

### Input

![Domain Intelligence Scraper input on Apify: enter domains and toggle subdomains, SSL and technology detection](https://raw.githubusercontent.com/lergassy/apify-actor-assets/main/domain-intelligence-scraper/domain-intelligence-scraper-input-form.png)

```json
{
  "domains": ["apify.com", "stripe.com"],
  "includeSubdomains": true,
  "includeSsl": true,
  "includeTech": true
}
```

### Output

![Domain intelligence dataset: domain, technologies, subdomains, HTTP status and analysis date per domain](https://raw.githubusercontent.com/lergassy/apify-actor-assets/main/domain-intelligence-scraper/domain-intelligence-scraper-output-table.png)

```json
{
  "domain": "apify.com",
  "whois": {
    "registrar": "Amazon Registrar, Inc.",
    "createdDate": "2009-06-02T17:14:10Z",
    "expiryDate": "2035-06-02T17:14:10Z",
    "nameservers": ["ns-1225.awsdns-25.org", "ns-1928.awsdns-49.co.uk", "ns-449.awsdns-56.com", "ns-839.awsdns-40.net"],
    "dnssec": "signed"
  },
  "dns": {
    "a": ["3.170.42.68", "3.170.42.109"],
    "mx": ["aspmx.l.google.com", "alt1.aspmx.l.google.com"],
    "txt": ["v=spf1 a mx include:_spf.google.com include:mailgun.org include:amazonses.com …"]
  },
  "ssl": { "issuer": "Amazon", "subject": "*.apify.com", "daysUntilExpiry": 114 },
  "technologies": ["Amazon CloudFront", "Algolia", "Amazon Web Services", "Linkedin Insight Tag", "Leadfeeder", "HSTS", "Amazon S3", "HTTP/3", "Next.js", "Google Tag Manager", "HubSpot", "Intercom", "FirstPromoter", "Bootstrap"],
  "techCount": 14,
  "techCategories": { "Marketing automation": ["HubSpot"], "Live chat": ["Intercom"], "Search engines": ["Algolia"], "…": [] },
  "emailSecurity": {
    "emailProvider": "Google Workspace",
    "hasSpf": true,
    "hasDmarc": true,
    "dmarcPolicy": "reject",
    "hasDkim": true,
    "dkimSelectors": ["google"],
    "verifiedServices": ["openai-domain", "google-site"]
  },
  "registrar": "Amazon Registrar, Inc.",
  "domainAgeDays": 6323,
  "domainDaysUntilExpiry": 3172,
  "sslDaysUntilExpiry": 113,
  "emailProvider": "Google Workspace",
  "subdomains": ["affiliate.apify.com", "blog.apify.com", "discord.apify.com", "…"],
  "subdomainCount": 19,
  "hosting": { "ip": "3.170.42.68", "country": "United States", "org": "Amazon.com, Inc.", "asn": "AS16509" }
}
```

### Use cases

#### Sales & lead enrichment

Enrich a list of company domains with their tech stack, hosting and email infrastructure to score and segment leads.

#### Domain due diligence

Check registrar, age, expiry and SSL health before buying a domain or onboarding a partner.

#### SEO & competitor research

See what platform, CDN and analytics a competitor runs, and map their subdomains.

#### AI agents (MCP)

This Actor is available as an **MCP tool**, so AI assistants can pull a live domain profile on demand. See "Integrations".

### Integrations

Use results via the **Apify API**, **Python / JavaScript clients**, **n8n**, **Make**, **Zapier** or **Google Sheets**. For AI agents, connect through the **Apify MCP server** (`mcp.apify.com`) and call this Actor as a tool.

### Troubleshooting

- **Empty result for a domain** — it may be unregistered or unreachable. These rows are labelled `notice` and not charged.
- **No subdomains** — the domain may have few certificates in public CT logs. Try again later.

### Use via API

Run this Actor from your own code or pipeline. Get your token in Apify Console → Settings → API & Integrations. Every input field below has the same name as in the JSON tab of the input form.

**Python**

```python
from apify_client import ApifyClient

client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("lergassy/domain-intelligence-scraper").call(run_input={
    "domains": [
        "apify.com"
    ]
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
```

**JavaScript**

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('lergassy/domain-intelligence-scraper').call({
    "domains": [
        "apify.com"
    ]
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
```

**cURL** (runs the Actor and returns the results in one call)

```bash
curl -X POST "https://api.apify.com/v2/acts/lergassy~domain-intelligence-scraper/run-sync-get-dataset-items?token=<YOUR_API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{"domains": ["apify.com"]}'
```

### FAQ

**Is it legal to analyze domains this way?**
Yes. The Actor reads only publicly available records — WHOIS/RDAP, public DNS, public SSL certificates, public Certificate Transparency logs and public HTTP responses. It performs no port scanning, no vulnerability testing and collects no personal data.

**Do I need an API key or account on any service?**
No. Everything works out of the box.

**Can I analyze many domains at once?**
Yes — pass a list. Bulk runs are supported.

### Your feedback

Found a bug or need another field? Open an Issue on the Actor page — we ship improvements fast.

### You might also like

| Actor | What it does |
|---|---|
| Website Tech Stack Detector | Detect the full technology stack of any site |
| Website Contacts Scraper | Extract emails & phones from any website |
| Email Finder & Verifier | Find and verify business emails by domain |

# Actor input Schema

## `domains` (type: `array`):

One or more domains to analyze. Enter a bare domain like example.com (protocol, www and paths are stripped automatically).

## `includeSubdomains` (type: `boolean`):

Find subdomains from public Certificate Transparency logs (crt.sh). Adds a few seconds per domain.

## `includeSsl` (type: `boolean`):

Read the public SSL/TLS certificate (issuer, validity, expiry, SAN).

## `includeTech` (type: `boolean`):

Detect server, CDN, CMS and analytics from public HTTP response and homepage.

## Actor input object example

```json
{
  "domains": [
    "apify.com"
  ],
  "includeSubdomains": true,
  "includeSsl": true,
  "includeTech": true
}
```

# Actor output Schema

## `domains` (type: `string`):

One row per domain: WHOIS, DNS records, SSL certificate, technologies, subdomains and hosting.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "domains": [
        "apify.com"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("lergassy/domain-intelligence-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "domains": ["apify.com"] }

# Run the Actor and wait for it to finish
run = client.actor("lergassy/domain-intelligence-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "domains": [
    "apify.com"
  ]
}' |
apify call lergassy/domain-intelligence-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,lergassy/domain-intelligence-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/XRhjS78DdbF95ZVlz/builds/SaIY4fUrm1RXGXeNX/openapi.json
