Guía Práctica: Automatizar Reddit con n8n y Gemini AI
- Marcial Atiénzar
- 4 oct
- 18 Min. de lectura
n8n: De 0 a 10 en menos de 1 hora
Antes de empezar, al final del post tendrás el flujo que vamos a ver para importarlo directamente en n8n, por si la impaciencia te puede.

¿Qué es n8n y por qué debería importarme?
Imagina por un momento todas las tareas repetitivas que haces cada día. Copiar datos de un email a una hoja de cálculo, publicar el mismo contenido en varias redes sociales, notificar a tu equipo por Slack cuando un cliente rellena un formulario... Son tareas pequeñas, sí, pero juntas consumen horas y energía mental.
¿Y si pudieras construir un "robot" personal que hiciera todo eso por ti, sin que tuvieras que escribir ni una sola línea de código?
Pues bien, deja de imaginar. Eso es n8n.
En pocas palabras, n8n (pronunciado "n-eight-n") es una herramienta de automatización de flujos de trabajo. Piensa en ella como un tablero de LEGO digital. Cada una de tus aplicaciones favoritas (Gmail, Google Sheets, Slack, WordPress, Twitter, Airtable, etc.) es una pieza de LEGO. n8n te da el poder de conectar estas piezas entre sí para que trabajen juntas de forma automática.
Los conceptos clave son sencillos:
Nodos (Nodes): Son las piezas de LEGO. Cada nodo representa una aplicación o una acción (ej: "Leer email", "Escribir en una fila de Sheets", "Enviar un mensaje a Slack").
Flujos de Trabajo (Workflows): Es la construcción final que haces con tus piezas. Un flujo es una secuencia de nodos conectados que ejecutan una tarea de principio a fin.
Disparadores (Triggers): Es el pistoletazo de salida. Es el nodo que inicia el flujo de trabajo, como "Cuando recibo un nuevo email" o "Cada lunes a las 9:00 AM".
A diferencia de otras herramientas similares como Zapier o Make, n8n tiene unas características que lo hacen especialmente interesante para nuestra comunidad:
Es Open Source y "Fair-Code": Tienes total transparencia sobre cómo funciona.
Puedes auto-alojarlo (Self-Hosted): Esto es un punto clave. Significa que puedes instalar n8n en tu propio servidor. ¿La ventaja? Tienes control total sobre tus datos (¡hola, privacidad!), no dependes de los límites de un plan de pago y a la larga puede ser mucho más económico. También ofrecen una versión en la nube si prefieres no complicarte.
Potencia sin límites: Es fácil empezar, pero increíblemente potente si quieres hacer cosas complejas. Permite añadir lógica, procesar datos y hasta ejecutar código si lo necesitas.
Vale, suena bien, pero... ¿Para qué lo podemos usar en la vida real?
Aquí es donde la magia ocurre. n8n no es solo para grandes empresas; es una herramienta para creadores, marketers, desarrolladores y, en general, para cualquiera que quiera ser más productivo.
Aquí tienes algunos ejemplos prácticos para que tu cabeza empiece a hacer "clic":
Para Marketing y Creación de Contenido:
Publicación cruzada: Crea un post en tu WordPress y haz que n8n lo publique automáticamente en Twitter, LinkedIn y Facebook.
Captura de Leads: Cuando alguien rellene un formulario de contacto en tu web, n8n puede añadirlo a tu lista de Mailchimp, crear una fila en un Google Sheets y enviarte una notificación por Telegram.
Generación de informes: Conecta Google Analytics y crea un flujo que cada lunes te envíe un resumen con las métricas clave a tu email o a un canal de Slack.
Para Productividad Personal y de Equipo:
Gestión de tareas inteligente: ¿Te llega un email importante? Reenvíalo a una dirección específica y haz que n8n cree una tarea en tu Trello, Asana o Notion con el contenido del correo.
Sincronización de bases de datos: Mantén sincronizada una base de datos en Airtable con los datos de un Google Sheets sin tener que copiar y pegar nunca más.
Un bot de Slack/Discord personalizado: Crea un bot que te dé la bienvenida a nuevos miembros, les envíe recursos útiles o responda a preguntas frecuentes.
Para E-commerce:
Notificaciones de pedidos: Cuando entre un nuevo pedido en WooCommerce o Shopify, envía una notificación a un canal de Slack para el equipo de logística y añade los datos del cliente a tu CRM.
Facturación automática: Genera una factura en PDF cuando un pago se confirma en Stripe y envíala automáticamente al cliente por email.
El límite, de verdad, lo pone tu imaginación. Se trata de identificar un proceso manual y repetitivo en tu día a día y pensar: "¿Podría un flujo de n8n hacer esto por mí?". La respuesta, casi siempre, es que sí.
El Objetivo - Construyendo nuestro agregador de Inteligencia Estratégica con IA
Antes de sumergirnos en los nodos y las conexiones, es crucial definir nuestra misión. ¿Qué problema queremos resolver?
Vivimos en la era de la "infoxicación". La cantidad de información sobre Inteligencia Artificial, automatización y nuevas tecnologías que se genera cada día es abrumadora. Intentar estar al día leyendo docenas de blogs, foros y redes sociales es una tarea titánica que consume horas y, aun así, siempre nos queda la sensación de que nos estamos perdiendo algo importante.
Nuestro objetivo es simple pero ambicioso: crear un sistema automatizado que actúe como nuestro analista de inteligencia personal.
Este sistema no solo recopilará información, sino que la procesará, la analizará con IA para extraer las tendencias clave y nos la presentará en un formato ejecutivo, listo para ser consumido en 5 minutos.
Para esta Prueba de Concepto (PoC), nos enfocaremos en una de las mayores fuentes de debate y descubrimiento en tecnología: Reddit.
El flujo de trabajo de un vistazo: De ruido a señal
El flujo que vamos a construir (y que puedes ver en la imagen) sigue un proceso lógico de cuatro fases para convertir el caos de la información en inteligencia accionable:
Fase 1: Recolección inteligente
Nuestro workflow monitorizará una lista curada de subreddits clave sobre IA y tecnología (como r/n8n, r/MachineLearning, r/OpenAI, etc.).
Automáticamente, buscará los posts más relevantes de la última semana.
Fase 2: Filtrado y priorización
No todo lo que brilla es oro. El sistema limpiará los datos, eliminará duplicados y descartará el "ruido" (posts con poca interacción).
Clasificará los posts más importantes en dos categorías: los más votados (liderazgo de opinión) y los más comentados (tendencias de debate).
Fase 3: Síntesis con IA (Aquí ocurre la magia ✨)
Enviará esta lista curada de posts a la API de Google Gemini.
Le daremos instrucciones precisas para que actúe como un analista estratégico: traducirá los títulos y descripciones al español, generará un resumen ejecutivo identificando la tendencia principal y una síntesis general de los insights.
Fase 4: Entrega ejecutiva
Finalmente, el workflow tomará la respuesta estructurada de la IA y compondrá un informe profesional en formato email (HTML).
Este email, visualmente atractivo y fácil de escanear, nos llegará a nuestra bandeja de entrada, listo para darnos una ventaja estratégica.
En resumen, vamos a construir una máquina que lee cientos de posts por nosotros, entiende qué es lo importante y nos entrega un informe digerido y priorizado. Dejaremos de perseguir la información para que la información más relevante trabaje para nosotros.
Paso 1: Preparación del entorno
El objetivo es instalar n8n y la herramienta clave que nos permitirá saltarnos el coste de la API de X.
Instalando n8n
1: Instalar nodejs
Para ello vamos a la web de nodejs y nos bajamos la última versión:
Y seleccionamos la versión Windows Installe (.msi). Una vez instalado, si nos vamos a la consola, podremos ver si lo tenemos configurado ya y qué versión tenemos instalada:
C:\Users\marat> node
v22.20.02: Instalar n8n
Ya podemos instalar de forma global n8n en nuestro sistema. En la misma shell que tenemos abierta, ejecutamos:
C:\Users\marat> npm install -g n8nSi te sale este mensaje de error, tendrás que habilitar la ejecución de scripts en tu sistema:
npm : No se puede cargar el archivo C:\Program Files\nodejs\npm.ps1 porque la ejecución de scripts está deshabilitada en este sistema.Para ello, con el botón derecho sobre el menú inicio, selecciona Terminal (Administrador) y ejecutas esto:
C:\Users\marat> Set-ExecutionPolicy RemoteSignedVuelve a ejecutar el comando de npm install -g n8n y ya te debería dejar.
3: Generar las credenciales de API: Gemini y de Gmail
Deberemos generar las credenciales de API que nuestro flujo va a necesitar para poder hablar con los servicios de Google de forma segura. Aquí te explico cómo obtenerlas.
Credencial para Google Gemini (API Key)
Esta clave nos da acceso a la inteligencia artificial de Gemini.
Ve a Google AI Studio: Accede a aistudio.google.com e inicia sesión con tu cuenta de Google.
Busca la opción de API Key: En el menú, haz clic en "Get API key".
Crea la clave: Pulsa en "Create API key". Se generará una nueva clave en un proyecto (si no tienes uno, se creará automáticamente).
Copia y guarda: Copia la clave generada y guárdala en un lugar seguro. La necesitaremos en n8n más adelante.
Credenciales para Gmail (OAuth 2.0)
Para que n8n pueda enviar correos en nuestro nombre, necesitamos un método de autenticación más robusto llamado OAuth 2.0.
Ve a la Google Cloud Console: Entra en la consola de Google Cloud y selecciona o crea un nuevo proyecto.
Activa la API de Gmail: En el menú lateral, ve a APIs y servicios > Biblioteca. Busca "Gmail API" y actívala para tu proyecto.
Configura la Pantalla de Consentimiento: Antes de crear las claves, tienes que configurar la "OAuth consent screen" (pantalla de consentimiento). Aquí simplemente defines el nombre de la aplicación y tu email. Para un uso personal, puedes seleccionar "Uso externo" y añadir tu propio correo como "Test user".
Crea las credenciales:
Vuelve a APIs y servicios > Credenciales.
Haz clic en Crear credenciales > ID de cliente de OAuth.
Selecciona "Aplicación web" como tipo de aplicación.
En "URIs de redireccionamiento autorizadas", tienes que añadir la URL que te proporcionará n8n cuando configures el nodo de Gmail. Generalmente es algo como: http://localhost:5678/rest/oauth2-credentials/callback.
Haz clic en "Crear".
Copia el Client ID y el Client Secret: Al finalizar, se mostrarán tu ID de cliente y tu Secreto de cliente. Cópialos y guárdalos en un lugar seguro. Estos dos valores son los que usarás en n8n para conectar tu cuenta de Gmail.
4: Configurar n8n
Ejecutamos ahora el servidor de n8n con este comando y habilitamos el cortafuegos cuando nos salgo el aviso de windows
C:\Users\marat> n8n startUna vez finalizada la carga, pulsamos la tecla o y vamos a este enlace http://localhost:5678
Veremos esta pantalla:

