REST API
Aktualisiert am 17. Oktober 2026
Die Statsdot-API stellt Ihnen dieselben Daten wie Ihr Dashboard als JSON bereit und ermöglicht Ihnen die Verwaltung von Websites, Zielen, Ihrem Team und Token. Jede Anfrage erfordert ein persönliches Zugriffstoken.
Authentifizierung
Erstellen Sie ein Token auf der Seite API und MCP in Ihrem Konto. Wählen Sie Nur lesen für Skripte und Berichte oder Lesen und Schreiben, wenn das Token auch Änderungen vornehmen soll. Kopieren Sie das Token, sobald es angezeigt wird: Es wird kein zweites Mal angezeigt.
Senden Sie es im Authorization-Header jeder Anfrage:
curl https://statsdot.com/api/v1/sites \
-H "Authorization: Bearer 12|your-token" \
-H "Accept: application/json"
Ein Token sieht das, was sein Benutzer sieht: Ihre eigenen Websites und die Websites der Teams, denen Sie angehören, mit Ihrer jeweiligen Rolle dort. Ein Betrachter kann eine Team-Website lesen, ein Verwalter kann sie auch ändern, und nur der Inhaber kann sie löschen.
Basis-URL und Format
- Basis-URL:
https://statsdot.com/api/v1 - Anfragen und Antworten erfolgen im JSON-Format. Erfolgreiche Antworten verpacken das Ergebnis in
data. - Zeiten entsprechen ISO 8601 in UTC.
Zeiträume und Filter
Jeder Statistik-Endpunkt akzeptiert dieselben Abfrageparameter wie das Dashboard:
| Parameter | Werte |
|---|---|
range |
today, 7d, 30d (Standard), 12m oder ein benutzerdefinierter Zeitraum 2026-09-01~2026-09-30 (ganze UTC-Tage, maximal zwei Jahre) |
filters[page] |
Nur Zugriffe auf diesen Seitenpfad |
filters[entry] |
Besuche, die auf dieser Seite begonnen haben |
filters[source] |
Referrer-Domain, zum Beispiel google.com; leer bedeutet direkt |
filters[utm_source], filters[utm_medium], filters[utm_campaign] |
Kampagnen-Tags der Landingpage |
filters[country] |
ISO-Ländercode, zum Beispiel ES |
filters[device] |
Desktop, Mobile oder Tablet |
filters[browser], filters[os] |
Wie im Dashboard angezeigt |
filters[event] |
Besuche, die dieses Ereignis gesendet haben |
filters[goal] |
Besuche, die diese Ziel-ID erreicht haben |
Besucher über einen Zeitraum hinweg sind Besuchendentage: Statsdot zählt einen Besucher einmal pro Tag, da sich der Besuchercode täglich ändert.
Statistiken
| Methode und Pfad | Rückgabewert |
|---|---|
GET /sites/{site}/stats/overview |
Besucher, Seitenaufrufe, Absprungrate und Besuchsdaue (Sekunden), mit dem vorherigen Zeitraum gleicher Länge und der prozentualen Veränderung |
GET /sites/{site}/stats/timeseries |
Besucher und Seitenaufrufe pro Tag oder pro Monat bei Zeiträumen von über 90 Tagen |
GET /sites/{site}/stats/breakdown/{breakdown} |
Top-Werte einer Dimension nach Besuchern. breakdown ist einer der folgenden Werte: pages, entry_pages, exit_pages, referrers, utm_source, utm_medium, utm_campaign, countries, devices, browsers, operating_systems, events, event_labels (mit event=Name). limit von 1 bis 100, Standard 10 |
GET /sites/{site}/stats/goals |
Jedes Ziel mit den Besuchern, die es erreicht haben, Conversions und Conversion-Rate |
GET /sites/{site}/stats/realtime |
Besucher in den letzten fünf Minuten |
GET /sites/{site}/stats/bots |
KI-Crawler-Anfragen im Zeitraum: gesamt, pro Crawler und die von ihnen am häufigsten gelesenen Seiten (crawler=openai-gptbot schränkt die Seiten ein). Erfordert KI-Crawler-Tracking; Filter finden keine Anwendung |
Beispiel:
curl "https://statsdot.com/api/v1/sites/42/stats/breakdown/referrers?range=7d&limit=5" \
-H "Authorization: Bearer 12|your-token"
{
"data": {
"from": "2026-10-11T00:00:00+00:00",
"to": "2026-10-17T10:15:00+00:00",
"filters": {},
"breakdown": "referrers",
"rows": [
{ "value": "google.com", "visitors": 312 },
{ "value": "", "visitors": 145 }
]
}
}
Konto und Websites
| Methode und Pfad | Funktion |
|---|---|
GET /account |
Ihr Plan, in diesem Monat genutzte und enthaltene Ereignisse, Limits und die Berechtigungen des Tokens |
GET /sites |
Websites, die Sie sehen können, samt Ihrer Rolle, den Einstellungen und dem Tracking-Snippet |
GET /sites/{site} |
Eine Website |
POST /sites |
Website hinzufügen: {"domain": "example.com"}. Fügen Sie account_id hinzu, um sie einem von Ihnen verwalteten Teamkonto hinzuzufügen. Es gelten die Plan-Limits dieses Kontos |
PATCH /sites/{site} |
Ändern von weekly_report, public_live, shared (öffentlicher Read-Only-Link), alert_traffic, alert_silence oder main_goal_id (ein Ziel der Website oder null) |
DELETE /sites/{site} |
Löschen einer Website in Ihrem Besitz und aller dazugehörigen Statistiken |
Ziele
| Methode und Pfad | Funktion |
|---|---|
GET /sites/{site}/goals |
Die Ziele einer Website |
POST /sites/{site}/goals |
{"type": "page", "value": "/thanks"} oder {"type": "event", "value": "Signup"} |
DELETE /sites/{site}/goals/{goal} |
Ein Ziel löschen; die Besuche bleiben erhalten |
Funnels
| Methode und Pfad | Funktion |
|---|---|
GET /sites/{site}/funnels |
Die Funnels einer Website |
POST /sites/{site}/funnels |
{"name": "Sign-up", "steps": [{"type": "page", "value": "/"}, {"type": "page", "value": "/pricing"}, {"type": "event", "value": "Signup"}]}: 2 bis 8 Schritte, maximal 10 Funnels pro Website |
DELETE /sites/{site}/funnels/{funnel} |
Einen Funnel löschen |
GET /sites/{site}/stats/funnels/{funnel} |
Besucher an jedem Schritt in der richtigen Reihenfolge innerhalb desselben Tages, mit dem Anteil am vorherigen und am ersten Schritt; Zeiträume und Filter finden Anwendung |
Notizen
| Methode und Pfad | Funktion |
|---|---|
GET /sites/{site}/notes |
Notizen zum Diagramm; from und to (JJJJ-MM-TT) grenzen die Liste ein |
POST /sites/{site}/notes |
{"date": "2026-10-17", "text": "Newsletter sent"}: ein vergangener oder heutiger Tag, bis zu 200 Zeichen |
DELETE /sites/{site}/notes/{note} |
Eine Notiz löschen |
Team
| Methode und Pfad | Funktion |
|---|---|
GET /team |
Zu Ihrem Konto eingeladene Personen, das Limit des Plans und die Teams, denen Sie angehören |
POST /team |
Einladen: {"email": "[email protected]", "role": "viewer"} (viewer oder manager). Die Einladungs-E-Mail wird versendet; die Antwort enthält den Einladungslink |
PATCH /team/{member} |
Die Rolle ändern |
DELETE /team/{member} |
Eine Person oder eine ausstehende Einladung entfernen |
Token
| Methode und Pfad | Funktion |
|---|---|
GET /tokens |
Ihre Token mit deren Berechtigungen und letzter Verwendung |
POST /tokens |
{"name": "Reports", "abilities": ["read"]}. Das reine Token wird einmalig in der Antwort ausgegeben. Ein Token mit Leserechten kann kein Token mit Schreibrechten erstellen |
DELETE /tokens/{token} |
Ein Token widerrufen |
Fehler
Fehler verwenden den HTTP-Status und einen Textkörper mit einem stabilen Code:
{ "error": { "code": "account_blocked", "message": "The account that owns this site has no active plan." } }
| Status | Wann |
|---|---|
| 401 | Fehlendes oder ungültiges Token |
| 402 | Das Konto hat keinen aktiven Plan, überschreitet seinen Plan oder hat ein Limit erreicht |
| 403 | Das Token hat nur Leserechte und die Anfrage nimmt Änderungen vor |
| 404 | Die Website, das Ziel oder das Mitglied existiert nicht oder ist für dieses Token nicht verfügbar |
| 422 | Ungültige Parameter, zum Beispiel ein unbekannter Zeitraum oder eine unbekannte Aufteilung |
| 429 | Zu viele Anfragen |
Limits
- 120 Anfragen pro Minute und Token.
- Maximal 25 Token pro Konto.
- Die API ist in jedem Plan und im Testzeitraum enthalten.