Moet je elke 5 minuten pollen of wacht je op een webhook-event? De juiste keuze hangt af van meer dan alleen 'snelheid'.
Webhooks — realtime, maar met eigen risico’s
Webhooks zijn push-notificaties van de API naar jouw systeem. Zodra er iets gebeurt (nieuwe order, factuur betaald, klant bijgewerkt) stuurt de provider een HTTP POST naar een door jou geconfigureerde URL.
Voordelen: instant updates, geen onnodige API-calls, en je blijft onder rate limits.
Nadelen: je applicatie moet altijd bereikbaar zijn. Als je server down is mis je events (tenzij de provider retries doet). Je hebt monitoring nodig om te detecteren dat er events missen, en authenticatie van incoming webhooks is essentieel.
Polling — simpeler, maar trager en duurder
Polling is periodiek ophalen: elke N minuten vraag je de API om wijzigingen sinds de vorige check.
Voordelen: jouw systeem is in control, je kunt op elk moment starten/stoppen, en je loopt geen events mis bij downtime.
Nadelen: latency, overbodige calls die rate limits opeten, en minder elegant voor realtime use-cases.
Wanneer kies je wat?
- Kritieke realtime-flows (betalingen, uitgaande bevestigingen): webhooks.
- Batch-sync van grote datasets (nachtelijke export, rapportages): polling.
- API’s zonder webhooks (zoals AFAS Profit): dan is polling je enige optie.
Op elke software-pagina vind je een has_webhooks-indicator, zodat je vooraf weet wat je tot je beschikking hebt.
Ook interessant
Apikoppeling.nl in een nieuw jasje
Apikoppeling.nl is vernieuwd. De site is sneller, de catalogus is flink uitgebreid en je ziet nu direct welke data-objecten twee pakketten met elkaar kunnen uitwisselen.
Rate limits: de stille sluipmoordenaar van koppelingen
Je koppeling werkt in test. Je rolt 'm uit. Tijdens de eerste bulk-sync van 10.000 records valt alles stil. Gefeliciteerd, je hebt kennisgemaakt met rate limits.