API-Referenz SEO-URLs

API-Referenz SEO-URLs

 

Mit dem Endpunkt seo/urls/ stellen wir Ihnen eine Schnittstelle bereit, mit der Sie technische Namen der Shop-Seiten verbergen können und stattdessen klarere Bezeichnungen zu benutzen. Diese können manuell gesetzt oder nach einem Schema generiert werden.

Inhaltsverzeichnis:


1. Unterstützte Methoden

Angabe aller unterstützten Methoden.

Befehl/Info

Endpunkte

GET

POST

PUT

DELETE

Befehl/Info

Endpunkte

GET

POST

PUT

DELETE

SEO-URLs der Shop-Seiten

seo/urls/

 

2. Datenfelder

Name

Typ

Verwendung

Name

Typ

Verwendung

path

String

Pfad zur Ausgabe der URL

main

Boolean

Gibt an, ob die URL in der aktuellen Version des Shops verwendet wird.

manual

Boolean

Gibt an, ob die URL manuell gesetzt wurde.

name (nur bei Kategorien)

String

Der Name der Kategorie

resourceIdentifier

String

Seitenname oder Identifikator für eine Kategorie/ein Produkt

updatedAt

String

Zeitpunkt der letzten Aktualisierung (ISO 8601-Format, UTC)

createdAt

String

Zeitpunkt der Erstellung (ISO 8601-Format, UTC)

Beispiel (Produkt):

{ "createdAt": "2024-06-13T12:12:53.000Z", "main": 1, "manual": 0, "path": "/Bekleidung/Damen_NOOS_High-Waist_Curvy_Skinny_Jeans", "resourceIdentifier": "100-69659", "updatedAt": "2024-06-13T12:12:53.000Z" }

Beispiel (Kategorie):

{ "createdAt": "2025-04-28T11:20:45.000Z", "main": 1, "manual": 1, "name": "Elektronik & Computer", "path": "/Elektronik-Computer", "resourceIdentifier": "101-64607", "updatedAt": "2025-04-28T11:20:45.000Z" }

Beispiel (Shop-Seite):

{ "createdAt": "2025-05-06T08:16:05.000Z", "main": 1, "manual": 1, "path": "/checkout", "resourceIdentifier": "checkout.htm", "updatedAt": "2025-05-06T08:16:05.000Z" }

 

3. Verwendung der Methoden

In diesem Abschnitt werden die verfügbaren Endpunkte zur Verwaltung von SEO-URLs beschrieben. Sie ermöglichen das Abfragen, Erzeugen, Überprüfen, Aktualisieren und Löschen von SEO-URLs für Kategorien, Produkte und Templates im Shop-System.

Die Nutzung dieser Methoden erfordert entsprechende Berechtigungen für das Lesen oder Bearbeiten von SEO-Daten.

 

3.1 GET seo/urls/generate/status

Dieser Endpunkt dient dazu, den aktuellen Status der Generierung von SEO-URLs zu überprüfen. Er gibt an, ob aktuell ein Generierungsprozess läuft ("running": true) oder bereits abgeschlossen ist ("running": false). Dies ist insbesondere hilfreich, wenn nach dem Start eines Generierungsvorgangs auf dessen Abschluss gewartet werden soll, bevor weitere Schritte erfolgen.

Für die Nutzung dieses Endpunkts sind entsprechende Leseberechtigungen für SEO-Daten erforderlich.

Beispiel:

https://www.<ihr-shop>.de/admin/api/v1/seo/urls/generate/status

Antwort:

{ "running": true }

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von SEO-Daten.

 

3.2 GET seo/urls/categories

Der Endpunkt GET seo/urls/categories gibt eine Liste von SEO-URLs für Kategorien zurück.

Die Liste kann über Sortier- und Filterparameter eingeschränkt werden. Der optionale Parameter size bestimmt die Anzahl der zurückgegebenen Ergebnisse und muss im Bereich von 1 bis 300 liegen.

Für die Nutzung dieses Endpunkts sind entsprechende Berechtigungen zum Lesen von SEO-Daten erforderlich.

Beispiel:

Das Beispiel ruft alle SEO-URLs, die zurzeit im Shop verwendet werden und nicht nur gültig sind (main = 1), von Kategorien ab und sortiert die Ergebnisse aufsteigend nach dem Feld resourceIdentifier.

