Skip to main content
Menu

← All endpoints

Local Fuel Price API Online

Best available fuel price for any point in Europe, resolved down a three-tier ladder. Where we have station-level data (DE, IT, FR, AT, ES, SI, HR, LU, PT, DK and the Polish Tricity area) it returns prices at the nearest stations; for a point in Ukraine, where per-station prices exist nowhere, the average for the oblast the point falls in (ISO 3166-2 code, for example UA-46); otherwise the national average of the country the point falls in. Every response names the tier that answered in a resolution field: station, region or country.

GET https://nakordoni.eu/api/v2/data/fuel-local — quota class: cheap

ParameterDescription
latLatitude
lonLongitude
cityCity name — alternative to lat/lon, resolved to coordinates
countryISO-2 country code, disambiguates city
radius_kmStation-tier search radius km (default 25, max 25; alias: radius). No station inside it means the answer falls through to the country tier — it never widens the search on its own.
fuel_typeOptional station-tier filter: diesel | e5 | e10 | superplus | super100 | premdiesel | truckdiesel | hvo | lpg | cng | adblue | e85 | lng. Ignored at country tier, which always returns every grade the country reports. Local pump names are accepted as well — ON, Olej napędowy, Pb95, Nafta, Dizel, Gázolaj, Motorină, Benzină 95, ДП, А-95, Motorin, Gasóleo, Sans plomb 95, Bleifrei … — resolved against `country` (or, for coordinate products, the country the point falls in), because the same wording is not the same grade everywhere: “95” is E10 at a Danish, Finnish, French, British, Belgian or Dutch pump and E5 at a Polish or German one. The response echoes `fuel_type` (canonical), `fuel_type_requested` (as you typed it) and `fuel_type_local`. A name we cannot place is never swapped for a default grade — the answer comes back empty and says so. Full table of names per country: /api/v2/data/fuel-grades.
limitMax stations at station tier (default 5, max 20)
langLanguage for labels and the country name (default en)

Response fields — inside the data object of the envelope. [] marks a list, so data.items[].name is the name field of each element. A field is null, absent or an empty list when we hold no value for it — never a placeholder.

FieldDescription
data.resolutionWhich tier answered: station | region | country. Branch on this, never on the shape.
data.anchorThe point the answer was resolved for: lat, lng, ppid, radius_km and the fuel_type fields.
data.countryISO-2 country the point fell in; region is its ISO 3166-2 code at the region tier.
data.dataAt station tier a list of stations (see fuel-stations). At region and country tier one averages object: petrol, petrol95plus, petrol92, petrol98, diesel, lpg, lpg_eur, currency, updated, trend_petrol, trend_diesel, country_name.
data.data.region_nameRegion tier only: the region's name, with region_center_dist_km — how far its centre sits from your point.
data.gradesRegion and country tier only: each price key mapped to its canonical grade and the local pump name.
data.labelsLocalised UI strings — for rendering, not data.
curl "https://nakordoni.eu/api/v2/data/fuel-local?lat=50.45&lon=30.52&lang=uk" \
  -H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX"
🔑 Log in as a developer to try this endpoint live in the sandbox — 50 free test calls a day. Log in