# Een aanvraag versturen vanuit een n8n-workflow

Maak een formbase-aanvraag aan vanuit elke n8n-workflow, vul de antwoorden die je al weet vooraf in en vergrendel ze, en stuur de link per e-mail of via je eigen kanaal.

## Een aanvraag versturen vanuit een n8n-workflow

Een aanvraag vraagt één met naam genoemde ontvanger om een formulier in te vullen. Deze handleiding voegt een Create request-node toe aan een workflow, vult de bedrijfsnaam van de leverancier vooraf in zodat die hem niet kan wijzigen, en geeft de link door aan de volgende node.

<p>
  Je hebt een <a href="/nl/guides/n8n/connect">formbase-credential in n8n</a> nodig en een gepubliceerd formulier. Wat een aanvraag is, en
  elke optie die hij meeneemt, staat in <a href="/nl/requests/creating-requests">Een aanvraag maken</a>; deze handleiding toont waar die
  opties in n8n staan.
</p>

<h2 id="add-the-node">1. Voeg de node Create request toe</h2>

<p>
  Begin met de trigger die de aanvraag moet versturen: een nieuwe rij in een sheet, een deal gemarkeerd als gewonnen in je CRM, een
  planning. Deze handleiding gebruikt een handmatige trigger en een <strong>Edit Fields</strong>-node genaamd <em>Supplier</em> die{' '}
  <code>supplier_id</code>, <code>company_name</code> en <code>contact_email</code> bevat. Klik op <strong>+</strong> erna, zoek naar{' '}
  <strong>formbase</strong>, en kies <strong>Create request</strong>.
</p>

<h2 id="form-and-recipient">2. Kies het formulier en de ontvanger</h2>

<ul>
  <li>
    <strong>Form</strong> is het formulier dat de ontvanger invult. Kies het uit de lijst, of schakel over naar <strong>ID</strong> en plak
    het id ervan. Het moet gepubliceerd zijn.
  </li>
  <li>
    <strong>Recipient Email</strong> komt meestal van de invoer, zoals <code>{'{{ $json.contact_email }}'}</code>. Het is nodig voor
    e-mailbezorging en voor herinneringen.
  </li>
</ul>

<h2 id="prefill-and-lock">3. Vul vooraf in en vergrendel wat je al weet</h2>

<p>
  Zodra je het formulier kiest, toont <strong>Values to Send</strong> elke vraag die je vooraf kunt invullen, met zijn titel en{' '}
  <a href="/nl/requests/field-keys">veldsleutel</a>, zoals <em>Company name (company_name)</em>. Bestandsupload-, handtekening-, betalings-
  en afspraakvragen, berekende velden en Documentenblokken staan er niet in: die levert de ontvanger of het formulier zelf. Koppel de
  antwoorden die je al hebt; velden die je leeg laat, worden niet verstuurd. De ontvanger ziet de gekoppelde velden ingevuld.
</p>

<p>
  <strong>Mapping Column Mode</strong> kan ook <strong>Map Automatically</strong> zijn: dan wordt elk invoerveld dat is genoemd naar een
  veldsleutel van het formulier verstuurd. Dat past bij een invoer die je met een Edit Fields-node voor dit formulier hebt vormgegeven.
</p>

<p>
  Verborgen velden van het formulier staan ook in de lijst, gemarkeerd met <em>· context</em>. De ontvanger kan ze niet wijzigen en ziet ze
  alleen waar het formulier ze noemt. Zie{' '}
  <a href="/nl/requests/creating-requests#three-buckets">Vooraf invullen, vergrendelde velden en context</a> voor het verschil.
</p>

<p>
  Kies een vraag onder <strong>Read-Only Field Names or IDs</strong> om hem te vergrendelen, zodat de ontvanger hem wel ziet maar niet kan
  wijzigen. Een vergrendelde vraag moet ook vooraf zijn ingevuld. Als het formulier een Documentenblok heeft, neemt{' '}
  <strong>Documents</strong> bestanden over van een binair veld van het invoeritem.
</p>

<h2 id="additional-fields">4. Voeg de opties toe die je nodig hebt</h2>

<p>
  Klik op <strong>Add Field</strong> onder <strong>Additional Fields</strong>:
</p>

