Saltearse al contenido

Google Drive File Manager

Google Drive File Manager es un componente de Nappai que te permite subir, copiar, obtener, actualizar, eliminar, mover y compartir archivos en tu cuenta de Google Drive directamente desde el dashboard. Con él puedes trabajar con archivos de forma sencilla, ya sea de forma individual o en lote, y también integrarlo como una herramienta que un agente de IA puede usar.

¿Cómo funciona?

El componente se conecta a la API de Google Drive mediante una credencial que el usuario debe haber configurado previamente en la sección de credenciales de Nappai. Cuando lo arrastras al flujo, seleccionas la operación que quieres realizar (por ejemplo, Upload o Get) y rellenas los campos que aparecen. Internamente, el componente construye la petición a la API de Google Drive y devuelve los resultados en los outputs Data y Tool. Si el usuario activa el modo de mapeo, el componente puede procesar varios registros a la vez, enviando una petición por cada registro.

Operaciones

Este componente ofrece varias operaciones que puedes seleccionar según lo que necesites hacer. Solo puedes usar una operación a la vez:

  • Upload: Sube un archivo nuevo a Google Drive.
  • Copy: Copia un archivo existente a otra ubicación.
  • Get: Obtiene información o el contenido de un archivo.
  • Update: Actualiza el nombre o el contenido de un archivo existente.
  • Delete: Elimina un archivo de Google Drive.
  • Move: Mueve un archivo a otra carpeta.
  • Share: Comparte un archivo con otro usuario.

Para usar el componente, primero selecciona la operación que necesitas en el campo Operation (Operación).

Entradas

Modo de Mapeo (Mapping Mode)

Este componente cuenta con un modo especial llamado “Mapping Mode” (Modo de Mapeo). Cuando activas este modo mediante el interruptor, se habilita una entrada adicional llamada Mapping Data y cada campo de entrada te ofrece tres formas diferentes de proporcionar datos:

  • Fixed (Fijo): Escribes el valor directamente en el campo.
  • Mapped (Mapeado): Conectas la salida de otro componente para usar su resultado como valor.
  • Javascript: Escribes código Javascript para calcular el valor dinámicamente.

Esta flexibilidad te permite crear flujos de trabajo más dinámicos y conectados.

Campos de Entrada

Los siguientes campos están disponibles para configurar este componente. Cada campo puede estar visible en diferentes operaciones:

  • File Content: Contenido que se usará para el archivo. Si el archivo es un mimeType de Drive, se debe usar la operación Copy o Move.

    • Visible en: Upload
  • Select file: Selecciona el archivo a usar.

    • Visible en: Copy, Get, Update, Delete, Move, Share
  • Select folder: Si no se selecciona, será la carpeta raíz.

    • Visible en: Upload, Copy, Get, Update, Move
  • Operation: Operación a realizar.

    • Visible en: Upload, Copy, Get, Update, Delete, Move, Share
  • Download Base64 Content: Incluye el contenido del archivo convertido a base64 cuando se usa el ID del archivo en Get.

    • Visible en: Get
  • Email: Correo del usuario con quien se compartirá el archivo.

    • Visible en: Share
  • File Id: Introduce el Id del archivo.

    • Visible en: Copy, Get, Update, Delete, Move, Share
  • File Type: Selecciona el tipo de archivo que se usará como filtro. Si se selecciona “any”, se devolverán todos los archivos. Si se selecciona un archivo o se proporciona un File Id, este campo se ignorará.

    • Visible en: Get
  • Filename: Nombre que se usará para el archivo; si no se proporciona, se usará el nombre del componente binario. En la operación Get, este campo se usará como filtro.

    • Visible en: Upload, Get
  • Folder Id: Introduce el Id de la carpeta.

    • Visible en: Upload, Copy, Get, Update, Move
  • Mapping Mode: Habilita el modo de mapeo para procesar múltiples registros en lote.

    • Visible en: Upload, Copy, Get, Update, Delete, Move, Share
  • Mode of Input: Modo a usar.

    • Visible en: Upload, Copy, Get, Update, Delete, Move, Share
    • Si se selecciona All Files in Drive, se usarán hasta 100 archivos.
    • Si se selecciona By Id, los inputs serán Id.
    • Si se selecciona By Filename, los inputs serán Filename.
    • Si se selecciona By Selection, los inputs serán una selección.
    • Si se selecciona By Url, los inputs serán Url.
  • New Name: Nuevo nombre para actualizar el archivo existente.

    • Visible en: Update
  • Process File Content: Incluye el contenido del archivo procesado en texto cuando se usa el ID del archivo en Get.

    • Visible en: Get
  • Role: Rol que se asignará al usuario.

    • Visible en: Upload, Share
  • Selection Mode: Modo a usar para seleccionar los archivos.

    • Visible en: Get
    • Si se selecciona Folder, se devolverán todos los archivos en la carpeta.
    • Si se selecciona File, se seleccionará el archivo de la lista.
  • Send Notification: Envía una notificación al usuario.

    • Visible en: Upload, Share
  • Type: Tipo de permiso que se asignará al usuario.

    • Visible en: Upload, Share
  • Tool Name: Nombre de la herramienta que se usará cuando el componente esté conectado como una herramienta.

    • Visible en: Upload, Copy, Get, Update, Delete, Move, Share
  • Tool Description: Descripción detallada de lo que hace esta herramienta.

    • Visible en: Upload, Copy, Get, Update, Delete, Move, Share
  • Tools arguments metadata: Define los metadatos de los argumentos de las herramientas.

    • Visible en: Upload, Copy, Get, Update, Delete, Move, Share

