oneapi
Autentificare
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."
        }
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
404negasitLocalitatea nu există.
429cota_depasitaCota 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ă."
    }
}