Kaizen 213 - Workflow APIs - Part 1

Kaizen 213 - Workflow APIs - Part 1


Welcome to another week of Kaizen!

If you have ever managed complex business processes, you know that Workflows are the quiet backbone of any well-run business process. They keep things moving; assigning owners, sending alerts, keeping deals on track, and much more. But until now, you could not manage them via APIs. That changes with the release of Workflow APIs.

In this series, we will work through a real-world scenario together, showing you how to transition from manually managing workflows to governing them using APIs. We’ll look at Zylker Cloud Services, an IT solutions provider trying to bring order to its growing CRM automations.

The use case: Scaling the sales process at Zylker Cloud Services 

Zylker’s sales process touches multiple teams and modules like Leads, Deals, Calls, Appointments, etc. Over time, different team members created their own workflows. The result is familiar to anyone who has scaled fast:

  • Multiple versions of what should be the same process

  • Old, unused workflows still running.

Now, Zylker wants to bring structure and visibility to this automation sprawl. Their system administrators are building a custom admin dashboard to monitor and manage CRM workflows, without needing deep CRM expertise.

They want to:

  • Display a real-time list of all workflows with their status

  • Gain insights into workflow distribution across modules

  • Identify inactive or outdated workflows that may need cleanup.

However, the CRM UI only allows viewing one workflow at a time. There is no consolidated view to see all workflows, their triggers, and their status across modules. That makes auditing and governance tedious and error-prone, especially at scale.

This is exactly what the Workflow APIs solve. With this, they can:

  • Audit all existing workflows.

  • Review how and when they trigger.

  • Identify which modules and actions are supported before creating new rules or updating existing ones.

  • Update existing rules and create new rules.

  • Delete the rules that are no longer needed.

You can not build a dynamic admin dashboard or an automated audit system for Workflows through just clicks. But you can do this now, with Workflow APIs.

STEP 1: Discover and audit existing workflows

Before changing anything, we need to understand what we are working with. How many workflows do we have? What do they do? How many more can we create?

To get a complete inventory of Workflow rules, we can use the GET Workflow Rules API. This API returns a list of all the Workflow Rules configured for the CRM account.

Sample Request:

GET {api-domain}/crm/v8/settings/automation/workflow_rules

This initial audit acts like a master list, giving us an overall picture. It helps understand the scope of the automation landscape and identify obvious redundancies, like multiple workflows with similar names or purposes.

Sample Response:

{

    "workflow_rules": [

        {

            "created_time": "2024-01-15T14:20:30+05:30",

            "execute_when": {

                "details": {

                    "trigger_module": {

                        "api_name": "Deals",

                        "id": "4876876000000002181"

                    },

                    "repeat": false

                },

                "type": "create_or_edit"

            },

            "editable": true,

            "module": {

                "api_name": "Deals",

                "id": "4876876000000002181"

            },

            "deprecated": false,

            "deletable": true,

            "description": "Alert VP of Sales for high-value opportunities",

            "source": "crm",

            "created_by": {

                "name": "Matthew Mayers",

                "id": "4876876000001360001"

            },

            "last_executed_time": null,

            "modified_time": "2024-01-23T12:23:12+05:30",

            "name": "VP Alert - High Value Deal",

            "modified_by": {

                "name": "Matthew Mayers",

                "id": "4876876000001360001"

            },

            "lock": {

                "locked_by": null,

                "message": null,

                "status": false

            },

            "id": "4876876000016390024",

            "category": "default",

            "conditions": [

                {

                    "sequence_number": 1,

                    "instant_actions": {

                        "actions": [

                            {

                                "related_details": null,

                                "name": "VP notified",

                                "details": {

                                    "module": {

                                        "api_name": "Deals",

                                        "id": "4876876000000002181"

                                    }

                                },

                                "id": "4876876000016390063",

                                "type": "field_updates"

                            },

                            {

                                "related_details": {

                                    "best_time": true

                                },

                                "name": "High value deal alert",

                                "id": "4876876000016390015",

                                "type": "email_notifications"

                            }

                        ]

                    },

                    "scheduled_actions": [

                        {

                            "execute_after": {

                                "period": "business_days",

                                "unit": 1

                            },

                            "id": "4876876000016390074",

                            "actions": [

                                {

                                    "related_details": null,

                                    "name": "Confirm VP follow-up",

                                    "id": "4876876000016390067",

                                    "type": "tasks"

                                }

                            ]

                        }

                    ],

                    "criteria_details": {

                        "relational_criteria": {

                            "module_selection": null,

                            "criteria": null,

                            "module": null

                        },

                        "criteria": {

                            "group_operator": "AND",

                            "group": [

                                {

                                    "comparator": "equal",

                                    "field": {

                                        "api_name": "Amount",

                                        "id": "4876876000000002557"

                                    },

                                    "type": "value",

                                    "value": "50000"

                                },

                                {

                                    "comparator": "equal",

                                    "field": {

                                        "api_name": "Stage",

                                        "id": "4876876000000002565"

                                    },

                                    "type": "value",

                                    "value": "Negotiation/Review"

                                }

                            ]

                        }

                    },

                    "id": "4876876000016390025"

                }

            ],

            "status": {

                "active": true

            }

        },

        {

            "id": "4876876000012015001",

            "name": "Lead Assignment - North Region",

            "module": {"api_name": "Leads"},

            "status": {"active": true},

            "execute_when": {"type": "create"},

            "last_executed_time": "2025-10-14T11:56:20+05:30"

            // ... other keys omitted for brevity

        },

        {

            "id": "4876876000012020001",

            "name": "Lead Assignment - South Region",

            "module": {"api_name": "Leads"},

            "status": {"active": true},

            "execute_when": {"type": "create"},

            "last_executed_time": "2025-10-14T10:30:15+05:30"

            // ... other keys omitted for brevity

        }

        // ... additional workflows

    ],

    "info": {

        "per_page": 200,

        "count": 71,

        "page": 1,

        "more_records": false

    }

}


