Business v1 / Firme
Companies of a legal form
The companies registered under a given legal form — limited company, joint stock, sole trader, non-profit and the rest — with the usual county, status and activity filters.
GET
https://oneapi.ro/api/business/v1/forme-juridice/{cod}/firme
Path parameters
NameTypeDescriptionExample
codrequired
string
Legal form (
SRL, SA, PFA, SNC…).
Query parameters
NameTypeDescriptionAccepted values
sortareoptional
string | null
The order:
denumire (default), cifra_afaceri, profit, salariati (descending, on the latest filed balance sheet), data_inmatriculare (newest first).
relevantadenumirecifra_afaceriprofitsalariatidata_inmatriculare
How it behaves
- The companies that have a given legal form, with filters and pagination.
- With
sortare=cifra_afaceri,profitorsalariati, the list becomes a ranking on each company's latest filed balance sheet (the year is infinanciar.an, so it may differ between companies) and covers only companies that have one —meta.paginare.totaldrops accordingly. For a ranking on a single year:/firme/top.
What it is for
- Listing every sole trader or every joint-stock company, with filters.
- Segmenting a campaign by the customer's legal form.
- Analyses that treat sole traders and companies differently.
Response structure
FieldTypeDescription
data[].cui
integer
The tax ID.
data[].denumire
string
The name.
data[].cod_inmatriculare
string
The trade register order number (J…).
data[].forma_juridica
string
Legal form (SRL, SA, PFA…).
data[].stare
string
The company status, as an object:
denumire is the raw ONRC text (107 distinct values in use), categorie is our classification into 7 buckets — activa, suspendata, dizolvata, lichidare, radiata, insolventa, alta — which is what you filter or group by. cod is the ONRC code of the status.
data[].data_inmatriculare
string
The trade register incorporation date.
data[].sediu.judet
string
The county of the registered office.
data[].sediu.localitate
string
The locality of the registered office.
data[].sediu.cod_siruta
integer
The locality SIRUTA code — chainable to /api/locations/v1.
data[].caen_principal.cod
string
The primary CAEN code.
data[].caen_principal.denumire
string
The name of the primary activity.
data[].fiscal.tva
boolean
VAT-registered.
data[].fiscal.inactiv
boolean
Declared fiscally inactive.
data[].fiscal.e_factura
boolean
Enrolled in e-Invoicing.
data[].financiar
object | null
The latest filed balance sheet (year, turnover, net profit, employees);
null for companies without one — sole traders, new companies —, not zero.
data[].financiar.an
integer
The balance-sheet year.
data[].financiar.cifra_afaceri
number | null
Net turnover, in lei.
data[].financiar.profit_net
number | null
Net profit, in lei; negative = loss.
data[].financiar.salariati
integer | null
The average number of employees.
meta.paginare.pagina
integer
Current page, counted from 1.
meta.paginare.per_pagina
integer
How many records a page holds.
meta.paginare.total
integer
Total matching records, beyond the current page.
meta.paginare.pagini
integer
How many pages the list has.
Response examples
GEThttps://oneapi.ro/api/business/v1/forme-juridice/SRL/firme
{
"data": [
{
"cui": 411545,
"denumire": "$AWA COMEXIM SRL",
"cod_inmatriculare": "J40/13646/1992",
"forma_juridica": "SRL",
"stare": {
"cod": "1084",
"denumire": "radiată",
"categorie": "radiata"
},
"data_inmatriculare": "1992-05-28",
"sediu": {
"judet": "București",
"localitate": "București Sectorul 5",
"cod_siruta": 179187
},
"caen_principal": {
"cod": "5541",
"denumire": "Cafenele și baruri fără spectacol"
},
"fiscal": {
"tva": false,
"inactiv": false,
"e_factura": false
},
"financiar": null
}
],
"meta": {
"paginare": {
"pagina": 1,
"per_pagina": 20,
"total": 2666704,
"pagini": 133336
}
}
}
GEThttps://oneapi.ro/api/business/v1/forme-juridice/PFA/firme
{
"data": [
{
"cui": 21505464,
"denumire": "AANCUŢEI DUMITRU PERSOANĂ FIZICĂ AUTORIZATĂ",
"cod_inmatriculare": "F27/1176/2005",
"forma_juridica": "PFA",
"stare": {
"cod": "1084",
"denumire": "radiată",
"categorie": "radiata"
},
"data_inmatriculare": "2005-05-09",
"sediu": {
"judet": "Neamț",
"localitate": "Ghindăoani",
"cod_siruta": 121260
},
"caen_principal": {
"cod": "4321",
"denumire": "Lucrări de instalații electrice"
},
"fiscal": {
"tva": false,
"inactiv": false,
"e_factura": false
},
"financiar": null
}
],
"meta": {
"paginare": {
"pagina": 1,
"per_pagina": 20,
"total": 729994,
"pagini": 36500
}
}
}
GEThttps://oneapi.ro/api/business/v1/forme-juridice/SA/firme
{
"data": [
{
"cui": 8000146,
"denumire": "107 + 108 CRANG SA",
"cod_inmatriculare": "J09/970/1995",
"forma_juridica": "SA",
"stare": {
"cod": "1084",
"denumire": "radiată",
"categorie": "radiata"
},
"data_inmatriculare": "1995-11-06",
"sediu": {
"judet": "Brăila",
"localitate": "Brăila",
"cod_siruta": 42691
},
"caen_principal": {
"cod": "5541",
"denumire": "Cafenele și baruri fără spectacol"
},
"fiscal": {
"tva": false,
"inactiv": false,
"e_factura": false
},
"financiar": null
}
],
"meta": {
"paginare": {
"pagina": 1,
"per_pagina": 20,
"total": 30274,
"pagini": 1514
}
}
}
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 legal form [{cod}] does not exist. The forms are at /api/business/v1/forme-juridice. |
| 422 | validare | An undeclared parameter or a value that fails validation (pagina, per_pagina, sortare). The offending field is in detalii. |
| 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": "An undeclared parameter or a value that fails validation (pagina, per_pagina, sortare). The offending field is in detalii.",
"detalii": {
"cod": [
"The value sent does not satisfy the parameter rule."
]
}
}
}