oneapi
Sign in
Locations v1 / Șomaj & construcții

Permit series of a county

The annual trend of one permit category in the county, since 2002.

GET
https://oneapi.ro/api/locations/v1/judete/{cod}/autorizatii/serie

Path parameters

NameTypeDescriptionExample
codrequired string County code, two letters (e.g. CJ). Bucharest is B.

Query parameters

NameTypeDescriptionAccepted values
categorieoptional string | null Which category. max 40 car.
de_laoptional integer | null The start year. 2002 – 2100
pana_laoptional integer | null The end year. 2002 – 2100

How it behaves

  • The annual series for one category, at county level. rezidentiale by default.
  • ⚠️ The alte/comert/hoteluri categories begin in 2009; before that they sat inside alte_agregat.

What it is for

  • A chart of construction activity in a county since 2002.
  • A baseline to overlay a single unit's series on.
  • Measuring the impact of the 2009 crisis on an area.

Response structure

FieldTypeDescription
data.entitate string The name of the county.
data.categorie string The category requested.
data.sursa string The data source.
data.serie[].an integer The year of the point.
data.serie[].numar number | null How many permits in that year.
data.serie[].mp_utili number | null The usable floor area permitted that year, in m².
meta.actualizat object Prospețimea datelor pe domenii (dată ISO 8601).

Response examples

GEThttps://oneapi.ro/api/locations/v1/judete/CJ/autorizatii/serie
{
    "data": {
        "entitate": "Cluj",
        "categorie": "rezidentiale",
        "sursa": "INS (autorizaţii de construire)",
        "serie": [
            {
                "an": 2002,
                "numar": 843,
                "mp_utili": 124891
            }
        ]
    },
    "meta": {
        "actualizat": {
            "somaj": "2026-09-14",
            "autorizatii": "2026-04-01"
        }
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
404negasitThe county or the category does not exist.
422validareAn inverted window, or a year outside the range.
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": "An inverted window, or a year outside the range.",
        "detalii": {
            "cod": [
                "The value sent does not satisfy the parameter rule."
            ]
        }
    }
}