Módulo 3: Google Calendar

Troubleshooting de Google Calendar

Descripción de la cápsula

Ya sabes crear, leer, actualizar y eliminar eventos, y ya sabes ponerlos a la hora correcta. Esta cápsula cubre el resto de lo que se rompe cuando un workflow de Calendar pasa de "funciona en mi prueba" a "funciona con casos reales".

Igual que en los Módulos 1 y 2, este es el manual de diagnóstico. La cápsula 06 ya cubrió el problema más grande (zonas horarias) — aquí están los otros cuatro que verás en producción: permisos (sobre todo en calendarios compartidos), invitaciones que no llegan, fechas que la API rechaza, y el caso particular de los calendarios de otras personas.

No hay operación nueva. Hay reconocimiento de síntomas y soluciones — para que cuando algo falle, sepas en segundos si es tu lógica o es la realidad de Calendar.


Lo que vas a aprender

Al terminar esta cápsula serás capaz de:

  • Diagnosticar errores de permisos en calendarios propios y compartidos
  • Resolver el problema de las invitaciones que no llegan a los invitados
  • Manejar los formatos de fecha que la API acepta y rechaza
  • Trabajar con calendarios de otras personas y sus límites
  • Leer los mensajes de error de Calendar y clasificarlos rápido
  • Reconocer cuándo el problema es tu workflow y cuándo es Calendar

Problema 1: Permisos (sobre todo en calendarios compartidos)

El síntoma

  • insufficient permissions / 403
  • Puedes leer eventos de un calendario pero no crear ni modificar
  • El workflow funcionaba con tu calendario y falla con uno compartido

Por qué pasa

A diferencia de Sheets o Gmail (donde la cuenta es "tuya y ya"), Calendar tiene niveles de acceso por calendario:

Nivel de accesoPuede...
Ver solo libre/ocupadoCasi nada — ni ver detalles
Ver todos los detallesLeer eventos
Hacer cambios en eventosLeer y crear/editar/eliminar
Hacer cambios y gestionarTodo, incluido administrar el calendario

Si tu workflow intenta crear un evento en un calendario donde solo tienes "ver detalles", falla — aunque la credencial OAuth esté perfecta. La credencial te identifica; el nivel de acceso al calendario decide qué puedes hacer.

Las soluciones

1. Verifica tu nivel de acceso al calendario. Ábrelo en Google Calendar → configuración del calendario → revisa qué permiso tienes. Para que un workflow cree o modifique eventos, necesitas al menos "Hacer cambios en eventos".

2. Pide el nivel correcto al dueño. Si es un calendario compartido, el dueño tiene que subirte de "ver" a "hacer cambios".

3. Usa un calendario que controles. La forma más limpia: el workflow escribe en un calendario del que la cuenta de la credencial es dueña (idealmente el calendario dedicado a automatizaciones de la cápsula 02). Sin dependencias de permisos ajenos.


Problema 2: Las invitaciones no llegan

El síntoma

Creas un evento con Attendees. El evento aparece en tu calendario. Pero los invitados dicen que no recibieron nada — ni el correo de invitación, ni la entrada en su calendario.

Por qué pasa

  • El evento se creó sin notificar. Algunos flujos crean el evento pero no disparan el envío de invitaciones a los invitados. La invitación es un paso aparte de "crear el evento".
  • El invitado tiene su calendario configurado para no aceptar invitaciones automáticas de desconocidos.
  • La invitación cayó en spam del invitado (es un correo, y aplica todo lo del Módulo 2 cápsula 07).
  • El correo del invitado está mal escrito — un typo en el Attendees y la invitación va a una dirección que no existe.

Las soluciones

1. Revisa la opción de notificaciones del nodo. Algunos nodos de Calendar tienen una opción tipo "Send Updates" / "Send Notifications". Si existe y quieres que los invitados sean avisados, actívala.

2. Verifica los correos de los Attendees. Un typo es la causa más boba y más común. Si el dato viene de un formulario, valida el formato del correo antes (o al menos revísalo en el output).

3. No dependas solo de la invitación de Calendar. La forma más confiable de que el invitado sepa de la cita: que tu workflow le mande también un correo explícito (Módulo 2) con los detalles. La invitación de Calendar es buena para que aparezca en su agenda; el correo es para que se entere.

