# Sistrix Domain

> Fetch domain SEO data from Sistrix API including visibility index, ranking distribution, keyword counts, competitors, traffic estimation, and keyword opportunities. Use when needing Sistrix visibility metrics, competitor analysis, ranking distribution data, or keyword opportunities for a domain. Supports all Sistrix domain endpoints with batch fetching and analysis capabilities.

- Skill: `buzzmatic/sistrix-domain` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add buzzmatic/sistrix-domain`
- Raw SKILL.md: https://api.skillmd.com/api/skills/buzzmatic/sistrix-domain/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: Buzzmatic (https://skillmd.com/u/buzzmatic)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/buzzmatic/sistrix-domain

---


# 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:**

```bash
python skills/sistrix-domain/scripts/fetch.py \
  --domain example.com \
  --endpoint overview \
  --country de
```

**Batch fetch (multiple endpoints):**

```bash
python skills/sistrix-domain/scripts/fetch_all.py \
  --domain example.com \
  --group core \
  --country de
```

**Analyze results:**

```bash
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:

```env
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_<desc>.json) |
| `--no-cache` | No | Skip cache, fetch fresh |

### Examples

**Visibility index with history:**

```bash
python skills/sistrix-domain/scripts/fetch.py \
  --domain example.com \
  --endpoint visibilityindex \
  --country de \
  --history
```

**SEO competitors:**

```bash
python skills/sistrix-domain/scripts/fetch.py \
  --domain example.com \
  --endpoint competitors_seo \
  --country de \
  --limit 50
```

**Keyword opportunities:**

```bash
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:**

```bash
python skills/sistrix-domain/scripts/fetch_all.py \
  --domain example.com \
  --group core \
  --country de
```

**Full domain audit:**

```bash
python skills/sistrix-domain/scripts/fetch_all.py \
  --domain example.com \
  --group all \
  --country de \
  --limit 100
```

**Specific endpoints:**

```bash
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 data
- `competitors` - Process competitor list
- `urls` - Process top URLs
- `opportunities` - Process keyword opportunities
- `distribution` - Process ranking distribution
- `auto` - Auto-detect based on data structure

### Examples

**Analyze batch data:**

```bash
python skills/sistrix-domain/scripts/analyze.py \
  --input output/sistrix_batch_core_example_com_de.json \
  --csv
```

**Analyze visibility trend:**

```bash
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-cache` for fresh data when needed

## Troubleshooting

**"SISTRIX_API_KEY not set":**
- Add `SISTRIX_API_KEY=your_key` to your `.env` file

**"Rate limit exceeded":**
- Wait a few minutes and retry
- Use `--delay 1.0` in 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

