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 |
|---|---|---|---|---|---|
SEO-URLs der Shop-Seiten | seo/urls/ |
|
2. Datenfelder
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/statusAntwort:
{
"running": true
}Fehlercodes:
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]=1Antwort:
{
"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 |
|---|---|---|
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" |
|
400 Bad Request | "invalidCharacters" |
|
400 Bad Request | "syntaxError" |
|
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:ascAntwort:
{
"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 |
|---|---|---|
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" |
|
400 Bad Request | "invalidCharacters" |
|
400 Bad Request | "syntaxError" |
|
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:descAntwort:
{
"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 |
|---|---|---|
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" |
|
400 Bad Request | "invalidCharacters" |
|
400 Bad Request | "syntaxError" |
|
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/checkRequest Body:
{
"seoPath": "/neue_kategorie-176/"
}Antwort:
{
"available": false,
"main": true,
"resourceIdentifier": "1001-26578",
"viewController": "Category"
}Fehlercodes:
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" |
|
400 Bad Request | "invalidFormat" |
|
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/generateRequest Body:
{
"deleteOld": false
}Antwort:
{}Fehlercodes:
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/resetRequest Body:
{
"viewControllerId": "Product",
"resourceIdentifier": "139-55414"
}Antwort:
{
"success": true,
"mainPath": "myURL"
}Fehlercodes:
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" |
|
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 |
|---|---|---|
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" |
|
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 |
|---|---|---|
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" |
|
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