Kaizen #182 - Queries in Canvas List View

Kaizen #182 - Queries in Canvas List View



Hello everyone!

Welcome to another week of Kaizen!

We're back with another post in this series on Queries in Canvas List View.

Queries in Zoho CRM allow you to dynamically retrieve data from CRM as well as third-party services directly within the CRM platform.
You can construct a query of one of the following types:
  1. CRM Module type query to retrieve data from CRM modules.
  2. COQL type query to construct a query using the COQL API.
  3. REST API type query to fetch data from an external service and use it in Zoho CRM.
You can associate a query with the 'Decision' component of Kiosk, Canvas Detail View, or Canvas List View.

In this post, we will take up a use case and see how you can associate a query with Canvas List View.

Use case

Sales and support teams often need quick access to Zoho Desk tickets related to a contact in Zoho CRM. To avoid switching between apps to check ticket statuses, we can use the Queries feature to fetch the latest Zoho Desk ticket's details of a contact dynamically and display them on the Canvas List View page of the Contacts module.
This ensures that CRM users can instantly view the most recent ticket linked to a contact without leaving Zoho CRM.

Follow along to see how you can achieve this!

Step 1 - Add a Source

  1. Go to Setup > Developer Hub > Queries > Sources > Add Source.
  2. Under Information,
    1. Give a name for the source and its Base URL. Queries will make API calls to this URL to fetch data. Ensure to add this to Trusted Domain.
    2. Specify any default parameters and headers for this base URL.
  3. Under Connection, choose the connection you have created with Zoho Desk with the necessary scopes. If you haven't, create one.
  4. Click Save.

Notes
Note
Queries will make API calls to the URL you add in the Source and consume credits that are applicable in that service. Ensure you monitor your API usage in your source provider.

Step 2 - Create a REST API Query

  1. Go to Setup > Developer Hub > Queries > Add Query.
  2. Under Source, choose the source you created in step 1.
  3. Under Information,
    1. Enter the Name, API Name, and the Endpoint of the query.
    2. Specify the parameter email that takes the dynamic variable {{Contact_Email}} as its value. This is to fetch the latest ticket from Zoho Desk for a contact with the email in this variable during runtime. Refer to our Kaizen post on Handling Query Variables in Zoho CRM for additional details.
    3. Specify Headers, if any.
  4. You can serialize the output to fit your needs using JavaScript in the Serializer.

  5. Click Next.
  6. Enter an email address in the box to test the query.

  7. Click Save. You can see the response of the query and the serialized response if you had serialized the output.

  8. Click Next.
  9. You can see the Schema of the query. The Schema acts as a bridge/mapping layer between external API responses and Zoho CRM's internal data structure. For example, the response of the Desk API returns result[].assignee.firstName, which is mapped to CRM as Assignee > FirstName. Schema ensures that the CRM UI knows how to display the field correctly.
    With the right mapping in the schema, you can avoid manual data entry or syncing, and use the API data in workflows, reports, and dashboards.
    You can change the CRM Field Type and Label to suit your needs. Refer to our Kaizen post on Serialization and Schema Management for more details.
  10. Click Save to save the query.
Now that our query and fetching data from Zoho Desk is sorted, let's move on to the Canvas.

The Custom List view in Canvas enables you to stack records horizontally, one above the other.
Follow the steps in the How to Work with Canvas? guide to create a Custom List View Canvas for the Contacts module.
  1. On the Canvas, click the database icon for the Queries component.
  2. Click Associate Query.
  3. Give an Association Name and select the Source(added in step 1) for the query.
  4. Under Query, select the query you created.
  5. The Variables section will contain the variables in the query. The drop-down displays all fields in the Contacts module. Select the Email field.
  6. Under Result Mapping, choose Email as the Source Record Field and Contact > Email as the Query Response Path. The Query Response Path is populated from the schema of the query.
  7. Click Done to associate the query with the canvas.

  8. You can see all the fields of the query on the left. Drag and drop the required fields on the canvas.

  9. Save the canvas.

