Business v1 / Firme
Company location
The company's registered office — RAW (ONRC) + RESOLVED (Locations: SIRUTA, unit, county, region, NUTS, population, street).
GET
https://oneapi.ro/api/business/v1/firme/{cui}/locatie
Path parameters
NameTypeDescriptionExample
cuirequired
string
The company tax identification number, without the
RO prefix (e.g. 6719278).
Query parameters
This route accepts no query parameters.
How it behaves
- The registered office resolved to county, locality and, where possible, street, by linking to the Locations module (99.9% at locality, ~79% at street).
- Compared to
sediuin the profile, this route is dedicated to the location slice: the Locations identifiers (SIRUTA code, locality id) plus the raw text.
What it is for
- Placing the company on a map without geocoding the raw address text yourself.
- Routing a lead to the sales agent covering the county or locality of the headquarters.
- Linking the company to the rest of the platform through its SIRUTA code — from there you continue into /api/locations/v1.
Response structure
All fields below live inside data.
FieldTypeDescription
cui
integer
The tax ID.
raw[]
string | integer
The address as the source writes it, field by field; empty keys are omitted.
rezolvat.localitate_id
integer
The internal locality id in Locations.
rezolvat.localitate
string
The locality.
rezolvat.cod_siruta
integer | null
The locality SIRUTA code — chainable to /api/locations/v1.
rezolvat.uat
string | null
The administrative-territorial unit.
rezolvat.judet
string | null
The county.
rezolvat.regiune
string | null
The development region.
rezolvat.cod_nuts
string | null
The NUTS code of the territorial unit.
rezolvat.populatie
integer | null
The locality population (census).
rezolvat.strada_id
integer | null
The street id in Locations — chainable to /api/locations/v1/strazi/{id}.
rezolvat.strada
string | null
The street.
rezolvat.potrivire[]
string
How confident the link to the register is, for locality and for street.
rezolvat.coordonate.lat
number
Latitude of the point (WGS84, 6 decimals ≈ 11 cm).
rezolvat.coordonate.lng
number
Longitude of the point (WGS84).
rezolvat.coordonate.precizie
string
⚠️ How fine the point is, in four steps that are NOT interchangeable:
numar (the OSM address point, matched exactly on the house number in the register — 1,308,114 companies), numar_aproximativ (the same kind of point, matched only on the integer part: "4A" placed at "4" — 115,040 companies), strada (street centroid) and localitate (the rest). Only drop a pin for the first two; a pin on strada claims a precision we do not have.
Response examples
GEThttps://oneapi.ro/api/business/v1/firme/6719278/locatie
{
"data": {
"cui": 6719278,
"raw": {
"judet": "Bucureşti",
"localitate": "Bucureşti Sectorul 6",
"strada": "Timişoara",
"numar": "26",
"cod_postal": "61331",
"sector": 6
},
"rezolvat": {
"localitate_id": 13755,
"localitate": "București Sectorul 6",
"cod_siruta": 179196,
"uat": "București",
"judet": "București",
"regiune": "București-Ilfov",
"cod_nuts": "RO321",
"populatie": 324994,
"strada_id": 221585,
"strada": "Timișoara",
"potrivire": {
"loc": "exact",
"str": "exact"
},
"coordonate": {
"lat": 44.428876,
"lng": 26.036041,
"precizie": "numar"
}
}
}
}
GEThttps://oneapi.ro/api/business/v1/firme/14399840/locatie
{
"data": {
"cui": 14399840,
"raw": {
"judet": "Bucureşti",
"localitate": "Bucureşti Sectorul 6",
"strada": "Şos. VIRTUŢII",
"numar": "148",
"cod_postal": "60787",
"sector": 6
},
"rezolvat": {
"localitate_id": 13755,
"localitate": "București Sectorul 6",
"cod_siruta": 179196,
"uat": "București",
"judet": "București",
"regiune": "București-Ilfov",
"cod_nuts": "RO321",
"populatie": 324994,
"strada_id": null,
"strada": null,
"potrivire": {
"loc": "exact",
"str": "none"
},
"coordonate": {
"lat": 44.435278,
"lng": 26.102778,
"precizie": "localitate"
}
}
}
}
GEThttps://oneapi.ro/api/business/v1/firme/2054341/locatie
{
"data": {
"cui": 2054341,
"raw": {
"judet": "Neamţ",
"localitate": "Municipiul Roman",
"strada": "B-dul REPUBLICII",
"numar": "123-125",
"cod_postal": "5550",
"sector": 0
},
"rezolvat": {
"localitate_id": 9302,
"localitate": "Roman",
"cod_siruta": 120879,
"uat": "Roman",
"judet": "Neamț",
"regiune": "Nord-Est",
"cod_nuts": "RO214",
"populatie": 48644,
"strada_id": 142741,
"strada": "Republicii",
"potrivire": {
"loc": "exact",
"str": "exact"
},
"coordonate": {
"lat": 46.924989,
"lng": 26.943953,
"precizie": "numar"
}
}
}
}
GEThttps://oneapi.ro/api/business/v1/firme/24890577/locatie
{
"data": {
"cui": 24890577,
"raw": {
"judet": "Harghita",
"localitate": "Municipiul Gheorgheni",
"strada": "POMPIERILOR",
"numar": "118",
"cod_postal": "535500"
},
"rezolvat": {
"localitate_id": 6756,
"localitate": "Gheorgheni",
"cod_siruta": 83570,
"uat": "Gheorgheni",
"judet": "Harghita",
"regiune": "Centru",
"cod_nuts": "RO124",
"populatie": 15762,
"strada_id": 128938,
"strada": "Pompierilor",
"potrivire": {
"loc": "exact",
"str": "exact"
},
"coordonate": {
"lat": 46.724202,
"lng": 25.589422,
"precizie": "strada"
}
}
}
}
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 company with tax ID [{cui}] was not found. |
| 422 | validare | The route takes no parameters apart from lang: any other parameter returns 422 instead of being ignored. |
| 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": "validare",
"mesaj": "The route takes no parameters apart from lang: any other parameter returns 422 instead of being ignored.",
"detalii": {
"cui": [
"The value sent does not satisfy the parameter rule."
]
}
}
}