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.

Der Endpunkt sitemaps/ stellt Ihnen eine Schnittstelle zur Verfügung, mit der Sie XML-Sitemaps in Ihrem Shop-System verwalten können. Über die API lassen sich neue Sitemaps erstellen, bestehende bearbeiten oder löschen sowie manuelle und geplante Generierungen durchführen. Zusätzlich ermöglicht die Schnittstelle das Abfragen von Statusinformationen zu vergangenen oder laufenden Generierungsvorgängen. Sitemaps können dabei individuell für bestimmte Subshops und auf Basis von frei definierbaren Vorlagen generiert werden. Die REST-API erlaubt eine präzise Steuerung über Parameter wie maximale Dateigröße oder maximale Anzahl von URLs pro Datei – so lässt sich die Auslieferung der Sitemaps gezielt optimieren. Die Nutzung dieser API erfordert entsprechende Berechtigungen für das Lesen, Schreiben oder Generieren von Sitemaps.

Unterstützte Methoden

Angabe aller unterstützten Methoden.
Befehl/InfoEndpunkteGETPOSTPUTDELETE
Sitemapssitemaps/
Sitemap-Vorlagensitemaps/templates
Protokollesitemaps/protocols
Generierungsitemaps/generate

Datenfelder

Datenfelder der Sitemaps

Sitemaps definieren, welche URLs eines Shops in welcher Form exportiert werden sollen. Sie basieren jeweils auf einer Sitemap-Vorlage und enthalten zusätzliche Parameter, z. B. zur Dateigröße, Anzahl der Einträge oder Subshop-Zuordnung. Sitemaps können für verschiedene Subshops erstellt werden und lassen sich zu definierten Zeiten automatisch exportieren. Die erzeugten Dateien werden standardmäßig im Verzeichnis /sitemaps/<subshopId> abgelegt. Sie sind öffentlich zugänglich und können z. B. über eine URL wie www.ihre-shopdomain.de/sitemap.xml aufgerufen werden.
NameTypVerwendung
idIntegerEindeutige ID der Sitemap.
activeBooleanGibt an, ob die Sitemap für den Export aktiv ist.
nameStringName der Sitemap.
fileNameStringName der Datei, die generiert wird.
subshopIdsArrayListe der Subshop-IDs für die Sitemap. Wenn leer, werden die Sitemaps für alle Subshops exportiert.
templateIdIntegerEindeutige ID der verwendeten Sitemap-Vorlage
maxFileSizeIntegerMaximale Dateigröße einer Sitemap-Datei
maxFileEntriesIntegerMaximale Anzahl der URLs in einer Sitemap-Datei
optionsObjektZusätzliche Einstellungen (zurzeit nur exportCharset)
writeIntoRobotsBooleanGibt an, ob ein Eintrag in die robots.txt-Datei geschrieben werden soll.
exportAfterImportBooleanGibt an, ob die Sitemap nach dem Import von Produktdaten exportiert werden soll.
exportPlanArrayArray von Ganzzahlen (Stunden), an denen Sitemaps exportiert werden.
exportStatusIntegerStatus des Exportprozesses (z. B. beendet, beginnt, fehlgeschlagen) Mögliche Werte: 0 = Idle1 = Finished2 = Error3 = Starting4 = Running
protocolIdIntegerEindeutige ID des Protokolls.
lastExportStartedStringZeitpunkt des letzten Exportstarts.
lastExportFinishedStringZeitpunkt des letzten erfolgreichen Exports.
createdAtStringZeitpunkt der Erstellung (ISO 8601-Format, UTC).
updatedAtStringZeitpunkt der letzten Aktualisierung (ISO 8601-Format, UTC).

Beispiel

{
    "active": true,
    "createdAt": "2025-03-19 11:06:47",
    "exportAfterImport": false,
    "exportPlan": [],
    "exportStatus": 1,
    "fileName": "sitemap121",
    "id": 129,
    "lastExportFinished": "0000-00-00 00:00:00",
    "lastExportStarted": "0000-00-00 00:00:00",
    "maxFileEntries": 50000,
    "maxFileSize": 52428800,
    "name": "sitemap1217",
    "options": {
        "exportCharset": "utf-8"
    },
    "protocolId": 10,
    "subshopIds": [
        "deutsch"
    ],
    "templateId": 3,
    "updatedAt": "2025-03-19 11:31:21",
    "writeIntoRobots": false
}

