oneapi
Sign in
Business v1 / Firme

Entries of a register

The company's detailed entries in one particular register (e.g. every ANSVSA-registered site), with the complete atribute. Paginated. registru = the key from the summary at /registre.

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

Path parameters

NameTypeDescriptionExample
cuirequired string The company tax identification number, without the RO prefix (e.g. 6719278).
registrurequired string Key of the sectoral register whose entries are requested for the company.

Query parameters

This route accepts no query parameters.

How it behaves

  • "Has none" is an answer, not an error. When the entity exists but the list is empty, the response is 200 with an empty list. 404 only means the entity in the path does not exist.
  • The company's detailed entries in a specific register, with each entry's attributes (unit, address, authorised activity), paginated. Take the register key from the summary at /firme/{cui}/registre.

What it is for

  • Listing an operator's authorised units, each with its address and activity.
  • Checking authorisation for exactly the site that concerns you.
  • An audit export: all of a company's entries in one register, paginated.

Response structure

FieldTypeDescription
data[].nume_in_registru string | null The name the company appears under in the register — may differ from the official one.
data[].incredere_potrivire string | null How confident the match is, and WHAT it was made on. ⚠️ It states how good the NAME match was, not that a tax ID matched: when the source does not publish a CUI (are_cui: false in the nomenclator), the link is made on the name alone, and exact means "the name matched exactly", not "the company is confirmed". Measured: ted_ro has are_cui: false and 122,002 exact rows. Values: exact (identical name after normalisation), probabil (a good match above the threshold), ambiguu (several equally good candidates — cui stays null), none (no match). Read it together with the list's are_cui.
data[].valabil_de_la string | null Since when the entry is valid.
data[].valabil_pana_la string | null Until when the entry is valid.
data[].atribute[] mixed The raw attributes published by the register, under their original names.
meta.paginare.pagina integer Pagina curentă.
meta.paginare.per_pagina integer Rezultate pe pagină.
meta.paginare.total integer Total rezultate.
meta.paginare.pagini integer Număr de pagini.

Response examples

GEThttps://oneapi.ro/api/business/v1/firme/24890577/registre/mcpds_sponsorizari
{
    "data": [
        {
            "nume_in_registru": "UNIVERS-ALL DISTRIBUTION SRL",
            "incredere_potrivire": "exact",
            "valabil_de_la": null,
            "valabil_pana_la": null,
            "atribute": {
                "lista": "Firme care au dedus sponsorizări către ONG-uri",
                "adresa": "HARGHITA",
                "sume declarate": "3019"
            }
        }
    ],
    "meta": {
        "paginare": {
            "pagina": 1,
            "per_pagina": 20,
            "total": 1,
            "pagini": 1
        }
    }
}

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."
            ]
        }
    }
}