Skip to main content

Configuración básica

Puedes instalar la integración de Google Calendar directamente desde nuestro Marketplace. Una vez instalada, puedes acceder a Google Calendar y gestionar eventos automáticamente.

Funcionalidades

Listar calendarios

Listar todos los calendarios disponibles para el usuario autenticado. Inputs:
  • pageToken (opcional, string) — Token de paginación para obtener la siguiente página de resultados.
  • includeHidden (opcional, boolean) — Incluir calendarios ocultos (Cumpleaños, Tareas, etc.).
Ejemplo:
{
  "pageToken": "Cg4IARAA",
  "includeHidden": false
}

Listar eventos del calendario

Obtener eventos ordenados por hora de inicio dentro de un rango (fecha o fecha/hora). Soporta paginación y búsqueda por texto. Inputs:
  • calendarId (string) — ID del calendario (usa "primary" para el principal del usuario).
  • startsAt (string) — Inicio del rango (ISO 8601: fecha YYYY-MM-DD o fecha/hora YYYY-MM-DDTHH:mm:ss[Z|±HH:mm]).
  • endsAt (string) — Fin del rango (ISO 8601: fecha o fecha/hora).
  • pageToken (opcional, string) — Token de paginación.
  • searchQuery (opcional, string) — Texto a buscar en título, descripción, ubicación y otros campos del evento.
Ejemplo:
{
  "calendarId": "primary",
  "startsAt": "2025-01-16T14:00:00-03:00",
  "endsAt": "2025-01-16T18:00:00-03:00",
  "pageToken": "EAo",
  "searchQuery": "onboarding"
}

Crear evento

Crear un evento nuevo con soporte para asistentes y datos de conferencia (Google Meet, etc.). Inputs:
  • calendarId (string) — ID del calendario (usa "primary" para el principal del usuario).
  • summary (string) — Título del evento.
  • description (string) — Descripción del evento.
  • start (string) — Inicio del evento en formato ISO 8601. Puede ser fecha (YYYY-MM-DD) o fecha/hora (YYYY-MM-DDTHH:mm:ss[Z|±HH:mm]). Para eventos de todo el día, usa solo fecha.
  • end (string) — Fin del evento en formato ISO 8601. Debe ser posterior a start. Para eventos de todo el día, la fecha de fin es exclusiva.
  • attendees (opcional, array de objeto) — Lista de asistentes:
    • email (string)
    • displayName (opcional, string)
    • optional (opcional, boolean)
    • responseStatus (opcional, enum: needsAction | declined | tentative | accepted)
    • comment (opcional, string)
    • additionalGuests (opcional, number)
  • anyoneCanAddSelf (opcional, boolean) — Permitir que cualquiera se agregue al evento.
  • colorId (opcional, string) — Color del evento (1–11).
  • conferenceData (opcional o null, objeto) — Datos de conferencia:
    • createRequest (objeto):
      • requestId (string) — ID único de la solicitud (idempotencia).
      • conferenceSolutionKey (objeto):
        • type (enum: hangoutsMeet | eventHangout | eventNamedHangout | addOn)
Ejemplo:
{
  "calendarId": "primary",
  "summary": "Onboarding Brain Studio",
  "description": "Sesión de implementación con ACME.",
  "start": "2025-01-16T14:00:00-03:00",
  "end": "2025-01-16T15:00:00-03:00",
  "attendees": [
    { "email": "cliente@example.com", "displayName": "Cliente ACME" },
    { "email": "success@example.com", "optional": true }
  ],
  "anyoneCanAddSelf": false,
  "colorId": "2",
  "conferenceData": {
    "createRequest": {
      "requestId": "brain-studio-onboarding",
      "conferenceSolutionKey": { "type": "hangoutsMeet" }
    }
  }
}

Obtener evento

Obtener los detalles de un evento específico. Inputs:
  • calendarId (string) — ID del calendario.
  • eventId (string) — ID del evento.
Ejemplo:
{
  "calendarId": "primary",
  "eventId": "6a1b2c3d4e5f"
}

Editar evento

Editar campos de un evento existente. Envía solo los campos que deseas actualizar. Inputs:
  • calendarId (string) — ID del calendario.
  • eventId (string) — ID del evento.
  • summary (opcional, string) — Título.
  • description (opcional, string) — Descripción.
  • start (opcional, string) — Inicio en ISO 8601 (fecha o fecha/hora).
  • end (opcional, string) — Fin en ISO 8601 (fecha o fecha/hora).
  • attendees (opcional, array de objeto) — Lista de asistentes (mismos campos que en “Crear evento”).
  • anyoneCanAddSelf (opcional, boolean)
  • colorId (opcional, string)
  • conferenceData (opcional o null, objeto) — Para agregar/actualizar conferencia (usar null para eliminar).
Ejemplo:
{
  "calendarId": "primary",
  "eventId": "6a1b2c3d4e5f",
  "summary": "Onboarding Brain Studio (actualizado)",
  "description": "Sesión actualizada.",
  "start": "2025-01-16T14:30:00-03:00",
  "end": "2025-01-16T15:30:00-03:00",
  "attendees": [
    { "email": "cliente@example.com" },
    { "email": "success@example.com", "optional": true }
  ],
  "anyoneCanAddSelf": true,
  "colorId": "7",
  "conferenceData": {
    "createRequest": {
      "requestId": "brain-studio-onboarding-2",
      "conferenceSolutionKey": { "type": "hangoutsMeet" }
    }
  }
}

Eliminar evento

Eliminar un evento. Inputs:
  • calendarId (string) — ID del calendario.
  • eventId (string) — ID del evento.
Ejemplo:
{
  "calendarId": "primary",
  "eventId": "6a1b2c3d4e5f"
}