Cada componente del asistente expone su propia API REST. La memoria en el puerto 10101, el razonamiento en 30101 y la orquestación en 20020.
| Base URL | http://localhost:<puerto> |
|---|---|
| Formato | JSON · Content-Type: application/json |
| Auth memoria/brain | Bearer token |
| Tenant | X-Soma-Tenant |
| OpenAPI | /openapi.json |
Authorization: Bearer $SOMA_API_TOKEN X-Soma-Tenant: mi-tenant Content-Type: application/json
| Método | Ruta | Descripción |
|---|---|---|
| POST | /memories | Almacena un recuerdo (coordenada + payload). |
| POST | /memories/search | Busca recuerdos por similitud semántica. |
| POST | /graph/link | Crea una arista entre dos nodos del grafo. |
| GET | /graph/neighbors | Vecinos de un nodo del grafo. |
| GET | /graph/path | Ruta entre dos nodos del grafo. |
| GET | /healthz · /readyz · /health | Sondas de salud y detalle. |
| GET | /stats · /ping · /metrics | Estadísticas, ping y métricas Prometheus. |
| GET | /openapi.json | Especificación OpenAPI. |
curl -X POST localhost:10101/memories \
-H "Authorization: Bearer $TOKEN" \
-H "X-Soma-Tenant: mi-tenant" \
-d '{
"coord": "1.0,2.0,3.0",
"payload": {"content": "El usuario prefiere modo oscuro"},
"memory_type": "semantic"
}'
curl -X POST localhost:10101/memories/search \
-H "Authorization: Bearer $TOKEN" \
-H "X-Soma-Tenant: mi-tenant" \
-d '{
"query": "modo oscuro",
"top_k": 5
}'
curl localhost:10101/healthz
# {"kv_store":true,
# "vector_store":true,
# "graph_store":true}
| Método | Ruta | Descripción |
|---|---|---|
| POST | /memory/remember | Consolida contenido en la memoria cognitiva. |
| POST | /memory/recall | Recupera contexto por consulta. |
| GET | /health · /healthz | Estado del cerebro. |
| GET | /api/v1/health/ | API v1 — estado. |
| GET | /api/v1/memory/ | API v1 — memoria. |
| GET | /api/v1/cognitive/ | API v1 — operaciones cognitivas. |
curl -X POST localhost:30101/memory/remember \
-H "Content-Type: application/json" \
-d '{"content": "Contexto relevante de la sesión"}'
curl -X POST localhost:30101/memory/recall \
-H "Content-Type: application/json" \
-d '{"query": "¿qué sabe de este usuario?"}'
| Método | Ruta | Descripción |
|---|---|---|
| POST | /api/v2/auth/token | Obtiene un token de acceso. |
| GET | /api/v2/health | Estado del orquestador. |
| GET | /api/v2/docs | Documentación interactiva. |
| POST | /api/v2/memory | Operaciones de memoria del agente. |
| POST | /api/v2/uploads | Subida de archivos y adjuntos. |
curl -X POST localhost:20020/api/v2/auth/token \
-H "Content-Type: application/json" \
-d '{"username":"...","password":"..."}'
curl localhost:20020/api/v2/health
Integra el Asistente Yachaq en tu aplicación a través del gateway de chat, que gestiona sesión, perfil y voz.
El gateway recibe el mensaje, resuelve el perfil yachaq-ai, mantiene el contexto de sesión y sincroniza la voz a texto y vuelta a voz.
Probar el asistente en vivo ↗{
"message": "¿Cuáles son las tasas vigentes del SRI?",
"context_id": "session-id",
"agent_profile": "yachaq-ai",
"lang": "es",
"attachments": []
}