Extension Pointers - JS SDK Series #8: Use the SearchRecord API in a widget to simplify business operations

Extension Pointers - JS SDK Series #8: Use the SearchRecord API in a widget to simplify business operations

Looking up relevant business information is easier when you have an internal search feature that targets certain keywords or phrases. Often times, this information will be worked with and manipulated to be useful for the current task the searcher is doing, which means that a faster internal search process will lead to better productivity.

The SearchRecord API is used to retrieve records that match your search criteria. It performs a module-level search based on either a phone number, email address, word, or other piece of criteria. It's most helpful to search for text in the fields of data type "string", "phone", or "Email".

In this post, we will look at an example that involves searching for and updating records using the searchRecord and updateRecord APIs. We'll first give the syntax followed by an example scenario.

SearchRecord API

Syntax

ZOHO.CRM.API.searchRecord(config, page, per_page) 

Here, config refers to the configuration object of the 'object' type, page refers to the page number, and per_page refers to the number of records to be generated per page.

Configuration Object

Name
Type
Description
Entity
String
SysRefName (of the module)
Type
String
Allowed values "email|phone|word|criteria"
Query
String
Query string
delay
Boolean
Query string

Note : Please check here for more details and limitations on SearchRecord API.

UpdateRecord API

Syntax

ZOHO.CRM.API.updateRecord(config) 

Here, config refers to the configuration object of the 'object' type.

Configuration Object

Name
Type
Description
Entity
String
SysRefName (of the module)
Trigger
list
The trigger input can be "workflow", "approval", or "blueprint". If the trigger is not mentioned, the workflows, approvals, and blueprints related to the API will get executed. Enter the trigger value as [] to not execute the workflows.

API data
String
The data to be updated is constructed as
updateRecord's API Data parameter.

Let's take a simple scenario where a Zoho CRM user is handling a customer case. They would like to check if a similar problem has already been addressed in another case and if they can use any of those solutions for their own case. In our example, we will see:
  • How the SearchRecord API can help the user find solutions using keywords related to the current case
  • How the Search API returns the description and the solution of cases based on the keywords we enter
  • How the user can update the correct solution to the current case if the relevant solution is found
SearchAPI.js code snippet

Util={};
var EntityIds;
var EntityName;
var inputtext;
var solutiontext;
var solutiondescription;

//Subscribe to the EmbeddedApp onPageLoad event before initializing the widget 
ZOHO.embeddedApp.on("PageLoad",function(data)
{
EntityIds=data.EntityId;
EntityName=data.Entity;

//Search for solutions using input search words
Util.search=function()
{
inputtext=document.getElementById("inputword").value;

//Searches across the cases module for the input text entered 
ZOHO.CRM.API.searchRecord({Entity:"Cases",Type:"word",Query:inputtext})
.then(function(data){
console.log(data);
rec=data.data;
$('#solutionlist').empty();

//Looping through the solutions
for (i = 0; i < rec.length; i++) 
{

/*populating the solution list list with the solutions and description of all the cases associated with the input text provided*/
solutionsid=rec[i].id;
solutionname=rec[i].Solution;
solutiondescription=rec[i].Description;
solutionsname=rec[i].Description+"-"+rec[i].Solution;

/* Add the description-solution to the list only if the description or solution field is not null for the cases searched based on the input text */
if(solutionname!=null && solutiondescription!=null)
{
var solutionlist = document.getElementById("solutionlist");
var option = document.createElement("OPTION");
option.innerHTML = solutionsname;
option.value = solutionsid;
solutionlist.appendChild(option);
}
}
})
}

//Updates the solution to the solution field of the current case and changes the case status to closed 
Util.update=function()
{
solutiontext=document.getElementById("solutiontext").value;

var config={
Entity:"Cases",
APIData:{
"id": EntityIds[0],
"Solution":solutiontext,
"Status":"Closed"
},
Trigger:[]
}
ZOHO.CRM.API.updateRecord(config)
.then(function(data){
console.log(data)
})
}

// Closes the widget popup
Util.cancel=function()
{
ZOHO.CRM.UI.Popup.close()
.then(function(data){
console.log(data)
})
}
})

In the above code snippet, the input text keyed in is retrieved and passed as the Query parameter to the searchRecord API. The type parameter is passed as 'word', and the Entity parameter as 'Cases'. This searches across the Cases module for the input text and returns all the cases with the word present.

