Extension Pointers #9: Configure a Webhook to handle real-time updates between Zoho CRM and SurveyMonkey

Extension Pointers #9: Configure a Webhook to handle real-time updates between Zoho CRM and SurveyMonkey

While seamless data exchange is possible between Zoho CRM and third-party applications using connectors or custom variables as the binding knot, managing data updates in real-time lies a step ahead. Webhooks can help with this, as they serve as web callbacks to provide real-time data updates between applications on the occurrence of an event. To learn about Webhooks in more detail, please refer here.

In this post, we'll look at an example that depicts a Zoho CRM inbound webhook. This webhook sends data updates to Zoho CRM in real time, based on the occurrence of an event in the integrated third-party application, SurveyMonkey.

Let's assume a scenario where a survey created with SurveyMonkey will be sent to the Zoho CRM contact after successful completion of a deal in order to obtain their feedback. The inbound webhook in our example would be configured to trigger a post action whenever the contact responds to and completes the survey. This response will be updated in real-time to the Zoho CRM account, which could be used to make further data manipulations as per business requirements.

Let's take a look at the major pointers that will be explained in this example to create an inbound webhook and achieve the above mentioned functionality:

➤ Establish a connection between Zoho CRM and SurveyMonkey
➤ Define a REST API function that needs to be subscribed with SurveyMonkey
➤ Create and test your webhook

Establishing Connection between Zoho CRM and SurveyMonkey
  • Create a connector to integrate SurveyMonkey with Zoho CRM. SurveyMonkey supports OAuth method for user authentication. Please refer here to find the detailed steps involved in creating a connector.
  • Define the webhook API of SurveyMonkey with the specified parameters to create a webhook, along with the other essential API's (Get all survey details, Get survey details by ID).


SurveyMonkey Connector's API details:

Refer to the API documentation of SurveyMonkey for header and body parameter specifications of the APIs. After creating the connector and adding the API, publish and associate it with your respective extension.

Note: SurveyMonkey Webhooks can be configured for various events. For our example, we have subscribed the event "response-completed" for Surveys. Whenever a user completes responding to a survey, callback will happen, which in turn will trigger the REST API function.

Defining a Rest API function

SurveyMonkey webhook requires a subscription URL to be constructed as one of the parameters for the Create Webhook API. In order to obtain this URL, we need to define a REST API function that is capable of being triggered from the SurveyMonkey application during callback. The Survey Monkey webhook that will be configured (steps included in the upcoming parts of the post) will deliver the response to the subscribed REST API function. You can access this response through the REST API function input parameter and handle them as per your business process requirements.

1. Log in to Zoho Sigma, then 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. Click Next, then enter the code in the Deluge editor.

Note: Once the webhook is created successfully, this REST API function will also be successfully subscribed with the third party. When the subscribed event (survey completion) occurs, the third-party will perform the callback and the response will be sent to this function. The response format may vary between third-party applications. Based on the third-party application that you integrate with, extract the required data from the response using the input parameter, crmAPIRequest of the REST API function. The value can be acquired using the different data types as mentioned in this post. After retrieving the required values, data manipulations can be performed according to business logic.



5. Click Save & Close.

After defining the code for the REST API function, click Invoke as REST API button to obtain the URL. The sandbox URL provided with the zapi key value can be used to test the functionality locally in the sandbox environment. The production URL displayed along with the value of zapi key will serve as the subscription URL while creating the Webhook. The zapi key acts as the REST API function's method of authentication.



Creating the webhook

Create a webhook by passing the required values needed for the Webhook API. In our example, we have chosen to create the webhook and subscribe the REST API function during the authorization of the connector.

Note: You have the option to perform actions through custom function while installing an extension, uninstalling an extension, authorizing a connector, or revoking a connector. You can choose the best option that fits your needs.

1. Choose Connectors under Install Actions from the left panel of the Zoho Developer console under Build.
 


2. Choose On Authorization. Enter the code functionality to be performed during the connector authorization.



Code snippet

// Fetching the value of the ZAPI key to be appended in the subscription url
m = {"nameSpace":"xxx.surveymonkey4"};
apikeyresp = zoho.crm.invokeConnector("crm.zapikey",m);
zapikey = apikeyresp.get("response");

