Kaizen 215 - Workflow APIs - Part 3

Kaizen 215 - Workflow APIs - Part 3



Welcome back to another week of Kaizen!

Over the last couple of weeks, we’ve joined Zylker Cloud Services as they review and improve their workflows. In Part 1, we discovered and audited their sprawling workflow landscape. In Part 2, we learned how to use the Configuration API to understand valid triggers and actions, preventing errors before they happen.

Now, it is time to take action. Zylker has identified the "VP Alert - High Value Deal" workflow as a prime candidate for an update. It is old, has never run, and its logic might be too narrow. We will also explore how to create a new workflow from scratch to handle a new business requirement.

 STEP 5: Update an Existing Workflow 

From our audit in Step 2, we know that the existing ‘VP Alert - High Value Deal’ workflow (id: 4876876000016390024) hadn’t triggered even once. The original $50,000 threshold missed many valuable deals. Most winning opportunities actually land above $30,000. It has never executed, suggesting the criteria are too strict.

Let us use the Update Workflow Rule API to fix it. We'll change the criteria to trigger for deals greater than or equal to $30,000 and add an additional email notification.

 What you can and cannot update 

When working with the Update Workflow Rule API, not every field in a workflow is open for modification. Think of it like editing an existing automation blueprint. Some foundations are fixed, while others are flexible.

You can update:

  • Name and Description

  • Trigger : You can update triggers, but only within the same trigger type. For example, you can change a Record Action trigger from create to edit, but not from a Record Action trigger to a Score-based trigger. For more details on this, please refer to our detailed help documentation here.

  • Conditions and Criteria : add, remove, or refine them.

  • Actions : add new ones, remove existing ones, or update their configuration.

  • Status : activate or deactivate a workflow rule. 

What cannot be updated

There are a few key restrictions to remember:

  • You cannot change the module associated with the workflow.

  • You cannot switch trigger categories (e.g., from Record Action to Email Trigger).

  • You cannot retain unsupported actions when changing to a trigger that doesn’t support them. For instance, if you change a trigger from Edit to Delete, but keep an Assign Owner action, the update will fail, because “Assign Owner” isn’t valid for Delete triggers.

Updating an existing workflow is not about replacing everything. it is about editing precisely what needs to change.

Here is how to do it:

  • Fetch the workflow details using the Get Workflow Rule API. This gives the full structure,  including condition IDs, action IDs, and trigger details.

  • Identify what needs to change.

In this case, to fix the  “VP Alert - High Value Deal” workflow, we can update the Workflow rule to:

  • lower the threshold to $300,000

  • change the comparator to greater_than. 

To make the workflow more useful, Zylker has also decided to add a few new actions.

But before doing that, the developers needed to confirm which actions are supported for this workflow’s trigger type. That is where last week’s Configuration API comes in handy. Since we already know this is a Record Action trigger (create_or_edit), we can refer to the configuration response we explored in Part 2 to see which actions are valid. 

  {

                "api_name": "create_or_edit",

                "deprecated": false,

                "name": "CreateorEdit",

                "scheduled_actions_supported": true,

                "actions": [

                    "field_updates",

                    "assign_owner",

                    "add_tags",

                    "remove_tags",

                    "email_notifications",

                    "tasks",

                    "create_record",

                    "create_connected_record",

                    "add_meeting",

                    "webhooks",

                    "functions",

                    "circuits",

                    "flow"

                ]

},

 

The response clearly shows that email notifications, field updates, and tags are all supported for this trigger type. With that confidence, in addition to updating the condition, we can also add a 'Priority' tag to those records that trigger the Workflow. This makes the workflow more visible and actionable across the sales hierarchy.

Sample Request:

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

