Hi everyone!
We're here with another simple yet effective plug for your chatbot to integrate with Zoho Desk.
When a customer reports an issue/request during chat, it's logged as a ticket on Desk. When they return for updates, you end up searching through past tickets, reading conversations, and updating them manually. Imagine if your bot could automate this, retrieving ticket details and providing updates effortlessly.
Are you new to SalesIQ? Wondering what plugs and bots are?
SalesIQ offers chatbots to automate customer interactions. Using the Codeless bot builder, you can build chatbots by using cards in the bot-builder gallery. However, at times, businesses would require unique actions from the bot and for those instances, we have plugs. With plugs, you can create any specific action and bring it as a card inside the codeless bot builder, like the rest of the cards.
In this post, we will learn how to create a plug and list the customer's recent support tickets from Zoho desk.
How does this Plug work?
- The bot will get the email address of the visitor (Email card).
- Next, the bot will search and get a list of tickets associated with the respective email from Desk (Plug 1).
- Then, this ticket list will be displayed to the visitor (Single choice card).
- When the visitor selects one of the displayed tickets, the bot will fetch the neccessary ticket details. (Plug 2)
- And these details will be displayed to the visitor (Any response/input card).

Note:
- There are two plugs involved in this process, one is to display the ticket list and another is to display the ticket details.
- In this post, we will look at the plug to display the ticket list.
- The plug sample to display the ticket details is already available, click here to know more.
Plug output
How to build this Plug?
Step 1 - Create connection with Zoho Desk
- On your SalesIQ dashboard, navigate to Settings > Developers > Plugs > click on Add.
- Provide your plug a name, and description, select the Platform as SalesIQ Scripts, and finally, click on Connection to your left bottom. You will be redirected to the connection interface.
- Click on Create connection at the top right corner.
- Under Default connection, select Zoho OAuth service.
- Provide your connection name, connection link name, and choose the scopes below.
- Desk.search.READ
- Desk.contacts.READ
- Desk.tickets.READ
Note: The Connection Link Name will be used in the scripts to invoke URL tasks.- Click on Create And Connect to connect Zoho SalesIQ and Zoho Desk.
- Upon successful authentication, Zoho SalesIQ will be connected with Zoho Desk.
- The connection is successfully established.
Step 2 - Build the Plug
As we have created a connection between SalesIQ and Desk successfully, it's time to build the plug. The first step in building the plug is defining the parameters.
Input Parameters
- Name : email | Type : Email
Output Parameters
- Name : ticketList | Type : Option List
Script to get the list of tickets
- Copy the code below and paste it into your plug builder. Then, make the following changes.
- In line #8, get your Desk org ID (Settings > Developer Space > API > Scroll down to find the "OrgId").
- if(session.containsKey("email"))
- {
- email = session.get("email").get("value");
- }
- // Getting the contact ID from the email - https://desk.zoho.com/DeskAPIDocument#Search#Search_SearchContacts
- url = "https://desk.zoho.com/api/v1/contacts/search?email=" + email;
- header = Map();
- header.put("orgId","012345");
- //Change your org ID (Settings > Developer Space > API > Scroll down > "OrgId")
- getcontact = invokeurl
- [
- url :url
- type :GET
- headers:header
- connection:"zohodesk3"
- ];
- info getcontact;
- contact_id = getcontact.get("data").getJSON("id");
- info contact_id;
- url_ticket = "https://desk.zoho.com/api/v1/contacts/" + contact_id + "/tickets?sortBy=-createdTime&limit=3";
- // Get associate ticket of a contact - https://desk.zoho.com/DeskAPIDocument#Contacts#Contacts_ListContactsByIds
- get_tickets = invokeurl
- [
- url :url_ticket
- type :GET
- headers:header
- connection:"zohodesk3"
- ];
- info get_tickets;
- array = get_tickets.get("data");
- optionList = List();
- for each entry in array
- {
- subject = entry.get("subject");
- status = entry.get("status");
- display_text = subject + " - (" + status + ")";
- ticketNumber = entry.get("ticketNumber");
- optionList.add({"id":ticketNumber,"text":display_text});
- }
- response = Map();
- response.put("ticketList",optionList);
- return response;
- Then, click Save, preview the plug and Publish it.
Step 3 - Adding the plug to the Codeless bot builder
- Navigate to Settings > Bot > Add, provide the necessary information, and select Codeless Bot as the bot platform. You can also open an existing bot.
- Click on Plugs under Action cards, select the plug you have created and provide the input values for the parameters defined in the plug builder.
- Choose the %visitor.email% variable for the name.
- Provide a variable name for the ticket list.
- Use a single choice card, click on Save in bot context, give a variable name and select the context variable under dynamic suggestion.
- Then, use this plug to show the ticket details.
I hope this was helpful. Please feel free to comment if you have any questions. I'll be happy to help you.
Best regards
Sasidar Thandapani
Recent Topics
Train Zoho Answer Bot Based on Customer
Hi all, Is it currently possible to mark Help Centre articles to a specific customer, and restrict the answer bot to only use relevant information if it is either marked as "General", or tagged for the specific customer in question? We currently have
Non-depreciating fixed asset
Hi! There are non-depreciable fixed assets (e.g. land). It would be very useful to be able to create a new type of fixed asset (within the fixed assets module) with a ‘No depreciation’ depreciation method. There is always the option of recording land
Errorcode 554
Hello, I am unble to send any single email during the whole time due to the Zoho IP 136.143.188.16 being blocked by SpamCop. Please can somebody help me?
Spamcop
Have been trying to email several of our clients and many of our emails keep getting bounced back with an error that states: ERROR CODE :550 - "JunkMail rejected - sender4-op-o16.zoho.com [136.143.188.16]:17694 is in an RBL: Blocked - see spamcop.net/bl.shtml?136.143.188.16"
Will Zoho Search work with Zoho Learn
Currently, Zoho Search only works with Zoho Wiki which will be phased out. Moving forward, will Zoho Search be enabled for Zoho Learn? Thanks.
How to use filters on all products page? Or even a category page?
Hello, I am trying to create some filters so users can use filters to find products they are looking for. So what i am trying is to create a filter according to price lets say. So if i define it this way i am expecting to see this filter option on category
Zoho Projects app update: Voice notes for Tasks and Bugs module
Hello everyone! In the latest version(v3.9.37) of the Zoho Projects Android app update, we have introduced voice notes for the Tasks and Bugs module. The voice notes can be added as an attachment or can be transcribed into text. Recording and attaching
Boas práticas de desenvolvimento em Deluge
O Deluge (Data Enriched Language for the Universal Grid Environment) é a linguagem de script utilizada em diversas aplicações do ecossistema Zoho, como Zoho Creator, Zoho CRM, Zoho Books e Zoho Flow. Ela foi projetada para permitir automações rápidas
How do I automate my package and shipment process
Hey, I have a very basic problem regarding automating my package and shipment. My business does not require me to have those modules and manage them currently and since I'm new to zoho I want to start with just the basics. I just need to automatically
How do I automate my package and shipment process
Hey, I have a very basic problem regarding automating my package and shipment. My business does not require me to have those modules and manage them currently and since I'm new to zoho I want to start with just the basics. I just need to automatically
Seeking a WhatsApp Business App (not API) Zoho CRM integration
We have a business need to integrated WhatsApp Business App (not API) into Zoho CRM to centrally manage communications between our Sales team and Leads & Contact. Is there a reputable integration available for this scenario of ours? Core features we would
Zoho Sign 2025–2026: What's new and what's next
Hello! Every year at Zoho Sign, we work hard to make document signing and agreement execution easy for all users. This year we sat down with our head of product, Mr. Subramanian Thayumanasamy, to discuss what we delivered in 2025 and our goals for 2026.
Intergrating multi location Square account with Zoho Books
Hi, I have one Square account but has multiple locations. I would like to integrate that account and show aggregated sales in zoho books. How can I do that? thanks.
Emails being blocked / spamcop
Hello, I am unablr to send any single email during the whole time due to the Zoho IP 136.143.188.16 being blocked by SpamCop.net Please help on this.
Zoho IP blocked by SpamCop 136.143.188.16
Hello, I am unble to send any single email during the whole time due to the Zoho IP 136.143.188.16 being blocjed by SpamCop.net Please help on this.
Is there a way to configure dark mode for Campaigns emails that go out to customers?
I've found a lot of information on how to configure dark mode for my (The user) personal Zoho workspace and email, but is there any way to edit dark mode settings on emails that we send out to customers via campaigns? We sent out a test email the other
Can I hide empty Contact fields from view?
Some contacts have a lot of empty fields, others are mostly filled. Is there a way I can hide/show empty fields without changing the actual Layout? I would like to de-clutter my view, and also be able to add information later as I am able. I would be
Auto-publish job openings on my Zoho Recruit Careers Website
I have developed a script using the Zoho Recruit API that successfully inserts new jobOpening records to my Zoho Recruit website, but my goal is to auto-publish to the Careers Website. The jobOpening field data shows two possible candidates to make this
Credit Card Terminal for Zoho Books
Hello, Instead of punching the credit card number manually for customer payment, do you have a third-party hardware credit card reader that works with Braintree? Thank You
How do you print out the invoices comments
I have some invoices where i need to print out the comments that show when reminders and etc were sent how do we print those out in Zoho Books.
Feature Request: Enable Custom PDF Layout Editor for All Modules (Including Package Slips)
Hello Zoho Community and Product Team, I am writing to share a suggestion that would significantly enhance the customization capabilities within Zoho Books. We all appreciate the power of the Custom PDF Layouts (the "New" template engine) that allows
Need advice for product/item search functionality when adding invoices.
My client uses "Catalog or Vendor" name and Product code to search for his items. But Zoho only allow to search by product name and SKU when adding items to Invoices/Estimates. Clients product codes are not unique as they may overlap from different catalogs/vendors.
How to dynamically pass IDs from one API response to a second API call in Zoho DataPrep?
Hi Team, I am setting up a global consolidated reporting pipeline in Zoho Analytics (India) using Zoho DataPrep as the ETL engine. I am pulling data from multiple Zoho Books Data Centers (US, Singapore, India) thats why i used the URL Source (OAuth 2.0)
Feature Request: "Send Invitation" Toggle for Events
I am writing to request a critical "Quality of Life" update for the Activities module. Currently, adding people to the Participants field in an Event triggers an automatic email invitation/acceptance tracking with no way to opt-out. For general events
Account Review Pending - Daily Limit 100
Hi ZeptoMail Team, I'm writing to request a manual review of my account. I am currently stuck on the 100-email daily limit and cannot purchase credits. Status: My domain is already verified (DKIM/CNAME). Issue: The "Customer Validation" option is no longer
Automation Series: Move Tasks to a different Task List on Status Change
In Zoho Projects, you can automatically move a task from one task list to another when its status is updated. This keeps your tasks organised and ensures better visibility while reducing manual work. For instance, during a product launch, the marketing
Introducing Bigin's all new integration with Microsoft Teams
Picture this: You are on call with your team to discuss some important deals that need to be closed soon. While discussing each deal, your team has to switch back and forth between your Teams account and Bigin account to refer to details about the deal.
Scaling the customer journey: What's new in CommandCenter
Dear Customers, The last time we connected about CommandCenter, it was about the tool's new controls and revamped UI. Personally, the overhaul of the UI from the last update, still excites me. Today, we're here with news about its scalability and added
Adjusting Physical Inventory
Not getting very far with support on this one, they say they are going to fix it but nothings happened since November. Please give this a thumbs up if you would like to see this feature or comment if you have some insight. Use Case: Inventory set to be
How to book GST paid in zoho books
hi, i am a new user to Zoho books and not able to book GST paid in books, kindly suggest how i can book it in books. thanks, siddharth
Dynamic Remaining Quantity in Lookup During Allocation
Hi everyone, From what I understand in Zoho Creator, lookup fields only display the stored value from the source record and do not dynamically update while a form is being filled. Because of this, showing a real-time updated remaining quantity inside
Bill sent for Payment Approval
Zoho Books currently supports three levels of transaction approval for bills: Draft, Submit, and Approved. We are looking to add a layer of approval like a bill marked for payment before initiating payment requests through HSBC Bank. Can you please guide
Is it possible to use HTML formatting in SMS messages sent from Zoho?
Hi everyone, I have a question regarding sending SMS from Zoho When we send emails from Zoho, we can include HTML code to format the message (like adding links, styling, etc.). Is it possible to do something similar when sending SMS messages through Zoho
Important update: Migrate to the new SalesIQ live chat widget before April 14, 2026
The old SalesIQ live chat widget will be deprecated on April 14, 2026. This is a final reminder to migrate to the new SalesIQ live chat widget before this date. After April 14, 2026, the old widget will no longer be maintained, which can lead to slower
If your IM chats aren’t auto-assigning, here’s what to check
Hey everyone! We’ve been seeing quite a few questions around Instant Messaging (IM) Chat Routing in Zoho Desk, especially around how it actually behaves in real time. So I thought I’d share a practical breakdown of what’s happening behind the scenes.
connect zoho creator with google drive
Hello everyone, I need to connect to a folder drive. The idea, is that google drive loads a text document with some data, I must read that text document to be able to autofill a form that I have in zoho creator with that data. I also attach PDFs and place
Uploaded files are not included when using "Include user submitted data" in Email Notification
In Send Email notification workflow in Zoho Creator, there is an option called "Include user submitted data" which allows the email to contain all the form submission details. However, when this option is enabled, files or images uploaded through File
Extend Zoho Canvas Customization to Zoho Creator Forms and Reports
Currently, Zoho Canvas allows users to design and customize the UI of Zoho CRM modules with a much better visual experience. This helps organizations create cleaner layouts, improve usability, and design interfaces that match their workflows. However,
Kanban View for Projects.
At our organization, we describe active projects with various statuses like "In Proofing" or "Printing" or "Mailing". In the Projects view, one can set these project statuses by selecting from the appropriate drop-down. While this works, it's difficult to view and comprehend the progress of all of your projects relative to each other in a table. Creating a Kanban view for projects where I can move them from one status to another allows me to see where each project is in the order of our workflow.
Button ''I'm Interested'' won't translate
Since our main platform is in French, I would like to get this ''I'm Interested'' button translated to French ''Je suis intéressé''. We managed to translate the whole carreer site in French, except the button. How come ? We have a standard subscription,
Next Page