Authentifizierung
Die REST API von Statnive verwendet die standardmäßige WordPress-REST-Authentifizierung. Sie können sich mit Anwendungspasswörtern, Cookie-basierter Authentifizierung (für eingeloggte Benutzer) oder einem beliebigen Authentifizierungs-Plugin authentifizieren, das mit der WordPress REST API kompatibel ist. Lese-Endpoints erfordern die Berechtigung manage_options; die öffentlichen Sammel-Endpoints (/hit, /event, /engagement) sind für nicht authentifizierte Besucher offen, damit der Tracker Daten senden kann.
Basis-URL
Alle endpoints sind unter dem namespace statnive/v1 registriert:
https://yoursite.com/wp-json/statnive/v1/
Verfügbare Endpoints
Reporting (erfordert manage_options)
GET /summary
Gibt eine Zusammenfassung der wichtigsten Kennzahlen für einen bestimmten Datumsbereich zurück.
Parameter:
from(string, erforderlich) — Startdatum im FormatYYYY-MM-DD.to(string, erforderlich) — Enddatum im FormatYYYY-MM-DD.
GET /sources
Gibt die Aufschlüsselung der Traffic-Quellen nach Channel zurück.
GET /pages
Gibt seitenbasierte Analysen, sortiert nach Seitenaufrufanzahl, zurück.
GET /pages/entry
Gibt die häufigsten Einstiegsseiten (Landing-Pages) für einen Datumsbereich zurück.
GET /pages/exit
Gibt die häufigsten Ausstiegsseiten für einen Datumsbereich zurück.
GET /realtime
Gibt die aktuelle Anzahl aktiver Besucher sowie einen aktuellen Seitenaufruf-Feed zurück.
GET /utm
Gibt aggregierte Aufschlüsselungen der UTM-Parameter für einen Datumsbereich zurück.
GET /events
Gibt aggregierte Anzahlen benutzerdefinierter Events für einen Datumsbereich zurück.
GET /events/{name}
Gibt Details zu einem einzelnen benannten Event zurück.
GET /dimensions/{type}
Gibt aggregierte Aufschlüsselungen für eine einzelne Dimension zurück ({type} ist einer der unterstützten Dimensionstypen, z. B. country, device, browser, language).
WooCommerce-Umsatz (v1.0.0+, erfordert manage_options)
Alle Umsatz-Endpoints akzeptieren einen Datumsbereich from + to (YYYY-MM-DD). Paginierte Endpoints akzeptieren zusätzlich ein limit (1–200, Standard 25; products standardmäßig 10, max. 100).
GET /revenue/wc-status
Gibt den WooCommerce-Aktivierungsstatus, HPOS-Status, Attributionsstatus und Backfill-Fortschritt zurück.
POST /revenue/backfill
Stößt den asynchronen Import historischer Bestellungen über den Action Scheduler (oder den WP-Cron-Fallback) an.
GET /revenue/summary
Gibt die 5 KPIs zurück: Bestellungen, Bruttoumsatz, Nettoumsatz, durchschnittlicher Bestellwert, Erstattungssumme + Quote, Steuer + Versand. Die Datenbereich-Zuordnung nutzt COALESCE(date_paid_gmt, date_created_gmt) (v1.1.0+), damit Abo-Verlängerungen und Bestellungen mit verzögerter Zahlung dem Tag zugeordnet werden, an dem die Zahlung gebucht wurde.
GET /revenue/timeseries
Gibt tägliche Umsätze und Bestellanzahlen für den Datumsbereich zurück.
GET /revenue/by-channel
Gibt Bestellungen, Umsatz und AOV aufgeschlüsselt nach Statnives 8 Traffic-Channels zurück (Direct, KI-Assistenten, Organische Suche, Social Media, E-Mail, Verweis, Bezahlte Suche, Bezahlte Social-Anzeigen).
GET /revenue/by-utm
Gibt Umsatz aufgeschlüsselt nach utm_source, utm_medium und utm_campaign zurück (paginiert).
GET /revenue/by-landing
Gibt Umsatz aufgeschlüsselt nach Einstiegs-Landingpage zurück (paginiert).
GET /revenue/products
Gibt Top-Produkte nach verkauften Einheiten und Umsatz zurück, inklusive verbuchter Erstattungen; Varianten werden unter dem Eltern-Produkt gruppiert (paginiert; Standard limit=10).
GET /revenue/funnel
Gibt den 4-stufigen Cart-to-Purchase-Funnel zurück (Produkt angesehen → In den Warenkorb → Checkout gestartet → Kauf abgeschlossen). v1.1.0+ zeigt die Conversion-Rate pro Stufe an, wobei die Gesamtrate gegen den Nenner der breitesten Stufe berechnet wird.
GET /revenue/refunds
Gibt den Trend der Erstattungsquote und die meistgenutzten Erstattungsprodukte zurück.
GET /revenue/coupons
Gibt Gutschein-Einlösungen zurück: Code, Anzahl, Rabattbetrag und Nettoumsatz nach Rabatt (paginiert).
Ask me! Advisor (v1.1.0+, erfordert manage_options)
GET /advisor/questions
Gibt das vollständige Ask me!-Fragenverzeichnis zurück (116 Fragen × 10 Kategorien) mit übersetzten Kategorie-Labels, Plan-Markern (free / paid), viz_hint und einem zweisprachigen searchable[]-Array.
POST /advisor/answers
Löst eine Batch von Frage-IDs gegen die aktuellen Site-Daten auf. Body: { "ids": ["q2","q41",…], "from": "YYYY-MM-DD", "to": "YYYY-MM-DD" }. Gibt einen Answer-Envelope pro ID zurück (Status ok mit viz-Payload, coming_soon oder error).
GET /advisor/preferences
Gibt die angehefteten Frage-IDs des aktuellen Nutzers aus wp_usermeta zurück (Standardwert: 5 Anheftungen, falls keine gesetzt sind: q2, q41, q23, q72, q81).
PUT /advisor/preferences
Aktualisiert die angehefteten Frage-IDs des aktuellen Nutzers. Verwirft unbekannte IDs und erzwingt das Limit MAX_PINS = 10.
Konfiguration (erfordert manage_options)
GET /settings
Gibt die aktuellen Plugin-Einstellungen zurück.
PUT /settings
Aktualisiert die Plugin-Einstellungen. Akzeptiert einen JSON-Body mit zugelassenen Keys (tracking_enabled, respect_dnt, respect_gpc, consent_mode, retention_days, retention_mode, excluded_ips, excluded_roles, geoip_enabled, maxmind_license_key).
GET /diagnostics
Gibt eine Momentaufnahme des Plugin-Zustands zurück (DB-Tabellen, GeoIP-Status, Cron-Zeitplan, Umgebung).
POST /self-test
Führt die Selbsttest-Suite im Prozess aus.
POST /cron/run
Stößt die geplanten Cron-Jobs von Statnive manuell an.
POST /diagnostics/enable-dbip-city
Aktiviert den DB-IP-City-Fallback für GeoIP-Abfragen.
GET /privacy-audit
Gibt eine Zusammenfassung des Datenschutz-Audits zurück.
Tracker-Sammlung (öffentlich)
Auf diese Endpoints schreibt der mitgelieferte Tracker; sie sind bewusst offen, damit nicht authentifizierte Besucher Seitenaufrufe und Events senden können:
POST /hit
Erfasst einen Seitenaufruf.
POST /event
Erfasst ein benutzerdefiniertes Event.
POST /engagement
Erfasst eine Session-Engagement-Aktualisierung (Scroll-Tiefe, Verweildauer auf der Seite).
Rate Limiting
Tracker-Sammel-Endpoints (/hit, /event, /engagement) verfügen über eine Drosselung auf Anwendungsebene gegen missbräuchliche Clients. Reporting-Endpoints stützen sich auf das Standardverhalten der WordPress REST API — kapseln Sie umfangreiches automatisiertes Polling in einer eigenen Cache-Schicht.