{

    "workflow_rules": [

        {

            "description": "Notify sales leadership and track strategic opportunities",

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

            "conditions": [

                {

                    "sequence_number": 1,

                    "criteria_details": {

                        "criteria": {

                            "group_operator": "AND",

                            "group": [

                                {

                                    "comparator": "greater_than", // change in comparator operator

                                    "field": {

                                        "api_name": "Amount"

                                    },

                                    "value": "300000"   // Lowered threshold

                                },

                                {

                                    "comparator": "equal",

                                    "field": {

                                        "api_name": "Stage"

                                    },

                                    "value": "Negotiation/Review"

                                }

                            ]

                        }

                    },

                    "instant_actions": {

                        "actions": [

                            {

                                "type": "add_tags",

                                "module": "Deals",

                                "details": {

                                    "tags": [

                                        {

                                            "name": "Priority"

                                        }

                                    ],

                                    "overwrite": true

                                }

                            }

                        ]

                    },

                    "id": "4876876000016390025" // id of the condition to be updated

                }

            ]

        }

    ]

}

 

After this update, the workflow now triggers for any deal worth more than $300,000 in the Negotiation/Review stage. Apart from sending the email notifications and adding the follow up task, it also tags these deals as Priority.

 Edit vs Add: 

To edit an existing condition or action, include its existing id in your update payload. Zoho CRM will recognize it as an update to that object.

To add a new condition or action, simply omit the id. CRM treats any object without an ID as a new addition.

 STEP 6: Create a new Workflow Rule 

With the VP Alert - High Value Deal workflow now fixed and performing as expected, Zylker’s sales team quickly began to see results.
But their sales team noticed that deals often stall after proposals are sent, with no systematic follow-up. Zylker has hence refined the requirements for a new Workflow.

They want to automatically trigger follow-up actions when a high-value deal (above ₹30,000) is marked “Closed Lost” due to pricing reasons. This workflow must ensure that every lost opportunity is reviewed, tagged, and re-engaged after a cooling-off period. To achieve this, they want to create a workflow to be triggered whenever a deal’s Stage is updated to Closed Lost. It must perform the following actions:

  • Add tags Lost due to Pricing and Re-engagement Pending.

  • Send an email alert to the Sales team, with the details of the failed Deal, so they can look into the reasons.

  • After 30 business days, automatically create another “Lost Deal - Feedback” task to remind the owner to re-contact the customer for feedback, and for future opportunities. 

Before proceeding, Zylker makes an API call to the Workflow Configuration endpoint. This ensures that their chosen trigger type and actions are supported. From the response snippet below, it is clear that a field_update trigger supports scheduled actions and the required action types.

  {

                "api_name": "field_update",

                "deprecated": false,

                "name": "FieldUpdate",

                "scheduled_actions_supported": true,

                "actions": [

                    "field_updates",

                    "assign_owner",

                    "add_tags",

                    "remove_tags",

                    "email_notifications",

                    "tasks",

                    "create_record",

                    "create_connected_record",

                    "add_meeting",

                    "webhooks",

                    "functions",

                    "circuits",

                    "flow"

                ]

}

 

With these details validated, we can now move on to adding a new workflow for Zylker using the Create Workflow Rule API request.

Understanding the input JSON structure 

Every workflow definition follows the same hierarchy - defining when the rule runs, what conditions it checks, and which actions it performs.

The top-level input object contains a workflow_rules array. You must include just one workflow rule object per request. Each workflow rule defines its name, trigger type, and one or more condition blocks, each with its own criteria and actions.

Here is a breakdown of what is inside a single workflow rule:

{

  "workflow_rules": [

    {

      "name": "VP Alert - High Value Deal.",   //name of the workflow rule

      "description": "Notify leadership when high-value deals are lost due to pricing.",

      "module": { "api_name": "Deals" },   //module to which the workflow applies

      "execute_when": { ... },         //trigger configuration (e.g., on record edit, field update, etc.)

      "conditions": [

        {

          "sequence_number": 1,          // order of execution. this is the first condition

          "criteria_details": { ... },           // condition logic (criteria group)

          "instant_actions": { "actions": [ ... ] },  //instant actions executed instantly

          cheduled_actions": [              // schedules actions executed after a delay

            {

                      "execute_after": { ... },              // delay period for the scheduled action

                        "actions": [ ... ]

            }

          ]

        },

        {

          "sequence_number": 2,                      // second condition

          "criteria_details": { ... },

          "instant_actions": { "actions": [ ... ] }

        }

      ]

    }

  ]

}




