Saltearse al contenido

Google Drive & Calendar

Este modulo integra dos servicios de Google en un unico nodo configurable:

  • Google Drive: Listar archivos y carpetas, subir archivos con tipo MIME configurable y carpeta destino, descargar archivos por ID.
  • Google Calendar: Listar calendarios, listar eventos con filtros de fecha, obtener detalle de un evento, crear eventos con asistentes y zona horaria, actualizar eventos existentes y eliminar eventos.

La operacion se determina automaticamente segun el sub-nodo utilizado (List Drive Files, Upload to Drive, List Calendar Events, etc.) o mediante el parametro operation. Utiliza OAuth2 con refresh automatico del token a traves del servicio googleOAuthService. Cada operacion se registra para auditoria.

El modulo soporta continueOnError para que el flujo continue aun cuando ocurra un error.

ParametroTipoRequeridoDescripcion
credentials_idcredentialsSiCuenta Google OAuth configurada en el sistema
operationselectSiOperacion a realizar: listDriveFiles, uploadToDrive, downloadFromDrive, listCalendars, listCalendarEvents, getCalendarEvent, createCalendarEvent, updateCalendarEvent, deleteCalendarEvent

List Drive Files:

ParametroTipoRequeridoDescripcion
pageSizenumberNoNumero de archivos a obtener (1-100, default: 10)
driveQuerytextNoFiltro de busqueda, ej: ‘name contains “reporte“‘
outputKeytextNoClave de salida para la lista (default: files)

Upload to Drive:

ParametroTipoRequeridoDescripcion
fileNametextSiNombre del archivo a subir
mimeTypetextNoTipo MIME (default: application/octet-stream)
parentFolderIdtextNoID de la carpeta destino en Drive
fileContentKeytextNoClave en los datos de entrada con el contenido (default: fileContent)

Download from Drive:

ParametroTipoRequeridoDescripcion
fileIdtextSiID del archivo en Google Drive
fileIdKeytextNoClave en data con el ID del archivo (default: fileId)
outputKeytextNoClave de salida (default: fileContent)

List Calendar Events:

ParametroTipoRequeridoDescripcion
calendarIdgoogle_calendarNoID del calendario (default: primary)
maxResultsnumberNoMaximo de eventos (1-250, default: 10)
timeMincalendar_datetimeNoFecha/hora minima en formato ISO
timeMaxcalendar_datetimeNoFecha/hora maxima en formato ISO

Create Calendar Event:

ParametroTipoRequeridoDescripcion
calendarIdgoogle_calendarNoCalendario destino (default: primary)
summarytextSiTitulo del evento
descriptiontextareaNoDescripcion del evento
startDateTimecalendar_datetimeSiFecha/hora de inicio (ISO)
endDateTimecalendar_datetimeSiFecha/hora de fin (ISO)
timeZoneselectNoZona horaria (default: America/Mexico_City)
attendeestextNoEmails de asistentes separados por coma

Update Calendar Event:

ParametroTipoRequeridoDescripcion
eventIdtextNoID del evento (o variable dinamica)
eventIdKeytextNoClave en data con el ID (default: id)
summarytextNoNuevo titulo
descriptiontextareaNoNueva descripcion
startDateTimecalendar_datetimeNoNueva fecha inicio
endDateTimecalendar_datetimeNoNueva fecha fin

Delete Calendar Event / Get Calendar Event:

ParametroTipoRequeridoDescripcion
eventIdtextNoID del evento
eventIdKeytextNoClave en data con el ID (default: id)

Requiere credenciales de tipo Google OAuth2. Se configuran en el sistema con:

  • Client ID y Client Secret de Google Cloud Console
  • Scopes para Drive y/o Calendar
  • El modulo gestiona el refresh del token automaticamente mediante googleOAuthService.getAuthenticatedClient()
{
"nextModule": "siguiente_modulo",
"data": {
"files": [
{
"id": "abc123",
"name": "documento.pdf",
"mimeType": "application/pdf",
"size": 1024,
"createdTime": "2026-01-01T00:00:00Z",
"modifiedTime": "2026-01-02T00:00:00Z"
}
]
},
"_meta_": {
"operation": "listDriveFiles",
"recordsProcessed": 1,
"googleService": "drive",
"nodeName": "List Drive Files"
}
}
{
"credentials_id": "mi-cuenta-google",
"operation": "listDriveFiles",
"pageSize": "20"
}
{
"credentials_id": "mi-cuenta-google",
"operation": "createCalendarEvent",
"summary": "Reunion de equipo",
"startDateTime": "2026-03-25T10:00:00",
"endDateTime": "2026-03-25T11:00:00",
"timeZone": "Europe/Madrid"
}
  • Google Drive API v3 (googleapis)
  • Google Calendar API v3 (googleapis)
  • Los valores se pueden pasar desde config o desde los datos de entrada (data)
  • El campo eventId se busca en multiples ubicaciones: config.eventId > data[eventIdKey] > data.id > data.eventId
  • Los recordatorios al crear evento incluyen por defecto: email 24h antes y popup 10 min antes
  • Soporta variables dinamicas en los campos de texto (ej: {{id}}, {{summary}})
  • Se registra auditoria OAuth por cada operacion ejecutada
  • List Drive Files (sub-nodo)
  • Upload to Drive (sub-nodo)
  • Download from Drive (sub-nodo)
  • List Calendars (sub-nodo)
  • List Calendar Events (sub-nodo)
  • Get Calendar Event (sub-nodo)
  • Create Calendar Event (sub-nodo)
  • Update Calendar Event (sub-nodo)
  • Delete Calendar Event (sub-nodo)