Salta el contingut

Trigger Nodes

Els trigger nodes són el punt d'entrada de qualsevol workflow. Sense un trigger, el workflow no s'executa mai.

Tipus de triggers

flowchart TD
    A[Trigger Nodes] --> B[Manual Trigger]
    A --> C[Schedule Trigger]
    A --> D[Webhook Trigger]
    A --> E[Form Trigger]
    A --> F[Altres triggers\nGmail, Slack, etc.]

Manual Trigger

El trigger més simple. El workflow s'executa quan prems el botó "Execute Workflow" o "Test workflow".

Quan usar-lo: - Per a proves i desenvolupament - Quan vols executar el flux manualment a demanda

Configuració: Cap. Només cal afegir el node i ja esta.

Dades d'entrada del Manual Trigger

El Manual Trigger no genera cap dada. El node següent rebrà un item buit {}. Si necessites dades inicials, afegeix un node Code o Set després del trigger.

Schedule Trigger

Executa el workflow a intervals regulars o en moments específics.

Quan usar-lo: - Informes diaris o setmanals - Sincronització periòdica de dades - Neteja automàtica de registres antics

Configuració:

Mode Exemple Us
Every X minutes Cada 15 minuts Monitoratge freqüent
Every hour Cada hora a :00 Actualitzacions horàries
Every day Cada dia a les 8:00 Informes diaris
Every week Dilluns a les 9:00 Resum setmanal
Custom (Cron) 0 9 * * 1-5 Dies laborables

Sintaxi Cron

* * * * *
│ │ │ │ └── Dia de la setmana (0=diumenge, 1=dilluns... 7=diumenge)
│ │ │ └──── Mes (1-12)
│ │ └────── Dia del mes (1-31)
│ └──────── Hora (0-23)
└────────── Minut (0-59)

Exemples:

0 8 * * 1-5    → 8:00 cada dia de la setmana (dilluns a divendres)
0 9 * * 1      → 9:00 cada dilluns
0 */2 * * *    → Cada 2 hores
30 23 L * *    → 23:30 l'ultim dia de cada mes

Zona horària

Assegura't de configurar la variable GENERIC_TIMEZONE=Europe/Madrid al docker-compose, altrament el Schedule Trigger usara UTC i els horaris seran incorrectes.

Webhook Trigger

El workflow s'executa quan arriba una petició HTTP (GET, POST, PUT, DELETE) a una URL específica.

Quan usar-lo: - Recepció de dades d'aplicacions externes - Integració amb serveis que envien notificacions (Stripe, GitHub, Shopify...) - Formularis web que envien dades per HTTP

Configuració:

  1. Afegeix el node Webhook
  2. Selecciona el mètode HTTP (POST és el més habitual)
  3. n8n et generara una URL única: http://localhost:5678/webhook/[uuid]

URL de Webhook

n8n genera dues URLs per a cada webhook:

URL Us
http://...5678/webhook-test/[uuid] Per a proves (només mentre el workflow està en mode "test")
http://...5678/webhook/[uuid] Per a producció (el workflow ha d'estar actiu)

ngrok per a proves

Per a provar webhooks des d'internet (per exemple, des de GitHub), pots usar ngrok per exposar el teu n8n local a internet temporal. Ho veurem al Bloc 4.

Resposta del Webhook

Per defecte, el webhook respon immediatament amb un 200 OK. Si necessites enviar una resposta personalitzada:

  1. A la configuració del node Webhook, estableix Respond a Using Respond to Webhook Node
  2. Afegeix el node Respond to Webhook al final del flux
  3. Configura el cos de la resposta

Form Trigger (n8n Forms)

Genera un formulari web que n8n hostatja automàticament. Quan l'usuari omple el formulari, s'executa el workflow.

Quan usar-lo: - Collegio de dades d'usuaris sense backend propi - Formularis interns d'empresa - Sistemes de sol·licituds simples

Configuració:

  1. Afegeix el node n8n Form Trigger
  2. Defineix els camps del formulari:
  3. Nom del camp (id intern)
  4. Etiqueta visible a l'usuari
  5. Tipus: text, email, número, select, data, fitxer
  6. Obligatori o opcional
  7. n8n genera automàticament una URL per al formulari

Exemple de configuració d'un formulari:

Camp Tipus Obligatori
Nom complet Text Si
Correu Email Si
Departament Select (IT, RRHH, Finances) Si
Comentari Text area No

Altres triggers

n8n te triggers específics per a molts serveis:

Trigger Quan s'executa
Gmail Trigger Quan arriba un correu nou que compleix un filtre
Slack Trigger Quan es pública un missatge en un canal
GitHub Trigger Quan hi ha un push, PR, o issue nou
Stripe Trigger Quan es crea un pagament o subscripció
WooCommerce Trigger Quan hi ha una comanda nova

Miniactivitat ACN8N8

Crea un workflow amb un Schedule Trigger que s'executi cada dilluns a les 9:00. Afegeix un node Code que retorni un missatge de "Bon dilluns! Setmana de treball #X". Usa l'expressió {{ $now.weekNumber }} per obtenir el número de la setmana.