// Invoking the Get Surveys API call
resp = zoho.crm.invokeConnector("surveymonkey4.surveymonkeyconnector.getsurveys",dynamic_map1);
response = resp.get("response");
data = response.get("data");
for each dataa in data
{

// Retrieving the survey ID from response of the Get Surveys API call 
id = dataa.get("id");
info id;
dynamic_map = Map();

// Assigning the ID retrieved to the object_id parameter
dynamic_map.put("object_id",id);

// Assigning the combined value of url and zapikey obtained to URL parameter 
dynamic_map.put("url",{REST API URL} + zapikey);

// Invoking Create webhook API to subscribe the webhook with SurveyMonkey
resp = zoho.crm.invokeConnector("surveymonkey4.surveymonkeyconnector.createwebhook",dynamic_map);
}
return "";



➤ The Zapi keyvalue is obtained and stored in a variable called zapikey.
➤ The Get Surveys API call of the SurveyMonkey connector is invoked, and the survey ID is obtained from its response. The retrieved ID is assigned to the object_id parameter required for the Create Webhook API.
➤ Similarly, the url parameter required for the Create Webhook API call is assigned with the value obtained by appending the url (Production URL) and zapikey variable values fetched earlier.
➤ The Create Webhook API of the connector is invoked using zoho.crm.invokeConnector after constructing the required parameters.
➤ The webhook will be subscribed with SurveyMonkey when the connector is authorized and real-time updates can flow in from SurveyMonkey to Zoho CRM.

You can choose to further enhance the functionality by performing data manipulations on the response received from a third-party application via the REST API function, according to your business needs. For more information on extension, keep following this space.


