Cómo crear tu primer flujo de trabajo de n8n:
Tutorial paso a paso 2026

n8n es una de las herramientas de automatización más potentes disponibles, y a diferencia de otras plataformas, te brinda la flexibilidad de programación completa de JavaScript junto con un editor visual que realmente tiene sentido. Este tutorial te guía a través de la creación de tu primer flujo de trabajo real desde cero: un trabajo programado que obtiene datos de una API, los procesa y envía una notificación de Slack. No se necesita experiencia previa en n8n.

Lo que construirás

Un flujo de trabajo que se ejecuta todas las mañanas a las 8 AM, obtiene el clima actual de tu ciudad de una API pública, formatea un mensaje de resumen y lo envía a tu canal de Slack. Al final, comprenderás cada concepto central de n8n: activadores, solicitudes HTTP, manipulación de datos, salidas, pruebas y activación.

Comprendiendo la interfaz de n8n

Antes de agregar cualquier nodo, tómate unos minutos para comprender el diseño del editor de n8n. Abre tu instancia de n8n y haz clic en "Nuevo flujo de trabajo".

El lienzo

El lienzo es tu espacio de trabajo visual. Es una cuadrícula infinita donde arrastras, conectas y configuras nodos. Interacciones clave:

  • Panorámica: Haz clic y arrastra en el espacio vacío, o mantén presionada la barra espaciadora y arrastra
  • Zoom: Rueda de desplazamiento, o Ctrl/Cmd + desplazamiento
  • Ajustar a la pantalla: Presiona Ctrl/Cmd + Shift + H
  • Agregar un nodo: Haz clic en el botón + en el lado derecho de cualquier nodo, o haz doble clic en el espacio vacío
  • Mover un nodo: Haz clic y arrastra el nodo en sí
  • Seleccionar múltiples: Haz clic y arrastra para crear un rectángulo de selección

La barra de herramientas superior

De izquierda a derecha en la barra superior:

  • Nombre del flujo de trabajo: Haz clic para cambiarle el nombre. Usa nombres descriptivos como "Alerta meteorológica - Slack diario"
  • Guardar: Ctrl/Cmd + S. n8n no guarda automáticamente, guarda con frecuencia
  • Ejecutar flujo de trabajo: Ejecuta todo el flujo de trabajo una vez manualmente (desde el activador)
  • Alternar activo: El interruptor de encendido/apagado que hace que los flujos de trabajo basados en activadores se ejecuten automáticamente

Anatomía del nodo

Cada nodo tiene la misma estructura: un conector de entrada a la izquierda, un conector de salida a la derecha, un nombre en la parte superior y un indicador de estado. Haz clic en cualquier nodo para abrir su panel de configuración en el lado derecho de la pantalla.

Paso 1: agregar un activador de programación

Cada flujo de trabajo comienza con un activador. Para nuestra alerta meteorológica matutina, utilizamos el activador de programación.

1

Agregar el nodo Activador de programación

Haz clic en el botón "+" grande en el centro del lienzo vacío. En el panel de búsqueda de nodos, escribe "Programación" y selecciona Activador de programación. Aparece en el lienzo como tu nodo de inicio.

2

Configurar la programación

Haz clic en el nodo Activador de programación para abrir su configuración. Cambia "Intervalo de activación" a Días. Establece la hora de activación a las 08:00. Esto ejecuta el flujo de trabajo todos los días a las 8 AM en la zona horaria configurada en tu instancia de n8n.

Configuración del activador de programación: Intervalo de activación: Días Días entre activadores: 1 Activar a la hora: 8 Activar al minuto: 0 # Para programaciones más complejas, usa la opción de expresión Cron: # "0 8 * * 1-5" = 8 AM solo en días laborables # "0 8,17 * * *" = 8 AM y 5 PM diariamente
Consejo de prueba

Para probar un activador de programación sin esperar, haz clic en el nodo y presiona "Ejecutar paso". Esto ejecuta solo ese nodo y te muestra qué datos produce: una marca de tiempo y metadatos del activador. Usarás "Ejecutar paso" a lo largo de este tutorial para probar cada nodo de forma independiente.

Paso 2: obtener datos meteorológicos con la solicitud HTTP

Usaremos la API Open-Meteo: es gratuita, no requiere clave API y devuelve datos meteorológicos JSON. Haz clic en el icono + en el lado derecho del nodo Activador de programación para agregar el siguiente nodo.

3

Agregar un nodo de solicitud HTTP