Rellenamos el formulario y éste nos llevará a esta otra pantalla:

Después de completar la información anterior nos saldrá esta otra pantalla

Pulsamos sobre el botón de "Send me a free license key", nos llegará un mail a nuestro correo para activarla.

Paso 2: Configuración del workflow
En este paso, vamos a crear el esqueleto de tu flujo en n8n y a introducir todas las fuentes de Reddit.
En la pantalla del navegador de n8n, crearemos un nuevo workflow, pulsando en el botón de workflow:

Y ya estaremos dentro de la generación del flujo de trabajo:

Para una vez sigas los pasos llegues a tener esto:

Triggers
Empezamos con la primera pieza del puzzle, el disparador diario (On a schedule) a las 09:00 (aunque lo puedes poner por ejemplo cada semana, los domingos a las 09:00)

Y en esta pantalla definimos la frecuencia:

Veremos como ya tenemos el inicio del flujo:

También incluiremos un trigger para ejecutar el proceso manual:

Variables que vamos a usar en la creación de nuestro flujo
Antes de empezar a recolectar datos, vamos a establecer nuestro "panel de control". En cualquier proyecto de automatización, es muy tentador poner valores fijos directamente en cada nodo (por ejemplo, escribir una lista de subreddits en el nodo que los lee, o un email en el nodo que lo envía). Sin embargo, esto es una mala práctica que hace que el flujo sea difícil de mantener.
¿Qué pasa si mañana queremos añadir un nuevo subreddit o cambiar el límite de posts? Pues que tendríamos que ir cazando cada nodo y modificarlos uno por uno.
Para evitar esto, nuestro primer paso funcional es un simple nodo "Code" al que llamamos GlobalConfig.

