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 #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.
                                                            • Kaizen #210 - Answering your Questions | Event Management System using ZDK CLI

                                                              Hello Everyone, Welcome back to yet another post in the Kaizen Series! As you already may know, for the Kaizen #200 milestone, we asked for your feedback and many of you suggested topics for us to discuss. We have been writing on these topics over the


                                                            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

                                                                                                              • Upgrade Zoho Desk Agent-Side Answer Bot to GenAI

                                                                                                                Hello Zoho Desk Team, We hope you're doing well. Following the recent announcements and rollout of the GenAI-based Answer Bot in Zoho SalesIQ (Nova '25), we’d like to formally request a similar upgrade for the Answer Bot used by agents inside Zoho Desk.
                                                                                                              • Marketers' Space: The importance of warming up your sender domain

                                                                                                                Hello Marketers, Welcome back to yet another post! Today, we'll talk about why warming up your sender domain matters. Imagine you've recently started a business and want to share the news with your customers. You've designed a great email campaign using
                                                                                                              • An Exclusive Session for Zoho Desk Users: AI in Zoho Desk

                                                                                                                A Zoho Community Learning Initiative Hello everyone! This is an announcement for Zoho Desk users and anyone exploring Zoho Desk. With every nook and corner buzzing, "AI's here, AI's there," it's the right time for us to take a closer look at how the AI
                                                                                                              • Search Just Got Smarter in Notebook

                                                                                                                Hello there! Introducing Our New & Improved Search Experience! We heard your feedback! Many of you shared that our previous search had some challenges like • Inconsistent results across different clients • Limited accuracy in finding the right content
                                                                                                              • Zoho Desk app update - AI Integration for IM Chats

                                                                                                                Hello everyone! We have now introduced AI integration for IM Chats within the Zoho Desk mobile app. To access the feature, please enable the 'Generative AI' settings on the desktop site(desk.zoho.com). Please refer to the help link attached below: Zoho
                                                                                                              • Open A.I assistant Connect with Zoho Desk instant Message Conversations

                                                                                                                I would like to know how do I connect my instant messenger in Zoho desk with my Open A.I Gpt Assistant. this is very easy to setup using the Salesiq Zobot but when it comes to Zoho Desk i cannot figure how to make the connection. Ideal workflow Customers
                                                                                                              • Cannot upgrade subscription plan due to payment error message

                                                                                                                Hi Zoho team, This is to request support on an issue I am facing during an upgrade I am trying to make to our company's yearly Zoho subscription. I am trying to add 3 more license to my plan and during the payment phase I get the below error as in the
                                                                                                              • Enhancing Zia's service with better contextual responses and article generation

                                                                                                                Hello everyone, We are enhancing Zia's Generative AI service to make your support experience smarter. Here's how: Increased accuracy with Qwen One of the key challenges in AI is delivering responses that are both contextually accurate and empathetic while
                                                                                                              • Zoho Desk app update: AI powered features

                                                                                                                Hello everyone! We’ve introduced various AI-powered services on the Zoho Desk app. Let's take a look at what's new. Generate Content: Generate Content uses AI to formulate responses based on the your query and provides a ready-to-use reply which can be
                                                                                                              • Bulk update Archived Ticket

                                                                                                                Dear All We would like to update the "Category" values to the new filed. We found the archived Ticket seems to be don't support the bulk action. Do we have any way to update it. Finally, we would to generate a report for our ticket system. Regards I
                                                                                                              • Channel Configuration and Default Channels

                                                                                                                There are some of the default fields that cannot be removed or changed. Examples are the social media ones, such as Facebook. It would be nice to be able to remove these fields as it would be confusing if someone selected this but it's not configure
                                                                                                              • Delay function execute

                                                                                                                I've got a workflow which uses a webhook to send information to Flow, which in return updates a record in Creator. Problem is, by the time this has executed, the rest of my script has run and can't find the (yet to be) updated info in the record. Is there
                                                                                                              • Support www.camcard.com

                                                                                                                Hi, Is it possible CRM Zoho have integrations with https://camcard.com/? Thanks Br, Andy
                                                                                                              • Option to Customize Career Site URL Without “/jobs/Careers”

                                                                                                                Dear Zoho Recruit Team, I hope you are doing well. We would like to request an enhancement to the Career Site URL structure in Zoho Recruit. In the old version of the career site, our URL was simply: 👉 https://jobs.domain.com However, after moving to
                                                                                                              • Can't make a document editable to anyone

                                                                                                                Hey everyone, I am using Zoho Workdrive and trying to share a document so that it is editable by anyone with the link. I am trying to convince people to shift from Google to Zoho, but they don't have accounts yet. When I try to change the share settings
                                                                                                              • Edit Default Print

                                                                                                                What I want to do is create / edit the "Default Print" template without changing the layout I'm using. Currently I can create "Email Templates" but I don't use them for emailing and getting to that selection takes multiple clicks. If an email template could be set to be the Default Print template that would be helpful. I'd also like to print these in bulk but don't see that option (there is a mail merge macro but that goes straight to emailing, not to print or PDF).
                                                                                                              • Widget shows error

                                                                                                                Hi, May I ask why below characters will be auto added into the widget link and how to solve this error? As my widget shows 404 error now. ?serviceOrigin=https%3A%2F%2Fcrm.zoho.com&frameorigin=https%3A%2F%2Fcrm.zoho.com
                                                                                                              • How to print envelope labels from Zoho CRM

                                                                                                                Can anybody give me any clue how to print envelope/package labels directly from Contacts view? Regards, Alexandru Moderation Update: The Canvas Print View, which also facilitates the formatting of mailing labels, is now available! Learn more here: Zoho
                                                                                                              • Data Import: New interface, improved field mapping, and more

                                                                                                                Hello everyone! We’ve redesigned the data import process to ensure accurate field alignment and verify that every column in the uploaded file maps correctly with Desk fields before import. Here's how: Streamlined Import Steps Importing data is now more
                                                                                                              • Address labels

                                                                                                                Hi, we've been searching for a long time for a simple way for our employees to print address labels using a Dymo Label Writer 450. We came up with two alternatives that work, bur aren't really optimal.  First one is WebMerge. Webmerge is a great application that does 100% what we need but it is way too expensive for our needs. We only need to print a couple of labels per month. The second one is the integrated print tool in Zoho CRM, (Print preview) You would think this is the obvious way to do this
                                                                                                              • This domain is not allowed to add. Please contact support-as@zohocorp.com for further details

                                                                                                                I am trying to setup the free version of Zoho Mail. When I tried to add my domain, theselfreunion.com I got the error message that is the subject of this Topic. I've read your other community forum topics, and this is NOT a free domain. So what is the
                                                                                                              • Print Labels

                                                                                                                How can I configure my address to print my labels like this: Name Mailing Address Mailing City, Mailing State Mailing Zip Country Instead of: Name Mailing Address Mailing City Mailing State Mailing Zip Country Thanks!!!!
                                                                                                              • Mailing labels - Improperly formatted

                                                                                                                All I'm trying to do is print one, properly formatted, mailing label. I'm in the Contacts module. In the default "list view" for mailing labels I selected a single client, hit the "more actions" drop down and selected print mailing label. Unfortunately,
                                                                                                              • Printing mailing labels

                                                                                                                The ability to print mailing labels would seem to be an important, basic, function of a good CRM. I find it very surprising that this has still not been addressed adequately by Zoho. When trying to use the existing "mailing label" included: 1. the data
                                                                                                              • Pageless mode needed to modernise Writer

                                                                                                                When we switched from GSuite to Zoho, one of the easiest apps I found to give up, was Docs. In many ways, Writer has always been more powerful than Docs, especially in terms of workflows/fillable forms/etc. However, I went back into Docs because I notice
                                                                                                              • Zoho Projects - Visual improvement to parent and sub-task relationship

                                                                                                                Hi Projects Team, My feature request is to improve sub-task visibility. Please see screenshot below. I really think parent child relationships could be visually improved. Even if the first letter of the parent task was inline with other same level tasks
                                                                                                              • AI Interview Insights: Turn Recorded Interviews into Quick Transcripts & Summaries

                                                                                                                Evaluating interviews shouldn’t require replaying long recordings or taking manual notes. With AI Interview Insights, you can now review complete transcripts and AI-generated summaries of your One-way (Recorded) interviews right inside Zoho Recruit. This
                                                                                                              • API method to get activity feed in Recruit

                                                                                                                Hi community, I'm trying to figure out - is there any API method tto get information about datetime when Recruit/Candidates record tag where added?
                                                                                                              • Printing Mailing labels

                                                                                                                Is there any way to adjust the size of the printing labels? or product would I use to print labels from Zoho? Thanks, Josef Krieger Moderation Update (14th April 2025): We have another post discussing the same topic with votes and feedback from users.
                                                                                                              • Default to Current Date

                                                                                                                I'm importing data from a excel spread sheet that does not have date column and I'd like the date column in the Zoho Database to default to the current date. Any way I can do this?
                                                                                                              • "Spreadsheet Mode" for Fast Bulk Edits

                                                                                                                One of the challenges with using Zoho Inventory is when bulk edits need to be done via the UI, and each value that needs to be changed is different. A very common use case here is price changes. Often, a price increase will need to be implemented, and
                                                                                                              • Different Company Name for billing & shipping address

                                                                                                                We are using Zoho Books & Inventory for our Logistics and started to realize soon, that Zoho is not offering a dedicated field for a shipping address company name .. when we are creating carrier shipping labels, the Billing Address company name gets always
                                                                                                              • What's New in Zoho Inventory | Q2 2025

                                                                                                                Hello Customers, The second quarter have been exciting months for Zoho Inventory! We’ve introduced impactful new features and enhancements to help you manage inventory operations with even greater precision and control. While we have many more exciting
                                                                                                              • Make Packages from multiple sales order of a single customer

                                                                                                                Our customers sends orders to us very frequently, some times what customer wants is to ship items from 5 to 6 sales orders in a single shipment. it will be very nice if, zoho can implement this function, in which we can select items from other sales orders of the customer.
                                                                                                              • Print a price list or price book

                                                                                                                Hi Community. Am I right in concluding that Zoho has no functionality to print a price list from either Zoho CRM, Zoho Inventory or Zoho Books? I won't get stuck on the fact that Zoho doesn't sync price books between Zoho CRM and Books/Inventory (more
                                                                                                              • Show Custom Button in Portal Listview Canvas

                                                                                                                I have created a custom button that shows in a list view of deals (internally I can see it). I have permissions to allow this button on the portal. But it is not displaying in the canvas list? Before I do too much leg work, is this function allowed?
                                                                                                              • Zoho Sites "pages" management page

                                                                                                                I have 80 plus pages on zoho sites. When I go to the "pages" link to view and edit pages, They are not in any kind of order, so I spend lots of time searching for pages when I need to edit or create new. How can I change the view order of all my pages
                                                                                                              • AI feature in Zoho Desk suggesting answers based on past ticket threads

                                                                                                                Hi I would like to suggest something that would be very useful : instead of suggesting answers based on the Knowledge Base, I think it would be great if Zia could analyze the history of all customer and agents threads, to suggest answers in new tickets.
                                                                                                              • Advanced Customization of the Help Center using JavaScript

                                                                                                                Hello everyone, The Help Center in Zoho Desk can be customized by using HTML and CSS to provide structure and enhance the page's appearance—but what if you want to add interactive and dynamic elements? You can add these effects with JavaScript, a programming
                                                                                                              • Introducing Zoho POS for the Kingdom of Saudi Arabia

                                                                                                                Hey everyone, We are excited to kick-start December with a completely personalized edition of POS for retail businesses in Saudi Arabia to help run your operations with ease. It offers four different subscription plans—Free, Standard, Professional, and
                                                                                                              • Next Page