Plug Sample #10 - Simplify Ticket Management (Zoho Desk) with Chatbots

Plug Sample #10 - Simplify Ticket Management (Zoho Desk) with Chatbots

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").
  1. if(session.containsKey("email"))
  2. {
  3. email = session.get("email").get("value");
  4. }
  5. // Getting the contact ID from the email - https://desk.zoho.com/DeskAPIDocument#Search#Search_SearchContacts
  6. url = "https://desk.zoho.com/api/v1/contacts/search?email=" + email;
  7. header = Map();
  8. header.put("orgId","012345");
  9. //Change your org ID (Settings > Developer Space > API > Scroll down > "OrgId")
  10. getcontact = invokeurl
  11. [
  12. url :url
  13. type :GET
  14. headers:header
  15. connection:"zohodesk3"
  16. ];
  17. info getcontact;
  18. contact_id = getcontact.get("data").getJSON("id");
  19. info contact_id;
  20. url_ticket = "https://desk.zoho.com/api/v1/contacts/" + contact_id + "/tickets?sortBy=-createdTime&limit=3";
  21. // Get associate ticket of a contact - https://desk.zoho.com/DeskAPIDocument#Contacts#Contacts_ListContactsByIds
  22. get_tickets = invokeurl
  23. [
  24. url :url_ticket
  25. type :GET
  26. headers:header
  27. connection:"zohodesk3"
  28. ];
  29. info get_tickets;
  30. array = get_tickets.get("data");
  31. optionList = List();
  32. for each  entry in array
  33. {
  34. subject = entry.get("subject");
  35. status = entry.get("status");
  36. display_text = subject + " - (" + status + ")";
  37. ticketNumber = entry.get("ticketNumber");
  38. optionList.add({"id":ticketNumber,"text":display_text});
  39. }
  40. response = Map();
  41. response.put("ticketList",optionList);
  42. 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

    • Enhance productivity with the revamped Zoho Sheet View

      Hello folks, For some time now, you've been able to use the Zoho Sheet View to quickly edit multiple records or to insert a batch of new records. Its tabular interface allows users to engage in these tasks productively. Despite this, the existing Sheet
    • No OR Filter for Views with a Related Modules Criteria

      We would like to create a Deal View where the User can see all their deals. For that, we would need an OR to connect the criteria. One of the Fields is a "multiselect User", these (Related Modules Criteria) can only be Filter with an AND. Even between
    • Good news! Calendar in Zoho CRM gets a face lift

      Dear Customers, We are delighted to unveil the revamped calendar UI in Zoho CRM. With a complete visual overhaul aligned with CRM for Everyone, the calendar now offers a more intuitive and flexible scheduling experience. What’s new? Distinguish activities
    • Limit maximum entries for subform - depending on fields entry

      Hi Zoho! I have a form with a subform in it. I'd like to have limitation for the row number depending on an entry in a drop-down field in the main form (If the field in the main form is marked "Answer1" - Limit the entries to 1 row, if the field is "Answer2" to have 2 rows limitation, "Answer3" = no limitation at all) Can this be done? Thanks Ravid
    • Save HTML Snippet Page as PDF with Dynamic Data in Zoho Creator (Working Solution)

      Hi Zoho Creator Community 👋, I faced a common challenge while working with HTML Snippet Pages — I needed to generate a PDF with dynamic data and save it back into the record automatically. Here’s the working solution that might help others. Use Case
    • Make Camera Overlay & Recording Controls Visible in All Screen-Sharing Options

      Hi Zoho WorkDrive Team, Hope you are doing well. We would like to request an improvement to the screen-recording experience in Zoho WorkDrive. Current Limitation: At the moment the recording controls are visible only inside the Zoho WorkDrive tab. When
    • Cannot connect to imap.zoho.eu on iOS26

      Hey, I recently migrated to another iPhone and since then use iOS26. Every since then, I was not able to connect to "imap.zoho.eu" from Apple Mail. I tried deleting the account and adding it again, did not work. I tried creating an app password, didn't
    • Rebranding Options for Zoho One

      We need the addition of rebranding and white-labeling settings directly within the Zoho One Admin Panel. This feature should allow organizations to customize the unified portal with their own logo, brand colors, and custom domain mapping (e.g., portal.company.com).
    • Tip #57- Accessibility Controls in Zoho Assist: Mobility- 'Insider Insights'

      Remote support should be easy to navigate for everyone. For users with mobility-related accessibility needs, long sessions and complex navigation can be challenging. Zoho Assist’s Mobility Accessibility Controls simplify interaction through keyboard-based
    • To print Multiple delivery notes in batches

      In Zoho Books, we can print a Delivery Note from an Invoice using the Print Delivery Note option, but it is non-editable and always prints all line items from the invoice. Our requirement is to deliver invoiced items in batches and print delivery notes
    • UPLOAD A CREATED PDF AUTOMATICALLY

      Using the html header pdf+print button, I have managed to find a way to have a user create a pdf using entered form data. Using the schedule button, I can have a "file uploaded" pdf mailed to someone as an attachment. The missing piece is to be able to add the pdf, created in that html page to a file upload field automatically? Right now one has to save it to computer and then upload it in a FILE UPLOAD FIELD. Any help would appreciated !  
    • Consolidated Department-wise Payroll Cost Summary Report

      Hello Zoho Payroll Team and Community, I am writing to discuss a reporting requirement regarding department-level expense tracking within Zoho Payroll. As we scale and manage salary distribution for employees across multiple departments, such as Accounts,
    • Write-Off multiple invoices and tax calculation

      Good evening, I have many invoices which are long overdue and I do not expect them to be paid. I believe I should write them off. I did some tests and I have some questions:  - I cannot find a way to write off several invoices together. How can I do that,
    • How to remove chat icon from knowledge base?

      I have set up a knowledge base to hold FAQs and documentation. It is currently standalone, and not integrated into our website. On every page there is a chat button in the bottom left corner that says "We're offline, please leave a message." How can I
    • [ZohoDesk] Improve Status View with a new editeble kanban view

      A kanban view with more information about the ticket and the contact who created the ticket would be valueble. I would like to edit the fields with the ones i like to see at one glance. Like in CRM where you can edit the canvas view, i would like to edit
    • Automated Dismissal of Specific Notifications and Centralized Control of Toast Notification Settings

      Dear Zoho Team, I hope this message finds you well. We would like to request two enhancements related to notification handling within Zoho Desk: Automatic Dismissal of Specific Notifications: Currently, when certain actions are taken in the ticket list
    • Show field in spreadsheet view depending on other field value

      Hello. Not sure if this is possible but let's say i have spreadsheet view in Creator with four different fields Field A, B, C and D Then i have a field named Response which for one record could contain only one of the pre-definde choices below A, B, C
    • 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.
    • Zoho Learn Zapier Integration

      Hello all, Is there any plan to integrate Zoho Learn with Zapier? It seems almost all Zoho products are in Zapier, with the exception of Learn and Marketing Automation.
    • Notice: SalesIQ integration paused on Zoho Sites

      I have this notice on my Zoho Sites in the SalesIQ integration setup. Can someone assist? "This integration has been temporarily paused for users. Reconnecting SalesIQ after disconnection will not be possible until we provide further updates." thank
    • Differences between Zoho Books and Zoho Billing

      Without a long drawn out process to compare these. If you were looking at these Books and Billing, what made you opt for one and not the other. Thanks
    • New Feature : Copying tickets with all the contents such as conversations/history/attachments etc

      Sometimes our customers and distributors do create tickets (or send emails) which contain more than one incident in them and then also some of the further conversations which are either created by incorrect new tickets or replies to old tickets are being created as combined tickets. In such cases we require to "COPY" the contents of the tickets into separate tickets and merge them into their corresponding original tickets. The "CLONE" feature doesn't copy the contents (especially the conversations
    • Como se agregan los empleados

      Necesito saber si para agregar empleados los mismos necesitan tener licencias
    • Deluge Error Code 1002 - "Resource does not exist."

      I am using the following script in a Custom Button on a Sales Return. Basically, the function takes the information in the sales return (plus the arguments that are entered by the user when the button is pushed) and creates a return shipping label via
    • Adding multiple Attendee email addresses when adding a Zoho Calendar event in Zoho Flow

      I am trying to integrate Notion and Zoho Calendar via Zoho Flow. However, the Attendee email address supported by Zoho Calendar - Create event only supports one email address, so I am having difficulty implementing automation to automatically register
    • Graceful Handling of Exceeded Option Limits

      Hi Zoho SalesIQ team. I would like to submit a feature request to deal with a bug in salesIQ Current Behavior (Bug): When a dynamic list passed to the Single Select Option Card contains more than 20 options, the Zobot stops responding (freezes/hangs)
    • System default SLA descriptions can't be modified

      The system default SLAs have identical descriptions for all SLA levels, but their settings differ. However, I am facing an issue where I cannot modify these descriptions and save the changes. The content of the description box can be edited but the changes
    • Adding non-Indian billing address for my Zoho subscription

      Hey Need help with adding a non-Indian billing address for my Zoho subscription, trying to edit the address to my Singapore registered company. Won't let me change the country. Would appreciate the help. Regards, Rishabh
    • How to create one ZohoCRM organisation out of a multi-organization?

      Hi, we have a multi-org including two different Zoho CRM organizations for two companies using respectively EUR and USD as default currency. I was wondering if there is any easy way to merge the two organizations into just one, so that users may access
    • Gray screen while signing documents

      We are all getting a "gray" screen when trying to sign documents in Zoho sign. Anyone else having issues?
    • Designing a practical Zoho setup for a small business: lessons from a real implementation

      I recently finished setting up a Zoho-based operating system for a small but growing consumer beauty business (GlowAtHomeBeauty), and I wanted to share a practical takeaway for other founders and implementers. The business wasn’t failing because of lack
    • Link Purchase Order to Deal

      Zoho Books directly syncs with contacts, vendors and products in Zoho CRM including field mapping. Is there any way to associate vendor purchase orders with deals, so that we can calculate our profit margin for each deal with connected sales invoices
    • Projects custom colors replaced by default orange

      Since yesterday, projects uploaded to Zoho, to which I had assigned a custom color, have lost the customization and reverted to the default color (orange). Has anyone else had the same problem? If so, how did you resolve it?
    • Interview booked through Invite but no Notifications

      We have a workflow that was developed through a developer/partner that was tested and worked. Today, we pushed a candidate through the process and invited them to an in-office interview. They were sent the booking link (as usual and as tested before successfully)
    • WebDAV support

      I need WebDAV support so that I can upload/download (and modify) documents from my local file system. Is anything planned in his direction?
    • Automatiser la gestion des SLA dans Zoho Desk avec Zoho Contracts

      Les équipes du service client s’efforcent d’assurer un support rapide, régulier et fiable pour garantir la satisfaction de chaque client. Les accords de niveau de service (SLA) permettent de clarifier les engagements en définissant les termes et conditions
    • iOS App doesn't refresh for Document Creation

      Hello Zoho team, I have created a workflow to be used on a mobile iOS device which starts in Zoho Creater and ends with a murge and store function that then opens the newly created document within the Zoho Writer app. This process is working great however
    • Uploading a signed template from Sign to Creator

      Good day, Please help me on how to load a signed document back into Creator after the process has been completed in Sign. Below is the code that I am trying, pdfFile = response.toFile("SignedDocument_4901354000000372029.pdf"); info pdfFile; // Attach
    • Zoho DataPrep and File Pattern configuration

      I'm using Zoho data prep to ingest data from One Drive into Zoho Analytics... The pipeline is super simple but I can't any way to get all the files that I need. Basically I need to bring all the files with a certain pattern and for that I'm using a regex
    • Assistance needed: Activation of a domain

      Hello Zoho Support, I purchased the .com domain "primesolva.com" via Zoho 6 days ago. The domain is still pending, and I cannot access the DNS panel to add the TXT verification for domain ownership. Please confirm the registration status and help me activate
    • Next Page