Перейти до вмісту
Menu
📰 Має новини з межей? Надішліть її в нашу стрічку новин і отримайте індексоване dofollow зворотне посилання + безкоштовний переклад на 24 мови — 1 стаття на тиждень безкоштовно. Надіслати прикордонні новини →

Документація API

REST + JSON через HTTPS. Один базовий URL, один ключ, передбачувані конверти.

Raw .md GitHub
Базовий URLhttps://nakordoni.eu/api/v1/data/
ФорматJSON, UTF-8
АвтентифікаціяAuthorization: Bearer NKD-DEV-…
ВерсіонуванняВерсія в шляху й окремо для кожного ендпоінта: /api/v1/… стабільний; /api/v2/… віддає нову поведінку лише для тих ендпоінтів, що змінилися, а для решти прозоро повертається до v1. Відповіді v1 ніколи не змінюються.

На цій сторінці

Автентифікація · Формат відповіді · Квоти · Приклади коду · Excel / Power Query · ERP (BAS / 1С) · MCP-сервер · Атрибуція · Експорт історичних даних · Що ви можете створити
Продукти Черги на кордоні: Статус API · API довідника пунктів пропуску · API черг на кордоні v2 · API пошуку КПП · API живої черги на кордоні · Multi-Checkpoint API · API альтернативних пунктів пропуску · API живої черги та актуальності  ·  Прогнози та статистика: API прогнозу черги · API погодинної статистики пункту пропуску · API «Найкращий час для перетину»  ·  Пальне та локації: API цін на пальне в ЄС · API цін на пальне за містами · API точок інтересу для водіїв · Валютний API обмінних курсів  ·  Планування маршруту: API планувальника маршруту · API матриці поїздок · API заборон руху вантажівок · API торгових неділь · Календар API вихідних днів  ·  Водії та дороги: API стану доріг · API прикордонної статистики автобусних перевізників  ·  ШІ-асистент: API прикордонного AI-асистента · API персонального AI-асистента

Автентифікація

Кожен запит потребує вашого ключа 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 надсилаються в кожній тарифікованій відповіді.

Квоти

ExplorerPay As You Grow
викликів/день для стандартних API даних1,00050,000
викликів/день для API прогнозів і статистики20010,000
QPS220

Денні лічильники скидаються опівночі за UTC. Ви отримуєте email при досягненні 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)

Отримуйте дані про черги, прогнози чи заборони для вантажівок прямо в таблицю за допомогою вбудованого JSON-конектора Power Query — без коду, з оновленням за розкладом. Та сама схема заголовків (Headers) працює для будь-якого продукту цього API — достатньо змінити 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

Тримайте ключ API всередині M-запиту (Home → Advanced Editor), а не в клітинці аркуша — Power Query блокує вебзапит, побудований на основі іншого запиту чи клітинки ("Formula.Firewall"), якщо рівень конфіденційності не встановлено як Organizational.

Кілька пунктів пропуску в одній таблиці (дашборди для автопарку) — 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 в Excel або заплановане оновлення в Power BI / Excel Online тримає дані актуальними — без коду опитування (polling).

Інтеграція з ERP (BAS / BAF та платформи родини 1С)

BAS / BAF та інші платформи родини 1С можуть звертатися до цього API просто з регламентного завдання — HTTPConnection плюс ReadJSON, без проміжного сервісу. Найпоширеніший сценарій: тримати в актуальному стані регістр відомостей із цінами на пальне в ЄС.

Оновлення регістру відомостей (ціни на пальне, усі країни одним запитом)

// 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;

Три речі, які треба зробити правильно: передайте New OpenSSLSecureConnection на порт 443, інакше запит впаде на TLS; викликайте /api/v1/data/fuel без параметра country — один запит поверне всі країни замість окремого виклику на кожну; і перевіряйте ok перед тим, як читати data — помилки приходять як ok:false з error.code, а не як виняток. У прикладі використано англомовний набір ключових слів платформи; локалізовані відповідники (HTTPСоединение, ПрочитатьJSON, РегистрыСведений) працюють ідентично.

Ціни на пальне у джерелах змінюються раз на добу, тож регламентного завдання раз або двічі на день достатньо — і це залишається глибоко в межах безкоштовної квоти Explorer. Дані живих черг (queue, multi, border) оновлюються кожні кілька хвилин: опитуйте їх за власним графіком і беріть multi, щоб зчитати до 20 пунктів пропуску одним запитом замість циклу.

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" }
    }
  }
}

Продукти

All systems operational Checked 2026-08-06T03:15:10Z · Live JSON: GET /api/v1/data/status (no key) · full status page

Оберіть ендпоінт, щоб побачити повний довідник, параметри, версії та живу пісочницю.

Стандартний використовує стандартну квоту даних  ·  Важкий використовує прогноз та статистику ліміту — див. Квоти

Черги на кордоні

Статус API Стандартний

Поточний стан кожного продукту Developer API: онлайн / деградований / офлайн, затримка відповіді та час останньої перевірки. Публ…

API довідника пунктів пропуску СтандартнийOnline

Довідник усіх відстежуваних прикордонних пунктів пропуску: ID, назви, країни, координати та статус. Використовуйте його, щоб отри…

API черг на кордоні ВажкийOnlinev2

Усі КПП на заданому кордоні для одного типу транспорту одним запитом — жива черга, оцінка часу та свіжість даних. Підтримує один …

API пошуку КПП СтандартнийOnline

