oneapi
Autentificare
Financiar v1 / Inflatie

Salariaţii pe grupe de vârstă şi ocupaţii

Numărul salariaţilor, salariul brut de bază şi venitul brut realizat, pe 11 grupe de vârstă × 9
grupe majore ISCO-08 × sexe
, în luna octombrie, anual din 2013.

Vârsta e o dimensiune care nu apare nicăieri altundeva în modul.

⚠️ Un rând-total greşit la sursă, semnalat, nu netezit: în 2016, total pe vârstă e 849.821 în
loc de 4.120.907 — o cincime din valoarea reală, deşi toate cele unsprezece grupe sunt publicate.

⚠️ Detalierea pe ocupaţii are goluri: în 2013 lipseşte grupa ocupatii_elementare, iar în 2018
lipsesc toate nouă pe felia cu vârsta total. Acolo identitatea se sare, nu se raportează ca eşec.

⚠️ Salariul de bază şi venitul realizat sunt medii şi nu se adună; identităţile se rulează doar
pe numărul de salariaţi.

GET
https://oneapi.ro/api/financiar/v1/salariati/varste

Parametri de interogare

NumeTipDescriereValori acceptate
de_laopțional integer | null Opţional, an, din 2013. 2013 – 2100
pana_laopțional integer | null Opţional, an. 2013 – 2100
masuralistăopțional text Opţional: numar_salariati, salariu_baza, venit_realizat. numar_salariatisalariu_bazavenit_realizat
sexlistăopțional text Opţional: total, masculin, feminin. totalmasculinfeminin
varstalistăopțional text Opţional: 15_19 … 60_64, 65_plus, total. ex. 15_19
ocupatielistăopțional text Opţional, sluguri ISCO-08 separate prin virgulă, plus total. totalconducatorispecialistitehnicienifunctionariserviciiagriculturamuncitori_calificatioperatoriocupatii_elementare

Cum se comportă

  • Numărul salariaţilor cu program complet plătiţi întreaga lună octombrie, salariul brut de bază şi venitul brut realizat — pe 11 grupe de vârstă × 9 grupe majore ISCO-08 × sexe, anual din 2013. 11.649 de valori, din matricea TEMPO FOM121B.
  • Vârsta e o dimensiune care nu apare nicăieri altundeva în modul. Pentru aceleaşi grupe ISCO-08 fără vârstă, dar cu structura câştigului: /financiar/v1/castiguri/structura.
  • ⚠️ salariu_baza şi venit_realizat sunt medii şi nu se adună pe nicio dimensiune. Identităţile se rulează doar pe numar_salariati; seriile băneşti poartă este_medie.
  • ✅ total = masculin + feminin, pe numărul de salariaţi: 1.292 din 1.292.
  • ⚠️ Pragul identităţilor e relativ, de 0,01%, nu absolut: sursa suprimă celulele mici din motive de confidenţialitate, aşa că suma componentelor iese cu puţin sub total. Măsurat, abaterea reală maximă e 107 persoane din ~4,1 milioane — 0,0026%.
  • ⚠️ Un rând-total greşit la sursă, în 2016: total pe vârstă e 849.821 în loc de 4.120.907 — o cincime din valoarea reală, deşi toate cele unsprezece grupe sunt publicate. Nu îl corectăm; identitatea îl arată, cu anul scris în ani_care_nu_se_inchid.
  • ⚠️ Detalierea pe ocupaţii are goluri: în 2013 lipseşte cu totul grupa ocupatii_elementare (de aici o diferenţă de 531.851 de persoane faţă de total), iar în 2018 lipsesc toate nouă pe felia cu vârsta total. Acolo identitatea se sare, nu se raportează ca eşec — ar fi un eşec fals.
  • ⚠️ Anul 2014 lipseşte cu totul din seria publicată de sursă.

La ce folosește

  • Curba salariului pe vârstă, în aceeaşi ocupaţie.
  • Diferenţa de câştig între femei şi bărbaţi, la aceeaşi vârstă şi ocupaţie.
  • Structura pe vârste a unei grupe majore de ocupaţii.

