Locations v1 / Ierarhie & dropdown-uri
County detail
A county by its vehicle registration prefix (CJ/IF/B), with the parent region, the seat (chainable) and the number of units and localities.
GET
https://oneapi.ro/api/locations/v1/judete/{cod}
Path parameters
NameTypeDescriptionExample
codrequired
string
County code, two letters (e.g.
CJ). Bucharest is B.
Query parameters
This route accepts no query parameters.
How it behaves
- When
resedintaisnull,resedinta_notasays why. There are three cases, all genuine quirks of the administrative organisation rather than gaps in the data: Bucharest as a county and as a municipality (it is its own seat, and at locality level it has only its six districts), and Ilfov county, whose seat — Bucharest — lies outside it. - 227 of the 13,755 localities (1.65%) have no population figure — near-abandoned villages for which the 2021 census published no value (the smallest figure published anywhere in the country is 3). This is not a missing link: all 227 exist, with geometry and with a GeoNames identifier. County and administrative-unit figures are unaffected — they come from their own census rows, not from summing localities. Anyone who sums the localities themselves loses, nationwide, 96 people out of 19,053,815.
{cod}is the registration prefix, case-insensitive (cj=CJ); Bucharest isB.populatieandsuprafata_kmpcan benullwhen the aggregate is missing.
What it is for
- Rendering a county page (seat, region, number of localities) in a portal
- Resolving a registration prefix into the full county for labels and display
- Drill-down navigation from a county to its units and localities
Response structure
FieldTypeDescription
data.cod
string
The entity code (the public key of that level).
data.cod_siruta
integer
The SIRUTA code (the entity's public key).
data.cod_nuts
string | null
The county's NUTS-3 code — joins directly with Eurostat datasets.
data.geoname_id
integer | null
The county's GeoNames id (an external bridge, not a key of ours).
data.wikidata_qid
string | null
The county's Wikidata QID.
data.nume
string
The name of the entity.
data.regiune
object
The region it belongs to (link upwards).
data.regiune.cod
string
The NUTS-2 code of the region.
data.regiune.nume
string
The name of the region.
data.resedinta
object
The seat, chainable to /localitati/{cod}.
data.resedinta.nume
string
The name of the seat locality.
data.resedinta.cod_siruta
integer
The SIRUTA code of the seat — chainable to /localitati/{cod}.
data.resedinta_nota
string | null
Why there is no seat. Appears only when
resedinta is null.
data.populatie
integer | null
Population (census).
data.suprafata_kmp
number | null
Area, in km².
data.nr_uat
integer
How many administrative units the county has.
data.nr_localitati
integer
Active localities in the county.
meta.actualizat
object
Prospețimea datelor pe domenii (dată ISO 8601).
Response examples
GEThttps://oneapi.ro/api/locations/v1/judete/CJ
{
"data": {
"cod": "CJ",
"cod_siruta": 127,
"cod_nuts": "RO113",
"geoname_id": 681291,
"wikidata_qid": "Q182624",
"nume": "Cluj",
"regiune": {
"cod": "RO11",
"nume": "Nord-Vest"
},
"resedinta": {
"nume": "Cluj-Napoca",
"cod_siruta": 54984
},
"resedinta_nota": null,
"populatie": 679141,
"suprafata_kmp": 6666.8818,
"nr_uat": 81,
"nr_localitati": 434
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"populatie": "2026-08-15T16: 40: 07+03: 00"
}
}
}
GEThttps://oneapi.ro/api/locations/v1/judete/AB
{
"data": {
"cod": "AB",
"cod_siruta": 10,
"cod_nuts": "RO121",
"geoname_id": 686581,
"wikidata_qid": "Q45868",
"nume": "Alba",
"regiune": {
"cod": "RO12",
"nume": "Centru"
},
"resedinta": {
"nume": "Alba Iulia",
"cod_siruta": 1026
},
"resedinta_nota": null,
"populatie": 325941,
"suprafata_kmp": 6256.544,
"nr_uat": 78,
"nr_localitati": 716
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"populatie": "2026-08-15T16: 40: 07+03: 00"
}
}
}
GEThttps://oneapi.ro/api/locations/v1/judete/B
{
"data": {
"cod": "B",
"cod_siruta": 403,
"cod_nuts": "RO321",
"geoname_id": null,
"wikidata_qid": null,
"nume": "București",
"regiune": {
"cod": "RO32",
"nume": "București-Ilfov"
},
"resedinta": null,
"resedinta_nota": "Municipiul Bucureşti este el însuşi reşedinţă. La nivel de localitate are doar cele şase sectoare, niciunul dintre ele nefiind reşedinţă de judeţ.",
"populatie": 1716961,
"suprafata_kmp": 238.9761,
"nr_uat": 1,
"nr_localitati": 6
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"populatie": "2026-08-15T16: 40: 07+03: 00"
}
}
}
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 county does not exist. |
| 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": "negasit",
"mesaj": "The county does not exist."
}
}