Extension Pointers #8: Handling real-time data updates between Zoho CRM and third-party applications using webhooks

Extension Pointers #8: Handling real-time data updates between Zoho CRM and third-party applications using webhooks

A webhook is a web callback triggered by a specific event to provide real-time data updates between applications.


How does a webhook work?

Webhooks help enhance the connection between two applications. When an event occurs in a web application that implements a webhook, the webhook notices the event, serializes and collects the data, and posts the data to the URL configured in the form of a HTTP request.

You can implement either an inbound webhook or an outbound webhook. If an event triggered in your Zoho CRM account causes an action in a third-party application, it is called as an outbound webhook (going from your application to a third-party application) and the opposite is called an inbound webhook (incoming to your application from the third-party application).

How functions play a role in implementing webhooks

If Zoho CRM should be notified when a particular event occurs at the third-party end, you can create webhooks to post a callback on the occurrence of that event. In order to implement this, you need to define a function in your extension that can be triggered from the third-party application. Unlike standard functions, REST API functions can be triggered from anywhere (either from an extension or a third-party application) and thus help with timely interaction. 

Webhook URLs and how to obtain them

You need to create a webhook and subscribe to events for real-time updates between applications. In order to create a webhook, a webhook URL is required. By subscribing your own webhook URL, you can customize, extend and integrate it with other third-party applications, facilitating instant web notifications.

The REST API functions/Standalone deluge functions can be written and exposed as REST APIs. The API names of these functions can be used as the webhook URL while creating your webhook.

In this post, we'll look at the basic steps on how to create an inbound webhook, where a third-party application event triggers a post-data action to your Zoho CRM account.

Note: The term "event" here refers only to the events supported by the third-party application, which you can subscribe during the creation of a webhook.

The steps to achieve this functionality while building your extension are:

➤ Establish a connection with your selected third-party application.
➤ Define a REST API function, to handle the response from the third party application.
Subscribe the webhook URL of the REST API function with the third-party application.




Establishing connection with the third-party application

1. Before proceeding with implementation, it is important to check whether the third-party application supports webhooks. Establish a connection between Zoho CRM and the third-party application using the authentication methods supported by the application. You can learn more about the authentication methods for developing third-party integrations here.

2. If the method of user authentication supported by the third-party application is
3. Define the third-party application's API to create a webhook with the required parameters specified by the third-party application.

Note: The subscription URL is termed in different ways by each application and is an important parameter to be noted while creating webhooks. In order to send the response to Zoho CRM, the third-party applications require a URL to perform HTTP POST request from their end. The following section defines the steps required to obtain this URL.

Defining a REST API function and obtaining a webhook URL

After establishing the connection, the next step is to define a REST API function that can be invoked by the third-party application whenever a subscribed event occurs in the third-party application.

1.  Log in to Zoho Sigma and go to the Extension Details page.
2. Choose Functions under Automate from the left panel of the Zoho Developer console under Build, then click New Function.



3. Enter the name of the function. Choose Yes for the Invoke as REST API option to create the function as a REST API function.



4. The crmAPIRequest argument of the function is categorized as Map type by default. The entire request object is mapped automatically to the crmAPIRequest argument and holds the response from the third-party when the trigger event occurs.



5. The input for the function can be acquired from the following types:

Component
Format
Value fetched using component of crmAPIRequest
 body
request_body =   crmAPIRequest.get("body");
Content that is passed as a stream to the request
 params
parameters = crmAPIRequest.get("params");
Key-value pair or as JSON object to the request
 file_content
filecontent = crmAPIRequest.get("file_content");
File content passed to the request
 user_info
user_info = crmAPIRequest.get("user_info");
Information about the user

 method
method = crmAPIRequest.get("method");
HTTP method name in the request
 auth_type
authtype = crmAPIRequest.get("auth_type");
The name of the Authentication method(API key)
 headers
headers = crmAPIRequest.get("headers");
Additional information of the request available in the header

6. The default return type of a Rest API function version 2.0 is a string. You can choose to return the response as a string or use the response object crmAPIResponse to define the following specifications of the response:

 Specification key
 Default value
 status_code
 200
 Content-Type
 application/json;charset=utf-8
 headers
 {"Content-Disposition", "attachment;filename=response.json"}
 body
 empty

