oneapi
Sign in
Energie v1 / Balanţe energetice

Degree of energy independence

How much of gross inland consumption is covered by domestic production, across four energy products — coal, crude oil, natural gas and the total. 132 values, annually 1992–2024 (IND121A).

⚠️ This is a ratio, in percent: it is not additive across products and must not be averaged without weights. The total is published by the source, not composed from the three.

GET
https://oneapi.ro/api/energie/v1/balante/independenta

Query parameters

NameTypeDescriptionAccepted values
produsoptional string | null The slug of an energy product from the nomenclature. e.g. titei
de_laoptional string | null First year included, from 1992. e.g. 2010
pana_laoptional string | null Last year included. e.g. 2024

How it behaves

  • How much of gross inland consumption is covered by domestic production, across four energy products — coal, crude oil, natural gas and the total. 132 values, annual 1992-2024 (IND121A).
  • This is a ratio, in percent: it does not add up across products and does not average without weights. The total is published by the source, not composed from the three.

What it is for

  • Measure import dependence for coal, crude oil and gas separately.
  • Track how the country energy autonomy changed over thirty years.

Response structure

FieldTypeDescription
data.serii[].produs string Slugul produsului energetic.
data.serii[].nivel string total ori produs.
data.serii[].valori object An → procent, ca text zecimal.
data.granularitate string The series step. For balances it is always anual: INS publishes the balance once a year.
data.de_la integer First year in the response.
data.pana_la integer Last year in the response.
data.filtre array The filters actually applied, so you can see what was read from the request.
data.ani array The years covered, in order — the keys inside valori.
data.serii[].um The unit-of-measure code.
data.serii[].um_denumire string The unit of measure spelled out. Read it: series in the same response can use different units, and adding them would mean nothing.
data.serii[].ani_publicati integer How many years carry an actual value. The difference from the length of ani is the gaps in INS publication.
meta.sursa string The INS dataset the series comes from, with the source matrix.
meta.acoperire object The year range available in the database for this zone, regardless of the filter requested.
meta.serii_returnate integer How many series are in the response.
data.unitate string The unit the energy-independence ratio is expressed in.
data.serii[].produs_denumire string The product name.
meta.nota_raport string How to read the ratio: how much of consumption is covered by domestic production.
meta.nota_sen string The relationship with the real-time data in the sen zone.
meta.nota_lista string Where the product codes are.

Response examples

GEThttps://oneapi.ro/api/energie/v1/balante/independenta?de_la=2010
{
    "data": {
        "unitate": "procente — cât din consumul intern brut e acoperit din producţia internă",
        "granularitate": "anual",
        "de_la": 2010,
        "pana_la": 2024,
        "filtre": [],
        "ani": [
            2010,
            2011,
            2012,
            2013,
            2014,
            2015,
            2016,
            2017,
            2018,
            2019,
            2020,
            2021,
            2022,
            2023,
            2024
        ],
        "serii": [
            {
                "produs": "carbune_inclusiv_cocs",
                "produs_denumire": "Carbune (inclusiv cocs)",
                "nivel": "produs",
                "um_denumire": "Procente",
                "ani_publicati": 15,
                "valori": {
                    "2010": "85.4",
                    "2011": "81.8",
                    "2012": "84",
                    "2013": "81.9",
                    "2014": "77.8",
                    "2015": "80.4",
                    "2016": "80.3",
                    "2017": "83.1",
                    "2018": "79",
                    "2019": "79.7",
                    "2020": "73.9",
                    "2021": "73.8",
                    "2022": "78.6",
                    "2023": "86.3",
                    "2024": "86.9"
                }
            }
        ]
    },
    "meta": {
        "sursa": "Institutul Naţional de Statistică — balanţele energetice (TEMPO, matricile IND107A-IND121A).",
        "acoperire": {
            "de_la": "1992-01-01",
            "pana_la": "2024-01-01"
        },
        "serii_returnate": 4,
        "nota_raport": "⚠️ E un raport în procente — nu se adună între produse şi nu se mediază fără ponderi. Totalul e publicat de sursă.",
        "nota_sen": "Sunt date statistice anuale. Starea instantanee a sistemului, de la Transelectrica, e la /energie/v1/sen — altă natură, nu se compară.",
        "nota_lista": "Nomenclatoarele zonei: /energie/v1/balante/nomenclator."
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
404necunoscutThe product does not appear in the nomenclature.
404in_afara_acopeririiThe requested range falls outside the published years.
422validareA parameter failed validation (produs, de_la, pana_la); detalii says which and why.
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": "A parameter failed validation (produs, de_la, pana_la); detalii says which and why.",
        "detalii": {
            "produs": [
                "The value sent does not satisfy the parameter rule."
            ]
        }
    }
}