Open EAN/GTIN Database
EAN/GTIN Barcodenummern online abfragen
API/Datenbankzugriff | FAQ - häufige Fragen

Daten abfragen

Es ist ebenfalls möglich, auf die Open EAN Datenbank aus eigenen Applikationen heraus zuzugreifen um eine EAN-Abfrage durchzuführen. Das geschieht mit einem simplen HTTP-GET-Request, der folgendes Format aufweisen sollte:
http://opengtindb.org/?ean=[ean]&cmd=query&queryid=[userid]
[ean] ist hier die acht- oder dreizehnstellige EAN die abgefragt werden soll.
Die [userid] für das Feld "queryid" ist nur über eine spezielle Zugriffsvereinbarung erhältlich (ausschließlich für gewerbliche Kunden, nicht für Privatanwender). Diese Vereinbarung beinhaltet eine 6-monatige Zahlweise im voraus für ein festzulegendes tägliches Zugriffslimit (mindestens 10000 Zugriffe pro Tag). Die Vereinbarung kann jeweils rechtzeitig vor Beginn der folgenden 6-Monats-Periode gekündigt werden. Kleinere Abrechnungszeiten, andere Zeiträume für das Zugriffslimit oder geringere Zugriffslimits sind nicht verfügbar. Zur groben Orientierung: bei einem Limit von 10000 Abfragen pro Tag liegt der Preis für eine 6-monatige Abrechnungsperiode bei ca. 150 Euro zuzüglich Mehrwertsteuer. Anfragen für einen API-Zugang zur OpenGTIN-DB sind über das Kontaktformular möglich.
War die Abfrage erfolgreich, so erhalten Sie Daten im Textformat (MIME-Typ text/plain) zurück, die beispielsweise so aussehen können:
error=0
---
name=Natürliches Mineralwasser
detailname=Bad Vilbeler RIED Quelle
vendor=H. Kroner GmbH & CO. KG
maincat=Getränke, Alkohol
subcat=
contents=19
pack=1
descr=Natürliches Mineralwasser mit Kohlensäure versetzt
origin=Deutschland
validated=25 %
---
Eine Abfrage kann auch mehrere Datensätze zurückliefern, diese werden dann nach dem "---" fortlaufend angehängt. In diesem Fall sind die zurückgelieferten Datensätze bereits nach Relevanz sortiert, d.h. die Datensätze weiter oben in der Auflistung passen auch am besten zur abgefragten EAN und/oder sind schon validiert worden.
Die Reihenfolge der einzelnen Felder ist nicht festgelegt, ebenso kann es sein, das zukünftig noch neue Felder hinzukommen, es ist also wichtig, das der Wert vor dem "=" in jedem fall geparst wird.
Der Wert hinter "contents" gibt möglicherweise (nicht) vorhandene Inhaltsstoffe an, die Zahl besteht dabei aus logisch ODER-verkünpften Flags, welche für verschiedene Inhaltsstoffe stehen:
  • 1 (binär 000000000001) - laktosefrei
  • 2 (binär 000000000010) - koffeeinfrei
  • 4 (binär 000000000100) - diätetisches Lebensmittel
  • 8 (binär 000000001000) - glutenfrei
  • 16 (binär 000000010000) - fruktosefrei
  • 32 (binär 000000100000) - BIO-Lebensmittel nach EU-Ökoverordnung
  • 64 (binär 000001000000) - fair gehandeltes Produkt nach FAIRTRADE™-Standard
  • 128 (binär 000010000000) - vegetarisch
  • 256 (binär 000100000000) - vegan
  • 512 (binär 001000000000) - Warnung vor Mikroplastik
  • 1024 (binär 010000000000) - Warnung vor Mineralöl
  • 2048 (binär 100000000000) - Warnung vor Nikotin
So steht im obigen Beispiel die Zahl 19 für fruktosefrei (16), koffeeinfrei (2) und laktosefrei (1).

Der Wert hinter "pack" informiert über Art und Umfang der Verpackung, die Zahl besteht dabei aus logisch ODER-verkünpften Flags:
  • 1 (binär 000000000001) - die Verpackung besteht überwiegend aus Plastik
  • 2 (binär 000000000010) - die Verpackung besteht überwiegend aus Verbundmaterial
  • 4 (binär 000000000100) - die Verpackung besteht überwiegend aus Papier/Pappe
  • 8 (binär 000000001000) - die Verpackung besteht überwiegend aus Glas/Keramik/Ton
  • 16 (binär 000000010000) - die Verpackung besteht überwiegend aus Metall
  • 32 (binär 000000100000) - ist unverpackt (immer zusammen mit 64, nie zusammen mit 128 und 256)
  • 64 (binär 000001000000) - die Verpackung ist komplett frei von Plastik (nie zusammen mit 1 oder 2)
  • 128 (binär 000010000000) - Artikel ist übertrieben stark verpackt (nie zusammen mit 32)
  • 256 (binär 000100000000) - Artikel ist angemessen sparsam verpackt


Fehlercodes

Die oben beschriebenen Operationen können aus unterschiedlichen Gründen fehlschlagen. In diesem Fall wird mit "error"= ein Code zurückgeliefert, der den aufgetretenen Fehler näher spezifiziert:
  • 0 - OK - Operation war erfolgreich
  • 1 - not found - die EAN konnte nicht gefunden werden
  • 2 - checksum - die EAN war fehlerhaft (Checksummenfehler)
  • 3 - EAN-format - die EAN war fehlerhaft (ungültiges Format / fehlerhafte Ziffernanzahl)
  • 4 - not a global, unique EAN - es wurde eine für interne Anwendungen reservierte EAN eingegeben (In-Store, Coupon etc.)
  • 5 - access limit exceeded - Zugriffslimit auf die Datenbank wurde überschritten
  • 6 - no product name - es wurde kein Produktname angegeben
  • 7 - product name too long - der Produktname ist zu lang (max. 20 Zeichen)
  • 8 - no or wrong main category id - die Nummer für die Hauptkategorie fehlt oder liegt außerhalb des erlaubten Bereiches
  • 9 - no or wrong sub category id - die Nummer für die zugehörige Unterkategorie fehlt oder liegt außerhalb des erlaubten Bereiches
  • 10 - illegal data in vendor field - unerlaubte Daten im Herstellerfeld
  • 11 - illegal data in description field - unerlaubte Daten im Beschreibungsfeld
  • 12 - data already submitted - Daten wurden bereits übertragen
  • 13 - queryid missing or wrong - die UserID/queryid fehlt in der Abfrage oder ist für diese Funktion nicht freigeschaltet
  • 14 - unknown command - es wurde mit dem Parameter "cmd" ein unbekanntes Kommando übergeben

Impressum | Datenschutz | Kontakt | Links