The response gives us a comprehensive overview of all configured workflows. For each rule, we get the metadata including its unique ID, name, description, the module it operates on, its activation status, and details about when it triggers. We also get audit information like creation timestamps and which user made changes.

Working with large results

When you have hundreds of workflows, pagination helps. The response includes an info object with pagination details:

  • count: The number of workflows on the current page

  • per_page: The maximum number of records per page (default and max is 200)

  • page: The current page number

  • more_records: Indicates if there are additional records to fetch.

If the more_records key is true, we can retrieve the next page by using the page parameter in the request.

While getting all workflows gives you the big picture, we may often want to focus on specific areas. This API offers several parameters to narrow down our search:

Parameter type

Description

module
string

Filters workflows by the primary module they operate on.

trigger_module
string

Filters by related modules that can trigger workflows. Use this when you want workflows that are triggered by changes in related records.
Note: Requires the module parameter.
For example: module=Leads&trigger_module=Notes - Get lead workflows triggered by note activities

execute_on
string

Filters by the specific action that triggers the workflow.
Note: Requires the module parameter.

status_active
Boolean

Filters by activation status to see only active or inactive workflows. Useful for audits and cleanup operations.

filter
string

Searches workflows by name using a JSON filter.
Note: The value of this parameter must be URL-encoded.

page
integer

Specifies which page of results to return. Use this for pagination when you have a large number of workflows.

per_page
integer

Limits the number of workflows returned per page. The default and maximum value is 200.

sort_by
string

Sorts the workflows based on a specific field. The only supported value is modified_time.

sort_order
string

Sorts the workflows in ascending (asc) or descending (desc) order.

include_inner_details
string

Includes the inner details like conditions and actions of the workflows in the response.
Note: Requires the module parameter.

 

For example, to find all active lead workflows containing "Assignment" in their name, use:

https://www.zohoapis.com/crm/v8/settings/automation/workflow_rules?module=Leads&status_active=true&filter={"field":{"api_name":"name"},"comparator":"contains","value":"Assignment"}

 

Here is the API-call-ready version of the same, after URL encoding the filter value:


Now, if you inspect the response closely, you can see that we have two similar workflows: "Lead Assignment - North Region" and "Lead Assignment - South Region." And there is also an older workflow named "VP Alert - High Value Deal."

This workflow was created almost a year ago by a former team member, and it has not been modified for a long time. Is it still relevant? What exactly does it do? What criteria define a "high-value deal," and who exactly gets notified?

To answer these questions and understand the workflow's complete logic, we must examine it closely using the Get a Workflow API. This API returns the full configuration including all conditions, criteria thresholds, and specific actions for an individual workflow.

STEP 2: Inspect a single workflow using Get a Workflow API

Sample Request:

GET {api-domain}/crm/v8/settings/automation/workflow_rules/4876876000016390024

Here, 4876876000016390024 is the unique ID of the Workflow rule whose details we want to fetch, obtained from the response of Get all Workflows API.

Sample Response:

