Webhooks are user-defined HTTP callbacks that deliver real-time data to other applications when specific events occur. Bold BI supports webhook notifications for time-driven dashboard export and alert-driven dashboard export as of now.
This section explains how to create a webhook in the Bold BI Cloud.
Click the Add Webhook
button at the top right of the Webhooks section of the profile page.
Provide the required webhook details on the Add webhook page
.
After providing the webhook details, Click on the Save
button on the bottom of the page, it will add the webhook into Bold BI Cloud.
You can edit the created webhooks in the webhook section of the profile page, and also edit them in the Integrations
section of the admin page.
Click the Actions
button in the webhook grid context menu and select Edit
to edit the Webhook.
Modify the webhook details on the Edit webhook page
.
After providing the webhook details, click on the Save
button to update the webhook.
Webhooks can also be deleted from the Bold BI when they are no longer required.
Click the Actions
button in the webhook grid context menu and select Delete
to delete the Webhook.
If you want to stop a webhook temporarily without deleting the webhook permanently, then you can deactivate the webhook.
Click the Actions
button in the webhook grid context menu and select Deactive
to deactivate the Webhook.
A webhook is triggered in Bold BI for the two events below only. You can create a webhook for the events below:
A Time Driven Dashboard Export webhook can be configured only for normal schedule export in Bold BI.
An Alert Driven Dashboard Export webhook can be configured only for data alert export in Bold BI.
System and custom headers are sent along with webhook data to the specified webhook endpoints. When creating a webhook, you can include your own custom headers.
By default, the headers listed below are sent with each webhook request:
Headers Keys | Headers Values |
Host | <webhook-endpoint> |
AcceptEncoding | gzip;q=1.0,deflate;q=0.6,identity;q=0.3 |
Accept-Charset | utf-8, iso-8859-1; q=0.5, *; q=0.1 |
User-Agent | BoldBI |
Custom headers are used to send additional information to the destination URL. Follow the given steps to add a custom header:
Enter the key and value of the header and click Add
icon to add it in the header record.
To remove the header, click the Remove
icon.
The data of the selected event will be sent as a payload; you can send all of them or only the required data by selecting the following options:
When this option is enabled, all data will be sent in the payload.
If you selected a specific payload, then selected data will be sent in the payload.
The URL for the webhook is publicly available and can be easily accessed by attackers. So, it is critical to ensure that the request comes from a known sender. An attacker could intercept the webhook request and tamper with their own data if this verification is not performed. Several options are provided for securing webhook data.
You should enable authentication when creating a webhook to send the webhook data securely and verify whether it is sent from Bold BI or not. Even though it is optional, you are strongly advised to enable the authentication.
The following are the two methods for authenticating the webhook URL:
When creating a webhook, you can use password authentication (Basic Auth) to provide the username and password. The credentials (Username:Password) will be Base64 encoded and sent in the Authorization header (Authorization: Basic <Credential>).
When creating a webhook, users can use API authentication (Basic Auth) to provide the API Key. The API key will be Base64 encoded and sent in the Authorization header (Authorization: Basic <API Key>).
When creating a webhook, you can use request signature authentication to provide the secret key. This secret key is used to sign the payload (HMAC-SHA256), generate a Base64 encoded signature, and send it in the header (x-signature). This can be used to validate the payload’s integrity at the receiver end (X-Signature: <Signature>).