oneapi
Autentificare
Financiar v1 / Inflatie

Economia unităţilor locale, pe judeţe

Cifra de afaceri, investiţiile brute, investiţiile nete şi personalul unităţilor locale active
— pe activitate, clasă de mărime şi judeţ, anual din 1998. 161.938 de valori, pe două
clasificări cerute separat prin versiune: rev2 (2008-2024) şi rev1 (1998-2008).

Aduce ce lipseşte din /financiar/v1/intreprinderi/indicatori, care e naţional: judeţul. Acolo
sunt paisprezece indicatori pe CAEN detaliat, dar numai pe ţară; aici sunt patru măsuri, pe CAEN
grosier, dar coborâte la judeţ.

Toate patru sunt totaluri, deci se însumează — spre deosebire de câştigul salarial din
/financiar/v1/salariati, care e o medie. Investiţiile brute şi cele nete sunt mărimi diferite,
nu variante ale aceleiaşi: în 2020, pe total ţară, 146.604 milioane lei brute faţă de 95.646 nete.

⚠️ Acoperirea teritorială se lărgeşte în 2002: anii 1998-2001 au numai 13 teritorii — patru
macroregiuni, opt regiuni şi totalul, fără niciun judeţ.

⚠️ Valorile monetare Rev.1 de până în 2004 sunt publicate în miliarde lei ROL şi aduse aici la
milioane lei RON (factor 0,1); blocul publicat păstrează valoarea brută.

⚠️ Identitatea claselor de mărime se verifică cu toleranţă, nu cu egalitate strictă. Sursa
publică milioane de lei rotunjite la unitate, iar suma a patru valori rotunjite poate devia de la
totalul rotunjit. Măsurat pe cifra de afaceri: total = suma celor patru clase iese exact în
2.501 din 3.354 de celule, dar toate 3.354 stau sub 2 milioane lei diferenţă, iar 2.880
sub o miime de procent. Toleranţa e derivată din precizia publicată, nu aleasă; pe personal, care e
în persoane întregi, verificarea rămâne exactă.

⚠️ Dimensiunea CAEN nu e o partiţie curată. Amestecă trei diviziuni desfăcute din agricultură
(01, 02, 03), unsprezece secţiuni, o pereche comasată de sursă (R+S), două agregate scrise
în clar şi totalul. Codurile de niveluri diferite nu se adună între ele; nivel le desparte, iar
lista completă e la /financiar/v1/unitati-locale/activitati.

GET
https://oneapi.ro/api/financiar/v1/unitati-locale

Parametri de interogare

NumeTipDescriereValori acceptate
versiuneopțional string | null Opţional: rev2 (implicit, 2008-2024) ori rev1 (1998-2008). rev1rev2
masuraopțional string | null Opţional: cifra_afaceri (implicit), investitii_brute, investitii_nete, personal. investitii e alias pentru investitii_brute. personalcifra_afaceriinvestitii_bruteinvestitii_neteinvestitii
nivelopțional string | null Opţional: total, agregat, sectiune, sectiuni_comasate, diviziune. totalagregatsectiunesectiuni_comasatediviziune
teritoriuopțional string | null Opţional, denumirea exactă — un judeţ, o regiune, o macroregiune sau TOTAL. max 80 car.
nivel_teritoriuopțional string | null Opţional: tara (implicit), macroregiune, regiune, judet. taramacroregiuneregiunejudet
de_laopțional integer | null Opţional, an, din 1998. 1998 – 2100
pana_laopțional integer | null Opţional, an. 1998 – 2100
caenopțional string | null Opţional: orice cod CAEN — secţiune (C), diviziune (62), grupă, clasă (6201) — din orice revizie. Se aduce la ce publică versiune: secţiunea, diviziunile 01–03 (Rev.2, 2008–2012), perechea R+S, agregatul imobiliare_si_servicii_firme (L+M+N) ori, în Rev.1, diviziunile numite de sursă (01 agricultură, 02 silvicultură, 60–63 transport, 64 poştă). Implicit industrie_comert_servicii pe Rev.2 şi total pe Rev.1; ce s-a folosit e în meta.caen. ex. 7022
caen_versiuneopțional string | null Opţional: revizia codului din caen — 1, 2 sau 3 — când forma lui e ambiguă (4932 înseamnă altceva în Rev.2 şi în Rev.3). Fără ea, codul se caută întâi în revizia seriei. 123
grupareopțional string | null Opţional: agregatele sursei care nu sunt coduri CAEN — total, industrie, industrie_comert_servicii, imobiliare_si_servicii_firme, R+S, alte_activitati, transport_depozitare. Nu se trimite împreună cu caen. ex. imobiliare_si_servicii_firmeex. industrie_comert_serviciiex. R+S
marimelistăopțional text Opţional: total (implicit), 0-9, 10-49, 50-249, 250+. total0-910-4950-249250+

