Guides · n8n (auto-hébergé)
Envoyer une demande depuis un workflow n8n
Une demande demande à un destinataire nommé de remplir un formulaire. Ce guide ajoute un nœud Create request à un workflow, préremplit le nom de l'entreprise du fournisseur pour qu'il ne puisse pas le modifier, et transmet le lien au nœud suivant.
Last checked
Il vous faut un credential formbase dans n8n et un formulaire publié. Ce qu’est une demande, et chaque option qu’elle prend, se trouve dans Créer une demande ; ce guide montre où ces options se trouvent dans n8n.
1. Ajoutez le nœud Create request
Commencez par le déclencheur qui doit envoyer la demande : une nouvelle ligne dans une feuille de calcul, une affaire marquée gagnée dans
votre CRM, une planification. Ce guide utilise un déclencheur manuel et un nœud Edit Fields nommé Supplier qui
porte supplier_id, company_name et contact_email. Cliquez sur + après lui,
cherchez formbase, et choisissez Create request.
2. Choisissez le formulaire et le destinataire
![Le nœud Create request : entrée depuis Supplier à gauche ; Form [Guide] Supplier onboarding, Recipient Email {{ $json.contact_email }}, et Values to Send avec company_name et contact_email mappés depuis l'entrée ; à droite la sortie avec deduplicated true, deliveryStatus not_requested, externalId supplier-SUP-1042, status pending et une url sur form.formbase.so](/guides/n8n/n8n-create-request.png)
Form est le formulaire que le destinataire remplit. Choisissez-le dans la liste, ou passez à ID et collez son ID. Il doit être publié.
Recipient Email vient généralement de l’entrée, comme
{{ $json.contact_email }}. Il est nécessaire pour la livraison par e-mail et pour les rappels.
3. Préremplissez et verrouillez ce que vous savez déjà
Une fois le formulaire choisi, Values to Send liste chaque question que vous pouvez préremplir par son titre et sa clé de champ, comme Company name (company_name). Les questions de téléversement de fichier, de signature, de paiement et de rendez-vous, les champs calculés et les blocs Documents n’y figurent pas : le destinataire ou le formulaire les fournit. Mappez les réponses que vous avez déjà ; les champs laissés vides ne sont pas envoyés. Le destinataire voit celles qui sont mappées déjà remplies.
Mapping Column Mode peut aussi être Map Automatically : alors chaque champ d’entrée nommé d’après une clé de champ du formulaire est envoyé. Cela convient à une entrée que vous avez façonnée pour ce formulaire avec un nœud Edit Fields.
Les champs cachés du formulaire sont listés aussi, marqués · context. Le destinataire ne peut pas les modifier et ne les voit que là où le formulaire les mentionne. Voir Préremplissage, champs verrouillés, et contexte pour la différence.

Choisissez une question sous Read-Only Field Names or IDs pour la verrouiller, afin que le destinataire puisse la voir mais pas la modifier. Une question verrouillée doit aussi être préremplie. Si le formulaire a un bloc Documents, Documents prend des fichiers depuis un champ binaire de l’élément d’entrée.
4. Ajoutez les options dont vous avez besoin
Cliquez sur Add Field sous Additional Fields :
Delivery décide qui envoie le lien. Email the Invitation laisse formbase envoyer l’invitation et les rappels, et nécessite un plan Pro ou Business. None, la valeur par défaut, n’envoie aucune invitation : un nœud ultérieur envoie l’
urlde la demande, par Slack, SMS ou votre propre outil e-mail.Reminders laissé de côté suit le planning de rappels du formulaire. Avec un Recipient Email, ces rappels sont envoyés par e-mail même quand Delivery est réglé sur None. Ajoutez Reminders et laissez-le vide pour n’en envoyer aucun, ou entrez un planning comme
2d, 5d, ce qui nécessite Pro ou Business.External ID est votre propre ID pour cette tâche, comme
supplier-{{ $json.supplier_id }}. Un workflow ultérieur peut retrouver la demande par cet ID. C’est aussi la clé d’idempotence : exécutez à nouveau le nœud avec le même External ID et les mêmes paramètres, et vous récupérez la même demande, avecdeduplicated: true, pas une seconde. Dans les 30 jours, le même External ID avec un paramètre modifié, Test Mode compris, échoue avec CONFLICT: Idempotency key … was already used for a different request.Test Mode crée une demande de test : rien n’est envoyé par e-mail et elle ne compte nulle part.
Recipient Name, Language, Expires At et Metadata sont optionnels. Une demande expire après 30 jours sauf si vous réglez une autre date, au maximum 365 jours plus tard.
Callback URL envoie le résultat à une URL de votre choix. Pour récupérer le résultat dans ce workflow, activez plutôt Wait for the Outcome.
5. Exécutez le nœud
Cliquez sur Execute step. formbase crée la demande et la renvoie : id, status
pending, et url, le lien pour le destinataire. Mappez {{ $json.url }} dans le nœud qui
l’envoie. deliveryStatus vaut not_requested quand Delivery est réglé sur None, car formbase n’a rien envoyé.
Exécuter le nœud crée une vraie demande
Sauf si Test Mode est activé, chaque exécution, y compris Execute step dans l’éditeur, est une vraie demande : avec la livraison par e-mail, le destinataire reçoit l’invitation. Activez Test Mode pendant que vous construisez le workflow. Une demande de test ne démarre aucun workflow avec un déclencheur de demande. Avant de publier, désactivez Test Mode et changez l’External ID, car l’ancien appartient à la demande de test.