Naar de hoofdinhoud

Webhook-methoden en Triggers uitgelegd

Een overzicht van de beschikbare HTTP-methoden en Triggers voor Webhooks in Appical en hoe je de juiste opties kiest voor jouw integratie.

Overzicht

Wanneer je een Webhook aanmaakt in Appical, selecteer je een Methode (Method) en minimaal één Trigger.

De methode bepaalt hoe Appical het verzoek naar het ontvangende systeem verstuurt. De Trigger bepaalt welke gebeurtenis in Appical ervoor zorgt dat het verzoek wordt verzonden.

Voorbeeld

Je organisatie wil dat het HR-systeem automatisch een update ontvangt zodra een nieuwe medewerker de onboardingcursus heeft afgerond.

Hiervoor kun je course.completed als Trigger selecteren. Welke methode je kiest, hangt af van wat het HR-systeem verwacht. In de meeste gevallen is dit POST.


Een methode kiezen

→ Selecteer de methode die het ontvangende systeem verwacht

Wanneer je een Webhook aanmaakt of bewerkt, kies je bij Method de gewenste HTTP-methode.

Standaard is POST geselecteerd. Appical verstuurt bij elke ondersteunde methode een verzoek met gegevens in JSON-formaat.

Methode

Wanneer gebruik je deze?

POST

De standaard en meest gebruikte methode. Gebruik deze wanneer het ontvangende systeem informatie over gebeurtenissen vanuit Appical moet ontvangen.

GET

Gebruik deze wanneer het ontvangende systeem specifiek een GET-verzoek verwacht. Dit komt minder vaak voor bij Webhooks.

PUT

Gebruik deze wanneer het ontvangende systeem verwacht dat een bestaand record volledig wordt bijgewerkt.

PATCH

Gebruik deze wanneer het ontvangende systeem verwacht dat een deel van een bestaand record wordt bijgewerkt.

DELETE

Gebruik deze wanneer het ontvangende systeem specifiek een DELETE-verzoek verwacht.

📌 Let op: Welke methode je moet gebruiken, wordt bepaald door het ontvangende systeem. Weet je niet zeker welke je moet kiezen? Neem dan contact op met de persoon of het team dat verantwoordelijk is voor dat systeem.


Welke gegevens ontvangt het andere systeem?

Elk Webhook-verzoek bevat gegevens in JSON-formaat, waaronder:

  • De naam van de gebeurtenis.

  • Het tijdstip waarop de gebeurtenis plaatsvond.

  • Het ID van de organisatie.

  • Een data-object met informatie over de gebruiker en de gebeurtenis.

Elke gebeurtenis bevat dezelfde basisgegevens van de gebruiker. Bij gebeurtenissen rondom cursussen en formulieren worden aanvullende gegevens meegestuurd.

Voorbeeld van een Webhook-verzoek:

{   
"event": "course.completed",
"delivered_at": "2026-06-01T09:30:00Z",
"application_id": 123,
"data": {
"user_id": 42,
"user_email": "[email protected]",
"user_first_name": "Jane",
"user_last_name": "Doe",
"user_first_day": "2026-06-01",
"user_application_id": 99,
"user_remote_id": "ext-12345",
"course_id": 7,
"course_name": "Welcome to the team"
}
}

Toelichting op de gegevens:

  • user_remote_id: Het externe ID van de gebruiker, bijvoorbeeld het ID uit het HR-systeem of een import. Als er geen extern ID is ingesteld, blijft dit veld leeg.

  • delivered_at: Het tijdstip waarop de gebeurtenis plaatsvond, niet het moment waarop het verzoek is verstuurd. Als je een gebeurtenis opnieuw verstuurt (Replay), blijft de oorspronkelijke inhoud ongewijzigd.

  • user.anonymized: Bevat de gegevens van de gebruiker zoals deze waren vóór het anonimiseren. Zo kan het ontvangende systeem de gebruiker nog herkennen.

  • course.*: Gebeurtenissen rondom cursussen bevatten ook course_id en course_name.

  • form.completed: Bevat aanvullende gegevens, zoals template_id, template_name, completed_at, user_template_id en een lijst met antwoorden (answers). Per antwoord worden de categorie, vraagtekst, het vraagtype, het gegeven antwoord en het tijdstip van de laatste wijziging meegestuurd.

