Skip to content

Chaos

Go client for ProjectDiscovery Chaos DNS API

Description

Chaos is a Go client for communicating with the ProjectDiscovery Chaos DNS API. It provides access to a massive dataset of subdomains collected by ProjectDiscovery's internet-wide scanning infrastructure. Free for bug bounty programs with an API key.

Installation

BASH
# Using Go
go install -v github.com/projectdiscovery/chaos-client/cmd/chaos@latest

# Homebrew
brew install chaos-client

Basic Usage

BASH
# Set API key
export PDCP_API_KEY="YOUR_KEY"

# Get subdomains for a domain
chaos -d target.com

# Output to file
chaos -d target.com -o subs.txt

# Silent mode
chaos -d target.com -silent

Advanced Usage

BASH
# Count subdomains only
chaos -d target.com -count

# JSON output
chaos -d target.com -json

# Get subdomains for multiple domains
chaos -dL domains.txt -silent

# Filter by HTTP status
chaos -d target.com -silent | httpx -silent -status-code -mc 200

Common Workflows

BASH
# Quick recon — chaos has pre-collected subdomains, so it's instant
chaos -d target.com -silent | httpx -silent | nuclei -severity critical,high

# Combine with active enumeration
chaos -d target.com -silent > passive.txt
subfinder -d target.com -silent >> passive.txt
sort -u passive.txt | httpx -silent