oneapi
Autentificare
Carburanti v1 / Carburanti

Prețurile unei țări

Toate cele șase produse la ultima săptămână publicată, sau la săptămâna care acoperă data.

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

Parametri de interogare

NumeTipDescriereValori acceptate
taraopțional string | null Codul de țară (ISO 3166-1 alpha-2), sau EU / EA pentru mediile publicate. Implicit RO. ATBEBGCYCZDEDKEEESFIFRGRHRHUIEITLTLULVMTNLPLPTROSESISKUKEUEA
dataopțional string | null Data pentru care vrei prețul, AAAA-LL-ZZ. Se folosește ultima săptămână publicată la sau înainte de ea. Implicit: cea mai recentă. ex. 2026-08-31

Cum se comportă

  • Două incoerenţe cunoscute ale sursei, tratate explicit. (1) Buletinul are 2 rânduri cu ambele preţuri 0,00 (Slovacia, păcură, 2006-05-01) — o lipsă de date publicată ca zero. Le servim ca null, nu ca preţ, şi nu construim nimic peste ele. (2) La 32 de rânduri, toate pe păcură, preţul CU taxe e mai mic decât cel FĂRĂ, ceea ce ar da o taxă negativă: 30 pe agregatul EU şi câte unul pe BE şi IE. Cele două preţuri se redau ca atare, dar nu calculăm nimic peste ele — taxe_din_pret_procent e null şi apare un câmp atentionare.
  • Sunt medii naționale, nu prețuri de benzinărie. Statele membre raportează săptămânal Comisiei un preț mediu ponderat pe țară. Nu există aici prețul unei stații anume, și nici nu poate exista: monitorul Consiliului Concurenței nu are acces programatic, iar agregatoarele private de prețuri per stație sunt baze de date protejate juridic.
  • Seria e săptămânală. O cerere pe o zi oarecare primește ultima săptămână publicată înainte de ea, iar răspunsul spune care e aceea în saptamana, separat de ceruta. Nu presupune că ai primit prețul zilei pe care ai cerut-o.
  • Prețurile sunt publicate în euro pe 1000 de litri (sau pe tonă, la păcură). Blocul eur le dă așa cum sunt, plus pe litru; blocul national le dă în moneda țării, folosind cursul publicat chiar de Buletin pentru acea săptămână — nu un curs luat din altă parte, care n-ar reproduce cifra oficială.
  • national lipsește (null) când țara e în zona euro. Atenție la istoric: o țară care a adoptat euro are rânduri în moneda veche înainte de aderare și în euro după, iar moneda reflectă corect fiecare perioadă.
  • Fără data, primești ultima săptămână publicată. Fără tara, primești România.

La ce folosește

  • Afișezi prețul de referință al motorinei sau benzinei într-o aplicație de flotă, fără să depinzi de un site pe care nu-l controlezi.
  • Indexezi o clauză contractuală („prețul se ajustează cu variația prețului oficial al motorinei") pe o cifră publicată de Comisia Europeană.
  • Compari costul teoretic al unei alimentări cu ce a decontat efectiv angajatul.

Structura răspunsului

Toate câmpurile de mai jos sunt în data.

CâmpTipDescriere
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 Sursa datelor: buletinul petrolier al Comisiei Europene, cu licența și observațiile ei.
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 Codul țării.
produse[].data string Săptămâna la care se referă prețul (luni-ul buletinului).

Exemple de răspuns

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

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
404negasitNu există prețuri publicate pentru țara și data cerute (ex. o dată dinaintea intrării țării în serie).
422validareCod de țară necunoscut sau dată în alt format decât AAAA-LL-ZZ.
429cota_depasitaCota lunară a planului a fost depăşită (vezi Retry-After).

Toate erorile au aceeași formă. eroare.cod e stabil și e cel după care trebuie să ramifici în cod — nu după textul din mesaj, care se poate schimba.

{
    "eroare": {
        "cod": "validare",
        "mesaj": "Cod de țară necunoscut sau dată în alt format decât AAAA-LL-ZZ.",
        "detalii": {
            "tara": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}