Kaizen#135 : Third Party Integration using Client Script

Kaizen#135 : Third Party Integration using Client Script

Hello everyone !

Welcome back to another enlightening Kaizen post! In this Kaizen post, we'll explore how to invoke a Third-Party API through Client Script. This enables you to seamlessly connect to external services and fetch dynamic data. Stay tuned to discover the step-by-step process of invoking a Third-Party API withi your client-side scripts. This post will answer the question on Importing data from third party API.


In this Kaizen post,

  1. Overview
  2. What are Connections?
  3. How to invoke a Connection in Client Script?
  4. Use Case 
  5. Solution 
    1. Create a Connection.
    2. Add to Trusted Domain.
    3. Invoke the connection in Client Script and populate the field using Client Script.
  6. Summary
  7. Recommended Reads


1. Overview



To accomplish Third Party Integration using Client Script,  you need to create a Custom service Connection and invoke the connection in Client Script. Once you get the response from the Third Party API call, you can populate or display the required data using Client Script. 


2. What are Connections?

Connections in Zoho CRM  is used to establish authentication with other Zoho or third-party services to perform integration with them. Check this Kaizen post to know more about Connections and Authentication types.

3. How to invoke a Connection in Client Script?

To invoke a Connection using Client Script, you need to use the invoke method with the required parameters.

Syntax :                  invoke(connection_name, url, method, param_type, parameters, headers)  




Note: 

           Whenever you want to make third party API calls, you need to whitelist them by adding the third party domain to Trusted Domain.                     


4. Use Case :

Zylker is a manufacturing organisation. Orders will be placed by the Salesperson by creating a record in the custom module "Requests" . The Admin wants to populate the distance between Manufacturer Location and Seller Location in the "distance" field using the Distance Matrix API.



5. Solution :
To populate the field "Distance" based on the response recevied from the third party API call using Client Script you need to follow the below steps.
  1. Create a Connection.
  2. Add to Trusted Domain.
  3. Invoke the connection in Client Script and populate the field using Client Script.

1. Create a Connection :

  • In Zoho CRM, go to Setup → Developer Hub → Connections and click "Create Connection"


  • Under "1. Pick Your Service" , select "Custom Services" and click "Create New Service".


  • Enter the following details and click "Create Service".



  • Now,  you will be prompted to enter the authentication credentials, Here it is the API Key. Enter the value and click "Connect".



2. Add to Trusted Domain:
  • Whenever you want to make third party API calls, you need to whitelist them by adding the third party domain to Trusted Domain.

  • To do this go to Setup → Security Control → Trusted Domain.


  • Click New Trusted Domain.


  • Enter the Name and Domain details and click Save.
3. Invoke the connection in Client Script and populate the field using Client Script.

  • The next step is to invoke the connection using Client Script using the invoke method.
  • For this, create a Client Script on Create Page of "Requests" custom module and specify the event as onChange Page event as follows and click Next.
     


  • Enter the below script and click Save.

Script :

  1. if (field_name == "Seller_Location" || field_name == "Manufacturer_Location") {
  2.     let origins = ZDK.Page.getField('Manufacturer_Location').getValue();
  3.     let destinations = ZDK.Page.getField('Seller_Location').getValue();
  4.     let dist = ZDK.Page.getField('Distance');
  5.     dist.setReadOnly(true);
  6.     var response = ZDK.Apps.CRM.Connections.invoke("measuredistance", `https://api.distancematrix.ai/maps/api/distancematrix/json?`, "GET", 1, { "origins": origins, "destinations": destinations }, {});
  7.     let distance = response._details.statusMessage.rows[0].elements[0].distance.text;
  8.     dist.setValue(distance);
  9. }
  • Here the values of the fields Seller_Location and Manufacturer_Location are captured using getValue() and are stored in origins and destinations respectively. The Third Party API - Distance Matrix returns the distance between origins and detstinations. So you need to pass these two parameters in the invoke() method and  capture the response and populate the distance to the "Distance" field using setValue() method.
  • As per the following syntax, you should pass the required parameters.
Syntax : invoke(connection_name, url, method, param_type, parameters, headers) 

  • The connection_name  is "distanceMatrix".
  • The URL is https://api.distancematrix.ai/maps/api/distancematrix/json?&key=${key}Note that the "key" is represented as ${key} as it is a variable. This is the variable name that you mentioned while creating the Connection.
  • GET is the method as we are fetching data.
  • For URL parameters , you should mention 1.
  • Parameters are { "origins": origins, "destinations": destinations } 
  • {} represents that there are no headers.
  • Now, create a record in Requests and enter the location details. You can see the "Distance" field getting populated as shown below.

  • Here is how the Client Script works.