https://www.<ihr-shop>.de/admin/api/v1/seo/urls/categories?sort=resourceIdentifier:asc&filter_eq[main]=1

Antwort:

{ "endReached": false, "items": [ { "createdAt": "2024-11-15T10:20:10Z", "index": 0, "name": "Neue Kategorie", "path": "/Neue_Kategorie-154", "resourceIdentifier": "1000-85809", "status": "test", "updatedAt": "2024-11-15T10:20:10Z" }, ... ], "nextPageToken": "MTAw", "totalCount": 262 }

Filterfelder:

createdAt, updatedAt, resourceIdentifier, path, manual, main

Sortierfelder:

createdAt, updatedAt, resourceIdentifier, path, main

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von SEO-Daten.

400 Bad Request

"invalidValue"

size ∉ [1;300]
pageToken ist ungültig.

400 Bad Request

"invalidCharacters"

size ist keine Ganzzahl.
sort ∉ {"asc", "desc"}
Ein Filterwert ist ungültig.

400 Bad Request

"syntaxError"

sort enthält mehr als einen oder keinen ":".

400 Bad Request

"unknownDataField"

Ein Filter- oder Sortierfeld ist ungültig.

400 Bad Request

"unknownOperation"

Ein Filtertyp ist ungültig.

 

3.3 GET seo/urls/products

Dieser Endpunkt liefert eine Liste aller SEO-URLs von Produkten. Mithilfe von optionalen Parametern können die Ergebnisse gefiltert und sortiert werden, z. B. nach Erstellungsdatum oder nach Produkt-ID. Der Parameter size steuert die Anzahl der Einträge pro Seite und muss im Bereich 1–300 liegen.

Für den Zugriff werden entsprechende Leserechte für SEO-Daten benötigt.

Beispiel:

https://www.<ihr-shop>.de/admin/api/v1/seo/urls/products?sort=resourceIdentifier:asc

Antwort:

{ "endReached": true, "items": [ { "createdAt": "2024-11-15T10:20:10Z", "index": 1, "name": "Something", "path": "/MyCategory/Something", "resourceIdentifier": "100-41232", "status": "never", "updatedAt": "2024-11-15T10:20:10Z" }, ... ], "nextPageToken": "Mzg", "totalCount": 39 }

Filterfelder:

createdAt, updatedAt, resourceIdentifier, path, manual, main

Sortierfelder:

createdAt, updatedAt, resourceIdentifier, path, main

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von SEO-Daten.

400 Bad Request

"invalidValue"

size ∉ [1;300]
pageToken ist ungültig.

400 Bad Request

"invalidCharacters"

size ist keine Ganzzahl.
sort ∉ {"asc", "desc"}
Ein Filterwert ist ungültig.

400 Bad Request

"syntaxError"

sort enthält mehr als einen oder keinen ":".

400 Bad Request

"unknownDataField"

Ein Filter- oder Sortierfeld ist ungültig.

400 Bad Request

"unknownOperation"

Ein Filtertyp ist ungültig.

 

3.4 GET seo/urls/templates

Dieser Endpunkt ruft eine Liste der SEO-URLs für allgemeine Shop-Seiten (z. B. Login, Registrierung) ab. Die Ergebnisse lassen sich über optionale Parameter filtern und sortieren. Der Parameter size legt die maximale Anzahl an Ergebnissen pro Seite fest und muss im Bereich von 1 bis 300 liegen.

Für den Zugriff sind entsprechende Leserechte für SEO-Daten erforderlich.

Beispiel:

https://www.<ihr-shop>.de/admin/api/v1/seo/urls/templates?sort=resourceIdentifier:desc

Antwort:

{ "endReached": true, "items": [ { "createdAt": "2025-01-25T08:30:23Z", "index": 0, "path": "", "resourceIdentifier": "login.htm", "updatedAt": "2025-01-25T08:30:23Z" } ], "nextPageToken": "MA", "totalCount": 1 }

Filterfelder:

createdAt, updatedAt, resourceIdentifier, path, manual, main

Sortierfelder:

createdAt, updatedAt, resourceIdentifier, path, main

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von SEO-Daten.

400 Bad Request

"invalidValue"

size ∉ [1;300]
pageToken ist ungültig.

400 Bad Request

"invalidCharacters"

size ist keine Ganzzahl.
sort ∉ {"asc", "desc"}
Ein Filterwert ist ungültig.

400 Bad Request

"syntaxError"