¿Qué es y por qué es tan importante?
Este nodo no hace nada complejo. Su única misión es definir y contener todas las variables y ajustes importantes de nuestro flujo en un solo lugar. Actúa como el cerebro o el fichero de configuración de todo el proceso.
Si miramos dentro, veremos un objeto JSON (en formato JavaScript) que centraliza toda la configuración.
const GLOBAL_CONFIG = {
// Lista de subreddits a monitorear
subreddits: [
'artificial', 'n8n', 'MachineLearning', ...
],
// Configuración de filtros
topPostsLimit: 3,
minimumScore: 10,
minimumComments: 5,
// Configuración de Reddit API
redditTimeframe: 'week',
postsPerSubreddit: 20,
// Configuración de email
recipientEmail: 'tu-email@dominio.com',
// Mapeo para "embellecer" los nombres y añadir emojis
subredditNames: { 'n8n': 'r/n8n', ... },
subredditEmojis: { 'n8n': '⚡', ... }
};
return [{ json: GLOBAL_CONFIG }];
Es importante que al nodo que acabas de crear lo llames GlobalConfig pues luego lo usaremos en algunas expresiones para obtener el valor de ciertas constantes.
La recolección: Conectando con Reddit
Una vez configurado nuestro "cerebro" ("GlobalConfig"), es hora de poner a nuestro robot a trabajar. La primera tarea es obtener los datos en crudo. Para ello, usaremos el nodo "Obtenemos los feeds", que es un nodo de "Code" que nos da flexibilidad total para realizar esta tarea.
Las opciones de Reddit para acceder a sus datos
Reddit ofrece principalmente dos formas de acceder a su información:
La API oficial con autenticación (OAuth2): Este es el método más robusto y completo. Requiere registrar una aplicación en Reddit para obtener un Client ID y un Client Secret. Con estas credenciales, tu aplicación puede actuar en nombre de un usuario (o de sí misma) para realizar todo tipo de acciones: publicar contenido, comentar, votar, y por supuesto, leer datos con límites de peticiones (rate limits) más generosos. Es el camino a seguir si necesitas interactuar profundamente con la plataforma o requieres acceso a datos privados.
Los endpoints públicos .json: De una forma increíblemente sencilla, Reddit permite acceder a los datos públicos de casi cualquier página (un subreddit, un perfil de usuario, un hilo de comentarios) simplemente añadiendo .json al final de la URL. Por ejemplo, para ver los datos de r/n8n en formato JSON, solo tienes que visitar https://www.reddit.com/r/n8n.json. Este método es anónimo, no requiere autenticación y es perfecto para obtener datos de solo lectura que ya son públicos.
¿Por qué elegimos el endpoint .json?
Para nuestro objetivo, que es únicamente leer los posts más populares de subreddits públicos, el método .json es la opción ideal por varias razones:
Simplicidad extrema: No necesitamos gestionar el complejo flujo de autenticación OAuth2. Esto reduce la configuración inicial y la complejidad del workflow.
Suficiente para nuestro propósito: No vamos a publicar, ni a votar, ni a acceder a perfiles privados. Solo queremos leer datos públicos, y el endpoint .json nos da exactamente eso.
Menos puntos de fallo: Al no depender de tokens de acceso que pueden expirar, nuestro flujo es más robusto para esta tarea específica.
La única "pega" es que debemos ser respetuosos con el número de peticiones que hacemos para no ser bloqueados y, muy importante, debemos configurar un User-Agent personalizado en nuestras peticiones, una cabecera que identifica a nuestro bot. Reddit es muy estricto con esto para evitar el abuso de bots anónimos.
La fase de refinamiento: Filtrar, ordenar y clasificar
Ya hemos "pescado" los datos en crudo de Reddit. Ahora mismo, tenemos una larga lista de posts, pero está desordenada, puede contener duplicados y, lo más importante, incluye mucho "ruido" que no nos aporta valor.
Esta fase es crucial: vamos a procesar esa lista para quedarnos únicamente con las joyas. Para ello, encadenaremos una serie de nodos de n8n, cada uno con una misión muy específica.
Paso 1: Limpieza inicial (Eliminar duplicados y borramos morralla)