Patrón recomendado: crear el evento + mandar un correo de confirmación con los detalles. No confíes en que la invitación automática es suficiente — combínala con un correo del workflow. El mini-proyecto (cápsula 08) usa este patrón.


Problema 3: Fechas que la API rechaza

El síntoma

  • Invalid value o errores que mencionan start / end / dateTime
  • El evento no se crea, o se crea con una fecha absurda
  • Funciona con fechas "a mano" pero falla con fechas que vienen de datos

Por qué pasa

La API de Calendar es estricta con el formato de fecha. Espera fechas bien formadas (ISO 8601 con o sin zona, según el caso). Los datos del mundo real llegan en otros formatos:

  • 20/05/2026 (formato local, ambiguo)
  • May 20, 2026 (texto)
  • 1747742400 (timestamp Unix)
  • Una fecha que es en realidad undefined porque el campo no llegó

Las soluciones

1. Convierte siempre a ISO 8601 antes de pasar la fecha al nodo. Si la fecha viene en otro formato, transfórmala en un Set previo. n8n tiene métodos para parsear fechas; el objetivo es llegar al nodo Calendar con 2026-05-20T10:00:00.

2. Valida que la fecha existe antes de crear. Si el start puede venir vacío, un IF que verifique antes de llegar al Create. Crear un evento con fecha undefined solo da un error feo.

3. Recuerda la regla de la cápsula 03: End calculado a partir del Start. Un End inválido rompe el evento igual que un Start inválido.

Esto enlaza directo con el Módulo 1 (cápsula 07, números/fechas como texto) y con G4 (Data Handling), que profundiza en el parseo de fechas. El principio es el mismo en todos: no pases datos crudos a un servicio estricto — normalízalos primero.


Problema 4: Calendarios de otras personas

El síntoma

Quieres que el workflow lea o cree eventos en el calendario de otra persona (tu jefe, un compañero, una sala de reuniones) y algo no cuadra.

Por qué pasa y qué considerar

  • Necesitas que te compartan ese calendario con el nivel de acceso adecuado (ver Problema 1). No puedes acceder a un calendario que no se te compartió.
  • El calendario aparece en el selector del nodo solo si está compartido con la cuenta de la credencial. Si no lo ves, no está compartido (o no con suficiente nivel).
  • Crear eventos en el calendario de otro es delicado: cada evento aparece en su agenda. Es como invitar gente automáticamente (cápsula 03) pero más invasivo. Hazlo solo con permiso explícito y datos confiables.

La recomendación

Para automatizaciones, la arquitectura más limpia es: el workflow trabaja sobre un calendario que la cuenta de la credencial posee, e invita a las otras personas (Attendees) en vez de escribir directamente en sus calendarios. Así cada quien decide si acepta, y tú no dependes de permisos sobre calendarios ajenos.


Cómo leer un error de Calendar

El error menciona...Es un problema de...Ve a...
permission, 403, insufficient, forbiddenNivel de acceso al calendarioProblema 1
invalid value, start, end, dateTime, parseFormato de fechaProblema 3
not found, 404, calendar not foundEl calendario o el Event ID no existe / no accesibleProblemas 1 y 4
invalid_grant, token, 401Credencial caducada(igual que Módulos 1-2: reconectar)
quota, rate limit, 429Demasiadas llamadasEspaciar las operaciones
(evento creado pero invitado no avisado)InvitacionesProblema 2
(evento a hora equivocada)Zona horariaCápsula 06

Los dos casos más engañosos no dan error: el evento a hora equivocada (cápsula 06) y el invitado que no fue avisado (Problema 2). En ambos, el workflow dice "éxito" porque el evento sí se creó — el problema está en un detalle que la API no considera un fallo. Cuando "se creó bien pero algo está mal", piensa en zona horaria o invitaciones.


Trampas comunes

Trampa 1: Asumir que "puedo verlo" = "puedo editarlo"

Qué pasa: Lees eventos de un calendario compartido sin problema, asumes que puedes crear, y el Create falla con 403.

Cómo evitar: Leer y escribir son niveles de acceso distintos. Para crear/modificar necesitas "Hacer cambios en eventos" como mínimo.


Trampa 2: Confiar en que la invitación automática basta

Qué pasa: Creas el evento con Attendees y das por hecho que el invitado se enteró. No le llegó, o lo ignoró.