sort enthält mehr als einen oder keinen ":".

400 Bad Request

"unknownDataField"

Ein Filter- oder Sortierfeld ist ungültig.

400 Bad Request

"unknownOperation"

Ein Filtertyp ist ungültig.

 

3.5 POST seo/urls/check

Dieser Endpunkt prüft, ob ein bestimmter SEO-Pfad (seoPath) bereits im System verwendet wird und liefert zusätzliche Informationen zur zugehörigen Ressource zurück. Damit lassen sich etwa potenzielle Kollisionen vor dem Speichern neuer URLs vermeiden.

Die Nutzung erfordert Schreibrechte für SEO-Daten.

Beispiel:

https://www.<ihr-shop>.de/admin/api/v1/seo/urls/check

Request Body:

{ "seoPath": "/neue_kategorie-176/" }

Antwort:

{ "available": false, "main": true, "resourceIdentifier": "1001-26578", "viewController": "Category" }

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Schreiben von SEO-Daten.

400 Bad Request

 

Request body konnte nicht geladen werden.

400 Bad Request

"missing"

seoPath wurde nicht übergeben.

400 Bad Request

"invalidFormat"

seoPath ist kein String.

 

3.6 POST seo/urls/generate

URLs werden erneut generiert. Optionaler Parameter deleteOld bestimmt, ob alle zurzeit nicht genutzte, aber noch gültige URLs gelöscht werden. Ob eine URL im Shop genutzt wird und nicht einfach nur gültig ist, bestimmt das Feld main.

Beispiel:

https://www.<ihr-shop>.de/admin/api/v1/seo/urls/generate

Request Body:

{ "deleteOld": false }

Antwort:

{}

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Erstellen von SEO-Daten.

400 Bad Request

 

Request body konnte nicht geladen werden.

 

3.7 POST seo/urls/reset

Dieser Endpunkt startet die (Re-)Generierung einer SEO-URL. Der alte Wert wird nicht gelöscht.

Die Nutzung des Endpunkts erfordert Schreibrechte für SEO-Daten.

Beispiel:

https://www.<ihr-shop>.de/admin/api/v1/seo/urls/reset

Request Body:

{ "viewControllerId": "Product", "resourceIdentifier": "139-55414" }

Antwort:

{ "success": true, "mainPath": "myURL" }

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Schreiben von SEO-Daten.

400 Bad Request

 

Request body konnte nicht geladen werden.

400 Bad Request

"missing"

viewControllerId oder resourceIdentifier wurden nicht übergeben.

 

3.8 PUT seo/urls

Mit diesem Endpunkt können Sie eine neue SEO-URL erstellen oder eine bestehende URL aktualisieren. Dabei muss angegeben werden, welchem Controller (viewControllerId) und welchem Objekt (resourceIdentifier) die URL zugeordnet ist. Die URL wird über optimalPathEsc definiert.

Der Endpunkt erfordert Schreibrechte für SEO-Daten.

Beispiel:

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

Request Body:

{ "viewControllerId": "Product", "resourceIdentifier": "100-41232", "optimalPathEsc": "/NewCategory/Something" }

Antwort:

{ "success": true, "mainPath": "/NewCategory/Something" }

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Schreiben von SEO-Daten.

400 Bad Request

 

Request body konnte nicht geladen werden.

400 Bad Request

"missing"

viewControllerId, resourceIdentifier oder optimalPathEsc wurden nicht übergeben.

 

3.9 DELETE seo/urls

Mit diesem Endpunkt kann eine bestehende SEO-URL entfernt werden. Nach dem Löschen ist die URL nicht mehr erreichbar, und es erfolgt keine automatische Weiterleitung mehr.

Der Endpunkt setzt Löschberechtigungen für SEO-Daten voraus.

Beispiel:

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

Request Body:

{ "seoPath": "/Neue_Kategorie/Neues_Produkt-7" }

Antwort:

{ "success": true }

Fehlercodes:

Fehler

Typ

Grund

Fehler

Typ

Grund

401 Unauthorized

 

Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Löschen von SEO-Daten oder man versucht, die aktuelle URL zu löschen.

400 Bad Request

 

Request body konnte nicht geladen werden.

400 Bad Request

"missing"

seoPath wurde nicht übergeben.

404 Not found

 

Die URL wurde nicht gefunden.

 

4. 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.

© 2025 WEBSALE AG | Impressum | Datenschutz