Busca "Solicitud HTTP" en el panel de nodos y agrégalo. Este es el nodo más versátil en n8n: puede llamar a cualquier API REST.

Configuración del nodo de solicitud HTTP: Método: GET URL: https://api.open-meteo.com/v1/forecast # Parámetros de consulta (haz clic en "Agregar parámetro" para cada uno): latitude: 40.7128 # Nueva York (cambia para tu ciudad) longitude: -74.0060 current: temperature_2m,weathercode,windspeed_10m timezone: America/New_York # Deja la autenticación como "Ninguna": esta API es pública

Haz clic en "Ejecutar paso" en este nodo. El panel derecho muestra la respuesta JSON sin procesar: expándela para explorarla. Deberías ver un objeto current con temperature_2m, weathercode y windspeed_10m. Estos son los datos que formatearemos en el siguiente paso.

Comprendiendo la estructura de salida del nodo

n8n pasa datos entre nodos como una matriz de elementos. Cada elemento tiene una propiedad json que contiene los datos reales. El nodo de solicitud HTTP envuelve la respuesta de la API en esta estructura automáticamente. Esta es la razón por la que harás referencia a los datos como $json.current.temperature_2m: estás accediendo a la propiedad json del elemento actual.

Paso 3: procesar datos con el nodo Editar campos (Establecer)

La respuesta de la API sin procesar tiene más datos de los que necesitamos y utiliza nombres de campo legibles por máquina. El nodo Editar campos (anteriormente llamado "Establecer") nos permite remodelar y renombrar los datos en una estructura limpia para el mensaje de Slack.

4

Agregar un nodo Editar campos

Agrega un nodo "Editar campos" después de la solicitud HTTP. Elige el modo Mapeo manual y establece "Incluir otros campos de entrada" en desactivado (queremos una salida limpia solo con lo que definimos).

Nodo Editar campos: agrega estos campos (haz clic en "Agregar campo" para cada uno): Campo 1: Name: temperature Value: {{ $json.current.temperature_2m }} Campo 2: Name: windspeed Value: {{ $json.current.windspeed_10m }} Campo 3: Name: weatherCode Value: {{ $json.current.weathercode }} Campo 4: Name: date Value: {{ $now.toFormat('EEEE, MMMM d') }} Campo 5: Name: emoji Value: {{ $json.current.weathercode < 3 ? '☀️' : $json.current.weathercode < 50 ? '⛅' : '🌧️' }}

El último campo usa una expresión ternaria de JavaScript directamente dentro de la sintaxis de expresión {{ }}: esta es una de las características más potentes de n8n. Ejecuta el nodo y verifica que veas un objeto limpio con tus 5 campos definidos.

Paso 4: enviar a Slack

Ahora la parte divertida: enviar la actualización meteorológica formateada a Slack.

5

Agregar un nodo de Slack

Agrega un nodo "Slack". Deberás crear una credencial de Slack. Haz clic en "Crear nueva credencial" → sigue el flujo de OAuth para conectar tu espacio de trabajo de Slack. n8n almacena el token encriptado.

Configuración del nodo de Slack: Recurso: Mensaje Operación: Enviar Canal: #general # o usa el ID del canal para canales privados # Texto del mensaje (haz clic en "Agregar opción" → "Bloques" para formato enriquecido, # o usa texto sin formato para simplificar): Text: {{ $json.emoji }} ¡Buenos días! Clima para {{ $json.date }} 🌡️ Temperatura: {{ $json.temperature }}°C 💨 Velocidad del viento: {{ $json.windspeed }} km/h ¡Que tengas un gran día! ☕

Si no tienes un espacio de trabajo de Slack, sustituye este nodo con un nodo de Gmail (envíate un correo electrónico) o un nodo de Webhook (publica en cualquier punto final). Los datos que fluyen hacia el nodo final son idénticos independientemente del destino.

Usando Slack Block Kit para mensajes más enriquecidos

Para un mensaje de Slack visualmente más atractivo, usa Block Kit JSON en lugar de texto sin formato. Haz clic en "Agregar opción" → "Bloques" en el nodo de Slack y pega esto:

[ { "type": "header", "text": { "type": "plain_text", "text": "{{ $json.emoji }} Clima matutino — {{ $json.date }}" } }, { "type": "section", "fields": [ { "type": "mrkdwn", "text": "*Temperatura*\n{{ $json.temperature }}°C" }, { "type": "mrkdwn", "text": "*Velocidad del viento*\n{{ $json.windspeed }} km/h" } ] } ]

