Kaizen #170: FAQs on Notification APIs

Kaizen #170: FAQs on Notification APIs

Hello all!!
Welcome back to another post in the Kaizen series!

In this post, we will address the most frequently asked questions about Zoho CRM's Notification APIs from the Zoho CRM Developer Community Forum.



Notification API

This API allows you to subscribe to events such as creating, updating, and deleting a record in a module through a webhook URL. Each of these actions triggers a corresponding HTTP request to your webhook.

1. How can I turn off related record notifications when using the Notification API?

Answer

When enabling the notification, you can pass "notify_on_related_action": false in the input data. This will prevent a notification from being sent for related records (like the account record) when the contact record is updated. If this parameter is not included, the default value is true, meaning related records will still receive notifications.
------------------------------------------------------------------------------------------------------------------------------------

2. What is the expiry duration for a channel, and how can I update it when it expires?

Answer
:
  • From V2 to V3: The default channel expiry time is one hour, with a maximum limit of one day.
  • From V4, the default expiry time remains one hour, but the maximum limit is one week.
To continue receiving notifications, you must resubscribe the channel before its expiry using the Enable Notification API.
Example:
If your channel expiry time is set to one day, the best practice is to re-subscribe every 23 hours and 55 minutes (just under 24 hours). If you do not specify an expiry time during subscription, the channel will expire within one hour by default.
------------------------------------------------------------------------------------------------------------------------------------

3. A few modules have not received any notifications, even though we have already subscribed to them. How should we handle this?

Answer
:

We suggest updating the notification for the modules where you are facing issues and checking again.
If this does not resolve the problem, please share the following information with support at support@zohocrm.com, and our experts will assist you further.
------------------------------------------------------------------------------------------------------------------------------------

4. How can I get my notify URL since I have subscribed to multiple channels for different modules using the Notification API?

Answer
:
You can use the channel ID obtained during the notification subscription to retrieve the notify URL through the GET Notification Details API. The response will provide the module-specific notify URL, along with other details like return_affected_fields, resource_name, channel_expiry, and more. Explore further by using our Notification API.
------------------------------------------------------------------------------------------------------------------------------------

5. How can I use the Notification API to get notification when a deal is created or edited?
Answer: You can use the Notification API to subscribe to events like creation or editing of deals.
Note that the notification channel expires after a maximum of one day / one week (channel_expiry),
so you must update it regularly to keep the notification alive.
------------------------------------------------------------------------------------------------------------------------------------

6. I am not receiving notifications after updating my configuration using the PUT - Update Details of a Notification API. How can I ensure proper notifications in Zoho CRM?

Answer
:
The "events" JSON array is mandatory when updating your notification configuration using the PUT - Update Details of a Notification API. Ensure you include the "events" JSON array with valid data in the input data, along with respective channel_id and channel_expiry keys.

For updating specific details, you can use the PATCH - Update Specific Information of a Notification API, where the "events" key is not mandatory.
------------------------------------------------------------------------------------------------------------------------------------

7. Does the token field become null when I update a notification using the PATCH request?

Answer
:
In the PATCH request for updating notification details, only the fields provided in the input data are updated. Fields not included in the input will retain their existing values. 

                     PUT Method

                       PATCH method

The  PUT request replaces the entire notification details for the specified channel_id with the information provided in the input data.

The PATCH request updates only the specific fields included in the input data, while preserving all other existing notification details.

------------------------------------------------------------------------------------------------------------------------------------

8. Why shouldn't  I delete the current channel using "channel_id" with "HTTP method DELETE", and then create a new one with the parameters I need?

Answer
:
Deleting and recreating notifications in Zoho CRM is not recommended, as it may result in missed notifications for data changes that occur during the gap between deletion and recreation. Istead, you should update the expiry time regularly, add new events, or enable new notifications using the existing APIs (e.g., PATCH or PUT).
However, if you no longer need a notification channel, you can use the DELETE method to remove it completely. For selectively deleting certain events from an existing notification, use PATCH call.
------------------------------------------------------------------------------------------------------------------------------------

