Korzystaj z danych Atlas.

API Atlas pozwala aplikacjom wyszukiwać i pobierać publiczne rekordy e-etykiet win. Publiczne odczyty są bezpłatne i otwarte, bez klucza dla standardowego limitu.

Szybki start

Ustaw bazowy URL raz, a potem uruchom dowolny przykład poniżej.

ATLAS_API=https://www.elabel-atlas.eu/api/v1

Uwierzytelnianie

Anonimowe zapytania mogą korzystać z każdego publicznego endpointu odczytu. Klucz podnosi limit zapytań i jest wymagany dla operacji zapisu dostawców. Właściciele i administratorzy przestrzeni roboczych dostawców mogą utworzyć klucz w zalogowanej przestrzeni roboczej w sekcji Klucze API. Jeśli potrzebujesz klucza odczytu bez przestrzeni roboczej dostawcy albo dostępu masowego, napisz na david@essentialcode.eu.

curl --fail --silent --show-error \
  -H "Authorization: Bearer $ATLAS_API_KEY" \
  "$ATLAS_API/public-records?limit=1"

Limity zapytań

Każda publiczna operacja pozwala na 60 anonimowych zapytań na minutę na adres albo 600 na minutę na klucz odczytu. Odpowiedzi zawierają nagłówki limit, remaining i reset. Zapytanie ponad limitem zwraca HTTP 429:

HTTP/1.1 429 Too Many Requests
retry-after: 60
x-ratelimit-limit: 60
x-ratelimit-remaining: 0

{"error":{"code":"rate_limited","message":"The public API rate limit was exceeded."}}

Publiczne endpointy odczytu

Szukaj rekordów

curl --fail --silent --show-error \
  "$ATLAS_API/search?q=Veltliner&limit=1"

Przykładowe wyjście

{
  "query": "Veltliner",
  "records": [{
    "atlas_record_id": "QXSvIVqvHcRW-LjHtG88I",
    "name": "Grüner Veltliner 2025",
    "provider": { "name": "Demo Wine Cooperative" },
    "gtin": "4006381333931"
  }]
}

Wypisz publiczne rekordy

curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1"

Przykładowe wyjście

{
  "records": [{
    "atlas_record_id": "ovPcoHyHMEbzdcGC_Zkm_",
    "name": "Grüner Veltliner Ried Steinberg 2024",
    "provider": { "name": "Glasswise" }
  }],
  "next_cursor": "eyJ1cGRhdGVkQXQiOjE3ODk1MDIxMjQ3MDcsImlkIjoib3ZQY29IeUhNRWJ6ZGNHQ19aa21fIn0"
}

Sprawdź GTIN

curl --fail --silent --show-error \
  "$ATLAS_API/public-records/4006381333931"

Przykładowe wyjście

{
  "gtin": "4006381333931",
  "records": [{
    "atlas_record_id": "QXSvIVqvHcRW-LjHtG88I",
    "name": "Grüner Veltliner 2025",
    "provider": { "name": "Demo Wine Cooperative" }
  }]
}

Pobierz rekord po ID Atlas

