Kaizen 259 - Working with Zoho CRM APIs using the zoho-crm skill

Kaizen 259 - Working with Zoho CRM APIs using the zoho-crm skill


In the previous Kaizen, we introduced the zoho-crm skill and discussed how it can work with different CRM developer capabilities.

The zoho-crm skill makes it easier to work with Zoho CRM without having to remember every API endpoint, request structure, or the documentation needed for a particular requirement. You can describe what you want to build, and the skill determines the appropriate CRM capability and uses the relevant references to come up with the solution.

As of now, the skill supports REST APIs, Deluge Functions, Client Scripts, Widgets, COQL, Queries, and Connections, with more capabilities to be added over time.

In this Kaizen, we will look at how the skill can help you when you are working with Zoho CRM APIs.

For the demo, I have already installed the zoho-crm skill in my project and will be using GitHub Copilot. We will use a Lead management requirement and see how the skill helps us identify the required APIs and construct the requests.

We will start with individual actions and then combine them into a workflow.

Working with Zoho CRM APIs using zoho-crm skill  

To see how the zoho-crm skill helps with API usage, let us take a Lead management requirement.

Assume that whenever a Lead is qualified, we want to perform the following actions:

  • Set the Lead's Priority to Hot

  • Create a follow-up task for the Lead, due one day after the workflow is triggered

  • Send the Lead details to an external system using a webhook

Instead of looking for the appropriate API, going through the documentation, and figuring out the request structure for each of these requirements, we can provide the requirement to an AI coding agent with the zoho-crm skill.

The skill identifies the relevant CRM API, loads the required API references, and generates the request based on the requirement.

For this demonstration, we will use GitHub Copilot as the AI coding agent.

Creating a Field Update Action  

We will start by creating a Workflow Field Update action for the Leads module. The requirement is to set the Lead's Priority field to Hot when the action is executed. We can provide this requirement to the AI coding agent with the zoho-crm skill.

Prompt: /zoho-crm Create an automation field update action for Leads module that sets the Priority field to "Hot". Give me the curl request.


The zoho-crm skill first identifies that this requirement should be handled using the Workflow Field Update API. It then checks the relevant API reference to understand the endpoint, request structure, required parameters, and OAuth scope.

The generated request contains the organization-specific field information required for the Field Update action. Where an ID is required, the skill identifies that the value needs to be obtained from CRM metadata rather than asking us to manually figure out where it comes from. It also identifies the API that can be used to retrieve the required field details. We can use that API to get the field ID, replace the placeholder in the generated cURL request, and execute the request. The skill also identifies the OAuth scope required for the request, so you know exactly what permissions to configure before making the call.

The generated cURL request can then be executed to create the Field Update action in Zoho CRM. The response gives us the action ID, which we will use later when creating the workflow.

Creating a Task Action  

Next, we will create the Task action that needs to be associated with the workflow.

The requirement is to create a follow-up task titled "follow up with qualified lead", with the due date set to one day after the workflow is triggered.

Prompt: /zoho-crm Create a Zoho CRm workflow task action for the Leads module that creates a follow-up task titled "follow up with qualified lead" with the due date set to 1 day after the workflow is triggered. Give me the cURL request.


The skill identifies this as a Workflow Task requirement and loads the relevant Task Action API reference. It checks the API structure and the mandatory fields required for creating the task action, such as the task subject, due date, status, and priority.

For the due date, the skill also needs to represent the requirement relative to the workflow execution time. It constructs the request using the workflow execution time as the starting point and adds one day to it. The skill also identifies the organization-specific field IDs required for the Task action. If these IDs are not already available, it points to the CRM Fields Metadata API that can be used to retrieve the field details for the Tasks module.

Based on these references, the skill generates the cURL request for creating the Task action. The generated cURL request can then be executed to create the Task action in Zoho CRM. The response gives us the action ID, which we will use later when creating the workflow.

Creating a Webhook Action  

