API

Zalando API: Artikel, Größen und Preise als JSON

Ein Hinweis vorweg, weil die Suche danach oft dort landet: Zalando veröffentlicht öffentlich seine API-Design-Richtlinien. Das ist ein Styleguide für Entwickler, kein Zugang zu Artikeldaten. Diese Schnittstelle hier liest, was der Shop öffentlich zeigt — Artikel, Preise, Größen und Verfügbarkeit — und gibt es als JSON zurück.

Endpunkte

endpointWas zurückkommtPflicht
searchStichwortsuche: Produktkarten mit Name, Marke, SKU, Preis und Farbe.q
categoryEine Kategorie durchgehen (etwa herrenschuhe-sneaker) mit denselben Karten.category
saleDas Outlet-Grid: reduzierte Artikel mit Originalpreis, aktuellem Preis und Rabatt.alle optional
variantsAlle Größenvarianten eines Artikels mit Verfügbarkeits-Flag. Für Bestandsbeobachtung der eigentliche Endpunkt.alle optional
productDer vollständige Artikel über URL oder SKU: Name, Marke, Preis, Farbe und Galerie.alle optional
attributesDie Attributgruppen eines Artikels: Materialzusammensetzung und Pflegehinweise.alle optional
similarÄhnliche Artikel aus den Empfehlungen der Produktseite.alle optional
reviewsKundenbewertungen und die Gesamtnote, sofern für den Artikel vorhanden.alle optional
brandsDie Marken, die in einer bestimmten Liste tatsächlich vorkommen.alle optional
categoriesDie obersten Kategorie-Links einer Länder-Storefront, live von deren eigener Navigation gelesen.alle optional
filtersWelche Sortierungen und Filter für Listen verfügbar sind, mit den zulässigen Werten.alle optional
new_arrivalsDie neuesten Artikel einer Kategorie, nach Neuheiten sortiert.alle optional

Jeder Aufruf wird in Credits abgerechnet. Fehlgeschlagene und blockierte Aufrufe sind kostenlos.

Funktionierendes Beispiel

Bei Mode ist die Größe die eigentliche Frage. Ein Artikel gilt als 'verfügbar', solange irgendeine Größe lieferbar ist — wer Bestände beobachtet, braucht `variants` und nicht die Produktkarte.

Anfrage
curl -X POST https://api.reefapi.com/zalando/v1/variants \
  -H "x-api-key: IHR_SCHLUESSEL" \
  -H "content-type: application/json" \
  -d '{"sku": "..."}'
Antwort (gekürzt)
{
  "ok": true,
  "data": {
    "variants": [
      { "size": "42", "in_stock": true },
      { "size": "43", "in_stock": false }
    ]
  },
  "meta": { "record_count": 8, "cache_hit": false, "mode": "live" }
}

Statt eines eigenen Zalando-Scrapers

Einen Zalando-Scraper zu schreiben läuft zunächst. Unangenehm wird es später: ändert sich der Aufbau der Produktkacheln, liefert der Parser eine leere Liste statt eines Fehlers, und bei längeren Läufen greift der Bot-Schutz mitten im Durchgang.

Bei Mode kommt ein zweiter Punkt dazu, an dem eigene Scraper oft still danebenliegen: Verfügbarkeit ist größenabhängig. Wer nur die Produktkarte liest, hält einen Artikel für lieferbar, obwohl die gesuchte Größe seit Tagen fehlt.

Für eine einmalige Auswertung ist das eigene Skript günstiger, das sagen wir offen. Für eine Bestandsbeobachtung, die täglich läuft, zahlt man für die Ausfälle.

Grenzen und ehrliche Hinweise

  • Das ist nicht die offizielle Zalando-Partnerschnittstelle, und wir haben keine Partnerschaft mit Zalando. Die öffentlich bekannten 'Zalando API Guidelines' sind ein Styleguide und kein Datenzugang.
  • Jede Länder-Storefront hat eigenes Sortiment und eigene Preise.
  • Bewertungen kommen nur, wenn der Artikel welche hat; eine leere Liste ist eine Antwort, kein Fehler.
  • Kein Cache: jeder Aufruf zeigt den Stand zum Zeitpunkt der Anfrage.