Webhook

Wat is een webhook?

Een webhook is een manier waarop een softwaresysteem automatisch een ander systeem informeert over een gebeurtenis. Denk aan een geslaagde betaling, een nieuw ingevuld formulier of een gewijzigde bestelling. Zodra de gebeurtenis plaatsvindt, stuurt het eerste systeem direct relevante gegevens naar een vooraf ingesteld internetadres. Dit adres wordt het webhook endpoint genoemd.

Webhooks worden veel gebruikt binnen koppelingen en geautomatiseerde workflows. Een betaling kan bijvoorbeeld een webhook activeren, waarna een webshop de bestelling verwerkt, de voorraad bijwerkt en een bevestiging verstuurt. De webhook geeft daarbij het startsignaal en levert gegevens aan die in de volgende actions kunnen worden gebruikt.

Hoe werkt een webhook?

Bij het instellen van een webhook geef je aan naar welk endpoint meldingen moeten worden gestuurd en voor welke gebeurtenissen je deze wilt ontvangen. Wanneer zo’n gebeurtenis optreedt, verstuurt het bronsysteem een HTTP-request naar dat endpoint. De meegestuurde gegevens worden de payload genoemd en staan vaak in een formaat zoals JSON. Het ontvangende systeem leest de payload en bepaalt welke workflow of actie moet volgen.

Het ontvangende systeem stuurt meestal een statuscode terug om te bevestigen dat de melding goed is ontvangen. Bij een storing kan het verzendende systeem de webhook later opnieuw aanbieden. Daardoor moet een workflow rekening houden met dubbele meldingen. Een betaling of bestelling mag bijvoorbeeld niet twee keer worden verwerkt omdat dezelfde webhook opnieuw binnenkomt.

Het verschil tussen een webhook en API

Een API wordt vaak actief aangeroepen om informatie op te vragen of een opdracht uit te voeren. Een systeem kan bijvoorbeeld iedere paar minuten controleren of er nieuwe bestellingen zijn. Dit herhaaldelijk opvragen wordt polling genoemd. Bij een webhook stuurt het andere systeem zelf een melding zodra er iets gebeurt. Hierdoor kan een proces sneller starten en zijn minder onnodige controles nodig.

Webhooks en API’s worden vaak samen gebruikt. De webhook meldt dat er een gebeurtenis heeft plaatsgevonden, waarna een API aanvullende gegevens ophaalt of een vervolghandeling uitvoert. Controleer bij het instellen welke gebeurtenissen nodig zijn en beveilig het endpoint tegen vervalste berichten. Webhook signatures kunnen helpen om te controleren of een melding werkelijk van het verwachte systeem afkomstig is. Ook logging en foutafhandeling zijn belangrijk om mislukte of dubbele leveringen te herkennen.

D2e99129 a242 4d39 94e8 4d250d781bca min

Klik_gevonden? Kom een koffietje met ons drinken