Paso 5: pruebas y depuración

Antes de activar tu flujo de trabajo, pruébalo a fondo. n8n proporciona excelentes herramientas de depuración.

Ejecutar el flujo de trabajo completo manualmente

Haz clic en el botón "Ejecutar flujo de trabajo" en la barra de herramientas superior derecha. Esto ejecuta todos los nodos desde el activador. Observa cómo los indicadores de flujo verdes se mueven de izquierda a derecha a través del lienzo a medida que se ejecuta cada nodo. Verde = éxito, Rojo = error.

Inspeccionar los resultados de la ejecución

Haz clic en cualquier nodo después de la ejecución para ver:

  • Pestaña Entrada: qué datos llegaron del nodo anterior
  • Pestaña Salida: qué datos produjo este nodo y pasó hacia adelante
  • Pestaña Error: mensaje de error y seguimiento de la pila si el nodo falló

Anclar datos para el desarrollo iterativo

Esta es la característica de n8n más subutilizada para principiantes. Al probar, el activador de programación se activa inmediatamente, pero ¿qué pasa con la solicitud HTTP? ¿Qué pasa si la API es lenta o tiene una tasa limitada?

Ancla la salida del nodo de solicitud HTTP: haz clic en el nodo, ve a la pestaña Salida, haz clic en el icono de pin junto a cualquier resultado de ejecución. Ahora n8n usa esos datos anclados en lugar de hacer una llamada API real cada vez que pruebas. Esto hace que el desarrollo sea mucho más rápido y evita alcanzar los límites de velocidad.

Para anclar datos en un nodo: 1. Ejecuta el nodo al menos una vez 2. Haz clic en el nodo → Pestaña Salida 3. Haz clic en el icono de pin (📌) junto a la ejecución 4. El nodo ahora muestra "Anclado" en naranja 5. Las ejecuciones de prueba posteriores usan estos datos anclados en lugar de volver a ejecutar 6. Para desanclar: haz clic en el icono de pin nuevamente o en el botón "Borrar"

Historial de ejecución

Ve a la barra lateral izquierda → Ejecuciones. Cada ejecución del flujo de trabajo se guarda aquí con la marca de tiempo, el estado y los datos completos de entrada/salida para cada nodo. Esto es invaluable para depurar problemas de producción: puedes ver exactamente qué datos causaron una falla horas o días después.

Atajo de depuración

Si un nodo falla, haz clic en él y mira la pestaña Error. El mensaje de error casi siempre te dice exactamente qué salió mal: URL incorrecta, campo faltante, problema de credenciales. Los mensajes de error de n8n son generalmente excelentes: léelos cuidadosamente antes de buscar en Google.

Paso 6: agregar manejo de errores

Los flujos de trabajo de producción necesitan manejo de errores. Sin él, una llamada API fallida interrumpe silenciosamente tu flujo de trabajo. Agrega una ruta de respaldo:

6

Agregar un activador de error

En el panel izquierdo, haz clic en "Agregar flujo de trabajo" → mira la pestaña "Configuración" de tu flujo de trabajo. Habilita "Flujo de trabajo de error" y selecciona o crea un flujo de trabajo de manejo de errores separado. Ese flujo de trabajo recibe detalles del error y puede enviarte una alerta.

Para un manejo de errores simple en un solo nodo, haz clic con el botón derecho en cualquier nodo y selecciona "Agregar salida de error". Esto agrega un conector de error rojo que puedes enrutar a un nodo diferente (como una alerta de Slack o un correo electrónico):

