Detailed webhook settings

Webhooks Mode / Request Method / Persist webhook / Auto Download

There are a number of settings that affect the amount of data sent by the server, these settings can be changed in the interface or through the API.

Click 'Settings' to access more detailed webhook settings.

Here's a transcript of the hook's advanced settings:

Mode setting

Request method for sending hook

  • Body: All information about the webhook event is passed in the body of the request. If you select Body mode, event information such as event type, object ID, time and date will be specified in the body of the HTTP request. This is the standard and direct way to get data from webhooks.

  • Path: The URL of the webhook is updated depending on the event. In Path mode, the URL of your webhook will change depending on the type of event. For example, if the event is called 'message.post', the URL 'https://example.com' will change to 'https://example.com/message/post'. This mode is useful for separating the processing of different types of events into different URLs.

  • Method: The event method is used as the HTTP method of the request. In Method mode, an event method such as 'message.patch' defines the HTTP method of the request. So, 'POST https://example.com' will turn into 'PATCH https://example.com/message'. This mode is good for advanced event handling when you want to use specific HTTP methods for different actions.

Request Method

Select the channel events that you would like your webhook to handle.

  • POST - signifies the creation of a new entity (every acknowledgment and new status are considered as a new entity).

In the context of webhooks, a POST event would signal the creation of a new item, such as a new message or status. Example: When someone sends a message to WhatsApp, a webhook with a POST event can notify your server of a new message.

  • DELETE - informs about the deletion of an entity.

This can be useful, for example, when a message is deleted from a chat in WhatsApp. Example: If the message was deleted by the user or for some other reason, a webhook with a DELETE event can convey this information.

  • PUT - indicates an entity modification and sends old and updated data.

The feature of PUT is that it provides complete information about the change including old and updated data. Example: If a user changes the text of a message, a webhook with a PUT event can pass both the original and updated text of the message.

  • PATCH - also denotes an entity modification but sends only the updated data.

PATCH, like PUT, is used to update, but unlike PUT, PATCH only passes the changed data. This makes PATCH more appropriate for small changes. Example: If a user changes only part of a message, a webhook with a PATCH event will only pass the changed part.

Persist webhook setting

With this setting enabled, our server will attempt to deliver notifications at 1 minute intervals even if your server has experienced some errors and is unavailable. You can make finer settings yourself through API using the method: Update channel settings

You will need three parameters:

  • callback_backoff_delay_ms: Backoff delay for a failed callback in milliseconds This setting is used to configure the amount of time the backoff delays before retrying a failed callback. The backoff delay increases linearly by this value each time a callback fails to get a HTTPS 200 OK response. The backoff delay is capped by the max_callback_backoff_delay_ms setting.

  • max_callback_backoff_delay_ms: Maximum delay for a failed callback in milliseconds

  • callback_persist: Stores callbacks on disk until they are successfully acknowledged by the Webhook or not. Restart required.

Auto Download setting

The "Auto Download" feature in Whapi.Cloud allows you to automatically download incoming media content to your Whapi channel, such as documents, photos, videos, and audio files sent to you in chats or groups.

Read more about this setting here: Setting "Auto Download"

Last updated