Time for the big reveal!
The following GIF shows how the ticket details from Zoho Desk are populated on the Canvas List View of the Contacts module.
Info
Note that every time you reload the canvas, the query underneath makes an API call to the source provider to fetch data for the contacts in Zoho CRM. Ensure your API calls are monitored to avoid exhasuting your credits.


We hope you liked this post.

Let us know your thoughts in the comments or write to us at support@zohocrm.com.
Topic suggestions are welcome! See you all next week!


Cheers!


----------------------------------------------------------------------------------------------------------------------------------------











      • Sticky Posts

      • Kaizen #197: Frequently Asked Questions on GraphQL APIs

        🎊 Nearing 200th Kaizen Post – We want to hear from you! 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 #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.
      • Celebrating 200 posts of Kaizen! Share your ideas for the milestone post

        Hello Developers, We launched the Kaizen series in 2019 to share helpful content to support your Zoho CRM development journey. Staying true to its spirit—Kaizen Series: Continuous Improvement for Developer Experience—we've shared everything from FAQs
      • Kaizen #193: Creating different fields in Zoho CRM through API

        🎊 Nearing 200th Kaizen Post – We want to hear from you! 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.
      • Client Script | Update - Introducing Commands in Client Script!

        Have you ever wished you could trigger Client Script from contexts other than just the supported pages and events? Have you ever wanted to leverage the advantage of Client Script at your finger tip? Discover the power of Client Script - Commands! Commands

        • Recent Topics

        • Categorize Items with Item Headers

          Hello customers, Did you ever want to classify items based on specific categories to help your customers understand your invoice better? With the new Item Header feature, you can easily categorize items in your invoices and estimates and give them a common title.  Item Headers are available in the Invoices, the Recurring Invoices and the Estimates module. It can be carried forward from estimates to invoices at the time of converting the estimates.  To add an item header: Go to the Estimates, Invoices
        • URLs being masked despite disabling tracking

          Hey, We had disabled click tracking from an email update we are sharing with our users. Despite this, the URL the end user is receiving is masked, and looks like "https://qksyl-cmpzourl.maillist-manage.net/click/1d8e72714515cda6/1d8e72714515ca70" instead
        • Change format of quantity format

          Hi,  I would like to change the qunatity format from 1,00 to 1.  Is this possible?   thanks!
        • square up and Zoho books

          Since we set up the app connection between square up and Zoho books we have realised that when the amounts are getting transferred Zoho is adding VAT again making the numbers 20% more than they should be. We have checked our settings and they VAT/ Tax
        • How to provide Access rights to specific Bank accounts

          We have several bank accounts. I want to provide certain members access to only 2-3 accounts. It appears that when I give permissions, they are for ALL bank accounts. How do I do that?
        • Errors Getting a Bank Transaction

          Using Postman(for testing), I am receiving errors when attempting to get a single bank transaction. I am able to receive the list of bank transactions with https://www.zohoapis.com/books/v3/banktransactions/?organization_id={org_id} but when I try to
        • Subscriptions Plans and CRM Products Integration?

          Is there any way to set up plans and pricing in Zoho Subscriptions and have those available as Products in the CRM? We are trying to set up the CRM and the Products seem to be more geared toward selling products that are not subscription based.  So if we sell annual or monthly contracts which are $10/seat/month, I can set this up as a plan in Subscriptions, but how can I set the same thing up in the CRM for the salespeople to sell/quote? What is the best practice for setting up the CRM Products to
        • Mapping Zoho Subscription Plans and Products to CRM and Books

          We have products that are one time products and subscription products.   1) We would like to have the ability to create an opportunity in CRM that includes both one-time charge products and subscription products.  Currently the only way of creating a subscription product is by defining a "Product->Plan" hierarchy in Zoho Subscription.  It appears that the only SYNC between Subscription and CRM is around contacts and the Product->Plan hierarchy doesn't sync to CRM, thus, you would need a duplicate
        • Zoho People Attendance Module - Split Shifts

          Hello, Our business employs a number of college students who often split their workdays between work hours and class schedules, resulting in split shifts. For example: Employee 1 works 9am to 11:30am and then leaves for class, returning to work at 3pm
        • Bulk update fields based on date

          Hi! I need all the quotes with "Quote Stage" set to "Next Year" to update to "Draft" every January 8 (every year). Can you help?
        • Target for a campaign

          Hi, Hope you can help me. I need to create a report (for a marketing campaign) that combines Deals and Contacts to export all the contacts with closed deals. I can easily do that, what I cannot do is to remove from the target the contacts that have more
        • Zoho Desk + Jira integration - Email notifications and comments posted by administrator instead of real user

          Dear All, I set up the integration under my admin account, and now when users leave comments in Jira (to created tickets in Zoho Desk), the email notifications show that the ‘Administrator’ left a comment, not a real user. The same happens in the ticket
        • Celebrating the power of visuals

          On World Photography Day, we would like to highlight the power of visuals in customer service. Visuals promote learning and understanding in less time. A photograph can rekindle a memory, convey more than words, and give a fresh perspective. How does
        • Customer address in Zoho Bookings

          Hello,  Is it possible to add customer address information to the Zoho bookings appointment screen? Or have it pull that information automatically from the CRM? We are wanting to use this as a field management software but it is difficult to pull the address from multiple sources when it would be ideal to have a clickable address on the appointment screen that opens up the user's maps.  It would also be advantageous for the "list view" to show appointment times instead of just duration and booking
        • Blocking / black listing customers

          Hi, We have a situation, we observed that certain customers are blocking multiple appointments with our advsiors but not showing up. Some of these are repeat offenders. This leads to those service hours getting blocked and not available for genuine customers.
        • Option to block bookings from specific email address or ip adresss in zoho booking

          Sometime few of our client keep booking irrelevant booking service just to resolve their queries and they keep booking it again and again whenever they have queries. Currently its disturbing our current communication process and hierarchy which we have
        • Feature Request: Email Templates for notifications accross all services

          Currently in Zoho Bookings, email notifications (such as booking confirmations, reminders, and cancellations) must be customized individually for each service. This becomes time-consuming and error-prone when managing multiple services that require consistent
        • Allow customers to choose meeting venue and meeting duration on booking page

          My business primarily involves one-to-one meetings with my clients. Given the hybrid-work world we now find ourselves in, these meetings can take several forms (which I think of as the meeting "venue"): In-person Zoom Phone call I currently handle these
        • Approval-based booking with Zoho Creator and Zoho Bookings

          Hi community members, We have developed a workaround for approval-based booking using Zoho Creator and Zoho Bookings! This provides a temporary solution as we work on the native feature, and it's useful for anyone needing an approval workflow when confirming
        • Member Accounts in Related List

          Hi Team, Currently, when a parent account is associated with an account in FSM, there is no related list displaying the associated member accounts under the parent account’s related list section. To view member accounts, I have to manually search using
        • how do i remove a specific Zoho Service from my account

          I no longer need Zoho CRM, ZRM Assist nor ZRM BugTracker. How do I remove them from the list of apps for my account?
        • I Want migarte all invoice details to zoho sheets

          I want to migrate all existing invoice details to Zoho Sheet, and automatically update the sheet whenever a new invoice is created.
        • were can i find my invoices i need this for my accountant

          were can i find my invoices i need this for my accountant, how can i get id direct to my email?
        • ONLY email field not populating Writer fillable document (randomly)

          I have a Zoho Writer fillable document that has pulled all my data from my Zoho Sheets file, EXCEPT the email column. It pulled every data before and after that column with no issues. Screenshots attached. It's not my first time using the app or the feature,
        • My number is marked as spam

          Hello Zoho Mail Support, My phone number was incorrectly flagged as “spam” during sign-up. This is my personal number, and I have not engaged in any spam activities. Kindly review and verify my account so I can proceed with my email setup. Thanks.
        • Personnalisation des paramètres dans Zoho Mail

          Pourquoi cela compte-t-il ? La personnalisation des paramètres dans Zoho Mail permet aux administrateurs de configurer l’environnement de messagerie en fonction des besoins spécifiques de leur organisation. Que ce soit pour alléger l’interface pour certaines
        • How To Save Data Into Zoho CRM Sandbox

          Hi Community, I want to save data into my zoho sandbox , for this I am using this api endpoint - https://www.zohoapis.com/crm/v8/Patients but I am getting this error - { "success": false, "message": "Zoho API request failed", "error": { "code": "INVALID_MODULE",
        • Automate pushing Zoho CRM backups into Zoho WorkDrive

          Through our Zoho One subscription we have both Zoho CRM and Zoho WorkDrive. We have regular backups setup in Zoho CRM. Once the backup is created, we are notified. Since we want to keep these backups for more than 7 days, we manually download them. They
        • Question about retrieving unsubscribed contacts (outside of lists) via API

          Hello, I am currently using Zoho Marketing Automation and would like to integrate it with our company’s core system. For this purpose, I am exploring the API options available to retrieve contact information. Specifically, I would like to know if there
        • Getting “mandatory field missing: Service_Line_Items” When Creating Work Order via Zoho Flow Deluge

          Hi Team, I’m trying to create a Work Order in Zoho FSM with only a Service Line Item (no Parts). However, I keep getting this error: Work Order Response: {"code":"MANDATORY_NOT_FOUND","details":{"api_name":"Service_Line_Items"},"message":"required field
        • How to customize the colors of the Client Portal login screen and add the company logo?

          As title, how to customize the colors of the Client Portal login screen and add the company logo?
        • Daily updates/fixes and how to see what was changed?

          When I receive the notification that zoho was updated and I need to refresh it. How can I see what was changed or fixed? Sometimes they change things that effect my books and I need to know what they did. For example over this past weekend something was
        • Upcoming Change: Snowflake Username/Password Authentication Deprecation – Action Required

          Hello Users, Snowflake has officially announced that username and password-based authentication will be deprecated by November 2025. You can find the official announcement [here]. If you're using a Snowflake connection in Zoho Analytics to import data,
        • Why should I choose Zoho Inventory vs Odoo?

          Hello there! I have used Zoho in different companies I've worked in, and I have a positive perception of it. I am starting a new import business for pipes, tubes, fittings, valves, elbows, etc., which all have serial numbers, cast numbers, etc., so I
        • Product Updates in Zoho Workplace applications | July 2025

          Hello Workplace Community, Let’s take a look at the new features and enhancements that went live across all Workplace applications this July. Zoho Mail Import bookmarks from Pocket Worried about losing your Pocket bookmarks? Don't worry we have got you.
        • PLEASE FIX YOR BUGS

          PICTURES ARE BEING REJECTED DESPITE THEM FOLLOWING THE GUIDELINES ON DIMENTIONS.
        • Kaizen# 204 - Answering Your Questions | Perform Field Updates before Blueprint transition via Client Script

          Hello everyone! Welcome back to another exciting Kaizen post. One of the questions we received through your Kaizen feedback was: “How can I update fields before Blueprint transition and how to prevent a transition based on a condition using Client Script?”
        • Create online meetings for Booking Pages with Zoho Meetings and Zoom

          Greetings, We hope you're all doing well. We're excited to share some recent enhancements to Bigin's Booking Pages. As you know, Booking Pages let you create public pages to share your availability so that your customers can easily book time slots with
        • Filters in audit logs

          Greetings, I hope all of you are doing well. We're happy to announce a few recent enhancements we've made to Bigin. We'll go over each one in detail. Previously, there were no filters available to narrow down data in audit logs. Now, we've introduced
        • Enhanced help options in Bigin

          Greetings, We're excited to introduce a new enhancement to Bigin's Help section: a comprehensive Help Options panel that brings together all your support resources in a single, well-organized space. Previously, the Need Help? menu provided only a limited
        • Next Page