RECORD_ID=$(curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1" | jq -r '.records[0].atlas_record_id')
curl --fail --silent --show-error \
  "$ATLAS_API/public-records/by-id/$RECORD_ID"

Przykładowe wyjście

{
  "atlas_record_id": "ovPcoHyHMEbzdcGC_Zkm_",
  "name": "Grüner Veltliner Ried Steinberg 2024",
  "provider": { "name": "Glasswise" },
  "atlas_updated_at": "2026-09-15T19:55:24.707Z"
}

Stronicowanie

Publiczna lista rekordów zwraca next_cursor, gdy istnieje kolejna strona. Wyślij tę dokładną nieprzejrzystą wartość z tymi samymi filtrami. Nie dekoduj jej ani nie edytuj.

CURSOR=$(curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1" | jq -r '.next_cursor')
curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1&cursor=$CURSOR"

Języki publicznych rekordów

Strony publicznych rekordów lokalizują tylko własne etykiety Atlas i kody zdefiniowane przez E-Label Standard Format, w tym typ wina, właściwości wina, kody krajów, klucze wartości odżywczych i jednostki. Każdy tekst napisany przez dostawcę pozostaje dokładnie taki, jak dostarczono, w tym nazwy i kategorie składników oraz każdy tekst o opakowaniu lub utylizacji napisany przez dostawcę.

Pierwszy kod w languages jest zawsze językiem podstawowym rekordu, także wtedy, gdy Atlas nie może wyświetlić swojego interfejsu w tym języku. Strona oferuje treść podstawową i obsługiwane języki z tłumaczeniami dostawcy. Linkuj do wyboru przez ?lang=de lub ?lang=hr. Bez parametru Atlas używa Accept-Language, gdy istnieje pasująca treść, i przekierowuje na odpowiedni URL do udostępniania.

Preferuj strukturalne ingredients[], by zachować flagi alergenów i ekologiczności. Używaj ingredients_text tylko wtedy, gdy dostawca ma kompletną deklarację w prozie. Dostawcy mogą dodawać wartości translations.{language} dla ingredients_text, designation_of_origin i każdej instrukcji packaging[].disposal. Tablica packaging podąża za długością i kolejnością listy podstawowej; użyj null dla instrukcji, która ma wrócić do wartości podstawowej. Brakujące tłumaczenia wracają do wartości podstawowej najwyższego poziomu. REST i MCP zwracają tę opcjonalną mapę, a JSON-LD używa wartości oznaczonych językiem. Ta mapa dostarczana przez dostawcę jest jedynym sposobem, by tekst dostawcy zmieniał się między językami.

Treść zapytania dostawcy jest zgodna z E-Label Standard Format.

Na stronach publicznych Atlas renderuje własne kody Standardu (productType, color, sweetness, packagingGas, packagingType, materialType i collection) w języku strony z opublikowanego słownika Standardu. Każda inna wartość dostawcy pozostaje dokładnie taka, jak dostarczono.

MCP

Model Context Protocol, czyli MCP, to standardowy sposób, w jaki klient AI wywołuje zewnętrzne narzędzia. e-label Atlas udostępnia anonimowy serwer Streamable HTTP pod https://www.elabel-atlas.eu/mcp.

Serwer udostępnia search_elabels, lookup_elabel_by_gtin, get_elabel i list_elabels_updated_since.

Zainstaluj Atlas w agencie

Wybierz swojego klienta. Wtyczka Claude Code i konfiguracja Codex zawierają zarówno wskazówki skill Atlas, jak i działające narzędzia MCP. Inni klienci łączą się z tym samym serwerem MCP tylko do odczytu.

Claude Code

Dodaje oficjalny marketplace Atlas, a potem instaluje wtyczkę. Wtyczka zawiera skill i rejestruje zdalny serwer MCP. Do hostowanego archiwum wymagany jest Claude Code 2.1.224 lub nowszy.

claude plugin marketplace add https://www.elabel-atlas.eu/claude/marketplace.json && \
  claude plugin install elabel-atlas@elabel-atlas

Wtyczki Claude Code instaluje się przez marketplace'y, a nie bezpośrednio z dowolnego URL wtyczki.Oficjalna referencja formatu i dystrybucji.

Claude w sieci i na komputerze

Claude web i Claude Desktop akceptują Atlas jako niestandardowy zdalny konektor. Nie instalują wtyczki Claude Code w zwykłym czacie. Otwórz wstępnie wypełniony formularz konektora, sprawdź URL i potwierdź go.

https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=e-label%20Atlas&connectorUrl=https%3A%2F%2Fwww.elabel-atlas.eu%2Fmcp
Otwórz formularz konektora Atlas

Oficjalna referencja niestandardowych konektorów.

Codex

Pobiera skill użytkownika i rejestruje serwer Streamable HTTP. Uruchom Codex ponownie po zainstalowaniu skilla.

mkdir -p "$HOME/.agents/skills/elabel-atlas"
curl --fail --location   https://www.elabel-atlas.eu/api/v1/SKILL.md   --output "$HOME/.agents/skills/elabel-atlas/SKILL.md"
codex mcp add elabel-atlas --url https://www.elabel-atlas.eu/mcp

Oficjalna referencja skilli ioficjalna referencja MCP.

Cursor

Dodaj ten wpis do ~/.cursor/mcp.json, zachowując serwery już obecne w pliku, a potem uruchom Cursor ponownie. Atlas nie ma obecnie wpisu w Cursor Marketplace.

{
  "mcpServers": {
    "elabel-atlas": {
      "url": "https://www.elabel-atlas.eu/mcp"
    }
  }
}

Oficjalna referencja MCP Cursor.

Gemini CLI

Dodaj ten wpis do ~/.gemini/settings.json, zachowując istniejące ustawienia, a potem uruchom Gemini CLI ponownie. Atlas nie ma obecnie wpisu jako rozszerzenie Gemini.

{
  "mcpServers": {
    "elabel-atlas": {
      "httpUrl": "https://www.elabel-atlas.eu/mcp"
    }
  }
}

Oficjalna referencja MCP Gemini CLI.