oneapi
Autentificare
Locations v1 / Profil & comparație

Compară entități

⭐ Aceleași mărimi pentru mai multe entități de același nivel, una lângă alta: populație,
suprafață, densitate, firme și șomaj. Codurile care nu există sunt raportate în negasite,
nu ignorate în tăcere.

GET
https://oneapi.ro/api/locations/v1/compara

Parametri de interogare

NumeTipDescriereValori acceptate
nivelobligatoriu string Nivelul entităților comparate. localitateuatjudet
codurilistăopțional text Codurile, separate prin virgulă (cod auto la județ, cod SIRUTA la restul). 2 – 10 entități

Cum se comportă

  • ⭐ Aceleași mărimi pentru 2–10 entități de același nivel, una lângă alta.
  • Codurile necunoscute ajung în negasite, nu sunt ignorate în tăcere — altfel un cod greșit ar dispărea dintr-o comparație fără ca nimeni să observe. Dacă niciunul nu există, răspunsul e 404.
  • La nivel=localitate lipsesc densitate și somaj: localitățile n-au suprafață în nomenclator, iar șomajul se publică pe UAT, nu sub el. Câmpurile lipsesc onest, nu sunt aproximate din entitatea-părinte.
  • Statisticile INS nu sunt incluse deliberat: 19 indicatori × N entități ar transforma un răspuns de zecimi de secundă în câteva secunde. Pentru ele există /judete/{cod}/statistici/ins și profilul de județ.

La ce folosește

  • Tabel comparativ între județe sau orașe într-o pagină de analiză.
  • Alegerea unei locații între câteva variante, pe aceleași mărimi.
  • Verificarea unei intuiții („unde e mai densă activitatea economică?") fără N apeluri.

Structura răspunsului

CâmpTipDescriere
data.nivel string Nivelul cerut.
data.entitati[].nivel string Nivelul entității (același pentru toate).
data.entitati[].cod string Codul entității.
data.entitati[].nume string Denumirea entității.
data.entitati[].populatie integer | null Populația la recensământ.
data.entitati[].suprafata_kmp number | null Suprafața în km²; null la localitate.
data.entitati[].densitate number | null Locuitori pe km²; null la localitate.
data.entitati[].firme.total integer Numărul total de firme cu sediul în entitate.
data.entitati[].firme.platitori_tva integer Câte sunt plătitoare de TVA.
data.entitati[].firme.densitate number | null Firme pe km²; null la localitate.
data.entitati[].somaj.numar number | null Șomeri înregistrați la ultima lună; absent la localitate.
data.entitati[].somaj.pondere number | null Ponderea în resursele de muncă, în procente.
data.entitati[].somaj.numitor string | null La ce se raportează ponderea.
data.entitati[].somaj.perioada.an integer Anul ultimei luni publicate.
data.entitati[].somaj.perioada.luna integer Luna (1–12).
data.negasite[] string Codurile care nu există la nivelul cerut.
meta.actualizat object Prospețimea datelor pe domenii (dată ISO 8601).

Exemple de răspuns

GEThttps://oneapi.ro/api/locations/v1/compara?nivel=judet&coduri[]=CJ&coduri[]=IS
{
    "data": {
        "nivel": "judet",
        "entitati": [
            {
                "nivel": "judet",
                "cod": "CJ",
                "nume": "Cluj",
                "populatie": 679141,
                "suprafata_kmp": 6666.8818,
                "densitate": 101.9,
                "firme": {
                    "total": 194068,
                    "platitori_tva": 26852,
                    "densitate": 29.11
                },
                "somaj": {
                    "numar": 5331,
                    "pondere": 1.2,
                    "numitor": "resurse de muncă",
                    "perioada": {
                        "an": 2026,
                        "luna": 7
                    }
                }
            }
        ],
        "negasite": []
    },
    "meta": {
        "actualizat": {
            "administrativ": "2026-08-15T16: 39: 14+03: 00",
            "populatie": "2026-08-15T16: 40: 07+03: 00"
        }
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
404negasitNiciunul dintre coduri nu există la nivelul cerut.
422validareMai puțin de 2 sau mai mult de 10 coduri, ori nivel necunoscut.
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": "validare",
        "mesaj": "Mai puțin de 2 sau mai mult de 10 coduri, ori nivel necunoscut.",
        "detalii": {
            "nivel": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}