oneapi
Sign in
Business v1 / Firme

Activities (CAEN)

The company's NACE activities: the main code (from ANAF) plus every authorised or registered code (from ONRC), each with its code, name, NACE version and authorised/main flags.

GET
https://oneapi.ro/api/business/v1/firme/{cui}/activitati

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 primary CAEN (from the tax status) plus the activities authorised at ONRC. Codes appear in both revisions in which they are classified.
  • Note: the ONRC "primary activity" is empty across the whole registry, so the primary comes from the ANAF tax vector.

What it is for

  • Checking that a company is authorised for the activity you are contracting.
  • Classifying a customer portfolio by sector, on whichever CAEN revision you need.
  • Migrating codes between revisions, since the response gives both.

Response structure

All fields below live inside data.

FieldTypeDescription
caen_principal.cod string The primary CAEN code.
caen_principal.denumire string | null The name of the primary activity.
caen_principal.versiune string The CAEN revision the code is expressed in.
nr_activitati integer The number of activities.
activitati[].cod string The code.
activitati[].denumire string | null The name.
activitati[].versiune string The nomenclature revision.
activitati[].autorizata boolean The activity is authorised, not merely declared.
activitati[].principala boolean It is the primary activity.

Response examples

GEThttps://oneapi.ro/api/business/v1/firme/6719278/activitati
{
    "data": {
        "caen_principal": {
            "cod": "4711",
            "denumire": "Comerț cu amănuntul în magazine nespecializate, cu vânzare predominantă de produse alimentare, băuturi și tutun",
            "versiune": "CAEN Rev.2"
        },
        "nr_activitati": 82,
        "activitati": [
            {
                "cod": "1011",
                "denumire": "Prelucrarea și conservarea cărnii",
                "versiune": "CAEN Rev.3",
                "autorizata": true,
                "principala": false
            }
        ]
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
404negasitThe company with tax ID [{cui}] was not found.
422validareThe route takes no parameters apart from lang: any other parameter returns 422 instead of being ignored.
429cota_depasitaThe 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."
            ]
        }
    }
}