Für Entwickler

EAN-API (JSON)

Produktdaten programmatisch abfragen – kostenlos, ohne Anmeldung, CORS-offen. Bedingungen: 60 Anfragen pro Stunde je IP (bei Überschreitung Status 429) und bei öffentlicher oder geschäftlicher Nutzung eine Quellenangabe mit Link – rein privater Gebrauch ist ohne Bedingungen frei.

Endpunkt

GET https://ean-suche.net/api/produkt/<ean>

Direkt ausprobieren

EAN eingeben, Anfrage abschicken, echte Antwort sehen – ohne eine Zeile Code. Die Anfrage läuft aus deinem Browser und zählt aufs anonyme Stunden-Limit (bzw. auf den Key, falls angegeben).

Die Antwort erscheint hier.

Beispiel

curl https://ean-suche.net/api/produkt/4006381333931
{
  "ok": true,
  "ean": "4006381333931",
  "found": true,
  "product_name": "STABILO BOSS ORIGINAL Textmarker gelb",
  "country": "Deutschland",
  "structure": { "prefix": "400", "company_item": "638133393", "check": "1" },
  "url": "https://ean-suche.net/produkt/4006381333931"
}

Beispiele in anderen Sprachen

Python

import requests

r = requests.get(
    "https://ean-suche.net/api/produkt/4006381333931",
    headers={"X-Api-Key": "es_live_IhrKey"},  # Zeile weglassen = anonym
)
data = r.json()
print(data["product_name"], "-", data["country"])

PHP

$ch = curl_init("https://ean-suche.net/api/produkt/4006381333931");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-Api-Key: es_live_IhrKey"]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);

echo $data["product_name"];

Java

import java.net.URI;
import java.net.http.*;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://ean-suche.net/api/produkt/4006381333931"))
    .header("X-Api-Key", "es_live_IhrKey")
    .build();

HttpResponse<String> response =
    client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body()); // JSON, z. B. mit Jackson/Gson parsen

Excel (Power Query)

EAN-Nummern in einer Spalte nachschlagen, ganz ohne Programmierung: Daten → Daten abrufen → Aus anderen Quellen → Leere Abfrage, dann im erweiterten Editor:

let
    Quelle = Json.Document(
        Web.Contents(
            "https://ean-suche.net/api/produkt/4006381333931",
            [Headers = [#"X-Api-Key" = "es_live_IhrKey"]]
        )
    )
in
    Quelle

Für ganze Listen: die Abfrage als Funktion mit der EAN als Parameter anlegen und per „Benutzerdefinierte Spalte" auf die EAN-Spalte anwenden – Excel ruft dann Zeile für Zeile die API auf. Bitte das Stunden-Limit im Blick behalten.

Nutzungsbedingung: Quellenangabe

Rein privater Gebrauch (z. B. eigene Haushalts-Inventarliste, Hobby-Skript ohne Veröffentlichung) ist ohne weitere Bedingungen erlaubt.

Sobald die Daten aber öffentlich oder geschäftlich verwendet werden – auf einer Website, in einer App oder einem Onlineshop –, muss dort ein gut sichtbarer Link auf ean-suche.net als Datenquelle stehen, zum Beispiel im Fußbereich oder direkt bei den angezeigten Produktdaten:

<a href="https://ean-suche.net">Produktdaten von EAN-Suche.net</a>

Ohne diese Quellenangabe ist die öffentliche Nutzung der API nicht gestattet; auffällige Nutzung ohne Attribution kann gesperrt werden. Bei API-Keys mit höheren Limits gilt dieselbe Bedingung, sofern nicht individuell etwas anderes vereinbart wurde.

Höhere Limits mit API-Key

Du brauchst mehr als 60 Anfragen pro Stunde? Dann bekommst du von uns einen persönlichen API-Key mit höherem Kontingent.

Der Key wird einfach als HTTP-Header X-Api-Key bei jeder Anfrage mitgeschickt:

curl -H "X-Api-Key: es_live_IhrKey" \
     https://ean-suche.net/api/produkt/4006381333931

Das Limit gilt dann pro Key statt pro IP-Adresse – dein Programm darf also auch von mehreren Servern oder mit wechselnder IP zugreifen.

Key anfragen: kurze E-Mail mit deinem Anwendungsfall und dem gewünschten Anfragevolumen an den Kontakt im Impressum.

Statuscodes

StatusBedeutung
200EAN gültig, Produkt gefunden
404EAN gültig, aber kein Produktname in der Datenbank (Antwort enthält trotzdem Land und Struktur)
400Ungültige EAN (Prüfziffer/Länge falsch)
401Ungültiger oder gesperrter API-Key
429Rate-Limit erreicht – später erneut versuchen

Auch 10-stellige ISBN und 12-stellige UPC werden akzeptiert und automatisch als EAN-13 interpretiert. Fragen oder höhere Limits nötig? Kontakt siehe Impressum.