Ressources · Intégration n8n

Nœud Webhook n8nConfigurer Webhook dans n8n.

Le nœud Webhook n8n transforme un workflow en adresse HTTP qui attend d'être appelée. Il reçoit la requête, transmet corps, en-têtes et paramètres au nœud suivant, puis répond. Quinze paramètres pilotent le chemin, quatre méthodes d'authentification, les fichiers et la réponse renvoyée.

Avis vérifiés sur Trustpilot · Agence IA, automatisation & growth

Pourquoi automatiser

À quoi sert le nœud Webhook n8n ?

Le nœud Webhook fabrique une URL que des services extérieurs peuvent appeler. Dès qu'un appel arrive dessus, n8n lance le workflow et passe la requête au nœud suivant sous forme de JSON : le corps, les en-têtes, les paramètres d'URL. C'est un nœud déclencheur, donc il se place en tête de workflow. Il sait aussi renvoyer des données à la fin de l'exécution, ce qui rapproche le workflow d'un vrai point d'entrée d'API.

Trois usages reviennent sans cesse. Récupérer l'événement d'un service qui n'a pas de nœud déclencheur dédié, d'abord : le prestataire envoie sa charge utile sur ton URL, et Path la garde stable pour ne pas repasser dans sa console à chaque modification. Exposer un point d'entrée interne, ensuite : un formulaire, un script ou un autre workflow appelle le nœud, Respond reste sur lastNode, et l'appelant récupère le résultat de l'exécution. Recevoir des fichiers, enfin, avec Binary File qui laisse passer l'envoi et Field Name for Binary Data qui décide où le fichier atterrit sur l'item.

Un webhook, c'est une URL qu'un autre système appelle quand il se passe quelque chose, au lieu que tu ailles lui demander toutes les cinq minutes. Toute la différence avec le polling tient là, et c'est pourquoi un workflow branché sur ce nœud part dès que l'appelant tire. En échange, il faut que l'appelant sache envoyer des webhooks et puisse joindre ton instance.

Quand un nœud dédié existe, prends-le. Faire passer des événements Slack ou Google Sheets par un webhook brut oblige à gérer les signatures et le format des charges utiles à la main, sans rien gagner. Le nœud Webhook prend tout son sens sur les services que personne n'a encore outillés, et sur les endpoints qui t'appartiennent. Dans l'autre sens, quand c'est le workflow qui doit appeler et non être appelé, le nœud à utiliser est HTTP Request, pratique aussi pour tester une URL de webhook depuis un second workflow.

Deux limites méritent d'être connues avant la mise en production. n8n n'enregistre qu'un webhook par combinaison de chemin et de méthode : un deuxième workflow qui réclame le même GET /commandes sera refusé tant que le premier n'est pas dépublié ou le chemin changé. Et sur n8n Cloud, une requête sans réponse au bout de 100 secondes échoue en 524 côté Cloudflare, d'où l'habitude de répondre tout de suite et d'exposer un second webhook pour l'état d'avancement. La charge utile maximale est de 16MB, ajustable avec N8N_PAYLOAD_SIZE_MAX en auto-hébergement.

Brancher tout ça sur un process réel, c'est le sujet de la Formation n8n ; et si le choix de la plateforme n'est pas tranché, l'Avis n8n détaille ce que l'outil fait bien.

Connexion

Comment sécuriser l'URL du webhook ?

  1. 01

    Choisir la méthode d'authentification

    Ouvre le nœud et règle Authentication. Quatre valeurs sont proposées : basicAuth, headerAuth, jwtAuth et none. L'authentification basique convient à un appelant interne que tu maîtrises, l'en-tête à un prestataire qui autorise l'ajout d'un en-tête personnalisé dans ses appels sortants, le JWT à ceux qui signent déjà leurs requêtes avec un jeton. Laisser none, c'est accepter que quiconque a l'URL démarre le workflow.

  2. 02

    Créer le credential une fois

    Toute valeur autre que none réclame un credential, c'est-à-dire un jeu de secrets enregistré une seule fois dans le menu Credentials de n8n et réutilisable par tous les workflows de l'instance. Le même couple nom et valeur d'en-tête protège ainsi dix webhooks sans être ressaisi. Garde plutôt un credential par appelant qu'un secret partagé : sinon, le jour où tu le renouvelles pour un prestataire, tous les autres tombent en même temps.

  3. 03

    Restreindre qui peut appeler

    L'authentification vérifie qui appelle, l'option IP(s) Allowlist décide qui a même le droit d'essayer. Elle prend une liste d'adresses IP ou de plages CIDR séparées par des virgules, et un appel venu d'ailleurs repart avec un 403. Laissée vide, elle accepte toutes les adresses. Ajoute Ignore Bots par-dessus si l'URL risque d'être collée dans un outil de discussion dont l'aperçu de lien déclencherait le workflow.

