Kaizen 221 - Workflow & Actions Reports APIs

Kaizen 221 - Workflow & Actions Reports APIs


Over the last few weeks, we have joined Zylker Cloud Services as they restructured their automation ecosystem using Workflow APIs and Actions APIs. Along the way, we discovered how to audit workflows, update old rules, create new ones, and manage associated actions like emails, tasks, field updates, and webhooks, all using APIs.

But as their automated ecosystem has grown to nearly 100 workflow rules, a new challenge has emerged for the system administrators: Are these workflows actually doing what they were built to do? Are these automations actually working day-to-day?

A workflow can be perfectly configured yet have no impact if it never runs. A webhook could be sending data to a dead endpoint, or a critical email notification might go silent without anyone noticing.

While the CRM UI allows them to click into any single workflow to see its execution details or check the status of a specific webhook, this data is trapped in dozens of individual screens. To answer strategic questions like "What's the overall health of our automation?" or "Where should we focus our optimization efforts?", they would need to manually open, check, and compile data from over a hundred different places.

This is where the Reporting APIs become indispensable. They allow Zylker to aggregate all this scattered UI data into their central dashboard,  which supports proactive governance at scale.

STEP 1: Find workflows with heavy or complex actions 

Using Get Actions Count in Workflow Rules  

During their initial audit, Zylker noticed something interesting: within the same module, some workflows had just one or two actions, while others had ten or more bundled together. While this inconsistency wasn't necessarily wrong, after years without a cleanup they wanted to review which workflows had become particularly complex and decide whether they needed updating or splitting.

To identify such rules systematically, they call:

GET {api-domain}/crm/v8/settings/automation/workflow_rules/actions/actions_count?ids={id1, id2, id3, ..}

This API returns a detailed count of how many actions each rule contains. Using the response from API, the admins can choose to work on the Workflow Rules by complexity. In the UI, this requires inspecting workflows one by one. But using this API, up to 100 Workflows can be inspected in a single API call. The entire system can be analyzed in a matter of seconds!

Here is what the response looks like:

{

    "workflow_rules": [

        {

            "id": "4876876000016390024",

            "conditions": [

                {

                    "sequence_number": 1,

                    "instant_actions": {

                        "actions_count": [

                            {

                                "type": "field_updates",

                                "value": 1

                            },

                            {

                                "type": "add_tags",

                                "value": 1

                            },

                            {

                                "type": "email_notifications",

                                "value": 1

                            },

                            {

                                "type": "webhooks",

                                "value": 1

                            }

                        ]

                    },

                    "scheduled_actions": [

                        {

                            "actions_count": [

                                {

                                    "type": "tasks",

                                    "value": 1

                                }

                            ]

                        }

                    ],

                    "id": "4876876000016390025"

                }

            ]

        },

        {

            "id": "4876876000011208001",

            "conditions": [

                {

                    "sequence_number": 1,

                    "instant_actions": {

                        "actions_count": [

                            {

                                "type": "assign_owner",

                                "value": 1

                            }

                        ]

                    },

                    "scheduled_actions": null,

                    "id": "4876876000011208002"

                },

                {

                    "sequence_number": 2,

                    "instant_actions": {

                        "actions_count": [

                            {

                                "type": "assign_owner",

                                "value": 1

                            }

                        ]

                    },

                    "scheduled_actions": null,

                    "id": "4876876000011208004"

                },

                {

                    "sequence_number": 3,

                    "instant_actions": {

                        "actions_count": [

                            {

                                "type": "assign_owner",

                                "value": 1

                            }

                        ]

                    },

                    "scheduled_actions": null,

                    "id": "4876876000011208006"

                }

            ]

        }

        // ...other workflow rules omitted for brevity

    ]

}

 

The response is a granular breakdown, not just a simple total. For each workflow rule (id), you see every condition (sequence_number). Within each condition, the actions_count array under instant_actions and scheduled_actions lists the type of each action (email_notifications, webhooks, tasks, etc.) and the count (value) of that specific action type in that section.

In simple terms, the API tells us: For every workflow, for every condition, how many actions does it perform, and what kind are they?

STEP 2: Diagnose execution health: Is it working or just configured? 

Using get Workflow Rule usage report API

Identifying complex workflows is important, but Zylker’s admins also need to figure out if they are are actually working. This is a crucial part of automation governance.