Cómo evitar: Combina la invitación de Calendar con un correo explícito del workflow (Módulo 2).


Trampa 3: Pasar fechas crudas al nodo

Qué pasa: El start viene como 20/05/2026 de un formulario y la API lo rechaza o lo malinterpreta.

Cómo evitar: Normaliza a ISO 8601 en un Set previo. Nunca pases formatos locales ambiguos a la API.


Trampa 4: "Éxito" en n8n = todo bien

Qué pasa: La ejecución está en verde, pero el evento quedó a hora equivocada o el invitado no se enteró.

Cómo evitar: "Éxito" significa "el evento se creó". Verifica los detalles que la API no valida: la hora real y la notificación al invitado.


Trampa 5: Depender de permisos sobre calendarios ajenos

Qué pasa: Tu workflow escribe en el calendario de un compañero. El compañero cambia los permisos o se va de la empresa, y el workflow se rompe.

Cómo evitar: El workflow trabaja sobre un calendario propio de la cuenta de la credencial, e invita a los demás. Sin dependencias frágiles.


Ejercicio: diagnostica cinco situaciones

Objetivo: practicar la clasificación rápida de problemas de Calendar.

Tu tarea

Para cada situación, di (1) qué problema es y (2) el primer paso para resolverlo:

  1. El workflow lee eventos de un calendario compartido pero falla al crear, con error 403.
  2. La ejecución dice "éxito", el evento está en tu calendario, pero el cliente dice que no recibió ninguna invitación.
  3. El Create falla con Invalid value mencionando start — la fecha viene de un formulario como 15/06/2026.
  4. El evento se creó pero aparece 6 horas desplazado para el cliente.
  5. No ves el calendario de tu compañero en el selector del nodo Calendar.
Ver respuestas
  1. Permisos / nivel de acceso (Problema 1). Primer paso: verificar tu nivel de acceso al calendario; pedir "Hacer cambios en eventos" o usar un calendario propio.
  2. Invitaciones (Problema 2). Primer paso: revisar la opción "Send Updates/Notifications" del nodo y verificar que el correo del invitado esté bien escrito; sumar un correo explícito del workflow.
  3. Formato de fecha (Problema 3). Primer paso: convertir 15/06/2026 a ISO 8601 (2026-06-15T...) en un Set previo.
  4. Zona horaria (cápsula 06). Primer paso: configurar el campo Timezone del nodo explícitamente con la zona correcta.
  5. Calendario no compartido (Problema 4). Primer paso: pedir al compañero que comparta su calendario con la cuenta de la credencial, con el nivel de acceso adecuado.

Resumen y siguiente paso

  • Calendar tiene niveles de acceso por calendario — la credencial te identifica, pero el nivel decide si puedes crear/editar o solo leer
  • Invitaciones: crear el evento no garantiza que el invitado se entere — revisa la opción de notificaciones, valida los correos, y suma un correo explícito del workflow
  • Fechas: la API es estricta — normaliza a ISO 8601 antes de pasar fechas al nodo; valida que existan
  • Calendarios ajenos: prefiere trabajar sobre un calendario propio e invitar a los demás, en vez de depender de permisos sobre calendarios de terceros
  • Los casos más engañosos no dan error: hora equivocada (zona) e invitado no avisado — "éxito" solo significa "se creó"
  • 5 trampas: confundir ver con editar, confiar solo en la invitación, fechas crudas, "éxito" = todo bien, depender de permisos ajenos

Antes de avanzar deberías poder:

  • Distinguir un error de permisos de uno de formato de fecha
  • Explicar por qué hay que sumar un correo a la invitación de Calendar
  • Clasificar un error de Calendar en segundos

Lo que sigue (cápsula 08):

Tienes todas las piezas: crear, leer, actualizar, eliminar, zonas horarias, recordatorios y troubleshooting. El mini-proyecto las junta en un workflow que crea eventos a partir de datos — y aplica el patrón recomendado de "evento + correo de confirmación" integrando Calendar con Sheets y Gmail de los módulos anteriores.


Recursos adicionales

  1. Google Calendar: compartir y permisos - Los niveles de acceso a calendarios.
  2. n8n Google Calendar node Docs - Opciones de notificación y campos del nodo.
  3. ISO 8601 - El formato de fecha que la API acepta sin problemas.

Creado: Mayo 14, 2026 Versión: 1.0