Structura răspunsului

CâmpTipDescriere
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 array Filtrele aplicate efectiv, aşa cum le-a înţeles ruta — util când o valoare a fost normalizată.
data.ani array Anii pentru care există valori.
data.serii[].masura string Măsura raportată — ce anume numără sau însumează valoarea.
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[].sex string Sexul persoanelor la care se referă valoarea.
data.serii[].varsta string
data.serii[].denumire_varsta string
data.serii[].ocupatie string Grupa majoră ISCO-08, 1–9, sau total.
data.serii[].denumire_ocupatie string
data.serii[].valori object Valorile seriei, pe perioade.
data.identitati.toleranta_relativa string Pragul relativ, ales fiindcă sursa suprimă celulele mici.
data.identitati.nota_toleranta string De unde vine toleranţa şi de ce nu e zero.
data.identitati.nota_medii string Cum se citesc mediile din răspuns şi când mediana spune altceva.
data.identitati.varsta.identitate string Identitatea verificată — ce sumă trebuie să dea ce total.
data.identitati.varsta.nota string Precizare despre cum se citesc datele — o capcană, o convenţie sau o limită a sursei.
data.identitati.varsta.verificari integer Câte combinaţii au fost verificate.
data.identitati.varsta.inchise integer Câte verificări s-au închis în toleranţă.
data.identitati.varsta.ani_care_nu_se_inchid array Anii în care identitatea nu ţine — în seria asta, 2016.
data.identitati.varsta.unde.an integer Anul la care se referă valoarea.
data.identitati.varsta.unde.serie string
data.identitati.varsta.unde.total string
data.identitati.varsta.unde.suma_componentelor string
data.identitati.ocupatie.identitate string Identitatea verificată — ce sumă trebuie să dea ce total.
data.identitati.ocupatie.nota string Precizare despre cum se citesc datele — o capcană, o convenţie sau o limită a sursei.
data.identitati.ocupatie.verificari integer Câte combinaţii au fost verificate.
data.identitati.ocupatie.inchise integer Câte verificări s-au închis în toleranţă.
data.identitati.sex.identitate string Identitatea verificată — ce sumă trebuie să dea ce total.
data.identitati.sex.nota string Precizare despre cum se citesc datele — o capcană, o convenţie sau o limită a sursei.
data.identitati.sex.verificari integer Câte combinaţii au fost verificate.
data.identitati.sex.inchise integer Câte verificări s-au închis în toleranţă.
meta.sursa string Sursa oficială din care vin datele, cu licenţa ei acolo unde e cerută.
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_toleranta string De unde vine toleranţa şi de ce nu e zero.
meta.nota_medii string Cum se citesc mediile din răspuns şi când mediana spune altceva.
meta.nota_2014 string Precizare despre cum se citeşte răspunsul: o capcană, o convenţie sau o limită a sursei.
meta.nota_anomalii string Precizare despre cum se citeşte răspunsul: o capcană, o convenţie sau o limită a sursei.
meta.nota_ocupatii string Precizare despre cum se citeşte răspunsul: o capcană, o convenţie sau o limită a sursei.
data.serii[].este_medie Prezent pe salariul de bază şi pe venitul realizat: nu se adună.
meta.fara_date data e null, iar aici stă motivul. Proiecţia peste datele INS e goală. Ca la celelalte serii.
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.

Exemple de răspuns

