oneapi
Autentificare
Business v1 / Firme

Firme după activitate (semantic)

Descrii ce face firma în text liber (ex. „reparații de biciclete") și primești firmele din CAEN-ul
potrivit ca SENS. Sub capotă: textul e potrivit semantic la codul CAEN (vezi /caen/potriveste),
apoi se listează firmele cu acel cod. Răspunsul arată și CAEN-ul detectat + alternativele. Se pot
adăuga filtre: ?judet=, ?stare=, ?tva=. Paginat.

GET
https://oneapi.ro/api/business/v1/firme/dupa-activitate

Parametri de interogare

NumeTipDescriereValori acceptate
formaopțional string | null Forma juridică (SRL, SA, PFA…). ex. SRL
judetopțional string | null Filtru opţional pe judeţ. ex. CJ
localitateopțional integer | null Localitatea sediului rezolvat prin Locations — nume sau cod SIRUTA. 1
stareopțional string | null Filtru opţional pe starea firmei (funcţiune, radiată…). ex. funcțiune
textopțional string | null Descrierea activităţii (obligatoriu). Ex.: „reparaţii de biciclete". ex. reparatii de bicicleteex. Cluj
tvaopțional boolean | null Cu 1 întoarce numai plătitorii de TVA, cu 0 numai neplătitorii. ex. true
uatopțional integer | null UAT-ul sediului rezolvat — nume sau cod SIRUTA. 1

Cum se comportă

  • Descrii în text liber ce face firma (ex. „reparaţii de biciclete") şi primeşti firmele din CAEN-ul potrivit ca sens — nu pe cuvinte. Compune două lucruri: potrivirea semantică text→CAEN (vezi /caen/potriveste) urmată de listarea firmelor cu acel cod.
  • Răspunsul arată explicit CAEN-ul detectat (cu scor) şi alternativele, ca să fie transparent pe ce s-a filtrat. Firmele vin în forma rezumat, paginate.
  • Se pot adăuga filtrele obişnuite de listare: ?judet=, ?localitate=, ?uat=, ?forma=, ?stare=, ?tva=. ?text= e obligatoriu.
  • Se filtrează pe CAEN-ul cu scorul cel mai mare. Dacă vrei să alegi tu dintre sugestii, foloseşte /caen/potriveste şi apoi /caen/{cod}/firme.

La ce folosește

  • Găsirea firmelor dintr-un domeniu descris în cuvinte, fără să ştii codul CAEN.
  • Prospectare / lead generation pe o nişă de activitate.
  • Analiză de piaţă pe un sector descris natural.

Structura răspunsului

CâmpTipDescriere
data[].cui integer Codul fiscal.
data[].denumire string | null Denumirea.
data[].cod_inmatriculare string | null Numărul de ordine în registrul comerţului (J…).
data[].forma_juridica string | null Forma juridică (SRL, SA, PFA…).
data[].stare string | null Starea firmei, ca obiect: denumire e textul brut din ONRC (107 valori distincte folosite), categorie e clasificarea noastră în 7 cutii — activa, suspendata, dizolvata, lichidare, radiata, insolventa, alta — pe care o foloseşti ca să filtrezi sau să grupezi. cod e codul ONRC al stării.
data[].data_inmatriculare string | null Data înmatriculării la registrul comerţului.
data[].radiere.vazut_la string
data[].radiere.dupa string | null
data[].sediu.judet string Judeţul sediului social.opțional
data[].sediu.localitate string Localitatea sediului social.opțional
data[].sediu.cod_siruta integer Codul SIRUTA al localităţii — chainable spre /locations/v1.opțional
data[].caen_principal.cod string Codul CAEN principal.
data[].caen_principal.denumire string | null Denumirea activităţii principale.
data[].fiscal.tva boolean Plătitoare de TVA.
data[].fiscal.inactiv boolean Declarată inactivă fiscal.
data[].fiscal.e_factura boolean Înrolată în e-Factura.
data[].financiar object Ultimul bilanţ depus (an, cifră de afaceri, profit net, salariaţi); null la firmele fără bilanţ — PFA-uri, firme noi —, nu zero.
data[].financiar.an integer Anul bilanţului.
data[].financiar.cifra_afaceri number | null Cifra de afaceri netă, în lei.
data[].financiar.profit_net number | null Profitul net, în lei; negativ = pierdere.
data[].financiar.salariati integer | null Numărul mediu de salariaţi.
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.

Exemple de răspuns

GEThttps://oneapi.ro/api/business/v1/firme/dupa-activitate?text=reparatii+de+biciclete&per_pagina=3
{
    "data": [
        {
            "cui": 21341760,
            "denumire": "141 GSM SRL",
            "cod_inmatriculare": "J10/352/2007",
            "forma_juridica": "SRL",
            "stare": {
                "cod": "1084",
                "denumire": "radiată",
                "categorie": "radiata"
            },
            "data_inmatriculare": "2007-03-13",
            "sediu": {
                "judet": "Buzău",
                "localitate": "Nehoiu",
                "cod_siruta": 47925
            },
            "caen_principal": {
                "cod": "5274",
                "denumire": "Alte reparații de articole personale n.c.a."
            },
            "fiscal": {
                "tva": false,
                "inactiv": false,
                "e_factura": false
            },
            "financiar": null
        }
    ],
    "meta": {
        "activitate": {
            "text": "reparatii de biciclete",
            "caen": {
                "cod": "9529",
                "denumire": "Repararea și întreținerea articolelor de uz personal și gospodăresc n.c.a.",
                "scor": 0.617999792098999
            },
            "alternative": [
                {
                    "cod": "951",
                    "denumire": "Repararea și întreținerea calculatoarelor şi a echipamentelor de comunicaţii",
                    "scor": 0.5903294086456299
                }
            ]
        },
        "paginare": {
            "pagina": 1,
            "per_pagina": 3,
            "total": 5056,
            "pagini": 1686
        }
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
422validareLipseşte parametrul text.
429cota_depasitaCota lunară a planului a fost depăşită (vezi Retry-After).
503mentenantaIndexul semantic CAEN nu e construit, sau serviciul de embeddings e temporar indisponibil.

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": "validare",
        "mesaj": "Lipseşte parametrul text.",
        "detalii": {
            "forma": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}