Webhooks let web applications share data with each other in real time. Normally, if you want updates from another application, you'd have to keep checking it manually or set up a scheduled fetch. Webhooks flip that around by making the sending application automatically notify another application through a webhook URL whenever an event is triggered, so that the data reaches you efficiently.
Zoho Campaigns allows you to configure webhooks to send contact and campaign-related data to external applications in real time. This helps you automatically pass updated information from Zoho Campaigns to your receiving application whenever selected/all activities or events occur.
Why should you use Zoho Campaigns' Webhooks?
Zoho Campaigns introduces webhooks as a service that lets you collect information about the campaigns you send and also about the contacts in your lists.
Consider the following example: Steve has to send an important campaign to a specific list of contacts and generate certain insights from his campaign. There are three tasks that Steve needs to perform in order to generate data:
- Keep track of the campaign to make sure the campaign is sent successfully
- Make sure the campaign is sent to all the contacts in the list
- Identify if any contacts have left or newly joined the list
These are multiple tasks that usually take time if performed manually. Webhooks automates the manual tasks and sends you periodic updates of information in the event of the above actions taking place. So Steve can simply setup a URL in his application that would collect all the data he needs and notify him with the updated information
Generate a URL
The first step in configuring a webhook is to provide a URL through which your requests will be delivered. This endpoint URL is usually created on the receiving application's backend or through APIs. Once the endpoint URL is generated, you can copy it from the receiving application and paste it in the Zoho Campaigns Webhooks.
To create a webhook in Zoho Campaigns:
Click the Settings icon on the top-right corner of the screen,
Click Webhooks under Integrations and click Create Webhook
A popup window will appear to configure Webhooks.
Enter a name for your webhook.
In the Webhook URL field, paste the endpoint URL through which the payload will be sent.
Select a request method (GET/POST/DELETE) to extract data.
Info:
GET — Used to retrieve or read information.
POST — Used to create or submit information.
DELETE — Used to remove information.
Select the updates to push to the receiving application when an event triggers. You can select any of the below options:
Subscribes - When a contact subscribes to any information about your business.
Unsubscribes - When a contacts unsubscribes from emails, newsletters etc
Profile updates - When a contact's profile is updated.
Bounces - When campaigns sent to a contact is bounced.
Subscription preferences - When a contact updates Subscription preferences.
Choose the fields to be sent.
Enable Authentication toggle if you want to secure your webhook connection.
Enable Custom headers toggle to send additional data to the receiving application.
Enable the Custom data toggle if required.
Click Create.
To edit, deactivate and delete a webhook:
The steps to perform these functions on a webhook follow a similar process, which goes as below:
Click Settings icon on the top-right corner of the screen, then click Webhooks under Integrations.
In the Webhooks homepage, all existing webhooks created before are listed down along with their Name, Status, Webhook URL and Request method information.
Identify the webhook that you want to make changes to
Click the three dot icon in the webhook that you wish to make changes to.
In the dropdown that appears, Click Edit or Deactivate or Delete based on your preference at the time.
In case you delete a webhook, you cannot retrieve the webhook again and have to create the webhook from the start.
Deactivated workflows can be activated again later using the same steps.
Editing a webhook follows the same steps as creating a new webhook. You can update the required fields and save the changes.