Знайдіть PPID КПП за назвою будь-якою мовою. Повертає всі PPID для цього місця, згруповані за типом транспорту. До 20 назв за зап…

API живої черги на кордоні ВажкийOnline

Черги в реальному часі, оцінка часу очікування та статус для будь-якого КПП. Включає блок snapshot: поточна черга (queue_now), пр…

Multi-Checkpoint API ВажкийOnline

Отримуйте статус черги та актуальність даних для до 20 контрольних точок в одному запиті. Квота рахується як ⌈(N PPID × під-проду…

API альтернативних пунктів пропуску СтандартнийOnline

Найближчі альтернативні пункти пропуску на тому самому кордоні з поточними чергами та різницею у відстані.

API живої черги та актуальності СтандартнийOnline

Коли пункт пропуску востаннє оновлювався, яким джерелом, та оцінка свіжості.

Прогнози та статистика

API прогнозу черги ВажкийOnline

Прогноз рівнів черги на основі ML-ансамблю: горизонти на 24 години та 7 днів (168 год) із довірчими межами. Та сама модель, що жи…

API погодинної статистики пункту пропуску ВажкийOnline

Погодинна історична статистика черги за пунктом пропуску та датою: 24 погодинні значення, добове середнє/мінімум/максимум, пікові…

API «Найкращий час для перетину» СтандартнийOnline

Статистика типового тижня для пункту пропуску: матриця 7×24 «день тижня × година» (медіана + діапазон p25/p75), найтихіший/найбіл…

Пальне та локації

API цін на пальне в ЄС СтандартнийOnline

Середні ціни на бензин/дизель/LPG по країнах ЄС, а також найближчі заправки, агреговані з офіційних національних джерел.

API цін на пальне за містами СтандартнийOnline

Ціни на пальне за містами для вибраної країни: найдешевша АЗС та середня ціна по кожному великому місту. Охоплює ті ж країни, що …

API точок інтересу для водіїв СтандартнийOnline

Парковки для вантажівок (14 тис.+), безкоштовні душові, сервіси та супермаркети по всій Європі з координатами.

Валютний API обмінних курсів СтандартнийOnline

Обмінні курси на основі EUR для PLN, CZK, HUF, USD, GBP, CHF, NOK та UAH, джерело Frankfurter (ECB), кешування 6 годин. Без парам…

Планування маршруту

API планувальника маршруту ВажкийOnline

План поїздки від дверей до дверей: маршрут, пункти пропуску на ньому з живою чергою або прогнозом на час вашого прибуття, а також…

API матриці поїздок ВажкийOnline

Час у дорозі + черга на кордоні для всіх пунктів пропуску з заданого пункту відправлення: відстань, час їзди, поточна черга, зага…

API заборон руху вантажівок СтандартнийOnline

Європейські обмеження руху вантажівок за країною та датою, включно із сезонними та святковими заборонами.

API торгових неділь СтандартнийOnline

Правила недільної роздрібної торгівлі та найближчі торгові неділі для кожної регульованої країни ЄС.

Календар API вихідних днів СтандартнийOnline

Official public holidays per European country — dates, local names and type, each country's full holiday list included. Backed by…

Водії та дороги

API стану доріг СтандартнийOnline

Підтверджені звіти про стан доріг поблизу кордонів та на основних коридорах: вибоїни, дорожні роботи, перекриття, ожеледь, небезп…

API прикордонної статистики автобусних перевізників СтандартнийOnline

Показники перетину кордону за автобусним перевізником: перетини, середні/медіанні/мін/макс хвилини очікування — побудовано на осн…

ШІ-асистент

API прикордонного AI-асистента ВажкийOnline

Поставте нашому продакшн AI-асистенту будь-яке питання про перетин кордону (черги, прогнози, правила, пальне, маршрути) та отрима…

API персонального AI-асистента ВажкийOnline

Ваш власний AI-асистент, який відповідає на основі ВАШОГО контенту та НАШИХ живих даних про кордон. Дайте нам свої markdown-файли…

Інше

Advanced Wait Time API

Експорт історичних даних

Схвалені розробники можуть завантажити опубліковану історію черг на кордоні, усереднену погодинно, для до 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 прогнозів і статистики:

7-day border queue forecast chart built from the Forecast API
Тижневий прогноз + погодинний профіль найзавантаженішого дня — Forecast API (prediction_steps=168 / 24)
Hourly queue statistics chart built from the Statistics API
Погодинний графік черги по пункту — Statistics API (stats?ppid=…&compare=1)

Атрибуція

Інтеграції плану Explorer мають показувати видиме посилання "Data by nakordoni.eu" скрізь, де відображаються дані. Це зберігає безкоштовний план безкоштовним.

Точний код

Скопіюйте цей фрагмент як є. Посилання має залишатися індексованим: звичайний HTML <a href>, який пошукові системи можуть переходити — НЕ додавайте rel="nofollow" чи rel="sponsored", не рендеріть його лише через JavaScript і не ховайте через CSS.

<a href="https://nakordoni.eu/" title="Border queues, forecasts &amp; 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/uk/ — рахується будь-яке індексоване посилання на nakordoni.eu. Текст якоря "Data by nakordoni.eu" має залишатися англійською.

Де розміщувати

Ми періодично перевіряємо атрибуцію на "сторінці використання даних", яку ви вказали під час реєстрації. Відсутність або деіндексація атрибуції на плані Explorer спершу веде до нагадування, потім до призупинення ключа. Клієнти Pay As You Grow можуть не вказувати атрибуцію.

Отримати безкоштовний ключ API