Skip to main content
Menu

Změnový protokol API

Všechny důležité změny API. Nejnovější záznamy nahoře. Dodržujeme stabilitu v1 — žádné Breaking changes bez nové verze.

2026-09-08 Oprava Fuel prices: a second, honest freshness field, and two language bugs

On Fuel Prices, updated_at and the response's own age_hours/stale flag were running on different clocks: updated_at moves only when a price actually changes, but staleness was computed as if it moved on every confirmation. 46.7% of the priced index showed age_hours ≤48 and stale:false while updated_at was in fact more than 48 hours old, 12,620 stations over a week old. Each price now also carries confirmed_at — the last time we confirmed the price, hour-floored, never earlier than updated_at — and age_hours/stale are computed from it. updated_at's meaning is unchanged: use it when you want to know when the price last moved, use confirmed_at when you want to know how current it is right now. Not present on the frozen v1 contract.

Two language bugs, both silent: sending the canonical grade code as lang=pl (or any of the other 24 site languages) got fuel_type_local back in English regardless — only 10 languages were ever checked against the label table, so anything outside that list fell through to the default UI vocabulary rather than the language you asked for. Separately, lang=tr (or several other valid codes) answered station listings in Ukrainian, because an internal default of uk fired whenever the requested language did not sit in that same 10-language list. Both are fixed: the language you send is now the language you get, across all 25.

Also: brand on Nearby Fuel Stations no longer returns the raw ingest sentinel OTHER for the ~330 stations where we do not know the brand — it is null, consistent with every other unknown field in the response.

2026-09-08 Oprava Hraniční AI asistent: opakovaný dotaz vracel 503 místo odpovědi

Hraniční AI asistent (/api/v1/data/assistant) odpovídal 503 internal_error — „Asistent je dočasně nedostupný“ —, když stejný klíč položil stejný dotaz dvakrát během pěti minut. Nic přitom nebylo nedostupné: ve většině těchto případů byla odpověď už spočítaná a připravená k předání. Nyní se vrací standardně, s ok: true a HTTP 200.

Pokud opakování dorazí ve chvíli, kdy se první odpověď ještě zapisuje, volání nyní vrátí 429 s error.code rovným duplicate_request místo 503, aby politika opakování odlišila „zeptej se za okamžik znovu“ od skutečného výpadku. Oba případy se navíc započítávaly do chybovosti vašeho účtu jako serverové chyby; už se nezapočítávají. Na samotném požadavku se nic nemění — žádný parametr, žádná verze. duplicate_request je v referenci uveden spolu s ostatními kódy chyb.

2026-09-08 Oprava Parkoviště pro kamiony vracejí jen pojmenované lokality a parkoviště pojmenovaná vlastními souřadnicemi mají nyní skutečné názvy

Parkoviště pro kamiony (/api/v2/data/truck-parkings) vracela záznamy s name rovným null a prázdnou address — u Bensheimu 20 z 50. Jsou to místa, která evidujeme pouze jako souřadnici: není co zobrazit ani s čím spárovat vaši vlastní sadu POI. Do tohoto produktu už nepatří: vrací nyní jen pojmenované lokality, aktuálně více než 22 000 v celé Evropě. Pokud jste nepojmenované záznamy filtrovali sami, takový kód je teď nadbytečný, ale neškodný. Odpovědi jsou při stejném radius a limit kratší a každý vrácený záznam je použitelný.

Samostatně: zhruba 10 000 parkovišť mělo v poli name surovou dvojici souřadnic, například 51.927301,10.14112, zatímco skutečné označení bylo v address. Nyní nesou toto označení — Ionity, Seesen, Rest Area A5 E35 Kaelberpfad, Bensheim — všude, kde se objevují, včetně /api/v1/data/pois. id každého místa se nemění, takže uložené přiřazení zůstává platné; mění se jen name.

2026-09-08 Nové Snímek fronty nyní obsahuje vlastní časové pásmo hraničního přechodu

snapshot.updated_at v /api/v1/data/queue a /api/v1/data/multi je místní čas v pásmu samotného hraničního přechodu (například Europe/Istanbul, Europe/Sofia, Europe/Budapest, Europe/Warsaw, Europe/Kyiv) a dosud v odpovědi nikde nestálo, o které pásmo jde, takže volající jej nemohl převést na konkrétní okamžik. snapshot nově získává pole timezone (název IANA) vedle updated_at. Žádný parametr, žádná verze, žádné jiné změny polí.

2026-09-08 Vylepšení Pokrytí pro palivo se měří z živého indexu stanic, ne z pevného seznamu zemí

Dosud každý palivový endpoint popisoval vlastní pokrytí ručně psaným seznamem: AT, DE, DK, ES, FR, HR, IT, LU, PL, PT, SI, přičemž Polsko v něm bylo zúženo na oblast Trojměstí. Obě tvrzení už dávno neplatila. Pokrytí se nyní měří z živého indexu stanic a přepočítává se každých šest hodin: 39 zemí má dnes stanice s cenami a Polsko mezi nimi na celém území, ne ve třech městech. Na samotném dotazu se nemění nic: žádný parametr, žádná verze.

Čerpací stanice v okolí a Nejlevnější palivo: když hledání nic nevrátí, blok coverage nyní nese naměřené station_countries, station_counts, sparse_coverage a measured_at, zúžené na požadovaný druh paliva, ne na palivo obecně. Země se dostane do sparse_coverage, když v ní máme 25 stanic s cenami nebo méně — je to počet, ne úsudek.

Přibyla nová poznámka pro druh, který známe, ale jehož cenu tam, kde se ptáte, nikdo neuvádí. Dosud se coverage.fuel_type_note objevovala jen tehdy, když nám byl neznámý samotný název ze stojanu. Nyní se objeví i tehdy, když se název rozpozná správně, ale v dané zemi pro něj prostě žádná cena není; pojmenuje země, kde je ten druh oceněn, i druhy, které oceňujeme ve vašem okolí. Český název Natural 100 je čistý příklad: rozpozná se, ale žádný zdroj pro něj v Česku cenu neuvádí. Prázdná odpověď tak přestává vypadat jako rozbitý dotaz.

Druhy paliva (/api/v2/data/fuel-grades) dostává priced_countries a priced_station_counts pro každý druh a navíc priced_here, když pošlete ?country=. Oba seznamy znamenají něco jiného: země v countries je ta, kde tento název ze stojanu přijímáme, zatímco priced_countries říká, kde jej zdroj skutečně oceňuje, takže priced_here s hodnotou 0 je skutečná odpověď, ne mezera v odpovědi. Přicházejí i coverage_measured_at a coverage_note a Cache-Control klesá z 24 hodin na 6, aby odpovídal frekvenci přepočtu.

Rozpoznává se i více místních názvů ze stojanů, mezi nimi Klimadiesel 90 (HVO100) a HVO Diesel, Erdgas a Metano, Autogas a Autogaz, DEF pro AdBlue a řada značkových názvů prémiové nafty a benzinů. Pořadí rozpoznávání se nezměnilo a porovnávání zůstává přesné, takže žádný dříve fungující název dnes neznamená něco jiného a nový název může nanejvýš změnit prázdnou odpověď na odpověď s cenami. Zároveň jsme opravili referenční dokumentaci a popisy endpointů ve všech 25 jazycích webu.

2026-09-07 Oprava API Nejlevnější palivo znovu řadí podle ceny; pole odpovědi pro palivo jsou zdokumentována přesně tak, jak jsou skutečně vracena

Nejlevnější palivo (/api/v2/data/fuel-cheapest) vracelo nejbližší čerpací stanice seřazené podle vzdálenosti místo těch nejlevnějších. Protože se řazení uplatňovalo dříve, než byl výsledek oříznut na váš limit, nejlevnější stanice ve vašem okruhu mohly z odpovědi zcela chybět. Řazení opět funguje správně: nejprve nejnižší cena za požadovaný druh paliva, při shodě ceny vyhrává bližší stanice a stanice bez ceny pro daný druh skončí poslední. Na samotném požadavku se nic nemění — žádný nový parametr, žádná nová verze.

