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 #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
      • Kaizen #217 - Actions APIs : Tasks

        Welcome to another week of Kaizen! In last week's post we discussed Email Notifications APIs which act as the link between your Workflow automations and you. We have discussed how Zylker Cloud Services uses Email Notifications API in their custom dashboard.
      • Kaizen #216 - Actions APIs : Email Notifications

        Welcome to another week of Kaizen! For the last three weeks, we have been discussing Zylker's workflows. We successfully updated a dormant workflow, built a new one from the ground up and more. But our work is not finished—these automated processes are

        • Recent Topics

        • 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?
        • 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)
        • 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
        • Operation not permitted

          I am trying to add an email address to the list of user but I am getting error Operation not permitted
        • Request to Permanently Delete Email User (info@mehbobgulf.com ) from Old Organization

          Please permanently delete the user email info@mehbobgulf.com It is still associated with my old Zoho organization. I cannot delete it because it shows ‘You cannot delete email. Zoho host’. I need to use this email in a new Zoho account.”
        • Client host [89.36.170.5] blocked using Spamhaus

          Hello please make make actions for delist ..... "Client host [89.36.170.5] blocked using Spamhaus"
        • Suggestion: Option to Re-run a migration

          As I'm going through a migration process, I like the IMAP migration tool, but it would be better if there were an option to re-run the same migration as configured. There's not even an option to copy/edit one that's already there. Just run if it hasn't
        • Issue with "Add Your Mobile Number"

          Hello, I am trying to sign up for email service for a domain name, and I cannot finish the authentication. When I enter my mobile number, I receive the message "We’re unable to send OTP to this mobile number. Please contact support-as@zohocorp.com". I
        • zoho mail non vérifié

          Bonjour, Il y'a un jour que j'ai acheté un domaine et toute les tentatives pour l'associé a mon compte shopify son vaine. j'ai essayé TXT sans suite après, j'ai essayer avec CNAME sans suite. j'aurais besoin de votre assistance pour associé mon mail.
        • Unable to send message;Reason:553 Relaying disallowed. Invalid Domain

          i have facing the issue "Unable to send message;Reason:553 Relaying disallowed. Invalid Domain" if i verify domain evertthing i did but still face the same error.
        • ZohoMail is so close to being Perfect BUT

          Why don’t you have HILIGHTING???!! I've been trying to find a substitute for Edison Mail but I want & need hilighting (preferably in more than just yellow)! Is this even on your To Do list? I’m so disappointed. 🙄
        • Override Auto Number field?

          We are preparing to migrate from Salesforce. In Salesforce, we auto-generate a unique number on our Opportunities (Potentials). If the Opportunity results in a contract, we use that unique number as the Contract number. There are some situations where
        • Using a third party service provider want to move directly with Zoho

          Hi good day I’m currently using Zoho but I’m using a third party service provider I want to move directly with you guys I’m using Zoho email and invoices and my domain please let me know if it’s possible to move away from the third party provider my email
        • Request for Assistance Regarding Email Sending Issue (554 5.1.8 - Email Outgoing Blocked)

          Dear Zoho Support Team, I hope this message finds you well. I am writing to request assistance with an issue we are currently facing regarding our Zoho Mail account. Our email account, admin@tuyensinhcanuoc.com, is encountering the following error when
        • Zoho Mail API returns empty inbox (0 messages) but webmail shows 37 unread emails

          Hello, I'm experiencing a discrepancy between Zoho Webmail and the Mail API (EU region). **Setup:** - Account: EU datacenter (mail.zoho.eu) - API: Self Client OAuth2 via api-console.zoho.eu - Scopes: ZohoMail.messages.READ, ZohoMail.messages.UPDATE, ZohoMail.folders.READ,
        • ShipStation and Zoho Inventory

          Hello, I am looking to sync zoho inventory with shipstation ZOHO INVENTORY           SHIP STATION Sales Order  ==>  create ORDERS INVOICE  <==    Shipments What exactly does BETA mean on the Shipstation connector?  This is required for me to sign-on in the next month. Thanks in advance for your efforts
        • E

          We are trying to add our Zoho Form embed in our Elementor Page Builder. After adding Zoho Forms widget in elementor page builder it’s displaying in backend page builder but it’s giving 403 error while trying to save, as it’s not reflecting in front end.
        • Connecting Zoho Inventory to ShipStation

          we are looking for someone to help connect via API shipStation with Zoho inventory. Any ideas? Thanks. Uri
        • custom module import.

          Is there a way to import data into a custom module? Thanks Rudy
        • HEIC File Type Viewer

          Hi, It would be nice to be able to click on the images in the All Entries/Reports Tables which are HEIC the same as JPG, PNG, etc. so they open in a viewer from Zoho or the Attachment Service, today HEIC requires you to download each image and open it
        • 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)
        • Building Toppings #4 - Setting up and using connections in Bigin toppings

          When building a topping to extend Bigin's functionality and connect it with third-party applications, creating and handling connections is an important step. Connections provide a secure way for your topping to authenticate and communicate with other
        • Need code format to specify default values

          Can someone please direct me to the code syntax or the proper translation per the instructions circled below. These instructions don't seem correct.
        • AI Interview Insights: Turn Recorded Interviews into Quick Transcripts & Summaries

          Evaluating interviews shouldn’t require replaying long recordings or taking manual notes. With AI Interview Insights, you can now review complete transcripts and AI-generated summaries of your One-way (Recorded) interviews right inside Zoho Recruit. This
        • Record payment: Payment Mode vs. Deposit To and how to "connect" them!?

          How do we set up that when we choose:  "Payment Mode"= Cash, then "Deposit to" is automatically set to Petty Cash, and if we choose  "Payment Mode"= Check, then "Deposit to" is automatically set to Undeposited Checks, and if we choose  "Payment Mode"=
        • Grouping Undeposited Funds to Move to other accounts

          In the bank option it would be nice to check what transactions in undeposited funds I want to move to other accounts. Then while checking this it can accumulate totals and created whats essentially a deposit slip. Once the transaction is moved it should
        • Depositing funds to account

          Hello, I have been using Quickbooks for many years but am considering moving to Zoho Books so I am currently running through various workflows and am working on the Invoicing aspect. In QB, the process is to create an invoice, receive payment and then
        • Facing email delivery issues? Verify your domain's DNS records

          Have you ever wondered why your legitimate emails are landing in the recipient’s spam folder? Or been surprised to see emails sent from your registered domain getting rejected by recipient email servers? Why does this happen? In most cases, this happens
        • Order of Departments in Help Desk

          In the end user portal, , the departments are sorted by the date of creation of the department (or perhaps their id). Is there a way to choose the display order of the departments or at least to be able to sort them alphabetically?
        • COGS - Account showing negetive

          I have multiple COGS account and in these all there is one account is negetive so suggest why it is showing negetive value.?
        • Create CRM Deal from Books Quote and Auto Update Deal Stage

          I want to set up an automation where, whenever a Quote is created in Zoho Books, a Deal is automatically created in Zoho CRM with the Quote amount, customer details, and some custom fields from Zoho Books. Additionally, when the Sales Order is converted
        • Next Page