Introduction to Webhooks

What they are and what they can do

What Is A Webhook?

Webhooks are a way for applications to communicate with each other in real-time. They are essentially HTTP callbacks, triggered by specific events or actions that occur within an application. When an event occurs, the application sends a payload of data to a pre-configured URL, which can then be used to trigger an action in another application or service. Webhooks are commonly used to automate processes and integrate third-party tools, allowing for seamless data transfer and event handling.

Webhooks vs APIs

With APIs, you pull data from the provider. But webhooks allow the provider to push data to you.

Pulling data via APIs can:

  • Waste time: requests to the API must be made regularly to get the latest data (polling). So, you cause traffic even when there’s no data to pull from the service.
  • Cause delays: you’ll have to poll the API frequently to ensure you get the most up-to-date data. If you’re building an app that requires real-time updates, even once-a-minute pulls can be too slow.

With webhooks, we do the work for you. They push real-time updates as they happen; you’re not polling the service to ask for new data.
The drawback?
To make changes, you need another tool. Webhooks are great for sending one-way notifications. But you often want to react to that notification by taking some action in another service. For that, you will need another way to interact with data.

Usefull Resources to work with Webhooks

  • webhook.site is a free site that gives you a public endpoint to send a webhook to and shows you the payload.
  • ngrok is a command line app that exposes a public endpoint from your computer for testing, and lets you inspect and replay events from a web browser.
  • Postman is a native app for sending HTTP requests to APIs and other web services. If you like working with an app instead of the command line, Postman is for you.

What’s Next

Head over to the Limitations section to know what we can and cannot do.