Odpovědi v2 pro palivo jsou také zdokumentovány přesně tak, jak jsou skutečně vraceny: stanice přicházejí v data.stations[], jeden záznam na fyzickou stanici, přičemž každý druh paliva je vnořen v objektu prices (price, currency, local_name, updated_at, age_hours, stale) a dále station_ref, grades, total_found a notices. Reference pro Čerpací stanice v okolí a Nejlevnější palivo nadále popisovala starší plochý seznam řádků data.data[].

2026-09-07 Nové Doplňky Extra země a Extra volání prognóz; počet zemí v plánu od 10. listopadu 2026

Na stránce plateb (měsíční záložka) jsou k dispozici dva doplňky k jakémukoli plánu, bez jeho změny: Extra volání prognóz — +100 volání prognóz a statistik denně za blok, 2 € měsíčně za blok, až 10 bloků; a Extra země — +1 deklarovatelná země za kus, 2 € měsíčně za každou. Změna počtu zobrazí přesnou poměrnou kalkulaci ještě před stržením peněz.

Od 10. listopadu 2026 každý plán zahrnuje daný počet deklarovaných zemí: Explorer a Student 4, Starter 10, Pro a výše bez omezení. Od tohoto data nepůjde uložit deklaraci delší, než je plán plus zakoupené extra země; záložka Účet už ukazuje váš limit a účty, které jej překračují, vidí upozornění na nástěnce. Před 10. listopadem se nic nemění.

2026-09-07 Vylepšení Sandbox nyní ukazuje spotřebu kvóty před každým voláním i po něm

API sandbox nyní označuje každý endpoint ve výběru jeho třídou kvóty (Těžký / Standardní), ukazuje spotřebu kvóty pro zvolenou verzi ještě před spuštěním a po volání ukazuje, kolik by totéž volání stálo z vaší ostré kvóty — včetně vzorce ceil(N ppids × M sub-products / 2) používaného pro volání typu /multi.

Jde o náhled jen pro čtení: samotná volání v sandboxu se strhávají z odděleného testovacího rozpočtu sandboxu, nikdy z vaší ostré kvóty.

2026-09-07 Nekompatibilní Ohlášená vyřazení jsou uzavřena pro účty vytvořené po ohlášení

Ode dneška je vše, co jsme veřejně ohlásili jako vyřazované, uzavřeno pro vývojářské účty vytvořené v den ohlášení nebo později. Pokud váš účet existoval před ohlášením, nic se nemění — zůstává vám celé přechodné období až do data vyřazení uvedeného v záznamu, který je ohlásil.

Proč toto pravidlo existuje. Dne 24. srpna 2026 jsme ohlásili, že truck-bans v1 se vyřazuje 8. září 2026. Dva účty se zaregistrovaly několik dní po tomto ohlášení, postavily svou integraci na v1 a byly pár hodin od 410, aniž by k nim dorazil jediný náš e-mail: ohlášení i dávka notifikací předcházely jejich registraci. Nic v API jim nezabránilo nasadit verzi, o které jsme už řekli, že končí. To bylo naše selhání a toto je náprava — nemůžete nově nasadit něco, co je již naplánováno k odstranění.

Jak to vypadá. Takové volání je odmítnuto s 410 Gone a chybovým kódem version_closed_to_new_accounts. Zpráva uvádí datum vyřazení, datum ohlášení a verzi, kterou použít místo ní. Jde záměrně o jiný kód než version_sunset, který dostane každý účet poté, co samotné datum vyřazení uplyne — podpora tak rozezná „přišli jste příliš pozdě na to, abyste začali“ od „toto je pryč pro všechny“ bez čtení logu.

Zachování přístupu se řídí datem vytvoření účtu, nikoli prvním voláním. Pokud jste se zaregistrovali před ohlášením, ale integrovat začínáte až nyní, stále dostanete celé přechodné období: mohli jste na tom stavět celou dobu.

Platí od nynějška pro truck-bans v1 (ohlášeno 24. srpna 2026, vyřazení 8. září 2026) a automaticky pro každé vyřazení, které od této chvíle ohlásíme. Nic nového se od vás nevyžaduje: každá odpověď na vyřazované verzi již nese hlavičky Deprecation, Sunset a Link: rel="successor-version", takže nová integrace vidí blížící se vyřazení i bez čtení této stránky.

2026-09-07 Nekompatibilní Seznamy destination oddělené čárkami ve v1/v2 končí zároveň s destination=all; opraven příklad v4 v dokumentaci