7. When you have finished defining the REST API code, click Invoke as the REST API button.


8. The URLs to invoke the function will be displayed and are termed as webhook URLs, which will be used for subscribing the function with the third-party.


Unlike the sandbox URL provided with a predefined ZAPI key, the production URL requires the value of the user's ZAPI key.

Why ZAPI key?

For authentication purposes, the REST API functions use API keys as the method of authentication. It requires the value of the ZAPI key in order to authenticate a user.

Code snippet to obtain ZAPI Key
  m = {"nameSpace":"<portal_name.extension_namespace>"};
  apikeyresp = zoho.crm.invokeConnector("crm.zapikey",m);
  zapikey = apikeyresp.get("response");

9. The ZAPI key value can be passed in the Production URL, which will serve as a webhook URL to subscribe a webhook and invoke this function.

Creating and subscribing a webhook

➤ REST API functions can be triggered from a third-party application only when it is subscribed with that application while creating an inbound webhook.

➤ The webhook URL mentioned in the previous section will serve as the subscription URL while creating the webhook.

By following these steps, you can implement webhooks for third-party integrations using REST API functions. In our upcoming post, we'll look at a working example depicting this process.

We hope you found this guide helpful in creating and using custom webhooks to link your Zoho CRM account to third-party applications.For tips and guides like this, keep following this community forum.

