Webhooks
Los webhooks permiten que Mind One notifique a sistemas externos en tiempo real cuando ocurren eventos en la plataforma. En lugar de consultar la API periódicamente, tu sistema recibe una llamada HTTP en el momento en que sucede algo relevante.
Cómo funcionan
- Configuras un endpoint en tu sistema que acepte peticiones
POST. - Registras el webhook en Mind One indicando la URL y los eventos a escuchar.
- Cuando ocurre el evento, Mind One envía un
POSTcon el payload en formato JSON a tu endpoint. - Tu endpoint responde con un código
2xxpara confirmar la recepción.
Configuración
Los webhooks se gestionan desde Configuración Cuenta → Webhooks. Solo el rol Admin puede crear, editar y eliminar webhooks.
Para crear un webhook:
- Haz clic en + Crear webhook.
- Introduce un nombre descriptivo (ej: Notificaciones de sincronización).
- Introduce la URL destino donde Mind One enviará las peticiones.
- Selecciona uno o varios eventos que activarán el webhook.
- Haz clic en Crear webhook.
Eventos disponibles
| Evento | Descripción |
|---|---|
datagrid.row.created | Se ha creado una nueva fila en un datagrid |
datagrid.row.updated | Se ha actualizado una fila existente en un datagrid |
datagrid.row.deleted | Se ha eliminado una fila de un datagrid |
datagrid.created | Se ha creado un nuevo datagrid |
datagrid.updated | Se ha modificado la configuración o metadata de un datagrid |
datagrid.deleted | Se ha eliminado un datagrid |
datagrid.approved | Un datagrid ha sido aprobado |
Formato del payload
Todos los eventos siguen la misma estructura:
{
"event": "datagrid.row.updated",
"timestamp": "2026-05-25T10:30:00Z",
"tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"data": { ... }
}| Campo | Tipo | Descripción |
|---|---|---|
event | string | Nombre del evento |
timestamp | string | Fecha y hora del evento en formato ISO 8601 (UTC) |
tenantId | string | Identificador del tenant que originó el evento |
data | object | Payload específico del evento |
Seguridad
Cada webhook incluye una cabecera X-MindOne-Signature con una firma HMAC-SHA256 del cuerpo de la petición usando el secreto configurado en el webhook.
X-MindOne-Signature: sha256=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxVerificación en Node.js:
const crypto = require('crypto');
function verifySignature(payload, signature, secret) {
const expected = 'sha256=' + crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(Buffer.from(signature), Buffer.from(expected));
}Reintentos
Si tu endpoint no responde con un 2xx en el tiempo límite (10 segundos), Mind One reintenta la entrega con backoff exponencial:
| Intento | Espera |
|---|---|
| 1 | Inmediato |
| 2 | 1 minuto |
| 3 | 5 minutos |
| 4 | 30 minutos |
Tras 3 reintentos fallidos, el evento se marca como no entregado.
Relacionado
- Documentación API — API REST pública para consultar y modificar datos de forma programática.
- Conexiones — Sincronización automática con data warehouses vía Autosync.