Paramètres

Quels paramètres le nœud Webhook propose-t-il ?

Le nœud Webhook compte 15 paramètres. Pour chacun : le nœud tel que tu le configures dans n8n, ce que le paramètre change, et nos notes de terrain.

01

Allow Multiple HTTP Methods

multipleMethods

Ce que tu vois dans n8n

Notes & cas d'usage

Par défaut, un webhook n'écoute qu'une méthode à la fois : GET ou POST, jamais les deux. Activer ce booléen dans les réglages du nœud lève la contrainte, et le nœud obtient une sortie par méthode pour aiguiller le workflow selon la façon dont il a été appelé.

Paramètres clés

  • Allow Multiple HTTP Methods : désactivé au départ ; une fois actif, le nœud accepte GET et POST, les autres s'ajoutent dans le champ HTTP Method.
  • HTTP Method : les méthodes écoutées, parmi DELETE, GET, HEAD, PATCH, POST, PUT.
Cas d'usage
une même adresse qui crée une fiche en POST et la renvoie en GET, chaque sortie partant sur sa propre branche.
02

Path

path

Ce que tu vois dans n8n

Notes & cas d'usage

C'est la fin de l'URL du webhook. n8n la remplit avec une suite de caractères aléatoire pour éviter toute collision entre deux nœuds, ce qui est prudent mais illisible à communiquer. Remplace-la par quelque chose de parlant dès que l'URL doit être saisie dans la configuration d'un tiers.

Paramètres clés

  • Path : un champ texte, exemple webhook, qui accepte aussi des variables de route introduites par deux-points : /:variable, /path/:variable, /:variable/path, /:variable1/path/:variable2 ou /:variable1/:variable2. Dès qu'une valeur dynamique est utilisée, n8n préfixe le chemin par webhookId.
Cas d'usage
prototyper une API dont /orders/:id doit rester identique d'une version à l'autre.
03

Authentication

authentication

Ce que tu vois dans n8n

Notes & cas d'usage

Rien n'empêche un inconnu d'appeler une URL de webhook ouverte. Ce sélecteur pose un contrôle devant le workflow, et un appel qui échoue au contrôle n'atteint jamais le premier nœud.

Paramètres clés

  • Authentication : basicAuth pour un couple identifiant et mot de passe, headerAuth pour un secret partagé transmis dans l'en-tête de ton choix, jwtAuth pour les appelants qui envoient déjà un jeton signé, none pour une adresse publique.
Cas d'usage
un partenaire qui pousse des commandes prendra headerAuth, parce que la plupart des consoles autorisent un en-tête personnalisé et pas grand-chose de plus.
04

Respond

responseMode

Ce que tu vois dans n8n

Notes & cas d'usage

Détermine à quel moment l'appelant reçoit sa réponse et ce qu'elle contient. C'est ce réglage qui sépare le simple récepteur du point d'entrée sur lequel l'appelant patiente vraiment.

Paramètres clés

  • Respond : onReceived répond dès l'exécution du nœud, avec le message Workflow got started ; lastNode attend et renvoie les données du dernier nœud exécuté ; responseNode confie la réponse à un nœud Respond to Webhook placé plus loin.
  • Response Data : avec lastNode, au choix allEntries pour un tableau, firstEntryJson pour un objet unique, firstEntryBinary pour un fichier, noData pour un corps vide.
  • Property Name : requis avec firstEntryBinary, il nomme la propriété binaire renvoyée.
Cas d'usage
un formulaire de commande qui attend un numéro de confirmation utilise lastNode avec firstEntryJson.
05

Binary File

options.binaryData

Ce que tu vois dans n8n

Notes & cas d'usage

Les requêtes entrantes sont lues comme du JSON, sauf indication contraire. Cette bascule fait accepter un fichier dans la requête, ce qui devient indispensable le jour où un prestataire envoie un PDF plutôt qu'un lien vers ce PDF.

Paramètres clés

  • Binary File : un booléen indiquant que le webhook va recevoir des données binaires. Il n'apparaît qu'avec les méthodes POST, PATCH ou PUT.
Cas d'usage
un scanner ou un outil documentaire qui poste directement le fichier numérisé, que le workflow archive avant d'écrire une ligne dans Postgres.
06

Field Name for Binary Data

options.binaryPropertyName

Ce que tu vois dans n8n

Notes & cas d'usage

Un fichier reçu doit se ranger quelque part sur l'item pour que les nœuds suivants le retrouvent. C'est toute la fonction de cette option, et elle ne sert que si des données binaires arrivent réellement.

Paramètres clés

  • Field Name for Binary Data : le nom du champ de sortie dans lequel le fichier reçu est écrit.
