Skip to main content

Documentation Index

Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt

Use this file to discover all available pages before exploring further.

Die Schnittstelle unter dem Endpunkt logmanager/ bietet Zugriff auf die im Shopsystem erfassten Logs. Sie ermöglicht das Abrufen einzelner Logs oder ganzer Log-Listen sowie die gezielte Analyse durch Filterung nach Parametern wie Schweregrad, Subshop oder Zeitstempel. Zusätzlich können Log-Gruppen erstellt und verwaltet werden, um spezifische Filterkriterien zu speichern und Benachrichtigungen bei neuen relevanten Einträgen zu erhalten. Die API unterstützt damit sowohl die manuelle Analyse als auch eine automatisierte Überwachung von Systemereignissen. Zur Nutzung der Schnittstellen sind entsprechende Zugriffsrechte erforderlich.

Unterstützte Methoden

Angabe aller unterstützten Methoden.
Befehl/InfoEndpunkteGETPOSTPUTDELETE
Logslogmanager/logs
Log-Gruppenlogmanager/groups
Benachrichtigungen

Ressourcen: Felder in Logs

Wichtige Datenfelder in Logs

Logs im System basieren auf Daten aus Elasticsearch und unterliegen daher keiner starren Struktur. Dennoch gibt es zentrale Felder, die in nahezu allen Log-Einträgen vorkommen und für Filter, Sortierung oder Auswertung genutzt werden können. Die folgende Übersicht listet die wichtigsten dieser Felder:
NameTypVerwendung
@timestampStringZeitpunkt der Erstellung
_idStringEindeutige ID des Logs
appStringName des Programms, das das Log generiert hat (z.B. reastapi, shop, statisticAggregator)
loggerStringName des Loggers, der der Kategorisierung dient (z.B. restapi.controllers.customers)
msgStringDie Nachricht des Logs
sessionId (optional)StringEindeutige ID der Sitzung, in der das Log generiert wurde
severityStringSchweregrad des Logs, der der Kategorisierung dient. Mögliche Werte: debuginfowarnerrorcrit
shopIdStringDer technische Name des Shops
stageId (optional)StringStage, auf der das Log generierte wurde
subshopId (optional)StringSubshop, in dem das Log generiert wurde
Hinweis: Weitere Felder können abhängig vom Ursprung und Kontext des Logs vorhanden sein. Die tatsächliche Struktur einzelner Log-Einträge kann abweichen.

Beispiel

Der folgende Log-Eintrag stammt aus dem System und zeigt typische Felder, wie sie von Elasticsearch geliefert werden. Optional enthaltene Felder wie agent, host oder tags können je nach Ursprung des Logs variieren.
{
    "@timestamp": "2025-05-07T06:51:15.148Z",
    "@version": "1",
    "_id": "KJGDqZYBCZfVknTATek6",
    "agent": {
        "ephemeral_id": "166b1b26-3479-44a0-abd5-01eb97dfde6a",
        "hostname": "849eec2f201d",
        "id": "1bac5950-93cd-45c0-83ef-96f0f835523b",
        "name": "849eec2f201d",
        "type": "filebeat",
        "version": "7.17.3"
    },
    "app": "restapi",
    "ecs": {
        "version": "1.12.0"
    },
    "host": {
        "name": "849eec2f201d"
    },
    "hostname": "db762f83481f",
    "input": {
        "type": "log"
    },
    "log": {
        "file": {
            "path": "/opt/ws/v9-logs/restapi/2025_05_07.log"
        },
        "offset": 4746
    },
    "logger": "restapi.controller.statistics",
    "msg": "Failed to get yesterday's active visitors: {\"error\":{\"root_cause\":[{\"type\":\"index_not_found_exception\",\"reason\":\"no such index [visitors]\",\"resource.type\":\"index_or_alias\",\"resource.id\":\"visitors\",\"index_uuid\":\"_na_\",\"index\":\"visitors\"}],\"type\":\"index_not_found_exception\",\"reason\":\"no such index [visitors]\",\"resource.type\":\"index_or_alias\",\"resource.id\":\"visitors\",\"index_uuid\":\"_na_\",\"index\":\"visitors\"},\"status\":404}",
    "severity": "err",
    "shopId": "myshop",
    "tags": [
        "v9",
        "beats_input_raw_event"
    ]
}