Hinweise zur Aufteilung von Sitemaps

Um die Ladezeit von Suchmaschinen zu optimieren und technischen Vorgaben gerecht zu werden, kann die Generierung von Sitemaps automatisch auf mehrere Dateien aufgeteilt werden. Dies geschieht, wenn eine der folgenden Grenzen überschritten wird:
  • Maximale Anzahl an URLs pro Datei: Standardmäßig 50.000 URLs
  • Maximale Dateigröße pro Datei: Standardmäßig 50 MB
Diese Grenzen können über die Felder maxFileEntries und maxFileSize pro Sitemap individuell konfiguriert werden. Wird eine dieser Grenzen überschritten, erzeugt das System automatisch eine neue Sitemap-Datei mit einem fortlaufenden Zähler im Dateinamen.

Datenfelder der Sitemap-Vorlagen

Sitemap-Vorlagen (Templates) beschreiben die Struktur und den Inhalt einer Sitemap. Sie geben an, welche Ressourcen (z. B. Produkte, Kategorien oder Inhalte) exportiert werden und welche Felder dabei einbezogen werden sollen – etwa loc, lastmod, priority oder changefreq. Jede Sitemap muss auf einer Vorlage basieren. Änderungen an einer Vorlage beeinflussen alle Sitemaps, die darauf aufbauen. Auf diese Weise lassen sich verschiedene Exportkonfigurationen effizient wiederverwenden und zentral verwalten.
NameTypVerwendung
idIntegerEindeutige ID der Sitemap-Vorlage
nameStringName der Sitemap-Vorlage
contentStringDer Inhalt der Vorlage. Hier darf die Template-Sprache verwendet werden.
createdAtStringZeitpunkt der Erstellung
updatedAtStringZeitpunkt der letzten Aktualisierung

Beispiel

{
    "content": "{{ var $product = true }}\n{{ while($product) }}\n{{ $product = $wsProducts.loadNext() }}\n<url>\n  <loc>{{= $wsViews.url('Product', {productId: $product.id}, 'absolute') }}</loc>\n  <lastmod>2005-01-01</lastmod>\n  <changefreq>monthly</changefreq>\n  <priority>0.8</priority>\n</url>\n{{ /while }}",
    "createdAt": "2025-04-30 14:55:27",
    "id": 5,
    "name": "products",
    "updatedAt": "2025-04-30 14:55:27"
}

Methoden für Sitemaps

Über die folgenden Endpunkte können bestehende Sitemaps im System abgerufen, bearbeitet, erstellt oder gelöscht werden. Zusätzlich lassen sich Statusinformationen zum letzten Export sowie zugehörige Protokolle abfragen. Um diese Endpunkte zu nutzen, müssen entsprechende Berechtigungen für den Zugriff auf Sitemap-Daten vorhanden sein.

GET sitemaps

Mit dieser Methode können Sie eine Liste aller im System vorhandenen Sitemaps abrufen. Die Antwort enthält zu jeder Sitemap die zugehörigen Einstellungen sowie – falls bereits erfolgt – Informationen über erzeugte Dateien. Die Daten lassen sich nach verschiedenen Kriterien filtern oder sortieren, z. B. nach Subshop, Exportstatus oder Dateiname. Damit der Endpunkt verwendet werden kann, müssen entsprechende Berechtigungen zum Lesen von Sitemaps vorhanden sein.

Beispiel

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

Antwort

{
    "endReached": true,
    "items": [
        {
            "filelist": [],
            "sitemap": {
                "active": true,
                "createdAt": "2025-02-14 11:11:53",
                "exportAfterImport": false,
                "exportPlan": [
                    0
                ],
                "exportStatus": 0,
                "fileName": "123",
                "id": 1,
                "lastExportFinished": "0000-00-00 00:00:00",
                "lastExportStarted": "0000-00-00 00:00:00",
                "maxFileEntries": 0,
                "maxFileSize": 0,
                "name": "123",
                "options": {
                    "exportCharset": "utf-8"
                },
                "protocolId": 0,
                "subshopIds": [
                    "deutsch",
                    "english"
                ],
                "templateId": 1,
                "updatedAt": "2025-02-14 11:11:53",
                "writeIntoRobots": true
            },
            "templateName": "1233122"
        },
        ...
    ],
    "nextPageToken": "MQ",
    "totalCount": 2
}