A workflow might be executing regularly, but an email notification configured inside it may bounce every time. A webhook may silently fail due to a server issue. These operational issues are difficult to detect by simply knowing whether a workflow has executed.

In the CRM UI, admins can click View Usage for a workflow. But this still exposes information one rule at a time and without aggregation across rules. When you operate nearly a hundred workflows, this method does not scale.

To understand action-level outcomes inside a specific workflow, Zylker uses:

GET {api-domain}/crm/v8/settings/automation/workflow_rules/{workflow_rule_ID}/actions/usage?executed_from={from_date}&executed_till={to_date}

This API returns rich statistics, including:

  • how many times the workflow executed

  • how many times each action inside it succeeded or failed

  • delivery metrics for emails (open, sent, delivered, bounced, clicked)

  • scheduled vs. instant action performance

  • which conditions executed successfully

Here is a sample response:

{

    "workflow_rules": [

        {

            "trigger_count": 3,     // Total times this workflow was triggered

            "name": "High Value Lead Rule",    // Workflow name

            "id": "4876876000013248001",      // Workflow ID

 

            "conditions": [       // Usage details grouped per condition

                {

                    "instant_actions": {

                        "actions": [      //Instant actions execution details

                            {

                                "queue_count": 0,   //Asynchronous actions pending for execution in the queue

                                "related_details": { //Email delivery metrics for bulk email_notifications actions

                                    "bulk_mail": false,

                                    "unopened": 0,

                                    "sent_percentage": 100,

                                    "opened": 1,

                                    "delivered": 1,

                                    "unsent": 0,

                                    "bounced": 0,

                                    "clicked": 0,

                                    "sent": 1

                                },

                                "name": "High revenue Lead added", //Action name

                                "success_count": 1,    // Number of successful executions

                                "failure_count": 0,    // No failures for this action

                                "id": "4876876000016390103",   // Action ID

                                "type": "email_notifications",        // Action type

                                "associated_time": "2025-10-16T16:19:58+05:30" // When this action was added to the workflow

                            },

                      ...... //omitted for brevity

 

                        ]

                    },

 

                    "scheduled_actions": [     // Scheduled actions usage metrics

                        {

                            "id": "4876876000016390118",  // ID of the scheduled action block

                            "actions": [

                                {

                                    "queue_count": 0,      //Asynchronous actions pending for execution in the queue

                                    "related_details": {   //Email delivery metrics for bulk email_notifications actions

                                        "bulk_mail": false,

                                        "unopened": 0,

                                        "sent_percentage": 100,

                                        "opened": 1,

                                        "delivered": 1,

                                        "unsent": 0,

                                        "bounced": 0,

                                        "clicked": 0,

                                        "sent": 1

                                    },

                                    "name": "High revenue Lead added",

                                    "success_count": 1,   // Number of successful executions

                                    "failure_count": 1,   // Number of failures

                                    "id": "4876876000016390103",

                                    "type": "email_notifications",

                                    "associated_time": "2025-10-16T16:19:58+05:30"

                                }

                            ]

                        }

                    ],

 

                    "usage_count": 2,      // The number of times this condition matched

                    "id": "4876876000013248002"     // Condition ID

                },

 

                // more condition blocks omitted for brevity

           ],

 

            "reset_time": "2025-10-16T16:23:04+05:30"       //When usage metrics were last reset

        }

    ]

}

 

 

This single API call provides what would take hours of manual UI investigation, i.e., a complete performance audit. By scripting this for their key workflows, Zylker transforms workflow management from a time-consuming manual task to an easy, automated process.

STEP 3: Monitor system-wide integration health 

The workflow usage report gave Zylker deep insight into individual workflows. But they still have unanswered questions about their external integrations.

Zylker relies on webhooks to push deal data to their project management tool, sync contacts to their marketing platform, and notify their support system. A single failing webhook can break an entire business process, and these failures often happen silently.

The CRM UI provides detailed views of each webhook's activity. However, identifying patterns across all integrations, like silent failures or volume anomalies, requires manually consolidating data from multiple screens. For teams with many integrations, this consolidation becomes time-consuming to perform regularly.

Zylker solves this by using the Webhooks Actions Usage Report API to get time-series data for all integrations at once, followed by the Get Action Failures API for diagnostics.

 3.1 Track volume trends and spot anomalies  using Webhooks Actions Usage Report API

They call the usage report API grouped by date and resource to see daily call volumes:

GET {api-domain}/crm/v8/settings/automation/webhooks/actions/usage_reports?group_by=date,resource&type=webhooks&from_date={date}

Sample Response:

{

    "data_usage": [

        {

            "date": "2025-12-09",

            "resource": {

                "name": "Premium Lead Alert",

                "id": "4876876000016390771"

            },

            "count": 4,

            "type": "webhooks"

        },

        {

            "date": "2025-12-09",

            "resource": {

                "name": "Deal to Project Sync",

                "id": "4876876000017550012"

            },

            "count": 4,

            "type": "webhooks"

        },

        {

            "date": "2025-12-09",

            "resource": {

                "name": "Contact to Marketing Platform",

                "id": "4876876000017550018"

            },

            "count": 8,

            "type": "webhooks"

        },

        {

            "date": "2025-12-08",

            "resource": {

                "name": "Deal to Project Sync",

                "id": "4876876000017550012"

            },

            "count": 8,

            "type": "webhooks"

        },

        // ...omitted for brevity ...

        {

            "date": "2025-12-07",

            "resource": {

                "name": "Deal to Project Sync",

                "id": "4876876000017550012"

            },

            "count": 1, //  Anomaly: very low number

            "type": "webhooks"

        },

        // ... remaining entries omitted for brevity ...

    ],

    "info": {

        "max_limit": 2500,

        "per_page": 200,

        "count": 12,

        "page": 1,

        "more_records": false

    }

}

 

The response provides a daily log of which webhooks fired and how often. The real insight comes from analyzing two key patterns:

  1. Missing activities: If a webhook that typically appears daily suddenly has no entries for multiple days, it indicates the upstream workflow has stopped. This is a silent business process failure.

  2. Volume Anomalies: If a normally steady webhook shows a 300% spike in daily calls, it could indicate system errors generating duplicate records, or legitimate business surges worth investigating.

From the response data, Zylker can instantly spot that the Deal to Project Sync webhook's execution dropped to just 1 call on a specific day, which is a volume anomaly. Meanwhile, the Premium Lead Alert webhook may be missing entirely from recent dates, which is a missing activity alert.

 3.2 Investigate Webhooks failures with Get Action Failures API - Webhooks 

Volume anomalies tell Zylker that something is wrong. To understand what went wrong and where, they need detailed failure diagnostics.

For this, they use the Get Action Failures – Webhooks API:

GET {api-domain}/crm/v8/settings/automation/webhook_failures?from=2025-10-15&to=2025-10-22

You can optionally filter by:

  • webhook_id : to focus on a specific webhook

  • module : to see failures only for a specific module

  • from and to : to restrict the date range (max 90 days). 

Sample Response:

{

    "webhook_failures": [

        {

            "webhook": {      // The webhook that failed

                "name": "Premium Lead Alert",

                "id": "4876876000016390771"

            },

            "entity_details": {    // Record that triggered the webhook

                "module": {

                    "api_name": "Leads",

                    "id": "4876876000000002175"

                },

                "name": "Freelancer.com",

                "id": "4876876000016474049"

            },

            "failure_time": "2025-10-21T17:08:07+05:30", // When the failure occurred

            "failure_reason": "page_notfound",  // Why it failed (e.g., page_notfound, unauthorized, timeout)

            "id": "4876876000016474075",        // Failure entry ID

            "workflow_rule": {         // Workflow that triggered this webhook

                "name": "WF-C",

                "id": "4876876000016390881"

            }

        },

//... omitted for brevity

    ],

    "info": {

        "per_page": 200,

        "count": 17,

        "page": 1,

        "more_records": false

    }

}

 

With a single request, Zylker now has a clear picture of exactly which workflows are causing failures, which records are impacted, and the precise technical reason for the failure. With this information at hand, they can promptly fix the issues and ensure that critical integrations do not silently break.

STEP 4: Ensure reliable communication through Email Notifications usage reports 

Emails sent through workflows drive essential actions at Zylker. Sales managers get notified when high-value leads enter the system, account directors get alerted on lost deals, and service teams receive escalations. If these triggered emails are not sent consistently or begin spiking unexpectedly, decision-makers may be blind to critical updates.

To understand how workflow-triggered emails are being used over time, Zylker uses the Email Notification Actions Usage Report API.

Sample Request:

GET {api-domain}/crm/v8/settings/automation/email_notifications/actions/usage_reports?group_by=date,resource,type&type=email_notifications&from_date=2025-12-01