Programme, die Logs erzeugen

Das Feld app in einem Logeintrag gibt an, welches Programm oder welcher Dienst das Log erzeugt hat. Die folgende Übersicht listet die möglichen Programme auf, die in der Praxis als app-Wert erscheinen können – inklusive einer kurzen Beschreibung ihrer Aufgabe innerhalb des Shop-Systems.
Werte A - Z (app)Beschreibung
adminBackend-Interface für die Shop-Verwaltung
appAutomationAutomatisierungsprozesse im Shop-System
asseAutomatischer Dienst zur Ausführung und Zustellung serverseitiger HTTP-Benachrichtigungen (Asynchronous Server Side Events)
backInStockVerwaltung von Benachrichtigungen bei wieder verfügbaren Artikeln
cacheAktualisieren vom Cache
captureExecutorVerarbeitet automatisch Zahlungs-Capture-Dateien für Bestellungen, führt bei Bedarf Zahlungsaufforderungen an den Zahlungsanbieter durch und verwaltet Wiederholungsversuche sowie Fehlerbehandlung.
categoryProductsRebuilderProzess, der Produkte Kategorien mit regelbasierter Produktzuweisung automatisch zuordnet.
configUpdaterInterner Dienst, der auf die Aktualisierung von Konfigurationsdaten reagiert
feedBuilderErstellung von Datenfeeds für Exporte und von Sitemaps
garbageCollectorAutomatische Bereinigung nicht mehr benötigter Daten
heartbeatCheckerÜberwachung von Hintergrundprogrammen
html2mimeUmwandlung von HTML in E-Mails
imageCheckerPrüft, ob es ungenutzte Produktbilder gibt und ob referenzierte Bilder existieren.
imageconverterKonvertiert Bilder in andere Formate
importerImport von Daten wie Produkten, Kundendaten etc.
mailbackupSicherung versendeter E-Mails
mailerVersand von E-Mails aus dem System heraus
newsletterSubscribeHelperProzess, der Double-Opt-In-E-Mails mit einer Einladung zur Newsletter-Anmeldung versendet.
notificatorBenachrichtigungsdienst für die App
productRatingBackendVersand von Bewertungsanfragen
restapiLogs aus der REST-API
searchindexerIndizierung von Produkten für die Shopsuche
shopAllgemeiner Shop-Prozess (z. B. Warenkorb, Checkout, Navigation)
spCheckerMo­ni­to­ring der System-Points-Nutzung
statisticAggregatorAggregation und Aufbereitung statistischer Daten
templateCompilerKompiliert Templates, kann über die REST API gestartet werden

Methoden für Logs

Über die nachfolgenden Endpunkte lassen sich Log-Einträge aus dem System abrufen. Die Logs enthalten detaillierte Informationen zu Ereignissen im Shop, wie z. B. Fehlermeldungen, Debug-Ausgaben oder sicherheitsrelevante Hinweise. Einträge können gefiltert und sortiert sowie einzeln nach ihrer ID geladen werden. Für den Zugriff auf diese Daten sind entsprechende Leseberechtigungen erforderlich.

GET logmanager/logs

Über diesen Endpunkt kann eine Liste mit Logeinträgen abgefragt werden. Die Ergebnisse lassen sich nach Zeitstempel, Schweregrad (severity), Shop, Subshop, Logger, Session-ID oder weiteren Feldern filtern und sortieren. Standardmäßig wird nach dem Feld @timestamp sortiert. Für die Abfrage kann ein Zeitraum mit filter_gte[createdAt] und filter_lte[createdAt] angegeben werden. Der Zugriff ist auf maximal 300 Einträge pro Anfrage begrenzt, eine Paginierung erfolgt über nextPageToken. Die maximale Anzahl an Ergebnissen beträgt 10.000 - auch bei Paginierung. Darüber hinausgehende Daten können nicht abgerufen werden. Zur Verfügung stehen Logs verschiedener Anwendungen (z. B. shop, restapi) und Quellen (z. B. filebeat). Sie enthalten strukturierte Metadaten und Fehlermeldungen, die zur Analyse von Prozessen oder Fehlern im Shop dienen. Um die tatsächlichen Logdateien oder Pfade zu ermitteln, kann das Feld log.file.path genutzt werden.

