Sistrix Domain Skill
Fetch and analyze domain-level SEO data from the Sistrix API.
IMPORTANT: Sistrix API credits are limited. Don't fetch more than 100 lines without explicit confirmation by the user!
Quick Start
Single endpoint:
python skills/sistrix-domain/scripts/fetch.py \
--domain example.com \
--endpoint overview \
--country de
Batch fetch (multiple endpoints):
python skills/sistrix-domain/scripts/fetch_all.py \
--domain example.com \
--group core \
--country de
Analyze results:
python skills/sistrix-domain/scripts/analyze.py \
--input output/sistrix_batch_core_example_com_de.json \
--csv
Configuration
Requires SISTRIX_API_KEY in a .env file at the repo root:
SISTRIX_API_KEY=your_api_key_here
Available Endpoints
| Endpoint | Description | Credits |
|---|---|---|
overview |
Domain overview with key metrics | 1 |
visibilityindex |
Visibility index history | 1 |
visibilityindex_overview |
VI across all countries | 1 |
ranking_distribution |
Keyword positions 1-100 | 1 |
kwcount_seo |
Organic keyword count trend | 1 |
kwcount_seo_top10 |
Top 10 keyword count trend | 1 |
kwcount_sem |
Paid keyword count trend | 1 |
competitors_seo |
SEO competitors by overlap | 10 |
competitors_sem |
PPC competitors | 10 |
urls |
Top URLs by visibility | 10 |
traffic_estimation |
Traffic estimates per path | 10 |
opportunities |
Quick-win keyword opportunities | 10 |
ideas |
Keyword ideas | 10 |
Fetching Single Endpoints
Parameters
| Parameter | Required | Description |
|---|---|---|
--domain |
Yes | Target domain (e.g., example.com) |
--endpoint |
Yes | API endpoint to call |
--country |
No | Country code (default: de) |
--history |
No | Fetch historical data |
--daily |
No | Fetch daily data (requires Plus+) |
--date |
No | Specific date (YYYY-MM-DD) |
--limit |
No | Max results (default: 100) |
--mobile |
No | Fetch mobile data |
--output |
No | Output file path (default: output/sistrix_.json) |
--no-cache |
No | Skip cache, fetch fresh |
Examples
Visibility index with history:
python skills/sistrix-domain/scripts/fetch.py \
--domain example.com \
--endpoint visibilityindex \
--country de \
--history
SEO competitors:
python skills/sistrix-domain/scripts/fetch.py \
--domain example.com \
--endpoint competitors_seo \
--country de \
--limit 50
Keyword opportunities:
python skills/sistrix-domain/scripts/fetch.py \
--domain example.com \
--endpoint opportunities \
--country de \
--limit 100
Batch Fetching
Fetch multiple endpoints efficiently with fetch_all.py.
Endpoint Groups
| Group | Endpoints |
|---|---|
core |
overview, visibilityindex_overview, ranking_distribution |
keywords |
kwcount_seo, kwcount_seo_top10, kwcount_sem |
competitors |
competitors_seo, competitors_sem |
content |
urls, traffic_estimation |
opportunities |
opportunities, ideas |
all |
All endpoints above |
Examples
Core metrics:
python skills/sistrix-domain/scripts/fetch_all.py \
--domain example.com \
--group core \
--country de
Full domain audit:
python skills/sistrix-domain/scripts/fetch_all.py \
--domain example.com \
--group all \
--country de \
--limit 100
Specific endpoints:
python skills/sistrix-domain/scripts/fetch_all.py \
--domain example.com \
--endpoints "overview,competitors_seo,opportunities" \
--country de
Analyzing Data
The analyze.py script processes Sistrix data and generates insights.
Analysis Types
batch- Analyze batch-fetched data (auto-detected)visibility- Extract visibility trend datacompetitors- Process competitor listurls- Process top URLsopportunities- Process keyword opportunitiesdistribution- Process ranking distributionauto- Auto-detect based on data structure
Examples
Analyze batch data:
python skills/sistrix-domain/scripts/analyze.py \
--input output/sistrix_batch_core_example_com_de.json \
--csv
Analyze visibility trend:
python skills/sistrix-domain/scripts/analyze.py \
--input output/sistrix_visibilityindex_example_com_de.json \
--type visibility \
--csv
Output Structure
By default, all files are written under an output/ directory in the current
working directory:
output/
├── sistrix_<endpoint>_<domain>_<country>.json # Raw API responses
├── sistrix_batch_<group>_<domain>_<country>.json # Batch responses
├── sistrix_analysis_<domain>.json # Analysis results
├── sistrix_analysis_<domain>_competitors.csv # CSV exports
└── cache/sistrix/ # Cached responses (24h)
Country Codes
Sistrix supports: de, at, ch, us, uk, es, fr, it, nl, pl, se, br, be, ie, pt, dk, no, fi, hu, cz, sk, ro, bg, hr, gr, tr, ru, au, jp
Rate Limits and Credits
- Each API call consumes credits (1-10 per endpoint)
- Rate limiting handled automatically with retry logic
- Cache enabled by default (24h) to avoid redundant calls
- Use
--no-cachefor fresh data when needed
Troubleshooting
"SISTRIX_API_KEY not set":
- Add
SISTRIX_API_KEY=your_keyto your.envfile
"Rate limit exceeded":
- Wait a few minutes and retry
- Use
--delay 1.0in batch mode for slower requests
"Invalid API key":
- Verify your API key is correct
- Check your Sistrix subscription is active
Empty results:
- Domain may not have data in Sistrix for that country
- Try a different country code or more popular domain