Markus Michalski FAQ

Matomo Analytics: Shop API / Headless

Matomo Analytics für Sylius - Shop-API-Endpunkt für Headless-Storefronts: Channel-Einstellungen abrufen, Antwortformat mit allen Feldern, wirksame E-Commerce-Flags und Fehlerfälle

English Version

Zurück zur Übersicht

Matomo Analytics: Shop API / Headless

Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.

Ein Headless-Storefront sieht das Twig-Skript nicht. Damit er seinen eigenen Matomo-Tracker aufbauen kann, liefert die Shop API die Einstellungen des Channels. Sie ist nur lesbar, schreiben lässt sich darüber nichts.

Endpunkt

Method Path Beschreibung
GET /api/v2/shop/matomo-settings Einstellungen des Channels, auf den die Anfrage aufgelöst wird

Der Channel ergibt sich wie bei jeder Shop-API-Anfrage aus Sylius, jeder Channel erhält nur seine eigenen Einstellungen.

curl -s https://shop.example.com/api/v2/shop/matomo-settings -H "Accept: application/json"

Antwort

{
    "channelCode": "DE",
    "matomoUrl": "https://analytics.example.com",
    "siteId": 7,
    "cookielessTracking": true,
    "respectDoNotTrack": true,
    "useKlaroConsent": true,
    "klaroServiceName": "matomo",
    "heartbeatEnabled": true,
    "heartbeatInterval": 15,
    "trackOutboundLinks": true,
    "trackProductViews": true,
    "trackOrders": true
}
Feld Typ Beschreibung
channelCode string Code des Channels
matomoUrl string Matomo-URL ohne abschließende Schrägstriche
siteId integer Site-ID
cookielessTracking boolean Ob cookie-los getrackt wird
respectDoNotTrack boolean Ob Do-Not-Track respektiert wird
useKlaroConsent boolean Ob das Tracking hinter Klaro-Einwilligung steht
klaroServiceName string Technischer Name des Klaro-Dienstes
heartbeatEnabled boolean Ob der Heartbeat-Timer läuft
heartbeatInterval integer Heartbeat-Intervall in Sekunden
trackOutboundLinks boolean Ob ausgehende Links und Downloads getrackt werden
trackProductViews boolean Ob Produktaufrufe getrackt werden
trackOrders boolean Ob Bestellungen getrackt werden

trackProductViews und trackOrders sind bereits die wirksamen Werte, also mit dem E-Commerce-Hauptschalter verrechnet. Dein Client muss nicht zwei Einstellungen selbst verknüpfen.

useKlaroConsent und klaroServiceName verraten dem Headless-Client, welche Gating-Konvention er übernehmen soll, falls er ebenfalls Klaro einsetzt. Das Gating selbst setzt das Plugin im Headless-Betrieb nicht um, das ist Aufgabe deines Clients.

Fehler

Status Wann
404 Der Channel lässt sich nicht auflösen
404 Der Channel hat keinen Eintrag, ist ausgeschaltet oder unvollständig (keine gültige HTTPS-URL oder keine Site-ID)

Ein Channel, der nichts trackt, ist für die API also dasselbe wie ein nicht vorhandener Eintrag: ein 404 ohne Einstellungen. Die Bedingungen sind dieselben wie im Storefront, siehe Konfiguration.