6. Summary :

In this post we have discussed,
  • How to invoke a third-party API call in Client Script
  • How to create a Custom Service Connection
  • How to use Connections in Client Script.
  • How to add a new Trusted Domain
  • How to populate a field with the response of a third-party API call.

7. Recommended Reads :
______________________________________________________________________________________________________________________________________

Previous post :  Kaizen #134 : Manipulating Rich Text Field (RTF) using Zoho CRM APIs | Kaizen Collection : Home.                     

Join us for our upcoming Zoho CRM Developer Series: Zoho CRM APIs, where you can explore more about Zoho CRM APIs. Register Now!  
  



Cheers!
Maadhari M






    Access your files securely from anywhere

        Zoho FSM Video Tutorials


              All-in-one knowledge management and training platform for your employees and customers.






                                    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

                                                                    • Announcing the new SKILL.md for Zoho CRM and the updated OAS repository!

                                                                      We are introducing a new zoho-crm skill to make working with Zoho CRM Developer tools (like APIs, functions, widgets, client scripts, queries etc) easier and faster, with the help of AI in your preferred AI harness like Claude Code, Codex, Cursor, VSCode
                                                                    • Kaizen #256 - Build an Arrival Readiness Web Tab in Zoho CRM

                                                                      Hi everyone! Welcome back to the Kaizen series! In the post, we discuss a use case in hospitality industry: how an Arrival Readiness web tab widget can be used to let reception staff identify and resolve issues before arrival of guests. Use case In the
                                                                    • Kaizen #198: Using Client Script for Custom Validation in Blueprint

                                                                      Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                                    • 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


                                                                    Manage your brands on social media



                                                                          Zoho TeamInbox Resources



                                                                              Zoho CRM Plus Resources

                                                                                Zoho Books Resources


                                                                                  Zoho Billing 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

                                                                                                                        • [BUG] WebTabs in ZohoCRM now have a spurious "\" displayed along with some additional HTML Head code included

                                                                                                                          An example of the issue can be seen below:
                                                                                                                        • CNIL - Suivi de Pixel

                                                                                                                          Bonjour à tous, À la suite de la nouvelle recommandation de la CNIL sur les pixels de suivi dans les e-mails, savez-vous si Zoho Campaigns permet : de conditionner le suivi des ouvertures au consentement de chaque contact ; de proposer un lien permettant
                                                                                                                        • Scheduled import

                                                                                                                          The tutorial shows a scheduled import option but this option doesn't appear to be available when using Zoho DB.
                                                                                                                        • #4 Choosing How My Invoice Should Look

                                                                                                                          Day 4: Meera had the basics sorted. Her business name was there, the address looked right, and her logo finally appeared where it should. But the invoice still did not quite look like hers. Her old studio used invoices that were clean, tightly laid out,
                                                                                                                        • Transaction rules for "Owner's Contribution" ?

                                                                                                                          I have a bank account where a lot of the deposits are "Owner's Contributions" (i.e., the business owner investing money in the company). Is it possible to create a Transaction Rule to automatically recognize these? They all have the same verbiage from
                                                                                                                        • DYK 12: Turn Email into Work Items

                                                                                                                          Did you know you can add work items to your Zoho Projects portal directly from your inbox? The initial step of important collaborations start over an email, and most of these require an immediate follow-up by creating a task, or reporting an issue. During
                                                                                                                        • Custom Function not getting package details when triggered from Workflow Rules.

                                                                                                                          I have a custom function for Packages that submits a form in our Creator app that we use to generate custom shipping labels (internal staff complete deliveries so we cannot generate shipping labels straight from Inventory). When the function is executed
                                                                                                                        • how to Solve Conflict Invoices in Zoho POS

                                                                                                                          Hello Team, I am facing a repeated issue in Zoho POS while saving a sale that contains service-based items. My products are intentionally created as Service (Non-Inventory) items because I do not want to track stock for them. However, every time I try
                                                                                                                        • ¿Cuándo estará disponible la edición de Zoho POS para México?

                                                                                                                          He estado revisando las capacidades de Zoho POS y su evolución dentro de la estrategia de Zoho for Retail, y me parece que existe una oportunidad muy interesante para el mercado mexicano. Zoho POS ya ofrece funcionalidades para gestionar ventas, inventario,
                                                                                                                        • Important update for Zoho RPA Windows Agent users

                                                                                                                          Hi everyone, We would like to share an important update for Zoho RPA Windows Agent users running Windows Server 2016 or Windows Server 2019. The new Zoho RPA Windows Agent 6.0.0 and later versions are not supported on Windows Server 2016 and Windows Server
                                                                                                                        • Multi-Option Estimates: One Estimate, Multiple Choices

                                                                                                                          Every service request can have multiple solutions. Multi-Option Estimates help you present these different solutions in a single estimate with its own name, parts, price, and total. Each option can differ in scope, approach, or price — whatever choices
                                                                                                                        • Delete CRM Portal

                                                                                                                          How do I delete portals from my CRM? I created one just to test, it is not in use and is disabled but it's existence is preventing me from marking fields in modules as "required" unless I make it 'read/write' in the portal first. I'd rather just delete
                                                                                                                        • Marketing Tip #32: Improve SEO and customer confidence with an FAQ section

                                                                                                                          Before making a purchase, customers often have simple questions about delivery times, returns, product usage, or sizing. If they can’t quickly find answers, they may leave your store without buying. Adding a clear FAQ (Frequently Asked Questions) section
                                                                                                                        • Contact removed when picking ticket template.

                                                                                                                          hi new to Desk rolling out to company, replacing Freshdesk. Is there way to keep the in context contact when selecting a template? When you choose a template you lose the contact!
                                                                                                                        • ZOHO Campaigns in ZOHO Analytics - Campaigns vs Contacts Table

                                                                                                                          There seems to be information in the Zoho Campaigns table such as Unique Opens and Unique Clicks that can't be found in the Campaigns vs Contacts table where only Opens and Clicks are shown on a per contact level. Is there a way to bring Unique Opens
                                                                                                                        • Zoho Publish is now available in Zoho One!

                                                                                                                          Hello Zoho One users, We’re excited to announce that Zoho Publish is now included as part of the Zoho One suite! As businesses grow, managing Google Business Profiles across many locations becomes challenging. Business information needs to stay accurate,
                                                                                                                        • How to change an employee mail id

                                                                                                                          Hi, Does the administrator have the rights to edit an  employees mail id. 
                                                                                                                        • Cousin Domain Verification in Zoho Mail: Identify and block look-alike domains

                                                                                                                          Phishing attacks often rely on domain names that closely resemble legitimate ones. This makes it difficult for users to identify fraudulent emails at first glance. Zoho Mail's Cousin Domain Verification feature allows administrators to define trusted
                                                                                                                        • How do I add 2 agents under the same email?

                                                                                                                          I have 2 agents who use the same email address. I added one, but when adding the second agent, it says that the email is already registered. How do I configure this properly?
                                                                                                                        • Zoho Desk API modifiedTimeRange returns HTTP 500 around 2026-03-08T02:00:00.000Z

                                                                                                                          Hello Zoho Support Team, We are experiencing a reproducible HTTP 500 Internal Server Error when querying the Zoho Desk API search endpoint with a specific modifiedTimeRange boundary. ### API Endpoint GET /api/v1/tickets/search ### Reproduction Steps &
                                                                                                                        • Updating an Invoice Line Item's Discount Account via API Call / Deluge Custom Function

                                                                                                                          I need help updating an invoice line item's discount account via API. Below is a screenshot of the line item field I am referring to. Now the field to the left of the highlighted field (discount account) is the sales income account. I am able to modify
                                                                                                                        • Collaborate Visually with Whiteboard in Zoho Projects

                                                                                                                          Whiteboard in Zoho Projects allows you to collaborate visually by creating diagrams, annotating designs, and sketching project workflows using shapes, text, and images within project modules. Team members can work simultaneously, improving productivity
                                                                                                                        • Associate project with timer on iPhone

                                                                                                                          When I start the timer without first associating a project (on my iPhone), its starts fine but now when I need to associate a project, and click on the link, I get a list of EVERY project I've ever put into Zoho Books. It used to just show active projects.
                                                                                                                        • Sales Tax Refund on Commerce Order

                                                                                                                          I've looked high and low. Relatively new to ZOHO but not to systems in general. How do we produce a refund for sales tax charged and paid for by a customer in error? This does not impact inventory stock. Simply for accounting and getting the $ back to
                                                                                                                        • Importing Chart of Accounts from Quickbooks -- "Debit or Credit"?

                                                                                                                          I'm trying to switch from QB to Zoho Books. I've prepped my chart of accounts and put it into the format following the structure of the sample CSV file. But one thing that does not exist at all on the Quickbooks side is the Zoho column for "Debit or Credit".
                                                                                                                        • Long term pricing for customers managing multiple organizations

                                                                                                                          I've been using Zoho extensively for quite some time and genuinely think it's one of the most powerful and customizable business platforms available. Between Zoho Books and Zoho Analytics, I've invested a significant amount of time building automations,
                                                                                                                        • Default Status for Appointments to Completed

                                                                                                                          We use Zoho Bookings integrated with Zoho Desk to book time for tech support sessions, we've configured it to only allow for a contact to book a single session to avoid customers overbooking time that may not be needed. The trouble is, once a session
                                                                                                                        • Customer User Fields for use in Rules

                                                                                                                          Hi, I would like to be able to add custom fields to the users, such as Department or Role, which can then be used in Rules, Reports, etc. as a condition. A use case is limiting Global lists or Choices based on the users Custom Field, so one form can be
                                                                                                                        • Add ZeptoMail to Zoho One

                                                                                                                          Hi Zoho Team, I would like to request that ZeptoMail be added as a fully included application within Zoho One. Why this is important Zoho One is positioned as a unified business operating system that brings the applications an organization needs under
                                                                                                                        • Item image on document

                                                                                                                          I know what I am asking may not be possible, but I will ask anyway, maybe I will get lucky, and someone else is doing it. My business is based on special orders only from various online stores. When I send a quote to a client, I generate a separate quote
                                                                                                                        • Dashboard Metric Drill-Down Shows Stale Data

                                                                                                                          Summary: When clicking between different metric components on a custom dashboard, the drill-down list shows data from the previously opened metric instead of the one just clicked. Steps to Reproduce: Create a custom dashboard with multiple pre-defined/templatized
                                                                                                                        • Zoho Marketing Automation WhatsApp Campaign Import Sync for Zoho Analytics

                                                                                                                          WhatsApp is a critical channel in modern marketing, yet WhatsApp Campaign metrics from Zoho Marketing Automation currently cannot be natively imported into Zoho Analytics via the default advanced analytics connector. Integrating this into the standard
                                                                                                                        • Allow Reauthorizing CRM Connections Without Revoking First

                                                                                                                          Currently, when a Zoho CRM connection needs to be reauthorized or authorized with another account, we first have to revoke the existing authorization and then authorize it again. This creates a gap where the connection is unavailable, and any functions,
                                                                                                                        • Programmatic Itemized Expenses?

                                                                                                                          It does not appear that it is possible to create itemized expenses programmatically (via the API)? Is this correct, or am I misunderstanding the situation?
                                                                                                                        • Prefix & Suffix on Single Line, Number, etc.

                                                                                                                          Hi, I would like to have the same Prefix and Suffix that was added to the Unique ID on Text and Number Fields. Use case could be as basic as temperature, as per another Idea I have to use Single Line (Text) for a number that might have leading zeros today,
                                                                                                                        • Handle Leading Zeros in a Number Field

                                                                                                                          Hi, If I use a Number Field, set with Min 7 Digits and Max 7 Digits, and enter 0000001, it will result in 1 and an error as it removes the leading zeros, the same with entering 0012340 will result in 12340 and error. So I have to use a Text Field and
                                                                                                                        • Is there a way to show contact emails in the Account?

                                                                                                                          I know I can see the emails I have sent and received on a Contact detail view, but I want to be able to see all the emails that have been sent and received between all an Accounts Contacts on the Account Detail view. That way when I see the Account detail
                                                                                                                        • Virtual Option for Fields

                                                                                                                          Hi, I would like to be able to choose another option other than Read-Only or Disabled, such as Virtual. And with Virtual, the field is shown on the form and avilable in rules, but NOT saved to the Database. A use case is having multiple Large Lists of
                                                                                                                        • Zoho Marketing Automation Cannot Sync Lookiup Fields

                                                                                                                          Hello all, It seems that Zoho MA cannot sync Lookup fields from the CRM. Can you confirm if this is the case? Is there a workaround? Do you know if Campaigns can sync with custom modules and also with Lookup field in the CRM? Thank you!
                                                                                                                        • Specific ListView Canvas on Canvas Home Page Always Loads Most Recent ListView, Not the One Specified

                                                                                                                          I had mentioned this to ZOHO, but I mainly wanted to see if others in the Community are also facing this problem. I created a Canvas ListView for a Custom Module, and then created a Canvas Home page (technically on a tab item, but I'm not sure if that
                                                                                                                        • Next Page