Conecta GestoLab con tus programas y con Claude
Todo lo que pasa en tus expedientes puede llegar a tus otras herramientas (Google Calendar, Gmail, hojas de cálculo, tu CRM…) y tus herramientas pueden consultar y dar de alta en GestoLab. Hay cuatro piezas: la API, los webhooks (avisos automáticos), las plataformas de automatización (Zapier, Make, n8n) y el conector de Claude. Están incluidas en el plan Empresa.
1. La API
Crea una clave en Mi cuenta → API → Crear clave (solo la ve el titular, una vez) y mándala en cada petición en la cabecera Authorization: Bearer gl_…. La dirección base es https://www.gestolab.com/api/v1 (con «www»). Hasta 120 peticiones por minuto por clave. Las respuestas son JSON; las listas van de 50 en 50 con page.
curl https://www.gestolab.com/api/v1/citas \ -H "Authorization: Bearer TU_API_KEY"
| Método | Ruta | Qué hace |
|---|---|---|
| GET | /clientes?q= | Buscar clientes (nombre, apellidos, email, pasaporte, NIE) |
| POST | /clientes | Dar de alta un cliente |
| GET · PATCH · DELETE | /clientes/{id} | Ficha de un cliente con sus expedientes; cambiarla; borrarla |
| GET | /expedientes?status=&clientId= | Expedientes, con su estado |
| POST | /expedientes | Abrir un expediente |
| GET · PATCH · DELETE | /expedientes/{id} | Todo de un expediente (estado, documentos, notificaciones, próxima cita, estado oficial, cobros); cambiar estado, notas, caducidad o precio |
| GET · POST | /expedientes/{id}/documentos | Sus documentos (con enlace de descarga); subir uno y leerlo con IA |
| GET | /expedientes/{id}/notificaciones | Presentación, requerimientos, concesión o denegación y citas, con su plazo |
| GET | /expedientes/{id}/cobros | Sus cobros y lo pendiente |
| GET | /cobros?desde=&hasta=&tipo= | Todos los cobros, con la suma de honorarios y suplidos |
| GET | /citas?desde=&hasta=&tipo= | Citas de huellas y de recogida de la TIE (por defecto, de hoy en adelante) |
| GET | /caducidades?dias=30 | Lo que caduca en los próximos días |
| POST | /importar | Importar un caso de otra plataforma (cliente + expediente) |
| GET · POST · DELETE | /webhooks | Los avisos hacia fuera (también desde el panel) |
La especificación completa (OpenAPI 3.1, para Postman o para generar un cliente): /api/v1/openapi.json. Las fechas van como AAAA-MM-DD y los días son los de Madrid. Nunca sale el cliente de muestra de la guía de bienvenida.
2. Los webhooks: avisos de cada cambio
GestoLab avisa a la dirección que le digas en cuanto pasa algo, venga de donde venga el cambio: lo que hace tu equipo en el panel, lo que sube el cliente a su portal o por WhatsApp, lo que llega de la DEHú, lo que hace la extensión en la sede o lo que haces por la API. Se dan de alta en Mi cuenta → API → Webhooks (pegas la dirección, marcas los eventos y pulsas «Enviar prueba») o con POST /webhooks.
| Evento | Cuándo |
|---|---|
| cliente.creado | Se da de alta un cliente: en el panel, por la API, desde un documento o desde la web. |
| expediente.creado | Se abre un expediente. |
| expediente.estado_cambiado | Cambia el estado de un expediente (Presentado, Requerimiento, Resuelto…), lo cambie quien lo cambie. |
| expediente.concedido | Se apunta la resolución favorable de un expediente (la concesión). |
| expediente.denegado | Se apunta una resolución denegatoria. |
| notificacion.registrada | Se apunta cualquier notificación del expediente: presentación, requerimiento, resolución, cita… |
| huellas.cita | Se apunta o se cambia una cita de huellas o de recogida de la TIE. |
| cobro.registrado | Se apunta un cobro en un expediente (honorarios o suplidos). |
| documento.subido | Entra un documento en un expediente: el equipo, el cliente desde su portal o WhatsApp, la API… |
| caducidad.proxima | Un expediente caduca dentro de 90, 60, 30, 15, 7 o 1 días, o hoy (un aviso por cada uno). |
| expediente.actualizado | Se cambia un expediente por la API, o la extensión lo marca como presentado. |
| * | Todos: un solo destino que los recibe todos (útil en Make o n8n). |
Cada aviso es un POST en JSON con id (único: con los reintentos puede llegar dos veces), event, data y timestamp, firmado con HMAC-SHA256. Respondiendo con un 2xx se da por entregado; si no, se vuelve a intentar (3 intentos en total, en unos 30 segundos). Solo a direcciones https públicas. Las caducidades avisan 90, 60, 30, 15, 7, 1 días antes y el mismo día, una vez cada una.
POST https://tu-destino.example/…
X-GestoLab-Event: huellas.cita
X-GestoLab-Delivery: 9b1c…
X-GestoLab-Signature: sha256=5f2a…
{
"id": "9b1c…",
"event": "huellas.cita",
"timestamp": "2026-10-22T09:15:00.000Z",
"data": {
"tipo": "cita_huellas", "cambiada": false,
"dia": "2026-11-04", "hora": "10:30",
"oficina": "Comisaría de …", "direccion": "C/ …", "justificante": "…",
"expediente": { "id": "…", "numeroDespacho": "2026/014", "tipo": "Arraigo sociolaboral",
"estado": "RESUELTO", "cliente": { "nombre": "…", "telefono": "…" },
"url": "https://www.gestolab.com/dashboard/clients/…" }
}
}Para comprobar que el aviso es de GestoLab (Node.js y Python):
import crypto from "crypto";
// El «secret» te lo da GestoLab al crear el webhook (panel o API).
function firmaValida(cuerpoCrudo, cabecera, secret) {
const esperada = Buffer.from("sha256=" + crypto.createHmac("sha256", secret).update(cuerpoCrudo).digest("hex"));
const dada = Buffer.from(cabecera || "");
return dada.length === esperada.length && crypto.timingSafeEqual(dada, esperada);
}
// cabecera = req.headers["x-gestolab-signature"]; cuerpoCrudo = el cuerpo tal cual llegóimport hmac, hashlib
def firma_valida(cuerpo_crudo: bytes, cabecera: str, secret: str) -> bool:
esperada = "sha256=" + hmac.new(secret.encode(), cuerpo_crudo, hashlib.sha256).hexdigest()
return hmac.compare_digest(esperada, cabecera or "")3. Zapier, Make y n8n
GestoLab todavía no aparece en el buscador de aplicaciones de Zapier, pero se conecta igual con su módulo «Webhooks by Zapier» (de los planes de pago de Zapier). Por ejemplo, para que cada cita de huellas aparezca en tu Google Calendar:
- En Zapier, crea un Zap. Disparador: Webhooks by Zapier → Catch Hook. Copia la dirección que te da.
- En GestoLab, Mi cuenta → API → Webhooks: pégala, marca
huellas.citay guarda. - Pulsa «Enviar prueba» y, en Zapier, Test trigger: verás llegar el ejemplo.
- Acción: Google Calendar → Create Detailed Event, con
data.diaydata.horacomo inicio ydata.expediente.cliente.nombreen el título.
Igual con Gmail (un correo al equipo con cada concesión, expediente.concedido), con Google Sheets (una fila por cobro, cobro.registrado) o con tu CRM. Para escribir en GestoLab desde un Zap, usa Webhooks by Zapier → Custom Request contra la API, con la cabecera Authorization. Make (módulo «Webhooks») y n8n (nodo «Webhook» y «HTTP Request») funcionan igual.
4. El conector de Claude (MCP)
Con el conector, le preguntas a Claude por tus expedientes en lenguaje normal —«¿qué caducidades tengo este mes?», «¿cómo va el expediente de Fulano?», «¿qué citas de huellas hay la semana que viene?», «apúntame a este cliente»— y Claude consulta GestoLab. Dirección del servidor: https://www.gestolab.com/api/mcp.
En claude.ai, Claude Desktop o el móvil:
- Configuración → Conectores → Añadir conector personalizado.
- Nombre: GestoLab. URL:
https://www.gestolab.com/api/mcp. Añadir. - Pulsa Conectar: se abre GestoLab; entra con la cuenta del titular y pulsa Autorizar.
En Claude Code:
claude mcp add --transport http gestolab https://www.gestolab.com/api/mcp # y, dentro de Claude Code, /mcp para autorizar en GestoLab. # O con una clave de Mi cuenta → API, sin pasar por la autorización: claude mcp add --transport http gestolab https://www.gestolab.com/api/mcp \ --header "Authorization: Bearer TU_API_KEY"
Al autorizar se crea una clave «Claude (conector)» que puedes revocar cuando quieras en Mi cuenta → API. Claude no puede borrar nada. Lo que puede hacer:
- Buscar clientes — Busca clientes de la gestoría por nombre, apellidos, email, pasaporte o NIE. Sin texto, los más recientes. De 50 en 50 (page).
- Ver un cliente — La ficha de un cliente con sus expedientes.
- Listar expedientes — Los expedientes de la gestoría, los más recientes primero, con su estado. Filtros: estado (p. ej. PRESENTADO, REQUERIMIENTO, RESUELTO) y clientId.
- Ver un expediente — Todo de un expediente: estado, cliente, documentos, últimas notificaciones, próxima cita de huellas, último estado oficial consultado, cobros e historial reciente.
- Documentos de un expediente — Los documentos subidos a un expediente, con su tipo y si están revisados.
- Notificaciones de un expediente — Lo que ha dicho la Administración de un expediente: presentación, requerimientos, la resolución (concesión o denegación) y las citas, con su plazo y si está atendida.
- Cobros de un expediente — Los cobros de un expediente y cómo va: precio acordado, honorarios cobrados, suplidos (tasas) y lo pendiente.
- Listar cobros — Los cobros de la gestoría, con la suma de honorarios y de suplidos. Filtros: desde y hasta (AAAA-MM-DD), tipo (honorarios o suplidos) y clientId.
- Próximas caducidades — Los expedientes que caducan en los próximos N días (por defecto 30), con los días que les quedan.
- Citas de huellas y de recogida — Las citas de huellas y de recogida de la TIE apuntadas: día, hora, oficina, dirección y justificante, con su cliente. Por defecto, de hoy en adelante.
- Dar de alta un cliente (cambia datos: Claude te lo confirma antes) — Da de alta un cliente en la gestoría. Confirma antes los datos con el usuario.
- Abrir un expediente (cambia datos: Claude te lo confirma antes) — Abre un expediente para un cliente (type: el trámite, p. ej. «Arraigo sociolaboral»). Confirma antes los datos con el usuario.
- Cambiar un expediente (cambia datos: Claude te lo confirma antes) — Cambia el estado, las notas, la caducidad o el precio acordado de un expediente. Confirma antes el cambio con el usuario.
Protección de datos
Tu gestoría es la responsable de los datos de sus clientes. Lo que mandes con la API, los webhooks, Zapier o el conector a otro programa sale de GestoLab hacia ese programa, por decisión tuya y con las condiciones de ese proveedor: con el conector, a tu cuenta de Claude (Anthropic). Las claves y los webhooks se crean y se revocan en Mi cuenta → API, y todo viaja cifrado (HTTPS). Más en Seguridad y protección de datos.