Cas d'usage
nommer le champ d'après son contenu, invoice plutôt qu'un libellé passe-partout, pour que le nœud d'archivage en aval reste lisible et qu'un second fichier n'écrase pas le premier.
07

Ignore Bots

options.ignoreBots

Ce que tu vois dans n8n

Notes & cas d'usage

Colle une URL de webhook dans un outil de discussion et son générateur d'aperçu va la visiter aussitôt. Le workflow démarre, une exécution s'affiche, personne ne l'a demandée. Cette option écarte ces appelants avant que quoi que ce soit ne se déclenche.

Paramètres clés

  • Ignore Bots : un booléen qui ignore les requêtes des robots du type générateurs d'aperçu de lien et robots d'indexation.
Cas d'usage
une URL partagée dans un canal support pendant les tests, où des exécutions fantômes viendraient brouiller l'historique.
08

IP(s) Allowlist

options.ipWhitelist

Ce que tu vois dans n8n

Notes & cas d'usage

L'authentification contrôle un secret, celle-ci contrôle l'adresse. Le réglage prend tout son sens quand l'appelant est un serveur fixe et non un navigateur : la liste des origines légitimes est alors courte et connue d'avance.

Paramètres clés

  • IP(s) Allowlist : une liste d'adresses ou de plages CIDR séparées par des virgules, exemple e.g. 127.0.0.1, 192.168.1.0/24. Vide, elle laisse passer toutes les adresses.
Cas d'usage
un prestataire de paiement qui publie ses adresses sortantes, pour qu'une URL divulguée ne suffise plus à lancer le workflow.
09

No Response Body

options.noResponseBody

Ce que tu vois dans n8n

Notes & cas d'usage

Certains appelants ne lisent qu'un code de statut, d'autres se plaignent d'un corps inattendu. Activer ce réglage envoie la réponse sans aucun corps.

Paramètres clés

  • No Response Body : un booléen qui empêche n8n d'envoyer un corps de réponse. Il est disponible avec Respond réglé sur onReceived.
Cas d'usage
une adresse de supervision ou de notification dont l'appelant ne regarde que le statut, et pour qui le message Workflow got started encombre les journaux sans rien apporter.
10

Property Name

options.responsePropertyName

Ce que tu vois dans n8n

Notes & cas d'usage

La réponse embarque par défaut tout le JSON de l'entrée. Désigner une propriété ici la réduit à cette seule valeur, ce qui arrange les appelants qui attendent une chaîne et non un objet.

Paramètres clés

  • Property Name : le nom de la propriété dont la valeur est renvoyée à la place du JSON complet. Elle apparaît avec Respond sur lastNode et Response Data sur firstEntryJson.
Cas d'usage
renvoyer un message de confirmation construit dans un nœud Edit Fields, en pointant simplement la propriété qui le contient.
11

Raw Body

options.rawBody

Ce que tu vois dans n8n

Notes & cas d'usage

Une fois ce réglage actif, le nœud conserve le corps tel qu'il est arrivé au lieu de l'analyser. Tout ce que l'analyse aurait remodelé, ou refusé, passe intact.

Paramètres clés

  • Raw Body : un booléen indiquant que le nœud reçoit le corps en format brut, en binaire.
Cas d'usage
un appelant qui poste du XML, ou dont la signature est calculée sur les octets exacts du corps : réencoder un JSON déjà analysé casserait la vérification et chaque appel passerait pour une contrefaçon.
12

Response Code

options.responseCode

Ce que tu vois dans n8n

Notes & cas d'usage

Une exécution réussie répond avec un code par défaut. On le remplace quand l'appelant lit le statut pour décider de la suite, ce qui arrive vite avec les prestataires qui relancent dès qu'un code les surprend.

Paramètres clés

  • Response Code : au choix 200, 201, 204, 301, 302, 304, 400, 401, 403, 404, ou customCode.
  • Code : le nombre renvoyé avec customCode, exemple e.g. 400.
Cas d'usage
répondre 201 une fois la fiche créée. L'option est disponible sur tous les modes Respond sauf responseNode.
13

Response Content-Type

options.responseContentType

Ce que tu vois dans n8n

Notes & cas d'usage

Les réponses partent en application/json. Ce champ remplace cet en-tête quand l'appelant attend un autre format, et il ne modifie que le type annoncé, jamais les données elles-mêmes.

Paramètres clés

  • Response Content-Type : un content-type personnalisé renvoyé à la place de application/json, exemple application/xml. Il apparaît avec Respond sur lastNode et Response Data sur firstEntryJson.
Cas d'usage
alimenter un système ancien dont l'analyseur refuse tout ce qui n'est pas annoncé comme du XML.
14

Response Data

options.responseData

Ce que tu vois dans n8n

Notes & cas d'usage

