API de Conocimiento de Dominio
Conocimiento de Dominio expone una superficie REST para conceptos, capa semantica, ontologia y revision de sugerencias de IA.
Para la vista funcional del producto, jornadas y posicionamiento, consulta Conocimiento de Dominio.
Authentication and Scope
- todas las rutas exigen JWT;
- el alcance efectivo siempre es la
companydel token autenticado; teamno es la particion primaria del conocimiento hoy.
Permissions
concepts:list/get/create/update/deletesemantic:list/create/update/deleteontology:list/create/update/deleteknowledge_reviews:listknowledge_reviews:generateknowledge_reviews:review
Resource Shapes
Concept
namedescriptionstatus:draft | active | archivedtype:term | rule | entity_hint | metric_hint | policy_hintaliases[]tags[]sourceconfidencerelated_catalog_assets[]
Semantic Item
kind:entity | metric | dimension | mappingnamedescriptionstatusformulagrainfilters[]aggregationmapped_tables[]mapped_columns[]mapped_relations[]source_concept_ids[]depends_on_concepts[]depends_on_metrics[]depends_on_entities[]validation_errors[]
Ontology Node
namedescriptionnode_type:class | role | event | object | statestatusparent_node_idaliases[]attributes[]constraints[]source_concepts[]mapped_semantic_entities[]mapped_catalog_assets[]
Ontology Relation
subject_node_idpredicateobject_node_iddescriptioncardinalityrelation_typeconfidenceevidence[]status
Suggestion
target_typetarget_idtarget_nameconcept_idconcept_namesuggested_payloadexplanationevidence[]confidencemodelprompt_versionstatusrequest_idjob_idreview_note
Current status values:
pendingacceptedrejectedsuperseded
Job
target_type:concept | semantic | ontology_node | ontology_relationtarget_ids[]status:queued | running | succeeded | failed | cancelledprocessed_counttotal_countlast_errorrequest_id
Endpoints
Concepts
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/domain-knowledge/concepts | Lista conceptos con paginacion y filtros |
| GET | /api/v1/domain-knowledge/concepts/:id | Obtiene un concepto |
| POST | /api/v1/domain-knowledge/concepts | Crea concepto |
| PATCH | /api/v1/domain-knowledge/concepts/:id | Actualiza concepto |
| DELETE | /api/v1/domain-knowledge/concepts/:id | Archiva concepto |
Supported query params:
pageper_pagesearchstatustype
Suggestions
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/domain-knowledge/suggestions | Lista sugerencias pendientes |
| POST | /api/v1/domain-knowledge/suggestions/concepts/:id/generate | Genera sugerencia para concepto |
| POST | /api/v1/domain-knowledge/suggestions/concepts/:id/promote-semantic | Sugiere promocion a capa semantica |
| POST | /api/v1/domain-knowledge/suggestions/concepts/:id/promote-ontology | Sugiere promocion a ontologia |
| POST | /api/v1/domain-knowledge/suggestions/semantic/:id/generate | Genera sugerencia para item semantico |
| POST | /api/v1/domain-knowledge/suggestions/ontology/nodes/:id/generate | Genera sugerencia para nodo |
| POST | /api/v1/domain-knowledge/suggestions/ontology/relations/:id/generate | Genera sugerencia para relacion |
| POST | /api/v1/domain-knowledge/suggestions/:id/accept | Acepta sugerencia |
| POST | /api/v1/domain-knowledge/suggestions/:id/reject | Rechaza sugerencia |
Current target_type values:
conceptsemanticsemantic_createontology_nodeontology_node_createontology_relation
Semantic Layer
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/domain-knowledge/semantic | Lista items semanticos |
| POST | /api/v1/domain-knowledge/semantic | Crea item semantico |
| PATCH | /api/v1/domain-knowledge/semantic/:id | Actualiza item semantico |
| DELETE | /api/v1/domain-knowledge/semantic/:id | Archiva item semantico |
Ontology
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/domain-knowledge/ontology/nodes | Lista nodos |
| POST | /api/v1/domain-knowledge/ontology/nodes | Crea nodo |
| PATCH | /api/v1/domain-knowledge/ontology/nodes/:id | Actualiza nodo |
| DELETE | /api/v1/domain-knowledge/ontology/nodes/:id | Archiva nodo |
| GET | /api/v1/domain-knowledge/ontology/relations | Lista relaciones |
| POST | /api/v1/domain-knowledge/ontology/relations | Crea relacion |
| PATCH | /api/v1/domain-knowledge/ontology/relations/:id | Actualiza relacion |
| DELETE | /api/v1/domain-knowledge/ontology/relations/:id | Archiva relacion |
Jobs
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/domain-knowledge/jobs | Lista jobs de enriquecimiento |
| GET | /api/v1/domain-knowledge/jobs/:id | Obtiene el estado del job |
| POST | /api/v1/domain-knowledge/jobs/enrich | Crea un job asíncrono de enriquecimiento |
Validation Rules
nameydescriptionson obligatorios al crear los recursos principalesdescriptionacepta hasta4096caracteresaliases[],tags[],related_catalog_assets[]ysource_concept_ids[]tienen un maximo de20items- el
statusde creacion aceptadraftoactive predicatees obligatorio en relaciones ontologicasentity,metricydimensionexigen al menos unsource_concept_id- los jobs exigen al menos un
target_id
AI configuration
Las rutas de generacion devuelven 503 cuando OPENROUTER_API_KEY no esta configurada.
Examples
Create a concept:
curl -X POST https://api.console.solucao42.com.br/api/v1/domain-knowledge/concepts \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Ingresos netos",
"description": "Ingresos despues de descuentos y devoluciones",
"status": "active",
"type": "metric_hint",
"aliases": ["net revenue"],
"tags": ["finanzas"]
}'
Reject a suggestion:
curl -X POST https://api.console.solucao42.com.br/api/v1/domain-knowledge/suggestions/SUGGESTION_ID/reject \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"review_note": "No refleja la regla oficial de la empresa"
}'