{

    "workflow_rules": [

        {

            "created_time": "2024-01-15T14:20:30+05:30",

            "execute_when": {

                "details": {

                    "trigger_module": {

                        "api_name": "Deals",

                        "id": "4876876000000002181"

                    },

                    "repeat": false

                },

                "type": "create_or_edit"

            },

            "editable": true,

            "module": {

                "api_name": "Deals",

                "id": "4876876000000002181"

            },

            "deprecated": false,

            "deletable": true,

            "description": "Alert VP of Sales for high-value opportunities",

            "source": "crm",

            "created_by": {

                "name": "Matthew Mayers",

                "id": "4876876000001360001"

            },

            "last_executed_time": null,

            "modified_time": "2024-01-23T12:23:12+05:30",

            "name": "VP Alert - High Value Deal",

            "modified_by": {

                "name": "Matthew Mayers",

                "id": "4876876000001360001"

            },

            "lock": {

                "locked_by": null,

                "message": null,

                "status": false

            },

            "id": "4876876000016390024",

            "category": "default",

            "conditions": [

                {

                    "sequence_number": 1,

                    "instant_actions": {

                        "actions": [

                            {

                                "related_details": null,

                                "name": "VP notified",

                                "details": {

                                    "module": {

                                        "api_name": "Deals",

                                        "id": "4876876000000002181"

                                    }

                                },

                                "id": "4876876000016390063",

                                "type": "field_updates"

                            },

                            {

                                "related_details": {

                                    "best_time": true

                                },

                                "name": "High value deal alert",

                                "id": "4876876000016390015",

                                "type": "email_notifications"

                            }

                        ]

                    },

                    "scheduled_actions": [

                        {

                            "execute_after": {

                                "period": "business_days",

                                "unit": 1

                            },

                            "id": "4876876000016390074",

                            "actions": [

                                {

                                    "related_details": null,

                                    "name": "Confirm VP follow-up",

                                    "id": "4876876000016390067",

                                    "type": "tasks"

                                }

                            ]

                        }

                    ],

                    "criteria_details": {

                        "relational_criteria": {

                            "module_selection": null,

                            "criteria": null,

                            "module": null

                        },

                        "criteria": {

                            "group_operator": "AND",

                            "group": [

                                {

                                    "comparator": "equal",

                                    "field": {

                                        "api_name": "Amount",

                                        "id": "4876876000000002557"

                                    },

                                    "type": "value",

                                    "value": "50000"

                                },

                                {

                                    "comparator": "equal",

                                    "field": {

                                        "api_name": "Stage",

                                        "id": "4876876000000002565"

                                    },

                                    "type": "value",

                                    "value": "Negotiation/Review"

                                }

                            ]

                        }

                    },

                    "id": "4876876000016390025"

                }

            ],

            "status": {

                "active": true

            }

        },

        {

            "id": "4876876000012015001",

            "name": "Lead Assignment - North Region",

            "module": {"api_name": "Leads"},

            "status": {"active": true},

            "execute_when": {"type": "create"},

            "last_executed_time": "2025-10-14T11:56:20+05:30"

            // ... other keys omitted for brevity

        },

        {

            "id": "4876876000012020001",

            "name": "Lead Assignment - South Region",

            "module": {"api_name": "Leads"},

            "status": {"active": true},

            "execute_when": {"type": "create"},

            "last_executed_time": "2025-10-14T10:30:15+05:30"

            // ... other keys omitted for brevity

        }

        // ... additional workflows ...

    ],

    "info": {

        "per_page": 200,

        "count": 71,

        "page": 1,

        "more_records": false

    }

}

 

The detailed response gives us a complete blueprint of the workflow. We can now see the exact business logic: the workflow triggers when deals are edited and meet two specific conditions; when the amount equals exactly $50,000 AND the stage is Negotiation/Review.

More importantly, we can see all the actions that execute: an immediate field update to mark deals as "VP notified," an email notification sent at the optimal time, and a follow-up task scheduled for one business day later. Here's what is really interesting about this detail; this workflow has never actually executed, despite being active for nearly a year, because the last_executed_time is null in the response.

Now we are left with some important questions. Is that $50,000 threshold too narrow? What if a $49,000 deal is just as important? And is the VP still the right person to alert? Are there additional stakeholders who should be notified beyond just the VP? These are the type of questions you can start answering once you inspect your workflows closely.

STEP 3: Check limits and distribution

Before making any changes, we must understand our automation capacity and how workflows are distributed across the organization. The Workflow APIs provide two key endpoints for this:

1. Get Workflow limits API

