Automatizar Google Sheets con n8n

Automatizar Google Sheets con n8n

Simplifica o deshazte de un montón de gestiones y controles aprendiendo a automatizar Google Sheets con n8n.

Conectar Google Sheets y n8n

Anteriormente ya te expliqué cómo instalar n8n para usarlo de forma gratuita e ilimitada, y hoy vamos a ver cómo conectar Google Sheets para utilizarlo en nuestras automatizaciones. Puesto que es una de las integraciones nativas de n8n, automatizar Google Sheets con n8n es muy fácil de hacer:

  1. Antes de nada, vas a necesitar generar un ID de Cliente y el Secreto de Cliente en tu consola de Google Cloud, si no lo has hecho antes. Accede a la consola y crea un nuevo proyecto con el nombre que quieras (por ejemplo, «Aguacatec»).
  2. Utiliza el buscador de la parte superior para encontrar «Google Sheets API». Haz clic en ella y luego pulsa en «Habilitar».
  3. Desde la barra lateral izquierda, accede a APIs y Servicios > Pantalla de Consentimiento de OAuth y pulsa en «Comenzar». Tendrás que crear una nueva aplicación, con el nombre que quieras (por ejemplo, «n8n») y tu correo de contacto.
  4. Tras crear la aplicación te encontrarás en el apartado de «Descripción general de OAuth». Pulsa en «Crear cliente de OAuth», e indica lo siguiente:
    • Tipo de aplicación. Selecciona «Aplicación web».
    • Nombre. Indica el que tú quieras (por ejemplo, «n8n»).
    • URIs de redireccionamiento autorizados. Aquí tienes que indicar la URL externa que te proporciona n8n (no puede ser tu ‘localhost’). Deja esta ventana abierta y sigue leyendo para obtenerla.
  1. En la interfaz de n8n, pulsa en «Create Workflow» para crear un nuevo flujo de trabajo y pulsa en el icono «+» del panel central. En el buscador de ‘triggers’ busca «Google Sheets», haz clic en el icono y pulsa sobre cualquiera de ellos (por ejemplo, «On row added»).
  2. Al hacerlo se abrirá la interfaz de configuración del ‘trigger’, que vamos a usar para crear nuestras credenciales. Para ello sitúate en el desplegable bajo el título «Credential to connect with» y pulsa en «+ Create new credential».
  3. De nuevo se abrirá otra ventana para que introduzcas tus credenciales de Google. El primer campo que verás es tu «OAuth Redirect URL», que ya viene cumplimentada. Cópiala, vuelve a la consola de Google (paso 4), haz clic en URIs de redireccionamiento autorizados > + Agregar URI y pégala.
  4. Haz clic en «Crear» para que se genere tu cliente OAuth. Verás que se abre una nueva ventana que te indica tu «ID de cliente» y tu «Secreto del cliente» («Client ID» y «Client Secret», respectivamente). Cópialos y pégalos en la ventana de n8n, y haz clic en el botón «Sign in with Google» para terminar de conectar tu cuenta (verás un mensaje verde de confirmación en la parte superior).

Acciones de Google Sheets

La integración de Google Sheets es una de las más útiles que probado hasta ahora. Te permite utilizar hojas de cálculo (con sus propias fórmulas, controles, formatos…) como una base de datos accesible desde n8n. Esto tiene muchas aplicaciones en la vida diaria, ya que puedes tanto consultarla (para añadir información enriquecida en tus automatizaciones), como editarla (para automatizar las gestiones o controles de la hoja).

Por ejemplo, imagínate que tienes una hoja con un listado de productos con distintas columnas (ID, título, descripción, precio…), y quieres consultar desde n8n el precio de un producto concreto (para devolverlo, por ejemplo, en un asistente de atención al cliente).

Esto, en definitiva, es buscar y leer un registro de tu hoja y lo puedes hacer de la siguiente forma:

  1. Crea un nuevo flujo, pulsa en el icono «+» del tablero y selecciona «Trigger manually», para poder arrancar manualmente nuestro flujo.
  2. Pulsa en el icono «+» que aparece a su derecha, busca «Google Sheets» y selecciona la opción Actions > Sheet within document actions > Get row(s) in a sheet. Esta acción sirve para leer datos de tu hoja de cálculo.
  3. Se abrirá una ventana en la que tienes que configurar la acción:
    • Credential to connect with. Asegúrate de que has seleccionado las credenciales asociadas a tu hoja de cálculo, creadas en el primer apartado.
    • Document. Selecciona el archivo que contiene la información, haciendo clic en el desplegable.
    • Sheet. Selecciona la hoja correspondiente, haciendo clic en el desplegable.
    • Pulsa sobre el botón «Add Filter» bajo el apartado «Filters». Si haces clic en el desplegable bajo «Column» aparecerán todas las columnas contenidas en tu hoja. Selecciona aquella que contiene el dato que quieres utilizar como criterio de búsqueda (por ejemplo, la del «ID» del producto). En el campo «Value», arrastra el valor a buscar, que normalmente procederá de un nodo anterior (por ejemplo, un mensaje recibido).
    • Ahora pulsa en el botón superior de «Test step» de la parte superior y observa en la parte derecha de la ventana («Output») como te devuelve toda la información relativa a la fila correspondiente. Todos estos datos están ahora disponibles para ser usados en los nodos posteriores.

Si lo piensas, esta es una acción muy poderosa en tus automatizaciones. No obstante, hay otras acciones que puedes utilizar (actualizar celdas, crear hojas o pestañas, eliminar columnas…). Puedes obtener más información de las acciones consultando la documentación oficial o descargando los ejemplos de nuestra plantilla.

Triggers de Google Sheets

Si lo que quieres es automatizar Google Sheets con n8n para tener controlado cuando se producen cambios en tu hoja de cálculo, también puedes hacerlo. Para ello haz lo siguiente:

  1. Crea un nuevo flujo, pulsa en el icono «+» del tablero, busca Google Sheets y selecciona la opción Triggers > On row added or updated. Este ‘trigger’ sirve para lanzar tu automatización cuando se añade una fila nueva, o se actualiza una existente.
  2. En la ventana emergente, asegúrate de seleccionar las credenciales de Google Sheets en el desplegable «Credential to connect with». Después elige el documento y hoja correspondiente en el desplegable Document y Sheet.
  3. En el desplegable «Include in Outpup» puedes seleccionar si quieres que te devuelva la versión previa o posterior a los cambios, o ambas. También puedes añadir el campo «Columns to watch» en el apartado «Options», para que sólo se desencadene cuando se modifica una columna concreta.
  4. Pulsa en el botón «Fetch Test Event» para comprobar que funciona correctamente. Al instante comprobarás, en la parte derecha de la pantalla, que ha cargado la información correspondiente a tu hoja.
  5. A partir de aquí puedes utilizar este desencadenante, por ejemplo, para recibir una notificación por Telegram que te avise.

Puedes obtener más información de las acciones consultando la documentación oficial o descargando los ejemplos de nuestra plantilla.