Sample Response:

 

{

  "data_usage": [

    {

      "date": "2025-12-09",       // When the email was triggered

      "resource": {

        "name": "Lost Deal Alert",  // Email notification name

        "id": "4876876000013500873"

      },

      "count": 5,                 // Number of times it was sent that day

      "type": "email_notifications"

    },

    {

      "date": "2025-12-09",

      "resource": {

        "name": "High Value Lead Notification",

        "id": "4876876000016390889"

      },

      "count": 2,

      "type": "email_notifications"

    },

    {

      "date": "2025-12-08",

      "resource": {

        "name": "Lost Deal Alert",

        "id": "4876876000013500873"

      },

      "count": 8,   // Higher usage on this day

      "type": "email_notifications"

    }

    // ... additional entries omitted

  ],

  "info": {

    "max_limit": 2500,

    "per_page": 200,

    "count": 18,

    "page": 1,

    "more_records": false

  }

}

By reviewing usage trends over time, Zylker can spot early signs of issues at either layer. If an email notification that normally triggers every day suddenly shows zero usage, it could mean the workflow condition has stopped matching, or it might indicate a failure due to factors like bounced addresses, inactive users, or restricted mail settings. Likewise, an unexpected spike in email executions might reveal either a legitimate business surge or a workflow repeatedly triggering because of duplicate records, import errors, or incorrect criteria.

In either case, Zylker is now in a position to take informed decisions.

Conclusion 

Zylker began this journey wanting stronger workflow automation. Along the way, they learned how to discover, configure, update, and extend workflow rules and actions using APIs. But as their automation ecosystem grew, a new responsibility emerged regarding governing what they had built.

The Reports APIs complete that responsibility.

With this complete toolkit, Zylker no longer just has automations. They understand them, analyze them, and continuously improve them. Their workflows have evolved from fragile scripts to managed business assets with known performance characteristics and early warning systems.

This concludes our Kaizen series on Workflow & Actions APIs. We hope this series has helped you to build, manage, and govern automation systems in your own organization.

If you have any feedback or questions, please let us know in the comments or reach out to us at support@zohocrm.com.