GEThttps://oneapi.ro/api/financiar/v1/salariati/varste
{
    "data": {
        "de_la": 2013,
        "pana_la": 2024,
        "filtre": [],
        "ani": [
            2013,
            2015,
            2016,
            2017,
            2018,
            2019,
            2020,
            2021,
            2022,
            2023,
            2024
        ],
        "serii": [
            {
                "masura": "numar_salariati",
                "unitate": "Numar persoane",
                "sex": "feminin",
                "varsta": "15_19",
                "denumire_varsta": "15-19 ani",
                "ocupatie": "agricultura",
                "denumire_ocupatie": "Lucratori calificati in agricultura, silvicultura si pescuit",
                "valori": {
                    "2013": null,
                    "2015": "10",
                    "2016": null,
                    "2017": null,
                    "2018": null,
                    "2019": "15",
                    "2020": null,
                    "2021": "10",
                    "2022": "11",
                    "2023": "10",
                    "2024": null
                }
            }
        ],
        "identitati": {
            "toleranta_relativa": "0.0001",
            "nota_toleranta": "Pragul e relativ (0,01%): sursa suprimă celulele mici din motive de confidenţialitate, aşa că suma componentelor iese cu puţin sub total. Abaterea reală maximă e 107 persoane din ~4,1 milioane.",
            "nota_medii": "⚠️ `salariu_baza` şi `venit_realizat` sunt medii şi nu se adună pe nicio dimensiune; identităţile se rulează doar pe `numar_salariati`.",
            "varsta": {
                "identitate": "`total` = suma celor unsprezece grupe de vârstă",
                "nota": "⚠️ În 2016 sursa publică un rând `total` vizibil greşit: 849.821 în loc de 4.120.907 — o cincime din valoarea reală, cu toate cele unsprezece grupe de vârstă prezente. Nu îl corectăm, îl semnalăm; în restul anilor identitatea se închide.",
                "verificari": 290,
                "inchise": 262,
                "ani_care_nu_se_inchid": [
                    2016
                ],
                "unde": {
                    "an": 2016,
                    "serie": "numar_salariati|agricultura|total",
                    "total": "3901",
                    "suma_componentelor": "14502.00"
                }
            },
            "ocupatie": {
                "identitate": "`total` = suma celor nouă grupe majore ISCO-08",
                "nota": "⚠️ Identitatea se sare acolo unde sursa nu publică toate cele nouă grupe: în 2013 lipseşte `ocupatii_elementare` (de aici o diferenţă de 531.851 de persoane faţă de total), iar în 2018 lipsesc toate nouă pe felia cu vârsta `total`. Se sare, nu se raportează ca eşec.",
                "verificari": 347,
                "inchise": 347
            },
            "sex": {
                "identitate": "`total` = `masculin` + `feminin`",
                "nota": "Verificat pe toată proiecţia, doar pe numărul de salariaţi: 1.292 din 1.292.",
                "verificari": 1292,
                "inchise": 1292
            }
        }
    },
    "meta": {
        "sursa": "Institutul Naţional de Statistică — salariaţii, salariul de bază şi venitul realizat pe vârste şi ocupaţii (TEMPO, matricea FOM121B).",
        "acoperire": {
            "de_la": 2013,
            "pana_la": 2024
        },
        "serii_returnate": 1080,
        "nota_toleranta": "Pragul e relativ (0,01%): sursa suprimă celulele mici din motive de confidenţialitate, aşa că suma componentelor iese cu puţin sub total. Abaterea reală maximă e 107 persoane din ~4,1 milioane.",
        "nota_medii": "⚠️ `salariu_baza` şi `venit_realizat` sunt medii şi nu se adună pe nicio dimensiune; identităţile se rulează doar pe `numar_salariati`.",
        "nota_2014": "Anul 2014 lipseşte cu totul din seria publicată de sursă.",
        "nota_anomalii": "Anul 2016 are un rând `total` pe vârstă vizibil greşit; anii 2013 şi 2018 au goluri în detalierea pe ocupaţii. Se văd în `identitati`.",
        "nota_ocupatii": "Aceleaşi grupe ISCO-08, dar pe activităţi: /financiar/v1/salariati/ocupatii-activitati şi /financiar/v1/castiguri/structura."
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă sau invalid.
403feature_indisponibilfinanciar.indici nu e în planul curent.
422validareMăsură, sex, vârstă, ocupaţie ori an în afara formei aşteptate.
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": "Măsură, sex, vârstă, ocupaţie ori an în afara formei aşteptate.",
        "detalii": {
            "de_la": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}