Webhooks

A webhook is a user-defined callback over HTTP. Webhook allows for two independent cloud services to integrate and communicate with each other. Before we get into how Mammoth enables an easy processing of webhook data, let’s describe what webhooks are.

Understanding Webhooks

There are two cloud services involved in the process (source and destination).

  1. The destination service: The destination service allows its users to define a URL to which the source service can post some data. User can copy this URL for use in source service.

  2. The source service: User inserts URL created on destination service into source service in a designated field. User also configures in source service the nature of events for which the destination service URL shall be notified

Once the source and destination services are configured correctly, the source system will notify the destination system with event data whenever the configured events occur. The destination system can act based on the data received as per its capability and configuration.

Many web-services support outgoing webhooks for notifying whenever some events occur. Some of the popular examples are

Consuming Webhook Data in Mammoth

Working with webhooks is a fairly technical task. It requires understanding of parsing JSONs and then utilize it programmatically in some downstream service. If your need is to just build an independent analytics on some data in source platform, Mammoth alleviates this need.

Mammoth allows you to create destination webhooks. The destination webhooks are simple datasets that collect the incoming JSON data into a single column. Once the data is in Mammoth, you can interactively flatten the JSON using Mammoth’s JSON extraction capabilities.

It is not essential that webhook data come from a web service. It can come from any other source. For example, you can make your HTML forms send data to Mammoth using incoming webhooks. The webhooks in Mammoth understand both GET and POST data. In POST, Mammoth understands data sent as form data or JSON in request body.