Lo primero es hacer una limpieza general:
Eliminar duplicados actuales: Aunque es poco probable al obtener los "top", este nodo nos asegura que si un post apareciera por alguna razón dos veces, solo conservemos uno. Es una buena práctica de higiene de datos.

Borramos morralla (Nodo Filter): Aquí aplicamos nuestro primer filtro de calidad, usando los valores que definimos en GlobalConfig. Descartamos cualquier post que no cumpla con un mínimo de votos (score) o un mínimo de comentarios. Esto elimina de un plumazo el contenido que no ha generado tracción en la comunidad.

Paso 2: Bifurcación y clasificación (Las dos ramas)
Ahora viene la parte interesante. No todos los posts importantes lo son por la misma razón. Unos son muy votados (señal de aprobación general) y otros son muy comentados (señal de debate intenso). Queremos identificar los mejores de cada categoría.

Para lograrlo, dividimos el flujo en dos ramas paralelas:
Rama A: Top por votos (Liderazgo)
Orden por votos: Ordena toda la lista de posts de mayor a menor número de votos (score).

Top más votados (Nodo Code): Recorre la lista ya ordenada y, para cada subreddit, asigna una bandera esTop10Liderazgo = true a los X primeros posts (el valor X lo sacamos de nuestro GlobalConfig). De esta forma, "etiquetamos" a los campeones de cada comunidad.
Rama B: Top por comentarios (Tendencias)
Orden por comentarios: De forma similar, esta rama ordena la misma lista de posts, pero esta vez por el número de comentarios.
Top más comentados (Nodo Code): Al igual que en la otra rama, este nodo etiqueta los X posts con más comentarios de cada subreddit, pero con la bandera esTop10Tendencias = true. Además, es lo bastante inteligente para no etiquetar un post que ya fue seleccionado en la rama de "más votados", evitando así redundancias en nuestro informe final.
Al final de este paso, cada post en nuestra lista tendrá dos nuevas propiedades: esTop10Liderazgo y esTop10Tendencias, que nos dicen si ha sido seleccionado como "top" en alguna de las dos categorías.
Paso 3: Consolidación y preparación final
Ya tenemos los posts etiquetados, ahora solo queda unificar y dar el formato final antes de pasárselo a la IA.
Filtro por los Top: Volvemos a unir las dos ramas y aplicamos un último filtro. Ahora nos quedamos únicamente con los posts que tengan esTop10Liderazgo = true O esTop10Tendencias = true. Toda la "morralla" que no entró en nuestros rankings queda definitivamente fuera.
Array a Objeto Json (Nodo Code): Este es el último paso de preparación. La API de Gemini funciona mejor si le enviamos una única petición con toda la información bien estructurada. Este nodo coge nuestra lista final de posts (que es un array de items) y la envuelve en un único objeto JSON. Además, aprovecha para hacer una última limpieza, como acortar descripciones muy largas.
¡Y listo! Después de pasar por esta "cadena de montaje", hemos transformado una lista de cientos de posts desordenados en un array limpio, priorizado y perfectamente estructurado de unos 20-30 posts que representan lo más relevante de la semana.
Ahora sí, esta información de alta calidad está lista para ser analizada por Gemini.
La magia de la IA — Diálogo con Gemini
Llegamos al núcleo de nuestro agregador de inteligencia. Ya hemos recolectado, filtrado y preparado una lista de élite con los posts más relevantes. Ahora, necesitamos convertir esa lista de datos en conocimiento accionable. Para ello, vamos a "contratar" a un analista experto: la IA de Google Gemini.
Este proceso se divide en tres pasos clave, representados por tres nodos consecutivos: la preparación del encargo (el prompt), la llamada a la IA y la interpretación de su respuesta.