Associative vs. Non-Associative Actions 

Every workflow rule performs one or more actions like sending an email, creating a task, or updating a field, etc. These actions fall into two broad categories: associative and non-associative.

Type

Description

Example Actions

Non- Associative Actions

These are defined inside the workflow rule itself. They do not need to exist beforehand. You can configure their details directly within the workflow payload.

Create record, schedule a call, add a meeting, convert records, social actions, create record on email received, assign owner,

Associative Actions

These are reusable actions created separately in CRM and referenced by their IDs. They can be used across multiple workflows and other automation tools.

Field updates, Email notifications, tasks, Webhooks, Add/Remove tags

 

When you create or update a workflow via API, the associative actions require you to pass their existing action IDs. These IDs can be fetched using the corresponding Actions APIs : Field Updates, Email Notifications, Webhooks, and Tasks. In the coming weeks of Kaizen, we will take a closer look at each of these Actions APIs. We will see how to create, manage, and delete them within your workflow automation strategy.

Sample Request:

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

{

    "workflow_rules": [

        {

            "execute_when": {

                "details": {

                    "trigger_module": {

                        "api_name": "Deals",

                        "id": "4876876000000002181"

                    },

                    "criteria": {

                        "comparator": "equal",

                        "field": {

                            "api_name": "Stage",

                            "id": "4876876000000002565"

                        },

                        "type": "value",

                        "value": "Closed Lost"

                    },

                    "repeat": false,

                    "match_all": false

                },

                "type": "field_update"

            },

            "module": {

                "api_name": "Deals",

                "id": "4876876000000002181"

            },

            "description": "Triggers tasks, tags, and follow-up reminders for high-value deals lost due to pricing",

            "name": "Lost Deal due to Pricing - Follow Up",

            "conditions": [

                {

                    "sequence_number": 1,

                    "instant_actions": {

                        "actions": [

                            {

                                "name": "Lost Deal - Feedback",

                                "id": "4876876000016794047",

                                "type": "tasks"

                            },

                            {

                                "details": {

                                    "module": {

                                        "api_name": "Deals",

                                        "id": "4876876000000002181"

                                    },

                                    "over_write": false,

                                    "tags": [

                                        {

                                            "name": "Lost due to Pricing",

                                            "id": "4876876000016794071",

                                            "color_code": "#658BA8"

                                        },

                                        {

                                            "name": "Re-engagement pending",

                                            "id": "4876876000016794075",

                                            "color_code": "#879BFC"

                                        }

                                    ]

                                },

                                "type": "add_tags"

                            },

                            {

                                "name": "Deal Lost Alert",

                                "id": "4876876000016794062",

                                "type": "email_notifications"

                            }

                        ]

                    },

                    "scheduled_actions": [

                        {

                            "execute_after": {

                                "period": "business_days",

                                "unit": 30

                            },

                            "actions": [

                                {

                                    "name": "Lost Deal - Feedback",

                                    "id": "4876876000016794047",

                                    "type": "tasks"

                                }

                            ]

                        }

                    ],

                    "criteria_details": {

                        "criteria": {

                            "group_operator": "AND",

                            "group": [

                                {

                                    "comparator": "greater_equal",

                                    "field": {

                                        "api_name": "Amount",

                                        "id": "4876876000000002557"

                                    },

                                    "type": "value",

                                    "value": "30000"

                                },

                                {

                                    "comparator": "equal",

                                    "field": {

                                        "api_name": "Reason_For_Loss__s",

                                        "id": "4876876000002440001"

                                    },

                                    "type": "value",

                                    "value": "Price"

                                }

                            ]

                        }

                    }

                }

            ]

        }

    ]

}

 

The execute_when defines when the workflow should fire.

  • type = field_update means this rule runs when a field’s value changes.

  • criteria : Stage = Closed Lost so the rule triggers whenever the Stage field is updated to Closed Lost.

  • repeat = false ensures it will not trigger multiple times for the same record. 

In simple terms: “Whenever a deal is marked as Closed Lost, run this workflow.” The criteria_details section refines the trigger. The workflow only runs when the Amount ≥ ₹30,000 AND Reason for Loss = Price.