Until next time, Happy coding!


    • Sticky Posts

    • 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
    • Kaizen #152 - Client Script Support for the new Canvas Record Forms

      Hello everyone! Have you ever wanted to trigger actions on click of a canvas button, icon, or text mandatory forms in Create/Edit and Clone Pages? Have you ever wanted to control how elements behave on the new Canvas Record Forms? This can be achieved
    • Kaizen #142: How to Navigate to Another Page in Zoho CRM using Client Script

      Hello everyone! Welcome back to another exciting Kaizen post. In this post, let us see how you can you navigate to different Pages using Client Script. In this Kaizen post, Need to Navigate to different Pages Client Script ZDKs related to navigation A.
    • Kaizen #210 - Answering your Questions | Event Management System using ZDK CLI

      Hello Everyone, Welcome back to yet another post in the Kaizen Series! As you already may know, for the Kaizen #200 milestone, we asked for your feedback and many of you suggested topics for us to discuss. We have been writing on these topics over the
    • Recent Topics

    • Marketers' Space: The importance of warming up your sender domain

      Hello Marketers, Welcome back to yet another post! Today, we'll talk about why warming up your sender domain matters. Imagine you've recently started a business and want to share the news with your customers. You've designed a great email campaign using
    • An Exclusive Session for Zoho Desk Users: AI in Zoho Desk

      A Zoho Community Learning Initiative Hello everyone! This is an announcement for Zoho Desk users and anyone exploring Zoho Desk. With every nook and corner buzzing, "AI's here, AI's there," it's the right time for us to take a closer look at how the AI
    • Search Just Got Smarter in Notebook

      Hello there! Introducing Our New & Improved Search Experience! We heard your feedback! Many of you shared that our previous search had some challenges like • Inconsistent results across different clients • Limited accuracy in finding the right content
    • Zoho Desk app update - AI Integration for IM Chats

      Hello everyone! We have now introduced AI integration for IM Chats within the Zoho Desk mobile app. To access the feature, please enable the 'Generative AI' settings on the desktop site(desk.zoho.com). Please refer to the help link attached below: Zoho
    • Open A.I assistant Connect with Zoho Desk instant Message Conversations

      I would like to know how do I connect my instant messenger in Zoho desk with my Open A.I Gpt Assistant. this is very easy to setup using the Salesiq Zobot but when it comes to Zoho Desk i cannot figure how to make the connection. Ideal workflow Customers
    • Cannot upgrade subscription plan due to payment error message

      Hi Zoho team, This is to request support on an issue I am facing during an upgrade I am trying to make to our company's yearly Zoho subscription. I am trying to add 3 more license to my plan and during the payment phase I get the below error as in the
    • Enhancing Zia's service with better contextual responses and article generation

      Hello everyone, We are enhancing Zia's Generative AI service to make your support experience smarter. Here's how: Increased accuracy with Qwen One of the key challenges in AI is delivering responses that are both contextually accurate and empathetic while
    • Zoho Desk app update: AI powered features

      Hello everyone! We’ve introduced various AI-powered services on the Zoho Desk app. Let's take a look at what's new. Generate Content: Generate Content uses AI to formulate responses based on the your query and provides a ready-to-use reply which can be
    • Bulk update Archived Ticket

      Dear All We would like to update the "Category" values to the new filed. We found the archived Ticket seems to be don't support the bulk action. Do we have any way to update it. Finally, we would to generate a report for our ticket system. Regards I
    • Channel Configuration and Default Channels

      There are some of the default fields that cannot be removed or changed. Examples are the social media ones, such as Facebook. It would be nice to be able to remove these fields as it would be confusing if someone selected this but it's not configure
    • Delay function execute

      I've got a workflow which uses a webhook to send information to Flow, which in return updates a record in Creator. Problem is, by the time this has executed, the rest of my script has run and can't find the (yet to be) updated info in the record. Is there
    • Support www.camcard.com

      Hi, Is it possible CRM Zoho have integrations with https://camcard.com/? Thanks Br, Andy
    • Option to Customize Career Site URL Without “/jobs/Careers”

      Dear Zoho Recruit Team, I hope you are doing well. We would like to request an enhancement to the Career Site URL structure in Zoho Recruit. In the old version of the career site, our URL was simply: 👉 https://jobs.domain.com However, after moving to
    • Can't make a document editable to anyone

      Hey everyone, I am using Zoho Workdrive and trying to share a document so that it is editable by anyone with the link. I am trying to convince people to shift from Google to Zoho, but they don't have accounts yet. When I try to change the share settings
    • Edit Default Print

      What I want to do is create / edit the "Default Print" template without changing the layout I'm using. Currently I can create "Email Templates" but I don't use them for emailing and getting to that selection takes multiple clicks. If an email template could be set to be the Default Print template that would be helpful. I'd also like to print these in bulk but don't see that option (there is a mail merge macro but that goes straight to emailing, not to print or PDF).
    • Widget shows error

      Hi, May I ask why below characters will be auto added into the widget link and how to solve this error? As my widget shows 404 error now. ?serviceOrigin=https%3A%2F%2Fcrm.zoho.com&frameorigin=https%3A%2F%2Fcrm.zoho.com
    • How to print envelope labels from Zoho CRM

      Can anybody give me any clue how to print envelope/package labels directly from Contacts view? Regards, Alexandru Moderation Update: The Canvas Print View, which also facilitates the formatting of mailing labels, is now available! Learn more here: Zoho
    • Data Import: New interface, improved field mapping, and more

      Hello everyone! We’ve redesigned the data import process to ensure accurate field alignment and verify that every column in the uploaded file maps correctly with Desk fields before import. Here's how: Streamlined Import Steps Importing data is now more
    • Address labels

      Hi, we've been searching for a long time for a simple way for our employees to print address labels using a Dymo Label Writer 450. We came up with two alternatives that work, bur aren't really optimal.  First one is WebMerge. Webmerge is a great application that does 100% what we need but it is way too expensive for our needs. We only need to print a couple of labels per month. The second one is the integrated print tool in Zoho CRM, (Print preview) You would think this is the obvious way to do this
    • Print Labels

      How can I configure my address to print my labels like this: Name Mailing Address Mailing City, Mailing State Mailing Zip Country Instead of: Name Mailing Address Mailing City Mailing State Mailing Zip Country Thanks!!!!
    • Mailing labels - Improperly formatted

      All I'm trying to do is print one, properly formatted, mailing label. I'm in the Contacts module. In the default "list view" for mailing labels I selected a single client, hit the "more actions" drop down and selected print mailing label. Unfortunately,
    • Printing mailing labels

      The ability to print mailing labels would seem to be an important, basic, function of a good CRM. I find it very surprising that this has still not been addressed adequately by Zoho. When trying to use the existing "mailing label" included: 1. the data
    • Pageless mode needed to modernise Writer

      When we switched from GSuite to Zoho, one of the easiest apps I found to give up, was Docs. In many ways, Writer has always been more powerful than Docs, especially in terms of workflows/fillable forms/etc. However, I went back into Docs because I notice
    • Zoho Projects - Visual improvement to parent and sub-task relationship

      Hi Projects Team, My feature request is to improve sub-task visibility. Please see screenshot below. I really think parent child relationships could be visually improved. Even if the first letter of the parent task was inline with other same level tasks
    • API method to get activity feed in Recruit

      Hi community, I'm trying to figure out - is there any API method tto get information about datetime when Recruit/Candidates record tag where added?
    • Printing Mailing labels

      Is there any way to adjust the size of the printing labels? or product would I use to print labels from Zoho? Thanks, Josef Krieger Moderation Update (14th April 2025): We have another post discussing the same topic with votes and feedback from users.
    • Default to Current Date

      I'm importing data from a excel spread sheet that does not have date column and I'd like the date column in the Zoho Database to default to the current date. Any way I can do this?
    • "Spreadsheet Mode" for Fast Bulk Edits

      One of the challenges with using Zoho Inventory is when bulk edits need to be done via the UI, and each value that needs to be changed is different. A very common use case here is price changes. Often, a price increase will need to be implemented, and
    • Different Company Name for billing & shipping address

      We are using Zoho Books & Inventory for our Logistics and started to realize soon, that Zoho is not offering a dedicated field for a shipping address company name .. when we are creating carrier shipping labels, the Billing Address company name gets always
    • What's New in Zoho Inventory | Q2 2025

      Hello Customers, The second quarter have been exciting months for Zoho Inventory! We’ve introduced impactful new features and enhancements to help you manage inventory operations with even greater precision and control. While we have many more exciting
    • Make Packages from multiple sales order of a single customer

      Our customers sends orders to us very frequently, some times what customer wants is to ship items from 5 to 6 sales orders in a single shipment. it will be very nice if, zoho can implement this function, in which we can select items from other sales orders of the customer.
    • Show Custom Button in Portal Listview Canvas

      I have created a custom button that shows in a list view of deals (internally I can see it). I have permissions to allow this button on the portal. But it is not displaying in the canvas list? Before I do too much leg work, is this function allowed?
    • Zoho Sites "pages" management page

      I have 80 plus pages on zoho sites. When I go to the "pages" link to view and edit pages, They are not in any kind of order, so I spend lots of time searching for pages when I need to edit or create new. How can I change the view order of all my pages
    • AI feature in Zoho Desk suggesting answers based on past ticket threads

      Hi I would like to suggest something that would be very useful : instead of suggesting answers based on the Knowledge Base, I think it would be great if Zia could analyze the history of all customer and agents threads, to suggest answers in new tickets.
    • Advanced Customization of the Help Center using JavaScript

      Hello everyone, The Help Center in Zoho Desk can be customized by using HTML and CSS to provide structure and enhance the page's appearance—but what if you want to add interactive and dynamic elements? You can add these effects with JavaScript, a programming
    • Introducing Zoho POS for the Kingdom of Saudi Arabia

      Hey everyone, We are excited to kick-start December with a completely personalized edition of POS for retail businesses in Saudi Arabia to help run your operations with ease. It offers four different subscription plans—Free, Standard, Professional, and
    • Unveiling Zoho Sites 2.0 - A new dimension in website building

      Dear Zoho Sites Users, We are thrilled to announce the launch of Zoho Sites 2.0 today! This refresh represents a significant step forward in the capabilities of Zoho Sites and is crucial for creating a lasting and positive impact on our customers' businesses.
    • Script Editor not an option

      I am trying to apply a script to a sheet and Script Editor is not an option. I don't want to go outside Sheets to do this (like Creator) if it can be done inside Sheets.
    • Not able to link email text.

      Kindly check Zoho Sites. I am unable to turn a text into a email link. The save button does not work. Kindly try yourself to see it not responding to save.
    • Migrate data from old to new account

      Hy, Have one Old Zoho Notebook Account with Data , want to migrate that whole Data to New Zoho Notebook Account which is in Zoho One . Is that possible ? If Yes then how?
    • Next Page