The third action is a webhook that sends the Lead details to an external system.

Prompt: /zoho-crm Create an automation webhook action for the Leads module that sends the Lead ID, Lead Name, Email and Phone to this endpoint : https://webhook.site/b89a8c65-8623-4af4-b579-8fa1853ad615. Give me the cURL request.


Here, the skill identifies that this is a Workflow Webhook action and refers to the corresponding Webhook API documentation. It also takes care of an important part of the request; mapping CRM fields to the data that needs to be sent to the external endpoint.

The generated request uses Zoho CRM merge fields to populate the webhook payload when the workflow executes. In our case, the payload contains the Lead ID, Lead Name, Email, and Phone. The skill also checks the API requirements, including the required OAuth scope and the structure of the webhook request, before generating the cURL.

We can then execute the generated cURL request to create the webhook action in Zoho CRM. The response gives us the action ID, which we will need when we define the workflow.

At this point, we have the three actions required for our use case:

  • A Field Update to set Priority to Hot

  • A Task to follow up with the qualified Lead

  • A Webhook to send the Lead details to an external system

The next step is to bring these three actions together and create the workflow rule that will execute them when a Lead is qualified.

Creating the Workflow Rule  

We now have all three actions ready. The final step is to create a workflow rule that brings them together.

For our use case, the workflow should run when the Lead Status is changed to Qualified. Once the workflow is triggered, it should execute the Field Update, Task, and Webhook actions we created earlier. Instead of manually working out the workflow API request structure, we can give the requirement to the skill along with the action IDs.

Prompt: /zoho-crm Give me the request body JSON to create a workflow rule named "Qualified Lead Follow Up" in the Leads module. Trigger when Lead_Status is changed to "Qualified".

Configure these as instant actions:
- Field Update: 4876876000025812036
- Task: 4876876000025831002
- Webhook: 4876876000025864002



The skill identifies this as a Workflow Rule API request. It determines how the field-update trigger needs to be represented and how the existing action IDs should be associated with the workflow as instant actions. It also uses the relevant workflow API reference to construct the request body, including the module, trigger criteria, and actions.

The skill generates the request body JSON, which we can use in the Workflow Rules API request.

So, the complete flow is now in place:

This is where the value of using the skill becomes more apparent. We started with a business requirement and, rather than having to determine the individual APIs and construct each request manually, the skill helped us identify the appropriate APIs, refer to the relevant documentation, and build the requests needed to put the complete workflow together.

Using the skill for other CRM requirements  

The zoho-crm skill can also act as a knowledgeable guide when working with CRM APIs. Instead of using it only to generate a request, you can use it to understand how a particular API works, determine which API is appropriate for a requirement, and get guidance on the request and response structure.

In other words, you can treat the skill as a Zoho CRM expert that you can consult while building your solution.

For example, consider the following requirement:

Prompt: /zoho-crm Retrieve Leads whose Lead Status is `Qualified` and whose Score is greater than `25`, and include details from the Account associated with each Lead (such as Account Name and Account Industry).


The skill identifies COQL as the appropriate API for this requirement. It checks the relevant references and API specification to determine the endpoint, required scopes, request structure, field names, and response format. It can also explain how COQL compares with other record retrieval APIs such as Get Records and Search Records, and why it is better suited to this particular requirement.

If you have doubts about a Zoho CRM API, the skill can help you understand the API, work through its request and response structure, and determine how it applies to your requirement.

In the upcoming weeks, we will explore more capabilities of the zoho-crm skill and see how it can help with the other developer tools available in Zoho CRM.

If you have questions about the skill, APIs, or any of the capabilities covered in this series, feel free to drop a comment below or reach out to us at support@zohocrm.com. We would also love to hear about the use cases you are exploring with the zoho-crm skill.