The instant_actions section inside the conditions array has the actions to be executed immediately when the criteria are met.

  • Add Tags : labels the record for easy filtering and reporting.

  • Send Email Alert : notifies the sales team instantly about the lost deal.

The scheduled_actions defines what happens after some time has passed. In this case, after 30 business days. Here, the workflow automatically creates a “Lost Deal - Feedback” task, reminding the deal owner to follow up with the customer to get feedback, and for future opportunities.

The criteria_details defines which records the workflow applies to. In this case, the rule applies to the records that satisfy the following conditions:
  1. The Amount is greater than or equal to ₹30,000, and  

  2. The Reason for Loss is “Price.”  

By combining these elements, this workflow achieves a full closed-loop follow-up system.

Conclusion:  

Zylker’s updated and new workflows make their automation smarter and more responsive. They are now able to spot key deals and ensure lost opportunities are revisited.  

And this is just the beginning. There are countless use cases you can build with workflows. We have included many examples in our Postman collection. Please check them out to get more out of the Workflow APIs. If you have a unique scenario you would like us to address, or a specific automation challenge you are facing, please let us know! We will address them in the upcoming weeks.


We hope you are now well on your way to mastering Workflow APIs. Share your thoughts in the comments or write to us at support@zohocrm.com.

Additional Reading:

  1. Workflow APIs - Part 1 - Auditing Workflows
  2. Workflow APIs - Part 2 - Find out what actions and triggers are supported for each module



      Zoho Campaigns Resources


        • Desk Community Learning Series


        • Digest


        • Functions


        • Meetups


        • Kbase


        • Resources


        • Glossary


        • Desk Marketplace


        • MVP Corner


        • Word of the Day


        • Ask the Experts


          • 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

          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


                        Zoho WorkDrive Resources



                          Zoho CRM Resources

                          • CRM Community Learning Series

                            CRM Community Learning Series


                          • Tips

                            Tips

                          • Functions

                            Functions

                          • Meetups

                            Meetups

                          • Kbase

                            Kbase

                          • Resources

                            Resources

                          • Digest

                            Digest

                          • CRM Marketplace

                            CRM Marketplace

                          • MVP Corner

                            MVP Corner




                            Zoho Writer Writer

                            Get Started. Write Away!

                            Writer is a powerful online word processor, designed for collaborative work.

                              Zoho CRM コンテンツ




                                ご検討中の方

                                  • Recent Topics

                                  • How to go to the next open ticket in the queue when agents closes ticket

                                    Zoho Desk When agent closes a ticket - eg when they choose 'Send and Close" - where is the setting that automatically redirects them to the next open ticket in the queue?
                                  • CRM verify details pop-up

                                    Was there a UI change recently that involves the Verify Details pop-up when changing the Stage of a Deal to certain things? I can't for the life of me find a workflow or function, blueprint, validation rule, layout rule ect that would randomly make it
                                  • Custom templates for calendar report

                                    What about being able to design custom templates for the calendar report, as well as for other types of reports? I think more users are waiting for this.
                                  • Print a price list or price book

                                    Hi Community. Am I right in concluding that Zoho has no functionality to print a price list from either Zoho CRM, Zoho Inventory or Zoho Books? I won't get stuck on the fact that Zoho doesn't sync price books between Zoho CRM and Books/Inventory (more
                                  • Disable payment thank-you emails

                                    Hello, can someone please tell me how to disable sending of the "Payment Thank-You" emails? 
                                  • Maximum tags possible in Contacts Records

                                    I read in some documentation that Zoho allows a total of 200 tags across all records. Is this correct? So is it not possible to have one tag per record for 500 records?
                                  • Any way to "Pay with Check" or "Refund with Check" for Credit Notes?

                                    When we have a Bill in Zoho Books, we can select the "Pay with Check" option which then allows us to print/cut the check directly out of Zoho Books. When we created a Credit Note and want to refund the customer, is there any way to Refund with Check,
                                  • CRM Mobile reports

                                    When our engineers finish a job they like to email the customer a job report. This is best done todate as an email template but we can find no way to include an image field from that module. Is there any other options?
                                  • When Zoho Tables Beta will be open to EU data center

                                    Hello all, We in EU are looking at you all using and testing and are getting jealous :) When we will be able to get into the beta also? We don't mind testing and playing with beta software. Thank you!
                                  • Start Form on a different page (i.e., hide form pages)?

                                    I have a Zoho form that uses the `Field Alias - Prefill URL` feature. My goal is to have a pre-filled field that directs the user to a specific starting page in the form. For example: The URL will have a field alias that will auto-populate a field with
                                  • How can we disable "My Requests"?

                                    We are not using this functionality in our system at all and our users get confused.
                                  • PayPal payment received recording problem

                                    Hi, A little while back one of our customers used the PayPal payment option to pay an invoice For some reason though the payment is showing up twice within the Payments section of the invoice! Instead of setting the invoice value to ZERO, it now shows a negative value Anyone else face this problem? I've checked PayPal and there is only 1 payment in reality... A bug? Actonia ps: for anyone from Zoho Customer Service or tech team,  its Invoice 785 in our account
                                  • server response: 451.4.7.1

                                    Good day.  Some email clients of our domain receive an error about sending and receiving letters. while for the rest everything works fine. access to the mail made by pop protocol. Bless the mistakes: "server response: 451.4.7.1 System error". 
                                  • string(87) "{"code":"INVALID_TOKEN","details":{},"message":"invalid oauth token","status":"error"} " grtting this error

                                    Using access token i am trying to add sales orders through api but it is throwing errors like the above i have mentioned. Please help me for that
                                  • How to mute chat notification sound by default in Zoho SalesIQ?

                                    We’ve recently embedded the Zoho SalesIQ chatbot on our website, and we’ve noticed that notification sounds sometimes play even when the visitor hasn’t interacted with the chat widget yet. We’re trying to understand two things: Why do these sounds occur
                                  • Kanban View for Projects.

                                    At our organization, we describe active projects with various statuses like "In Proofing" or "Printing" or "Mailing". In the Projects view, one can set these project statuses by selecting from the appropriate drop-down. While this works, it's difficult to view and comprehend the progress of all of your projects relative to each other in a table. Creating a Kanban view for projects where I can move them from one status to another allows me to see where each project is in the order of our workflow.
                                  • How to Hide Article Links in SalesIQ Answer Bot Responses

                                    I have published an article in SalesIQ, and the Answer Bot is fetching the data and responding correctly. However, it is also displaying the article link, which I don’t want. How can I remove the link so that only the message is shown?
                                  • Add RECURRING option when adding email to calendar events

                                    When you add an email to a calendar event, there is no option to make that new calendar event into a recurring event.  It is counterproductive to make an event from your email to then have to go to your calendar, find the event, and make it recurring. 
                                  • LINE Auto Message Connect to Zoho

                                    When I integrated LINE into the CRM, I was prompted to disable “Chat,” “Auto Response,” and “Greeting Messages,” and to enable the webhook. However, since I have already set up some auto-reply features in LINE, including Rich Messages and greeting automation,
                                  • Option to block bookings from specific email address or ip adresss in zoho booking

                                    Sometime few of our client keep booking irrelevant booking service just to resolve their queries and they keep booking it again and again whenever they have queries. Currently its disturbing our current communication process and hierarchy which we have
                                  • Threaded conversations for emails sent via automation

                                    Hi Guys, I hope you are doing well. Don't you guys think we should have an option in a workflow to notify users either as a new email or the previous email thread. For example, if you have one deal in the process and there are 10 different stages during
                                  • Create folder is fetch fails

                                    coming from zapier... zapier has a google drive task that searches for a specific folder in google drive, and if it fails to find the folder it will create a folder based on the search criteria, and contine along the singluar path of the flow. Trying
                                  • Meetups de Usuarios de Zoho - Noviembre 2025

                                    ¡Hola, Comunidad! Durante el mes de noviembre celebraremos los Meetups de usuarios de Zoho, encuentros presenciales pensados para quienes queráis mejorar vuestras estrategias de lead nurturing y aprender a sacar el máximo partido a herramientas como Zoho
                                  • Introducing 8 New Connectors in Zoho DataPrep!

                                    We’ve just made data management even easier - Zoho DataPrep now supports 8 new external connectors to help you build more robust, scalable ETL pipelines. Why it matters: ✅ Broader data access ✅ More automation, less manual work ✅ Smarter pipelines, better
                                  • Sales Order, Invoice and Payment numbers

                                    Hi zoho friends, it is me again, the slow learner. I'm wondering if there is a way to have it so the Sales order, invoice and payment numbers are all the same? It would be easier for me if they were the same number so there is not so many reference numbers
                                  • First day of trying FSM in the field.

                                    What we found. 1. with out a network connection we were unable to start a service call? 2. if you go to an appointment and then want to add an asset it does not seem possible. 3. disappointed not to be able to actually take a payment from within the app
                                  • 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
                                  • How to Automate Email Sequence

                                    I'm having trouble trying to set up a workflow to automate an email sequence. Once a group of emails in a Task has been tagged by a certain tag, I want an instant email template to be sent. After 7 days with no response, another email template would be
                                  • Turning off the new UI

                                    Tried the new 'enhanced' UI and actively dislike it. Anyone know how to revert back?
                                  • Zoho Sprints Android v2.0.4 app update: Item reminders, archive Epics, Kanban projects, Epic progress

                                    Hello everyone! In the latest version(v2.0.4) of the Zoho Sprints Android app update, we have introduced various new features. Let's take a look at what's new! Item Reminder Stay organized and never miss an important date with the all-new Item Reminder
                                  • Credit Management: #3 Setting Credit Limit for Customers

                                    Think about that one familiar customer of yours who always buys on credit. They usually pay on time, maybe a little late here and there, but not alarming. So, you are fine saying, "Sure, pay later." Then, one day, they place a significantly bigger order
                                  • Update on the client portal URL for Guest users

                                    We’re updating the way Guest users access their Connect network. As part of this change, all client organization portals used by Guest users will now be accessible through a dedicated domain specific to each data center. The access URLs mentioned here
                                  • Preserve Ticket Issue Mapping When Migrating from Jira to Zoho Projects

                                    Hello Zoho Projects Team, We hope you are doing well. We are currently exploring a full migration from Jira to Zoho Projects, and we identified a critical limitation during the migration process involving Zoho Desk integration. Current Situation: We use
                                  • Unable to see Zoho contacts in Zoho app on ios

                                    Hi Support Team, I am a new user, I have created my account and installed zohomail app on iOS 16 which works. I was also able to import my Gmail contacts into Zoho Contacts, which I can see. The problem is that I can’t see these imported cobalts in Zohomail
                                  • Task Due Date greater than 10 years.

                                    We use recurring tasks in Projects where every week, month, year etc Some of our projects are greater than 10 years and we are unable to set a new due date because the difference between start date and due date is greater than 10 years. As an example
                                  • External User onboarding for zoho connect is not really intuitive.

                                    So the external user is sent an invite, which has a button that directs them to login to zoho to view the invite, but if they don't have a zoho account, they cannot access that invite, which seems kinda silly, as there is not real way on for them to create
                                  • Hosting external websites on Zoho?

                                    How can I host my external website on zoho? Do we have that option? I am currently with hostinger and am looking to switch to zoho. Kindly help. Thanks.
                                  • How to Add Time Formula Duration (hh:mm)

                                    Hi everyone — I’m trying to create a formula field in Zoho CRM that calculates the difference between a “Call Start Time” and “Call End Time” and displays the duration in HH:MM format (for example: 1:04 for one hour and four minutes). My current setup
                                  • How can I calculate the physical stock available for sale?

                                    Hey Zoho Team,  I've tried to calculate the physical stock on hand in various ways - but always receive a mismatch between what's displayed in Zoho Inventory & analytics.  Can you please let me know how the physical stock available for sale is calculated?
                                  • Set Custom Icon for Custom Modules in new Zoho CRM UI

                                  • Next Page