9. Can I get notifications when specific actions, such as updates or deletions, occur on certain fields? How can I achieve this?

Answer:
Yes, you can receive notifications only for specific fields when they are updated. Use the "notification_condition" JSON array key in your input to set conditions for these fields. This support is available from Zoho CRM API version 6. Refer to the Enable Notifications API document for details on setting up field-specific conditions.

Sample Input:


{
    "watch": [
        {
            "channel_id": "10000",
            "events": [
                "Leads.all"
            ],
            "notification_condition": [
                {
                    "type": "field_selection",
                    "module": {
                        "api_name": "Leads",
                        "id": "554023000000000131"
                    },
                    "field_selection": {
                        "field": {
                            "api_name": "Company",
                            "id": "554023000000000525"
                        }
                    }
                }
            ],
            "channel_expiry": "2024-12-31T09:58:09+05:30",
            "token": "leads.all.notif",
            "return_affected_field_values": true,
            "notify_url": "https://webhook.site/2c9a0xxc20fa9"
        }
    ]
}

This JSON input sets a notification channel for monitoring all actions related to the Leads module in Zoho CRM, specifically focusing on changes to the "Company" field. 
------------------------------------------------------------------------------------------------------------------------------------

10. How can I know which fields have been updated and what their new values are?

Answer
:
 
By default, notifications do not include details about the updated fields. To know information about fields that were modified along with their new values, set "return_affected_values": true in your input body when enabling notifications. 

Sample Input:


{
    "watch": [
        {
            "channel_id": "10000",
            "events": [
                "Leads.edit"
            ],
            "notification_condition": [
                {
                    "type": "field_selection",
                    "module": {
                        "api_name": "Leads"
                    },
                    "field_selection": {
                        "field": {
                            "api_name": "Company"
                        }
                    }
                }
            ],
            "token": "leads.all.notif",
            "return_affected_field_values": true,
        }
    ]
}


Sample Response JSON Notification:


{
  "server_time": 1735038997457,
  "affected_values": [
    {
      "record_id": "5725767000005053017",
      "values": {
        "Company": "Tech Info"
      }
    }
  ],
  "query_params": {},
  "module": "Leads",
  "ids": [
    "5725767000005053017"
  ],
  "affected_fields": [
    {
      "5725767000005053017": [
        "Company"
      ]
    }
  ],
  "operation": "update",
  "channel_id": "10000",
  "token": "leads.all.notif"
}

In the above response,  the "affected_fields" contains a list of the fields that were modified and "affected_values" contains the new values for the modified fields, along with the respective record details.
------------------------------------------------------------------------------------------------------------------------------------

11. I am trying to use the Zoho Notification API. I can successfully enable notifications, but I don't receive any notifications when an event occurs.

Answer:
  • Ensure that your webhook URL is active and accessible. If it is down, Zoho CRM cannot send notifications about data updates.
  • Check if the notification channel has expired. 
------------------------------------------------------------------------------------------------------------------------------------

12. Can I receive notifications if a subform or multi-select lookup (MxN) field in a module is modified or updated?


Answer
Yes, you can receive notifications when a subform or MxN field is updated. Though subforms and MxN fields are fields in a module, the system internally creates a separate module for each. As a result, subforms and MxN fields are treated as independent modules. 

To enable instant notifications for actions performed on these modules, use the respective API names of the subform or MxN (linking module) in the input body.

Sample Input:


{
    "watch": [
        {
            "channel_id": "10000",
            "events": [
                "Project_Details.all"  //Project_Details represents the API name of the subform
            ],
            "return_affected_field_values": true  
        }
    ]
}

------------------------------------------------------------------------------------------------------------------------------------


13. How is the Notification API useful for data synchronization with a third-party application?