SEE ALSO




    Access your files securely from anywhere







                            Zoho Developer Community




                                                  • Desk Community Learning Series


                                                  • Digest


                                                  • Functions


                                                  • Meetups


                                                  • Kbase


                                                  • Resources


                                                  • Glossary


                                                  • Desk Marketplace


                                                  • MVP Corner


                                                  • Word of the Day


                                                  • Ask the Experts



                                                            • Sticky Posts

                                                            • Kaizen #222 - Client Script Support for Notes Related List

                                                              Hello everyone! Welcome to another week of Kaizen. The final Kaizen post of the year 2025 is here! With the new Client Script support for the Notes Related List, you can validate, enrich, and manage notes across modules. In this post, we’ll explore how
                                                            • Kaizen #217 - Actions APIs : Tasks

                                                              Welcome to another week of Kaizen! In last week's post we discussed Email Notifications APIs which act as the link between your Workflow automations and you. We have discussed how Zylker Cloud Services uses Email Notifications API in their custom dashboard.
                                                            • Kaizen #216 - Actions APIs : Email Notifications

                                                              Welcome to another week of Kaizen! For the last three weeks, we have been discussing Zylker's workflows. We successfully updated a dormant workflow, built a new one from the ground up and more. But our work is not finished—these automated processes are
                                                            • Kaizen #152 - Client Script Support for the new Canvas Record Forms

                                                              Hello everyone! Have you ever wanted to trigger actions on click of a canvas button, icon, or text mandatory forms in Create/Edit and Clone Pages? Have you ever wanted to control how elements behave on the new Canvas Record Forms? This can be achieved
                                                            • Kaizen #142: How to Navigate to Another Page in Zoho CRM using Client Script

                                                              Hello everyone! Welcome back to another exciting Kaizen post. In this post, let us see how you can you navigate to different Pages using Client Script. In this Kaizen post, Need to Navigate to different Pages Client Script ZDKs related to navigation A.


                                                            Manage your brands on social media



                                                                  Zoho TeamInbox Resources



                                                                      Zoho CRM Plus Resources

                                                                        Zoho Books Resources


                                                                          Zoho Subscriptions Resources

                                                                            Zoho Projects Resources


                                                                              Zoho Sprints Resources


                                                                                Qntrl Resources


                                                                                  Zoho Creator Resources



                                                                                      Zoho CRM Resources

                                                                                      • CRM Community Learning Series

                                                                                        CRM Community Learning Series


                                                                                      • Kaizen

                                                                                        Kaizen

                                                                                      • Functions

                                                                                        Functions

                                                                                      • Meetups

                                                                                        Meetups

                                                                                      • Kbase

                                                                                        Kbase

                                                                                      • Resources

                                                                                        Resources

                                                                                      • Digest

                                                                                        Digest

                                                                                      • CRM Marketplace

                                                                                        CRM Marketplace

                                                                                      • MVP Corner

                                                                                        MVP Corner









                                                                                          Design. Discuss. Deliver.

                                                                                          Create visually engaging stories with Zoho Show.

                                                                                          Get Started Now


                                                                                            Zoho Show Resources

                                                                                              Zoho Writer

                                                                                              Get Started. Write Away!

                                                                                              Writer is a powerful online word processor, designed for collaborative work.

                                                                                                Zoho CRM コンテンツ



                                                                                                  Nederlandse Hulpbronnen


                                                                                                      ご検討中の方




                                                                                                              • Recent Topics

                                                                                                              • Zoho CRM for Gmail Extension Not Working in Brave Browser?

                                                                                                                Is anyone able to get the Zoho CRM Chrome Extension working in the Brave browser? They're both built on the Chromium platform and every other Chrome Extension works with the exception of Zoho CRM for Gmail so any ideas here?
                                                                                                              • Sharing URLs and direct access

                                                                                                                Hello, I am storing my team's email signature images on Workdrive. I am creating a public image download share and adding “?directDownload=true” so that the image can be accessed without the Workdrive interface. A few questions: 1) Can we generate friendly
                                                                                                              • how to change the page signers see after signing a document in zoho sign

                                                                                                                Hello, How can I please change the page a signer sees after signing a document in Zoho Sign? I cannot seem to find it. As it is now, it shows a default landing page "return to Zoho Sign Home". Thanks!
                                                                                                              • Question about using custom_fields in Storefront Add-to-Cart API (error 2003 – required details)

                                                                                                                Hi everyone, I’m working with the Zoho Commerce Storefront API, specifically the Add to Cart endpoint: POST /storefront/api/v1/cart According to the documentation, this endpoint supports a custom_fields parameter for adding line-item custom data. I’m
                                                                                                              • Can a project be cloned?

                                                                                                                Good afternoon, greetings. I would like to ask if it's possible to clone a project in Microsoft Project. I found a way to do it using templates, but I'm not sure if there's a direct way to clone a project. Thank you in advance for your attention, and
                                                                                                              • Timesheet Tasks in Zoho Books: associate to service item

                                                                                                                How do we associate a service item to timesheet tasks in Zoho Books? For example: Joe spent 5 hours on project:task1 which is Service Item#1 (Income:Service1). When the invoice is issued thru the Project Invoice section, this is not available. When the
                                                                                                              • Why Sharing Rules do Not support relative date comparison???

                                                                                                                I am creating a Sharing Rule and simply want to share where "Last Day of Coverage" (Date field) is Greater than TODAY (Starting Tomorrow). However, sharing rules don't have the option to compare a date field to a relative date (like today), only to Static
                                                                                                              • Task/Activity indicator in SalesPipeline overview has disappeared

                                                                                                                I Just logged in my ZOHO CRM first 2026 checking my salespipeline overview , Every record card used to show an indication that there was an open task (Yellow if the expiry date was close, red if the expiry date was today and grey when it had expired).
                                                                                                              • Tip #56- Accessibility Controls in Zoho Assist: Hearing- 'Insider Insights'

                                                                                                                As we begin the new year, it’s a great time to focus on making our tools more inclusive and accessible for everyone. Remote support often involves long hours in front of screens, varying lighting conditions, and users with diverse accessibility needs.
                                                                                                              • Zoho Desk Android app update: Table view for All Departments view, custom button

                                                                                                                Hello everyone! In the latest version(v2.9.25) of the Zoho Desk Android app update, we have introduced Table view for the 'All Departments' view in the ticket module. We also have supported an option that allows tickets in the Table view to be sorted
                                                                                                              • What's New - December 2025 | Zoho Backstage

                                                                                                                In December, Backstage introduced a focused set of updates that improve how you manage registrations, communicate with attendees, and track participation. These enhancements are designed to give organizers greater flexibility and clearer control across
                                                                                                              • Need code format to specify default values

                                                                                                                Can someone please direct me to the code syntax or the proper translation per the instructions circled below. These instructions don't seem correct.
                                                                                                              • Problem with CRM Connection not Refreshing Token

                                                                                                                I've setup a connection with Zoom in the CRM. I'm using this connection to automate some registrations, so my team doesn't have to manually create them in both the CRM and Zoom. Connection works great in my function until the token expires. It does not refresh and I have to manually revoke the connection and connect it again. I've chatted with Zoho about this and after emailing me that it couldn't be done I asked for specifics on why and they responded. "The connection is CRM is not a feature to
                                                                                                              • Task Deletion Restriction & Strict Stage Control

                                                                                                                Hello Zoho Community, We have the following two issues currently pending and under testing, for which we require a workable and reliable solution: 1. Task Deletion Restriction We are testing ways to ensure that staff users are not able to delete tasks
                                                                                                              • Add multiple users to a task

                                                                                                                When I´m assigning a task it is almost always related to more than one person. Practical situation: When a client request some improvement the related department opens the task with the situation and people related to it as the client itself, the salesman
                                                                                                              • A Roundup of Zoho Sprints 2025

                                                                                                              • Sorting Custom Date in API isn't working w pagination limit

                                                                                                                How can we sort a custom field with DATE using pagination? Starting at page=1 then moving to page=2 with a limit of 10 each, its all messed up and even shows some of the same records as page 1? https://www.zohoapis.com/crm/v2/INVOICE_MODULE/search?criteria=(FM_Contact_ID:equals:1234)&sort_by=Invoice_Date&sort_order=desc&per_page=10&page='
                                                                                                              • SAP Business One(B1) integration is now live in Zoho Flow

                                                                                                                We’re excited to share that SAP Business One (B1) is now available in Zoho Flow! This means you can now build workflows that connect SAP B1 with other apps and automate routine processes without relying on custom code. Note: SAP Business One integration
                                                                                                              • Enhancement in Role and Profile mapping of agents in Sandbox

                                                                                                                Hello everyone! We have brought in a modification in the way users are mapped to a particular role and profile in Sandbox. What has changed? When agents are copied from production to Sandbox: If a user's current role and profile is available in Sandbox,
                                                                                                              • The reason I switched away from Zoho Notebook

                                                                                                                My main reason for switching to Zoho was driven by three core principles: moving away from US-based products, keeping my data within India as much as possible, and supporting Indian companies. With that intent, I’ve been actively de-Googling my digital
                                                                                                              • Decimal places settings for exchange rates

                                                                                                                Hello, We are facing issues while matching vendor payments with banking feeds. As we often import products/services exchange rate comes into play. Currently, ZOHO allows only six digits for decimal places. We feel that conversions like JPY to INR require
                                                                                                              • Zoho removed ability to see all Scheduled Reports!

                                                                                                                If you are not the owner of a scheduled report, Zoho recently removed the capability to see each scheduled report. As an admin who relies on seeing all scheduled reports being sent, this is a terrible update. Now I cannot see ANY scheduled reports...even the ones I am being sent!!  This should be a setting for admins to control.  This is a bad update.
                                                                                                              • Automate Backups

                                                                                                                This is a feature request. Consider adding an auto backup feature. Where when you turn it on, it will auto backup on the 15-day schedule. For additional consideration, allow for the export of module data via API calls. Thank you for your consideration.
                                                                                                              • GCLID and Zoho Bookings

                                                                                                                Is there anyway to embed a Zoho Bookings signup on a landing page and pass the GCLID information? More specifically, can this be done using auto-tagging and not manual tagging the GCLID? I know Zappier has an integration to do this but is there a better
                                                                                                              • Merge Items

                                                                                                                Is there a work around for merging items? We currently have three names for one item, all have had a transaction associated so there is no deleting (just deactivating, which doesn't really help. It still appears so people are continuing to use it). I also can't assign inventory tracking to items used in past transactions, which I don't understand, this is an important feature moving forward.. It would be nice to merge into one item and be able to track inventory. Let me know if this is possible.
                                                                                                              • Create PO from an invoice

                                                                                                                We are a hardware and software sales company which receives orders over the internet. We drop ship most of our products from a warehouse outside of our company. Our orders get sync'd into Zoho from our store via onesaas as invoices. It would be great
                                                                                                              • Blueprint or Validation Rules for Invoices in Zoho Books

                                                                                                                Can I implement Blueprint or Validation Rules for Invoices in Zoho Books? Example, use case could be, Agent confirms from client that payment is done, but bank only syncs transactions tomorrow. in this case, Agent can update invoice status to done, and
                                                                                                              • Resetting auto-number on new year

                                                                                                                Hi everyone! We have an auto-number with prefix "D{YYYY}-", it generates numbers like D2025-1, D2025-2, etc... How can we have it auto-reset at the beginning of the next year, so that it goes to D2026-1? Thanks!
                                                                                                              • Delivery and handling of documents e-stamped using Zoho Sign

                                                                                                                Hello everyone! Zoho Sign makes it easy to pay non judicial stamp duty online and automatically attach the digitally generated e-stamp challan to electronic documents. We also manage the delivery of physical e-stamped papers. We periodically receive these
                                                                                                              • The Social Wall: December 2025

                                                                                                                Hello everyone! As we wrap up the final edition of the Social Wall for 2025, it’s the perfect time to look at what went live during December. QR code generator From paying for coffee to scanning metro tickets, QR codes are everywhere and have made everyday
                                                                                                              • Custom AI solutions with QuickML for Zoho CRM

                                                                                                                Hello everyone, Earlier, we introduced Custom AI Solutions in CRM that let you access QuickML for your custom AI needs. Building on that foundation, we’ve now enabled a deeper integration: QuickML models can be seamlessly integrated into CRM, and surface
                                                                                                              • Helper Functions and DRY principle

                                                                                                                Hello everyone, I believe Deluge should be able to use 'Helper functions' inside the main function. I know I can create different standalones, but this is not helpful and confusing. I don't want 10000 different standalones, and I dont want to have to
                                                                                                              • Add specific field value to URL

                                                                                                                Hi Everyone. I have the following code which is set to run from a subform when the user selects a value from a lookup field "Plant_Key" the URL opens a report but i want the report to be filtered on the matching field/value. so in the report there is
                                                                                                              • Introducing workflow automation for the Products module

                                                                                                                Greetings, I hope all of you are doing well. We're happy to announce a few recent enhancements we've made to Bigin's Products module. The Products module in Bigin now supports Workflows, enabling you to automate routine actions. Along with this update,
                                                                                                              • Power up your Kiosk Studio with Real-Time Data Capture, Client Scripts & More!

                                                                                                                Hello Everyone, We’re thrilled to announce a powerful set of enhancements to Kiosk Studio in Zoho CRM. These new updates give you more flexibility, faster record handling, and real-time data capture, making your Kiosk flows smarter and more efficient
                                                                                                              • Zia Formula Expression Generator for Formula fields

                                                                                                                Hello everyone! Formula fields are super useful when you want your CRM to calculate things for you but writing the expression is where most people slow down. You know what you want, but you’re not fully sure which function to use, how the syntax should
                                                                                                              • Issue with Zoho Creator Form Full-Screen View in CRM Related List Integration

                                                                                                                Hi Team, We have created a custom application in Zoho Creator and integrated it into Zoho CRM as a related list under the Vendor module, which we have renamed as Consignors. Within the Creator application, there is a form named “Pickup Request.” Inside
                                                                                                              • Wrapping up 2025 on a high note: CRM Release Highlights of the year

                                                                                                                Dear Customers, 2025 was an eventful year for us at Zoho CRM. We’ve had releases of all sizes and impact, and we are excited to look back, break it down, and rediscover them with you! Before we rewind—we’d like to take a minute and sincerely thank you
                                                                                                              • Directly Edit, Filter, and Sort Subforms on the Details Page

                                                                                                                Hello everyone, As you know, subforms allow you to associate multiple line items with a single record, greatly enhancing your data organization. For example, a sales order subform neatly lists all products, their quantities, amounts, and other relevant
                                                                                                              • Customer Parent Account or Sub-Customer Account

                                                                                                                Some of clients as they have 50 to 300 branches, they required separate account statement with outlet name and number; which means we have to open new account for each branch individually. However, the main issue is that, when they make a payment, they
                                                                                                              • Next Page