From the retrieved cases, the descriptions and solutions are fetched and populated into a select list. The user can have a look at the solutions and choose one if it resolves the current case issue.

The chosen solution is populated in the 'Enter solution here' textbox. The user can choose to edit the solution further according to their needs in the textbox and then click the 'Update Solution and close Case' button.

The updateRecord API will then update the solution entered to the solution field of the current case, and will change the status of the case to "Closed".

Sample Widget:

The user handles a case about a hardware issue. In the widget, they enter the word 'hardware' in the input field because it is a relevant word associated with the current case.



When the user clicks the 'Check for solutions' button, the searchRecord API returns all the descriptions and solutions involving 'hardware'. The user chooses a solution if it is relevant and makes further edits relevant to their case in the solution textbox. The 'Update Solution and close Case' button will update the solution to the solution field of the current case and close the ticket.



This was just an example, but there are many similar ways you can use the SearchRecord API to suit your specific business needs.

We hope you found this information useful. Keep following this space for more info!


SEE ALSO


    Access your files securely from anywhere











                            Zoho Developer Community





                                                  • Desk Community Learning Series


                                                  • Digest


                                                  • Functions


                                                  • Meetups


                                                  • Kbase


                                                  • Resources


                                                  • Glossary


                                                  • Desk Marketplace


                                                  • MVP Corner


                                                  • Word of the Day


                                                  • Ask the Experts





                                                            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 Writer

                                                                                              Get Started. Write Away!

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

                                                                                                Zoho CRM コンテンツ




                                                                                                  Nederlandse Hulpbronnen


                                                                                                      ご検討中の方




                                                                                                            • Recent Topics

                                                                                                            • Advance PDF creation from CRM data

                                                                                                              I'm trying to create a PDF export of data in the CRM. My problem is I want a pretty complicated format for the data. I'm trying to export multiple modules worth of data, with nested one-to-many relationships between the modules. Along with that, I want
                                                                                                            • Where does this report come from in the Zoho One ecosystems?

                                                                                                              Is this directly from MA, Analytics or ??? ???
                                                                                                            • Sub-Form Padding in CSV Export

                                                                                                              Hi, When you use the Sub-Form, and for example you have a Date Field on the Main Page, then Option 1 and Option 2 fields on the Subform, when you export this to CSV the Date column will only have the Date in 1 row, the first row, it would be nice to pad
                                                                                                            • More Formula Functions

                                                                                                              Hi, I would like for example to be able to have a Date Field and Formula Fields, and then in the Formula Fields I would like to grab just the Month of the above Date Field or the Week Number of the above Date Field. So more "Functions" than the current
                                                                                                            • File upload size limits

                                                                                                              I am designing a contact form in Zoho Creator with File upload facility. I am not sure where and how to set the following properties for the same: Allowed File Types Maximum Size of the Attachment Number of Attachments
                                                                                                            • Composite Services and Account Tracking

                                                                                                              I am looking to garner support/request the ability to make composite services. A quick search in the forums brings up multiple requests for this feature. I fail to see why an item is mandatory while services are optional. I also would like to see the
                                                                                                            • All operation codes getting Not applied in WO-TT22J1025WOR0471, SR-TT22J1025PRE0423,FOR VIN-W1K6G2AB2SL005130.

                                                                                                              Dear Support Team, Please refer attached screenshot. All operation codes getting not applied in work order. Request you to please check and update ASAP.
                                                                                                            • Bank Receipt Catagorization

                                                                                                              Hi, how can I match a bank deposit to multiple customer's invoices ? For e.g. A single person paid to us on behalf of different five customers. I need to keep the separated invoices for each customer
                                                                                                            • Exclude Segment from Campaign Recipients

                                                                                                              I've created two Segments in order to separate Non-Marketing Contacts from Marketing Contacts. I'd like to send an Eblast to all Marketing contacts in my lists, but when I go to select Recipients, I have two options: 1. To Choose Lists to Send to; 2.
                                                                                                            • Reschedule Multiple/Mass Calls at Once

                                                                                                              When we go into a Call record, we have the option to "Reschedule Call." How can we select multiple Calls at once from the Activities tab and Reschedule them? The big use case for us: We have many leads that our reps are supposed to call on a daily basis.
                                                                                                            • Option to Empty Entire Mailbox or Folder in Zoho Mail

                                                                                                              Hello Zoho Mail Team, How are you? We would like to request an enhancement to Zoho Mail that would allow administrators and users to quickly clear out entire folders or mailboxes, including shared mailboxes. Current Limitation: At present, Zoho Mail only
                                                                                                            • I want to Make the due date of the project appears automatically

                                                                                                              hello everyone I want to know if the zoho projects app can add automatically the END DATE of the project I added the duration, start after dates of each tasks in the project template & the starting date of the project itself and the end date of it doesn't
                                                                                                            • Drag 'n' Drop Fields to a Sub-Form and "Move Field To" Option

                                                                                                              Hi, I would like to be able to move fields from the Main Page to a Sub-Form or from a Sub-Form to either the Main Page or another Sub-Form. Today if you change the design you have to delete and recreate every field, not just move them. Would be nice to
                                                                                                            • Get Zoho Mail API working (including DRE Connector, Oauth Token, ZUID, ZOID & ACCOUNT_ID)

                                                                                                              Disclaimer: I’m not a professional coder! Do you need to use Zoho Mail API? Me too. It lets you do all sorts of things — like reading the complete header of an email, or forwarding an email with its attachments — which is what I wanted to do. But setting
                                                                                                            • Deluge Tips & Tricks: Mastering dates and times

                                                                                                              Hello everyone! We're bringing back our Deluge Tips & Tricks series, where we show you how to make the most of Deluge for achieving a wide range of use cases. Working with dates and times is a fundamental part of almost any business application. Whether
                                                                                                            • Adding a Button in a Form in Zoho Creator App

                                                                                                              Hi I want to know how can I add a Button in Zoho Creator form. I have options that I select from a multiselect options and I want the button to add those selected options in a Subform. I do not want to add on a Page Builder I want it inside a specific
                                                                                                            • Feature Enhancement Request – Text Formatting Options in Item Description (Zoho Books/Quotes Module)

                                                                                                              Dear Zoho Development Team, Greetings from Radiant360 Integrated Technical Services LLC. We would like to bring to your attention a functional limitation we've encountered within the Item Table / Quote Description section of Zoho Books (and Zoho CRM Quotes).
                                                                                                            • Internal Exception for Creator function

                                                                                                              I have been running a script successfully for several days using the scheduler in my application. Now today it suddenly creates and Internal Exception error. Nothing has changed about the script. The data is still retrievable from the web service it is using. Why would this suddenly be happening for no apparent reason? Also noticed that my usage logs are not up to date. Is something changing behind the scenes?
                                                                                                            • How to Set Up a Custom Domain and Customize Homepage

                                                                                                              Hello, I am experimenting with Zoho Creator to build applications for my own use case and have encountered a couple of issues: 1. Custom Domain Access: Is it possible to access my Zoho Creator application through a domain that I own? If so, how does the
                                                                                                            • Announcing new features in Trident for Mac (1.26.0)

                                                                                                              Hello everyone! Trident for macOS (v1.26.0) is here with new updates to securely manage your passwords, locally save your emails, and protect against emails with suspicious URLs. Let's take a quick look at them. Manage passwords with Zoho Vault eWidget.
                                                                                                            • Default Value on a Number

                                                                                                              Hi, I would be nice to also be able to set the Default Value for a Number Field, not just the Initial Value shown, so if not on the screen so not enetred it can have a value of 0 for example. Thanks Dan
                                                                                                            • Having trouble fetching contents of Zoho Connect Feeds using the API, requesting alternative API documentation.

                                                                                                              I'm trying to retrieve feed/post data from Zoho Connect using the API but facing challenges with the current documentation. What I've tried: OAuth authentication is working correctly (getting 200 OK responses) Tested multiple endpoints: /pulse/nativeapi/v2/feeds,
                                                                                                            • Tip#45: Custom Tags and Cluster Tags

                                                                                                              Tagging your work items helps categorize and label work items within your Zoho Sprints workspace. Now, this feature is expanded across multiple modules, along with the introduction of cluster tags that offer an advanced tagging mechanism. Manage Tags
                                                                                                            • Extensions 101 webinar series: Build, integrate, and monetize with extensions

                                                                                                              Attention developers! Are you ready to take your extension development skills to the next level? We're excited to bring back the Extensions 101 webinar series with an expanded lineup of Zoho products and an introduction to more platform features. Last
                                                                                                            • When using "locations" in zoho books, can you keep the two locations totally separate from each other?

                                                                                                              I am looking to add a location but I don't want to intermingle the banking or other accounts. I want that to be like two separate independent branches that use different banking accounts, accounts payable, and accounts receivable. The people who are in
                                                                                                            • [Free Webinar] User Management in Zoho Creator - Creator Tech Connect

                                                                                                              Hello Everyone! We welcome you all to the upcoming free webinar on the Creator Tech Connect Series. The Creator Tech Connect series is a free monthly webinar that runs for around 45 minutes. It comprises technical sessions in which we delve deep into
                                                                                                            • A couple of minor enhancements to Workflows

                                                                                                              Last updated on September 17, 2024: These enhancements were initially available for early access, and we've now enabled them for all users. We are elated to announce a couple of enhancements to custom functions in our Workflows! Say hello to: "Source"
                                                                                                            • Business Continuity - Disaster Recovery

                                                                                                              I know about the Zoho CRM backup .zip files, however, this doesn't include any of the infrastructure with like custom fields or custom modules. I am curious on what everyone has in place for a true backup or what your plan is if your Zoho instance were
                                                                                                            • Free webinar alert on October 16 - Less Complexity, More Security: Workplace + Directory

                                                                                                              Hello Zoho Workplace Community! Security and productivity shouldn't be at odds—and with Zoho, they're not. Discover how Zoho Workplace + Directory delivers seamless collaboration with enterprise-grade security, all in one integrated ecosystem. Join our
                                                                                                            • Narrative 11: Are your customers happy?

                                                                                                              Behind the scenes of a successful ticketing system: BTS Series Narrative 11: Are your customers happy? Happiness isn't just something you experience; it's something you remember. Hear your customers' voices by enabling customer happiness ratings in Zoho
                                                                                                            • Don't understand INVALID_REQUEST_METHOD when I try to post up an attachment

                                                                                                              When I make the POST request (using python requests.post() for files): https://www.zohoapis.com/crm/v8/Calls/***************01/Attachments I get this response: r:{ "code": "INVALID_REQUEST_METHOD", "details": {}, "message": "The http request method type
                                                                                                            • Organization Emails in Email History

                                                                                                              How can I make received Org Emails to show up here?
                                                                                                            • Signature field is showing black

                                                                                                              Hello, When customer signed the service form, it is showing as below picture Phone model: iPhone 16 Pro We tried delete and install application, but it not solved. This has on phone of a few person. There is any advice to solve this?
                                                                                                            • Zoho CRM Android app updates: record sharing, user image upload, Zoho Survey integration, and more

                                                                                                              Hello everyone, We've made some important improvements to Zoho CRM's Android app, and we'd like to walk you through the latest updates. Here's what's new: Record sharing with org users User image upload Zoho Survey integration support Venue preference
                                                                                                            • How to Delete/hide Google adwords section from Layout?

                                                                                                              Hi people, maybe someone can tell me how to remove or hide the Google adwords section from my layout? Im not using it and it takes too much space.
                                                                                                            • WIDGET in related record list ZOHO CRM; how to get and put data to subform custom fields?

                                                                                                              he need: Read and write two custom subform line-item fields on Quotes: Segment_wyceny (picklist/text) and W_pakiecie (number). Write works; read does not return these fields via SDK. Environment Zoho CRM Widget Zoho Embedded App SDK v1.2 Module: Quotes
                                                                                                            • Introducing Assemblies and Kits in Zoho Inventory

                                                                                                              Hello customers, We’re excited to share a major revamp to Zoho Inventory that brings both clarity and flexibility to your inventory management experience! Presenting Assemblies and Kits We’re thrilled to introduce Assemblies and Kits, which replaces the
                                                                                                            • Way to update CRM records in quik view

                                                                                                              I have custom module in zoho crm and that module have 500 records. I want a quick way or UI so that user can easily update the record information in quick view without going to record detail view or edit view. I tried zoho sheet option but in zoho sheet
                                                                                                            • Writer sing up problom

                                                                                                              Zoho writer sing up prolom face
                                                                                                            • Where to integrate Price Book and Product List Price

                                                                                                              Hello, We sync zoho crm all modules with all data to zoho analytics. In zoho crm, we have "Price Books" and "Products" modules, where each product is assigned to a few price books with different list prices. From zoho crm, I am able to export a dataset
                                                                                                            • Next Page