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.
Wie die [userid] für das Feld "queryid" zu bekommen ist, wird hier detailliert beschrieben.
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
  • 512 (binär 001000000000) - Pfandsystem / Mehrwegverpackung


Kategorien

Die Kategorien sind fest vorgegeben und können als Indices für den Zugriff auf entsprechende Arrays verwendet werden. Folgender JavaScript-Code kann dabei direkt verwendet werden:
var cat1listen=new Array(26-1); // Hauptkategorie
var listen=new Array(26-1);     // Unterkategorie
cat1listen[0]="Baby, Kind";
listen[0] = new Array("Ausstattung", "Babygetränke", "Babynahrung", "Gesundheit, Pflege", "Kleider, Textilien", "Spiele Lernen", "Wickel");

cat1listen[1]="Backwaren";
listen[1] = new Array("Backmischungen", "Backzutaten", "Brotarten", "Dauerbackwaren, Zwieback", "Frischbackwaren", "Gebäck, Panettone", "Hefe", "Kuchen, Cakes", "Teig");

cat1listen[2]="Brotaufstriche";
listen[2] = new Array("Honig", "Konfitüren, Marmeladen", "verschiedene");

cat1listen[3]="Dessert, Nachtisch";
listen[3] = new Array("Creme", "Pudding", "Speiseeis");

cat1listen[4]="Eier";
listen[4] = new Array("Eier");

cat1listen[5]="Elektrisch";
listen[5] = new Array("Anschluss-und Verbrauchsmaterial", "Batterien", "Licht", "Netzteile, Ladegeräte");

cat1listen[6]="Elektronische Artikel";
listen[6] = new Array("Computer", "Fotografie", "HIFI", "Massenspeichermedien", "Tablet / PDA", "TV, Fernsehen", "Telefon", "Uhren", "Video", "DVD", "BD (Blu-ray)");

cat1listen[7]="Fertiggerichte";
listen[7] = new Array("Andere", "Asia Gerichte", "Bouillon, Brühe", "Fleischerzeugnisse", "Gericht, Menü", "Kartoffelprodukte", "Pasta", "Pizza", "Salat", "Sandwich", "Saucen", "Suppen", "Tiefgekühltes, Tiefkühlkost");

cat1listen[8]="Fleisch, Fisch";
listen[8] = new Array("Fisch", "Fischkonserven", "Fleischkonserven", "Frischfleisch", "Geflügel", "Meeresfrüchte", "Trockenfleisch, Salami", "Wurstwaren");

cat1listen[9]="Früchte, Obst";
listen[9] = new Array("Exotische Früchte", "Früchte, Obst", "Nüsse", "Obstkonserven", "Trockenfrüchte", "kandierte Früchte");

cat1listen[10]="Gemüse";
listen[10] = new Array("Antipasti", "Essigkonserven", "Gemüse", "Gemüsekonserven", "Salat", "Trockengemüse");

cat1listen[11]="Getränke, Alkohol";
listen[11] = new Array("Alcopops", "Bier", "Energy Drinks", "Frucht-und Gemüsesäfte", "Instantgetränke", "Kaffee", "Kakao,Schokoladen", "Limonaden", "Mineralwasser", "Sirup", "Spirituosen", "Tee", "Wein/Sekt/Champagner");

cat1listen[12]="Haushalt, Büro";
listen[12] = new Array("Bücher allgemein", "Fachbücher", "Literatur", "Bügeln, Textilpflege", "Dekoration", "Essen", "Garten", "Kleider, Textilien", "Küche", "Küchen-, Haushaltgeräte", "Kurzwaren/Mercerie", "Papeterie", "Zeitungen, Zeitschriften allgemein", "Fachzeitungen, -zeitschriften", "Schreib- und Zeichengeräte");

cat1listen[13]="Kochzutaten";
listen[13] = new Array("Backpulver", "Essig", "Frische Gewürze", "Gelatine", "Gewürze", "Mehl", "Öl, Fette", "Salz", "Senf, Mayonnaise, Püree, Cremen", "Stärkearten");

cat1listen[14]="Konditorei, Zuckerwaren";
listen[14] = new Array("Kuchendekoration", "Marzipan", "Süßstoffe", "Zucker");

cat1listen[15]="Kosmetische Mittel";
listen[15] = new Array("Badezusätze", "Gesichtspflege", "Haarpflege", "Körperpflege", "Make-up Artikel", "Monatshygiene", "Nagel, Fusspflege", "Parfüm", "Pflaster, Watte", "Rasierprodukte", "Schwangerschaftstest", "Sonnen-, Insektenschutz", "Toilettenartikel", "Verhütung", "Zahnpflege");

cat1listen[16]="Milchprodukte";
listen[16] = new Array("Butter, Margarine", "Joghurt", "Käse", "Milch", "Milchgetränke", "Quark", "Rahm, Rahmprodukte");

cat1listen[17]="Präparate";
listen[17] = new Array("Calcium", "Magnesium", "Medikamente", "Sonstige", "Vitamine", "kombinierte Präparate");

cat1listen[18]="Raucherwaren";
listen[18] = new Array("Tabak", "Zigaretten", "Zigarren", "Zubehör");

cat1listen[19]="Sojaprodukte";
listen[19] = new Array("Sojamilch", "Sojasaucen", "Tofu", "sonstiges");

cat1listen[20]="Süsswaren, Snacks";
listen[20] = new Array("Bisquits, Kekse, Konfekt", "Bonbons", "Chips", "Energiespender", "Fruchtgummi", "Getreide, Schokoriegel, Waffeln", "Kaugummi", "Schokolade", "salzige Snacks");

cat1listen[21]="Teigwaren, Getreideprodukte";
listen[21] = new Array("Frühstücksflocken", "Getreide", "Teigwaren");

cat1listen[22]="Tierbedarf";
listen[22] = new Array("Hunde", "Katzen", "Nager", "Sonstige");

cat1listen[23]="Waschen, Reinigen";
listen[23] = new Array("Abwaschen", "Boden- und Teppichreiniger", "Entkalker", "Entsorgen", "Fleckenreiniger", "Glas-und Festerreiniger", "Küchenreiniger", "Lufterfrischer", "Putzgeräte und Zubehör", "Putzmittel", "Schuhpflege", "Spezialreiniger", "WC- und Bad Reiniger", "Waschmittel", "Wohnzimmerreiniger");

cat1listen[24]="Zusatzstoffe";
listen[24] = new Array("Zusatzstoffe");

cat1listen[25]="Haus, Hof und Freizeit";
listen[25] = new Array("Baumaterialien", "Farbe", "Werkzeuge", "Pflanzenmittel", "Pflanzen", "Modellbau", "Sportgeräte", "Sonstige", "Spielzeug/Spiele", "Sanitärmaterial");

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