Locations v1 / Ierarhie & dropdown-uri
Detaliu complet localitate
⭐ Toate secțiunile free deodată (populație defalcată + coduri poștale + nume
alternative) — pagina de detaliu într-un singur call. Fără geo, fără străzi.
GET
https://oneapi.ro/api/locations/v1/localitati/{cod}/complet
Parametri de cale
NumeTipDescriereExemplu
codobligatoriu
string
Codul SIRUTA al localităţii (ex.
54984).
Parametri de interogare
Ruta nu acceptă parametri de interogare.
Cum se comportă
- Toate secțiunile free deodată (populație defalcată + coduri poștale + nume alternative). Fără geo, fără străzi.
La ce folosește
- Randezi o pagină de detaliu completă cu un singur apel, fără să compui manual lista de
include. - Popularea unei fișe de localitate (populație defalcată + coduri poștale + nume alternative) într-un backend de raportare.
- Prefetch la selecția unei localități, ca ecranul următor să aibă deja toate secțiunile free.
Structura răspunsului
CâmpTipDescriere
data.cod_siruta
integer
Codul SIRUTA (cheia publică a entității).
data.nume
string
Denumirea entității.
data.tip
string
Tipul entității (cod brut; denumirile la /nomenclatoare/tipuri).
data.mediu
string | null
urban sau rural.
data.geoname_id
integer | null
Id-ul GeoNames al localității (punte externă, nu cheie de-a noastră).
data.wikidata_qid
string | null
QID-ul Wikidata al localității.
data.lat
number | null
Latitudine (WGS84).
data.lng
number | null
Longitudine (WGS84).
data.judet.cod
string
Indicativul auto al județului.
data.judet.nume
string
Numele județului.
data.uat.cod_siruta
integer
Codul SIRUTA al UAT-ului — chainable spre /uat/{cod}.
data.uat.nume
string
Denumirea UAT-ului.
data.uat.tip
string
Tipul UAT-ului (municipiu/oraș/comună).
data.populatie
integer | null
Populația (recensământ).
data.populatie_detaliu
object
Defalcare M/F pe an și sursă — mereu prezentă aici (nu condiționată de include).
data.populatie_detaliu.masculin
integer | null
Populația masculină.
data.populatie_detaliu.feminin
integer | null
Populația feminină.
data.populatie_detaliu.an
integer | null
Anul recensământului sursă.
data.populatie_detaliu.sursa
string | null
Sursa populației (ex. RPL2021).
data.coduri_postale[]
string
Codurile poștale ale localității.opțional
data.nume_alternative[]
array
Exonime + denumiri istorice — mereu prezente.
data.nume_alternative[].nume
string
Denumirea alternativă (exonim sau formă istorică).
data.nume_alternative[].lang
string | null
Limba denumirii, unde e cunoscută.
data.nume_alternative[].tip
string | null
Ce fel de denumire e: exonim, istorică, variantă.
data.nume_alternative[].sursa
string | null
De unde provine denumirea.
data.nume_alternative[].valabil_pana_la
string | null
Anul până la care denumirea a fost oficială.
data.secundare[]
array
Cătunele/cartierele atașate localității (nume, tip, coordonate, distanța până la localitate).
data.secundare[].nume
string
Denumirea cătunului sau cartierului.
data.secundare[].tip
string
catun sau cartier.
data.secundare[].lat
number | null
Latitudinea locului secundar (WGS84).
data.secundare[].lng
number | null
Longitudinea locului secundar (WGS84).
data.secundare[].distanta_m
integer | null
Distanța până la localitatea-mamă, în metri.
data.secundare[].sursa
string
De unde vine locul secundar: osm sau geonames.
meta.actualizat
object
Prospețimea datelor pe domenii (dată ISO 8601).
meta.distanta
object
Cum sunt măsurate distanţele din răspuns. Apare pe orice răspuns care conţine o distanţă.
meta.distanta.metoda
string
Mereu
linie_dreapta: distanţa geodezică pe suprafaţa Pământului, nu pe drum.
meta.distanta.detaliu
string
Aceeaşi informaţie, în cuvinte.
Exemple de răspuns
GEThttps://oneapi.ro/api/locations/v1/localitati/54984/complet
{
"data": {
"cod_siruta": 54984,
"nume": "Cluj-Napoca",
"tip": "resedinta_municipiu",
"mediu": "urban",
"geoname_id": 681290,
"wikidata_qid": "Q16898189",
"lat": 46.78,
"lng": 23.559444444444,
"judet": {
"cod": "CJ",
"nume": "Cluj"
},
"uat": {
"cod_siruta": 54975,
"nume": "Cluj-Napoca",
"tip": "municipiu"
},
"populatie": 286598,
"populatie_detaliu": {
"masculin": 134768,
"feminin": 151830,
"an": 2021,
"sursa": "RPL2021"
},
"coduri_postale": [
"400335"
],
"nume_alternative": [
{
"nume": "Cluj-Napoca",
"lang": "ro",
"tip": "denumire_istorica",
"sursa": "mfp",
"valabil_pana_la": "2001-05-10"
}
],
"secundare": [
{
"nume": "Andrei Mureșanu",
"tip": "cartier",
"lat": 46.75922,
"lng": 23.60612,
"distanta_m": 4248,
"sursa": "geonames"
}
]
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"geo": "2026-09-04T21: 24: 20+03: 00",
"populatie": "2026-08-15T16: 40: 07+03: 00"
},
"distanta": {
"metoda": "linie_dreapta",
"detaliu": "Distanţele sunt geodezice, în linie dreaptă pe suprafaţa Pământului (WGS84) — nu pe drum."
}
}
}
GEThttps://oneapi.ro/api/locations/v1/localitati/179196/complet
{
"data": {
"cod_siruta": 179196,
"nume": "București Sectorul 6",
"tip": "sector",
"mediu": "urban",
"geoname_id": 11048323,
"wikidata_qid": "Q167280",
"lat": 44.43527778,
"lng": 26.10277778,
"judet": {
"cod": "B",
"nume": "București"
},
"uat": {
"cod_siruta": 179132,
"nume": "București",
"tip": "municipiu"
},
"populatie": 324994,
"populatie_detaliu": {
"masculin": 149475,
"feminin": 175519,
"an": 2021,
"sursa": "RPL2021"
},
"coduri_postale": [
"060154"
],
"nume_alternative": [
{
"nume": "6. kerület (Bukarest)",
"lang": "hu",
"tip": "exonim",
"sursa": "wikidata",
"valabil_pana_la": null
}
],
"secundare": []
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"geo": "2026-09-04T21: 24: 20+03: 00",
"populatie": "2026-08-15T16: 40: 07+03: 00"
}
}
}
GEThttps://oneapi.ro/api/locations/v1/localitati/155252/complet
{
"data": {
"cod_siruta": 155252,
"nume": "Timișoara",
"tip": "resedinta_municipiu",
"mediu": "urban",
"geoname_id": 665087,
"wikidata_qid": "Q16898582",
"lat": 45.759722222222,
"lng": 21.23,
"judet": {
"cod": "TM",
"nume": "Timiș"
},
"uat": {
"cod_siruta": 155243,
"nume": "Timișoara",
"tip": "municipiu"
},
"populatie": 250849,
"populatie_detaliu": {
"masculin": 116874,
"feminin": 133975,
"an": 2021,
"sursa": "RPL2021"
},
"coduri_postale": [
"300789"
],
"nume_alternative": [
{
"nume": "Timișoara",
"lang": "ro",
"tip": "denumire_istorica",
"sursa": "mfp",
"valabil_pana_la": "2015-01-20"
}
],
"secundare": [
{
"nume": "Antene",
"tip": "cartier",
"lat": 45.764809,
"lng": 21.23197,
"distanta_m": 586,
"sursa": "osm"
}
]
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"geo": "2026-09-04T21: 24: 20+03: 00",
"populatie": "2026-08-15T16: 40: 07+03: 00"
},
"distanta": {
"metoda": "linie_dreapta",
"detaliu": "Distanţele sunt geodezice, în linie dreaptă pe suprafaţa Pământului (WGS84) — nu pe drum."
}
}
}
GEThttps://oneapi.ro/api/locations/v1/localitati/8176/complet
{
"data": {
"cod_siruta": 8176,
"nume": "Ciugudu de Jos",
"tip": "sat",
"mediu": "rural",
"geoname_id": 681463,
"wikidata_qid": "Q645982",
"lat": 46.418717,
"lng": 23.744741,
"judet": {
"cod": "AB",
"nume": "Alba"
},
"uat": {
"cod_siruta": 8158,
"nume": "Unirea",
"tip": "comuna"
},
"populatie": 309,
"populatie_detaliu": {
"masculin": 156,
"feminin": 153,
"an": 2021,
"sursa": "RPL2021"
},
"coduri_postale": [
"517786"
],
"nume_alternative": [
{
"nume": "Alfüged",
"lang": "hu",
"tip": "exonim",
"sursa": "wikidata",
"valabil_pana_la": null
}
],
"secundare": []
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+03: 00",
"geo": "2026-09-04T21: 24: 20+03: 00",
"populatie": "2026-08-15T16: 40: 07+03: 00"
}
}
}
Coduri de eroare
| Cod | Slug | Când apare |
|---|---|---|
| 401 | neautentificat | Token lipsă, invalid, expirat sau revocat. |
| 403 | feature_indisponibil | Planul curent nu include funcţia de care ţine ruta. |
| 404 | negasit | Localitatea nu există. |
| 429 | cota_depasita | Cota 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": "negasit",
"mesaj": "Localitatea nu există."
}
}