Подача новостей и флот NakBus теперь в партнёрской панели
Подключите свой аккаунт разработчика к аккаунту Nakordoni Partners с тем же email и управляйте там новостями и своим автобусным флотом (NakDriver / NakManager), с ролями команды. Ваши API-ключи, эндпоинты и приложения остаются без изменений, а страницы здесь продолжают работать. Открыть Nakordoni Partners

← Все эндпоинты

API ближайших заправок Online

Ближайшие автозаправочные станции к точке или городу с актуальными ценами по каждому виду топлива, отсортированные по расстоянию. Покрытие на уровне станций охватывает 39 европейских стран и является ИЗМЕРЯЕМЫМ, а не фиксированным: каждый пустой ответ возвращает актуальный список стран с количеством станций по каждой стране в объекте coverage, ограниченный маркой (grade), которую вы запросили, — ориентируйтесь именно на это значение, а не на список в этом описании — те же данные, что и на топливных страницах nakordoni.eu; для национальных средних в остальных случаях используйте режим country fuel API. Цены возвращаются в собственной валюте каждой станции (PLN для польских станций, EUR — для остальных) — читайте поле currency для конкретной станции, никогда не сравнивайте сами числа. Если ни одна станция не подходит, ответ содержит объект coverage вместо молчаливого пустого списка: station_countries и station_counts, измеренные по актуальному индексу (ограниченные `grade`, если был указан fuel_type), sparse_coverage для стран, где есть 25 или менее станций с ценами, measured_at и fuel_type_note, которая различает две причины пустого ответа — название марки, которое не удалось распознать, и марку, которую мы распознаём, но не оцениваем в данной стране.

GET https://nakordoni.eu/api/v2/data/fuel-stations — класс квоты: cheap

ПараметрОписание
latШирота
lonДолгота
cityНазвание города — альтернатива lat/lon, преобразуется в координаты
countryКод страны ISO-2, уточняет город
radius_kmРадиус поиска в км (по умолчанию 25, максимум 25; алиас: radius)
fuel_typeНеобязательный фильтр: diesel | e5 | e10 | superplus | super100 | premdiesel | truckdiesel | hvo | lpg | cng | adblue | e85 | lng (доступность зависит от АЗС/региона; польские АЗС сообщают Pb95 как e5, Pb98 как superplus и ON как diesel). Локальные названия топлива на колонках также принимаются — ON, Olej napędowy, Pb95, Nafta, Dizel, Gázolaj, Motorină, Benzină 95, ДП, А-95, Motorin, Gasóleo, Sans plomb 95, Bleifrei … — они распознаются относительно `country` (или, для продуктов по координатам, страны, в которую попадает точка), потому что одно и то же название не везде означает один и тот же сорт: «95» — это E10 на датской, финской, французской, британской, бельгийской или нидерландской колонке и E5 на польской или немецкой. В ответе возвращаются `fuel_type` (канонический), `fuel_type_requested` (в том виде, как вы его ввели) и `fuel_type_local`. Название, которое мы не смогли сопоставить, никогда не подменяется сортом по умолчанию — ответ возвращается пустым и сообщает об этом. Полная таблица названий по странам: /api/v2/data/fuel-grades.
limitМаксимум АЗС (по умолчанию 5, максимум 20)
langЯзык подписей (по умолчанию en)

Поля ответа — внутри объекта data в конверте ответа. [] обозначает список, поэтому data.items[].name — это поле name каждого элемента. Поле бывает null, отсутствует или пустой список, если значения у нас нет, — заглушки мы не подставляем.

ПолеОписание
data.anchor.latThe point actually searched (after city geocoding), with lng, ppid and radius_km.
data.anchor.fuel_typeThe canonical grade the list was filtered to; fuel_type_requested is what you sent, fuel_type_local the local pump name and fuel_type_country the country the name was read in.
data.stations[].nameStation, with brand and address. Each physical station appears ONCE: its grades are nested under prices, not spread over repeated rows. `brand` is the chain when we know it and null when we do not — never a placeholder token, so treat null as "independent or unknown" and fall back to `name`. Address detail varies by national feed: some report a full street address, others only the town.
data.stations[].station_refStable key for the station (name + position). Key your records on it whenever id is null — id is set only for rows that come from our station directory.
data.stations[].pricesObject keyed by grade (diesel, e5, e10, lpg …): price, currency and currency_symbol, local_name (the pump name used in that country), label, updated_at, confirmed_at, age_hours and stale. Each station carries its own currency, so never compare the raw numbers. A station with no quote at all carries an empty object here. TWO CLOCKS, and they answer different questions — do not derive one from the other: `updated_at` is when this price last MOVED, so a forecourt that has held the same price for ten days keeps a ten-day-old stamp and that is correct, not stale data; `confirmed_at` is when we last CONFIRMED the quote against its feed, and it is the clock `age_hours` and `stale` are measured on (age_hours = now − confirmed_at). Read `confirmed_at`/`stale` for freshness and `updated_at` for price history. Both are floored to the hour, so `now − confirmed_at` can sit up to an hour above `age_hours`, which is measured before the floor; `confirmed_at` is never earlier than `updated_at`, because a price change is itself a confirmation.
data.stations[].gradesThe grade keys present in prices, alongside freshest_age_hours and a station-level stale flag (true only when NO quote of that station is current).
data.stations[].distance_kmDistance from the anchor, with lat and lng of the station itself.
data.countStations returned; data.total_found is how many matched inside the radius before limit was applied.
data.noticesPresent whenever we adjusted a parameter you sent: each entry names the param, the requested and the applied value, and the reason.
data.coverageOnly when nothing matched. grade (the fuel_type your wording resolved to, or null), station_countries and station_counts measured from the live station index and scoped to that grade, sparse_coverage for countries with 25 priced stations or fewer, measured_at, a note explaining all of it, and fuel_type_note when the grade name could not be placed OR when we recognise the grade but price it nowhere in this country.
curl "https://nakordoni.eu/api/v2/data/fuel-stations?city=Munich&country=DE&radius_km=20&fuel_type=diesel" \
  -H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX"
🔑 Войдите как разработчик, чтобы протестировать этот эндпоинт вживую в песочнице — 50 бесплатных тестовых вызовов в день. Войти

Обновлено