→ Headers die bij elk verzoek worden meegestuurd

Naast de JSON-gegevens verstuurt Appical ook HTTP-headers.

Header

Waarde

Content-Type

application/json

webhook-id

Een uniek ID voor de gebeurtenis. Bij het opnieuw versturen blijft dit ID hetzelfde, zodat het ontvangende systeem dubbele gebeurtenissen kan herkennen en negeren. Testgebeurtenissen beginnen met test-.

webhook-timestamp

Het tijdstip waarop het verzoek is verstuurd, uitgedrukt in Unix-seconden.

webhook-signature

Wordt alleen meegestuurd als er een Signing Secret is ingesteld. Het formaat begint met v1,, gevolgd door de handtekening. Bekijk het artikel Webhook-handtekeningen verifiëren in Appical voor meer informatie.

Custom headers

Eventuele extra headers die de Admin heeft ingesteld. Als een aangepaste header dezelfde naam heeft als een van de standaardheaders hierboven, wordt deze overschreven.


Triggers kiezen

→ Bepaal wanneer een Webhook wordt verstuurd

Bij Triggers selecteer je de gebeurtenissen waarvoor het ontvangende systeem een melding moet krijgen.

Je kunt één of meerdere Triggers aan dezelfde Webhook koppelen.

Appical ondersteunt momenteel 12 Triggers:

Trigger

Wanneer wordt deze geactiveerd?

user.created

Wanneer een nieuw gebruikersaccount wordt aangemaakt, bijvoorbeeld door een Admin, via een CSV-import, de API of een integratie.

user.invited

Wanneer een gebruiker via een uitnodiging aan de organisatie wordt toegevoegd. Deze gebeurtenis wordt meestal samen met user.created verstuurd.

user.invitation_accepted

Wanneer een gebruiker de uitnodiging accepteert door een wachtwoord in te stellen of voor het eerst inlogt via SSO.

user.activated

Wanneer een gearchiveerde gebruiker opnieuw wordt geactiveerd.

user.archived

Wanneer een actieve gebruiker wordt gearchiveerd.

user.anonymized

Wanneer de persoonsgegevens van een gebruiker worden geanonimiseerd.

user.deleted

Wanneer een gebruiker uit de organisatie wordt verwijderd.

user.first_day

Wordt dagelijks geactiveerd voor iedere actieve nieuwe medewerker van wie de eerste werkdag is aangebroken.

course.assigned

Wanneer een cursus aan een gebruiker wordt toegewezen.

course.started

Wanneer een gebruiker een cursus voor het eerst opent.

course.completed

Wanneer een gebruiker een cursus volledig heeft afgerond.

form.completed

Wanneer een gebruiker een formulier indient. Deze Trigger wordt bij elke nieuwe indiening opnieuw geactiveerd.

→ Meerdere Triggers selecteren

Je kunt meerdere Triggers aan één Webhook koppelen.

Voorbeeld

Je wilt dat het HR-systeem automatisch op de hoogte blijft van de voortgang van een nieuwe medewerker tijdens het onboardingproces.

Hiervoor kun je de volgende Triggers selecteren:

  1. user.invited: Wanneer de nieuwe medewerker wordt uitgenodigd.

  2. user.first_day: Wanneer de eerste werkdag aanbreekt.

  3. course.started: Wanneer de medewerker de onboardingcursus voor het eerst opent.

  4. course.completed: Wanneer de medewerker de onboardingcursus heeft afgerond.

Zodra een van deze gebeurtenissen plaatsvindt, verstuurt Appical automatisch de bijbehorende gegevens naar de ingestelde URL.

📌 Let op: Wil je verschillende gebeurtenissen naar verschillende systemen of URL's versturen? Maak dan aparte Webhooks aan en selecteer per Webhook de juiste Triggers.


👉 Heeft dit artikel je geholpen? Laat het ons weten via de knoppen hieronder. Kom je er nog niet uit? Neem dan gerust contact op met ons Supportteam. We helpen je graag verder!

Was dit een antwoord op uw vraag?