Beispiel

Zugriff auf bis zu 100 Logs aller Art im Zeitraum 2025.03.24–2025.04.24
https://www.<ihr-shop>.de/admin/api/v1/logmanager/logs?size=100&sort=@timestamp:asc&filter_eq[severity]=debug&filter_eq[severity]=info&filter_eq[severity]=warning&filter_eq[severity]=err&filter_eq[severity]=crit&filter_gte[createdAt]=2025-03-24T00:00:00.371Z&filter_lte[createdAt]=2025-04-23T23:59:59.371Z&filter_eq[subshopId]=deutsch

Antwort

{
    "endReached": false,
    "items": [
        {
            "@timestamp": "2025-04-04T13:41:51.097Z",
            "@version": "1",
            "_id": "9e2uHpYBZKNjyb2oXatY",
            "agent": {
                "ephemeral_id": "70e334c2-f5ac-4599-aa32-dd5dc7d7551d",
                "hostname": "9f46d9c66ba8",
                "id": "1bac5950-93cd-45c0-83ef-96f0f835523b",
                "name": "9f46d9c66ba8",
                "type": "filebeat",
                "version": "7.17.3"
            },
            "app": "shop",
            "ecs": {
                "version": "1.12.0"
            },
            "host": {
                "name": "9f46d9c66ba8"
            },
            "hostname": "f87daf6dd2fe",
            "input": {
                "type": "log"
            },
            "log": {
                "file": {
                    "path": "/opt/ws/v9-logs/shop/2025_04_04.log"
                },
                "offset": 5825
            },
            "logger": "form",
            "msg": "Missing recaptcha parameters:\nverifyUrl='https://www.google.com/re...",
            "sessionId": "973dda5db818b2a57942baed66f27f0939f78ee162b6bb65490e8fea3772791e",
            "severity": "crit",
            "shopId": "myshop",
            "stageId": "3",
            "subshopId": "deutsch",
            "tags": [
                "v9",
                "beats_input_raw_event"
            ]
        },
        {
            "@timestamp": "2025-04-09T13:17:57.461Z",
            "@version": "1",
            "_id": "iu7LHpYBZKNjyb2o-KEm",
            "agent": {
                "ephemeral_id": "70e334c2-f5ac-4599-aa32-dd5dc7d7551d",
                "hostname": "9f46d9c66ba8",
                "id": "1bac5950-93cd-45c0-83ef-96f0f835523b",
                "name": "9f46d9c66ba8",
                "type": "filebeat",
                "version": "7.17.3"
            },
            "app": "shop",
            "ecs": {
                "version": "1.12.0"
            },
            "host": {
                "name": "9f46d9c66ba8"
            },
            "hostname": "f87daf6dd2fe",
            "input": {
                "type": "log"
            },
            "log": {
                "file": {
                    "path": "/opt/ws/v9-logs/shop/2025_04_09.log"
                },
                "offset": 85186
            },
            "logger": "product",
            "msg": "Meta title field of the product is not a string",
            "sessionId": "269300aab23352c10324f82817bcb12aaf433e325425753b3c89018cee7fc0fd",
            "severity": "err",
            "shopId": "myshop",
            "stageId": "3",
            "subshopId": "deutsch",
            "tags": [
                "v9",
                "beats_input_raw_event"
            ]
        },
        {
            "@timestamp": "2025-04-03T07:41:46.882Z",
            "@version": "1",
            "_id": "Hd7LYZYBUuEsdVP_P_eb",
            "agent": {
                "ephemeral_id": "71484722-483c-4c99-9436-b470708d50c7",
                "hostname": "0d81d1bd24c9",
                "id": "1bac5950-93cd-45c0-83ef-96f0f835523b",
                "name": "0d81d1bd24c9",
                "type": "filebeat",
                "version": "7.17.3"
            },
            "app": "restapi",
            "ecs": {
                "version": "1.12.0"
            },
            "host": {
                "name": "0d81d1bd24c9"
            },
            "hostname": "2d3c543a9bfd",
            "input": {
                "type": "log"
            },
            "log": {
                "file": {
                    "path": "/opt/ws/v9-logs/restapi/2025_04_03.log"
                },
                "offset": 93145
            },
            "logger": "data.products.repository",
            "msg": "Generating XML for combination",
            "severity": "info",
            "shopId": "myshop",
            "stageId": "3",
            "subshopId": "deutsch",
            "tags": [
                "v9",
                "beats_input_raw_event"
            ]
        }
    ],
    "nextPageToken": "MTAw",
    "totalCount": 10000
}