Paso 1: El Payload: Cómo darle instrucciones a un genio (Payload para Gemini)
No podemos simplemente "lanzarle" los datos a Gemini. Necesitamos ser extremadamente precisos en lo que le pedimos. Este nodo de "Code" se encarga de construir un prompt detallado y estructurado.
Piénsalo como si le estuvieras escribiendo un email a un analista humano muy ocupado: tienes que ser claro, darle todo el contexto y decirle exactamente qué formato de respuesta esperas.
El código dentro de este nodo hace lo siguiente:
Define el rol: Le damos una personalidad y una misión. Empezamos el prompt con: Eres un traductor, analista estratégico y manipulador de JSON. Esto pone a la IA en el "modo" correcto.
Especifica la tarea: Le explicamos qué tiene que hacer con los datos, principalmente traducir los campos title y description al español y generar dos resúmenes estratégicos.
Impone un formato de salida estricto: Esta es la parte más importante. Le proporcionamos una plantilla JSON exacta de cómo queremos la respuesta. Le pedimos que nos devuelva un objeto con tres claves: resumen_ejecutivo, posts_traducidos (un array con los posts ya procesados) y resumen_general. Esto es fundamental para que podamos procesar su respuesta de forma automática y predecible.
Establece reglas críticas: Añadimos reglas claras como "Mantén TODOS los campos originales", "SOLO traduce 'title' y 'description'", "NO modifiques ningún otro valor".
Incrusta los datos: Finalmente, inyecta nuestra lista de posts (previamente convertida a texto JSON) directamente en el prompt.
Al final, este nodo genera un objeto JSON perfectamente preparado que contiene el prompt y la configuración para la llamada a la API, como la temperature (para controlar la creatividad de la respuesta) y el responseMimeType (para indicarle que esperamos una respuesta en formato JSON).
Paso 2: La llamada: Hablando con la nube (Petición a Gemini)
Este es el paso más sencillo de explicar pero el más potente. Usamos un nodo HTTP Request que se encarga de la comunicación real con la API de Google.
URL: Apunta al endpoint específico del modelo de Gemini que queremos usar (en este caso, gemini-1.5-flash).
Método: Se configura como POST, ya que estamos enviando datos (nuestro payload).
Cuerpo (Body): Aquí inyectamos el JSON que creamos en el paso anterior.
Autenticación: Este es el único punto donde usamos una de las credenciales que generamos al principio. Seleccionamos nuestra "Google Gemini API Key" guardada en n8n, y el nodo se encarga de añadirla de forma segura a la cabecera de la petición.
Este nodo envía nuestro detallado "encargo" a los servidores de Google y espera pacientemente la respuesta de la IA.
Paso 3: El intérprete: Entendiendo la respuesta (Procesar resultado)
Gemini nos devuelve la respuesta, pero a veces las APIs encapsulan el contenido dentro de varias capas de objetos. La misión de este último nodo de "Code" es desempaquetar y validar la respuesta para dejarla lista.
Navega la estructura de la respuesta: El código está preparado para buscar el resultado de texto dentro de la estructura típica de la API de Gemini (en candidates[0].content.parts[0].text).
Parsea el JSON: El resultado que nos interesa viene como una cadena de texto que, en realidad, es nuestro JSON. El script usa JSON.parse() para convertir ese texto de nuevo en un objeto JSON manejable.
Control de errores: Incluye una lógica básica para manejar posibles estructuras de respuesta inesperadas, asegurando que el workflow no falle si Gemini cambia ligeramente su formato.
Al final de este bloque de tres nodos, hemos completado un ciclo completo de interacción con la IA. Hemos pasado de tener una lista de enlaces y datos a tener un objeto JSON estructurado que contiene análisis, resúmenes estratégicos y todo el contenido traducido y listo para ser presentado. La materia prima se ha convertido en inteligencia.
El acto final: Componiendo y enviando el informe
Hemos llegado al final de nuestra cadena de montaje. Los datos han sido recolectados, filtrados, y enriquecidos con la inteligencia de Gemini. Ahora solo nos queda presentar esta valiosa información de una forma profesional y asegurarnos de que llega a nuestra bandeja de entrada.