This API provides a comprehensive view of your organization's workflow capacity across multiple dimensions.

Sample Request:

GET {api-domain}/crm/v8/settings/automation/workflow_rules/actions/rules_count

Sample Response:

{

    "rules_count": {

        "scheduled_actions_per_rule_limit": 5,

        "total_rules_limit": 2500,

        "active_rules_configured": 71,

        "rules_per_process_limit": 10,

        "total_actions_per_rule_limit": 50,

        "total_rules_limit_per_module": 125,

        "active_rules_limit": 2000,

        "total_rules_configured": 82,

        "active_rules_limit_per_module": 75

    }

}

 

This response gives the following information:

  • Total Capacity: Zylker has a generous limit of 2,500 total workflows, with only 82 currently configured. This means that they are using just 3 percent of their total capacity.

  • Active Workflows: There are 71 active workflows, well below their 2,000 active workflow limit

  • Module-level Limits: Each module can support up to 125 total workflows, with 75 of those allowed to be active simultaneously.

  • Action Limits: Each condition in the Workflow can contain up to 50 total actions, with a maximum of five scheduled actions.

For Zylker, this is excellent news. Only 71 active workflows out of a 2,000 limit. This means we have substantial room for growth and can confidently create new workflows without worrying about capacity constraints.

2. Get module-wise counts API

This API tells you exactly how many workflow rules you have in each module. It shows both the total number of rules and how many are currently active. This helps you see where your automations are concentrated and where you might be missing opportunities.

Sample request:

GET  {api-domain}/crm/v8/settings/automation/workflow_rules/actions/module_specific_count

Sample Response:

{

    "module_specific_count": [

        {

            "active_rules_configured": 2,

            "module": {

                "api_name": "Products",

                "id": "4876876000000002213"

            },

            "total_rules_configured": 2

        },

        {

            "active_rules_configured": 2,

            "module": {

                "api_name": "Deals",

                "id": "4876876000000002181"

            },

            "total_rules_configured": 2

        },

        {

            "active_rules_configured": 4,

            "module": {

                "api_name": "Contacts",

                "id": "4876876000000002179"

            },

            "total_rules_configured": 5

        },

        {

            "active_rules_configured": 2,

            "module": {

                "api_name": "Appointments__s",

                "id": "4876876000002362026"

            },

            "total_rules_configured": 3

        },

        {

            "active_rules_configured": 4,

            "module": {

                "api_name": "Calls",

                "id": "4876876000000033015"

            },

            "total_rules_configured": 5

        },

        {

            "active_rules_configured": 43,

            "module": {

                "api_name": "Leads",

                "id": "4876876000000002175"

            },

            "total_rules_configured": 51

        },

        {

            "active_rules_configured": 14,

            "module": {

                "api_name": "Emails",

                "id": "4876876000000014163"

            },

            "total_rules_configured": 15

        }

    ]

}

 

Looking at this response, we can see 43 active workflows in Leads but only two in Deals. This tells us that Zylker is heavily focused on lead management but might be missing opportunities to automate their sales process later in the pipeline.

Together, these two APIs give a complete picture of the automation capacity and distribution.

What's next: From understanding to action 

Now that we have our foundation, we are ready to start building and refining.

In the next part of this Kaizen series, we will move from discovery to design. We’ll use the Workflow Configuration, Create, and Update APIs to standardize Zylker’s automation management, create new workflow rules, and update existing ones for consistency and efficiency.

We hope that you find this post on Workflow APIs useful. If you have any feedback, or if there are any pain-points that you would like us to address in our Kaizen series, please let us know in the comments, or reach out to us via support@zohocrm.com. We will be happy to help!

