Locations v1 / Profil & comparație
Profilul unui județ
⭐ Tot ce știm despre un județ într-un singur apel: demografie, firme (total, TVA, densitate),
șomaj la ultima lună, autorizații de construire la ultimul an și cei 19 indicatori INS.
Înlocuiește cinci apeluri separate.
GET
https://oneapi.ro/api/locations/v1/judete/{cod}/profil
Parametri de cale
NumeTipDescriereExemplu
codobligatoriu
string
Codul judeţului, două litere (ex.
CJ). Bucureştiul e B.
Parametri de interogare
Ruta nu acceptă parametri de interogare.
Cum se comportă
- ⭐ Compune ce dau separat
/judete/{cod}/statistici,/firme/sumar,/somaj,/autorizatiiși/statistici/ins. Nu sunt date noi — câștigul e numărul de dus-întorsuri. - Fiecare secțiune își păstrează perioada proprie: recensământul e din 2021, șomajul e la ultima lună publicată, autorizațiile la ultimul an, iar indicatorii INS au fiecare anul lui. Nu sunt aduse la un numitor comun, fiindcă asta ar însemna să pretindem o simultaneitate care nu există.
- O secțiune fără date iese
null, nu lipsește — ca structura răspunsului să fie aceeași pentru orice județ. firme.densitate= firme pe km², derivată din suprafața județului.
La ce folosește
- Randezi o pagină de județ completă cu un singur apel, în loc de cinci.
- Alimentezi un dashboard regional fără să compui manual apelurile.
- Exporți fișa unui județ pentru un raport, cu toate mărimile la aceeași dată.
Structura răspunsului
CâmpTipDescriere
data.nivel
string
Nivelul entității (
judet).
data.cod
string
Codul cerut.
data.nume
string
Numele județului.
data.populatie
integer | null
Populația la recensământ.
data.suprafata_kmp
number | null
Suprafața, în km².
data.densitate
number | null
Locuitori pe km².
data.nr_uat
integer | null
Câte UAT-uri are județul.
data.nr_localitati
integer | null
Câte localități active are.
data.firme.total
integer
Numărul total de firme cu sediul în entitate.
data.firme.platitori_tva
integer
Câte dintre ele sunt plătitoare de TVA.
data.firme.densitate
number | null
Firme pe km²;
null unde nu există suprafață.
data.somaj.numar
number | null
Numărul de șomeri înregistrați la ultima lună publicată.
data.somaj.pondere
number | null
Ponderea în resursele de muncă, în procente.
data.somaj.numitor
string | null
La ce se raportează ponderea — nu e rata șomajului.
data.somaj.perioada.an
integer
Anul ultimei luni publicate.
data.somaj.perioada.luna
integer
Luna (1–12).
data.autorizatii.an
integer
Ultimul an cu autorizații publicate.
data.autorizatii.categorii[].categorie
string
Categoria de construcție.
data.autorizatii.categorii[].numar
number | null
Câte autorizații s-au eliberat.
data.autorizatii.categorii[].mp_utili
number | null
Suprafața utilă autorizată, în m².
data.statistici_ins[].indicator
string
Cheia indicatorului INS.
data.statistici_ins[].tema
string
Tema din care face parte.
data.statistici_ins[].nume
string
Denumirea indicatorului.
data.statistici_ins[].valoare
number
Ultima valoare publicată.
data.statistici_ins[].um
string | null
Unitatea de măsură.
data.statistici_ins[].perioada
string
Perioada de referință a valorii.
data.statistici_ins[].matrice
string
Matricea TEMPO sursă.
meta.actualizat
object
Prospețimea datelor pe domenii (dată ISO 8601).
Exemple de răspuns
GEThttps://oneapi.ro/api/locations/v1/judete/CJ/profil
{
"data": {
"nivel": "judet",
"cod": "CJ",
"nume": "Cluj",
"populatie": 679141,
"suprafata_kmp": 6666.8818,
"densitate": 101.9,
"nr_uat": 81,
"nr_localitati": 434,
"firme": {
"total": 194068,
"platitori_tva": 26852,
"densitate": 29.11
},
"somaj": {
"numar": 5331,
"pondere": 1.2,
"numitor": "resurse de muncă",
"perioada": {
"an": 2026,
"luna": 7
}
},
"autorizatii": {
"an": 2025,
"categorii": [
{
"categorie": "administrative",
"numar": 2,
"mp_utili": 12195
}
]
},
"statistici_ins": [
{
"indicator": "populatie_domiciliu",
"tema": "demografie",
"nume": "Populația după domiciliu (1 ianuarie)",
"valoare": 747392,
"um": "Numar persoane",
"perioada": "2026-01-01",
"matrice": "POP107A"
}
]
},
"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/profil
{
"data": {
"nivel": "judet",
"cod": "AB",
"nume": "Alba",
"populatie": 325941,
"suprafata_kmp": 6256.544,
"densitate": 52.1,
"nr_uat": 78,
"nr_localitati": 716,
"firme": {
"total": 70607,
"platitori_tva": 7392,
"densitate": 11.29
},
"somaj": {
"numar": 5997,
"pondere": 2.7,
"numitor": "resurse de muncă",
"perioada": {
"an": 2026,
"luna": 7
}
},
"autorizatii": {
"an": 2025,
"categorii": [
{
"categorie": "administrative",
"numar": 2,
"mp_utili": 562
}
]
},
"statistici_ins": [
{
"indicator": "populatie_domiciliu",
"tema": "demografie",
"nume": "Populația după domiciliu (1 ianuarie)",
"valoare": 360199,
"um": "Numar persoane",
"perioada": "2026-01-01",
"matrice": "POP107A"
}
]
},
"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/profil
{
"data": {
"nivel": "judet",
"cod": "B",
"nume": "București",
"populatie": 1716961,
"suprafata_kmp": 238.9761,
"densitate": 7184.7,
"nr_uat": 1,
"nr_localitati": 6,
"firme": {
"total": 725317,
"platitori_tva": 101907,
"densitate": 3035.1
},
"somaj": {
"numar": 5404,
"pondere": 0.4,
"numitor": "resurse de muncă",
"perioada": {
"an": 2026,
"luna": 7
}
},
"autorizatii": {
"an": 2025,
"categorii": [
{
"categorie": "administrative",
"numar": 3,
"mp_utili": 8558
}
]
},
"statistici_ins": [
{
"indicator": "populatie_domiciliu",
"tema": "demografie",
"nume": "Populația după domiciliu (1 ianuarie)",
"valoare": 2108049,
"um": "Numar persoane",
"perioada": "2026-01-01",
"matrice": "POP107A"
}
]
},
"meta": {
"actualizat": {
"administrativ": "2026-08-15T16: 39: 14+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 | Județul 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": "Județul nu există."
}
}