La soumission d'actualités et la flotte NakBus sont désormais dans le tableau de bord partenaire
Connectez votre compte développeur à un compte Nakordoni Partners avec la même adresse e-mail et gérez-y les actualités et votre flotte de bus (NakDriver / NakManager), avec des rôles d'équipe. Vos clés API, points de terminaison et applications restent inchangés, et les pages ici continuent de fonctionner. Ouvrir Nakordoni Partners

← Tous les endpoints

API des stations-service à proximité Online

Les stations-service les plus proches d'un point ou d'une ville, avec les prix actuels par type de carburant, triées par distance. La couverture au niveau des stations s'étend sur 39 pays européens et est MESURÉE, non figée : chaque réponse vide renvoie la liste actuelle des pays avec le nombre de stations par pays dans son objet coverage, limité à la qualité demandée — lisez donc celui-ci plutôt qu'une liste dans cette description — mêmes données que les pages carburant de nakordoni.eu ; utilisez le mode country de la fuel API pour les moyennes nationales ailleurs. Les prix sont renvoyés dans la devise propre à chaque station (PLN pour les stations polonaises, EUR ailleurs) — lisez le champ currency de chaque station, ne comparez jamais les nombres bruts. Lorsqu'aucune station ne correspond, la réponse inclut un objet coverage au lieu d'une liste vide silencieuse : station_countries et station_counts mesurés depuis l'index en direct (limités à `grade` lorsque vous avez indiqué un fuel_type), sparse_coverage pour les pays comptant 25 stations avec prix ou moins, measured_at, et une fuel_type_note qui distingue les deux raisons pour lesquelles une réponse peut être vide — un nom de qualité que nous n'avons pas pu identifier, par opposition à une qualité que nous reconnaissons mais que nous ne cotons pas dans ce pays.

GET https://nakordoni.eu/api/v2/data/fuel-stations — classe de quota: cheap

ParamètreDescription
latLatitude
lonLongitude
cityNom de la ville — alternative à lat/lon, converti en coordonnées
countryCode pays ISO-2, lève l'ambiguïté sur la ville
radius_kmRayon de recherche en km (par défaut 25, max. 25 ; alias : radius)
fuel_typeFiltre facultatif : diesel | e5 | e10 | superplus | super100 | premdiesel | truckdiesel | hvo | lpg | cng | adblue | e85 | lng (la disponibilité varie selon la station et la région ; les stations polonaises déclarent Pb95 comme e5, Pb98 comme superplus et ON comme diesel). Les appellations locales à la pompe sont également acceptées — ON, Olej napędowy, Pb95, Nafta, Dizel, Gázolaj, Motorină, Benzină 95, ДП, А-95, Motorin, Gasóleo, Sans plomb 95, Bleifrei … — elles sont résolues par rapport à `country` (ou, pour les produits par coordonnées, au pays dans lequel tombe le point), car le même libellé ne désigne pas partout le même carburant : « 95 » correspond à E10 sur une pompe danoise, finlandaise, française, britannique, belge ou néerlandaise, et à E5 sur une pompe polonaise ou allemande. La réponse renvoie `fuel_type` (canonique), `fuel_type_requested` (tel que vous l'avez saisi) et `fuel_type_local`. Une appellation que nous ne savons pas situer n'est jamais remplacée par un carburant par défaut : la réponse revient vide et le signale. Tableau complet des appellations par pays : /api/v2/data/fuel-grades.
limitNombre max. de stations (par défaut 5, max. 20)
langLangue des libellés (par défaut en)

Champs de la réponse — à l’intérieur de l’objet data de l’enveloppe. [] indique une liste : data.items[].name est donc le champ name de chaque élément. Un champ vaut null, est absent ou est une liste vide quand nous n’avons pas de valeur — jamais un espace réservé.

ChampDescription
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"
🔑 Connectez-vous en tant que développeur pour essayer cet endpoint en direct dans la sandbox — 50 appels de test gratuits par jour. Connexion

Mis à jour