Cum se comportă

  • Cifra de afaceri, investiţiile brute în bunuri corporale, investiţiile nete şi personalul unităţilor locale active — pe activitate, clasă de mărime şi judeţ, anual din 1998 până în 2024. 161.938 de valori din matricile TEMPO INT102C/D, INT104C/D şi INT105B/C/D/E.
  • Două clasificări, cerute separat prin versiune: rev2 (implicit) acoperă 2008-2024, rev1 acoperă 1998-2008. Se suprapun pe 2008 şi lipirea chiar se validează: personalul pe total ţară iese 4.654.718 în amândouă, cu abatere zero; cifra de afaceri, 958.923 faţă de 959.414 (0,05%). Blocul suprapunere dă comparaţia la fiecare cerere.
  • ⚠️ investitii_nete e o măsură nouă, care lipsea cu totul din modul. Ruta avea o singură măsură de investiţii, cea brută. Diferenţa e mare: în 2020, pe total ţară, 146.604 milioane lei brute faţă de 95.646 nete. Numele vechi investitii rămâne acceptat ca alias pentru investitii_brute.
  • Aduce ce lipseşte din /financiar/v1/intreprinderi/indicatori: judeţul. Acolo sunt paisprezece indicatori pe CAEN detaliat, dar numai pe ţară; aici patru măsuri, pe CAEN grosier, dar coborâte la judeţ.
  • Ce arată datele: în 2024, cifra de afaceri a unităţilor locale e de 2.694.851 milioane lei, din care Bucureştiul singur face 790.197 — 29% din economie. Urmează Ilfov (190.141), Cluj (128.414), Timiş (125.482) şi Prahova (116.619).
  • Toate patru măsurile sunt totaluri, deci se însumează — spre deosebire de câştigul salarial din /financiar/v1/salariati, care e o medie.
  • ⚠️ Acoperirea teritorială se lărgeşte în 2002. Anii 1998-2001 au numai 13 teritorii — patru macroregiuni, opt regiuni şi totalul, fără niciun judeţ; din 2002 sunt 55. Secţiunile cresc şi ele: 17 în 1998-2001, 18 în 2002, 19 din 2003.
  • ⚠️ Implicitul pe activitate e invers între clasificări. În Rev.2, total se opreşte în 2012 şi agregatul industrie_comert_servicii acoperă toată seria; în Rev.1 e pe dos — agregatul, ca şi secţiunea I, apar abia din 2003, iar total e singurul cod publicat pe toţi cei unsprezece ani. Ruta alege implicitul potrivit versiunii, ca o cerere fără caen să nu întoarcă gol.
  • ⚠️ Denominarea din 2005, pe Rev.1 — dar aici sursa o declară corect, chiar în numele dimensiunii: „Miliarde lei" până în 2004, „Milioane lei RON" de la 2005. Anii de dinainte sunt aduşi la milioane lei RON cu factorul 0,1, iar blocul publicat păstrează valoarea brută. Spre deosebire de /financiar/v1/intreprinderi/rezultate, unde eticheta sursei rămăsese în urmă.
  • ⚠️ Identitatea claselor de mărime se verifică cu toleranţă, nu cu egalitate strictă. Sursa publică milioane de lei rotunjite la unitate, iar suma a patru valori rotunjite poate devia de la totalul rotunjit. Măsurat pe cifra de afaceri: total = suma celor patru clase iese exact în 2.501 din 3.354 de celule, dar toate 3.354 stau sub 2 milioane lei diferenţă, iar 2.880 sub o miime de procent. Toleranţa e derivată din precizia publicată, nu aleasă. Pe personal, care e în persoane întregi, verificarea rămâne exactă — toleranţă zero.
  • ⚠️ Nomenclatorul se schimbă în 2013. Codul total şi cele trei diviziuni desfăcute din agricultură (01, 02, 03) sunt publicate doar între 2008 şi 2012; din 2013 sursa le scoate. Agregatul care acoperă toată seria e industrie_comert_servicii, şi el e implicitul rutei — altfel o cerere fără caen ar întoarce gol pentru ultimii ani. O cerere de total după 2012 primeşte interval_gol cu explicaţia.
  • ⚠️ Dimensiunea CAEN nu e o partiţie curată. Amestecă trei diviziuni din agricultură, unsprezece secţiuni, o pereche comasată de sursă (R+S) şi două agregate cu denumiri de peste două sute de caractere, cărora le-am dat coduri scurte. Codurile de niveluri diferite nu se adună între ele; nivel le desparte.
  • Activitatea se cere ca pe toată platforma. caen primeşte orice cod CAEN, de orice nivel şi din orice revizie, iar ruta îl aduce la ce publică seria — urcând la părinte ori traducându-l prin corespondenţa oficială INS; meta.caen spune codul cerut, cel folosit şi dacă a fost urcat ori convertit. grupare e pentru agregatele sursei care nu sunt coduri CAEN.

