API für Entwickler

Alle Daten des Plugins sind über die Admin-API von Shopware erreichbar. Eine Store-API gibt es nicht. Zur Anmeldung nutzt du eine Integration (siehe Anbindung an andere Systeme) mit POST /api/oauth/token und grant_type=client_credentials.

Entitäten

EntitätInhalt
iwv-dpp-passportPass mit resolverKey, sourceType, sourceUrl, status, granularity, gtin, Gültigkeit, productManufacturerId (Hersteller-Rückfallebene) und den übersetzten Feldern title, summary, content (HTML), accessNote
iwv-dpp-passport-productZuordnung: passportId, productId, isOverride, priority
iwv-dpp-field-profileFeldprofile (lesen)
iwv-dpp-field-valueWerte der Profilfelder: passportId, fieldKey, languageId, valueType (text oder url), value
iwv-dpp-audit-logProtokoll (nur lesen)

Die Standard-Endpunkte von Shopware gelten, zum Beispiel POST /api/search/iwv-dpp-passport oder PATCH /api/iwv-dpp-passport/{id}. Eine doppelte Zuordnung desselben Produkts beantwortet die API mit 409 IWV_DPP__PASSPORT_ALREADY_ATTACHED.

Beispiel: Feldwert für einen Pass setzen

POST /api/iwv-dpp-field-value
{
  "passportId": "<Pass-ID>",
  "fieldKey": "repair_information",
  "languageId": "<Sprach-ID>",
  "valueType": "text",
  "value": "Ersatzteile sind zehn Jahre lang beim Hersteller erhältlich."
}

Zusätzliche Endpunkte

Methode und PfadZweck
GET /api/_action/iwv-dpp/product-passport?productId=Welcher Pass für ein Produkt gilt und woher (product, parent, manufacturer)
GET /api/_action/iwv-dpp/coverageKennzahlen der Seite Bereitschaft
GET /api/_action/iwv-dpp/coverage/missing?page=&limit=Produkte ohne Pass
GET /api/_action/iwv-dpp/resolver-keyNeuen Code erzeugen
POST /api/_action/iwv-dpp/import/dry-runCSV prüfen (Datei als file)
POST /api/_action/iwv-dpp/import/commitCSV importieren
GET /api/_action/iwv-dpp/exportCSV-Export
GET /api/_action/iwv-dpp/export/carriersQR-Codes als ZIP

Öffentliche Adressen

AdresseAntwort
/dpp/{CODE}Passseite (HTML). Mit ?format=jsonld oder dem Header Accept: application/ld+json JSON-LD
/dpp/{CODE}.jsonldJSON-LD nach schema.org Product
/dpp/{CODE}/carrier.svg, /dpp/{CODE}/carrier.pngQR-Code
/dpp/01/{GTIN}, /dpp/01/{GTIN}/10/{Charge}Pass zu einer GTIN, optional mit Charge

Unbekannte Codes liefern 404.