---
name: ghl-calendars
description: Use when creating or configuring a GHL calendar — setting name, description, meeting location, availability, notifications, or linking external calendars. Does not cover AI agent routing; for that, see ghl-agents.
---

# GHL — Configuración de Calendarios

Fuente oficial: https://help.gohighlevel.com/support/solutions/folders/155000000688

## Tipos de calendario

| Tipo               | Uso                                                   |
| ------------------ | ----------------------------------------------------- |
| **Simple / Event** | Un calendario para un servicio o persona específica   |
| **Round Robin**    | Distribuye citas entre múltiples usuarios del equipo  |
| **Class Booking**  | Múltiples contactos reservan el mismo slot (grupos)   |
| **Collective**     | Requiere disponibilidad simultánea de varios usuarios |
| **Service**        | Vinculado a servicios con precios configurados        |

Fuente: https://help.gohighlevel.com/support/solutions/folders/155000000686

## Campos de configuración básica

| Campo                 | Detalle                                                                                                                                |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| **Nombre**            | Identifica el calendario en la plataforma y en el widget de reserva                                                                    |
| **Descripción**       | Describe el propósito del calendario — también la usa el agente IA para identificar a qué calendario enrutar la intención del contacto |
| **URL personalizada** | Slug del link de reserva pública                                                                                                       |
| **Color del evento**  | Diferenciación visual en la vista de agenda                                                                                            |

## Ubicación de la cita (Meeting Location)

| Tipo                    | Configuración                                                                                |
| ----------------------- | -------------------------------------------------------------------------------------------- |
| Presencial              | Dirección física — usar `{{location.address}}, {{location.city}}` en lugar de dirección fija |
| Virtual (link estático) | Pegar URL fija de Zoom, Meet, Teams, etc.                                                    |
| Teléfono                | Texto libre o variable                                                                       |

**Limitación:** los calendarios de tipo Event/Simple no soportan integraciones dinámicas de Zoom o Google Meet — solo links estáticos.

## Disponibilidad

| Campo                         | Descripción                                                          |
| ----------------------------- | -------------------------------------------------------------------- |
| **Office Hours**              | Días y franjas horarias en que se pueden reservar citas              |
| **Slot Duration**             | Duración de cada cita                                                |
| **Slot Interval**             | Frecuencia con que aparecen los slots disponibles                    |
| **Buffer Time**               | Tiempo bloqueado antes o después de cada cita                        |
| **Minimum Scheduling Notice** | Anticipación mínima para reservar — evita reservas de último momento |
| **Date Range**                | Cuántos días hacia adelante se puede agendar                         |
| **Appointments per Slot**     | Citas simultáneas permitidas por slot                                |
| **Appointments per Day**      | Máximo de citas diarias                                              |

**Nota:** estas configuraciones son por calendario individual. Para disponibilidad centralizada entre múltiples calendarios usar **Schedules** (Settings → Calendars → Schedules).

Fuente: https://help.gohighlevel.com/support/solutions/folders/155000000705

## Notificaciones de citas

Acceso: **Calendario → Edit → pestaña Notifications**

**6 tipos de notificación:**

| Tipo                 | Cuándo se dispara                        |
| -------------------- | ---------------------------------------- |
| Booked (Unconfirmed) | Al reservar con estado sin confirmar     |
| Booked (Confirmed)   | Al confirmar la cita                     |
| Cancellation         | Al cancelar, marcar no-show, o invalidar |
| Reschedule           | Al cambiar fecha u hora                  |
| Reminder             | Antes de la cita (tiempo configurable)   |
| Follow-up            | Después de la cita (tiempo configurable) |

**Canales disponibles:** Email, SMS, WhatsApp, In-App

**Receptores por notificación:** Contact, Guest, User (asesor asignado), Additional emails/phones

Las notificaciones del calendario son independientes de los workflows de recordatorio — ambos pueden coexistir.

Fuente: https://help.gohighlevel.com/support/solutions/articles/155000003441

## Calendarios vinculados y de conflicto

**Calendarios vinculados:** importan eventos de Google, Outlook, iCloud, Calendly para mostrar disponibilidad real en HighLevel.

**Calendarios de conflicto:** bloquean automáticamente slots en GHL cuando hay compromisos en calendarios externos.

Configuración: **Settings → Calendars → pestaña Connections → + Add New**

**Importante:** los calendarios de conflicto solo bloquean slots si los eventos externos están marcados como "OCUPADO" en el calendario externo.

## Multi-calendario con el agente IA

El calendario expone su **nombre** y **descripción** al agente IA para ayudar en el enrutamiento de intención. Las palabras clave adicionales de enrutamiento se configuran en el agente (Bot Goals → Appointment Booking → AI Description por calendario), no aquí.

## Limitaciones conocidas

| Limitación                          | Detalle                                                                                       |
| ----------------------------------- | --------------------------------------------------------------------------------------------- |
| Links dinámicos                     | Event calendars no soportan Zoom/Meet dinámico — solo links estáticos                         |
| Un tipo de ubicación por calendario | No se puede mezclar presencial y virtual en el mismo calendario — crear calendarios separados |
| Publicar ≠ Guardar                  | Los cambios requieren publicación explícita                                                   |

## Auto-actualización

Si durante la sesión se descubre algo nuevo sobre calendarios en GHL:

- **Tipo de calendario nuevo** → agregar a la tabla de tipos con su caso de uso
- **Campo de disponibilidad nuevo** → agregar a la tabla de disponibilidad
- **Tipo de notificación nuevo** → agregar a la tabla de notificaciones
- **Limitación nueva** → agregar a "Limitaciones conocidas" con detalle
- **Algo deprecado** → marcar `[DEPRECADO - YYYY-MM]`, no borrar
- **Fuente:** incluir siempre el link a `help.gohighlevel.com/support/...`
- **Sin doc oficial:** marcar `[Observación empírica, sin doc oficial]`
