DEV Community

Gobinath Mallaiyan
Gobinath Mallaiyan

Posted on • Originally published at Medium on

What is a Webhook?

Mobile Notifications

Before developing webhooks in any system, any new bee should take a tiny refresher on this topic. Webhooks are used in web application development to integrate multiple systems for real-time communication. It sends automated notifications and data via HTTP to another system based on a preconfigured trigger. Below is the list of everyday use cases of webhooks in modern application development.

  • Real-Time Updates: We can send real-time updates and push notifications, ensuring that Information is delivered as soon as an event happens, rather than relying on periodic polling for change. A simple use case could be an e-commerce website that can use a webhook to inform a fulfillment service whenever an order is placed, ensuring timely order processing.

  • **Integration: **Webhook enables the integration of different applications, services, and platforms. For example, a CRM system may use webhooks to update customer records whenever a user fills out a contact form on a website.

  • Notifications: The information we receive on our mobile devices (or) web browsers. For example, when you receive a new message on your Instagram Chat, a microservice on their server would trigger a webhook to notify your mobile IG client.

  • Data Synchronization: It can keep data synchronized between systems.

  • Automation: Webhooks are integral to automation processes. When an event occurs, a webhook can automate actions in response. For instance, a content management system can automatically use a webhook to share newly published articles on social media platforms.

High-level Information on how webhooks typically work:

  1. Configuring Webhook: A developer configures a webhook that generates events in an application. This typically involves providing an endpoint URL where the webhook payload will be delivered on the occurrence of an event.

  2. Event Trigger: Any event, such as user registration, order placement, chat message and similar action, occurs in a source system.

  3. HTTP Request: The source system will be configured to send an HTTP request with a payload to the endpoint URL. Typically, these payloads are in the form of JSON XML.

  4. Receiver: The destination application receiving the webhook listens for any incoming requests at the endpoint URL. It gets the data & processes the payload, and will perform any required answers.

  5. Response: The receiving system acknowledges the receipt of the webhook by sending an HTTP response back to the source, confirming that the data was successfully received and processed.

Webhooks are highly versatile and widely used in modern software development, enabling efficient communication between components, services, and platforms. They provide a more efficient and scalable alternative to traditional polling-based methods for retrieving and reacting to data changes and events.

Image Credit:
Photo by Julian Christ on Unsplash

Top comments (0)