La ce folosește

  • Cât cântăreşte economic un judeţ, în cifră de afaceri şi în investiţii.
  • Structura pe clase de mărime a unui sector, într-un judeţ anume.
  • Investiţiile brute ca semnal de creştere, alături de autorizaţiile de construire.

Structura răspunsului

CâmpTipDescriere
data.masura string Măsura raportată — ce anume numără sau însumează valoarea.
data.denumire string Denumirea, aşa cum o publică sursa.
data.unitate string Unitatea de măsură a valorilor. Citeşte-o înainte de a le pune pe un grafic sau de a le aduna.
data.versiune string Versiunea setului de date sau a artefactului din care vin valorile.
data.de_la integer Începutul intervalului acoperit de răspuns.
data.pana_la integer Sfârşitul intervalului acoperit de răspuns, inclusiv.
data.filtre.versiune string Versiunea setului de date sau a artefactului din care vin valorile.
data.filtre.caen string Codul CAEN al activităţii, în revizia seriei.
data.filtre.marime array Clasa de mărime folosită de sursă.
data.filtre.nivel_teritoriu string Nivelul teritorial al valorii (ţară, regiune, judeţ, localitate).
data.ani array Anii pentru care există valori.
data.serii[].teritoriu string Teritoriul la care se referă valoarea.
data.serii[].nivel_teritoriu string Nivelul teritorial al valorii (ţară, regiune, judeţ, localitate).
data.serii[].versiune string Versiunea setului de date sau a artefactului din care vin valorile.
data.serii[].caen string Codul CAEN al activităţii, în revizia seriei.
data.serii[].nivel string total, agregat, sectiune, sectiuni_comasate sau diviziune.
data.serii[].denumire string Denumirea exactă de la sursă, inclusiv pentru agregatele lungi.
data.serii[].marime string Clasa de mărime folosită de sursă.
data.serii[].unitate string Unitatea de măsură a valorilor. Citeşte-o înainte de a le pune pe un grafic sau de a le aduna.
data.serii[].ani_publicati integer Anii pe care sursa i-a publicat efectiv pentru seria asta.
data.serii[].valori object Valorile seriei, pe perioade.
data.identitati.identitate string Identitatea verificată — ce sumă trebuie să dea ce total.
data.identitati.toleranta string Cât poate devia suma claselor de la total: 2 milioane la bani (0,25 pe anii convertiţi din ROL, unde pasul scade la 0,1) şi zero la persoane.
data.identitati.nota_toleranta string De unde vine toleranţa şi de ce nu e zero.
data.identitati.verificari integer Câte combinaţii au fost verificate.
data.identitati.inchise integer Câte verificări s-au închis în toleranţă.
data.suprapunere object Anul 2008, publicat în amândouă clasificările, pe total ţară: valorile alăturate şi abaterea.
data.suprapunere.an integer Anul la care se referă valoarea.
data.suprapunere.caen string Codul CAEN al activităţii, în revizia seriei.
data.suprapunere.marime string Clasa de mărime folosită de sursă.
data.suprapunere.rev1 string Valorile pe prima revizie a clasificării.
data.suprapunere.rev2 string Valorile pe a doua revizie a clasificării.
data.suprapunere.abatere string Diferenţa măsurată între cele două mărimi comparate.
data.suprapunere.nota string Precizare despre cum se citesc datele — o capcană, o convenţie sau o limită a sursei.
meta.sursa string Sursa oficială din care vin datele, cu licenţa ei acolo unde e cerută.
meta.versiune string Versiunea setului de date sau a artefactului din care vin valorile.
meta.acoperire.de_la integer Prima perioadă pentru care avem date.
meta.acoperire.pana_la integer Ultima perioadă pentru care avem date.
meta.serii_returnate integer Câte serii s-au întors efectiv, după filtre şi după plafonul de celule.
meta.nota_versiune string Precizare despre cum se citeşte răspunsul: o capcană, o convenţie sau o limită a sursei.
meta.nota_judet string Ce trebuie ştiut despre defalcarea pe judeţe: ce cuprinde şi ce rămâne neatribuit.
meta.nota_investitii string Precizare despre cum se citeşte răspunsul: o capcană, o convenţie sau o limită a sursei.
meta.nota_toleranta string De unde vine toleranţa şi de ce nu e zero.
meta.nota_caen string Precizare despre cum se citeşte răspunsul: o capcană, o convenţie sau o limită a sursei.
meta.nota_activitati string Precizare despre cum se citeşte răspunsul: o capcană, o convenţie sau o limită a sursei.
data.serii[].publicat Prezent doar pe anii Rev.1 de până în 2004: valoarea brută în miliarde lei ROL şi factorul aplicat.
data.identitati.exacte Câte celule se închid la virgulă, din cele aflate în toleranţă.
meta.fara_date data e null, iar aici stă motivul. Proiecţia peste datele INS e goală. Denumirea nu apare; lista completă vine în răspuns. Fereastra n-are valori; dacă e vorba de un cod scos în 2013, mesajul o spune. Fereastra e complet în afara seriei.
meta.fara_date_cod Cuvântul scurt şi STABIL al motivului, pentru clienţii care comută pe el în cod: fara_date e proză şi se poate reformula, ăsta nu.
meta.caen object Cum s-a înţeles parametrul caen: codul cerut, revizia în care s-a citit şi codul pe care l-a folosit ruta. La o listă de coduri, câte un obiect pe cod.
meta.caen.cerut string Codul CAEN trimis, normalizat (litere mari, fără puncte).
meta.caen.versiune_cerut string Revizia în care s-a citit codul trimis: cea din caen_versiune, altfel prima în care există.
meta.caen.folosit string Codul pe care l-a folosit seria: cel cerut, primul lui părinte publicat ori agregatul sursei care îl cuprinde (02-03).
meta.caen.cod string Codul CAEN pe care îl reprezintă cheia folosită, când seria îşi numeşte activităţile altfel (agricultura = 01) ori când cheia e un agregat (62-63).
meta.caen.nivel string Nivelul codului folosit — la rutele de firme, al codului cerut: sectiune, subsectiune, diviziune, grupa, clasa sau agregat.
meta.caen.denumire string Denumirea codului, din nomenclatorul CAEN.
meta.caen.versiune_serie string Revizia CAEN în care publică seria.
meta.caen.conversie boolean true când codul a fost tradus dintr-o revizie în alta prin corespondenţa oficială INS.
meta.caen.urcat boolean true când seria nu publică codul cerut şi s-a folosit un nivel superior.