Filterfelder

logger (wenn nicht spezifiziert - alle), createdAt (statt @timestamp), weitere Felder eines Logs wie subshopId, severity, app

Sortierfelder

Es ist möglich, Logs nach unterschiedlichen Feldern zu sortieren (z.B. nach sessionId.keyword), aber standardmäßig wird nur die Sortierung nach @timestamp genutzt.

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Logs .
400 Bad Request”invalidValue”
400 Bad Request”invalidCharacters”size ist keine Ganzzahl.
Ein Filterwert ist ungültig.
400 Bad Request”unknownDataField”Ein Filter- oder Sortierfeld ist ungültig.
400 Bad Request”unknownOperation”Ein Filtertyp ist ungültig.
400 Bad Request”syntaxError”sort enthält mehr als einen oder keinen ”:“.
503 Service Unavailable”internalError”Logs konnten nicht geladen werden.

GET logmanager/logs/

Diese Methode lädt ein einzelnes Log-Ereignis anhand seiner ID. Es werden alle zugehörigen Felder wie Zeitstempel, Quelle, Schweregrad, Nachricht und Kontextinformationen zurückgegeben. Für die Nutzung dieser Methode müssen entsprechende Leserechte für Logs vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/logs/4-yUHpYBZKNjyb2okM3P

Antwort