Filterfelder

id, active, name, fileName, templateId, subshopIds, maxFileSize, maxFileEntries, exportAfterImport, exportStatus, lastExportStarted, lastExportFinished, createdAt, updatedAt

Sortierfelder

id, active, name, fileName, templateId, subshopIds, maxFileSize, maxFileEntries, exportAfterImport, exportStatus, lastExportStarted, lastExportFinished, createdAt, updatedAt

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Sitemaps.
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 sitemaps/

Mit dieser Methode kann ein einzelner Sitemap-Eintrag anhand seiner ID abgerufen werden. Die Antwort enthält sämtliche Konfigurationsdaten der Sitemap, einschließlich Subshop-Zuordnung, Exportstatus und Einstellungen zur Generierung. Damit der Endpunkt verwendet werden kann, müssen entsprechende Berechtigungen zum Lesen von Sitemaps vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/1

Antwort

{
    "active": true,
    "createdAt": "2025-02-14 11:11:53",
    "exportAfterImport": false,
    "exportPlan": [
        0
    ],
    "exportStatus": 0,
    "fileName": "123",
    "id": 1,
    "lastExportFinished": "0000-00-00 00:00:00",
    "lastExportStarted": "0000-00-00 00:00:00",
    "maxFileEntries": 0,
    "maxFileSize": 0,
    "name": "123",
    "options": {
        "exportCharset": "utf-8"
    },
    "protocolId": 0,
    "subshopIds": [
        "deutsch",
        "english"
    ],
    "templateId": 1,
    "updatedAt": "2025-02-14 11:11:53",
    "writeIntoRobots": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Sitemaps.
400 Bad Request”invalidValue”id ist ungültig.
404 Not FoundSitemap mit id={id} wurde nicht gefunden.

GET sitemaps//status

Mit dieser Methode kann der aktuelle Exportstatus einer bestimmten Sitemap abgefragt werden. Sie liefert pro Subshop den jeweiligen Status, etwa ob ein Export erfolgreich abgeschlossen wurde oder fehlgeschlagen ist. Obwohl der Endpunkt derzeit keine echten Prozesse verfolgt, stellt er strukturierte Statusdaten bereit. Damit der Endpunkt verwendet werden kann, müssen entsprechende Berechtigungen zum Lesen von Sitemaps vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/1/status

Antwort

[
    {
        "createdAt": "2025-02-21 08:43:42",
        "exportStatus": 2,
        "fileCount": 0,
        "fileName": "",
        "files": [],
        "id": 1,
        "lastExportError": "",
        "lastExportFinished": "0000-00-00 00:00:00",
        "lastExportStarted": "2025-02-21 08:47:58",
        "sitemapId": 1,
        "subshopId": "deutsch",
        "updatedAt": "2025-02-21 08:47:58"
    },
    {
        "createdAt": "2025-02-21 08:43:42",
        "exportStatus": 2,
        "fileCount": 0,
        "fileName": "",
        "files": [],
        "id": 2,
        "lastExportError": "",
        "lastExportFinished": "0000-00-00 00:00:00",
        "lastExportStarted": "2025-02-21 08:47:58",
        "sitemapId": 1,
        "subshopId": "english",
        "updatedAt": "2025-02-21 08:47:58"
    }
]

Fehlercodes

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

GET sitemaps/protocols

Mit dieser Methode kann eine Liste aller Protokolleinträge für Sitemaps abgerufen werden. Die Protokolle enthalten Metainformationen zu vergangenen Exportvorgängen – etwa wann eine Sitemap exportiert wurde, welcher Subshop betroffen war und welchen Status der Export hatte. Um diesen Endpunkt nutzen zu können, müssen entsprechende Berechtigungen zum Lesen von Sitemaps vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/protocols

Antwort

{
    "endReached": true,
    "items": [
        {
            "createdAt": "2025-02-21 08:43:42",
            "exportError": "",
            "exportFinished": "0000-00-00 00:00:00",
            "exportStarted": "0000-00-00 00:00:00",
            "exportStatus": 1,
            "id": 1,
            "sitemapName": "my sitemap",
            "subshopData": [
                {
                    "createdAt": "",
                    "exportError": "",
                    "exportFinished": "0000-00-00 00:00:00",
                    "exportStarted": "2025-02-21 08:43:42",
                    "exportStatus": 2,
                    "fileCount": 0,
                    "fileName": "123.xml",
                    "name": "",
                    "subshopId": "deutsch",
                    "updatedAt": "",
                    "writeIntoRobots": false
                },
                {
                    "createdAt": "",
                    "exportError": "",
                    "exportFinished": "0000-00-00 00:00:00",
                    "exportStarted": "2025-02-21 08:43:42",
                    "exportStatus": 2,
                    "fileCount": 0,
                    "fileName": "123.xml",
                    "name": "",
                    "subshopId": "english",
                    "updatedAt": "",
                    "writeIntoRobots": false
                }
            ],
            "templateName": "defaultTemplate",
            "updatedAt": "2025-02-21 08:43:47"
        },
        ...
    ],
    "nextPageToken": "NQ",
    "totalCount": 6
}

Filterfelder

id, sitemap, template, subshopIds, exportStatus, lastExportStarted, lastExportFinished, createdAt, updatedAt

Sortierfelder

id, sitemap, template, exportStatus, lastExportStarted, lastExportFinished, createdAt, updatedAt

Fehlercodes

FehlerTypGrund
401 UnauthorizedMan ist kein Administrator und hat keine Berechtigung zum Lesen von Sitemaps.
400 Bad Request”invalidValue”size ∉ [1;300]pageToken ist keine Zahl oder kleiner als 0.
400 Bad Request”invalidCharacters”size ist keine Ganzzahl.
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 ”:”.

POST sitemaps

Diese Methode ermöglicht das Erstellen eines neuen Sitemap-Eintrags mit allen relevanten Parametern wie Dateiname, Template-Zuweisung, Exportzeitpunkten und betroffenen Subshops. Damit diese Methode verwendet werden kann, müssen entsprechende Berechtigungen zum Erstellen von Sitemap-Daten vorhanden sein.

Beispiel

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

Request Body

{
    "name": "123",
    "fileName": "123",
    "writeIntoRobots": true,
    "active": true,
    "exportAfterImport": false,
    "templateId": 1,
    "subshopIds": [
        "deutsch",
        "english"
    ],
    "exportPlan": [
        0
    ],
    "maxFileSize": 0,
    "maxFileEntries": 0
}

Antwort

{
    "active": true,
    "createdAt": "",
    "exportAfterImport": false,
    "exportPlan": [
        0
    ],
    "exportStatus": 0,
    "fileName": "123",
    "id": 1,
    "lastExportFinished": "",
    "lastExportStarted": "",
    "maxFileEntries": 0,
    "maxFileSize": 0,
    "name": "123",
    "options": {
        "exportCharset": "utf-8"
    },
    "protocolId": 0,
    "subshopIds": [
        "deutsch",
        "english"
    ],
    "templateId": 1,
    "updatedAt": "",
    "writeIntoRobots": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Erstellen von Sitemaps.
400 Bad RequestRequest body konnte nicht geladen werden.
400 Bad Request”invalidValue”templateId ist ungültig.
400 Bad Request”invalidFormat”name oder fileName sind keine Strings.
active, exportAfterImport oder writeIntoRobots sind keine Booleans.
templateId, maxFileEntries oder maxFileSize sind keine Ganzzahlen.
exportPlan ist kein Array von Ganzzahlen.
subshopIds ist kein Array.
options ist kein Objekt.
options.exportCharset existiert und ist kein String.
400 Bad Request”missing”name, active, fileName, templateId, exportAfterImport, exportPlan, maxFileEntries, maxFileSize, writeIntoRobots oder subshopIds fehlen.
400 Bad Request”unknownDataField”Ein unbekanntes Feld wurde im Request Body übergeben.
400 Bad Request”duplicateEntry”Der neue Dateiname wurde schon verwendet.

PUT sitemaps/

Diese Methode ermöglicht das Aktualisieren einer bestehenden Sitemap anhand ihrer eindeutigen ID. Es können sowohl technische Parameter (z. B. Dateiname, Template-Zuordnung, Exportoptionen) als auch organisatorische Einstellungen (z. B. betroffene Subshops, Zeitpläne) geändert werden. Damit diese Methode verwendet werden kann, müssen entsprechende Berechtigungen zum Schreiben von Sitemap-Daten vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/1

Request Body

{
    "name": "my sitemap",
    "fileName": "123",
    "writeIntoRobots": true,
    "active": true,
    "exportAfterImport": false,
    "templateId": 1,
    "subshopIds": [
        "deutsch",
        "english"
    ],
    "maxFileEntries": 50000,
    "maxFileSize": 52428800,
    "exportPlan": [
        0
    ]
}

Antwort

{
    "active": true,
    "createdAt": "2025-02-14 11:11:53",
    "exportAfterImport": false,
    "exportPlan": [
        0
    ],
    "exportStatus": 0,
    "fileName": "123",
    "id": 1,
    "lastExportFinished": "0000-00-00 00:00:00",
    "lastExportStarted": "0000-00-00 00:00:00",
    "maxFileEntries": 50000,
    "maxFileSize": 52428800,
    "name": "my sitemap",
    "options": {
        "exportCharset": "utf-8"
    },
    "protocolId": 0,
    "subshopIds": [
        "deutsch",
        "english"
    ],
    "templateId": 1,
    "updatedAt": "2025-02-14 11:11:53",
    "writeIntoRobots": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Bearbeiten von Sitemaps.
400 Bad RequestRequest body konnte nicht geladen werden.
400 Bad Request”invalidValue”id ist ungültig.
templateId ist ungültig.
400 Bad Request”invalidFormat”name oder fileName sind keine Strings.
active, exportAfterImport oder writeIntoRobots sind keine Booleans.
templateId, maxFileEntries oder maxFileSize sind keine Ganzzahlen.
exportPlan ist kein Array von Ganzzahlen.
subshopIds ist kein Array.
options ist kein Objekt.
options.exportCharset existiert und ist kein String.
400 Bad Request”unknownDataField”Ein unbekanntes Feld wurde im Request Body übergeben.
400 Bad Request”duplicateEntry”Der neue Dateiname wurde schon verwendet.
404 Not FoundSitemap mit id={id} wurde nicht gefunden.

DELETE sitemaps/

Diese Methode löscht eine bestehende Sitemap anhand ihrer ID dauerhaft aus dem System. Damit dieser Endpunkt genutzt werden kann, müssen entsprechende Berechtigungen zum Löschen von Sitemap-Daten vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/1

Antwort

{
    "success": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Löschen von Sitemaps.
400 Bad Request”invalidValue”id ist ungültig.
404 Not FoundSitemap mit id={id} wurde nicht gefunden.

Methoden für Vorlagen

Die folgenden Endpunkte ermöglichen das Verwalten von Sitemap-Vorlagen, auf deren Basis einzelne Sitemaps erzeugt werden. Eine Vorlage definiert den inhaltlichen Aufbau einer Sitemap und enthält typischerweise eine Schleife, die durch relevante Shop-Daten iteriert. Über die API können Vorlagen abgerufen, erstellt, aktualisiert und gelöscht werden. Um diese Funktionen nutzen zu können, müssen entsprechende Berechtigungen zum Lesen und Schreiben von Sitemaps vorhanden sein.

GET sitemaps/templates

Mit diesem Endpunkt kann eine Liste aller im System verfügbaren Sitemap-Vorlagen abgerufen werden. Diese Vorlagen definieren die Struktur und den Inhalt der später exportierten Sitemaps und dienen als Grundlage für die Generierung der XML-Dateien. Zur Nutzung des Endpunkts müssen die entsprechenden Berechtigungen zum Lesen von Sitemap-Daten vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/templates/

Antwort

{
    "endReached": true,
    "items": [
        {
            "content": "tre",
            "createdAt": "2025-02-14 11:11:53",
            "id": 1,
            "name": "1233122",
            "updatedAt": "2025-02-14 11:11:53"
        },
        ...
    ],
    "nextPageToken": "MA",
    "totalCount": 1
}

Filterfelder

id, name, content, createdAt, updatedAt

Sortierfelder

id, name, content, createdAt, updatedAt

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Sitemaps.
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 sitemaps/templates/

Mit diesem Endpunkt kann eine einzelne Sitemap-Vorlage anhand ihrer ID geladen werden. Die Antwort enthält alle relevanten Informationen zur Vorlage, wie Name, Inhalt und Zeitstempel der letzten Änderungen. Für den Zugriff auf diesen Endpunkt sind entsprechende Berechtigungen zum Lesen von Sitemaps erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/templates/1

Antwort

{
    "content": "something",
    "createdAt": "2025-02-14 11:11:53",
    "id": 1,
    "name": "1233122",
    "updatedAt": "2025-02-14 11:11:53"
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Sitemaps.
400 Bad Request”invalidValue”id ist ungültig.
404 Not FoundSitemap-Vorlage mit id={id} wurde nicht gefunden.

POST sitemaps/templates

Mit diesem Endpunkt kann eine neue Sitemap-Vorlage erstellt werden. Die Vorlage enthält sowohl den Namen als auch das Template-Skript, mit dem die Inhalte der Sitemap generiert werden. Für das Anlegen neuer Vorlagen sind entsprechende Berechtigungen zum Erstellen von Sitemaps erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/templates

Request Body

{
    "name": "products",
    "content": "{{ var $product = true }}\n{{ while($product) }}\n{{ $product = $wsProducts.loadNext() }}\n<url>\n  <loc>{{= $wsViews.url('Product', {productId: $product.id}, 'absolute') }}</loc>\n  <lastmod>2005-01-01</lastmod>\n  <changefreq>monthly</changefreq>\n  <priority>0.8</priority>\n</url>\n{{ /while }}"
}

Antwort

{
    "content": "{{ var $product = true }}\n{{ while($product) }}\n{{ $product = $wsProducts.loadNext() }}\n<url>\n  <loc>{{= $wsViews.url('Product', {productId: $product.id}, 'absolute') }}</loc>\n  <lastmod>2005-01-01</lastmod>\n  <changefreq>monthly</changefreq>\n  <priority>0.8</priority>\n</url>\n{{ /while }}",
    "createdAt": "",
    "id": 5,
    "name": "products",
    "updatedAt": ""
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Erstellen von Sitemaps.
400 Bad RequestRequest body konnte nicht geladen werden.
400 Bad Request”invalidFormat”name oder content sind keine Strings.
400 Bad Request”invalidValue”content ist leer.
400 Bad Request”missing”name oder content fehlt.
400 Bad Request”unknownDataField”Ein unbekanntes Feld wurde im Request Body übergeben.
503 Service Unavailable”internalError”Das Erstellen vom Template ist fehlgeschlagen.

PUT sitemaps/templates/

Über diesen Endpunkt kann eine bestehende Sitemap-Vorlage aktualisiert werden. Dabei lassen sich sowohl der Name als auch der Inhalt der Vorlage ändern. Änderungen an Vorlagen wirken sich auf die darauf basierenden Sitemaps aus, sobald diese neu generiert werden. Für die Nutzung dieses Endpunkts sind die entsprechenden Berechtigungen zum Bearbeiten von Sitemaps erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/templates/1

Request Body

{
    "name": "1233122",
    "content": "something new"
}

Antwort

{
    "content": "something new",
    "createdAt": "2025-02-14 11:11:53",
    "id": 1,
    "name": "1233122",
    "updatedAt": "2025-02-14 11:11:53"
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Bearbeiten von Sitemaps.
400 Bad RequestRequest body konnte nicht geladen werden.
400 Bad Request”invalidValue”id ist ungültig.
content ist leer.
400 Bad Request”invalidFormat”name oder content sind keine Strings.
400 Bad Request”unknownDataField”Ein unbekanntes Feld wurde im Request Body übergeben.
404 Not FoundDie Vorlage wurde nicht gefunden, oder das Aktualisieren ist fehlgeschlagen.

DELETE sitemaps/templates/

Dieser Endpunkt ermöglicht das Löschen einer bestehenden Sitemap-Vorlage anhand ihrer ID. Das Löschen ist nur möglich, wenn die entsprechende Vorlage existiert. Für diese Aktion müssen Berechtigungen zum Löschen von Sitemaps vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/templates/1

Antwort

{
    "success": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Löschen von Sitemaps.
400 Bad Request”invalidValue”id ist ungültig.
409 ConflictDie Vorlage wird noch von einer Sitemap verwendet und kann nicht gelöscht werden.
404 Not FoundVorlage mit id={id} wurde nicht gefunden.

Methoden für die Generierung

Diese Methoden ermöglichen die gezielte Steuerung der Generierung von Sitemaps. Je nach Anwendungsfall können einzelne Sitemaps direkt erzeugt, geplante Generierungen angestoßen oder Sitemaps nach dem Import von Produktdaten neu erstellt werden. Die Ausführung erfordert jeweils entsprechende Berechtigungen zum Veröffentlichen von Sitemaps.

POST sitemaps/generate/hour/

Diese Methode startet die Generierung von Sitemaps, die zu einer bestimmten Stunde generiert werden müssen. Der Pfadparameter {hour} bestimmt die Stunde im 24-Stunden-Format (0 bis 23). Die Generierung erfolgt asynchron, das heißt, die Antwort enthält keine unmittelbaren Ergebnisse. Um diesen Endpunkt verwenden zu können, sind entsprechende Berechtigungen zum Veröffentlichen von Sitemaps erforderlich.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/generate/hour/12

Antwort

{
    "success": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Veröffentlichen von Sitemaps.
404 Not FoundDer Parameter hour fehlt oder ist ungültig.
503 Service Unavailable”serviceUnavailable”FeedBuilderUrl existiert nicht, oder die Generierung ist fehlgeschlagen.

POST sitemaps/generate/import

Mit diesem Endpunkt werden alle Sitemaps generiert, die für den Export nach einem erfolgreichen Import von Produktdaten vorgesehen sind. Die Ausführung erfolgt asynchron und ohne Ergebnisinhalt in der Antwort. Um diesen Endpunkt verwenden zu können, müssen entsprechende Berechtigungen zum Veröffentlichen von Sitemaps vorhanden sein.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/generate/import

Antwort

{
    "success": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Veröffentlichen von Sitemaps.
503 Service Unavailable”serviceUnavailable”FeedBuilderUrl existiert nicht, oder die Generierung ist fehlgeschlagen.

POST sitemaps//generate

Dieser Endpunkt startet die Generierung einer bestimmten Sitemap, die über ihre ID referenziert wird. Die Generierung erfolgt asynchron – das bedeutet, dass die Antwort keine fertige Datei zurückliefert, sondern lediglich den Start des Prozesses bestätigt. Um den Endpunkt nutzen zu können, sind entsprechende Berechtigungen zum Veröffentlichen von Sitemaps erforderlich. Optional kann über den Query-Parameter subshopId die Generierung auf bestimmte Subshops eingeschränkt werden. Der Parameter kann mehrfach angegeben werden, um mehrere Subshops auszuwählen.

Beispiel

https://www.<ihr-shop>.de/admin/api/v1/sitemaps/1/generate?subshopId=deutsch&subshopId=english

Antwort

{
    "success": true
}

Fehlercodes

FehlerTypGrund
401 UnauthorizedNicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Veröffentlichen von Sitemaps.
400 Bad Request”invalidValue”id ist ungültig.
404 Not FoundSitemap mit id={id} wurde nicht gefunden.
409 ConflictSitemap ist inaktiv oder der Generierungsprozess wurde bereits gestartet.
503 Service Unavailable”serviceUnavailable”FeedBuilderUrl existiert nicht, oder die Generierung ist fehlgeschlagen.

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.