Business v1 / Nomenclatoare
Potrivire semantică CAEN
Ia un text liber care descrie o activitate (ex. „vreau să repar biciclete") și întoarce codurile
CAEN (Rev.3) cele mai apropiate ca SENS, cu scor de încredere — nu căutare pe cuvinte, ci pe înțeles
(prinde parafraze, sinonime, formulări diferite). ?text= (obligatoriu), ?limita= (câte, implicit 5, max 20).
GET
https://oneapi.ro/api/business/v1/caen/potriveste
Parametri de interogare
NumeTipDescriereValori acceptate
limitaopțional
string | null
Câte sugestii să întoarcă (implicit 5, max 20).
ex. 3
textopțional
string | null
Textul liber de clasificat (obligatoriu). Ex.: „vreau să repar biciclete".
ex. vreau sa repar bicicleteex. transport rutier de marfaex. cabinet stomatologic
nivelopțional
string | null
Cum se comportă
- Ia un text liber care descrie o activitate şi întoarce codurile CAEN cele mai apropiate ca sens, fiecare cu un scor de încredere. Nu e căutare pe cuvinte (ca
/caen?q=), ci pe înţeles — prinde parafraze, sinonime şi formulări complet diferite de denumirea oficială. - Exemplu: „vreau să repar biciclete" întoarce 9529 („Repararea articolelor de uz personal…") pe primul loc — deşi cuvântul „biciclete" nu apare în denumirea codului, ci doar în notele lui. O căutare pe cuvinte ar rata asta sau ar întoarce „Fabricarea de biciclete" (sens greşit).
- Sub capotă: textul e transformat într-un vector de sens (model bge-m3, self-hosted) şi comparat cu indexul precalculat al codurilor CAEN. Rezultatul e o listă ordonată de sugestii, nu un verdict — foloseşte scorul şi întoarce top câteva, lăsând alegerea finală la utilizator sau la o regulă de prag.
?text=e obligatoriu.?limita=alege câte sugestii (implicit 5, max 20). Potrivirea se face pe CAEN Rev.3 (ediția curentă).
La ce folosește
- Un câmp „descrie ce faci" care sugerează codul CAEN la înregistrarea unei firme.
- Clasificarea în masă a unor descrieri de activitate în coduri CAEN.
- Ajutor la alegerea codului corect când denumirile oficiale sunt greu de căutat.
Structura răspunsului
Toate câmpurile de mai jos sunt în data.
CâmpTipDescriere
text
string
Textul.
nivel
string
Nivelul din ierarhia clasificării — cu cât e mai adânc, cu atât e mai detaliat.
potrivire_sigura
boolean
potriviri[].cod
string
Codul.
potriviri[].denumire
string
Denumirea.
potriviri[].nivel
string
Nivelul din ierarhia clasificării — cu cât e mai adânc, cu atât e mai detaliat.
potriviri[].versiune
string
Versiunea setului de date sau a artefactului din care vin valorile.
potriviri[].scor
number
Scorul de potrivire (0–1).
potriviri[].ancora_lexicala
boolean
potriviri[].sursa
string
Exemple de răspuns
GEThttps://oneapi.ro/api/business/v1/caen/potriveste?text=vreau+sa+repar+biciclete&limita=3
{
"data": {
"text": "vreau sa repar biciclete",
"potriviri": [
{
"cod": "9529",
"denumire": "Repararea și întreținerea articolelor de uz personal și gospodăresc n.c.a.",
"scor": 0.6010549664497375
}
]
}
}
GEThttps://oneapi.ro/api/business/v1/caen/potriveste?text=transport+rutier+de+marfa&limita=3
{
"data": {
"text": "transport rutier de marfa",
"potriviri": [
{
"cod": "492",
"denumire": "Transporturi de marfă pe calea ferată",
"scor": 0.7638886570930535
}
]
}
}
GEThttps://oneapi.ro/api/business/v1/caen/potriveste?text=cabinet+stomatologic&limita=3
{
"data": {
"text": "cabinet stomatologic",
"potriviri": [
{
"cod": "325",
"denumire": "Fabricarea de dispozitive, aparate şi instrumente medicale şi stomatologice",
"scor": 0.5422151250307302
}
]
}
}
Coduri de eroare
| Cod | Slug | Când apare |
|---|---|---|
| 401 | neautentificat | Token lipsă, invalid, expirat sau revocat. |
| 403 | feature_indisponibil | Planul curent nu include funcţia de care ţine ruta. |
| 422 | validare | Lipseşte parametrul text. |
| 429 | cota_depasita | Cota lunară a planului a fost depăşită (vezi Retry-After). |
| 503 | mentenanta | Indexul semantic nu e construit pentru versiunea cerută, 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": {
"limita": [
"Valoarea trimisă nu respectă regula parametrului."
]
}
}
}