Exemple de răspuns

GEThttps://oneapi.ro/api/financiar/v1/unitati-locale?per_pagina=3
{
    "data": {
        "masura": "cifra_afaceri",
        "denumire": "Cifra de afaceri din unităţile locale active",
        "unitate": "milioane lei",
        "versiune": "rev2",
        "de_la": 2008,
        "pana_la": 2024,
        "filtre": {
            "versiune": "rev2",
            "caen": "industrie_comert_servicii",
            "marime": [
                "total"
            ],
            "nivel_teritoriu": "tara"
        },
        "ani": [
            2008,
            2009,
            2010,
            2011,
            2012,
            2013,
            2014,
            2015,
            2016,
            2017,
            2018,
            2019,
            2020,
            2021,
            2022,
            2023,
            2024
        ],
        "serii": [
            {
                "teritoriu": "TOTAL",
                "nivel_teritoriu": "tara",
                "versiune": "rev2",
                "caen": "industrie_comert_servicii",
                "nivel": "agregat",
                "denumire": "Total industrie, constructii, comert si alte servicii",
                "marime": "total",
                "unitate": "milioane lei",
                "ani_publicati": 17,
                "valori": {
                    "2008": "959414",
                    "2009": "850834",
                    "2010": "903238",
                    "2011": "1007151",
                    "2012": "1062122",
                    "2013": "1054993",
                    "2014": "1105671",
                    "2015": "1177483",
                    "2016": "1232567",
                    "2017": "1352340",
                    "2018": "1522235",
                    "2019": "1667867",
                    "2020": "1642883",
                    "2021": "1983965",
                    "2022": "2487852",
                    "2023": "2583596",
                    "2024": "2694851"
                }
            }
        ],
        "identitati": {
            "identitate": "clasa `total` = suma celor patru clase de mărime",
            "toleranta": "2",
            "nota_toleranta": "Sursa publică milioane de lei rotunjite la unitate, iar suma a patru valori rotunjite poate devia de la totalul rotunjit. Toleranţa e derivată din precizia publicată — 2 milioane pe anii publicaţi direct în RON şi 0.25 pe anii Rev.1 convertiţi din miliarde ROL, unde pasul scade la 0,1. Măsurat pe cifra de afaceri Rev.2: exact în 2.501 din 3.354 de celule, dar toate 3.354 sub toleranţă, iar 2.880 sub o miime de procent.",
            "verificari": 0,
            "inchise": 0
        },
        "suprapunere": {
            "an": 2008,
            "caen": "industrie_comert_servicii",
            "marime": "total",
            "rev1": "958923",
            "rev2": "959414",
            "abatere": "491",
            "nota": "Anul 2008 e publicat în amândouă clasificările, pe total ţară. Raportat, nu cerut ca egalitate: cele două sunt reconstrucţii diferite ale aceluiaşi an, iar nomenclatoarele lor nu coincid."
        }
    },
    "meta": {
        "sursa": "Institutul Naţional de Statistică — personalul, cifra de afaceri şi investiţiile unităţilor locale active (TEMPO, matricile INT102C/D, INT104C/D şi INT105B/C/D/E).",
        "versiune": "rev2",
        "acoperire": {
            "de_la": 2008,
            "pana_la": 2024
        },
        "serii_returnate": 1,
        "nota_versiune": "Cererea acoperă o singură clasificare: `rev2` (implicit) merge 2008-2024, `rev1` merge 1998-2008. Se suprapun pe 2008 — vezi `data.suprapunere` — dar nomenclatoarele lor nu coincid cod cu cod.",
        "nota_judet": "E singura serie de indicatori economici ai firmelor care coboară la judeţ. Varianta naţională, cu paisprezece indicatori pe CAEN detaliat, e la /financiar/v1/intreprinderi/indicatori.",
        "nota_investitii": "Brute şi nete sunt mărimi diferite, nu variante: în 2020, pe total ţară, 146.604 milioane lei brute faţă de 95.646 nete. `investitii` rămâne acceptat ca alias pentru `investitii_brute`.",
        "nota_toleranta": "Sursa publică milioane de lei rotunjite la unitate, iar suma a patru valori rotunjite poate devia de la totalul rotunjit. Toleranţa e derivată din precizia publicată — 2 milioane pe anii publicaţi direct în RON şi 0.25 pe anii Rev.1 convertiţi din miliarde ROL, unde pasul scade la 0,1. Măsurat pe cifra de afaceri Rev.2: exact în 2.501 din 3.354 de celule, dar toate 3.354 sub toleranţă, iar 2.880 sub o miime de procent.",
        "nota_caen": "Dimensiunea CAEN amestecă diviziuni, secţiuni, o pereche comasată şi agregate. Codurile de niveluri diferite nu se adună între ele.",
        "nota_activitati": "Lista completă a codurilor, cu nivelul fiecăruia: /financiar/v1/unitati-locale/activitati."
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
404caen_nepublicatNici codul, nici părinţii lui nu sunt publicaţi în serie; detalii.disponibile dă cheile. grupare_nepublicata — gruparea nu e în serie; răspunsul dă lista.
422caen_inexistentCodul din caen nu există în nicio revizie CAEN; e o valoare de FILTRU greşită, deci 422, nu 404. prea_multe_serii — peste 1.500. interval_prea_lung — peste 25 de ani pe o tăietură îngustă şi peste 8 când răspunsul acoperă mai multe. Plus măsură, nivel, clasă ori cod în afara formei aşteptate. caen şi grupare trimise împreună, caen_versiune fără caen, ori un cod fără forma CAEN. masura_in_alta_versiune — măsura nu există acolo.
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": "caen_inexistent",
        "mesaj": "Codul din caen nu există în nicio revizie CAEN; e o valoare de FILTRU greşită, deci 422, nu 404. prea_multe_serii — peste 1.500. interval_prea_lung — peste 25 de ani pe o tăietură îngustă şi peste 8 când răspunsul acoperă mai multe. Plus măsură, nivel, clasă ori cod în afara formei aşteptate. caen şi grupare trimise împreună, caen_versiune fără caen, ori un cod fără forma CAEN. masura_in_alta_versiune — măsura nu există acolo.",
        "detalii": {
            "versiune": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}