Gebruik van WebHooks

Even een korte introductie over wat WebHooks nu eigenlijk zijn:

Wat is een webhook
Een webhook is een API concept en groeit snel in populariteit. Steeds meer van wat we doen op het web kan beschouw worden als events. Een webhook wordt getriggerd door een event in een bron applicatie en levert een actie op in een doel applicatie. Webhooks zijn zeer nuttig om op een heel eenvoudige manier acties te implementeren.

Een webhook wordt ook wel een HTTP push of een web callback genoemd. Het is een manier om een doel applicatie te voorzien van nieuwe of gewijzigde gegevens. Soms worden webhooks ook wel “Reverse APIs” genoemd.

Voordelen
Een webhook kan relatief snel worden geimplementeerd. Soms zelfs zonder programmeren (bijvoorbeeld bij gebruik van een integratieplatform, zoals Zapier of Microsoft Flow).
T.o.v. polling integraties is een webhook veel efficienter en vraagt (veel) minder resources.

Nadelen
Omdat een webhook asynchroon is, trigger gebaseerd, is functionele logica beperkt. Een webhook kan prima geschikt zijn voor het pushen van gewijzigde gegevens, zoals een klant die zijn/haar adres aanpast. Deze gegevens dienen dan naar bijvoorbeeld een CRM te worden gestuurd.
In het geval van een reserveringsapplicatie waar er een check moet plaatsvinden op beschikbaarheid, kán een webhook wellicht minder geschikt zijn. Immers, de opvragende applicatie heeft de beschikbaarheid van een bepaald slot nodig tijdens de dialoog met de klant die de reservering probeert te maken. Er is dus directe feedback nodig om deze te kunnen presenteren. In dit voorbeeld dient de “klassieke” API te worden gebruikt.

 

 

Hoe ziet een WebHook eruit?

Afbeeldingsresultaat voor how does a webhook work

Microsoft legt het zelf heel duidelijk uit met voorbeelden welke je zelf kunt gebruiken binnen je Azure Automation Account. Meer hierover lees je hier.

 

 

Gebruik van WebHooks binnen ADF

Binnen ADF ben ik onlangs volledig overgestapt naar WebHooks. Dit voor het op- en afschalen van de Azure SQL databases, starten & processen van Azure Analysis Services databases en meer. Voordeel hiervan is dat ADF in dit geval ook feedback ontvangt (Post-back) zodra de WebHook (en dus het PowerShell-script) klaar is. Eventueel kun je ook weer data mee terug te sturen naar ADF om hier vervolgens weer iets mee te doen (zoals bijvoorbeeld voor logging).

 

 

 

 
Nieuwsgierig naar de mogelijkheden van Azure en DevOps binnen uw organisatie?
Neem dan contact met ons op: clint.huijbers@monkeyconsultancy.nl