Marketplace Redirect: Admin API
Admin API von Marketplace Redirect: Links per Import oder Automation anlegen, ändern und löschen, Felder, Antwortcodes und Filter.
Marketplace Redirect: Admin API
Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.
Über die Admin API pflegst du die gespeicherten Links, zum Beispiel per Import oder Automation. Alle Operationen brauchen ein Admin-Token mit ROLE_API_ACCESS. GraphQL ist für diese Ressource nicht freigegeben.
Operationen
| Operation | Endpunkt |
|---|---|
Liste (Filter ?product=/api/v2/admin/products/{code}) |
GET /api/v2/admin/product-marketplace-links |
| Lesen | GET /api/v2/admin/product-marketplace-links/{id} |
| Anlegen | POST /api/v2/admin/product-marketplace-links |
| Ändern | PUT /api/v2/admin/product-marketplace-links/{id} |
| Löschen | DELETE /api/v2/admin/product-marketplace-links/{id} |
{
"product": "/api/v2/admin/products/my-book",
"type": "amazon",
"reference": "3836244764",
"amazonDomain": "de"
}
Felder
| Feld | Regeln |
|---|---|
product |
IRI des Produkts. Beim Anlegen Pflicht, beim Ändern wird es ignoriert (ein Link bleibt bei seinem Produkt). Ein Produkt hat höchstens einen Link |
type |
amazon oder shopware_store. Beim Anlegen ohne Angabe gilt amazon |
reference |
amazon: die ASIN, genau 10 Buchstaben und Ziffern. shopware_store: eine Produkt-URL https://store.shopware.com/.... Leerzeichen am Rand werden entfernt |
amazonDomain |
Nur bei amazon: de, com, co.uk, fr, it, es, nl, pl, se oder ca. null nimmt die Standard-Domain. Bei jedem anderen Typ muss es null sein |
Antwortcodes
| Code | Wann |
|---|---|
| 201 | Link angelegt (POST) |
| 204 | Link gelöscht (DELETE) |
| 401 / 403 | Das Token fehlt oder hat nicht die Rolle ROLE_API_ACCESS |
| 404 | GET, PUT oder DELETE mit einer unbekannten ID |
| 422 | Ein zweiter Link für ein Produkt, eine Referenz, die nicht zum Typ passt, eine unbekannte Domain, eine Domain an einem Store-Link, ein fehlendes Produkt. Die Verstöße stehen je Feld in der Antwort |
| 400 | Ein unbekannter type oder eine unbekannte Produkt-IRI |
Die Regeln für Referenz und Domain sind dieselben wie im Produktformular. Einziger Unterschied: Eine Domain an einem Store-Link verwirft das Formular ohne Meldung, die API lehnt sie mit 422 ab. Legen zwei Anfragen gleichzeitig einen Link für dasselbe Produkt an, bekommt die Anfrage, die zu spät kommt, ebenfalls ein 422 und keinen Datenbankfehler.
Filter und Teil-Updates
Der Filter product nimmt eine oder mehrere Produkt-IRIs (product[]=...&product[]=...). Ein Wert, der kein existierendes Produkt benennt (unbekannter Code, keine IRI, leerer Wert), trifft nichts: Die Liste ist leer, die Anfrage gelingt trotzdem. Bei mehreren Werten leert eine unbekannte IRI die ganze Liste, egal an welcher Stelle sie steht.
PUT ist ein Teil-Update: Ein Feld, das du weglässt, behält seinen gespeicherten Wert. Wechselst du einen Link von amazon zu shopware_store, sende "amazonDomain": null zusammen mit der neuen Referenz mit. Löschst du einen Link, hat das Produkt wieder den normalen Warenkorb-Button.
Beispiel: Link anlegen und wieder entfernen
curl -X POST "https://shop.example.com/api/v2/admin/product-marketplace-links" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"product":"/api/v2/admin/products/my-book","reference":"3836244764"}'
curl -X DELETE "https://shop.example.com/api/v2/admin/product-marketplace-links/12" \
-H "Authorization: Bearer $TOKEN"
Ohne type legt der erste Aufruf einen Amazon-Link mit der Standard-Domain an.