Documentación de los 3 endpoints principales para conectar tu sistema con Lex Intellecta bajo el modelo Zero-Knowledge. Sin SDKs, sin librerías exóticas, sólo HTTP.
Todas las llamadas autenticadas usan tu API key como Bearer token o header X-API-Key.
Authorization: Bearer lex_zk_TU_API_KEY
Content-Type: application/json
Las API keys se asignan al firmar el contrato. Para sandbox, contacta a saas@lexintellecta.com.
POST /api/v1/token/generate
Tu sistema llama esto cuando un afiliado hace click en "Diagnóstico legal" en tu oficina virtual. Devuelve un UUID que tu sistema asocia internamente a la persona real.
{
"scope": "n1" | "n2" | "docs" | "review" | "multi",
"metadata": {
"categoria_afiliado": "asociado_aportante",
"sector_economico": "servicios"
}
}
{
"ok": true,
"token": "550e8400-e29b-41d4-a716-446655440000",
"embed_url": "https://lexintellecta.com/saas/demo/inicio?token=550e8400-...",
"expires_at": "2026-04-30T22:30:00.000Z",
"scope": "multi",
"organizacion": {
"nombre": "Entidad La Confianza",
"branding_color": "#1A7A4A"
}
}
| Campo | Tipo | Descripción |
|---|---|---|
scope | string | Producto al que tendrá acceso el token. multi = todos los productos. |
metadata | object | Información NO IDENTIFICABLE que tu sistema quiera asociar al token (categoría, sector, etc). Nunca enviar nombre, cédula, email. |
token | uuid v4 | El identificador anónimo. Almacénalo en tu BD asociado al afiliado. |
embed_url | url | URL para abrir como iframe o redirect. La interfaz Lex se carga lista para el flujo elegido. |
expires_at | iso8601 | Vence a las 4 horas. Después debes generar uno nuevo. |
Cuando el afiliado completa una interacción (llamada N1, diagnóstico N2, documento generado, doc revisado), Lex envía el resultado a tu webhook configurado.
POST {tu_webhook_url}
Headers:
X-Lex-Token: 550e8400-e29b-41d4-a716-446655440000
X-Lex-Signature: sha256=8a9b...
X-Lex-Timestamp: 2026-04-30T18:42:31.000Z
Body:
{
"token": "550e8400-...",
"tipo_resultado": "n2_diagnostico" | "doc_generado" | "doc_revisado" | "n1_orientacion",
"resultado": { ... },
"dispatched_at": "2026-04-30T18:42:31.000Z"
}
HMAC(webhook_secret, body) y comparar con X-Lex-Signature. Si no coinciden, descartar.
const crypto = require("crypto");
function verificarFirma(body, signature, secret) {
const expected = "sha256=" + crypto
.createHmac("sha256", secret)
.update(body)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(signature), Buffer.from(expected)
);
}
Cuando se genera un documento, se deposita en el buzón seguro del afiliado con campos variables sin completar. Si prefieres integración directa, el documento viaja al webhook de tu servidor:
{
"tipo_resultado": "doc_generado",
"resultado": {
"nombre_documento": "Acción de tutela en salud",
"contenido_html": "<p>Yo, <span data-merge='NOMBRE_AFILIADO'>[NOMBRE_AFILIADO]</span>...",
"merge_fields_requeridos": [
"NOMBRE_AFILIADO", "CEDULA", "DIRECCION", "TELEFONO", "FECHA"
]
}
}
El afiliado rescata el documento de su buzón con clave y PIN, y completa sus propios datos. Si usas webhook, tu sistema puede completar los placeholders antes de entregarlo. Lex Intellecta sigue sin conocer esos datos.
| Tier | Precio mensual | Requests/mes | Productos |
|---|---|---|---|
| Sandbox | Gratis | 100 | Solo N1 |
| Starter | $500.000 COP | 1.000 | Los 4 productos |
| Pro | $2.000.000 COP | 10.000 | 4 productos + webhook + soporte |
| Enterprise | Negociado | Ilimitado | White label · SLA 99.9% · DPA |
saas@lexintellecta.com
Documentación API v1 · Última actualización 30-Abr-2026
Soporte técnico: saas@lexintellecta.com