oneapi
Sign in
Carburanti v1 / Carburanti

Prices for a country

All six products at the latest published week, or at the week covering data.

GET
https://oneapi.ro/api/carburanti/v1/preturi

Query parameters

NameTypeDescriptionAccepted values
taraoptional string | null Country code (ISO 3166-1 alpha-2), or EU / EA for the published averages. Defaults to RO. ATBEBGCYCZDEDKEEESFIFRGRHRHUIEITLTLULVMTNLPLPTROSESISKUKEUEA
dataoptional string | null The date you want the price for, YYYY-MM-DD. The last week published on or before it is used. Defaults to the most recent. e.g. 2026-08-31

How it behaves

  • Two known source inconsistencies, handled explicitly. (1) The bulletin has 2 rows with both prices at 0.00 (Slovakia, fuel oil, 2006-05-01) — missing data published as zero. We serve those as null rather than as a price, and build nothing on top of them. (2) In 32 rows, all fuel oil, the price WITH taxes is lower than the price WITHOUT, which would imply a negative tax: 30 on the EU aggregate and one each on BE and IE. Both prices are reported as published, but nothing is computed from them — taxe_din_pret_procent is null and an atentionare field appears.
  • These are national averages, not filling-station prices. Member states report a weighted national average to the Commission each week. There is no individual station price here, and there cannot be: the Romanian Competition Council monitor has no programmatic access, and private per-station aggregators are legally protected databases.
  • The series is weekly. A request for an arbitrary day returns the last week published before it, and the response says which one in saptamana, separately from ceruta. Do not assume you received the price of the day you asked for.
  • Prices are published in euro per 1000 litres (or per tonne for fuel oil). The eur block gives them as published, plus per litre; the national block gives them in the country currency, using the exchange rate the Bulletin itself publishes for that week — not a rate taken elsewhere, which would not reproduce the official figure.
  • national is null when the country is in the euro area. Mind the history: a country that adopted the euro has rows in its old currency before accession and in euro after, and moneda reflects each period correctly.
  • Without data you get the latest published week. Without tara you get Romania.

What it is for

  • Show the reference price of diesel or petrol in a fleet application, without depending on a website you do not control.
  • Index a contract clause ("the price adjusts with the change in the official diesel price") on a figure published by the European Commission.
  • Compare the theoretical cost of a refuelling with what an employee actually claimed.

Response structure

All fields below live inside data.

FieldTypeDescription
tara string Țara sau pseudo-codul de medie.
saptamana string Săptămâna efectiv folosită. Compar-o cu ceruta ca să știi cât de vechi e prețul.
ceruta string Data pe care ai cerut-o.
produse[].produs string Codul produsului (vezi /produse).
produse[].denumire string Denumirea lizibilă a produsului.
produse[].unitate string 1000l sau t — unitatea în care e exprimat prețul.
produse[].eur.cu_taxe number Preț cu toate taxele, în euro pe unitate.
produse[].eur.fara_taxe number Preț fără taxe, în euro pe unitate.
produse[].eur.pe_litru_cu_taxe number Euro pe litru. null la produsele exprimate pe tonă — densitatea păcurii nu e o constantă pe care s-o presupunem.
produse[].eur.pe_litru_fara_taxe number Euro pe litru, fără taxe.
produse[].national.moneda string Codul monedei în care sunt exprimate valorile din bloc.
produse[].national.curs_eur_pe_unitate number Cursul publicat de Buletin: câți euro face o unitate din moneda națională.
produse[].national.cu_taxe number Preț cu taxe, în monedă națională pe unitate.
produse[].national.fara_taxe number Preț fără taxe, în monedă națională.
produse[].national.pe_litru_cu_taxe number Monedă națională pe litru — cifra pe care o recunoaște oricine alimentează.
produse[].national.pe_litru_fara_taxe number Monedă națională pe litru, fără taxe.
produse[].taxe_din_pret_procent number Cât la sută din prețul la pompă sunt taxe. Se derivă din cele două prețuri publicate, deci există și acolo unde accizele lipsesc.
sursa object The data source: the European Commission Oil Bulletin, with its licence and notes.
sursa.nume string Sursa datelor.
sursa.licenta string Licența de reutilizare.
sursa.observatie string Avertismentul că sunt medii naționale, nu prețuri per stație.
produse[].tara string The country code.
produse[].data string The week the price refers to (the bulletin's Monday).

Response examples

GEThttps://oneapi.ro/api/carburanti/v1/preturi?tara=RO
{
    "data": {
        "tara": "RO",
        "saptamana": "2026-09-14",
        "ceruta": "2026-09-14",
        "produse": [
            {
                "tara": "RO",
                "data": "2026-09-14",
                "produs": "benzina95",
                "denumire": "Benzină Euro-super 95",
                "unitate": "1000l",
                "eur": {
                    "cu_taxe": 1888.8411,
                    "fara_taxe": 978.9606,
                    "pe_litru_cu_taxe": 1.8888,
                    "pe_litru_fara_taxe": 0.979
                },
                "national": {
                    "moneda": "RON",
                    "curs_eur_pe_unitate": 0.1902297976,
                    "cu_taxe": 9929.26,
                    "fara_taxe": 5146.2,
                    "pe_litru_cu_taxe": 9.9293,
                    "pe_litru_fara_taxe": 5.1462
                },
                "taxe_din_pret_procent": 48.17,
                "atentionare": null
            }
        ],
        "sursa": {
            "nume": "European Commission — Weekly Oil Bulletin (DG ENER)",
            "licenta": "CC BY 4.0 (Decizia 2011/833/UE)",
            "observatie": "Prețuri medii naționale raportate de statele membre pentru săptămâna indicată, nu prețuri per stație de alimentare."
        }
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
404negasitNo prices published for the requested country and date (e.g. a date before the country entered the series).
422validareUnknown country code, or a date in a format other than YYYY-MM-DD.
429cota_depasitaThe plan's monthly quota has been exceeded (see Retry-After).

All errors share the same shape. eroare.cod is stable and is the value you should branch on in code — not the text in mesaj, which may change.

{
    "eroare": {
        "cod": "validare",
        "mesaj": "Unknown country code, or a date in a format other than YYYY-MM-DD.",
        "detalii": {
            "tara": [
                "The value sent does not satisfy the parameter rule."
            ]
        }
    }
}