Subdomain Discovery API
Pricing
from $1.00 / 1,000 subdomain discoveries
Subdomain Discovery API
Paginated subdomain enumeration for any registered domain β DNS records, registrar, WHOIS, vendor reputation, and category labels per subdomain, served from the Crawland threat-intelligence backend.
Pricing
from $1.00 / 1,000 subdomain discoveries
Rating
0.0
(0)
Developer
Crawland
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 months ago
Last modified
Categories
Share
Paginated subdomain enumeration for any registered domain β DNS records, registrar, WHOIS, vendor reputation, and category labels per subdomain.
API Overview
Subdomain Discovery API answers a single, high-value question: "What does this domain's attack surface actually look like?"
Send a registered domain β example.com β and get back the discovered subdomains along with the per-subdomain context you need to triage exposure: DNS records, registrar, WHOIS, popularity ranks, vendor reputation stats, tags, and category labels.
What you get on every request
subdomainsβ an array of per-subdomain objects, each with:subdomainβ the FQDN (e.g.staging-api.example.com).dns_recordsβ A / AAAA / CNAME / MX records with TTLs.registrar,whoisβ registrar string and the raw WHOIS block.popularity_ranksβ Alexa / Cisco Umbrella / Cloudflare Radar / Majestic ranks where available.reputation,security_vendor_analysis_statsβ vendor verdict tally so you can spot the subdomain that flipped malicious without re-enriching.tags,categories,tld,modification_date,dns_records_update_date.
cursorβ opaque pagination token. Pass it back as thecursorquery parameter to fetch the next page. Empty / missing cursor means "no more results".
Page size is fixed at 10 subdomains per request.
Pagination pattern
- First request:
GET /scan?query=example.comβ returns the first 10 subdomains plus acursor. - Subsequent requests:
GET /scan?query=example.com&cursor=<cursor>β returns the next 10 subdomains plus the next cursor. - Stop when the response carries no
cursor(or an empty one).
Cursors are tied to the query they were issued for β do not mix cursors across different domains.
What can you do with this API?
- π― Attack surface in one call β no juggling between DNS, WHOIS, and reputation APIs. One request, full per-subdomain context.
- π§ Reputation built in β every subdomain already comes with
security_vendor_analysis_stats, so you can flag a leaked staging subdomain on the first pass. - π Cursor pagination β bounded payloads, simple to integrate into any ASM crawl pipeline.
- π Battle-tested β used in production by ASM platforms, pentest teams, and bug-bounty hunters.
Response model
Every successful request returns:
{"is_success": true,"response_code": 200,"message": "Success","data": {"search_type": "domain","subdomains": [{"subdomain": "staging-api.example.com","tld": "com","registrar": "MarkMonitor Inc.","dns_records": [{ "type": "A", "value": "1.2.3.4", "ttl": 300 }],"security_vendor_analysis_stats": { "harmless": 0, "malicious": 0, "undetected": 91 }}],"cursor": "eyJsaW1pdCI6IDEwLCAib2Zmc2V0IjogMTB9"}}
Always inspect is_success rather than relying on the HTTP status β invalid inputs and lookup misses are also returned with HTTP 200 and is_success: false.
Use cases
- Attack surface management (ASM) β continuously enumerate an organisation's external footprint and flag staging / preproduction / forgotten subdomains.
- Penetration testing reconnaissance β fast pivot from a single domain to the full subdomain inventory.
- Subdomain takeover detection β surface dangling subdomains pointing at unclaimed cloud resources.
- Brand protection β catch lookalike subdomains and verify ownership.
- Bug bounty scoping β quickly understand what targets are in scope.
How is this different from IoC Lookup / IoC Enrichment?
Subdomain Discovery takes one domain and returns its subdomains. IoC Lookup takes one indicator and returns reputation + vendor verdicts. IoC Enrichment takes one indicator and returns OSINT context (adversary, malware family, MITRE ATT&CK). They are complementary β discovery finds the subdomains, then enrichment / lookup tells you which matter.
Need something custom or need support?
Looking for bulk / streaming / on-prem, a different response format, or help with setup? Send us a DM and we'll be happy to help you find the best setup for your use case.