Este último bloque se encarga de la "última milla": la composición de un email en formato HTML y su envío automático.
Paso 1: El artesano del email (Composición del email)
Si el nodo de Gemini era el analista, este nodo de "Code" es nuestro diseñador y maquetador. Su misión es tomar el JSON estructurado que nos devolvió la IA y transformarlo en un correo electrónico profesional y fácil de leer.
Este es, quizás, el nodo con el código más extenso, pero su lógica es muy ordenada:
Recopilación de materiales: Lo primero que hace es recoger los dos ingredientes que necesita:
Los datos procesados por Gemini (el resumen ejecutivo, el análisis general y la lista de posts traducidos).
Nuestra configuración global del nodo GlobalConfig (para usar los nombres bonitos de los subreddits, los emojis, el límite de posts a mostrar, etc.).
Organización de los posts: Para presentar la información de manera lógica, el código agrupa todos los posts por su subreddit de origen.
Generación de HTML dinámico: Aquí reside el verdadero poder. El script construye el cuerpo del email (el body) usando código HTML y CSS. No es un email de texto plano, sino una pequeña página web.
Cabecera y título: Crea una cabecera atractiva con el logo, el título del informe y la fecha actual.
Insights clave: Presenta el resumen_ejecutivo y el resumen_general de Gemini en bloques destacados para que sea lo primero que llame la atención.
Bloques por subreddit: Itera sobre cada subreddit y crea una sección para cada uno, mostrando su emoji y su nombre. Dentro de cada sección, crea dos columnas: "👑 TOP Más Votados" y "💡 TOP Más Comentados".
Diseño de cada post: Cada post se formatea como una "tarjeta" individual que incluye su título (como un enlace al post original), las estadísticas de votos y comentarios, y una breve descripción.
Creación de un asunto inteligente: No se limita a un asunto estático. Lo genera dinámicamente para que sea informativo de un solo vistazo, algo como: 🎯 Informe Estratégico 04 oct. | 25 Tendencias AI de 12 Subreddits.
Al final, este nodo no envía nada. Simplemente, prepara y devuelve un objeto JSON que contiene el subject (asunto), el body (todo el código HTML del email) y el recipientEmail (el destinatario que leyó del GlobalConfig).
Paso 2: El Mensajero (Enviamos por Gmail)
Toda la complejidad estaba en el paso anterior. Este último nodo es la simplicidad en sí misma. Es un nodo de Gmail preconfigurado de n8n.
Su configuración es trivial, ya que todo el trabajo duro ya está hecho:
Autenticación: Aquí usamos la segunda credencial que creamos al principio, la de Gmail (OAuth 2.0). Al configurarla por primera vez, n8n nos guiará en un proceso para que autoricemos a nuestra aplicación a enviar correos en nuestro nombre. Una vez hecho, nunca más tendremos que preocuparnos.
Destinatario (To): En lugar de escribir un email, usamos una expresión para tomar el valor que preparó el nodo anterior: {{ $json.recipientEmail }}.
Asunto (Subject): Igual que con el destinatario, enlazamos el asunto dinámico: {{ $json.subject }}.
Mensaje (Message): Y lo más importante, activamos la opción de que el cuerpo del mensaje es HTML y le pasamos el código generado: {{ $json.body }}.
Y eso es todo. Al ejecutar este nodo, coge las credenciales, el contenido perfectamente maquetado y envía el informe. Si nuestro workflow está activado para ejecutarse con el nodo "Schedule Trigger", recibiremos este valioso resumen en nuestra bandeja de entrada puntualmente, sin mover un solo dedo.
Conclusión y próximos pasos: Tu turno de automatizar
¡Lo hemos conseguido! Hemos construido desde cero un potente sistema de inteligencia estratégica. Lo que antes eran horas de navegación manual por Reddit, ahora es un informe ejecutivo, inteligente y personalizado que llega a nuestra bandeja de entrada de forma totalmente automática.
A lo largo de este tutorial, hemos visto el poder y la flexibilidad de n8n:
Hemos aprendido a centralizar la configuración para crear flujos mantenibles.
Nos hemos conectado a APIs públicas de forma sencilla para recolectar datos.
Hemos diseñado una cadena de procesamiento para filtrar, clasificar y refinar la información.
Hemos integrado la Inteligencia Artificial de Gemini para transformar datos en conocimiento.
Y finalmente, hemos maquetado y enviado un informe profesional por email.
Este proyecto es un ejemplo perfecto de cómo herramientas low-code como n8n nos permiten crear soluciones increíblemente sofisticadas que, hasta hace poco, requerirían un equipo de desarrolladores. La verdadera magia no está en un solo nodo, sino en cómo se orquestan todos para trabajar en armonía.
Descarga el flujo y hazlo tuyo
La mejor forma de aprender es haciendo. Por eso, te compartimos el flujo de trabajo completo que hemos construido para que puedas importarlo directamente en tu instancia de n8n y empezar a experimentar.
Recuerda que, una vez importado, deberás:
Configurar tus propias credenciales para Gemini y Gmail.
Personalizar el nodo GlobalConfig con tus subreddits de interés y tu dirección de correo electrónico.
Este flujo es solo el punto de partida. Te animo a que lo modifiques, lo amplíes y lo adaptes a tus necesidades. ¿Quizás quieras obtener datos de Twitter en lugar de Reddit? ¿O enviar los resultados a Notion en vez de por email? ¿Y si pruebas con un modelo de IA diferente? Las posibilidades son infinitas.
.png)


Comentarios