Plutôt que de renvoyer ce que le workflow a produit, ce réglage retourne une chaîne fixe. La réponse est décidée à la conception et ne dépend pas de l'exécution.

Paramètres clés

  • Response Data : le texte personnalisé à envoyer, exemple success. Disponible avec Respond réglé sur onReceived.
Cas d'usage
un prestataire qui n'accepte qu'un mot d'accusé de réception précis pour considérer la livraison faite, et qui relance l'appel tant qu'il lit autre chose.
15

Response Headers

options.responseHeaders

Ce que tu vois dans n8n

Notes & cas d'usage

Ajoute des en-têtes à ce que le nœud renvoie. Chaque entrée est un nom et une valeur, et rien n'empêche d'en empiler autant que l'appelant en réclame.

Paramètres clés

  • Name : le nom de l'en-tête.
  • Value : sa valeur, qui accepte une expression comme {{ $json.token }} quand elle doit venir du workflow.
Cas d'usage
renvoyer un en-tête de corrélation que l'appelant rapproche de sa propre requête, pour que les deux côtés suivent un même appel dans leurs journaux.
Besoin d'aide

Besoin d'aide pour automatiser Webhook avec n8n ?

L'équipe te répond directement.

Chaque message est lu par une personne.

FAQ

Webhook et n8n, les questions fréquentes

01Le nœud Webhook est-il inclus dans n8n ?
Oui. C'est un nœud core, livré avec n8n, aussi bien sur n8n Cloud que sur une instance auto-hébergée en Community Edition sous licence Sustainable Use. Rien à installer, aucun surcoût côté n8n, et le même nœud avec les mêmes 15 paramètres dans les deux cas. Ce qui change, c'est l'URL que joignent tes appelants et ce qui l'entoure : en auto-hébergement, tu relèves le plafond de charge utile avec N8N_PAYLOAD_SIZE_MAX et tu règles N8N_PROXY_HOPS quand n8n est derrière un reverse proxy, alors que n8n Cloud gère l'hébergement et applique son propre délai maximal sur les réponses lentes.
02Que faut-il pour faire fonctionner le nœud Webhook n8n ?
Rien, à proprement parler. Tu poses le nœud, tu publies le workflow, et l'URL de production répond. L'authentification est un choix, pas une obligation : le sélecteur Authentication propose Basic Auth, Header Auth et JWT Auth, et chacune réclame un credential enregistré une fois dans le menu Credentials, réutilisable partout. Réglé sur None, l'endpoint est ouvert à quiconque détient l'URL, ce qui passe pour un test jetable et se paie cher en production. Deux options du nœud resserrent les choses sans aucun credential : l'allowlist d'adresses IP et Ignore Bots.
03Quelles sont les limites du nœud Webhook ?
Trois comptent vraiment. n8n n'enregistre qu'un webhook par combinaison de chemin et de méthode : un second workflow qui demande le même couple est refusé tant que l'autre n'est pas dépublié ou son chemin modifié. La charge utile maximale est de 16MB, relevable seulement en auto-hébergement via N8N_PAYLOAD_SIZE_MAX. Enfin, l'URL de test n'écoute que 120 secondes après un clic sur Listen for test event, puis s'arrête, ce qui surprend qui a collé cette URL dans la console d'un prestataire avant d'attendre. Les données de production ne s'affichent pas dans l'éditeur non plus : elles sont dans l'onglet Executions.
04Quand utiliser le nœud Webhook plutôt que HTTP Request ?
Ça dépend de qui engage la conversation. Le nœud Webhook attend d'être appelé et ouvre le workflow : sa place est en tête, quand un service extérieur signale un événement. HTTP Request appelle une adresse depuis un workflow déjà lancé, et sert notamment quand un nœud dédié laisse de côté une opération d'API HTTP. Les deux se combinent souvent : un workflow expose un webhook, un autre l'appelle avec HTTP Request, ce qui reste la façon la plus simple de tester ton propre endpoint sans demander au prestataire de déclencher un vrai événement.
05n8n ou Make pour recevoir des webhooks ?
Les deux reçoivent des webhooks, la décision se joue donc ailleurs. Make est hébergé, sans option d'auto-hébergement, et facturé à l'opération : prévisible, jusqu'au jour où une adresse bavarde se met à tirer toute la journée. n8n tourne sur Cloud ou sur tes propres serveurs, donc les données d'un appel entrant restent là où tu l'as décidé et le coût suit l'infrastructure plutôt que le volume d'appels. La logique visuelle de Make se prend en main plus vite, n8n offre les expressions et le code quand la charge utile demande un vrai remodelage. Le volume de trafic et l'endroit où doivent vivre les données tranchent en général.
Hack'celeration Lab

Reçois nos tips intégration chaque semaine.

Pas de spam. Désinscription à tout moment.