Command-line interface for the Ahrefs SEO API — query backlinks, organic keywords, referring domains, domain ratings, and site metrics from your terminal.
npm install -g @funnelenvy/ahrefs-cli# Save your API key
ahrefs auth login
# Get domain rating for a site
ahrefs domain-rating get --target example.com -o table
# List backlinks
ahrefs backlinks list --target example.com --limit 20 -o table
# Find organic keywords
ahrefs keywords organic --target example.com --country us -o csv
# Get referring domains
ahrefs domains referring --target example.com --limit 10
# Full site overview
ahrefs site-explorer overview --target example.com -o tableAhrefs CLI supports three authentication methods (in priority order):
ahrefs domain-rating get --target example.com --api-key YOUR_KEYexport AHREFS_API_KEY=your_api_key_here
ahrefs domain-rating get --target example.comahrefs auth login
# Enter your API key when prompted, saved to ~/.config/ahrefs-cli/config.jsonCheck auth status:
ahrefs auth statusahrefs auth login [api-key] # Save API key (interactive or inline)
ahrefs auth status # Show current auth status
ahrefs auth logout # Remove saved API keyahrefs backlinks list --target <domain> [options]
Options:
--target <target> Target domain or URL (required)
--limit <n> Number of results (default: 50)
--offset <n> Pagination offset (default: 0)
--mode <mode> exact, domain, subdomains, prefix (default: subdomains)
--protocol <protocol> http, https, both (default: both)
--date <date> Historical date (YYYY-MM-DD)
-o, --output <format> json, table, csv (default: json)
-q, --quiet Suppress status messages
-v, --verbose Debug loggingahrefs keywords organic --target <domain> [options]
Options:
--target <target> Target domain or URL (required)
--country <code> Country code (default: us)
--limit <n> Number of results (default: 50)
--offset <n> Pagination offset (default: 0)
--mode <mode> exact, domain, subdomains, prefix (default: subdomains)
-o, --output <format> json, table, csv (default: json)ahrefs domains referring --target <domain> [options]
Options:
--target <target> Target domain or URL (required)
--limit <n> Number of results (default: 50)
--offset <n> Pagination offset (default: 0)
--mode <mode> exact, domain, subdomains, prefix (default: subdomains)
-o, --output <format> json, table, csv (default: json)ahrefs domain-rating get --target <domain> [options]
Options:
--target <target> Target domain (required)
--mode <mode> exact, domain, subdomains, prefix (default: subdomains)
--date <date> Historical date (YYYY-MM-DD)
-o, --output <format> json, table, csv (default: json)ahrefs site-explorer overview --target <domain> [options]
Options:
--target <target> Target domain or URL (required)
--country <code> Country code (default: us)
--mode <mode> exact, domain, subdomains, prefix (default: subdomains)
--date <date> Historical date (YYYY-MM-DD)
-o, --output <format> json, table, csv (default: json)All data commands support --output json|table|csv:
- json (default) — machine-readable, pipe-friendly
- table — human-readable aligned columns
- csv — for spreadsheets and data pipelines
Config file location: ~/.config/ahrefs-cli/config.json
{
"auth": {
"api_key": "your_api_key_here"
},
"defaults": {
"output": "table"
}
}git clone https://github.com/FunnelEnvy/ahrefs-cli.git
cd ahrefs-cli
pnpm install
pnpm run build
pnpm run test
pnpm run typecheckThis tool is part of Marketing CLIs — open source CLIs for marketing tools that have APIs but lack command-line interfaces.
MIT