Employees by locality
The average number of employees in every commune and town — 3,182 localities, annually since 1990. It is the only employment series that goes below county level.
The count only. NACE activity, sex and earnings exist only at county level, in /financiar/v1/salariati.
✅ The hierarchy closes exactly, verified across the whole projection with zero deviation: the county total is the sum of the localities within it — 1,428 of 1,428 county × year pairs — and the national total is the sum of the counties, 35 of 35. Requested for one county, the route also returns its total row, so that the identity can be run on the response.
Every series comes with the unit's population and with the ratio salariati_la_mia_de_locuitori.
⚠️ The population is from a single reference year, given in populatie_an, not from the series year — so the ratio is a good approximation for ranking, not an official rate.
One locality does not link to the nomenclature: code 70049, the former commune of Cernele, absorbed into the city of Craiova.
Query parameters
1 returns county and country totals instead of localities.
e.g. 1
How it behaves
- The average number of employees in each commune and town — 3,182 localities, annually from 1990 to 2024. 106,606 values from TEMPO matrix
FOM104D. It is the only employment series that goes below county level. - The count only. CAEN activity, sex and earnings exist solely at county level, in
/financiar/v1/salariati. - This shows where people work, not where they live. In Cluj county, the city of Cluj-Napoca holds 195,025 of the county's 261,239 employees — three quarters — and 680 employees per thousand inhabitants, because it draws commuters. Floreşti, the fastest-growing commune, has only 110 per thousand: people sleep there and work elsewhere.
- ✅ The hierarchy closes exactly, verified across the whole projection with zero deviation: the county total is the sum of its localities — 1,428 of 1,428 county × year pairs — and the country total is the sum of the counties, 35 of 35. Requested for a county, the route also returns that county's total row, so the identity can run on the response.
- Each series carries the unit's population and a computed
salariati_la_mia_de_locuitoriratio. ⚠️ The population is from a single reference year, given inpopulatie_an, not from the year of the series — so the ratio is a good approximation for ranking, not an official rate. - A single locality does not link to the register: code 70049, the former commune of Cernele, absorbed into Craiova. The other 3,181 carry the canonical name, type, urban/rural status and population.
What it is for
- Where the jobs in a county are, commune by commune.
- The ratio of employees to inhabitants — which places are work centres and which are dormitories.
- The employment path of a single locality across its full history, requested by
siruta.
Response structure
localitate, judet or tara — the levels do not add together.
data is null and this says why. The projection over the INS data is empty. The code or the name does not appear. As on the other series.
fara_date is prose and may be rephrased, this is not.
Response examples
{
"data": {
"masura": "numar_mediu",
"denumire": "Numărul mediu al salariaţilor",
"unitate": "persoane",
"de_la": 1991,
"pana_la": 2024,
"filtre": {
"siruta": 54975
},
"ani": [
1991,
1992,
1993,
1994,
1995,
1996,
1997,
1998,
1999,
2000,
2001,
2002,
2003,
2004,
2005,
2006,
2007,
2008,
2009,
2010,
2011,
2012,
2013,
2014,
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024
],
"serii": [
{
"nivel": "localitate",
"judet": "Cluj",
"cod_siruta": 54975,
"nume": "Cluj-Napoca",
"tip": "municipiu",
"mediu": "urban",
"populatie": 286598,
"populatie_an": 2021,
"eticheta_sursa": "54975 MUNICIPIUL CLUJ-NAPOCA",
"unitate": "persoane",
"ultima_valoare": "195025",
"salariati_la_mia_de_locuitori": "680.4",
"ani_publicati": 34,
"valori": {
"1991": "169566",
"1992": "146929",
"1993": "146639",
"1994": "141752",
"1995": "136068",
"1996": "141282",
"1997": "133554",
"1998": "127715",
"1999": "115704",
"2000": "113063",
"2001": "115802",
"2002": "116071",
"2003": "115668",
"2004": "116686",
"2005": "116398",
"2006": "118845",
"2007": "133004",
"2008": "132173",
"2009": "128785",
"2010": "123510",
"2011": "128037",
"2012": "133695",
"2013": "136823",
"2014": "149078",
"2015": "151777",
"2016": "161610",
"2017": "168718",
"2018": "171637",
"2019": "181226",
"2020": "176996",
"2021": "181883",
"2022": "186456",
"2023": "190486",
"2024": "195025"
}
}
],
"identitati": {
"identitate": "totalul judeţului = suma localităţilor din el",
"nota": "Verificată pe toată proiecţia cu abatere zero: 1.428 din 1.428 de perechi judeţ × an, plus 35 din 35 de perechi ţară = suma judeţelor.",
"verificari": 0,
"inchise": 0
}
},
"meta": {
"sursa": "Institutul Naţional de Statistică — numărul mediu al salariaţilor pe judeţe şi localităţi (TEMPO, matricea FOM104D).",
"acoperire": {
"de_la": 1990,
"pana_la": 2024
},
"serii_returnate": 1,
"nota_masura": "Sub nivelul de judeţ, sursa publică doar numărul mediu de salariaţi. Activitatea CAEN, sexul şi câştigul salarial există în /financiar/v1/salariati.",
"nota_nomenclator": "Denumirea, tipul, mediul şi populaţia vin din nomenclatorul propriu de unităţi administrativ-teritoriale, legat prin cod SIRUTA. Se leagă 3.181 din 3.182 de localităţi; excepţia e codul 70049, fosta comună Cernele.",
"nota_populatie": "Populaţia e dintr-un singur an de referinţă (`populatie_an`), nu din anul seriei — deci `salariati_la_mia_de_locuitori` e o aproximaţie pentru clasament, nu o rată oficială.",
"nota_identitate": "Verificată pe toată proiecţia cu abatere zero: 1.428 din 1.428 de perechi judeţ × an, plus 35 din 35 de perechi ţară = suma judeţelor.",
"nota_ordonare": "Seriile vin ordonate descrescător după ultima valoare publicată, deci primele sunt localităţile cu cei mai mulţi salariaţi."
}
}
{
"data": null,
"meta": {
"judet": "CJ",
"disponibile": [
"Alba",
"Arad",
"Arges",
"Bacau",
"Bihor",
"Bistrita-Nasaud",
"Botosani",
"Braila",
"Brasov",
"Buzau",
"Calarasi",
"Caras-Severin",
"Cluj",
"Constanta",
"Covasna",
"Dambovita",
"Dolj",
"Galati",
"Giurgiu",
"Gorj",
"Harghita",
"Hunedoara",
"Ialomita",
"Iasi",
"Ilfov",
"Maramures",
"Mehedinti",
"Municipiul Bucuresti",
"Mures",
"Neamt",
"Olt",
"Prahova",
"Salaj",
"Satu Mare",
"Sibiu",
"Suceava",
"Teleorman",
"Timis",
"Tulcea",
"Valcea",
"Vaslui",
"Vrancea"
],
"fara_date": "Judeţul [CJ] nu apare în seriile publicate.",
"fara_date_cod": "judet_negasit"
}
}
{
"data": {
"masura": "numar_mediu",
"denumire": "Numărul mediu al salariaţilor",
"unitate": "persoane",
"de_la": 2024,
"pana_la": 2024,
"filtre": [],
"ani": [
2024
],
"serii": [
{
"nivel": "localitate",
"judet": "Municipiul Bucuresti",
"cod_siruta": 179132,
"nume": "București",
"tip": "municipiu",
"mediu": "urban",
"populatie": 1716961,
"populatie_an": 2021,
"eticheta_sursa": "179132 MUNICIPIUL BUCURESTI",
"unitate": "persoane",
"ultima_valoare": "1053348",
"salariati_la_mia_de_locuitori": "613.4",
"ani_publicati": 1,
"valori": {
"2024": "1053348"
}
}
],
"identitati": {
"identitate": "totalul judeţului = suma localităţilor din el",
"nota": "Verificată pe toată proiecţia cu abatere zero: 1.428 din 1.428 de perechi judeţ × an, plus 35 din 35 de perechi ţară = suma judeţelor.",
"verificari": 0,
"inchise": 0
}
},
"meta": {
"sursa": "Institutul Naţional de Statistică — numărul mediu al salariaţilor pe judeţe şi localităţi (TEMPO, matricea FOM104D).",
"acoperire": {
"de_la": 1990,
"pana_la": 2024
},
"serii_returnate": 3181,
"nota_masura": "Sub nivelul de judeţ, sursa publică doar numărul mediu de salariaţi. Activitatea CAEN, sexul şi câştigul salarial există în /financiar/v1/salariati.",
"nota_nomenclator": "Denumirea, tipul, mediul şi populaţia vin din nomenclatorul propriu de unităţi administrativ-teritoriale, legat prin cod SIRUTA. Se leagă 3.181 din 3.182 de localităţi; excepţia e codul 70049, fosta comună Cernele.",
"nota_populatie": "Populaţia e dintr-un singur an de referinţă (`populatie_an`), nu din anul seriei — deci `salariati_la_mia_de_locuitori` e o aproximaţie pentru clasament, nu o rată oficială.",
"nota_identitate": "Verificată pe toată proiecţia cu abatere zero: 1.428 din 1.428 de perechi judeţ × an, plus 35 din 35 de perechi ţară = suma judeţelor.",
"nota_ordonare": "Seriile vin ordonate descrescător după ultima valoare publicată, deci primele sunt localităţile cu cei mai mulţi salariaţi."
}
}
Error codes
| Code | Slug | When it occurs |
|---|---|---|
| 401 | neautentificat | Token missing, invalid, expired or revoked. |
| 403 | feature_indisponibil | The current plan does not include the feature the route depends on. |
| 422 | validare | A year out of range, or interval_prea_lung — beyond 40 years for a locality, a county or the totals, and beyond 5 years when the response spans all 3,182 localities. |
| 429 | cota_depasita | The 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 year out of range, or interval_prea_lung — beyond 40 years for a locality, a county or the totals, and beyond 5 years when the response spans all 3,182 localities.",
"detalii": {
"siruta": [
"The value sent does not satisfy the parameter rule."
]
}
}
}