Patrón de manejo de errores: Solicitud HTTP → [salida exitosa] → Editar campos → Slack ↓ [salida de error] → Slack (enviar alerta de error al canal #alerts) # En el nodo de Slack de error, usa estas expresiones: Text: ⚠️ ¡El flujo de trabajo meteorológico falló! Error: {{ $json.error.message }} Nodo: {{ $json.error.node.name }} Hora: {{ $now.toISO() }}

Paso 7: guardar y activar

Tu flujo de trabajo está completo. Dos pasos finales:

7

Guardar el flujo de trabajo

Presiona Ctrl/Cmd + S o haz clic en el botón Guardar. Nómbralo algo significativo: "🌤️ Alerta de Slack del clima matutino". Los buenos nombres ayudan cuando tienes docenas de flujos de trabajo.

8

Activar el flujo de trabajo

Cambia el interruptor Activo en la esquina superior derecha de gris a verde. El flujo de trabajo ahora está activo. Se ejecutará automáticamente a las 8 AM todos los días. El interruptor debe permanecer verde: si editas y guardas, permanece activo.

Activación vs. Ejecución

"Ejecutar flujo de trabajo" ejecuta el flujo de trabajo una vez manualmente en este momento. "Activo" significa que el activador se activa automáticamente en su propio horario. Necesitas ambos: prueba manualmente, luego activa para ejecuciones programadas. Un flujo de trabajo se puede probar sin estar activado.

Mejores prácticas de flujo de trabajo para principiantes

Convenciones de nomenclatura

  • Usa nombres descriptivos: "Enviar alerta de Slack sobre nuevo cliente potencial de HubSpot" no "Flujo de trabajo 4"
  • Agrega prefijos de emoji para agrupar flujos de trabajo relacionados: 📧 para correo electrónico, 📊 para informes, 🤖 para IA
  • Cambia el nombre de los nodos individuales también: "Obtener API del clima" es más claro que "Solicitud HTTP1"

Mantén los nodos pequeños y enfocados

Cada nodo debe hacer una cosa. En lugar de un nodo de código JavaScript gigante que haga todo, usa múltiples nodos Editar campos, IF y Establecer. Esto hace que la depuración sea mucho más fácil: puedes identificar exactamente qué paso falló.

Usa notas adhesivas para la documentación

Haz clic con el botón derecho en el lienzo → "Agregar nota adhesiva". Escribe una breve explicación de lo que hace el flujo de trabajo, cualquier problema y la última vez que se actualizó. Tu yo futuro te lo agradecerá.

Prueba con casos extremos

Después de que tu ruta feliz funcione, prueba:

  • ¿Qué sucede cuando la API devuelve una matriz vacía?
  • ¿Qué pasa si un campo requerido es nulo o indefinido?
  • ¿Qué pasa si la API está inactiva?

Agrega nodos IF y rutas de error para manejarlos con elegancia.

¿Omitir la configuración manual?

Usa Scriflow para describir tu automatización en inglés sencillo y obtener un JSON de flujo de trabajo de n8n completo, listo para importar a tu instancia de n8n con un solo clic. Perfecto para flujos de trabajo complejos que no deseas construir nodo por nodo.

Preguntas frecuentes

¿Cómo importo un flujo de trabajo desde JSON?
En el editor de n8n, presiona Ctrl/Cmd + Shift + V o ve al menú superior derecho (⋯) → "Importar desde archivo" o "Importar desde URL". Pega o carga un archivo JSON y el flujo de trabajo aparece en el lienzo listo para configurar las credenciales.
¿Puede un flujo de trabajo tener múltiples activadores?
Cada flujo de trabajo tiene un activador principal, pero puedes usar el nodo "Combinar" para combinar salidas de múltiples ramas de activadores. Alternativamente, crea flujos de trabajo separados que se llamen entre sí usando el nodo "Ejecutar flujo de trabajo".
¿Cómo proceso múltiples elementos de una respuesta API?
n8n automáticamente recorre los elementos en matrices. Si tu solicitud HTTP devuelve una matriz, n8n crea un elemento por elemento de la matriz. Todos los nodos posteriores reciben y procesan cada elemento individualmente. No se necesita un bucle explícito: este es el modelo de procesamiento basado en elementos de n8n.
¿Cuál es la diferencia entre el activador de programación y el activador Cron?
Son el mismo nodo. El activador de programación en n8n admite tanto un selector de intervalo fácil de usar como una expresión cron sin procesar. Usa la opción de expresión para programaciones complejas como "todos los días laborables a las 9 AM excepto el día 1 del mes".
Mi flujo de trabajo se ejecutó pero no recibí un mensaje de Slack, ¿qué pasó?
Consulta el historial de ejecuciones para la ejecución exacta. Haz clic en él e inspecciona la entrada y salida del nodo de Slack. Causas comunes: nombre de canal incorrecto (usa #nombre-de-canal o el ID del canal), la aplicación de Slack carece de permiso para publicar o la expresión del texto del mensaje se evaluó como vacía.
¿Cómo comparto un flujo de trabajo con mi equipo?
Exporta el flujo de trabajo como JSON (⋯ → "Exportar") y comparte el archivo. Tu equipo lo importa en su instancia de n8n. Las credenciales no se exportan: cada persona debe conectar sus propias claves API. Para la colaboración en equipo en la misma instancia, usa las funciones integradas de n8n para compartir credenciales y flujos de trabajo.