Locations v1 / Șomaj & construcții
Unemployment series of an administrative unit
The monthly trend of registered unemployment, since January 2010. Every point carries both the count and the share.
GET
https://oneapi.ro/api/locations/v1/uat/{cod}/somaj/serie
Path parameters
NameTypeDescriptionExample
codrequired
string
SIRUTA code of the administrative-territorial unit (e.g.
54975 for Cluj-Napoca).
Query parameters
NameTypeDescriptionAccepted values
sexoptional
string | null
Which series.
totalmasculinfeminin
de_laoptional
integer | null
The start year.
2010 – 2100
pana_laoptional
integer | null
The end year.
2010 – 2100
How it behaves
- The full monthly series, from January 2010 — at most 198 points. Every point carries both the count and the share, so it need not be requested twice.
- The window is optional and uncapped: the route is always about a single entity, so the absolute maximum is its entire history.
- Without
sex, the total is returned.
What it is for
- A chart of unemployment in one locality over 16 years.
- Spotting a local shock (a factory closing) that the county average hides.
- A before/after comparison between two periods, without asking for each month separately.
Response structure
FieldTypeDescription
data.entitate
string
The unit's canonical name.
data.sex
string
The sex the series is for.
data.numitor
string
What
pondere is measured against.
data.sursa
string
The data source.
data.serie[].an
integer
The year of the point.
data.serie[].luna
integer
The month of the point (1–12).
data.serie[].numar
number | null
The number of unemployed in that month.
data.serie[].pondere
number | null
The share of labour resources, as a percentage.
meta.actualizat
object
Prospețimea datelor pe domenii (dată ISO 8601).
Response examples
GEThttps://oneapi.ro/api/locations/v1/uat/54975/somaj/serie?de_la=2024
{
"data": {
"entitate": "Cluj-Napoca",
"sex": "total",
"numitor": "resurse de muncă",
"sursa": "INS (şomaj înregistrat)",
"serie": [
{
"an": 2024,
"luna": 1,
"numar": 635,
"pondere": 0.3
}
]
},
"meta": {
"actualizat": {
"somaj": "2026-09-14",
"autorizatii": "2026-04-01"
}
}
}
GEThttps://oneapi.ro/api/locations/v1/uat/54975/somaj/serie?sex=feminin&de_la=2025
{
"data": {
"entitate": "Cluj-Napoca",
"sex": "feminin",
"numitor": "resurse de muncă",
"sursa": "INS (şomaj înregistrat)",
"serie": [
{
"an": 2025,
"luna": 1,
"numar": 365,
"pondere": 0.4
}
]
},
"meta": {
"actualizat": {
"somaj": "2026-09-14",
"autorizatii": "2026-04-01"
}
}
}
GEThttps://oneapi.ro/api/locations/v1/uat/54975/somaj/serie
{
"data": {
"entitate": "Cluj-Napoca",
"sex": "total",
"numitor": "resurse de muncă",
"sursa": "INS (şomaj înregistrat)",
"serie": [
{
"an": 2010,
"luna": 1,
"numar": 6326,
"pondere": 2.8
}
]
},
"meta": {
"actualizat": {
"somaj": "2026-09-14",
"autorizatii": "2026-04-01"
}
}
}
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. |
| 404 | negasit | The administrative unit does not exist. |
| 422 | validare | sex outside the list, or an inverted window. |
| 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": "sex outside the list, or an inverted window.",
"detalii": {
"cod": [
"The value sent does not satisfy the parameter rule."
]
}
}
}