{
    "@timestamp": "2025-04-01T15:38:07.934Z",
    "@version": "1",
    "agent": {
        "ephemeral_id": "70e334c2-f5ac-4599-aa32-dd5dc7d7551d",
        "hostname": "9f46d9c66ba8",
        "id": "1bac5950-93cd-45c0-83ef-96f0f835523b",
        "name": "9f46d9c66ba8",
        "type": "filebeat",
        "version": "7.17.3"
    },
    "app": "shop",
    "ecs": {
        "version": "1.12.0"
    },
    "host": {
        "name": "9f46d9c66ba8"
    },
    "hostname": "f87daf6dd2fe",
    "input": {
        "type": "log"
    },
    "log": {
        "file": {
            "path": "/opt/ws/v9-logs/shop/2025_04_01.log"
        },
        "offset": 0
    },
    "logger": "router",
    "msg": "Path '/favicon.ico' not known",
    "sessionId": "8fd2e99fb7fe7da9c35f0685b8381f0ab6ac05ff159a0767e2f3b2e899d7aadf",
    "severity": "info",
    "shopId": "myshop",
    "stageId": "3",
    "subshopId": "deutsch",
    "tags": [
        "v9",
        "beats_input_raw_event"
    ]
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Logs.
404 Not FoundDas Log wurde nicht gefunden.
503 Service Unavailable”internalError”Das Log konnte nicht geladen werden.

Methoden für Log-Gruppen

Über die folgenden Endpunkte lassen sich Log-Gruppen im Shop-System erstellen, abrufen, aktualisieren und löschen. Log-Gruppen definieren, welche Arten von Logs beobachtet werden sollen – z. B. nach Schweregrad, Subshop oder Quelle – und bilden damit die Grundlage für gezielte Auswertungen und Benachrichtigungen. Zusätzlich können Benachrichtigungseinstellungen einer Gruppe konfiguriert werden, um über neue Log-Einträge regelmäßig informiert zu werden. Zur Nutzung der Schnittstellen sind entsprechende Rechte zum Verwalten von Logs erforderlich.

GET logmanager/groups

Mit diesem Endpunkt lassen sich Log-Gruppen abfragen. Eine Log-Gruppe bündelt bestimmte Log-Einträge anhand eines konfigurierbaren Filters, z. B. nach Schweregrad oder Zeitraum. Die Ergebnisliste kann über Filter- und Sortierparameter gezielt eingeschränkt werden. Für den Zugriff auf diese Daten sind entsprechende Leseberechtigungen erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups?size=100
&filter_gte[createdAt]=2025-03-25T00:00:00.913Z
&filter_lte[createdAt]=2025-04-25T23:59:59.913Z

Antwort

{
    "endReached": true,
    "items": [
        {
            "createdAt": "2025-04-23T16:03:37.000Z",
            "description": "myDescription",
            "filter": {
                "or": []
            },
            "id": 4,
            "name": "myGroup",
            "notificationId": 3
        }
    ],
    "nextPageToken": "MA",
    "totalCount": 1
}

Filterfelder

id, name, description, notificationId, filter, createdAt

Sortierfelder

id, name, description, createdAt

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Logs.
400 Bad Request”invalidValue”
400 Bad Request”invalidCharacters”size ist keine Ganzzahl.
Ein Filterwert ist ungültig.
400 Bad Request”unknownDataField”Ein Filter- oder Sortierfeld ist ungültig.
400 Bad Request”unknownOperation”Ein Filtertyp ist ungültig.
400 Bad Request”syntaxError”sort enthält mehr als einen oder keinen ”:”.

GET logmanager/groups/

Mit diesem Endpunkt kann eine einzelne Log-Gruppe anhand ihrer ID abgerufen werden. Die Log-Gruppe enthält Metadaten wie Name, Beschreibung, Erstellungszeitpunkt, Filter und einen optionalen Verweis auf eine Benachrichtigungskonfiguration. Für den Zugriff sind entsprechende Leseberechtigungen erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups/4

Antwort

{
    "createdAt": "2025-04-23T16:03:37.000Z",
    "description": "myDescription",
    "filter": {
        "or": []
    },
    "id": 4,
    "name": "myGroup",
    "notificationId": 3
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Logs.
400 Bad Request”invalidValue”id fehlt oder ist ungültig.
404 Not FoundDie Log-Gruppe wurde nicht gefunden.

GET logmanager/groups//logs

Mit diesem Endpunkt kann eine Liste von Logs abgerufen werden, die zu einer bestimmten Log-Gruppe gehören. Die ID der Log-Gruppe muss in der URL übergeben werden. Die Abfrage unterstützt Filterung, Sortierung sowie die Paginierung über die Parameter size, sort und pageToken. Für den Zugriff müssen entsprechende Leseberechtigungen vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups/3/logs?size=100
&filter_gte[createdAt]=2025-03-24T00:00:00.186Z
&filter_lte[createdAt]=2025-04-25T23:59:59.186Z

Antwort

{
    "endReached": false,
    "items": [
        {
            "@timestamp": "2025-04-11T09:35:24.646Z",
            "@version": "1",
            "_id": "6ckRXZYBlnEc1Y7xhdd4",
            "agent": {
                "ephemeral_id": "823e4491-dab9-468c-98d4-d5303323ee16",
                "hostname": "0d81d1bd24c9",
                "id": "1bac5950-93cd-45c0-83ef-96f0f835523b",
                "name": "0d81d1bd24c9",
                "type": "filebeat",
                "version": "7.17.3"
            },
            "app": "shop",
            "ecs": {
                "version": "1.12.0"
            },
            "host": {
                "name": "0d81d1bd24c9"
            },
            "hostname": "391a58954768",
            "input": {
                "type": "log"
            },
            "log": {
                "file": {
                    "path": "/opt/ws/v9-logs/shop/2025_04_11.log"
                },
                "offset": 94691
            },
            "logger": "shop.parseView",
            "msg": "RenderView Time 72703 us",
            "sessionId": "b831971cb73728321b979bdd49906512fdc48efd4be5022011abecd4bec9da89",
            "severity": "debug",
            "shopId": "myshop",
            "tags": [
                "v9",
                "beats_input_raw_event"
            ]
        },
        ...
    ],
    "nextPageToken": "MTAw",
    "totalCount": 10000
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Logs.
400 Bad Request”invalidValue”
400 Bad Request”invalidCharacters”size ist keine Ganzzahl.
Ein Filterwert ist ungültig.
400 Bad Request”unknownDataField”Ein Filter- oder Sortierfeld ist ungültig.
400 Bad Request”unknownOperation”Ein Filtertyp ist ungültig.
400 Bad Request”syntaxError”sort enthält mehr als einen oder keinen ”:“.
404 Not FoundDie Log-Gruppe wurde nicht gefunden.
503 Service Unavailable”internalError”Logs konnten nicht geladen werden.

GET logmanager/groups//notifications

Mit diesem Endpunkt können die Benachrichtigungseinstellungen einer bestimmten Log-Gruppe abgerufen werden. Dazu gehören u. a. die Empfänger, der Benachrichtigungszeitraum und der Zeitpunkt des letzten Versands. Die ID der Log-Gruppe muss in der URL übergeben werden. Für den Zugriff sind entsprechende Leseberechtigungen erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups/3/notifications

Antwort

{
    "createdAt": "2025-04-23T15:08:56.000Z",
    "creator": 1,
    "enabled": true,
    "filter": {
        "or": []
    },
    "id": 2,
    "lastSentTimestamp": "2025-04-23T15:08:17.000Z",
    "logGroupId": 3,
    "notificationPeriod": 1440,
    "recipients": {
        "accounts": [
            {
                "enabled": true,
                "id": 1
            }
        ],
        "emails": []
    },
    "startDate": "2025-04-23T15:08:17.000Z",
    "subject": "asdf"
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Logs.
400 Bad Request”invalidValue”id fehlt oder ist ungültig.
404 Not FoundDie Log-Gruppe wurde nicht gefunden.

POST logmanager/groups

Mit diesem Endpunkt kann eine neue Log-Gruppe erstellt werden. Pflichtfelder sind name und filter; das Feld description ist optional. Der Filter legt fest, welche Logs der Gruppe zugeordnet werden sollen. Die Filter bestehen aus geschachtelten logischen Bedingungen (z. B. or, and, eq). Für die Nutzung des Endpunkts müssen die erforderlichen Rechte zum Erstellen von Log-Gruppen vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups

Request Body

{
    "name": "asdf",
    "description": "fdsa",
    "filter": {
        "or": [
            {
                "and": [
                    {
                        "or": [
                            {
                                "eq": {
                                    "app": "restapi.cgi"
                                }
                            }
                        ]
                    },
                    {
                        "or": [
                            {
                                "eq": {
                                    "logger": "restapi.controllers.products"
                                }
                            }
                        ]
                    },
                    {
                        "or": [
                            {
                                "eq": {
                                    "severity": "error"
                                }
                            },
                            {
                                "eq": {
                                    "severity": "crit"
                                }
                            }
                        ]
                    },
                    {
                        "or": [
                            {
                                "eq": {
                                    "subshopId": "deutsch"
                                }
                            },
                            {
                                "eq": {
                                    "subshopId": "english"
                                }
                            }
                        ]
                    }
                ]
            }
        ]
    }
}

Antwort

{
    "createdAt": "2025-04-23T16:03:37.000Z",
    "description": "fdsa",
    "filter": {
        "or": [
            {
                "and": [
                    {
                        "or": [
                            {
                                "eq": {
                                    "app": "restapi.cgi"
                                }
                            }
                        ]
                    },
                    {
                        "or": [
                            {
                                "eq": {
                                    "logger": "restapi.controllers.products"
                                }
                            }
                        ]
                    },
                    {
                        "or": [
                            {
                                "eq": {
                                    "severity": "error"
                                }
                            },
                            {
                                "eq": {
                                    "severity": "crit"
                                }
                            }
                        ]
                    },
                    {
                        "or": [
                            {
                                "eq": {
                                    "subshopId": "deutsch"
                                }
                            },
                            {
                                "eq": {
                                    "subshopId": "english"
                                }
                            }
                        ]
                    }
                ]
            }
        ]
    },
    "id": 1,
    "name": "asdf",
    "notificationId": 0
}
Hinweis: Eine neu erstellte Log-Gruppe hat stets notificationId: 0, da noch keine Benachrichtigungskonfiguration zugewiesen wurde. Diese kann anschließend über PUT logmanager/groups/{id}/notifications eingerichtet werden.

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Erstellen von Logs.
400 Bad RequestRequest body konnte nicht geladen werden.
400 Bad Request”unknownDataField”Ein unbekanntes Feld wurde im Request Body übergeben.
400 Bad Request”invalidFormat”name oder description ist kein String.
filter ist kein Objekt.
400 Bad Request”invalidValue”name ist ein leerer String.
400 Bad Request”missing”name oder filter wurden nicht übergeben.
503 Service Unavailable”internalError”Die neu erstellte Log-Gruppe konnte nicht geladen werden.

PUT logmanager/groups/

Mit diesem Endpunkt kann eine bestehende Log-Gruppe anhand ihrer ID aktualisiert werden. Änderungen können z. B. den Namen, die Beschreibung oder das Filterobjekt der Gruppe betreffen. Wird ein Filter übergeben, muss dieser ein baumartiges Objekt sein. Für die Nutzung des Endpunkts müssen die erforderlichen Rechte zum Bearbeiten von Log-Gruppen vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups/4

Request Body

{
    "name": "myGroup",
    "description": "newDescription",
    "filter": {
        "or": []
    }
}

Antwort

{
    "createdAt": "2025-04-23T16:03:37.000Z",
    "description": "newDescription",
    "filter": {
        "or": []
    },
    "id": 4,
    "name": "myGroup",
    "notificationId": 3
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Schreiben von Logs.
400 Bad RequestRequest body konnte nicht geladen werden.
400 Bad Request”unknownDataField”Ein unbekanntes Feld wurde im Request Body übergeben.
400 Bad Request”invalidValue”id fehlt oder ist ungültig.
400 Bad Request”invalidFormat”name oder description ist kein String.
filter ist kein Objekt.
404 Not FoundDie Log-Gruppe wurde nicht gefunden.

PUT logmanager/groups//notifications

Mit diesem Endpunkt können die Benachrichtigungseinstellungen einer bestehenden Log-Gruppe anhand ihrer ID geändert werden. Dabei lassen sich z. B. Empfänger, Startzeitpunkt, Benachrichtigungsintervall sowie Betreff definieren oder anpassen. Zur Nutzung sind die entsprechenden Schreibrechte für Log-Gruppen erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups/3/notifications

Request Body

{
    "enabled": true,
    "subject": "asdf",
    "recipients": {
        "accounts": [
            {
                "id": 1,
                "enabled": true
            }
        ]
    },
    "startDate": "2025-04-23T15:08:17.550Z",
    "notificationPeriod": 1440
}

Antwort

{
    "createdAt": "2025-04-23T15:08:56.000Z",
    "creator": 1,
    "enabled": true,
    "filter": {
        "or": []
    },
    "id": 2,
    "lastSentTimestamp": "2025-04-23T15:08:17.000Z",
    "logGroupId": 3,
    "notificationPeriod": 1440,
    "recipients": {
        "accounts": [
            {
                "enabled": true,
                "id": 1
            }
        ],
        "emails": []
    },
    "startDate": "2025-04-23T15:08:17.000Z",
    "subject": "asdf"
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Schreiben von Logs.
400 Bad RequestRequest body konnte nicht geladen werden.
400 Bad Request”unknownDataField”Ein unbekanntes Feld wurde im Request Body übergeben.
400 Bad Request”invalidValue”
400 Bad Request”invalidFormat”enabled ist kein Boolean.
subject ist kein String.
recipients ist kein Objekt.
notificationPeriod ist keine positive Zahl.
startDate ist kein String.
customSendTime ist kein Boolean.
sendDate ist kein String.
sendTime ist kein String.
400 Bad Request”missing”sendDate oder sendTime wurden nicht übergeben, obwohl customSendTime auf true gesetzt ist.
404 Not FoundDie Log-Gruppe wurde nicht gefunden.

DELETE logmanager/groups/

Mit diesem Endpunkt kann eine bestehende Log-Gruppe anhand ihrer ID gelöscht werden. Damit werden auch die zugehörigen Benachrichtigungseinstellungen entfernt. Zur Ausführung sind entsprechende Löschrechte für Logs erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/logmanager/groups/2

Antwort

{
    "success": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Löschen von Logs.
400 Bad Request”invalidValue”id fehlt oder ist ungültig.
404 Not FoundDie Log-Gruppe wurde nicht gefunden.

Support

Bei technischen Fragen und Hilfestellungen ist unser Support-Team für Sie erreichbar: Zum Kundenportal Bitte senden Sie uns eine möglichst detaillierte Beschreibung sowie Screenshots, Requests/Antworten, damit wir Ihre Anfrage zeitnah und zielführend beantworten können.