Until we meet again next Friday, Happy coding!

    • 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

    • Updated font library: New font styles and custom font options in Zoho Sheet

      Zoho Sheet's font library now supports 500+ font styles in 60+ languages! The updated font library is stacked with new font styles, and some of the previously available font styles have been replaced with equivalent options. There are two ways you can
    • scope for phonebridge in CRM and phonebridge API documentation

      Hi I cannot find the scope to be used for phonebridge in CRM API V2 calls. I am getting OAUTH_SCOPE_MISMATCH for scope group ZohoCRM.modules.ALL,ZohoCRM.setttings.ALL Also I am not able to locate the documentation for the same, All I have is phonebridge
    • Create custom rollup summary fields in Zoho CRM

      Hello everyone, In Zoho CRM, rollup summary fields have been essential tools for summarizing data across related records and enabling users to gain quick insights without having to jump across modules. Previously, only predefined summary functions were
    • Job Alerts for Candidates

      hi All, I have 2 questions relating to sharing job details with candidates. 1. is there a way to notify candidates that meet certain criteria of current jobs available? eg. I run a candidate search, and identify 50 candidates that might be suitable. Can
    • Zoho Wiki or new Zoho Learn

      We are currently evaluating if we should move off confluence. At present in Confluence we have multiple levels within our documentation but with learn it looks like you can only have Space       - Manual             - Chapter Is it possible to have levels below Chapter? Also the same question for the existing wiki, can I have more sub-levels?
    • Fix image at bottom of a page fot automatic proposal creation

      I'm working on a proposal document to automate our proposal creation process. So far it works fine, but I experience some problems with an image I want to have fixed at the bottom of the page AND above the footer. This section of the document consists
    • Can't scroll the page down unless I refresh the page

      Hello, This issue has been going on with me and a lot of other users in my organization, we can't scroll down! the scrolling side bar doesn't appear and scrolling down through mouse or keyboard keys doesn't work, it seems that the page just ends in the
    • Price List

      II want to restrict the items to display in sales, quote, etc for which custom rates are added in price list. How I can do the same in Zoho books
    • Let’s Talk Recruit: Still switching tabs to source?

      Welcome back to the Let’s Talk Recruit series. Let’s talk about how you actually source talent. Do you open multiple job boards every single time a role opens? Run the same keyword searches you ran yesterday? Download, upload, rename, and then do it again
    • Kaizen #231 - Embedding Zoho Desk Tickets in Zoho CRM

      Hello, CRM Wizards! This week, let us enhance cross-team visibility between Zoho CRM and Zoho Desk. We will use the Zoho Request Client inside a Related List widget to display open Zoho Desk tickets directly within the Contact record in Zoho CRM. This
    • EU Problem

      Hi all, we've been facing issues with the Europe data center for two days. It's starting to disrupt our daily workflow. Any word on when this will be resolved?
    • Introducing a smarter, faster, and more flexible charting experience

      Hello Zoho Sheet users, We're delighted to share the latest news about a major update to charts in Zoho Sheet! The new version supports dynamic data ranges, granular styling options, faster loading, and other interesting enhancements that allow you to
    • Introducing Job Alerts

      Keeping candidates engaged beyond their first application is one of the most consistent hiring challenges. Many interested candidates simply do not revisit career sites regularly, which can result in missed opportunities and reduced re-applications. To
    • Where is the settings option in zoho writer?

      hi, my zoho writer on windows has menu fonts too large. where do i find the settings to change this option? my screen resolution is correct and other apps/softwares in windows have no issues. regards
    • Client Script | Update - Client Script Support For Custom Buttons

      Hello everyone! We are excited to announce one of the most requested features - Client Script support for Custom Buttons. This enhancement lets you run custom logic on button actions, giving you greater flexibility and control over your user interactions.
    • Enhance Sign CRM integration

      Hello all, I'm working on a custom Deluge script to enhance the integration between Zoho CRM and Sign by using a writer merge template for additional flexibility. I want to replicate the post-sign document integration that exists between CRM and Sign
    • Task status - completed - other options

      I have a dumb question I know i can make custom statuses for the tasks - but is there anyway to make additional "completed" statuses like for instance if i have a task "call back customer" and i leave a vm for them to call back marking it "completed -
    • Bank feed integration First Abu Dhabi Bank (FAB) to Zoho? (UAE)

      Hello everyone, Is First Abu Dhabi Bank in the list of banks available for bank feed integration with Zoho Books? Thank you.
    • How to Export Filtered List of Contacts?

      This seems like it should be simple, but I'm stymied. I'm trying to export a filtered list of my Contacts for analysis in a spreadsheet. The use case is that I'm an ecom business based in the US. The bulk of our customers are individuals stored as Contacts.
    • Possible to Turn Off Automatic Notifications for Approvals?

      Hello, This is another question regarding the approval process. First a bit of background: Each of our accounts is assigned a rank based on potential sales. In Zoho, the account rank field is a drop-down with the 5 rank levels and is located on the account
    • Quick Create needs Client Script support

      As per the title. We need client scripts to apply at a Quick Create level. We enforce logic on the form to ensure data quality, automate field values, etc. However, all this is lost when a user attempts a "Quick Create". It is disappointing because, from
    • can we add product images in Zoho CRM Quote PDF template?

      I want to create a quotation format in Zoho CRM similar to the attached PDF, where each product is displayed in a table with rpoduct image I need the product image to appear inside the line items section of the quote. However, while checking the Quote
    • Does Zoho Writer have Dropdowns

      I want to add a drop down field in Zoho writer. Is this possible?
    • system not picking my default custom service report template

      Can you tell me why when we create a service report always pick the (standard old) template? Even when I have a custom service report selected as Default.
    • Facturation électronique 2026 - obligation dès le 1er septembre 2026

      Bonjour, Je me permets de réagir à divers posts publiés ici et là concernant le projet de E-Invoicing, dans le cadre de la facturation électronique prévue très prochainement. Dans le cadre du passage à la facturation électronique pour les entreprises,
    • Connecting Multiple WooCommerce Stores to a Single Zoho Marketing Automation Account

      Is it possible to connect multiple WooCommerce stores to a single Zoho Marketing Automation account?
    • Service Title in Service Report Template Builder

      I am currently working on the Service Report Template Builder in Zoho FSM. I have created three separate service report templates for different workflows: Preventive Maintenance Report Requested Service Report Installation Report My issue is that I cannot
    • One Support Email Managed By Multiple Departments

      Hello,  We use one support email (support@company.com). Incoming emails come to the "Support Department" and based on what the customer is asking, we route that ticket to different departments (billing, technical support, etc.). When users in these different
    • Update: New Security Admin Role

      Hello Zoho Directory Admins! This post is to highlight the recent role and permission changes introduced as part of the security enhancements. Previously, Helpdesk Admins had the security permissions and were responsible for managing the security configurations
    • Client Script | Update #14 - Client Script Support for Quick Create

      Hello Everyone! We are back with another exciting and highly awaited update in Client Script! Over the past months, many of you shared your insights and requests, asking for the power to extend Client Script functionality to Quick Create forms. This capability
    • Empty folders are now appearing in the sidebar...

      ...and the folder list is now auto-collapsed by default with no way to change. Neither of these recent updates are useful or user-friendly. ==================== Powered by Haiku https://www.haiku.co.uk ====================
    • Does Zoho has chatroom/chatbot url feature?

      Hi Zoho community! I’m looking for a quick "Yes/No" answer for my dev team regarding Zoho’s capabilities. We currently use Zoho Desk for our Service Team and Zoho CRM for our Marketing Team to bring both functions under one platform. Our question: Does
    • Upload from Zoho Creator File Upload field to OpenAI Vector Store

      I’ve struggled for quite a while to get this working properly. For a long time we relied on Azure Functions as a workaround to handle file transfers between Zoho Creator and OpenAI Vector Stores. It worked, but added unnecessary infrastructure and complexity.
    • Career site URL - Suggestion to modify URL of non-english job posting

      Hi, I would like to suggest making a few modification to career sites that are not in english. Currently, the URL are a mix of different languages and are very long. It makes for very unprofessional looking URLs... Here is an example of one of our URL
    • I'd like to suggest a feature enhancement for SalesIQ that would greatly improve the user experience across different channels.

      Hello Zoho Team, Current Limitation: When I enable the pre-chat form under Brands > Flow Controls to collect the visitor’s name and email, it gets applied globally across all channels, including WhatsApp, Messenger, and Instagram. This doesn't quite align
    • The Social Playbook - February edition: Why moment marketing works (and how brands use it)

      Imagine the final season of your favorite series is about to drop. Your entire feed is talking about it. Trailers everywhere. Fan theories. Hype at 100%. Now your go-to burger place launches a limited-edition meal box themed around that series—custom
    • PDF Attachment Option for Service Reports

      Hello Team, I would like to check with you all if there is an option to attach PDF documents to the service reports. When I try to attach a file, the system only allows the following formats: JPEG, JPG, and PNG. Could you please confirm whether PDF attachments
    • Manage Every Customer Conversation from Every Channel inside Zoho SalesIQ

      Your customers message you from everywhere. But are you really able to track, manage, and follow through on every conversation, without missing anything? With interactions coming in from websites, mobile apps, and messaging platforms like WhatsApp and
    • Approvals in Zoho Creator

      Hi, This is Surya, in one of  my creator application I have a form called job posting, and I created an approval process for that form. When a user submits that form the record directly adding to that form's report, even it is in the review for approval.
    • Cliq Bots - Post message to a bot using the command line!

      If you had read our post on how to post a message to a channel in a simple one-line command, then this sure is a piece of cake for you guys! For those of you, who are reading this for the first time, don't worry! Just read on. This post is all about how
    • Next Page