Ir al contenido

Autenticación y alcances

Cada pedido lleva un token en el encabezado Authorization. El token es de una persona del equipo y nunca puede más que ella; los alcances lo recortan todavía más, módulo por módulo.

El token

Se manda en cada pedido, en el encabezado Authorization, con el esquema Bearer. No hay cookies ni sesión: un pedido sin el encabezado responde 401.

El encabezado de todos los pedidos
curl "https://panel.kaptativa.app/api/v1" \
  -H "Authorization: Bearer TU_TOKEN"
  • Empieza con kpt_ y sigue con 43 caracteres. Se crea en Administración > API y MCP y se muestra una sola vez.
  • Vence cuando lo elegiste al crearlo: en 30 días, en 90 días, en un año, no vence.
  • Se revoca desde la misma pantalla y deja de valer en el pedido siguiente.
  • Cada cuenta puede tener hasta 20 tokens sin revocar (los vencidos cuentan hasta que se revocan). Usá uno por sistema: así podés revocar uno sin cortar a los demás.
  • El mismo token sirve para la API y para el servidor MCP.
Solo desde tu servidor

No pongas el token en una página web ni en una app que corre en el dispositivo de otra persona: quien lo lea puede operar la cuenta. Las llamadas a la API se hacen desde tu servidor.

De quién es el token

Un token es de la persona que lo creó y actúa con sus permisos, leídos en cada pedido. No hay permisos propios del token: lo que esa persona no puede hacer en el panel, el token tampoco.

  • Si a la persona le sacan un permiso, el token lo pierde en el pedido siguiente.
  • Si la persona deja la cuenta o la deshabilitan, el token responde 401.
  • Lo que el token cambia queda en la Actividad de la cuenta a nombre del token y de su persona.
  • El panel guarda 90 días del registro de pedidos de cada token, con la operación, el resultado y cuánto tardó.

Para una integración que tiene que durar, conviene crear el token con un usuario de servicio que tenga solo el perfil que hace falta, y no con el de una persona que puede cambiar de puesto.

Alcances

Los alcances dicen qué módulos puede tocar el token y hasta dónde. Cada uno se escribe modulo:nivel:

Niveles de alcance
AlcanceQué permite
modulo:lecturaLas operaciones de consulta de ese módulo: listar, buscar y ver.
modulo:escrituraTodas las operaciones de ese módulo. Incluye la lectura: no hace falta pedir las dos.
*:lecturaLas consultas de todos los módulos.
*:escrituraTodo lo que la persona puede hacer, en todos los módulos.

El módulo es el primer tramo del nombre de la operación: gestion.cliente.crear es del módulo gestion y, como cambia algo, pide gestion:escritura. Hoy la API tiene operaciones de estos módulos:

Módulos con operaciones en la API
MóduloPara leerPara cambiarOperaciones
Gestióngestion:lecturagestion:escritura15 en la referencia
Administraciónadministracion:lecturaadministracion:escritura6 en la referencia
Configuraciónconfiguracion:lecturaconfiguracion:escritura8 en la referencia
Inmobiliariainmobiliaria:lecturainmobiliaria:escritura15 en la referencia
Bandejabandeja:lecturabandeja:escritura3 en la referencia
Tiendatienda:lecturatienda:escritura16 en la referencia
Alquileresalquileres:lecturaalquileres:escritura7 en la referencia
Turnosturnos:lecturaturnos:escritura10 en la referencia

La referencia dice qué alcance pide cada operación. En el panel se eligen al crear el token, en Qué puede hacer: Solo ver es *:lectura, Ver y hacer cambios es *:lectura más *:escritura, y Elegir por módulo deja marcar cada módulo como Sin acceso, Ver o Ver y hacer cambios. GET /v1 devuelve los alcances del token con el que se llama.

Los alcances recortan, no dan

Un pedido pasa tres controles, en este orden. Con que falle uno, no se ejecuta:

  1. El alcance del token. Si no llega a ese módulo o a ese nivel, responde 403 con el código alcance, y el mensaje dice qué alcance falta. Lo que el token no alcanza tampoco aparece en GET /v1/herramientas.
  2. El módulo de la cuenta. Si la cuenta no tiene activo el submódulo de la operación, responde 403 con no_activo.
  3. El permiso de la persona. Si su perfil no puede hacerlo, responde 403 con sin_permiso.

Por eso *:escritura en el token de alguien que solo puede ver propiedades sigue sin poder cambiar un precio.

Los tokens de antes

Los tokens creados antes de que existieran los alcances por módulo siguen funcionando igual: uno de Solo ver equivale a *:lectura y uno de Ver y hacer cambios a *:lectura más *:escritura.

Lo que no se ofrece por la API

  • Las operaciones que leen datos clasificados como sensibles no están en la API ni en el MCP, tenga el token el alcance que tenga.
  • Invitar o habilitar usuarios, pedir un cambio de plan y ver las conexiones con otros servicios se hacen solo desde el panel.
  • Una cuenta de demostración no responde por la API.

Cuando el token no pasa

Respuestas de autenticación
HTTPCódigoQué revisar
401tokenFalta el encabezado, el token está mal copiado, venció, se revocó o su persona ya no está en la cuenta. La respuesta trae WWW-Authenticate: Bearer.
403no_activoLa cuenta no está activa o no tiene activa la API.
403alcanceEl token no tiene el alcance que pide esa operación.
403sin_permisoLa persona dueña del token no tiene ese permiso.
429limiteDemasiados pedidos por minuto. Mirá Límites de uso.