Answer: 
Refer to our Kaizen #122 for a detailed explanation of data synchronization  between Zoho CRM and third-party application using the Notification API and the Bulk Read API with a third-party application.

------------------------------------------------------------------------------------------------------------------------------------

14. I am facing delays in receiving notification responses for bulk records. In what cases do notification delays occur, and how can I ensure faster notifications for bulk record actions?

Answer: 
When performing bulk actions (e.g., record creation or updates), if your processing speed exceeds 100 milliseconds per notification (e.g., 500 to 800 milliseconds), it will result in notification delays.
To avoid delays, ensure that your processing speed remains below 100 milliseconds per notification.

------------------------------------------------------------------------------------------------------------------------------------

Please note that the above-mentioned queries were frequently asked in the Zoho CRM Developer Community Forum and most of them were addressed by the Zoho CRM Support team. This post aims to put them all in one place and add additional questions with their solutions.


We trust that this post meets your needs and is helpful.
Let us know your thoughts in the comment section or reach out to us at support@zohocrm.com


Stay tuned for more insights in our upcoming Kaizen posts!



Cheers!!!

Wishing you a fantastic year ahead in 2025 ✨



    • Sticky Posts

    • 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
    • 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.
    • Recent Topics

    • Why does Zoho’s diff viewer highlight parts of unchanged lines?

      Hi everyone, I’ve noticed something odd in the Zoho editor’s diff view. When I delete a single line, the diff doesn’t just mark that line as removed. Instead, it highlights parts of the next line as if they changed, even though they are identical. Example:
    • CRM x WorkDrive: File storage for new CRM signups is now powered by WorkDrive

      Availability Editions: All DCs: All Release plan: Released for new signups in all DCs. It will be enabled for existing users in a phased manner in the upcoming months. Help documentation: Documents in Zoho CRM Manage folders in Documents tab Manage files
    • Wrapping up 2025 on a high note: CRM Release Highlights of the year

      Dear Customers, 2025 was an eventful year for us at Zoho CRM. We’ve had releases of all sizes and impact, and we are excited to look back, break it down, and rediscover them with you! Before we rewind—we’d like to take a minute and sincerely thank you
    • Passing the CRM

      Hi, I am hoping someone can help. I have a zoho form that has a CRM lookup field. I was hoping to send this to my publicly to clients via a text message and the form then attaches the signed form back to the custom module. This work absolutely fine when
    • Automating Employee Birthday Notifications in Zoho Cliq

      Have you ever missed a birthday and felt like the office Grinch? Fear not, the Cliq Developer Platform has got your back! With Zoho Cliq's Schedulers, you can be the office party-cipant who never forgets a single cake, balloon, or awkward rendition of
    • Drop Down Value

      Hi, May I know why Zoho Flow treat this drop down as number and not as string. If so, how can I fetch the right value for filtering. This field is from Creator, in Creator upon checking by default it is a string since it's not a lookup field.
    • SMS to customers from within Bigin

      Hi All, Is there anyone else crying out for Bigin SMS capability to send an SMS to customers directly from the Bigin interface? We have inbuilt telephony already with call recordings which works well. What's lacking is the ability to send and receive
    • Zoho Survey reminder settings are extremely confusing

      Hi, I just want to set 3 reminders, one week apart from the first email out. Your form is too confusing and I don't understand. Can you simplify and be more specific regarding the language used on the form ?
    • Add deluge function to shorten URLs

      Zoho Social contains a nice feature to shorten URLs using zurl.co. It would be really helpful to have similar functionality in a Deluge call please, either as an inbuilt function or a standard integration. My Creator app sends an email with a personalised
    • form data load issue when saving as duplicate record is made

      Hello. I have a form with a lookup when a value is selected the data from the corresponding record is filled into all of the fields in the form. But the form is loaded in such a state that if any value is changed it will take all of the values pre loaded
    • Recurring Tasks and Reminders in Projects

      Recurring tasks are tasks that are created once, and then recreated automatically after a designated time period. For example, the invoice for your billable tasks is due every week. You can set that task to recreate itself every week. Also, the future
    • Unable to remove the “Automatically Assigned” territory from existing records

      Hello Zoho Community Team, We are currently using Territory Management in Zoho CRM and have encountered an issue with automatically assigned territories on Account records. Once any account is created the territory is assigned automatically, the Automatically
    • Track online, in-office, and client location meetings separately with the new meeting venue option

      Hello everyone! We’re excited to announce meeting enhancements in Zoho CRM that bring more clarity and structure to how meetings are categorized. You can now specify the meeting venue to clearly indicate whether a meeting is being held online, at the
    • Google Fonts Integration in Pagesense Popup Editor

      Hello Zoho Pagesense Team, We hope you're doing well. We’d like to submit a feature request to enhance Zoho Pagesense’s popup editor with Google Fonts support. Current Limitation: Currently, Pagesense offers a limited set of default fonts. Google Fonts
    • Improved Contact Sync flow in Google Integration with Zoho CRM

      Hello Everyone, Your contact sync in Google integration just got revamped! We have redesigned the sync process to give users more control over what data flows into Google and ensure that this data flows effortlessly between Zoho CRM and Google. With this
    • Improved Functionality PO Bill SO Invoice

      Hello, I need to enter over 100 items, it's frustrating to scroll a few item rows and wait for more to load, then scroll again. It would be nice to have buttons that scroll to the top or bottom with one click. Furthermore, these items I'm adding are VAT
    • Wishes for 2026

      Hello, and a happy new year 2026! Let's hope it's better for everyone. I'd like to share some thoughts on Zoho One and what could be useful in the short, medium, and long term. Some things are already there, but not applied to Zoho One. Others seem like
    • How to Integrate Zoho Books with Xero (No Native Connection Available)

      Hi everyone, I’m currently facing an issue with integrating Zoho Books invoices with Xero, as I’ve noticed Zoho does not provide a native integration with Xero at this time. I would like to ask: What are the common or recommended solutions for syncing
    • How to install Widget in inventory module

      Hi, I am trying to install a app into Sales Order Module related list, however there is no button allow me to do that. May I ask how to install widget to inventory module related list?
    • error while listing mails

      I can't access email in any of my folders: Oops, an error occurred - retry produces the second error response: error while listing mails (cannot parse null string). I've signed in and out of Zoho, restarted my iMac.
    • Unlocking New Levels: Zoho Payroll's Journey in 2025

      Every year brings its own set of challenges and opportunities to rethink how payroll works across regulations and teams. In 2025, Zoho Payroll continued to evolve with one clear focus: giving businesses more flexibility, clarity, and control as they grow.
    • Zoho Browser??

      hai guys, this sounds awkward but can v get a ZOHO BROWSER same as zoho writer, etc. where i can browse websites @ home and continue browsing the same websites @ my office, as v have the option in Firefox, once i save and close the browser and again when i open it i will be getting the same sites. If u people r not clear with my explanation, plz let me know. Thanks, Sandeep  
    • Sync desktop folders instantly with WorkDrive TrueSync (Beta)

      Keeping your important files backed up and accessible has never been easier! With WorkDrive desktop app (TrueSync), you can now automatically sync specific desktop folders to WorkDrive Web, ensuring seamless, real-time updates across devices. Important:
    • MCP no longer works with Claude

      Anyone else notice Zoho MCP no longer works with Claude? I'm unable to turn this on in the claude chat. When I try to toggle it on, it just does nothing at all. I've tried in incognito, new browsers, etc. - nothing seems to work.
    • Ability to Edit YouTube Video Title, Description & Thumbnail After Publishing

      Hi Zoho Social Team, How are you? We would like to request an enhancement to Zoho Social that enables users to edit YouTube video details after the video has already been published. Your team confirmed that while Zoho Social currently allows editing the
    • Free Webinar : Unlock AI driven business insights with Zoho Inventory + Zoho Analytics

      Are you tired of switching between apps and exporting data to build customized reports? Say hello to smarter & streamlined insights! Join us for this exclusive webinar where we explore the power of the Zoho Inventory–Zoho Analytics integration. Learn
    • Critical Issue: Tickets Opened for Zoho Support via the Zoho Help Portal Were Not Processed

      Hi everyone, We want to bring to your attention a serious issue we’ve experienced with the Zoho support Help Portal. For more than a week, tickets submitted directly via the Help Portal were not being handled at all. At the same time no alert was posted
    • Hide/Show Subform Fields On User Input

      Hello, Are there any future updates in Hide/Show Subform Fields "On User Input"?
    • Cloning Item With Images Or The Option With Images

      Hello, when I clone an item, I expect the images to carry over to the cloned item, however this is not the case in Inventory. Please make it possible for the images to get cloned or at least can we get a pop up asking if we want to clone the images as
    • Custom validation in CRM schema

      Validation rules in CRM layouts work nicely, good docs by @Kiran Karthik P https://help.zoho.com/portal/en/kb/crm/customize-crm-account/validation-rules/articles/create-validation-rules I'd prefer validating data input 'closer to the schema'
    • Adding Default Module Image into mail merge field

      As with most people finding their way to these forums i have a specific requirement that doesn't seem to be supported by Zoho I have created 2 custom modules to suit my purpose 1 is an inventory type module that lists aluminium extrusions, and all relevant
    • Is it possible to roll up all Contact emails to the Account view?

      Is there a way to track all emails associated with an Account in one single view? Currently, email history is visible when opening an individual Contact record. However, since multiple Contacts are often associated with a single Account, it would be beneficial
    • Free Training - Explore What’s New in Zoho One 2025

      Greetings! We hope you have all had a chance by now to get hands-on with the new features and updates released as part of ZO25. Yes, we understand that you may have questions and feedback. To ensure you gain a comprehensive understanding of these updates,
    • Good news! Calendar in Zoho CRM gets a face lift

      Dear Customers, We are delighted to unveil the revamped calendar UI in Zoho CRM. With a complete visual overhaul aligned with CRM for Everyone, the calendar now offers a more intuitive and flexible scheduling experience. What’s new? Distinguish activities
    • Quick way to add a field in Chat Window

      I want to add Company Field in chat window to lessen the irrelevant users in sending chat and set them in mind that we are dealing with companies. I request that it will be as easy as possible like just ticking it then typing the label then connecting
    • How to create a two way Sync with CRM Contacts Module?

      Newbie creator here (but not to Zoho CRM). I want to create an app that operates on a sub-set of CRM Contacts - only those with a specific tag. I want the app records to mirror the tagged contacts in CRM. I would like it to update when the Creator app
    • Zoho Sheet for Desktop

      Does Zoho plans to develop a Desktop version of Sheet that installs on the computer like was done with Writer?
    • 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
    • Develop and publish a Zoho Recruit extension on the marketplace

      Hi, I'd like to develop a new extension for Zoho Recruit. I've started to use Zoho Developers creating a Zoho CRM extension. But when I try to create a new extension here https://sigma.zoho.com/workspace/testtesttestest/apps/new I d'ont see the option of Zoho Recruit (only CRM, Desk, Projects...). I do see extensions for Zoho Recruit in the marketplace. How would I go about to create one if the option is not available in sigma ? Cheers, Rémi.
    • How to import data from PDF into Zoho Sheet

      I am looking to import Consolidated Account Statement (https://www.camsonline.com/Investors/Statements/Consolidated-Account-Statement) into zoho sheet. Any help is appreciated. The pdf is received as attachment in the email, this document is password
    • Next Page