Info
Previous Kaizen : Getting Started with zoho-crm SKILL.md | Kaizen Directory : Home


      • Sticky Posts

      • Announcing the new SKILL.md for Zoho CRM and the updated OAS repository!

        We are introducing a new zoho-crm skill to make working with Zoho CRM Developer tools (like APIs, functions, widgets, client scripts, queries etc) easier and faster, with the help of AI in your preferred AI harness like Claude Code, Codex, Cursor, VSCode
      • Kaizen #261 : Using Zoho CRM Skill to generate complex COQL queries

        Hello everyone, In the previous Kaizen posts, we introduced the zoho-crm SKILL.md and discussed how it can help you when you are working with Zoho CRM APIs and Client Script. In this Kaizen, we will focus on using the Zoho CRM `SKILL.md` with GitHub Copilot
      • Kaizen #256 - Build an Arrival Readiness Web Tab in Zoho CRM

        Hi everyone! Welcome back to the Kaizen series! In the post, we discuss a use case in hospitality industry: how an Arrival Readiness web tab widget can be used to let reception staff identify and resolve issues before arrival of guests. Use case In the
      • 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

        • Recent Topics

        • I cannot add user to my account

          I have an account, I deleted a user from the account and I have one unused licence which lasts for 23 days, I tried adding a new user and it said This user is not allowed to add in Zoho. Please contact support-as@zohocorp.com for further details, please
        • Domain Activation Issue

          I purchased a domain through Zoho, and as I understand it, you were supposed to send me a domain activation link. However, I never received it. As a result, I was unable to activate the domain, and it is now suspended. Because of this, I am not receiving
        • Grouping by Stage *type* in widgets

          Hi Can I ask for a new feature? I'd like to be able to group by stage type in a Deal widget. That is by whether the Deal is in an Open Stage, a Closed Won Stage, or a Lost stage. Currently I can group by Stage, but if we have 10 open stages and one Closed
        • Please release domain bravovietnam.com from an old account

          Hello Zoho Support, I am trying to set up Zoho Mail with my domain bravovietnam.com on my account office@bravovietnam.com. Every time I add the domain, I get: "This domain is already associated with this account" — pointing to a DIFFERENT, older account
        • Creator -Dynamic addition of Customer Portal User Licenses

          Hi, We have a Creator App for B2C about to get released. We are experiencing the Portal User license challenge. Unable to predict the number of users who will download and Subscribe. When a User is about Subscribe and the portal licenses does not exists,
        • Migrate Mailbox between Microsoft 365 tenants - Safe, Fast & Easy

          Moving mailboxes between Microsoft 365 tenants is a difficult proposition when you've got a large number of user accounts, a lot of email data and a number of Microsoft 365 services to contend with. This is a common scenario when a business is undergoing
        • 👍 Zoho CRM's Notes now gets Reactions and a new look

          Available in SA and JP DCs. Rolling out to other DCs in phases. Hello everyone, Notes help users capture important updates, collaborate with teammates, and maintain context for records. Now with Note Reactions, users can quickly acknowledge updates, express
        • Widget Height were destroyed

          All widget heights in the Details Canvas view are broken. Moderation Update: This is a known issue with widget heights in Client Script popups and flyouts. A fix is in progress, and this post will be updated once it's released.
        • Introducing Incentives for Zoho CRM: Build, automate, and track sales commissions

          Dear Customers, We are here with an amazing news! We built a direct solution to help manage your commission provisioning activity in your business. From creating commission plans to issuing payouts, this application leverages your sales reps’ performance
        • Enhanced Zoho CRM and Office 365 calendar synchronization features!

          Dear customers, We're excited to share some significant improvements to our Office 365 calendar synchronization features, aimed at providing you with more control and a more personalized experience. What’s new Choose your Office 365 calendar: During the
        • Introducing Zoho Key Service, a simpler way to access LLMs without API keys

          Available in the Professional, Enterprise, and Ultimate editions in the US, IN, AU, JP, and CA DCs. Hello everyone, We are excited to bring Zoho Key Service (ZKS) in Zoho CRM, a simpler way for organizations to access and use third party LLMs. You can
        • Zoho Books Support

          Dear Team, Zoho Books offers a demo before you purchase zoho books. But after that when he actually purchases the product he has to rely on toll free number or help documents. But this might get frustrated in the initial period. Specially in initial period.
        • How to add a fee based on payment method

          I currently accept both ACH payments and credit card. I want to add a 3% fee to a number of my subscription plans if the customer chooses to use a credit card (and not ACH/checking). How do I do this? Is there an in-built feature, or would i have to create
        • Mirror Component in Zoho CRM: Access real-time related data without leaving your record

          Hi everyone, This feature is now available for the JP, CA, SA, UAE, and AU DCs. We're excited to bring to you Zoho CRM's mirror component, which presents relevant data on a record's details page and keeps everything users need in one place without having
        • What's New in Zoho Invoice | July – September 2026

          Hello everyone! We're back with the latest updates and enhancements we've rolled out in Zoho Invoice from July to September 2026. Here's what's new this quarter: Zoho Invoice is Now Available in Nigeria Introducing the Super Admin Privilege E-Invoicing
        • Convert MBOX to PDF Free on Mac and Windows

          MBOX files are widely used for storing email messages in email clients such as Thunderbird, Apple Mail, and other programs that support the MBOX format. Although this format is useful for handling emails, it can at times be inconvenient to access the
        • Notes - Reaction Buttons

          Using the native notes option within CRM is fine, it works and the RTF features are great, however, would it be possible - if there isnt already something in place, where we can add a reactions button, similar to teams/whatsapp to show that its been read
        • ZohoBooks - "Account transactions" report doesn't have any "Desciptions"

          Hi, I'd like to push for this to be included in ZohoBooks: In a "account transactions" report all the numbers are right, but I'd really like to see the "Description" as part of this report, i.e. the line-item-description as I would see it in the bank statement. Essentially all you see is a list of numbers adding up to the total. It is very difficult to see if things are right without being able to see what exactly each transaction refers to. Going into each transaction one-by-one is not a workable
        • Address limits per customer by edition

          I’m on the Standard edition and have reached a limit of 30 addresses under a single customer. Before I move to an annual Professional subscription, I need to confirm the following: What is the maximum number of addresses allowed under one contact, and
        • Export from List view

          I'm constantly having the issue where my users are building lists in ListView for various objects and then realising they cant export the data, then they have to go and build the data set in reports to export. I would like to see the ability to export to excel/csv from ListView.
        • Cannot apply tags to multiple items at once

          It is very frustrating needing to apply tags to notes individually. Even worse that it takes multiple clicks to do it. Can there please be an update to: 1.) Allow us to apply tags to batches of notes in one go. 2.) Make it less clicks to add a tag 3.)
        • Get all hiring updates via Zoho Cliq bot notifications

          We’re introducing a new way to stay updated on recruitment activities: Cliq Bot notifications. Now you can receive Zoho Recruit notifications directly in Zoho Cliq—alongside your existing in-app alerts and emails. Whether it’s a candidate status change,
        • Notes Acknowledgement

          It would be great to have emojis that can be used for Notes. Emojis such as Thumbs Up to let someone know you agree with them or a emoji for thanks. It's a simple way to acknowledge that you read someone's note. Moderation update: Emoji reactions for
        • Is it possible to log text messages from iphone into Zoho CRM

          My team is more and more utilizing text messaging to communicate with clients. Does Zoho have a solution for logging these text messages when clicking "Send Text Message" from the Zoho app. Much like when you call, you get prompted to log a call, can
        • Project Finances: Fully Accessible within Projects

          Project finances and work items are now on the same screen and it transforms the way you run your project. Managing your project finances is now much easier and in the same screen as your work items. Access quotes, invoices, bills, sales orders, and purchase
        • zoho stream web notifications

          since im locked out of IMAP and cant use my mail app that lets my team collaborate and chat below emails, im trying out the zoho version of this... zoho streams. On the bottom of an email in the zoho mail web app, i "comment" and mention another user.
        • UI / UX Improvements

          Please consider changing the Dependency Details window from a column-based layout to a list-based layout, or allowing users to choose their preferred layout. The current column-based view uses screen space inefficiently and makes navigation difficult,
        • Zoho CRM and Desk sandboxes for testing native integration

          Hello team, We are evaluating the native integration between Zoho CRM and Zoho Desk, We have sandbox instances of both products and want to test the integration there, without any effect on our production CRM or production Desk data. While setting up
        • Function #24: Automatically display deal name from Zoho CRM on quotes in Zoho Books

          Deals allow businesses to organize and visualize their sales pipeline. This provides a clear overview of all potential opportunities and helps in making informed decisions. Zoho CRM empowers you to create deals or potentials for your clients and monitor
        • Zoho Books | Product updates | August 2026

          Hello users, July has been an exciting month for Zoho Books! This month, we're excited to introduce HTML PDF Templates, Placeholders as Pills, expanded approval workflows for Sales Returns and Journals, and significant compliance updates across the India,
        • Auto-Sync Field of Lookup Values When Parent Record Changes

          Hi Zoho Team, Currently, when you use a "Field of Lookup" in Zoho CRM, the value is captured as a snapshot at the time the lookup is set. If the parent record is later updated, the Field of Lookup value on the child record does NOT update and stays stale.
        • [Request] Pivot filter date option : from set date to relative value ie from 01Jan to LastMonth

          I don't think I can currently do this... but it's worth asking if it's possible. My use case is concerning annual leave which is calculated from the beginning of the calendar year (01Jan) then each month I want to have details of leave taken etc... In
        • Customer Statement Showing Incorrect Negative Balance Due to Unused Advance

          Dear Zoho Support Team, We are facing an issue with the Customer Statement in Zoho Invoice related to customer advances/mobilization advances. The issue is that when a customer has made an advance payment that has not yet been fully utilized against invoices,
        • Mois de la sensibilisation à la cybersécurité 2026 : faites de la sécurité un réflexe avec Zoho

          Imaginez : vos systèmes informatiques répondent aux normes de sécurité en vigueur et votre entreprise est assurée contre les cyberattaques. Pourtant, un matin, tout bascule. Vos données sont chiffrées et un message glaçant s’affiche à l’écran : « Si vous
        • Specifying time increments on a Date/Time field

          Hi all, Im using a Date/Time field in my CRM module. At the moment the increments are 30 minutes. How can I change these to be 15 minutes? Thanks
        • Read, View, Access, or Open an OST File Without Outlook

          Have you at any time needed to open an old OST file only to find that Microsoft Outlook is not installed on your computer? It is very annoying, particularly in the case where the file includes important emails, attachments, contacts, or calendar items.
        • What's new in Zoho Workplace | August 2026

          Hello Zoho Workplace community! Here's a roundup of all the new features and announcements that went live across Zoho Workplace applications in August. Zoho Mail Zoho Mail is now available in AWS Marketplace! AWS Marketplace users can access and subscribe
        • Read, View or Open MBOX File without Any Email Clients

          Since email messages are stored in a single file by MBOX files, they are useful for keeping email data in one location. Many email programmes, such as Thunderbird and other mail clients, support this format. However, if you have an old MBOX file and the
        • What's new in Zoho Social - Q3 recap

          Hello everyone, We've rolled out a bunch of exciting updates in Q3, and we're thrilled to walk you through them. Here's a quick look at everything we released in July, August, and September to help you experiment with content, automate engagement workflows,
        • The Social Wall: September 2026

          Hello everyone! This month, we’re bringing Snapchat to Zoho Social. You can now connect your Snapchat account and manage your content alongside your other social channels. Whether you want to reach a wider audience through Spotlights or share quick updates
        • Next Page