Credencial
Este componente requiere una credencial de tipo Google Drive.

  1. Configura primero la credencial en la sección de credenciales de Nappai.
  2. Luego selecciona esa credencial en el campo Credential del componente.
    La credencial necesita el Client Id, Client Secret y el acceso a Google Drive, que puedes encontrar en la Google Cloud Console.

Salidas

  • Data: Resultado de la operación (por ejemplo, el ID del archivo subido o la lista de archivos obtenidos).
  • Tool: Objeto que permite que un agente de IA use esta operación como una herramienta.

Ejemplo de Uso

Subir un archivo (Upload)

  1. Arrastra el componente al flujo y activa Mapping Mode si quieres subir varios archivos a la vez.
  2. Selecciona Upload en el campo Operation.
  3. Rellena File Content con el contenido del archivo (puedes usar un componente binario para leer el archivo).
  4. Opcionalmente, rellena Filename y Select folder para especificar el nombre y la carpeta de destino.
  5. Si quieres que el usuario reciba una notificación, activa Send Notification y elige el Role y el Type de permiso.
  6. Ejecuta el flujo. El output Data contendrá el ID del archivo subido y Tool permitirá que un agente lo use en pasos posteriores.

Obtener un archivo (Get)

  1. Selecciona Get en el campo Operation.
  2. Proporciona el File Id del archivo que quieres obtener.
  3. Si quieres el contenido en base64, activa Download Base64 Content.
  4. Si quieres el contenido procesado en texto, activa Process File Content.
  5. Ejecuta el flujo. El output Data mostrará la información del archivo y, si se solicitó, su contenido.

Componentes Relacionados

  • GoogleDriveLoaderComponent: Base del componente que maneja la lógica de carga y descarga de archivos en Google Drive.

Consejos y Mejores Prácticas

  • Usa el modo de mapeo cuando necesites procesar listas de archivos; evita enviar peticiones una por una.
  • Limita el número de archivos en operaciones de tipo All Files in Drive a 100 para no exceder los límites de la API.
  • Guarda los IDs de los archivos subidos en una base de datos para reutilizarlos en operaciones posteriores.
  • Configura roles y tipos de permiso con cuidado para no compartir archivos con usuarios no autorizados.
  • Activa la notificación solo cuando sea necesario para evitar spam a los usuarios.

Consideraciones de Seguridad

  • La credencial de Google Drive contiene datos sensibles (Client Id y Client Secret). Asegúrate de que solo usuarios autorizados tengan acceso a la sección de credenciales.
  • Cuando compartas archivos, revisa el Email y el Role para garantizar que el acceso sea el correcto.
  • Evita exponer el File Id de archivos confidenciales en logs o en outputs visibles públicamente.
  • Utiliza el modo de mapeo con precaución para no sobrecargar la API de Google Drive y evitar bloqueos por límites de cuota.