
¡Bienvenido/a al curso de n8n!
En las próximas horas vas a pasar de cero a experto en automatización visual:
Fundamentos y puesta en marcha
Instalaremos n8n en local y vía Docker, y configuraremos tu primer Webhook para que entiendas la filosofía low-code detrás de la plataforma.
Nodos esenciales y disparadores (triggers)
Dominarás nodos como Webhook, Cron, Interval y Manual Trigger para iniciar flujos, así como los nodos HTTP Request, Slack, Gmail, Google Sheets y más para integrarte con servicios reales.
Expresiones, datos y credenciales seguras
Aprenderás a manejar {{expresiones}}, la estructura JSON interna de items y las mejores prácticas para cifrar, reutilizar y versionar credenciales.
Lógica y control de flujo
Con los nodos IF, Switch, Merge, SplitInBatches y Function construirás ramas, bucles y transformaciones complejas sin perder la trazabilidad.
Gestión de errores y depuración
Configurarás Error Trigger, ejecutarás nodos aislados y aplicarás patrones de reintento para que tus automatizaciones sean 100 % resilientes.
Despliegue en producción y escalado
Veremos cómo activar el modo queue con Redis, asegurar tus Webhooks con un proxy inverso + SSL, y orquestar contenedores con Docker Compose o Kubernetes.
Proyecto final y examen
Pondrás todo en práctica creando un flujo completo “end-to-end” y lo validarás con el examen final de 20 preguntas que certificará tu dominio.
Durante el curso tendrás recursos descargables, retos guiados y soporte directo en los foros de Udemy. Avanza a tu ritmo, repite las clases que necesites y no dudes en compartir tus dudas: estamos aquí para ayudarte a convertir ideas en automatizaciones reales.
¡Arrancamos… y manos al flujo! ?
Enlaces de interés:
Los he tenido que quitar por las politicas absurdas de UDEMY.
Si lo necesitáis, preguntadme directamente por alguna red social. Gracias.
Instrucciones para instalar Portainer en Ubuntu
Sigue estos sencillos pasos para instalar y configurar Portainer, una herramienta fácil de usar para gestionar tus contenedores Docker.
Actualizar los paquetes del sistema
Ejecuta el siguiente comando para actualizar la lista de paquetes:
sudo apt update
Instalar Docker
Instala Docker utilizando el siguiente comando:
sudo apt install docker.io -y
Verifica que Docker esté en ejecución:
sudo systemctl status docker
Si no está activo, inicia el servicio:
sudo systemctl start docker
Finalmente, agrega tu usuario al grupo docker:
sudo usermod -aG docker $USER
Reinicia la terminal para aplicar los cambios.
Instalar Portainer
Descarga la imagen oficial de Portainer:
docker pull portainer/portainer-ce:latest
Verifica la imagen descargada:
docker images
Inicia el contenedor de Portainer:
docker run -d -p 9000:9000 --restart always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer-ce:latest
Confirma que el contenedor esté en ejecución:
docker ps
Acceder a la interfaz web de Portainer
Abre tu navegador y visita la siguiente URL:
http://IP-del-servidor:9000
Crea un usuario administrador proporcionando un nombre de usuario y contraseña fuertes.
¡Listo! Ahora puedes comenzar a gestionar tus contenedores de forma fácil y eficiente con Portainer.
Datos instalación N8N:
Name – n8n
Image – n8nio/n8n:latest
Always pull the image – Enabled
Manual network port publishing – Host: 5678 / Container: 5678
Variables de entorno usadas para N8N:
TZ=Europe/London
GENERIC_TIMEZONE=Europe/London
WEBHOOK_URL=http://your-droplet-ip:5678
EXECUTIONS_DATA_SAVE_ON_SUCCESS=none
EXECUTIONS_DATA_PRUNE=true
EXECUTIONS_DATA_MAX_AGE=24
DB_SQLITE_VACUUM_ON_STARTUP=true
Comandos utilizados
1. Primero haz login en Docker Hub
docker login
2. Examina los dockers que tienes en el servidor
docker images
3. Etiqueta la imagen
docker tag atendai/evolution-api:homolog va360/va360api:academy
4. Sube la imagen a Docker Hub
docker push va360/va360api:academy
Ejecutando Python en n8n: Guía Completa
Introducción
Hay dos métodos principales para ejecutar código Python en n8n:
Método del Sistema Operativo: Usando el nodo “Execute Command” para ejecutar Python instalado en el sistema.
Método Pyodide: Usando el nodo “Python” integrado en n8n (basado en WebAssembly).
Cada método tiene sus propias ventajas, limitaciones y casos de uso.
Método 1: Python del Sistema Operativo (nodo “Execute Command”)
Este método ejecuta Python directamente en el sistema operativo donde está instalado n8n, permitiéndote acceder a todas las bibliotecas instaladas en el sistema.
Requisitos previos
Python debe estar instalado en el sistema.
Las bibliotecas necesarias deben estar instaladas a nivel del sistema.
Instalación de Python y bibliotecas en el contenedor Docker
Modifica tu Dockerfile para instalar Python y las bibliotecas necesarias:
FROM n8nio/n8nUSER rootRUN apk add --update python3 py3-pip && \ python3 -m venv /opt/venv && \ /opt/venv/bin/pip install requests pandas numpyUSER nodeENV PATH="/opt/venv/bin:$PATH"
Pruebas
Ejemplo 1: Petición HTTP simple con requests
En n8n, crea un flujo de trabajo con un nodo “Execute Command” y configúralo así:
Comando:
python3 -c "import requestsimport jsondef get_joke(): url = 'https://official-joke-api.appspot.com/random_joke' response = requests.get(url) return json.dumps(response.json(), indent=2)result = get_joke()print(result)"
Resultado esperado:
json{
"id": 42,
"type": "general",
"setup": "What do you call a fake noodle?",
"punchline": "An impasta!"
}
Ejemplo 2: Utilizando un archivo Python
Crea un archivo Python en el sistema:
cat > /home/node/weather.py << 'EOF'import requestsimport jsonimport sysdef get_weather(city): api_key = "demo_key" url = f"https://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}&units=metric" response = requests.get(url) return json.dumps(response.json(), indent=2)if __name__ == "__main__": city = sys.argv[1] if len(sys.argv) > 1 else "Madrid" result = get_weather(city) print(result)EOF
Ejecuta el archivo desde n8n con un nodo “Execute Command”:
Comando:
python3 /home/node/weather.py Barcelona
Ventajas y Limitaciones
Ventajas
Acceso completo a todas las bibliotecas de Python instaladas en el sistema
Sin restricciones de red o de acceso al sistema de archivos
Soporte completo para todas las funcionalidades de Python
Limitaciones
Requiere instalar Python y bibliotecas en el sistema/contenedor
Mayor complejidad de mantenimiento cuando se actualizan las versiones de n8n
Método 2: Pyodide (nodo “Python” integrado)
Este método utiliza Pyodide, una versión de Python compilada a WebAssembly, integrada directamente en n8n.
Requisitos previos
No se requiere instalación adicional, ya que Pyodide viene integrado en el nodo “Python” de n8n.
Pruebas
Ejemplo 1: Operaciones básicas en Python
Crea un flujo de trabajo con un nodo “Python” y configúralo así:
# Procesamiento de datos simpledata = [{"nombre": "Juan", "edad": 30}, {"nombre": "Ana", "edad": 25}]# Procesamientofor item in data: item["categoria"] = "adulto" if item["edad"] >= 18 else "menor"return data
Resultado esperado:
json[
{
"nombre": "Juan",
"edad": 30,
"categoria": "adulto"
},
{
"nombre": "Ana",
"edad": 25,
"categoria": "adulto"
}
]
Ejemplo 2: Haciendo peticiones HTTP con fetch (JavaScript)
from js import fetchimport jsonasync def get_joke(): response = await fetch("https://official-joke-api.appspot.com/random_joke") data = await response.json() return datajoke = await get_joke()return [joke]
Ejemplo 3: Procesando datos de nodos anteriores
# Acceder a los datos del nodo anterioritems = $input.all()# Procesar los datosresults = []for item in items: data = item.json.data processed = { "id": data.id, "value": data.value * 2, "processed": True } results.append(processed)return results
Ventajas y Limitaciones
Ventajas
Integración nativa con n8n
No requiere instalación adicional
Mejor interoperabilidad con los datos de otros nodos de n8n
Limitaciones
No todas las bibliotecas de Python son compatibles con Pyodide
Limitaciones para hacer peticiones HTTP (no puede usar requests directamente)
Restricciones de acceso al sistema de archivos
Entorno de ejecución más limitado
Conclusión y recomendaciones
¿Cuándo usar el Método 1 (Execute Command)?
Cuando necesites bibliotecas específicas de Python que no están disponibles en Pyodide
Para tareas que requieren acceso al sistema de archivos o red sin restricciones
Para scripts Python existentes que quieras ejecutar sin modificaciones
¿Cuándo usar el Método 2 (nodo Python)?
Para transformaciones de datos simples
Cuando necesites una mejor integración con el flujo de datos de n8n
Para procesos que no requieren bibliotecas externas complejas
Para la mayoría de los casos de uso profesionales que requieren bibliotecas como requests, pandas, numpy, etc., el Método 1 (Execute Command) será más versátil y potente.
Domina n8n, la plataforma open-source de automatización, desde los fundamentos hasta la puesta en producción de flujos avanzados. Guiado por un Embajador oficial de n8n en España, aprenderás a conectar servicios, transformar datos y orquestar procesos sin escribir grandes cantidades de código.
Qué aprenderás
Diseñar flujos visuales que integran REST, GraphQL y Webhooks
Implementar lógica condicional, bucles y manejo de errores para entornos empresariales
Desplegar n8n en self-hosting (Docker) y en la nube, con prácticas de backup y actualización
Crear plantillas reutilizables y paquetes personalizados en TypeScript
Monitorizar y optimizar flujos con métricas y alertas
Aplicar casos reales en marketing, e-commerce, analítica y operaciones internas
Requisitos
Conocimientos básicos de APIs y JSON
Curiosidad por la automatización y la eficiencia de procesos
Opcional: experiencia mínima con Docker o cualquier servicio cloud (AWS, DigitalOcean, etc.)
A quién va dirigido
Marketers y growth hackers que quieran automatizar campañas y segmentaciones
Desarrolladores y DevOps que necesiten integrar microservicios y pipelines CI/CD
Product managers y analistas en busca de dashboards y reporting sin fricción
Emprendedores y freelancers que deseen escalar operaciones con recursos limitados
Metodología
Cada sección combina vídeo paso a paso, recursos descargables y desafíos prácticos. Finalizarás con flujos listos para producción y la confianza de iterar por tu cuenta.
Certificado y soporte
Al completar el curso obtendrás certificado de Udemy. Tendrás soporte directo vía foros internos y sesiones en vivo mensuales para resolver dudas y revisar proyectos.