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 ookcourse_idencourse_name.form.completed: Bevat aanvullende gegevens, zoalstemplate_id,template_name,completed_at,user_template_iden 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 |
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 |
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.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:
user.invited: Wanneer de nieuwe medewerker wordt uitgenodigd.user.first_day: Wanneer de eerste werkdag aanbreekt.course.started: Wanneer de medewerker de onboardingcursus voor het eerst opent.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!