<ul>
  <li>
    <strong>Delivery</strong> bepaalt wie de link verstuurt. <strong>Email the Invitation</strong> laat formbase de{' '}
    <a href="/nl/requests/invitations-and-reminders">uitnodiging en herinneringen</a> versturen, en vereist een Pro- of Business-abonnement.{' '}
    <strong>None</strong>, de standaard, verstuurt geen uitnodiging: een latere node stuurt de <code>url</code> van de aanvraag, via Slack,
    sms of je eigen e-mailtool.
  </li>
  <li>
    <strong>Reminders</strong> weggelaten volgt het herinneringsschema van het formulier. Met een Recipient Email worden die herinneringen
    gemaild, ook wanneer Delivery op None staat. Voeg <strong>Reminders</strong> toe en laat het leeg om er geen te versturen, of vul een
    schema in zoals <code>2d, 5d</code>, wat Pro of Business vereist.
  </li>
  <li>
    <strong>External ID</strong> is je eigen ID voor dit stuk werk, zoals <code>supplier-{'{{ $json.supplier_id }}'}</code>. Een latere
    workflow kan <a href="/nl/guides/n8n/manage-requests#find-a-request">de aanvraag ermee opzoeken</a>. Het is ook de{' '}
    <a href="/nl/requests/creating-requests#idempotency">idempotentiesleutel</a>: draai de node opnieuw met dezelfde External ID en dezelfde
    parameters, en je krijgt dezelfde aanvraag terug met <code>deduplicated: true</code>, niet een tweede. Binnen 30 dagen mislukt dezelfde
    External ID met een gewijzigde parameter, Test Mode inbegrepen, met{' '}
    <em>CONFLICT: Idempotency key … was already used for a different request</em>.
  </li>
  <li>
    <strong>Test Mode</strong> maakt een <a href="/nl/requests/creating-requests#test-mode">testaanvraag</a> aan: er wordt niets gemaild en
    hij telt nergens mee.
  </li>
  <li>
    <strong>Recipient Name</strong>, <strong>Language</strong>, <strong>Expires At</strong> en <strong>Metadata</strong> zijn optioneel. Een
    aanvraag verloopt na 30 dagen tenzij je een andere datum instelt, op zijn hoogst 365 dagen verderop.
  </li>
  <li>
    <strong>Callback URL</strong> stuurt de uitkomst naar een URL van jezelf. Om de uitkomst terug te krijgen in deze workflow, zet je in
    plaats daarvan <a href="/nl/guides/n8n/request-outcome#wait-for-the-outcome">Wait for the Outcome</a> aan.
  </li>
</ul>

<h2 id="run-the-node">5. Voer de node uit</h2>

<p>
  Klik op <strong>Execute step</strong>. formbase maakt de aanvraag aan en geeft hem terug: <code>id</code>, <code>status</code>{' '}
  <code>pending</code>, en <code>url</code>, de link voor de ontvanger. Koppel <code>{'{{ $json.url }}'}</code> aan de node die hem
  verstuurt. <code>deliveryStatus</code> is <code>not_requested</code> wanneer Delivery op None staat, omdat formbase niets heeft verstuurd.
</p>

> ⚠️ **De node uitvoeren maakt een echte aanvraag aan**
> <p>
>     Tenzij <strong>Test Mode</strong> aan staat, is elke run, inclusief <strong>Execute step</strong> in de editor, een echte aanvraag: bij
>     e-mailbezorging krijgt de ontvanger de uitnodiging. Zet Test Mode aan terwijl je de workflow bouwt. Een testaanvraag start nooit een
>     workflow met een <a href="/nl/guides/n8n/request-outcome">aanvraagtrigger</a>. Zet Test Mode uit en wijzig de External ID voordat je
>     publiceert, want de oude hoort bij de testaanvraag.
>   </p>

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

<div class="not-prose grid gap-3 sm:grid-cols-2 mb-8">
  - [Reageren op de uitkomst van een aanvraag in n8n](/nl/guides/n8n/request-outcome) — Vertak wanneer de ontvanger goedkeurt, afwijst of om wijzigingen vraagt.
  - [Aanvragen opzoeken, eraan herinneren en annuleren in n8n](/nl/guides/n8n/manage-requests) — Zoek een aanvraag op External ID, spoor de ontvanger aan, of trek hem in.
</div>
