POST
/meetings//cancel
Cancela una reunión y ejecuta todos los efectos de cancelación. Funciona sobre cualquier reunión de tu cliente.
Al cancelar, Nexor:
- Cancela los recordatorios pendientes del lead y del host.
- Notifica al host y envía al lead un email de cancelación.
- Elimina el evento del calendario externo y libera el cupo de disponibilidad.
- Registra una actividad
meeting_cancelled en la línea de tiempo.
- Emite un webhook saliente
meeting.cancelled (ver Eventos de reunión) y, cuando está configurado, dispara el agente de re-contacto.
Las reuniones propiedad de un proveedor externo que Nexor no controla (por ejemplo, un invitee de Calendly entrante) no se cancelan — la respuesta incluye "skipped": true.
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|
id | string (uuid) | El ID de la reunión — de la respuesta de POST /meetings o de GET /leads/{id}/meetings. |
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|
reason | string | No | Se guarda como cancellation_reason; se incluye en las notificaciones al lead/host. |
Idempotencia
Cancelar una reunión que ya está cancelled es una operación segura sin efecto ("idempotent": true).
Respuestas
200 — Cancelada
{
"success": true,
"meeting": {
"id": "event-uuid",
"lead_id": "lead-uuid",
"status": "cancelled",
"cancelled_at": "2026-06-25T20:59:26Z",
"cancellation_reason": "el cliente pidió cancelar"
}
}
200 — Omitida (reunión de proveedor externo)
{
"success": true,
"skipped": true,
"reason": "managed_externally_inbound_only",
"message": "Meeting is owned by an external provider and cannot be cancelled via the API"
}
401 — Error de autenticación — ver Autenticación
403 — La API key no tiene el scope meetings:write (solo keys MCP; las keys REST son full-access)
404 — Reunión no encontrada o no pertenece a tu cuenta
500 — Error interno del servidor
Última modificación el 25 de junio de 2026