SEE ASLO



    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 #226: Using ZRC in Client Script

                                                              Hello everyone! Welcome to another week of Kaizen. In today's post, lets see what is ZRC (Zoho Request Client) and how we can use ZRC methods in Client Script to get inputs from a Salesperson and update the Lead status with a single button click. In this
                                                            • 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


                                                            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

                                                                                                              • Repeat Column merge in ZOHO writer columns doesn't allow to set max columns per row

                                                                                                                I'm using ZOHO writer to merge data from a ZOHO CRM subform and I want it to make a table. We're using Insert Table for Column Repeat, because this is what we need. (Name of column (Teamname) and underneath that a list of names of teammembers). It works
                                                                                                              • ZMA shows as already connected to Zoho CRM, but integration not working

                                                                                                                When I try to connect ZMA with Zoho CRM, it shows as already connected, but the integration doesn’t seem to be working. I’ve attached the screen recording for reference.
                                                                                                              • Persisting email signals to contact timeline?

                                                                                                                Hello there. Regarding the email signals that are logged when a contact opens an email, am I correct that these signals are not logged to a contact's timeline? Ideally, I would like to have this context available for future follow-ups, if the contact
                                                                                                              • Trouble with using Apostrophe in Name of Customers and Vendors

                                                                                                                We have had an ongoing issue with how the system recognizes an apostrophe in the name of customers and vendors. The search will not return any results for a name that includes the mark; ie one of our vendors names is "L'Heritage" and when entering the
                                                                                                              • How to apply customized Zoho Crm Home Page to all users?

                                                                                                                I have tried to study manuals and play with Zoho CRM but haven't found a way how to apply customized Zoho CRM Home Page as a (default) home page for other CRM users.. How that can be done, if possible? - kipi Moderation Update: Currently, each user has
                                                                                                              • How do I migrate OLM file to Gmail?

                                                                                                                Migrating emails from Outlook for Mac to Gmail can be challenging because Gmail does not support OLM files directly. This limitation often causes confusion and delays, especially when users need quick access to important emails and mailbox data on a web-based
                                                                                                              • Really want the field "Company" in the activities module!

                                                                                                                Hi team! Something we are really missing is able to see the field Company when working in the activities module. We have a lot of tasks and need to see what company it's related to. It's really annoying to not be able to see it.🙈 Thx!
                                                                                                              • Analytics <-> Invoice Connection DELETED by Zoho

                                                                                                                Hi All, I am reaching out today because of a big issue we have at the moment with Zoho Analytics and Zoho Invoice. Our organization relies on Zoho Analytics for most of our reporting (operationnal teams). A few days ago we observed a sync issue with the
                                                                                                              • Long table name (sync from Zoho Creator)

                                                                                                                Dears, How can I remove the suffix in parentheses? These tables are synced from Zoho Creator and are treated as system tables, so their names cannot be changed. This issue makes the aggregation formulas look awful.
                                                                                                              • Inquiry regarding auto-save behavior for Zoho Sign Embedded Sending

                                                                                                                Dear Zoho Support Team, I am currently integrating Zoho Sign's Embedded Sending functionality using iframes on my website. I would like to know if there is a way to ensure that the document state (including any added fields) is automatically saved as
                                                                                                              • Unable to Assign Multiple Categories to a Single Product in Zoho Commerce

                                                                                                                Hello Zoho Commerce Support Team, I am facing an issue while assigning categories to products in Zoho Commerce. I want to assign multiple categories to a single product, but in the Item edit page, the Category field allows selecting only one category
                                                                                                              • Upcoming update to Google Drive integration in Zoho Creator

                                                                                                                Hello everyone, We're writing to inform you about an upcoming update to how Zoho Creator integrates with Google Drive. In Zoho Creator, during actions like importing files to create an app or attaching files to fields, you can choose files directly from
                                                                                                              • Managing Scheduled Replies

                                                                                                                Communication is most effective when the intended message reaches the right person at the right time. However, this can be challenging when communication occurs across different time zones. By scheduling replies, businesses can ensure that responses reach
                                                                                                              • Show price book list price

                                                                                                                When using price books, once you add products to the price book in the Products related list you can display the Unit price which is the default list price; however, there is no option to show the price book list price. To see the price book list price
                                                                                                              • Allow Attaching Quartz Recordings to Existing Zoho Support Tickets

                                                                                                                Hi Zoho Team, We would like to request an enhancement to how Zoho Quartz recordings integrate with Zoho Support tickets. Current Behavior: At the moment, each Quartz recording automatically creates a new support ticket. However, in many real-world scenarios:
                                                                                                              • Feature Request - Set Default Values for Meetings

                                                                                                                Hi Zoho CRM Team, It would be very useful if we could set default values for meeting parameters. For example, if you always wanted Reminder 1 Day before. Currently you need to remember to choose it for every meeting. Also being able to use merge tags
                                                                                                              • Issue with open-rate reporting in Zoho Campaigns

                                                                                                                Hello, Since yesterday I’ve been experiencing an issue with the open-rate reports in Zoho Campaigns. The campaigns I send appear in the reports as if none of the emails have been opened, even though I know they have. To verify this, I replicated the campaign
                                                                                                              • Can I hide empty Contact fields from view?

                                                                                                                Some contacts have a lot of empty fields, others are mostly filled. Is there a way I can hide/show empty fields without changing the actual Layout? I would like to de-clutter my view, and also be able to add information later as I am able. I would be
                                                                                                              • Manage user roles and profiles from the Bigin app (iOS and macOS)

                                                                                                                Hello everyone! We're happy to announce that you can manage user roles and profiles from the Bigin mobile app. The Users & Controls section has three subsections: Users, Profiles, and Roles. Users Employees who belong to your Bigin organization are called
                                                                                                              • Support Bots and Automations in External Channels

                                                                                                                Hello Zoho Cliq Team, How are you? We actively use Zoho Cliq for collaboration, including with our external developers. For this purpose, external channels are a key tool since they work seamlessly within the same interface as all of our other channels
                                                                                                              • Stop the Workarounds: We Need Native Multi-Step Forms

                                                                                                                After over 17 years of community requests, I'm hoping the Zoho team can finally address the lack of native multi-page form support in Zoho Creator. This has been one of the longest-standing feature requests in the community, with threads spanning nearly
                                                                                                              • Zoho Books Sandbox environment

                                                                                                                Hello. Is there a free sandbox environment for the developers using Zoho Books API? I am working on the Zoho Books add-on and currently not ready to buy a premium service - maybe later when my add-on will start to bring money. Right now I just need a
                                                                                                              • Form to PDF template

                                                                                                                I am looking to create a Form and when information is inputted, it will merge it into a PDF template we already have. There could be multiple lines in the form and each line inputs information into a new page of a PDF template.
                                                                                                              • Using gift vouchers

                                                                                                                We would like to be able to offer a limited number of gift vouchers, of varying values, to our customers, and are looking for the best way to do this. We have looked at Coupons and Gift Certificates, but neither seem to fit the bill perfectly. Coupons:
                                                                                                              • Customizable UI components in pages | Theme builder

                                                                                                                Anyone know when these roadmap items are scheduled for release? They were originally scheduled for Q4 2025. https://www.zoho.com/creator/product-roadmap.html
                                                                                                              • Please verify my account

                                                                                                                Hi, We have just launched our website and received media coverage in our country. Hundreds of users are signing up for our platform every day. We would like to send them a welcome email, but we are unable to do so because our ZeptoMail account has not
                                                                                                              • Subject character limit increase

                                                                                                                We have an occasional user case where subject lines exceed 500 characters which is the ZeptoMail imposed limit. While I understand long subject lines are not "best practice", these are particular notification emails with specific information for client
                                                                                                              • Account blocked

                                                                                                                Yesterday I got my Zeptomail account blocked due to too many hard bounces. My account is used exclusively for sending transactional emails (eg. your order has been shipped, a form has been filled, etc) and the sudden blocking impacted hundreds of websites
                                                                                                              • Nested notebooks

                                                                                                                Dear Sir/Madam, I would like to know if it is possible to nest notebooks. It would be very helpful when there are too many, as it would improve organization. Thank you for your response. Best regards.
                                                                                                              • Whats that

                                                                                                                Price?
                                                                                                              • Proactive Alert for Existing Open Tickets per Contact / Account

                                                                                                                Hello Zoho Desk Team, Greetings, and hope you’re doing well. We would like to submit a feature request aimed at improving agent awareness and efficiency when handling tickets in Zoho Desk. Use case When an agent opens a ticket (new or existing), it is
                                                                                                              • Shift-Centric View for Assigning and Managing Shifts in Zoho People

                                                                                                                Hello Zoho People Product Team, Greetings and hope you are doing well. This feature request is related to Zoho People - please don't move it to zoho one! We would like to submit a feature request regarding the shift assignment and management view in Zoho
                                                                                                              • Bring Zoho Shifts Capabilities into Zoho People Shift Module

                                                                                                                Hello Zoho People Product Team, After a deep review of the Zoho People Shift module and a direct comparison with Zoho Shifts, we would like to raise a feature request and serious concern regarding the current state of shift management in Zoho People.
                                                                                                              • Add the ability to Hide Pages in Page Rules

                                                                                                                Hi, We have Field Rules to show and hide fields and we have page Rules, but we can't hide a page in Page Rules so it isn't completed before the previous page (And then have the Deny Rules to prevent submitting without both pages completed), we can only
                                                                                                              • Ticket resolution field - can you add links, video, and images?

                                                                                                                Seems like the ticket resolution fields is just a text field. Any plans to add the ability to add links, images...the same functionality in the problem description box? I would like to send the customer a link to a KB article, a link to our Wiki, embed
                                                                                                              • Ticket Resolution - Add rich formatting, screenshots and attachments

                                                                                                                The resolution field only allows plain text at the moment. Many of our resolutions involve posting screenshots as evidence, it would be great for us to be able to have rich text formatting, be able to paste screenshots and add attachments in the solution
                                                                                                              • Remove the “One Migration Per User” Limitation in Zoho WorkDrive

                                                                                                                Hi Zoho WorkDrive Team, Hope you are doing well. We would like to raise a critical feature request regarding the Google Drive → Zoho WorkDrive migration process. Current Limitation: Zoho WorkDrive currently enforces a hard limitation: A Zoho WorkDrive
                                                                                                              • Setting certian items to be pickup only

                                                                                                                How do we have some items that are pickup only? I have several items in my item's list that I do not ship. But they need to be on the website to be sold, and picked up in store. Need to be able to do this as one of these products is a major seller for
                                                                                                              • Deprecation Notice: OpenAI Assistants API will be shut down on August 26, 2026

                                                                                                                I recieved this email from openAI what does it means for us that are using the integration and what should we do? Earlier this year, we shared our plan to deprecate the Assistants API once the Responses API reached feature parity. With the launch of Conversations,
                                                                                                              • CRUD actions for Resources via API

                                                                                                                Hello, is it possible to perform CRUD actions through the API for Resources? We want to create a sync from Zoho CRM Car record to Bookings resources to create availabilities for Car bookings. For Test drives, not only the sales person needs to be available,
                                                                                                              • Next Page