๐Ÿ” Subdomain Finder avatar

๐Ÿ” Subdomain Finder

Pricing

Pay per event

Go to Apify Store
๐Ÿ” Subdomain Finder

๐Ÿ” Subdomain Finder

Extract hidden subdomains for any website using Certificate Transparency logs. Find attack surfaces for security audits and bug bounties.

Pricing

Pay per event

Rating

0.0

(0)

Developer

ๅคช้ƒŽ ๅฑฑ็”ฐ

ๅคช้ƒŽ ๅฑฑ็”ฐ

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

12 hours ago

Last modified

Share

Discover subdomains for any domain using Certificate Transparency logs (crt.sh). Essential for security audits, penetration testing, asset inventory.

Store Quickstart

Start with the Quickstart template (single domain). For large asset inventories, use Enterprise Audit with up to 50 domains.

Key Features

  • ๐Ÿ” Certificate Transparency logs โ€” Uses crt.sh โ€” the authoritative CT log database
  • ๐Ÿ“Š Full subdomain history โ€” Active AND expired certificates both discoverable
  • ๐Ÿท๏ธ Issuer tracking โ€” See which CA issued each certificate
  • ๐Ÿ“… Validity dates โ€” validFrom / validTo per certificate
  • ๐ŸŽฏ Deduplication โ€” Unique subdomains only, no duplicates
  • ๐Ÿ”‘ No API key needed โ€” Free public CT log database

Use Cases

WhoWhy
Penetration testersDiscover forgotten subdomains as attack surface
Asset inventory teamsFull catalog of company-wide subdomains
Bug bounty huntersFind in-scope targets via CT logs
M&A due diligenceAudit acquired company's public infrastructure
DNS auditorsCross-reference CT logs with DNS records to find orphaned subdomains

Input

FieldTypeDefaultDescription
domainsstring[](required)Domains to scan (max 50)
includeExpiredbooleanfalseInclude expired certificates
dedupbooleantrueDeduplicate subdomain names

Input Example

{
"domains": ["example.com", "target.org"],
"includeExpired": false,
"dedup": true
}

Output

FieldTypeDescription
subdomainstringDiscovered subdomain
domainstringRoot domain queried
sourcestringWhere it was found (crtsh, hackertarget, etc.)
ipstringResolved IP address (if resolveIPs enabled)
firstSeenstringISO date when first observed (if available)

Output Example

{
"domain": "example.com",
"subdomains": [
{"name": "api.example.com", "issuer": "Let's Encrypt", "validFrom": "2026-01-01", "validTo": "2026-04-01"},
{"name": "mail.example.com", "issuer": "DigiCert", "validFrom": "2025-06-01", "validTo": "2026-06-01"}
],
"totalFound": 42
}

API Usage

Run this actor programmatically using the Apify API. Replace YOUR_API_TOKEN with your token from Apify Console โ†’ Settings โ†’ Integrations.

cURL

curl -X POST "https://api.apify.com/v2/acts/taroyamada~subdomain-finder/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "domains": ["example.com", "target.org"], "includeExpired": false, "dedup": true }'

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("taroyamada/subdomain-finder").call(run_input={
"domains": ["example.com", "target.org"],
"includeExpired": false,
"dedup": true
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript / Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('taroyamada/subdomain-finder').call({
"domains": ["example.com", "target.org"],
"includeExpired": false,
"dedup": true
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Tips & Limitations

  • Use crtsh source for the most comprehensive results โ€” it queries Certificate Transparency logs.
  • Enable resolveIPs: true to identify shared infrastructure across subdomains.
  • Run monthly to catch new subdomains your team may have spun up without security review.
  • Combine with DNS Propagation Checker to verify which subdomains are still live.

FAQ

Will I find ALL subdomains?

Only those with valid HTTPS certificates. HTTP-only subdomains and those using wildcard certs are missed.

What about wildcard certificates?

Wildcard certs (*.example.com) appear as a single entry. Individual subdomains under them may not be listed.

Is crt.sh reliable?

Yes โ€” it aggregates all public CT logs required by browser vendors. Very comprehensive.

Can I scan a competitor's domain?

Publicly โ€” yes, CT logs are public by design. Always comply with your jurisdiction's laws.

Is this passive or active enumeration?

Passive only โ€” it queries public OSINT sources (CT logs, DNS aggregators). No port scanning or brute-forcing.

Will it find subdomains behind WAFs?

Yes, as long as the subdomain has been issued an SSL cert (which CT logs index).

DevOps & Tech Intel cluster โ€” explore related Apify tools:

Cost

Pay Per Event:

  • actor-start: $0.01 (flat fee per run)
  • dataset-item: $0.003 per output item

Example: 1,000 items = $0.01 + (1,000 ร— $0.003) = $3.01

No subscription required โ€” you only pay for what you use.