# Démarrer un workflow n8n à partir des soumissions par lien public

Exécutez un workflow n8n quand quelqu'un soumet, modifie ou abandonne un formulaire via son lien de partage, et transmettez les réponses au nœud suivant.

## Démarrer un workflow n8n à partir des soumissions par lien public

Ce guide construit un workflow à deux nœuds : une nouvelle soumission au formulaire d'intégration fournisseur arrive dans un formbase Trigger, et un nœud Edit Fields en extrait les réponses. Placez votre nœud e-mail, Sheets, Slack ou CRM après lui.

<p>
  Il vous faut un <a href="/fr/guides/n8n/connect">credential formbase dans n8n</a> et un formulaire publié avec un{' '}
  <a href="/fr/sharing-publishing/sharing-embedding#share-links">lien de partage</a>. Votre n8n doit être joignable depuis internet en HTTPS
  ; voir <a href="/fr/guides/n8n/install-the-node">Installer le nœud formbase dans n8n</a>. Une soumission sur un lien de demande ne démarre
  pas ces workflows ; voir <a href="/fr/guides/n8n/request-outcome">Agir selon le résultat d'une demande dans n8n</a> pour cela.
</p>

<h2 id="add-the-trigger">1. Ajoutez le déclencheur</h2>

<p>
  Créez un workflow, cliquez sur <strong>+</strong>, cherchez <strong>formbase</strong> et choisissez <strong>formbase Trigger</strong>.
  Choisissez le credential, le formulaire, et l'un des trois événements de lien public sous <strong>Event</strong> :
</p>

La modification après soumission</a> activée pour le formulaire.',
      ],
    },
    {
      label: 'Public Link Submission Abandoned',
      cells: [
        "Un répondant laisse le formulaire inachevé pendant la durée définie sous <strong>Consider Abandoned After</strong> (12 heures à 1 semaine). formbase vérifie une fois par heure, donc l'exécution peut arriver jusqu'à une heure plus tard.",
        'Un plan Pro ou Business, qui enregistre les <a href="/fr/submissions-analytics/partial-submissions">soumissions partielles</a>.',
      ],
    },
  ]}
/>

<h2 id="listen-for-a-test-event">2. Écoutez un événement de test</h2>

<p>
  Cliquez sur <strong>Execute step</strong>. Le nœud affiche <em>Listening for test event</em>, et formbase commence à envoyer les
  événements de ce formulaire vers l'URL de test du nœud pendant deux minutes. Ouvrez le lien de partage du formulaire dans un autre onglet
  et soumettez-le dans ce délai. La soumission arrive dans le nœud en quelques secondes :
</p>

<p>
  n8n n'a pas d'exemple préconstruit : le test est une vraie soumission, et <strong>test</strong> vaut <code>false</code>. Chaque réponse
  apparaît deux fois :
</p>

<ul>
  <li>
    <strong>data.answers</strong> porte la valeur qu'un workflow compare, sous la <a href="/fr/requests/field-keys">clé de champ</a> de la
    question : une clé d'option comme <code>yes</code>, un nombre, une date, ou une liste de fichiers.
  </li>
  <li>
    <strong>data.display</strong> porte le texte qu'une personne lit, comme <code>Yes</code>.
  </li>
</ul>

<p>
  Utilisez <strong>display</strong> dans les messages et <strong>answers</strong> dans les conditions. Voir la{' '}
  <a href="/fr/developers/webhooks-reference#fields-vs-answers">référence des webhooks</a> pour les deux.
</p>

<p>
  Les soumissions abandonnées arrivent des heures plus tard, donc <strong>Execute step</strong> ne peut pas en capter une. Pour cet
  événement, publiez le workflow et consultez <strong>Executions</strong>.
</p>

<h2 id="map-the-fields">3. Extrayez les réponses</h2>

<p>
  Ajoutez un nœud <strong>Edit Fields (Set)</strong> après le déclencheur. Glissez des réponses depuis le panneau d'entrée vers{' '}
  <strong>Fields to Set</strong>, ou tapez les expressions vous-même :
</p>

<p>
  Le nœud suivant, disons Gmail ou Google Sheets, lit <code>{'{{ $json.company }}'}</code> et les autres champs à partir d'ici. Quand une
  question est renommée, sa clé de champ reste la même, donc ces expressions continuent de fonctionner.
</p>

<h2 id="publish-and-check">4. Publiez et vérifiez une exécution réelle</h2>

<p>
  Cliquez sur <strong>Publish</strong>, donnez un nom à la version, et confirmez. formbase envoie désormais chaque nouvelle soumission vers
  l'URL de production du workflow. Dépublier le workflow arrête cela.
</p>

<p>
  Soumettez le formulaire une fois de plus et ouvrez l'onglet <strong>Executions</strong>. L'exécution apparaît en quelques secondes. Les
  exécutions démarrées avec <strong>Execute step</strong> portent une icône de fiole ; une exécution de production n'en a aucune :
</p>

<h2 id="troubleshooting">Si le workflow ne démarre pas</h2>

<ul>
  <li>
    <strong>Le formulaire a été soumis via un lien de demande.</strong> Cela déclenche <strong>Request Completed</strong>, pas Public Link
    Submission Created.
  </li>
  <li>
    <strong>Le workflow n'est pas publié.</strong> Seul <strong>Execute step</strong> écoute pendant que le workflow est un brouillon, et
    seulement jusqu'à l'arrivée du premier événement ou que deux minutes passent.
  </li>
  <li>
    <strong>
      Le déclencheur affiche <em>targetUrl must use https</em>.
    </strong>{' '}
    Votre n8n distribue une URL en <code>http://</code> ou une URL privée. Voir{' '}
    <a href="/fr/guides/n8n/install-the-node#public-address">Indiquez à n8n son adresse publique</a>.
  </li>
  <li>
    <strong>Le credential atteint un autre espace de travail.</strong> Le déclencheur écoute le formulaire dans l'espace de travail que
    cible son credential.
  </li>
</ul>

> ℹ️ **Vérification de la signature**
> <p>
>     Le formbase Trigger vérifie l'en-tête <code>X-formbase-Signature</code> de chaque événement et rejette celui qui échoue. Gardez
>     l'horloge de l'hôte n8n précise : un événement signé il y a plus de cinq minutes est rejeté aussi.
>   </p>

<h2 id="next">Suite</h2>

<div class="not-prose grid gap-3 sm:grid-cols-2 mb-8">
  - [Envoyer une demande depuis un workflow n8n](/fr/guides/n8n/send-a-request)
  - [Intégrations natives](/fr/integrations/overview) — Slack, Sheets et Notion sans n8n.
</div>
