# Agir selon le résultat d'une demande

Démarrez un Zap quand une demande est terminée, expire ou est annulée, et bifurquez selon que le destinataire a approuvé, refusé ou demandé des modifications.

## Agir selon le résultat d'une demande

Ce guide construit un Zap qui envoie un e-mail à votre équipe quand un destinataire répond à une demande d'approbation, avec sa décision dans l'objet. Un filtre le limite ensuite aux approbations.

<p>
  Il vous faut une <a href="/fr/guides/zapier/connect">connexion formbase dans Zapier</a> et des demandes sur lesquelles agir, envoyées
  depuis un Zap comme dans <a href="/fr/guides/zapier/send-a-request">Envoyer une demande depuis un Zap</a> ou depuis n'importe où ailleurs
  : le tableau de bord, l'API ou un agent. Pour bifurquer selon un verdict, le formulaire a besoin d'une{' '}
  <a href="/fr/requests/decisions-and-approvals">question de décision</a>.
</p>

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

<p>
  Créez un Zap, choisissez <strong>formbase</strong> comme app de déclenchement, et cherchez <strong>Request</strong> :
</p>

<p>
  Choisissez <strong>Request Completed</strong>, choisissez votre compte, et choisissez le formulaire. Le Zap se déclenche seulement pour
  les demandes de ce formulaire.
</p>

<h2 id="test-the-trigger">2. Testez le déclencheur</h2>

<p>
  Cliquez sur <strong>Test trigger</strong>. Comme pour les déclencheurs de lien public, Zapier charge un exemple construit à partir des
  questions du formulaire, pour que vous puissiez mapper les champs avant qu'aucune demande ne soit terminée :
</p>

<p>
  Là où une clé de champ se lit différemment du titre de sa question, le libellé nomme la clé entre parenthèses.{' '}
  <strong>Your Decision (decision)</strong> est la réponse dont la clé de champ est <code>decision</code>, et un champ mappé l'affiche sous
  la forme <strong>Data › Answers › Decision</strong>.
</p>

<p>
  En plus de <strong>answers</strong> et <strong>display</strong>, un événement de demande porte un groupe <strong>request</strong> :
</p>

<ul>
  <li>
    <strong>Recipient Email</strong>, <strong>Recipient Name</strong>, <strong>Request External ID</strong>, <strong>Metadata</strong> et{' '}
    <strong>Context</strong> : ce que vous avez réglé quand vous avez créé la demande. Utilisez l'External ID pour retrouver
    l'enregistrement concerné par la demande.
  </li>
  <li>
    <strong>Outcome</strong> : <code>approve</code>, <code>decline</code> ou <code>changes</code>, la réponse du destinataire à la question
    de décision. Sur ce formulaire, c'est la même valeur que <strong>Answers › Decision</strong>, parce que la clé de la question de
    décision est <code>decision</code>. Outcome est absent quand le formulaire n'a pas de question de décision.
  </li>
</ul>

<p>
  Chaque champ est décrit dans le <a href="/fr/requests/callbacks#payload">payload du callback</a> ; Zapier reçoit le même événement.
</p>

<h2 id="send-the-email">3. Mappez l'action</h2>

<p>
  Ajoutez l'action. Ce guide utilise <strong>Email by Zapier</strong> › <strong>Send Outbound Email</strong>, avec le nom du destinataire et
  sa décision dans l'objet et l'External ID dans le corps :
</p>

<p>
  Publiez le Zap. Quand le destinataire termine la demande, l'e-mail arrive avec un objet comme <em>Ada Lovelace answered: Approve</em>, et
  l'exécution apparaît dans <strong>Zap history</strong>.
</p>

<h2 id="branch-on-the-outcome">4. Ne continuer que sur approbation</h2>

<p>
  Pour agir seulement sur un verdict, ajoutez une étape <strong>Filter</strong> entre le déclencheur et l'action. Réglez-la pour continuer
  seulement si <strong>Data › Answers › Decision</strong> correspond exactement à <code>approve</code> :
</p>

<p>
  La clé de champ de la question Decision est toujours <code>decision</code>, donc <strong>Data › Answers › Decision</strong> porte le même
  nom sur tous les formulaires. <strong>Data › Request › Outcome</strong> porte la même valeur.
</p>

<p>
  Comparez avec la valeur de <strong>answers</strong>, pas le libellé de <strong>display</strong> : le libellé change quand vous renommez
  l'option ou que le destinataire répond dans une autre langue, pas la valeur. Pour traiter chaque verdict différemment, utilisez{' '}
  <strong>Paths</strong> plutôt qu'un filtre, un chemin par valeur.
</p>

> ℹ️ **Filters et Paths nécessitent un plan Zapier payant**
> <p>
>     Un Zap avec une étape Filter ou Paths a plus de deux étapes, et le plan Free de Zapier ne publie que des Zaps de deux étapes. En Free,
>     gardez le déclencheur et une action, et bifurquez dans l'app vers laquelle l'action écrit.
>   </p>

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

<ul>
  <li>
    <strong>C'était une demande de test.</strong> Qu'elle vienne de Test Request activé ou de <strong>Essayez par vous-même</strong>, une
    demande de test ne démarre jamais un Zap. Seul son <a href="/fr/requests/callbacks">callback</a> se déclenche. Envoyez une vraie demande
    pour vérifier le Zap.
  </li>
  <li>
    <strong>La demande concernait un autre formulaire.</strong> Le déclencheur écoute le formulaire que vous avez choisi à l'étape 1.
  </li>
  <li>
    <strong>Le Zap est désactivé, ou utilise une connexion vers un autre espace de travail.</strong> Voir les vérifications dans{' '}
    <a href="/fr/guides/zapier/public-link-submissions#troubleshooting">le guide du lien public</a>.
  </li>
</ul>

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

<div class="not-prose grid gap-3 sm:grid-cols-2 mb-8">
  - [Trouver, relancer et annuler des demandes](/fr/guides/zapier/manage-requests) — Trouvez une demande par External ID, relancez le destinataire, ou retirez-la.
  - [Décisions et approbations](/fr/requests/decisions-and-approvals) — La question de décision et ses trois valeurs.
</div>