Navázání na včerejší změnu ve v4 (vývojářský tiket #105). Seznamy destination oddělené čárkami ve v1 a v2 dál fungují, ale nyní podléhají stejnému termínu jako destination=all: obojí končí 2026-10-06 (do té doby hlavičky Deprecation/Sunset, poté 400 destination_list_removed s odkazem na /api/v4/ jako náhradu). Stávající kontrola limitu 10 položek u seznamů s čárkami se do tohoto data nemění.

v4 zůstává u jedné destinace na volání — to se dnes nezměnilo. Změnilo se jen to, jak komunikujeme v1/v2: chyba 400 u destination=all už nenabízí seznam s čárkami jako cestu migrace (skončil by ke stejnému datu), ale míří rovnou na v4.

Oprava dokumentace: příklad v4 na těchto stránkách dříve zněl /api/v4/data/border/1/2,3,4/9 — což je seznam s čárkami, který v4 odmítá. Nyní je to /api/v4/data/border/1/2/9. Kdo starý příklad zkopíroval, dostal by při prvním volání 400; omlouváme se.

Nový přeložený klíč product_border_v4_p_destination vychází ve všech 25 jazycích webu a výslovně uvádí pravidlo jedné destinace ve v4 místo toho, aby přebíral formulaci z v1/v2.

2026-09-06 Nekompatibilní Border Queue v4: jedna cílová země na volání a destination=all končí 6. 10. 2026

/api/v4/data/border/{origin}/{destination}/{crossing_type} je ode dneška v provozu. Oproti v2 se mění tři věci a společně jsou důvodem, proč jde o novou verzi, a ne o úpravu.

1. Konec destination=all. Naše data jsou licencována po zemích (Developer API Terms, oddíl 7) a zástupný symbol, který se rozvine na „každého souseda, pro kterého máme data“, vrací země, pro které váš účet nemusí být schválen — a v požadavku to není nijak vidět. Ve v4 zemi pojmenujete.

2. Jedna cílová země na volání. /api/v4/data/border/1/2/9 se ptá na jednu hranici. Seznamy oddělené čárkou se nepřijímají: 1/2/9, 1/3/9 a 1/4/9 pošlete jako samostatná volání. Seznam s čárkou nebo all odpoví 400 a vyjmenuje přesná volání, která je třeba poslat, takže nic neselže potichu.

3. Jeden kód pro nákladní dopravu. v1 a v2 dělily nákladní dopravu na 8 (Freight Transport) a 9 (Freight Transport up to 7.5 t). Toto dělení na přechodu reálně existuje, ale žádný integrátor s ním nedokáže pracovat: dotaz na 9 ve v2 na hranici UA-PL vrátil 21 ze 70 nákladních přechodů a nic to nenaznačilo. v4 odpovídá na 9 všemi nákladními pruhy a 8 přijímá jako alias pro 9. Každý řádek nese vlastní crossing_type, takže sloučená odpověď zůstává prozkoumatelná.

Ve v1 a v2 destination=all funguje dál do 6. 10. 2026 a do té doby nese hlavičky Deprecation / Sunset. Od tohoto data odpovídají i tyto verze na all chybou 400 — zbytek v1 a v2 zůstává nedotčen a nadále dostupný. Stejné datum platí pro ostatní zkratky pro všechny země: travel-matrix bez ?dest=, bus-carriers s ?ppid=all a fuel-grades bez ?country=.

v3, ohlášená dnes dříve, je nahrazena verzí v4. v3 se od v4 lišila jen tím, že stále přijímala seznam oddělený čárkou, a žádná integrace tento tvar nepoužívá. URL adresy v3 nadále odpovídají, takže se nic, co bylo napsáno proti nim, nerozbije, ale v3 není zdokumentovaná a nebude se dál vyvíjet — přejděte na v4.

Všechno ostatní ve v4 je jako ve v2: směrové pořadí v cestě, direction{from,to}, stale a ?max_age_min=.

2026-09-06 Oprava ID zemí a kódy typů vozidel jsou nyní zdokumentované — a 8/9 byly prohozené

Číselná ID v /border/{origin}/{destination}/{crossing_type} nebyla nikdy zveřejněna jako tabulka, takže si je integrátoři rekonstruovali z časových pásem a ukázkových URL adres. Nyní jsou v dokumentaci pod Kódy zemí a typů vozidel, vykreslené ze stejných tabulek, proti kterým API validuje — ID zemí i s hranicemi, na které se každé rozvine, a každý crossing_type s označením, které API vrací.

Při jejich zveřejňování jsme zjistili, že sandbox a metadata endpointu popisují 8 jako „truck<7.5t“ a 9 jako „truck“. Je to obráceně: API označuje 8 jako Freight Transport a 9 jako Freight Transport up to 7.5 tons, a vždy tomu tak bylo. Pokud jste kód pro nákladní dopravu vybrali podle nápovědy parametru, filtrovali jste opačný pruh, než jste zamýšleli. Opraveno všude a v3 tuto volbu odstraňuje úplně.

2026-09-06 Vylepšení Developer API Terms v1.1 — co znamená „trh“ a dvě změny ve váš prospěch

API Terms v1.1 nahrazují v1.0 ještě před nabytím její účinnosti a platí od 6. 10. 2026. Přijměte je prosím ve svém dashboardu.

Oddíl 7 nyní říká, co je Trh: země, jejíž data používáte — tedy kde leží přechod nebo hranice, na kterou se ptáte — ne země, ve které žijí vaši uživatelé. Náš dashboard uváděl na různých místech obě možnosti; vynucování vždy znamenalo tu první.

Dvě změny ve váš prospěch. Země již schválené pro váš účet zůstávají použitelné, dokud se posuzuje pozdější změna (přidání země už nepozastavuje ty, které máte). A pokud jsme na deklaraci trhu neodpověděli do 5 pracovních dnů, do naší odpovědi platí plné limity vašeho plánu.

Oddíl 10.3 nyní odpovídá tomu, co dashboard skutečně vyžaduje, a oddíl 13.2 uvádí základ dostupnosti, který měříme a umíme vám jej ukázat.

2026-09-05 Vylepšení Novinka: příznak data_quality v produktech Queue, Live Queue & Freshness a Multi-Checkpoint

Tři produkty nyní nesou doplňkové pole data_quality (high nebo low), které označuje, zda je hodnota reálným pozorováním, nebo modelovým odhadem bez živého zdroje počítání na daném přechodu: queue (na nejvyšší úrovni v snapshot a na každém historickém řádku v data[] — na řádcích prognózy chybí), update-info (na obálce) a multi (na podobjektech queue i update_info pro každý přechod). Nejde o nový signál — příznak už interně existoval — ale nikdy nebyl vystaven, takže plně modelovaný přechod vypadal stejně jako přímo měřený. is_realtime je záměrně nezměněné: pro modelované řádky nadále vrací true a změna tohoto významu je zásadní změna na úrovni v2, kterou zde neděláme.

Také z tohoto vydání: produkt queue-advanced už dál nešíří surové počasí z upstreamu. weather_main, temperature a wind_speed nahrazuje odvozený condition_code (stupnice rizika 0–5, null, když počasí není k dispozici), condition a severity.

2026-08-25 Zastaralé Multi-Checkpoint API: 5 hraničních přechodů na požadavek od 2026-08-30

Od 2026-08-30 se jeden požadavek /api/v1/data/multi zodpoví nejvýše pro 5 hraničních přechodů. Volání, které uvádí více PPID, není odmítnuto: stále vrací 200, ale odpověď se poskytne jen pro prvních 5 ID v ?ppids=. Ostatní ID se ignorují, vrátí se v meta.ppid_cap.ignored a nezapočítávají se do vaší kvóty — volání se účtuje podle toho, co skutečně vrátí.

Dokud volání překračuje limit, obsahuje odpověď hlavičku X-Devapi-Warning: multi_ppid_cap a blok meta.ppid_cap s poli cap, enforced_from, enforced, ppids_asked, ppids_answered a ignored[]. Do 2026-08-30 se tato pole zobrazují s hodnotou enforced: false a s úplnou sadou výsledků, takže nadcházející změnu uvidíte ve vlastních logech.

Sleva z kvóty ve výši poloviny zůstává beze změny. Rozdělte si hraniční přechody do skupin po 5 a ve svém obvyklém cyklu obnovování posílejte jedno volání na skupinu; při častém dotazování jen na délku fronty a aktuálnost dat zůstává levnějším produktem standardní třídy update-info.

2026-08-25 Vylepšení Ukrajinský zákaz kvůli horku nyní respektuje váš rozsah dat (v2)

Vypočítaný ukrajinský zákaz kvůli horku — vracený s include_ua_heat a u country=UA automaticky — nyní odpovídá za rozsah dat, na který se ptáte. Dříve vracel nejbližších sedm dní bez ohledu na date_from a date_to, takže prosincové okno tiše vrátilo řádky tohoto týdne. Zákaz se počítá z předpovědi počasí, nečte se z kalendáře zákazů, a má proto dvě hranice, které kalendář nemá: nedívá se zpět a končí tam, kde končí předpověď. Váš rozsah se nyní protíná s tím, co předpověď skutečně pokrývá, a nové pole ua_heat_ban.forecast_horizon uvádí poslední dostupné datum. Rozsah za tímto horizontem nevrátí žádné řádky a důvod vysvětlí v summary — to není totéž jako „žádný zákaz“. Odpovědi v1 se nemění.

2026-08-25 Vylepšení Každý produkt nyní dokumentuje pole své odpovědi

Tvar odpovědi dosud nebyl nikde popsán — jediný způsob, jak zjistit, co produkt vrací, bylo zavolat ho. Na stránce každého produktu je nyní pod tabulkou parametrů tabulka Pole odpovědi s krátkým popisem každého pole; pole prvků seznamu se zobrazují jako items[].name, pole na úrovni obálky (usage, meta, snapshot, resolved_location) bez předpony. Popsáno je 40 ze 42 produktů: dva dosud nespuštěné (weather, road-quality) záměrně zůstávají bez popisu. Stejná tabulka se publikuje i do našeho veřejného zrcadla dokumentace na GitHubu.

2026-08-25 Nové Místní názvy paliv v API

Každý palivový produkt nyní přijímá místní název druhu paliva, nejen náš interní zápis: ON v Polsku, Nafta v Česku, Gázolaj v Maďarsku, Motorină v Rumunsku, ДП na Ukrajině, Motorin v Turecku, Gasóleo v Portugalsku a Španělsku. Název se vyhodnocuje nejprve podle země — „95“ je E10 u dánského stojanu a E5 u polského — proto posílejte country spolu s místním názvem nebo souřadnice, podle nichž bod umístíme. V odpovědi se vrací fuel_type (kanonický), fuel_type_requested (přesně jak jste jej napsali) a fuel_type_local. Název, který neumíme umístit, nikdy nenahrazujeme výchozím druhem: odpověď přijde prázdná a otevřeně to řekne.

Celá tabulka je nyní samostatný produkt — GET /api/v2/data/fuel-grades[?country=PL][&fuel_type=ON] — naše kanonické druhy paliva a jejich místní názvy ve 41 evropských zemích včetně trhů, pro které ceny neuvádíme. Zemská a regionální úroveň produktů fuel a fuel-local navíc dostala objekt grades, který každý cenový klíč přiřazuje k druhu paliva a jeho názvu u stojanu.

2026-08-25 Vylepšení Truck Bans API v2: dotaz na konkrétní datum nebo rozsah dat

Produkt truck-bans nyní odpovídá na konkrétní datum nebo rozsah dat na adrese /api/v2/data/truck-bans. Dosud vždy vracel nejbližších 7 dní a odeslané datum ignoroval, takže sestavení kalendáře znamenalo jeden požadavek na každý den — a u tarifu se dvěma požadavky za sekundu je většina z nich odmítnuta s 429 qps_exceeded.

Použijte ?date=YYYY-MM-DD pro jeden den nebo ?date_from= a ?date_to= pro rozsah. Obě meze jsou včetně a kteroukoli lze vynechat: začátek je ve výchozím stavu dnešek, konec je začátek plus 7 dní. Okno může pokrývat nejvýše 92 dní — delší je odmítnuto s 400 date_range_too_long, místo aby se potichu zkrátilo. Jde o kalendář orientovaný dopředu: okno může začínat nejvýše 7 dní zpět a starší data jsou odmítnuta, nikoli poskytnuta — pokrytí sahá dopředu do 31. prosince 2028 ve 23 zemích.

Každá odpověď nyní obsahuje objekt window, který pojmenovává přesně pokrytý rozsah. Jde o doplňkové pole a posílá se i ve v1, přičemž v1 si ponechává své neměnné sedmidenní okno. Pozor: include_ua_heat vždy pokrývá nejbližších 7 dní bez ohledu na požadované okno — počítá se z předpovědi počasí, nikoli z kalendáře zákazů. Připomínáme, že v1 tohoto produktu končí 8. září 2026.

Dvě související vylepšení v celém API: každý parametr, který produkt nepřijímá, je nyní uveden v poli ignored_params v odpovědi místo tichého zahození, a chyby validace z datové služby k vám dorazí v původním znění, se strojově čitelným kódem v error.reason.

2026-08-25 Vylepšení Hlavička X-API-Key přijímána, srozumitelnější chyba při chybějícím klíči, has_day_stats v adresáři checkpoints

Tři opravy kvality odpovědí z auditu brány (tiket #43).

Hlavička X-API-Key je nyní přijímána vedle Authorization: Bearer a ?key=. Pokud váš HTTP klient posílá klíče hlavičkou s názvem X-API-Key, nyní to funguje — dříve byla tiše ignorována a volání bylo odmítnuto jako missing_api_key. Authorization: Bearer zůstává dokumentovanou a doporučenou formou.

Chybová zpráva při chybějícím klíči nyní jmenuje všechny tři způsoby autentizace (hlavička Bearer, hlavička X-API-Key nebo ?key=) místo pouhého odkazu na registrační stránku.

Adresář checkpoints nyní nese has_day_stats na každém řádku — aditivní boolean, který říká, zda má API Best Time to Cross (day-stats) data pro daný hraniční přechod. Day-stats existují jen pro část monitorovaných přechodů; před dotazováním tento příznak zkontrolujte, abyste se vyhnuli předvídatelným 404. Stávající pole se nemění.

V dokumentaci bylo také opraveno: produkt road-conditions vždy respektoval parametr lang pro lokalizaci popisků — jen nebyl uveden.

2026-08-24 Vylepšení Truck Bans API: země oddělené čárkou, pole o úplnosti a verze v2 s povinným rozsahem

Dvě opravy a jedna nová verze produktu truck-bans.

Země oddělené čárkou nyní fungují. ?country= přijímá seznam až 3 kódů ISO-2, například ?country=DE,RO. Delší seznam je odmítnut s 400 too_many_countries, místo aby byl tiše zkrácen — jde o kalendář zákazů po jednotlivých zemích, ne o hromadný feed. Dříve to nefungovalo: oddělovač byl odstraněn, takže DE,RO se četlo jako jediný token DERO, nic neodpovídalo a vracelo se success: true s total_bans: 0 — sebejisté „žádné zákazy“ pro dvě země, které jich dohromady měly 22. Pokud jste to obcházeli jedním požadavkem na zemi, jediný požadavek nyní pokryje všechny a stojí jedno volání místo několika.

Odpovědi nyní hlásí vlastní úplnost. Tři aditivní pole — returned, total_available a truncated — vám řeknou, zda byla odpověď oříznuta. Zejména volání bez rozsahu vrací oříznutý výřez a dosud to nic v těle odpovědi neuvádělo. total_bans si ponechává dosavadní význam (řádky v této odpovědi), takže nic, co už parsujete, se nemění.

v2 je vymezena na jednu zemi. Na /api/v2/data/truck-bans je ?country= povinný a požadavek bez rozsahu je odmítnut s 400 scope_required — tento produkt je kalendář zákazů po jednotlivých zemích, ne hromadný feed. v1 je dnes beze změny — stále přijímá volání bez rozsahu a stále vrací stejných oříznutých 50 řádků jako vždy, takže nic, co vám běží, se právě teď nerozbije. v1 tohoto produktu končí 8. září 2026. Do 7. září slouží normálně; od 8. září je požadavek na v1 odmítnut s 410 Gone a zprávou odkazující na v2. Do té doby každá odpověď v1 nese Deprecation: true, hlavičku Sunset s tímto datem a hlavičku Link pojmenovávající nástupnickou verzi, takže klientská knihovna může termín zobrazit, aniž by kdokoli četl tuto stránku. Migrace: změňte segment verze na /api/v2/data/truck-bans a předejte ?country=.

Jedna oprava dokumentace: parametr date byl odstraněn. Byl dlouho uváděn, ale služba ho nikdy nečetla, takže každý požadavek, který ho posílal, tiše dostal výchozí sedmidenní okno místo dne, o který žádal. Pro výběr dne filtrujte pole upcoming_bans podle jeho pole date. Kód ISO-3 jako DEU se také již nepřekládá na název země v souhrnu, kde produkoval zavádějící „No truck ban data for: Germany.“

2026-08-24 Vylepšení Truck Bans API: pět nových zemí a pokrytí prodloužené do roku 2027

Produkt truck-bans nyní vrací celostátní dopravní omezení pro dalších pět zemí: Belgii (BE), Bělorusko (BY), Černou Horu (ME), Severní Makedonii (MK) a Švédsko (SE). Stávající pokrytí Bulharska, Řecka a Portugalska bylo rozšířeno a obnoveno — řecká omezení nyní sahají do září 2027 a Portugalsko je opět naplněno.

Struktura odpovědi se nezměnila. Nové řádky nesou stejné klíče jako každý jiný zákaz: date, time_from, time_until, restriction_type, restriction_details, min_weight_tons a details_url. Pokud omezení platí jen za určité podmínky — běloruské letní zákazy platí například nad 25 °C — je tato podmínka uvedena v restriction_details, proto si toto pole přečtěte dřív, než upozorníte řidiče. min_weight_tons je null, když se pravidlo týká třídy přepravy (nebezpečné věci), nikoli tonáže.

2026-08-24 Vylepšení Čerpací stanice: ceny jednotlivých stanic v Polsku a příznak sparse_coverage

Produkty fuel-stations a fuel-cheapest nyní vracejí ceny jednotlivých stanic v Polsku. Pokrytí je částečné — oblast Trojměstí (Gdaňsk, Gdyně, Sopoty) — proto je Polsko uvedeno v novém doplňkovém poli coverage.sparse_coverage vedle stávajícího seznamu coverage.station_countries. Země uvedená v sparse_coverage má data o stanicích jen pro část svého území; dotaz jinde v této zemi vrátí prázdný seznam spolu s poznámkou o pokrytí, přesně jako dosud. Polské ceny jsou uváděny v PLN.

Chybová zpráva u hromadného dotazu je také srozumitelnější: chybí-li lat, zpráva scope_required nyní odkazuje na produkt fuel (?country=XX) pro celostátní průměrné ceny.

2026-08-22 Vylepšení API lokálních cen paliv: nová úroveň region pro Ukrajinu

GET /api/v2/data/fuel-local?lat=&lon= nyní určuje cenu na třech úrovních místo dvou: station, poté region, poté country. Nová prostřední úroveň existuje pro Ukrajinu, kde ceny jednotlivých stanic nikde nejsou: bod na Ukrajině nyní dostane průměr své oblasti místo celostátního průměru a na celostátní průměr se vrátí jen tehdy, když pro oblast nejsou kotace.

Odpověď úrovně region obsahuje kód oblasti (hodnota ISO 3166-2, například UA-46), region_name a region_center_dist_km a stejné cenové klíče jako úroveň země. Kód nadále větvete podle resolution, nikdy podle tvaru odpovědi; odpovědi station a country zůstávají beze změny.

2026-08-22 Nové Nový produkt: API lokálních cen paliv

Nový endpoint GET /api/v2/data/fuel-local?lat=&lon= vrací nejlepší dostupnou cenu paliva pro libovolný bod v Evropě. Tam, kde máme data o jednotlivých stanicích, odpoví cenami nejbližších stanic, jinak celostátním průměrem země, v níž bod leží – včetně Ukrajiny, kde ceny jednotlivých stanic nikde nejsou.

Každá odpověď obsahuje pole resolution, které uvádí úroveň, jež odpověděla: station (seznam stanic s distance_km, každá ve vlastní měně) nebo country (jeden objekt s celostátními průměry). Větvete kód podle resolution, nikdy podle tvaru odpovědi. Dostupné od /api/v2/; fuel, fuel-stations a fuel-cheapest zůstávají beze změny.

2026-08-19 Vylepšení Čerpací stanice: 13 druhů paliva a čerstvější data pro Německo

Produkty fuel-stations a fuel-cheapest nyní pokrývají výrazně více stanic v Německu a ceny se obnovují v průběhu celého dne — včetně venkovských oblastí. Parametr fuel_type přijímá 13 druhů paliva: diesel, e5, e10, superplus, super100, premdiesel, truckdiesel, hvo, lpg, cng, adblue, e85 a lng. Pokud dotazu neodpovídá žádná stanice, odpověď obsahuje objekt coverage se seznamem zemí, pro které jsou data o stanicích k dispozici.

2026-08-19 Vylepšení Opravy kvality dat: alias radius=, poznámky k pokrytí palivy, přesnější plánování hranic pro kamiony

Parametr radius= je nyní přijímán jako kompatibilní alias pro radius_km u všech produktů, které jej dokumentují. Produkty fuel-stations a fuel-cheapest vracejí aditivní objekt coverage (seznam zemí se stanicemi a poznámka) místo tichého prázdného výsledku, když neodpovídá žádná stanice. Objekty hraničních přechodů v route-plan nyní obsahují aditivní klíč wait_basis (car_lane versus vehicle_lane), takže klient pozná, kdy jsou čekací doby pro kamiony převzaty z pruhu pro osobní auta. Přiřazování kamionových přechodů podél trasy je podstatně přesnější: záloha z osobního pruhu u dvojic přechodů bez dat pro nákladní pruh, pojistka proti špatnému směru, přísnější limit vzdálenosti a odstranění duplicit přechodů na stejné pozici. Všechny změny jsou aditivní, žádné nekompatibilní změny.

2026-08-13 Vylepšení Přepracovaná vstupní stránka portálu: kotvy sekcí, mobilní aplikace, kompletní i18n

Vstupní stránka pro vývojáře má nyní sekce s kotvami (#products, #plans, #quickstart, #integrations, #datasets, #apps, #companies, #showcase) se skokovou navigací a každá karta produktu odkazuje na vlastní stránku dokumentace. Nová sekce Mobile apps představuje Kordon Online a Truck Bans s odkazy na Google Play. Doplnění překladů: historie plateb, chyby přihlášení, odkazy na sandbox a tlačítko výběru plánu jsou nyní lokalizovány ve všech 25 jazycích.

2026-08-12 Nové NakBus Live: obousměrná komunikace s řidičem

Odpověď flotilového majáku (POST /api/v1/fleet_position.php) nyní obsahuje pole messages, které doručuje čekající zprávy od vlastníka řidiči. Nový živý JSON kanál pouze pro vlastníka (?ajax=live) a karta „Zprávy pro řidiče“ na panelu flotily. Nová stránka pozvánky pro řidiče /{lang}/get-nakbus (25 jazyků).

2026-08-12 Nové Dokumentace Fleet API přeložena do 25 jazyků

Lokalizován název, popis a parametry product_fleet_vehicles/live/history a parametry historie flotily ve všech 25 jazycích vývojářského portálu.

2026-08-12 Vylepšení Truck Bans API: sjednocené klíče odpovědi napříč všemi větvemi

/api/v1/data/truck-bans nyní vrací stejnou sadu polí nejvyšší úrovně bez ohledu na to, který dotaz odpověď vyvolal. Dříve mohl dotaz pro zemi bez kalendářních zákazů, nerozpoznané ppid nebo běžná shoda v databázi vynechat různá pole (např. country, covered_countries, ppid). Nyní každá odpověď důsledně obsahuje as_of, bans_by_country, countries_not_covered, country, covered_countries, current_bans, is_ban_active, lang, page_url, ppid, relevant_countries, source, success, summary, total_bans a upcoming_bans (null nebo prázdné, pokud se neuplatňuje), což zjednodušuje zpracování na straně klienta.

2026-08-12 Nové 9 nových API pro řidiče: parkoviště pro kamiony, obchody, sprchy, restaurace, průmyslové zóny, čerpací stanice, nejlevnější palivo, internetové body, dálniční známky

Devět nových produktů pro jednotlivé služby. Ty, které souvisejí s lokalitou, přijímají lat/lon nebo city + country (město za vás geokódujeme sami): /api/v2/data/truck-parkings, /api/v2/data/shops, /api/v2/data/showers, /api/v2/data/restaurants, /api/v2/data/industrial, /api/v2/data/fuel-stations, /api/v2/data/fuel-cheapest (stanice seřazené podle ceny pro daný typ paliva) a /api/v2/data/internet-points; výsledky obsahují distance_km a jsou omezeny radius. /api/v2/data/vignettes odpovídá, zda země vyžaduje dálniční známku, s aktuálními cenami. Stávající produkt pois nyní podporuje lon a radius podle dokumentace a režim mode=nearest produktu fuel také přijímá lon. Všech devět je dostupných v sandboxu.

2026-08-12 Vylepšení Truck Bans API: podrobnosti omezení, odkazy na vlastní doméně, parametr lang

Každý zákaz v /api/v1/data/truck-bans nyní obsahuje restriction_type (General / Local / Sunday / Holiday / Seasonal), restriction_details (přesný rozsah nebo dotčené silnice) a min_weight_tons. details_url nyní směřuje na stránky pro jednotlivé země na nakordoni.eu. Nový volitelný parametr lang vybírá jazyk názvů zemí a souhrnu; výchozí je nyní angličtina.

2026-08-09 Vylepšení Srozumitelnější chyby ppid a dokumentace

Chybný ?ppid= nyní vrací skutečný důvod namísto strohého "Request failed": chyba pojmenuje parametr, očekávaný formát id_<number> a odkáže na /api/v1/data/checkpoints. Tabulky parametrů pro stats, forecast, update-info, weather a bus-carriers nyní zobrazují příklad id_13 ve všech 25 jazycích.

2026-08-08 Nové Design portálu V2 je nyní výchozí

Přepracované rozhraní portálu (horní lišta, ikonový postranní panel, KPI přehled, kartové rozvržení) je nyní výchozí pro všechny přihlášené vývojářské účty — dříve, než bylo plánované spuštění 10. srpna. Ke klasickému rozvržení se kdykoli vrátíte pomocí ?v=1 .

2026-08-08 Vylepšení Vývojářský portál je nyní bez reklam

Všechny stránky vývojářského portálu — úvod, dokumentace, přehled, AI Studio, sandbox, tikety, žádosti, export, vozový park, novinky, seznam změn a stránky účtu — už nenačítají žádné reklamní skripty ani reklamní plochy. Platí to pro celý portál, nejen pro přihlášení a registraci jako dosud.

2026-08-05 Nové Nový produkt: API plánovače trasy (v2)

Naplánujte celou cestu přes hranici jedním voláním: /api/v2/data/route-plan vrátí trasu, hraniční přechody, které na ní opravdu leží, se živou frontou nebo předpovědí na čas vašeho příjezdu, a zastávky, které řidič skutečně dělá — odpočinek, jídlo, tankování — na jedné časové ose.

Hranice je součástí této osy. Dlouhá fronta se počítá jako již splatná přestávka a nuluje dobu za volantem, takže tříhodinové čekání se nikdy neuvádí jako tři hodiny plus celá sada přestávek, které nikdo neudělal. Pro osobní auta platí model bezpečné jízdy; autobusy a kamiony mají povinný odpočinek podle EU 561/2006 a servisní režie autobusů je kalibrována na více než 1000 licencovaných mezinárodních jízdních řádů. Přidejte stop_places=1, aby každá zastávka dostala skutečné odpočívadlo nebo čerpací stanici, a via=lat,lon, chcete-li vést trasu jiným přechodem.

2026-08-05 Nové Partnerská prezentace — živá data přizpůsobená vašemu trhu

Novinka v nabídce portálu: Prezentace — živá, vždy aktuální prezentace datové platformy nakordoni přizpůsobená vašemu trhu (pojištění, cestování, logistika, dopravci, média, navigace, palivo, fintech, veřejný sektor nebo osobní projekty). Ukazuje skutečné 30denní objemy platformy, vaše vlastní využití API, statistiky doby odezvy a limitů i doporučení tarifu, jakmile vaše volání narazí na hranice bezplatné úrovně. Trh (či trhy) si vyberte nebo potvrďte na stránce, ve svém profilu — nebo při registraci. Při první návštěvě se otevře automaticky; automatické otevírání lze vypnout přímo na stránce.

2026-08-01 Oprava AI Studio: kanály bez potřebného kontextu se přeskočí, neúčtují se

Pokud má asistent zapnutý kanál, ale volání nenese kontext, který tento kanál potřebuje — například queue bez ppid—, kanál se nyní přeskočí ještě před jakýmkoli požadavkem a neúčtuje se. Dříve se přesto zavolal, selhal a stejně stál jednotku. Studio ukazuje, co každý kanál potřebuje, při doplňování kontextu přepočítává cenu a označuje výsledky ✓ proběhl / ⊘ přeskočen, bez poplatku / ✕ selhal; API vrací data.feeds_skipped , které přesně říká, který parametr předat.

Odpovědi už nezmiňují kanály, zdroje dat ani nic technického: chybějící kanál je nanejvýš jedna běžná věta pro koncového uživatele, nikdy interní název. Kanály, které mají jen volitelné filtry (například fuel zúžený na zemi, o níž nemáme data), se nyní vrátí k širokému souboru dat, místo aby nevrátily nic.

2026-08-01 Nové AI Studio: postavte si vlastního asistenta na svém obsahu + našich živých datech

Novinka: /{lang}/developers/studio. Postavte si AI asistenta, který odpovídá z vašeho obsahu a našich živých hraničních dat. Dejte nám svůj markdown, nebo jen uveďte stránky a my je stáhneme a zaindexujeme — udržujete pouze vlastní soubory. Vyberte, které z našich kanálů může používat (fronta, předpověď, alternativy, denní statistiky, palivo, zákazy pro kamiony, prodejní neděle, svátky, stav silnic, autobusoví dopravci, POI, měna), zvolte úroveň modelu (rychlý / vyvážený / pro — právě ta určuje cenu), napište vlastní instrukce se zástupnými symboly {{feed.slug}} , které přesně určují, kam v odpovědi patří naše data, a přidejte vlastní závěrečnou větu připojovanou ke každé odpovědi. Hotové vzory: osobní cestovní asistent, pracovní/nákladní asistent, asistent pro prodej pojištění a zelené karty.

Otestujte ho ve studiu (30 odpovědí denně, odděleně od vaší API kvóty) a pak ho v produkci volejte přes GET /api/v2/data/assistant-custom?assistant_id=N&q=…. Cena za odpověď = jednotky úrovně modelu + 1 jednotka za každý zapnutý kanál, vrácená v X-Devapi-Units. Produkt je pouze ve v2 — URL v1 vrátí unsupported_version. Stávající produkt assistant se nemění.

Každý asistent běží pod obsahovou politikou platformy, která má přednost před vašimi instrukcemi: žádné vydávání se za úřední osoby, žádná pomoc s obcházením hraniční či celní kontroly, žádná vymyšlená čísla, žádné vulgarismy. Kontrolují se instrukce i odpovědi; zablokovaná volání se zaznamenávají.

2026-07-26 Nové MCP server (Streamable HTTP)

Novinka: skutečný MCP server na adrese https://nakordoni.eu/mcp, který zpřístupňuje bezpečnou podmnožinu API pouze pro čtení (status, checkpoints, border queue, live queue, forecast) jako MCP nástroje. Stejný API klíč a kvóta jako u REST API. Karta serveru na adrese /.well-known/mcp/server-card.json. Viz sekce MCP server v dokumentaci.

2026-07-21 Oprava Stránka dokumentace po přejmenování stále uváděla „Data Freshness API“ — nyní opraveno ve všech 25 jazycích

Níže popsané přejmenování na „Live Queue & Freshness API“ se ve skutečnosti nedostalo na stránku dokumentace . Stránka vypisuje název každého produktu přes vyhledání překladu, které sáhne po názvu koncového bodu jen tehdy, když překlad neexistuje — a překlad už existoval, zamrzlý na starém názvu, ve všech 25 jazycích rozhraní. Nyní má přednost před jakoukoli budoucí změnou základního názvu, dokud nebude aktualizován i on.

Klíč překladu jsme přejmenovali ve všech 25 jazycích, takže stránka dokumentace už sedí. Žádná změna koncového bodu, parametrů ani odpovědi — pouze text názvu.

2026-07-21 Nové Data Freshness API je zároveň váš koncový bod pro živou frontu v rámci standardní kvóty

Pokud často dotazujete data o živé frontě, možná zbytečně utrácíte těžkou kvótu. /update-info patří do standardní třídy a živou hodnotu už vrací:

GET /api/v1/data/update-info?ppid=id_13

Vrací queue_now, freshness, age_minutes, is_realtime, status, timestamp a timezone. Použijte jej pro časté obnovování ze své standardní denní kvóty a /queue, /multi a /forecast (všechny těžké třídy) si nechte na případy, kdy potřebujete wait_min, pole trendu nebo historii.

V samotném koncovém bodu se nic nezměnilo — jen v jeho dokumentaci. Byl uveden jako „Data Freshness API“ a jeho popis zmiňoval pouze hodnocení čerstvosti, nikdy queue_now, takže se dal snadno přehlédnout. Nyní se jmenuje „Live Queue & Freshness API“ a vracená pole jsou vypsaná. Děkujeme vývojáři, který na to upozornil.

2026-07-20 Oprava Neúspěšná volání nyní správně vracejí ok:false

Některé neúspěšné požadavky vracely HTTP 200 s ok: true a chybou ukrytou uvnitř data — zdokumentovaný vzor if (!ok) throw je tedy nedokázal odhalit a volání se stejně účtovalo. Dotčená volání nyní vracejí HTTP 400 s ok: false a řádnými error.code / error.messagepodle dokumentace. Zaznamenáno u fuel-cities s nepodporovanou zemí a u travel-matrix s chybnými souřadnicemi.

Odděleně: chybějící povinný parametr vracel 500 internal_error místo 400 bad_request (tělo odpovědi 4xx z interní služby se zahodilo dříve, než se přečetl její status). Nyní se vrací 400 bad_request se zprávou interní služby — např. search bez ?name=.

Úspěšné odpovědi jsou nezměněné do posledního bajtu — stejná pole, stejné parametry, stejná cena kvóty. Pokud se váš klient už větví podle ok, nemusíte měnit nic. Pokud ok ignoroval a četl přímo data , uvidí nyní chybové obálky u volání, která stejně vždy selhávala.

2026-07-20 Oprava Multi-Checkpoint API: přesná data o frontě při studené cache

Opravili jsme chybu, kdy /multi mohl vrátit nesprávný počet aut ve frontě pro některé přechody — hlavně balkánské a na hranici Maďarsko–Srbsko — vždy, když byla jeho cache studená. Záložní cesta četla tabulku, která pro tyto přechody neobsahuje data o frontě, a nesouvisející hodnoty hlásila jako počty aut. Naměřené příklady: přechod s 12 auty hlásil 6 a několik se skutečnými frontami hlásilo 0.

Tři změny, kterých si můžete všimnout:

  • found: false nyní znamená, že opravdu nejsou žádná čerstvá data o frontě. Dříve jste mohli dostat found: true s vymyšleným queue_now: 0.
  • wait_status, trend_percent a trend_direction se nyní vracejí i u studených požadavků — dříve byly null .
  • Koncový bod přejde na záložní cestu i tehdy, když je jeho uložený snímek zastaralý (starší než 24 h), nejen když chybí.

Žádné změny parametrů požadavku, ceny kvóty ani struktury odpovědi.

2026-07-20 Oprava Multi-Checkpoint API: opraveno dvojí účtování kvóty

Opravena chyba, kvůli které se každé volání /multi účtovalo dvakrát — jednou obecnou kontrolou 1 jednotky a podruhé vlastním vzorcem proměnlivých nákladů endpointu (N PPID × podprodukty). Volání nyní stojí přesně ⌈(N×M)/2⌉ jednotek dle dokumentace, bez dalšího poplatku.

Na stránce dokumentace jsme také přidali odznak třídy kvóty (Standard/Heavy) u každého produktu, aby bylo na první pohled jasné, ze které denní kvóty daný endpoint čerpá.

2026-07-15 Nové Holiday Calendar: sloučení country/countries, compare_to, více jazyků

country a countries byly sloučeny do jednoho parametru (1-15 kódů oddělených čárkou). Nový parametr compare_to: porovnání stejných a odlišných svátků mezi zeměmi, kombinuje se s upcoming+days. lang nyní přijímá více jazyků (přidává objekt names). days=0 nebo vynechání nyní znamená bez omezení v režimu upcoming.

2026-07-15 Nové Nový produkt: Holiday Calendar API

Oficiální státní svátky pro každou evropskou zemi — data, místní názvy a typ. Postaveno na téže službě Nager.Date / OpenHolidaysAPI (s lokálně vypočítaným kalendářem Kosova), která pohání stránku kalendáře svátků nakordoni.eu a kalendářní faktory předpovědního systému.

  • ?country=PL&year=2026 — úplný roční seznam svátků pro jednu zemi
  • ?upcoming=1&days=30 — plochý seznam nadcházejících svátků napříč zeměmi
  • Bez parametrů — index základní sady zemí s nejbližším svátkem pro každou
2026-07-13 Nové Nový produkt: Currency Exchange Rates API

Přidán produkt currency — směnné kurzy vůči EUR pro PLN, CZK, HUF, USD, GBP, CHF, NOK a UAH, ze zdroje Frankfurter (ECB), ukládané do mezipaměti na 6 hodin. Bez parametrů, vždy vrací kompletní tabulku kurzů. Viz dokumentace.

2026-07-12 Nové Bezplatný vložitelný widget zákazů pro kamiony

Vložte na vlastní web aktuální evropské zákazy jízdy kamionů — bezplatný iframe widget se 3 designy (light, dark, board), 5 jazyky (en, uk, pl, de, ru), volitelným filtrem podle země a živým stavem «aktivní nyní». Klíč API není potřeba. Nastavte a zkopírujte kód na nakordoni.eu/en/for_truck_drivers/traffic_bans/widget. Preferujete surová data? Produkt API truck-bans a veřejný JSON kanál zůstávají dostupné.

2026-07-11 Nové API v2 (verzování na úrovni endpointů), směrový border a interaktivní Sandbox

Tři novinky, všechny zpětně kompatibilní — v1 beze změn.

Verzování na úrovni endpointů. Nyní existuje základní URL /api/v2/. Funguje na úrovni endpointů: odlišně se chovají pouze endpointy, které se skutečně změnily; každý ostatní endpoint transparentně vrací svou odpověď v1 (takže /api/v2/data/queue = stejná data jako v1, jen s "api_version":"v2"). Fungující endpointy migrovat netřeba.

border v2 je směrový. Pořadí v cestě určuje směr jízdy:

GET /api/v2/data/border/1/2/6   → buses UA→PL (Ukrainian-side crossings)
GET /api/v2/data/border/2/1/6   → buses PL→UA (Polish-side crossings)

Každý hraniční přechod navíc získává objekt direction {from,to} a booleovskou hodnotu stale, a ?max_age_min=N vrací pouze nedávno aktualizované přechody. (v1 border stále vrací obě strany hranice bez ohledu na pořadí — beze změn.)

Interaktivní Sandbox. Přihlášení vývojáři nyní mohou vyzkoušet libovolný endpoint z prohlížeče na Developers → Sandbox — vyberte endpoint, verzi a jeden ze svých klíčů, upravte parametry a uvidíte živou odpověď. Testování v Sandbox má vlastní samostatný denní rozpočet (50 calls/day) a nikdy se nedotýká vaší produkční kvóty API.

Dokumentace je nyní rozdělena podle endpointů (Developers → API Docs) s přepínačem verzí u endpointů, které mají více než jednu verzi.

2026-07-10 Vylepšení queue-advanced: dva nové korekční faktory

Dva nové faktory zapojené do vzorce čekací doby, vedle stávajících úprav section_mode a počasí:

  • service_rate — naměřený počet aut/min aktuálně odbavovaných oproti nakonfigurované základní rychlosti přechodu. Multiplikativní, v rozmezí 0.5x-1.5x.
  • shift_change — vliv vlastního místního střídání směn pohraniční stráže v 08:00/20:00 na daném přechodu. Aditivní (minuty), nikoli multiplikativní — uplatňuje se pouze v rozmezí +/-60 minut od střídání, vyžaduje minimální historii vzorků, omezen na +/-120 minut.

advanced_wait_min je nyní round(base_wait × section_mode × weather × service_rate) + shift_change.adjustment_min. Oba faktory se také promítají do driver_reported.prognosed_advanced_wait_min pro historická porovnání.

2026-07-09 Nekompatibilní Několik čistě interních polí odstraněno z queue, border, multi, update-info

V rámci bezpečnostní/soukromí revize byla odstraněna následující pole — odhalovala interní detaily implementace (naši taxonomii zdrojů dat, ID řádků DB, interní anotace pipeline, nepoužívaná/mrtvá pole) bez reálné produktové hodnoty:

  • id a corrected — odstraněno z objektů řádků queue
  • source (surový řetězec, např. "line") — odstraněno z queue, multi a update-info. update-info a multi (jeho blok update_info) stále obsahují source_category/source_label_en (malý veřejný slovník); queue a multi (jeho blok queue) již neobsahují žádné pole zdroje
  • traffic_status — odstraněno z border; vždy bylo null a nikdy nebylo naplněno žádnou částí systému

Pokud vaše integrace čte kterékoli z těchto polí, aktualizujte ji — viz aktuální seznam polí na stránce dokumentace příslušného produktu.

2026-07-09 Nekompatibilní usage.used nyní může být desetinné číslo

Denní spotřeba kvóty (usage.used v každé odpovědi) může nyní být desetinná hodnota (např. 67.5) namísto vždy celého čísla. Jde o vedlejší efekt toho, že queue-advanced je účtován zlomkovou sazbou — viz níže. usage.limit zůstává beze změny a je vždy celé číslo. Pokud váš klient striktně typuje usage.used jako celé číslo, rozšiřte jej, aby přijímal desetinnou/plovoucí hodnotu.

2026-07-09 Nové wait_status a trend_percent/trend_direction přidány do border, multi a queue-advanced

Tyto tři produkty nyní vracejí stejná pole živého stavu, jaká zobrazuje web: wait_status (green/yellow/red, na základě vlastní nedávné historie tohoto přechodu) a trend_percent/trend_direction (up/up-slight/down/down-slight/stable, porovnání posledních 3 hodin). Čistě aditivní.

2026-07-09 Vylepšení queue: wait_time nyní vyplněno v každém historickém řádku

V /api/v1/data/queue měly řádky data[] dříve wait_time: null pro většinu zdrojů — jen několik externích kanálů hlásí čekací dobu přímo. Řádky bez ní nyní dostávají standardní odhad , označený novou booleovskou hodnotou wait_time_estimated, abyste rozlišili skutečně nahlášenou hodnotu od vypočítané.

2026-07-09 Nekompatibilní queue-advanced: účtován 1.5x, odpověď zkrácena

queue-advanced nyní stojí 1.5 jednotky za volání místo 1 (odráží dodatečné dotazy na provoz/počasí/hlášení řidičů, které provádí) — viz usage.used výše. Odpověď již také neobsahuje total_crossing_time a driver_reported je nyní jen {wait_min, ts, age_min} — předchozí pole porovnání prognózy se skutečností (prognosed_wait_min, diff_min, historical_section_mode, historical_weather atd.) byla odstraněna. section_mode, weather, advanced_wait_min a exceeds_crossing_time zůstávají beze změny.

2026-07-09 Vylepšení Truck Bans API: živý stav pro každou zemi (active_window / next_window)

/api/v1/data/truck-bans nyní vrací pro každou zemi v bans_by_country hodnotu status (active/clear) plus active_window, next_window, local_time a tz — vypočítané ve vlastním časovém pásmu dané země, takže už nemusíte sami porovnávat surová okna zákazů s hodinami. Odpověď také přidává seznam covered_countries nejvyšší úrovně a UTC časové razítko as_of.

GET /api/v1/data/truck-bans?country=PL

Čistě aditivní — stávající pole current_bans/upcoming_bans/bans_by_country zůstávají beze změny. Neznámý ?country= nyní vrací prázdný výsledek s countries_not_covered místo zákazů všech zemí.

2026-07-08 Nové Nový produkt: Advanced Wait Time API (queue-advanced)

Nový volitelný produkt, který upravuje standardní čekací dobu podle živého toku provozu a počasí. Vrací kompletní rozpis každé úpravy.

GET /api/v1/data/queue-advanced?ppid=id_13

Poskytováno na vyžádání — otevřete tiket Data ve svém panelu, abyste jej povolili.

2026-07-08 Vylepšení Border Queue API: wait_min nyní vyplněno pro každý přechod

/api/v1/data/border nyní správně počítá wait_min pro každý přechod v odpovědi, stejně jako produkty queue a multi. Dříve bylo toto pole vždy null.

2026-07-08 Vylepšení Forecast API: konzistentnější model + funkční signál počasí

/api/v1/data/forecast nyní spolehlivě používá ansámblový model v4 pro jakoukoli hodnotu prediction_steps (dříve se některé nestandardní horizonty mohly tiše vrátit ke staršímu modelu). Faktor počasí, který napájí ansámbl, byl také opraven a nyní skutečně odráží aktuální podmínky (déšť, sníh, vítr, mlha) místo toho, aby vždy hlásil nedostupnost.

2026-07-02 Nové Export historických dat (beta)

Schválení vývojáři nyní mohou stahovat hodinově zprůměrovaná historická data hraničních front pro až 5 přechodů (klouzavé okno až 90 dní) ve formátu CSV nebo NDJSON z nové záložky Data export. Data jsou pouze publikovaná a zkontrolovaná na kvalitu; časová razítka v UTC. Potřebujete přístup? Otevřete tiket Data.

2026-07-01 Vylepšení Registrace bez funkční stránky — místo toho popište svůj nápad

Ještě nemáte web? Nyní si můžete vytvořit vývojářský účet tím, že popíšete, kde a jak plánujete naše data využít, místo povinného zadání URL funkční stránky. Skutečnou URL doplňte později ze svého panelu (Account & data → Your project), jakmile bude váš web nebo aplikace v provozu — viditelný zpětný odkaz na nakordoni.eu na této stránce vyžadují naše Podmínky.

2026-06-22 Nové Odešlete hraniční zprávy za zpětný odkaz dofollow

Vývojáři nyní mohou odesílat vlastní hraniční zprávy do zpravodajské linky Nakordoni. Pokud je naši editoři zveřejní, získáte indexovatelný zpětný odkaz dofollow na vaši službu (zmínka o vydavateli + řádek zdroje) a my zdarma přeložíme článek do všech 24 jazyků.

Jeden článek týdně je zdarma; další články jsou placený doplněk. Zvolte 'můžeme mírně upravit + přidat interní odkazy' nebo 'zveřejnit tak, jak je'. Odesílejte a sledujte stav kontroly v sekci Developers → Submit news.

2026-06-14 Vylepšení Multi-Checkpoint API: sleva 50 % na kvótu

Multi-Checkpoint API (/api/v1/data/multi) nyní účtuje kvótu podle vzorce ⌈(N PPIDs × sub-products) / 2⌉ — poloviční náklady oproti ekvivalentním jednotlivým voláním. Požadavek na 10 přechodů s oběma podprodukty nyní stojí 10 jednotek místo 20. Hlavička X-Devapi-Units a meta.units_consumed v odpovědi odrážejí sníženou částku.

2026-06-14 Nové Nový produkt: Multi-Checkpoint API (multi)

Získejte živý stav front a čerstvost dat pro až 20 přechodů jedním voláním API — navrženo pro tvůrce dashboardů, kteří nyní dotazují mnoho PPIDs ve smyčce.

Kvóta se počítá spravedlivě jako N PPIDs × sub-products požadovaných, takže celková spotřeba je totožná s jednotlivými voláními — ale s jedním dotazem místo mnoha. Vzory ve stylu GreenTravel klesají z 24+ volání/hodinu na 2.

GET /api/v1/data/multi?ppids=id_2,id_13,id_15,id_59&include=queue,update-info&lang=en
  • include=queue — aktuální queue_now, odhadovaný wait_min, stáří dat a název přechodu
  • include=update-info — čerstvost dat, klasifikace zdroje, stáří v sekundách/minutách
  • Maximálně 20 PPIDs na požadavek; zkombinujte oba podprodukty v jednom volání pro kompletní data dashboardu
  • Odpověď obsahuje meta.units_consumed, takže můžete přesně sledovat spotřebu kvóty
2026-06-12 Nové Queue API: blok snapshot s prognózovanou čekací dobou

Odpověď produktu queue nyní obsahuje objekt snapshot nejvyšší úrovně s nejnovějšími daty v reálném čase a vypočítanou prognózovanou čekací dobou — stejný vzorec, jaký se používá v hero sekci nakordoni.eu:

snapshot.queue_now  — current cars in queue
snapshot.wait_min   — (minutes)
snapshot.updated_at — when the queue data was recorded
snapshot.age_min    — minutes since last update
snapshot.source     — data source identifier

Pole data (historické záznamy) zůstává beze změny — jde o čistě aditivní rozšíření. Klientů, kteří snapshot nečtou, se to netýká.

2026-06-12 Nové Nový produkt: Border Queue API (border)

Dotazujte se na všechny přechody na dané hranici + typ vozidla jedním voláním místo samostatného požadavku pro každý PPID.

GET /api/v1/data/border/{origin}/{destination}/{crossing_type}

  • Podporuje jednu cílovou zemi, seznam oddělený čárkami nebo all pro rozšíření na všechny sledované sousedy najednou.
  • Výsledky seřazené podle queue_now vzestupně (nejkratší fronta první).
  • Plně lokalizováno: přidejte ?lang=uk (nebo kterýkoli z našich 22 podporovaných jazyků) pro získání názvů přechodů v daném jazyce.
2026-06-12 Nové Nový produkt: Checkpoint Search API (search)

Vyhledávejte hodnoty PPID přechodů podle názvu bez procházení celého adresáře.

GET /api/v1/data/search?name=Krakovets,Shehyni&lang=en

  • Přijímá jeden název nebo seznam oddělený čárkami (až 20).
  • Vyhledává ve všech 24 jazycích překladu — zadejte název v ukrajinštině, polštině, němčině nebo kterémkoli podporovaném jazyce a bude nalezen.
  • Vrací všechny PPIDs v dané lokalitě seskupené podle typu vozidla (auto / autobus / chodec / kamion).
2026-06-12 Vylepšení Alternatives API: plná podpora i18n + přepsání crossing_type

Produkt alternatives nyní přijímá ?lang= ve všech 22 podporovaných jazycích (dříve pouze 12).

Nový parametr crossing_type umožňuje přepsat filtr typu vozidla — např. předejte crossing_type=4 pro získání alternativ pro auta i při dotazu z autobusového PPID.

2026-06-12 Vylepšení Checkpoints + Border + Search: lokalizované popisky typu přechodu a názvy zemí

Pole crossing_type_label v odpovědích checkpoints, border a search se nyní překládá do požadovaného jazyka ve všech 22 podporovaných jazycích. Pole názvů zemí (origin_name, destination_name) se řídí stejnou lokalizací.

2026-06-05 Nové Portál pro vývojáře spuštěn

Portál Nakordoni Developer API běží na adrese /en/developers. Zaregistrujte si bezplatný klíč Explorer (200 requests/day) pro přístup k datům hraničních front, předpovědím, cenám paliva, POI pro řidiče a dalšímu.

Produkty dostupné při spuštění: checkpoints, queue, stats, day-stats, forecast, alternatives, update_info, fuel, pois, truck_bans, trading_sundays, bus_carriers, road_conditions, assistant.

Tento protokol zahrnuje veřejné změny API. Interní aktualizace nejsou uvedeny.