FAQs on Notification APIs

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 ✨





        • Recent Topics

        • Allow Multiple Scheduled Appointments with Zoho Support

          Dear Zoho Team, I hope you're doing well. First, thank you for introducing the option to schedule support calls via the Zoho CRM booking link. This has been a fantastic enhancement, eliminating the need for back-and-forth coordination when scheduling
        • Pivot table with Text values - "Matrix Report"

          User Story - As a user, I would like the ability to display textual data in a two-way table, matrix format (text datatypes, not numerical datatypes displayed as a dimension) One major feature missing from the Pivot tables in Zoho Analytics is the ability
        • Domain not usable

          We have not used this domain because the Chrome systems on our office devices are not compatible with your technology. I am sorry if no one has never advised you of this. Please cancel if it has not already been canceled. Ticket# 7526594 Please see
        • Bigin iOS, macOS and Android app update - File Cabinet

          Hello Everyone! In the most recent iOS (v1.7.1) and macOS (v1.5.1) updates of the Bigin app, we have included support for the File Cabinet functionality. You can access this feature as a topping within the web app (bigin.zoho.com) and conveniently use
        • Power of Automation :: Automatically close the associated tasks once the Issues are closed

          Hello Everyone, A Custom Function is a user-written set of code to achieve a specific requirement. Set the required conditions needed as to when to trigger using the Workflow rules (be it Tasks / Project) and associate the custom function to it. We have
        • Meeting vs Zoom and why we are moving

          Dear Meeting team,                                   I want to share my thoughts on Meeting vs Zoom and explain why we are moving back to Zoom for all our video conferencing, even though it is part of our Zoho One Subscription. 1). Video & Audio quality - We see a significant downgrade in video quality when using Meeting vs Zoom, even when using the same internet connections.  Meeting video is blurry and not sharp compared to Zoom.  Audio is also hit and miss on Meeting with frequent drop outs and
        • Import from GoHighLevel to Zoho CRM

          Has anyone been successful with this? I don't want to integrate with GoHighLevel just import/migrate everything over to Zoho
        • booking link that expires

          I have a suggestion that is  crucial. When i send booking URL to clients they keep the link and they book appointment whenever they want multiple times. You should give us the Booking URL feature. We should be able to send it and the user can use it only
        • Accessing Subform Data using getRecordByID

          I am getting data from Zoho Creator using deluge zoho.creator.getRecordByID task, from another application. The report contains a subform, and that subform is in the detail view of the report. I do not appear to have any subform data in the JSON response,
        • Track Contact's Employment/Account History

          Thank you in advance for all of your help! Is there a way, within Zoho, to keep track of a contact's employment history? For example, if John Doe is my contact at Account 1, but leaves the company and is hired by Account 2, can I... ...maintain John Doe as a former employee under Account 1, while simultaneously listing him as a current employee of Account 2? ...view John Doe's employment history on his contact page in addition to the account he is currently associated with? I'm sure there is a way
        • Pre-fill TO and CC fields for Email Templates

          This would be a game changer to be able to set either specific email addresses or merge fields based on deal role titles into email templates. Please pass this along to *hopefully* add to future features of Zoho CRM.
        • Leads and Deals Issue

          Hi! Is Zoho having trouble today? I've been experiencing issues today. When I move a deal to closed/won, it previously would require a closing date but today the screen just went blur and the closing date did not pop up. And then under leads, I was trying
        • QR codes in templates

          I'm excited about the new QR code generator. I have included a QR code that contains the record ID setting "${ID}" as input data. In the report detail it works perfectly but when printing it in a template the code is not shown.
        • How do I hide all leads from Standard users in my CRM ZOHO

          I want to configure my crm zoho in such a way that standard users will only see leads owned or assigned to them. How do I go about doing this? I have tried all i could, but nothing...can anyone help me?
        • Custom view for Milestones

          Hi, Just an idea for the future... would it be possible to create custom views for the Milestones view under Work Overview ? I usually need to look at this view filtered by project group but the filter doesn't remain when navigating away. A custom view
        • How to Implement Time-Based Filters in Zoho Workflows?

          Hi everyone, I’m looking for a workaround to implement time-based filters in Zoho workflows. Specifically, I need a workflow to trigger only within certain hours (e.g., between 10:00 AM and 8:00 PM, Sunday to Friday). Currently, Zoho workflows execute
        • is there a better way to routinely export my project timesheets?

          Hi there, I am somewhat happy with how Zoho books handles time.  One thing that is missing is more user driven control over my data.  I have a workflow where I constantly need to give customers feeds of work done.  So I pick a project, and would ideally
        • Portal Default View

          Hello! My company is about roll out portals for some users, but we were wondering if it was possible to set the Record Detail Page View to default to a custom view that we made. That way the information they need would be streamlined and easier to see.
        • Does zoho rest api support token exchange from microsoft entra id token

          i want to get access token from the Microsoft user token in rest api. so it is possible to exchange microsoft user access token to zoho's access token or auth token ( token should be user specific not super admin).
        • Important: DKIM verification needed for unauthenticated email domains

          Hi all, This post is to inform users who are currently using unauthenticated email domains as their sender email for their notifications. We have mandated DKIM verification for all domains used as sender email addresses for the outgoing emails by 01-Jan-2025.
        • How do I define a weekend

          I noticed the default for weekends does not seem to include Saturdays. How can i define weekends to include both Saturdays and Sundays? Thank you.
        • Assistance Required: Custom Model Record Not Visible in Zoho CRM Sandbox

          Dear Team, I hope this message finds you well. I have created a custom model in the Zoho CRM Sandbox account and am currently adding records to it using Python. While I am able to fetch the module data programmatically through Python, I am unable to see
        • Zoho Sign Product updates - H2 2024

          Hello! We have almost come to the end of 2024! Here's a list of features and enhancements that went live in the later half of the year. NOM 151 certification Witness signing Formula, conditional, and custom fields Zoho Sign's extension for Bigin by Zoho
        • Custom Status for Purchase Orders

          Currently Zoho books has functionality to create custom statuses for Sales Orders. Can this be extended to include custom status for purchase orders as well? It was a great decision to add this functionality to sales orders. Our use case is for tracking
        • Remove Address from credit card payment

          I would like to remove the need to add address when paying by credit card. I only want the customer to have to add their credit card details.
        • Top Menu Disappeared from Blog Page

          Hi, Our top menu disappeared at Blog Posts page. However, it's still visible any other page on the website. I attached two screenshots, so it can be understood clearly. How can we bring back top menu? Thanks, K.
        • Subforms and automation

          If a user updates a field how do we create an automation etc. We have a field for returned parts and i want to get an email when that field is ticked. How please as Zoho tells me no automation on subforms. The Reason- Why having waited for ever for FSM
        • My Zoho mail has been blocked for suspicious activity. cannot unblock it! need urgent help!

          Hi, I was accessing my email on an airplane which for some reason resulted in my mail being blocked. I have managed to unblock my incoming however outgoing is still blocked. I have contacted all your support emails but it still says contact support when I try to unblock outgoing emails. Its now been over 8 days with the same issue which is really serious as I'm not able to send several business emails during this period. I have followed all your steps to unblock this and contacted your support 5
        • Copy Widget to another Dashboard

          I can see the option to clone a widget to the same dashboard but is it possible to copy it to another dashboard?
        • Error while importing products Purchase Price: Value in the field does not match with the data type supported by us.

          I am trying to import items into zoho inventory using an excel spreadsheet. I keep getting this error Purchase Price: Value in the field does not match with the data type supported by us. no matter how i format the cells this comes up and will not import
        • Quotes Module - import data

          Hello Zoho, is it possible to import Quotes records? I was trying and i have no results. Raport shows no data imported. Could you help me please how to do it?
        • Year-End Wrap: Disconnect now; Reconnect later with Offline Mode

          🎄Happy Holidays🎄 Let's say you are travelling home to spend the holiday season with your loved ones. Before you even board the train, you check your phone only to find your inbox rapidly filling with urgent emails that need your attention. There’s no
        • Exploring SalesIQ's Top Features of 2024: An Insider's Look 🔍

          As we wrap up another year at Zoho SalesIQ, it's time to reflect on how far we've come. This year has been incredible for us in our journey to build a more powerful, flexible, and customer-centric engagement platform. We've introduced several features
        • Resource booking functionality questions

          I'm exploring the resource booking functionality in Zoho Bookings for my organisation's needs. I have a few questions about the available Zoho Bookings functionalities. Is it possible to force all users to sign up for an account before they book a resource?
        • How to create a Field with answers as Yes, No> Further if no is selected a new field to be visible to give details

          Dear All, I am creating a feedback form in HR Letter. The question is were you satisfied with the work allotted. Expected answer to this is Yes, No. Further if the response is no, then a field to be give to fill more details as to why no was selected.
        • Modify the way a phone number is shown in footer on ZOHO Booking Page

          The default display of the phone number field in the footer is not customer friendly - See image below. We would like it to use the accepted standards of phone number display: +61 (0)2 88545440, or allow us to choose. At the moment ZOHO Booking sets how
        • Zoho Bookings Multilingual ?

          Hello, Not sure if there is a way to do it currently, but it would be very helpful if Zoho bookings allowed multilingual translations so we could have our booking pages and notifications setup in multiple languages. Thanks,
        • Allow customers to choose meeting venue and meeting duration on booking page

          My business primarily involves one-to-one meetings with my clients. Given the hybrid-work world we now find ourselves in, these meetings can take several forms (which I think of as the meeting "venue"): In-person Zoom Phone call I currently handle these
        • Problem viewing document imported from google drive.

          Hello, When I add a document via my google drive, it is impossible to preview it. I get the error “Files without extensions cannot be previewed. Download to view this file”. Could you please help me? Also, and this is more of a question: is there a way
        • Two way sync Zoho Mail and Bookings

          Hi, I know it’s possible to view Bookings appointments in Zoho Mail, but is there a way to see my Zoho Mail meetings in the Bookings calendar?
        • Next Page