Shopping · Otto
Otto Produktdaten API
Die Otto Produktdaten API liefert Ihnen Live-Daten von Otto in dem Moment, in dem Sie fragen, als saubere, strukturierte Daten – bereit für Ihre eigene App, eine Tabelle oder einen KI-Assistenten. Kein Scraping, nichts zu warten.
100 kostenlose Anfragen pro Monat · keine Kreditkarte · ein API-Schlüssel für alle Plattformen
Das Wichtigste in Kürze
Aktualisiert am
Hinweis zum Status: otto.de blockiert derzeit automatisierte Zugriffe auf Produktseiten, daher antwortet /ott/otto-lookup-product mit 502 (nicht berechnet), bis das behoben ist; die Such- und Bewertungs-Endpoints für Otto funktionieren normal. otto.de ist Deutschlands zweitgrößter Onlineshop, und seine Produktseiten sind um Varianten herum aufgebaut: Ein Laufschuh existiert in zwölf Größen und vier Farben, ein Sofa in drei Stoffen und zwei Sitzrichtungen, und jede Kombination hat eine eigene variationId, einen eigenen Preis und ein eigenes Lieferversprechen. Die Otto Produktdaten API von everydata.io ruft eine Produktseite per URL ab – einschließlich des Fragments #variationId – und liefert die gewählte Variante zusammen mit allen Schwestervarianten als ein JSON-Dokument. So müssen Sie die Matrix nie aus einer Browsersitzung rekonstruieren.
- Plattform
- Otto
- Haupt-Endpoint
- /otto-lookup-product
- Kontingent pro Aufruf
- 2 Anfragen
- Kostenloser Tarif
- 100 Anfr. / Monatdanach ab 30 € / Monat
Otto-Daten, sofort nutzbar
Die oberste Ebene bildet die deutsche Produktseite ab. productTitle und manufacturer liefern Name und Marke, productDescription den Werbetext, features die Bullet Points und productDetails die Spezifikationstabelle als Schlüssel/Wert-Paare mit deutschen Bezeichnungen wie Größe, Farbe oder Material. imageUrlList enthält die Asset-URLs von i.otto.de, mainImage das Hauptbild.
Preise kommen als Zahlen in EUR: price ist der Betrag, den Kunden für die gewählte Variante zahlen, retailPrice der durchgestrichene Referenzpreis (110 bei einem Schuh, der aktuell 69,99 kostet), priceSaving das Rabatt-Badge, wie Otto es anzeigt („-36%“), und shippingPrice der Lieferzuschlag, der bei Möbeln und Großgeräten ins Gewicht fällt. warehouseAvailability enthält Ottos Bestandssatz, zum Beispiel „lieferbar - in 2-3 Werktagen bei dir“.
variations gruppiert jede Dimension (Größe, Farbe) mit ihren Werten, und jeder Wert nennt seine eigene asin/variationId, price, retailPrice, available und ein selected-Flag. Genau das brauchen Sie, um zu wissen, dass Größe 36 ausverkauft ist, während Größe 39 zu einem anderen Preis vorrätig ist.
- productTitle, manufacturer, productDescription, features und die Spezifikationstabelle productDetails
- price, retailPrice, priceSaving und shippingPrice als numerische EUR-Felder plus der Satz in warehouseAvailability
- productId und variationId des gewählten Artikels, passend zur übergebenen URL
- Vollständige Variantenmatrix mit Preis, Verfügbarkeit und selected-Flag pro Wert
- imageUrlList und mainImage von i.otto.de, bereit für Ihr eigenes CDN oder Ihre Produktkarten
- productRating und countReview als Gesamtwerte, wie sie oben auf der Seite stehen
- Echtzeitabruf bei jedem Aufruf – kein gemeinsamer Cache zwischen Ihnen und otto.de
Was Teams damit bauen
Katalog-Anreicherung für DACH
Übernehmen Sie deutsche Titel, Bullet Points, Spezifikationstabellen und Bilder per Otto-URL in Ihr PIM. Da die Bezeichnungen genau so zurückkommen, wie Otto sie anzeigt, können deutschsprachige Shops sie ohne Übersetzung verwenden.
Sortiments- und Verfügbarkeits-Tracking
Marken und Agenturen rufen ihre otto.de-Angebote regelmäßig ab, um zu sehen, welche Größen oder Farben als available: false markiert sind, wie sich die Variantenmatrix im Lauf der Saison ändert und ob Bilder ausgetauscht wurden.
Wettbewerbsanalyse auf Variantenebene
Vergleichen Sie das Preis-Array pro Wert beim Sofa oder bei der Matratze eines Wettbewerbers über Stoffe und Größen hinweg – Otto bepreist die Varianten eines Produkts häufig unterschiedlich.
Vergleichs- und Affiliate-Content
Zeigen Sie Live-Produktkarten mit Bewertung, Anzahl der Bewertungen, Rabatt-Badge und Lieferzeile und verlinken Sie direkt auf die variationId, die Ihr Leser angeklickt hat.
Beispielanfrage und -antwort
Kopieren Sie die URL aus dem Browser. Otto kodiert das Produkt als /p/<slug>-C<productId>/ und hängt #variationId=<id> an, sobald Sie eine Größe oder Farbe wählen; behalten Sie dieses Fragment, wenn Sie genau diese Variante möchten, und lassen Sie es weg, um Ottos Standardauswahl zu erhalten. Der Endpoint ist GET /ott/otto-lookup-product mit einem einzigen Parameter url.
GET /ott/otto-lookup-product
curl "https://api.everydata.io/ott/otto-lookup-product?url=https%3A%2F%2Fwww.otto.de%2Fp%2Freebok-astroride-trail-gt-x-2-0-laufschuh-damen-laufschuh-C887844716%2F%23variationId%3D887846268" \
-H "x-api-key: YOUR_API_KEY"Antwort (gekürzt)
{
"responseStatus": "PRODUCT_FOUND_RESPONSE",
"responseMessage": "Product successfully found!",
"productTitle": "Reebok Astroride Trail GT-X 2.0 Laufschuh Damen Laufschuh",
"manufacturer": "Reebok",
"productId": "887844716",
"variationId": "887846268",
"countReview": 345,
"productRating": "4.5",
"warehouseAvailability": "lieferbar - in 2-3 Werktagen bei dir",
"retailPrice": 110,
"price": 69.99,
"shippingPrice": 0,
"priceSaving": "-36%",
"features": [
"Atmungsaktive, wasserdichte Konstruktion",
"Unifarbenes Design"
],
"productDetails": [
{
"name": "Größe",
"value": "6 US - 36 EU - 3.5 UK"
},
{
"name": "Farbe",
"value": "schwarz"
}
],
"variations": [
{
"variationName": "size",
"values": [
{
"value": "5 US - 35 EU - 2.5 UK",
"asin": "S097Q0IYYLE2",
"selected": false,
"available": false,
"price": 69.97,
"retailPrice": 0
}
]
},
{
"variationName": "color",
"values": [
{
"value": "schwarz",
"asin": "887846268",
"selected": true,
"available": true,
"price": 69.99,
"retailPrice": 0
}
]
}
]
}Das Feld asin in Otto-Antworten ist einfach die wiederholte productId – Otto kennt keine ASIN; der Name bleibt erhalten, damit die Antwort dieselbe Struktur hat wie unsere anderen Retail-Endpoints. Verwenden Sie productId, wenn Sie später GET /ott/otto-lookup-reviews aufrufen, das Kundenbewertungen mit page und optional sortBy (mostHelpful, mostPositive, mostNegative, newest) durchblättert.
soldBy und sellerId sind bei den meisten Artikeln null, weil Otto sie selbst verkauft; gefüllt sind sie beim wachsenden Anteil der Marktplatz-Partner auf otto.de. deliveryMessage ist auf der Detailseite null und in den Suchergebnissen gefüllt – lesen Sie den Bestandssatz hier also aus warehouseAvailability.
Ein 404 mit statusMessage im Body bedeutet, dass otto.de für diese URL kein Produkt angezeigt hat – meist ein ausgelaufener Artikel oder ein Tippfehler in der C-Nummer. Sperren und Timeouts der Zielseite kommen als 502/503 zurück und werden nicht von Ihrem Kontingent abgezogen.
Verwandte Endpoints
Produktdetails. Produktseite per URL. Vorübergehend nicht verfügbar (Bot-Schutz von otto.de), liefert 502 und wird nicht berechnet.
Bewertungen. Paginierte Bewertungen zu einem Produkt.
Produkte suchen. Keyword-Suche mit Paginierung: Titel, Preis, Bewertung und Bild pro Produkt.
Bezahlen pro Anfrage, alle Plattformen inklusive
Eine Produktseite ist eine Anfrage und zählt 2 Kontingenteinheiten, weil Otto-Produktseiten oft einen Browser benötigen – unabhängig davon, wie viele Varianten sie enthält. Die 100 Einheiten pro Monat im kostenlosen Tarif (50 Produktseiten) reichen, um eine Handvoll Produktfamilien abzubilden; Starter (5.000 Einheiten, 30 €) aktualisiert rund 80 Otto-Angebote täglich, Production (50.000, 80 €) etwa 800. Suchseiten zählen 1 Einheit. Anfragen, die auf Seiten von otto.de fehlschlagen, werden nie berechnet.
- Free
- 100 Anfr. / Monat
- Starter
- 5.000 Anfr. · 30 €
- Production
- 50.000 Anfr. · 80 €
- Business
- 300.000 Anfr. · 300 €
Otto Produktdaten API: häufige Fragen
Muss ich das Fragment #variationId angeben?
Nein. Ohne das Fragment zeigt Otto seine Standardvariante, und die variationId in der Antwort verrät, welche das war. Geben Sie es an, wenn Sie eine bestimmte Größe oder Farbe brauchen, oder lesen Sie das variations-Array und folgen Sie der asin des gewünschten Werts.
Welche Länder deckt der Otto-Endpoint ab?
Nur otto.de. Der Shop liefert innerhalb Deutschlands, die Preise sind in EUR inklusive Mehrwertsteuer, und alle Textfelder sind deutsch. Einen Parameter domainCode gibt es für diesen Endpoint nicht.
Kann ich ein Produkt per EAN oder Artikelnummer abfragen?
Nicht direkt. Suchen Sie die EAN oder Herstellernummer über GET /ott/otto-search-by-keyword; otto.de listet das passende Produkt meist an erster Stelle, und die dpUrl aus dem Ergebnis liefert Ihnen die URL für den Produkt-Endpoint.
Warum ist retailPrice manchmal 0?
Ein retailPrice von 0 bedeutet, dass Otto für diese Variante keinen durchgestrichenen Referenzpreis anzeigt – der Artikel wird zum regulären Preis verkauft. Werten Sie 0 als „kein Referenzpreis“, nicht als kostenlos.
Sind Kundenbewertungen in der Produktantwort enthalten?
Der Produkt-Endpoint liefert die Gesamtwerte productRating und countReview. Einzelne Bewertungen mit Text, Sternen, Datum und der Variante des Rezensenten liefert /ott/otto-lookup-reviews, paginiert mit page und sortiert mit sortBy.
Verwandte Anwendungsfälle
Rufen Sie Ihr erstes otto.de-Produkt ab
Registrieren Sie sich kostenlos, fügen Sie eine otto.de-URL mit variationId ein und erhalten Sie die ganze Produktfamilie als JSON – 100 Kontingenteinheiten pro Monat inklusive.