API документација
REST + JSON преко HTTPS. Један основни URL, један кључ, предвидиви омотачи.
| Основни URL | https://nakordoni.eu/api/v1/data/ |
|---|---|
| Формат | JSON, UTF-8 |
| Аутентификација | Authorization: Bearer NKD-DEV-… |
| Верзионирање | Верзионисање кроз путању и по крајњој тачки: /api/v1/… је стабилан; /api/v2/… нуди ново понашање само за крајње тачке које су се промениле, а за остале се транспарентно враћа на v1. Одговори v1 се никада не мењају. |
На овој страници
Аутентификација
Сваки захтев захтева ваш API кључ у заглављу Authorization (препоручено) или као параметар ?key=.
curl "https://nakordoni.eu/api/v1/data/queue?ppid=id_13" \ -H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX"
Формат одговора
{
"ok": true,
"api_version": "v1",
"product": "queue",
"attribution": "Data by nakordoni.eu",
"data": { ... },
"usage": { "limit": 1000, "used": 42, "reset": "2026-06-06T00:00:00Z" }
}
Грешке враћају ok:false са error.code (missing_api_key, invalid_api_key, qps_exceeded, quota_exceeded, unknown_product, product_unavailable, bad_request, internal_error) и HTTP статусом 401/403/404/429/500. Заглавља за ограничење брзине X-Devapi-Limit и X-Devapi-Remaining шаљу се са сваким мереним одговором.
Квоте
| Explorer | Pay As You Grow | |
|---|---|---|
| позива/дан на стандардним API-јима за податке | 1,000 | 50,000 |
| позива/дан на API-јима за прогнозе и статистику | 200 | 10,000 |
| QPS | 2 | 20 |
Дневни бројачи се ресетују у поноћ по UTC. Добијате имејл на 80% и 100% квоте.
Примери кода
curl
curl "https://nakordoni.eu/api/v1/data/queue?ppid=id_13" \ -H "Authorization: Bearer $NKD_API_KEY"
JavaScript (fetch)
const res = await fetch('https://nakordoni.eu/api/v1/data/forecast?ppid=id_13&prediction_steps=24', {
headers: { Authorization: `Bearer ${process.env.NKD_API_KEY}` }
});
const { ok, data, error, usage } = await res.json();
if (!ok) throw new Error(error?.code ?? res.status);
console.log(`forecast points: ${data.length}, calls left today: ${usage.limit - usage.used}`);
Python (requests)
import os, requests
r = requests.get(
"https://nakordoni.eu/api/v1/data/stats",
params={"ppid": "id_15", "compare": 1},
headers={"Authorization": f"Bearer {os.environ['NKD_API_KEY']}"},
timeout=15,
)
payload = r.json()
print(payload["data"]["daily"], payload["usage"])
Excel (Power Query)
Preuzmite podatke o redovima čekanja, prognozama ili zabranama za kamione direktno u radnu svesku pomoću ugrađenog JSON konektora u Power Query-ju — bez koda, sa osvežavanjem po rasporedu. Isti obrazac Headers-a radi za svaki proizvod ovog API-ja — samo promenite URL.
Data → Get Data → From Other Sources → Blank Query, then Home → Advanced Editor and paste:
let
ApiKey = "NKD-DEV-XXXX-XXXX-XXXX",
Source = Json.Document(Web.Contents("https://nakordoni.eu/api/v1/data/queue",
[Query = [ppid = "id_13"], Headers = [Authorization = "Bearer " & ApiKey]])),
data = Source[data],
AsTable = Record.ToTable(data)
in
AsTable
Čuvajte API ključ unutar M upita (Home → Advanced Editor), a ne u ćeliji lista — Power Query blokira veb zahtev sastavljen iz drugog upita ili ćelije ("Formula.Firewall"), osim ako nivo privatnosti nije podešen na Organizational.
Više graničnih prelaza u jednoj tabeli (kontrolne table za vozni park) — e.g. every truck crossing UA→EU (crossing_type=9):
let
ApiKey = "NKD-DEV-XXXX-XXXX-XXXX",
Source = Json.Document(Web.Contents("https://nakordoni.eu/api/v1/data/border/1/all/9",
[Headers = [Authorization = "Bearer " & ApiKey]])),
checkpoints = Source[data],
AsTable = Table.FromRecords(checkpoints)
in
AsTable
Data → Refresh All u Excel-u ili planirano osvežavanje u Power BI / Excel Online-u održava podatke ažurnim — bez koda za periodično proveravanje (polling).
Integracija sa ERP (BAS / BAF i platforme porodice 1C)
BAS / BAF i druge platforme porodice 1C mogu da pozovu ovaj API direktno iz zakazanog zadatka — HTTPConnection plus ReadJSON, bez međusloja i bez dodatnog servisa. Najčešća postavka održava ažurnim registar informacija sa cenama goriva u EU.
Osvežavanje registra informacija (cene goriva, sve zemlje u jednom pozivu)
// Scheduled job — runs once a day
Connection = New HTTPConnection("nakordoni.eu", 443, , , , 30, New OpenSSLSecureConnection);
Headers = New Map;
Headers.Insert("Authorization", "Bearer NKD-DEV-XXXX-XXXX-XXXX");
Request = New HTTPRequest("/api/v1/data/fuel", Headers);
Response = Connection.Get(Request);
Reader = New JSONReader;
Reader.SetString(Response.GetBodyAsString("UTF-8"));
Answer = ReadJSON(Reader, True);
Reader.Close();
If Answer["ok"] <> True Then
// Answer["error"]["code"] says why; Answer["usage"] holds your quota state
Return;
EndIf;
For Each Row In Answer["data"] Do
Record = InformationRegisters.FuelPrices.CreateRecordManager();
Record.Period = CurrentSessionDate();
Record.Country = Row["country"]; // "PL", "DE", "SK", "RO", ...
Record.Diesel = Row["diesel"];
Record.Petrol = Row["petrol"];
Record.LPG = Row["lpg"];
Record.Currency = Row["currency"];
Record.Write();
EndDo;
Tri stvari treba pogoditi: prosledite New OpenSSLSecureConnection na portu 443, inače zahtev pada na TLS; pozovite /api/v1/data/fuel bez parametra country da jedan zahtev vrati sve zemlje umesto poziva po zemlji; i proverite ok pre nego što dirnete data — greške se vraćaju kao ok:false sa error.code, a ne kao izuzetak. Primer koristi engleski skup ključnih reči platforme; lokalizovani ekvivalenti (HTTPСоединение, ПрочитатьJSON, РегистрыСведений) ponašaju se isto.
Cene goriva se u izvorima menjaju jednom dnevno, pa je zakazani zadatak jednom ili dvaput dnevno sasvim dovoljan i ostaje duboko unutar besplatne Explorer kvote. Podaci o redovima uživo (queue, multi, border) menjaju se na svakih nekoliko minuta — njih povlačite po sopstvenom rasporedu i koristite multi da pročitate do 20 graničnih prelaza jednim zahtevom umesto u petlji.
MCP сервер
Више волите позивање алата него REST? Покрећемо прави MCP сервер (Streamable HTTP транспорт) који излаже безбедан подскуп овог API-ја само за читање као MCP алате — исти API кључ, иста квота, само другачији транспорт.
Endpoint: https://nakordoni.eu/mcp · Server card: /.well-known/mcp/server-card.json
get_api_status — no key required list_checkpoints — country, lang get_border_queue — origin, destination, crossing_type, lang get_live_queue — ppid, lang get_queue_forecast — ppid, prediction_steps
Конфигурација клијента (Claude Desktop / Claude Code):
{
"mcpServers": {
"nakordoni": {
"url": "https://nakordoni.eu/mcp",
"headers": { "Authorization": "Bearer NKD-DEV-XXXX-XXXX-XXXX" }
}
}
}
Производи
Изаберите крајњу тачку за њену пуну референцу, параметре, верзије и Sandbox уживо.
Стандардни koristi standardnu kvotu podataka · Тежак koristi kvotu prognoze i statistike — vidi Квоте
Редови на граници
Тренутно стање сваког производа Developer API-ја: онлајн / деградиран / офлајн, латентност одговора и вријеме посљедње провјере. …
Именик свих надгледаних граничних прелаза: идентификатори, имена, државе, координате и статус. Користите га да откријете вредност…
Сви прелази на датој граници за један тип возила у једном позиву. Подржава јединствено одредиште, листу са зарезима или "all". Ре…
Пронађите PPID граничних прелаза по имену на билом ком језику. Враћа све PPID за ту локацију, груписане по типу возила. До 20 име…
Редови у реалном времену, процена времена чекања и статус за сваки граничниот прелаз. Укључује блок snapshot: тренутни ред (queue…
Преузмите статус реда и свежину подaтака за до 20 контролних тачака у једном захтеву. Квота се израчунава као ⌈(N PPID × под-прои…
Оближњи алтернативни прелази на истој граници са тренутним редовима и разликама у удаљености.
Када је прелаз последњи пут ажуриран, којим извором и оцена ажурности.
Прогнозе и статистике
Прогноза нивоа реда помоћу ML ансамбла: хоризонти од 24 сата и 7 дана (168ч) са границама поузданости. Исти модел који покреће пр…
Сатна историјска статистика реда по прелазу и датуму: 24 сатне вредности, дневни просек/мин/макс, најпрометнији и најмирнији сати…
Статистика типичне недеље по граничном прелазу: матрица 7×24 дан-у-недељи×сат (медијана + опсег p25/p75), најтиши/најпрометнији д…
Гориво и локације
Просечне цене бензина/дизела/LPG у земљама ЕУ плус најближе бензинске станице, агрегиране из званичних националних извора.
Цене горива по градовима: најјефтинија станица и просек 5 најјефтинијих.
Паркинзи за камионе (14k+), бесплатни тушеви, услуге и супермаркети широм Европе са координатама.
Kursevi razmene zasnovani na EUR za PLN, CZK, HUF, USD, GBP, CHF, NOK i UAH, izvor Frankfurter (ECB), keš 6 sati. Bez parametara …
Планирање путовања
Plan od vrata do vrata za putovanje preko granice: ruta, granični prelazi na njoj sa trenutnim redom ili prognozom za vreme vašeg…
Путно вријеме + граничнa ред за све прелазе из задате почетне тачке.
Европска ограничења вожње камиона по држави и датуму, укључујући сезонске и празничне забране.
Прописи о недељној малопродаји и предстојеће трговачке недеље по регулисаној држави ЕУ.
Official public holidays per European country — dates, local names and type, each country's full holiday list included. Backed by…
Возачи и путеви
Одобрени извештаји о стању путева у близини граница и на главним коридорима: рупе, радови на путу, затварања, лед, опасности — ко…
Учинак при преласку границе по аутобуском превознику: преласци, просечни/медијана/мин/макс минути чекања — изграђено из наших соп…
ВИ асистент
Поставите нашем продукционом AI асистенту било које питање о преласку границе (редови, прогнозе, правила, гориво, руте) и добијте…
Ваш сопствени AI асистент, који одговара из ВАШЕГ садржаја и НАШИХ живих граничних података. Дајте нам своје markdown фајлове или…
Остало
Извоз историјских података
Одобрени програмери могу да преузму објављену историју граничних редова, усредњену по сату, за до 5 прелаза (клизни опсег до 90 дана) као gzip CSV, NDJSON или JSON. Ово је функција само у порталу — НИЈЕ API крајња тачка; извозе правите и преузимате са картице „Извоз података“ у свом налогу.
Приступ се одобрава на захтев: отворите тикет типа Data и реците нам које прелазе, у ком временском опсегу и за коју намену. Након одобрења, у вашем налогу се појављује картица „Извоз података“. Подразумевано ограничење: 1 извоз дневно, до 5 прелаза по извозу — тражите од нас да га повећамо.
Поља — по један ред за сваки прелаз за сваки UTC сат
| Параметар | Опис |
|---|---|
ppid | Идентификатор прелаза |
checkpoint_name | Назив граничног прелаза |
hour_utc | Сатни интервал, ISO-8601 UTC |
direction | нпр. UA->PL |
vehicle_type | аутомобил / аутобус / камион / пешак |
avg_queue_length | Просечна дужина реда по сату |
avg_wait_minutes | Просечно чекање по сату; null тамо где прелаз нема званични извор података о чекању |
sample_count | Број осматрања у том сату |
Извозе се само објављени подаци, који пре тога пролазе наше провере аномалија и квалитета (без сирових појединачних пријава). Све временске ознаке су у UTC. Датотеке се чувају 10 дана.
Порекло: свака датотека у заглављу носи потписан отисак (sha256 + HMAC), тако да се било која копија касније може потврдити као аутентични подаци са nakordoni.eu и проверити на измене — чак и после преузимања.
# sha256: 3f9c… # signature: e87b… ppid,checkpoint_name,hour_utc,direction,vehicle_type,avg_queue_length,avg_wait_minutes,sample_count id_10,Hrushiv,2026-06-12T02:00:00Z,UA->PL,car,11,,4
Шта можете да изградите
Исти производи са подацима приказују визуелне елементе на nakordoni.eu — недељне графиконе прогноза, сатне профиле гужви, картице са статусом уживо. Кратак увид у то шта садрже API-ји за прогнозе и статистику:
Атрибуција
Интеграције по плану Explorer морају приказати видљиву везу „Data by nakordoni.eu“ свуда где се подаци приказују. То одржава бесплатан план бесплатним.
Тачан код
Копирајте овај фрагмент без измена. Линк мора остати индексабилан: обичан HTML <a href> који претраживачи могу да прате — НЕ додавајте rel="nofollow" или rel="sponsored", не рендерујте га само преко JavaScript-а и не скривајте га CSS-ом.
<a href="https://nakordoni.eu/" title="Border queues, forecasts & statistics">Data by nakordoni.eu</a>
Компактна ситна варијанта (нпр. испод графикона или виџета):
<p style="font-size:12px;margin:4px 0"> Data by <a href="https://nakordoni.eu/">nakordoni.eu</a> </p>
Можете линковати ка својој језичкој верзији, нпр. https://nakordoni.eu/sr/ — рачуна се сваки индексабилан линк ка nakordoni.eu. Текст сидра "Data by nakordoni.eu" мора остати на енглеском.
Где га поставити
- Непосредно поред или испод блока података (табела, графикон, виџет, одговор) — на истом екрану, видљиво без додатних кликова.
- На свакој страници или екрану апликације где се појављују наши подаци — не само на страници "о нама".
- Читљива величина и контраст: најмање ~11px, не скривено, не склопљено, не у боји позадине.
- Нативне мобилне апликације без HTML линкова: прикажите текст "Data by nakordoni.eu" на екрану са подацима и поставите кликабилан линк на информативни екран.
Периодично проверавамо атрибуцију на "страници коришћења података" наведеној при регистрацији. Недостајућа или деиндексирана атрибуција у плану Explorer води прво до подсетника, затим до суспензије кључа. Клијенти Pay As You Grow могу изоставити атрибуцију.