Kaizen #14 - Notification API

Kaizen #14 - Notification API

Hello everyone!

Welcome back to another week in the Kaizen series!
This week, we will discuss the Notification API in detail.

What is a Notification API?
Notification API allows you to get instant notifications whenever an action is performed on the records of a module. The system notifies you of the event on the URL you provide. You can also enable notifications based on a specific operation like create, update, or delete.

Channels for notification

You can create individual channels to 'watch' set of activities performed on certain CRM modules like Leads/Contacts/Accounts etc.

Let us assume that you have an application with two code modules—Code module 1 processes data from the Sales Force Automation modules, and code module 2 processes data from the inventory modules. Therefore, it makes sense to create one channel for each code module and notify the user about a change in that code module from the respective channel.




Through the Notification APIs, you can also set the expiry time for instant notifications for every channel, and disable notifications, anytime.

Notification APIs allow you to


Enable Notifications
This API allows you to enable instant notifications for a channel.

Request URL: {{api-domain}}/crm/v2/actions/watch
Request Method: POST
ScopeZohoCRM.notifications.ALL/CREATE

Here is a sample request that sends out notifications to the notify URL when a contact or a deal is created, or when an account is updated.

{
    "watch": [
        {
            "channel_id": "10000007828",
            "events": [
                "Contacts.create",
                "Accounts.edit",
                "Deals.create"
            ],
            "channel_expiry": "2020-02-02T10:30:00+05:30",
            "token": "contacts_and_deals7828",
        }
    ]
}

While enabling instant notifications, you can specify the following in the input:

Key and Data type
Description
notify_url (mandatory)
String
A valid URL that accepts data from the Notification API. Whenever any action gets triggered, the notification will be sent to this notify URL.
channel_id (mandatory)
String
The unique identification of that particular channel. The given value is sent back in the notification when an action happens in that channel.
events (mandatory)
JSON array
A JSON array of the module API name and the operation type (action on the records) that you want to be notified upon.
token
String, max of 50 characters
The given value is sent back in the notification URL body to ensure that the notification is sent from Zoho CRM.
By using this value, users can validate the notifications.
channel_expiry
DateTime
The expiry time of the channel in the ISO8601 format. After this time, notifications for the channel are not sent. 
The expiry can be a maximum of one day after the notifications were enabled for that channel. If you do not specify this value or set an expiry time beyond one day, the system considers the default expiration time of one hour.

Note
You can create a maximum of 100 channels (100 JSON objects, one for each channel) per API call.

Here is the response to the above POST request.

{
    "watch": [
        {
            "code": "SUCCESS",
            "details": {
                "events": [
                    {
                        "channel_expiry": "2020-01-10T19:20:23+05:30",
                        "resource_uri": "{{api-domain}}/crm/v2/Contacts",
                        "resource_id": "3652397000000002179",
                        "resource_name": "Contacts",
                        "channel_id": "10000007828"
                    },
                    {
                        "channel_expiry": "2020-01-10T19:20:23+05:30",
                        "resource_uri": "{{api-domain}}/crm/v2/Deals",
                        "resource_id": "3652397000000002181",
                        "resource_name": "Deals",
                        "channel_id": "10000007828"
                    },
                    {
                        "channel_expiry": "2020-01-10T19:20:23+05:30",
                        "resource_uri": "{{api-domain}}/crm/v2/Accounts",
                        "resource_id": "3652397000000002177",
                        "resource_name": "Accounts",
                        "channel_id": "10000007828"
                    }
                ]
            },
            "message": "Successfully subscribed for actions-watch of the given module",
            "status": "success"
        }
    ]
}

Where,
resource_uri is the request URL to access the module.
resource_id is the ID of the module (obtained from "{api-domain}/crm/v2/settings/module_api_name").

Here is the sample request body of the notification that Zoho CRM sends to the notify URL.

{
    "query_params": {},
    "module": "Contacts",
    "resource_uri": "{{api-domain}}/crm/v2/Contacts",
    "ids": [
        "3652397000001565035"
    ],
    "operation": "insert",
    "channel_id": "10000007828",
    "token": "contacts_deals_accounts_7828"
}

Get Notification Details
Use this API to get the list of all notifications a user has enabled.
You can also specify the channel_id to get the details of the notifications for that particular channel.

Request URL: {{api-domain}}/crm/v2/actions/watch
Request Method: GET
Scope: ZohoCRM.notifications.ALL/READ

Note
You can fetch a maximum of 200 channels per API call using this method.

Key and Data Type
Description
per_page
Integer
The number of channels you want to fetch per API call. The maximum is 200.
page
Integer
To get the list of records from the respective pages. The default value is 1.
module
String
The API name of the module to fetch notifications enabled for that module.
channel_id
String
The unique ID of the notification channel.

Example: 
{{api-domain}}/crm/v2/actions/watch?module=Leads&page=1&per_page=150&channel_id=10000007828

Update Notification Details
This API allows you to update the details of an existing notification like the token, the event which triggers the notification.

Request URL: {{api-domain}}/crm/v2/actions/watch
Request Method: PUT
Scope: ZohoCRM.notifications.ALL/WRITE/UPDATE
Mandatory parameter: channel_id

Below is an example of an input to update the details of the notification we enabled in the previous example.

{
    "watch": [
        {
            "channel_id": "10000007828",
            "events": [
                "Contacts.create",
                "Contacts.edit",
                "Deals.create"
            ],
            "channel_expiry": "2020-01-12T15:35:05+05:30",
            "token": "contacts_deals_7828",
        }
    ]
}

As you can see, we have updated the event in which a notification is triggered, and the token.

Note
  • Only the details you specify in the input will be updated. All other details you specified while enabling the notification will be removed. In this case, the notification for "Accounts.edit" will be disabled.
  • You can update a maximum of 100 channels per API call.

Update Specific Information of a Notification
Use this API when you want to update specific information of a notification by retaining the existing details.

Request URL: {{api-domain}}/crm/v2/actions/watch
Request Method: PATCH
Scope: ZohoCRM.notifications.ALL/WRITE/UPDATE
Mandatory parameter: channel_id

All other information like the input structure, limits are similar to the previous example.

Disable Notifications
Use this API to disable all (DELETE) or specific details (PATCH) of the notifications that you have enabled for a channel.

Request URL: {{api-domain}}/crm/v2/actions/watch
Request Method: DELETE/PATCH
Scope: ZohoCRM.notifications.ALL/WRITE/DELETE
Mandatory parameter: channel_ids (comma-separated channel IDs)

Example:
{{api-domain}}/crm/v2/actions/watch?channel_ids=10000007828,10000007000

Here is a sample input to disable specific notifications in a channel (PATCH). 

{
    "watch": [
        {
            "events": [
                "Contacts.create"
            ],
            "_delete_events": true
        }
    ]
}

The following table gives you the details of every key in the input.

Key and Data Type
Description
channel_id (mandatory)
Integer
The unique ID of the channel that you want to update or delete.
events (mandatory)
JSON array
The module API name (from the module metadata API) and the operation type (all, create, edit, and delete) that you want to disable notifications for.
_delete_events (mandatory for PATCH)
Boolean
Indicates whether you want to delete the events mentioned in the input. true deletes all the notifications for the events; false or not specifying this key in the input does not disable notifications.

Note
  • The DELETE request deletes the channel and the notifications enabled for that channel.
  • The PATCH request deletes only the events you specify in the events array, provided you have set the value for the _delete_events key as true.

We hope you found this post useful. Let us know your thoughts in the comment section or write to us at support@zohocrm.com.

Cheers!















    Access your files securely from anywhere

        All-in-one knowledge management and training platform for your employees and customers.






                              Zoho Developer Community




                                                    • Desk Community Learning Series


                                                    • Digest


                                                    • Functions


                                                    • Meetups


                                                    • Kbase


                                                    • Resources


                                                    • Glossary


                                                    • Desk Marketplace


                                                    • MVP Corner


                                                    • Word of the Day


                                                    • Ask the Experts



                                                              • Sticky Posts

                                                              • Kaizen #198: Using Client Script for Custom Validation in Blueprint

                                                                Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                              • Kaizen #226: Using ZRC in Client Script

                                                                Hello everyone! Welcome to another week of Kaizen. In today's post, lets see what is ZRC (Zoho Request Client) and how we can use ZRC methods in Client Script to get inputs from a Salesperson and update the Lead status with a single button click. In this
                                                              • Kaizen #222 - Client Script Support for Notes Related List

                                                                Hello everyone! Welcome to another week of Kaizen. The final Kaizen post of the year 2025 is here! With the new Client Script support for the Notes Related List, you can validate, enrich, and manage notes across modules. In this post, we’ll explore how
                                                              • Kaizen #217 - Actions APIs : Tasks

                                                                Welcome to another week of Kaizen! In last week's post we discussed Email Notifications APIs which act as the link between your Workflow automations and you. We have discussed how Zylker Cloud Services uses Email Notifications API in their custom dashboard.
                                                              • Kaizen #216 - Actions APIs : Email Notifications

                                                                Welcome to another week of Kaizen! For the last three weeks, we have been discussing Zylker's workflows. We successfully updated a dormant workflow, built a new one from the ground up and more. But our work is not finished—these automated processes are


                                                              Manage your brands on social media



                                                                    Zoho TeamInbox Resources



                                                                        Zoho CRM Plus Resources

                                                                          Zoho Books Resources


                                                                            Zoho Subscriptions Resources

                                                                              Zoho Projects Resources


                                                                                Zoho Sprints Resources


                                                                                  Qntrl Resources


                                                                                    Zoho Creator Resources



                                                                                        Zoho CRM Resources

                                                                                        • CRM Community Learning Series

                                                                                          CRM Community Learning Series


                                                                                        • Kaizen

                                                                                          Kaizen

                                                                                        • Functions

                                                                                          Functions

                                                                                        • Meetups

                                                                                          Meetups

                                                                                        • Kbase

                                                                                          Kbase

                                                                                        • Resources

                                                                                          Resources

                                                                                        • Digest

                                                                                          Digest

                                                                                        • CRM Marketplace

                                                                                          CRM Marketplace

                                                                                        • MVP Corner

                                                                                          MVP Corner







                                                                                            Design. Discuss. Deliver.

                                                                                            Create visually engaging stories with Zoho Show.

                                                                                            Get Started Now


                                                                                              Zoho Show Resources

                                                                                                Zoho Writer

                                                                                                Get Started. Write Away!

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

                                                                                                  Zoho CRM コンテンツ



                                                                                                    Nederlandse Hulpbronnen


                                                                                                        ご検討中の方




                                                                                                                • Recent Topics

                                                                                                                • Need a Universal Search Option in Zohobooks

                                                                                                                  Hello Zoho, Need a Universal Search Option in Zohobooks to search across all transactions in our books of accounts. Please do the needful Thanks
                                                                                                                • This version of app doesn't support this notecard type Error

                                                                                                                  So this problem is happening for any notes created within the last week, as well as any note recently edited on Android. I can open them on my phone fine, but they don't open on the website version. They DO work on the desktop app version. It's just web
                                                                                                                • Ordering of Teams

                                                                                                                  Hi there, Currently, we cannot order Teams in Zoho Desk. Teams are ordered as they were created. It would be really helpful if we could customise the order of Teams. For example: We have the following Teams: Shipping Customer Service Sales Compliance
                                                                                                                • How to change the format for phone numbers?

                                                                                                                  Mobile phone numbers are currently formatted (###) ###-####.  How can I change this to a more appropriate forms for Australia being either #### ### ### or (#)### ### ###?
                                                                                                                • Zoho Mail Android app update: UI revamp

                                                                                                                  Hello everyone! We are excited to share that the first phase of the Zoho Mail Android UI revamp is now live. In this update, we have redesigned navigation bar at the bottom to quickly access the Email, Calendar, Contacts, and Settings modules. Also, the
                                                                                                                • Add Support for Authenticator App MFA in Zoho Desk Help Center

                                                                                                                  Hello Zoho Desk Team, We hope you are doing well. We would like to request an enhancement related to security for the Zoho Desk Help Center (customer portal). Currently, the Help Center supports MFA for portal users via SAML, JWT, SMS authentication,
                                                                                                                • All new Address Field in Zoho CRM: maintain structured and accurate address inputs

                                                                                                                  Availability Update: 29 September 2025: It's currently available for all new sign-ups and for existing Zoho CRM orgs which are in the Professional edition exclusively for IN DC users. 2 March 2026: Available to users in all DCs except US and EU DC. 24
                                                                                                                • PDF's Give Unsupported Type Error Message

                                                                                                                  Many of the pdf files I add to Notebook work fine but in some cases when I try to open them on the Android App I get a message saying "Unsupported Type. Psst! You are using an older version of the app which does not support this note format. Please update
                                                                                                                • Resubscribe with Zoho Campaigns

                                                                                                                  Hi, I am new to Zoho Campaigns and sent a campaign to a contact list with only my email address. I wanted to see what the footer links did, so clicked unsubscribe and now can't include my email address into any more campaigns. I don't have a sign up form on my website to resubscribe and can't find how to resubscribe anywhere else. Can you help?
                                                                                                                • Add a way to connect Log360 Cloud logs with Zoho analytics

                                                                                                                  Hi, Several month ago Log360 Cloud was added to zoho one - and this is great. But as far as I see there is no prebuilt way to connect Zoho analytics to the logs we have in Log360 Cloud. Please add a prebuilt connection like we have for so many other zoho
                                                                                                                • Dynamic Multi-Staff Selection for Ad-Hoc Bookings

                                                                                                                  Summary Allow customers or internal schedulers to select specific staff members at the time of booking, with Zoho Bookings automatically surfacing only the time slots where all selected members are simultaneously available. Current Behaviour Zoho Bookings
                                                                                                                • Recurring event sync via Microsoft 365 Meetings

                                                                                                                  I believe syncing Recurring through the Microsoft 365 Meetings integration is already in the works but I couldn't find a reference in the community to track the progress of this work.
                                                                                                                • Share Edit while in Workflow

                                                                                                                  There are times that while a writer document is in the middle of a workflow the user that's responsible for that stage of the workflow needs to bring in other people to work on the document. Currently there is no way for the user to be able to allow other's
                                                                                                                • How can I use the API to add a drop-shipping address to a sales order for one-time use?

                                                                                                                  I need to be able to add a drop-shipping address for one-time use to a sales order via the API. Adding every such address to the contact (customer), then feeding the shippingaddress_id into the sales order, is not an acceptable approach; we have some
                                                                                                                • Need to set workflow or journey wait time (time delay) in minutes, not hours

                                                                                                                  Minimum wait time for both Campaigns workflows and Marketing Automation journeys is one hour. I need one or the other to be set to several minutes (fraction of the hour). I tried to solve this by entering a fraction but the wait time data type is an integer
                                                                                                                • Auto sync Photo storage

                                                                                                                  Hello I am new to Zoho Workdrive and was wondering if the is a way of automatically syncing photos on my Android phone to my workdrive as want to move away from Google? Thanks
                                                                                                                • sending email with another account

                                                                                                                  Hello there, i write there for an our costumer request. They want to send email from CRM with a different email (confirmed and added to zoho profile). For example they use account@zilium.com but with this account they want to send (not only with email
                                                                                                                • Major journey crash and not loading. Zoho Marketing Automation

                                                                                                                  Hi all. Last night (19MAR, 2026) Marketing Automation for a specific journey completely crashed, and since the crash the specific journey has failed to load at all (blank journey canvas, no journey appears, no menu accessible) but other separate journey's
                                                                                                                • Izettle or Sumup Integration for Zoho Books.

                                                                                                                  The Stripe & Square clearing works great in Zoho Books. Any further integrations planned in the future for Izettle or Sumup? These card processors are very common for taking payments with a card reader.
                                                                                                                • Is anyone experience missing functions in the new UI until hard refresh?

                                                                                                                  The set of functions including search is almost always missing upon loading an app in the new UI. If you refresh, the functions return. (see second screenshot) Anyone else experiencing this?
                                                                                                                • Adding Images to a Quote in Zoho CRM

                                                                                                                  We are currently preparing to use Quotes in Zoho CRM and we are building out our Quote templates.  We came across an issue of not being to add Images of the products to the Quote - specifically in the body of the Quote templates.   This is a problem,
                                                                                                                • Mail Search should allow grouping by conversation like Gmail.

                                                                                                                  Having switched from gmail I have found the search function hard to use. Mostly because mail is not grouped by conversation in search. If I search for a word when looking for a conversation had with someone then sometimes 10 emails will come up from the
                                                                                                                • Server-based Appication API access for Social, Sites, Flow, Pages.

                                                                                                                  Hello, I am trying to hook up API access for a number of apps and I have hit a wall trying to add these scopes to the API feed. We cannot find the correct way to list the scope for these Zoho apps; Social, Sites, Flow, Writer. Error on web-page comes
                                                                                                                • Zoho Landing Page "Something went wrong" Error

                                                                                                                  Hello, Every time I try to create a new landing page, I receive a "Something went wrong" error with no explanation. I cannot create any new pages, which means we cannot use this application. I did create one landing page successfully over a month ago,
                                                                                                                • 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:
                                                                                                                • Cliq iOS can't see shared screen

                                                                                                                  Hello, I had this morning a video call with a colleague. She is using Cliq Desktop MacOS and wanted to share her screen with me. I'm on iPad. I noticed, while she shared her screen, I could only see her video, but not the shared screen... Does Cliq iOS is able to display shared screen, or is it somewhere else to be found ? Regards
                                                                                                                • Zoho → ShipStation Integration – Sales Order–Driven Fulfilment Workflow

                                                                                                                  Hello All, I’m reaching out to explore the best way to integrate a shipping tool into our inventory which will speed our process up. We are looking to integrate ShipStation into our existing order-to-fulfilment workflow, as we’re keen to standardise on
                                                                                                                • Newby Questions - Vendors, Customers, and Income vs. Other Income Clarifications

                                                                                                                  Q1. For Deposits, there does not seem to be an option for "Income". "Other Income" is an option however. What is the process to add the option to assign a deposit to type "Income"? Q2. In many cases Vendors and Customer are the same. Vendors may purchase
                                                                                                                • Zoho Booking - TIN vs ATIN & ITIN

                                                                                                                  Zoho Booking Vendors allows for TAX ID values of SSN, EIN, ATIN an ITIN. There is no option for TIN. What is the method to properly add TIN to the list of taxable values for companies? For reference: Social Security Numbers (SSN) Individual Taxpayer Identification
                                                                                                                • Bank Feed shows redacted description numbers (xxxx)

                                                                                                                  Hi All, Is there any way to change this behaviour? Either Zoho or Yodlee is redacting important numbers from the transaction description, preventing us from being able to easily recognise and reconcile transactions. For example, a transaction with a description
                                                                                                                • Can I write a check in Zoho Books with no associated bill?

                                                                                                                  This currently does not seem possible, and I have a client that desperately needs this function if I am able to convert them with Quickbooks. Thank you in advance for your reply. 
                                                                                                                • Handling large product migrations in Zoho?

                                                                                                                  Hi everyone, How do you usually manage large product catalog migrations (10K+ SKUs) into Zoho One? Main concerns I’m thinking about: Avoiding downtime Preventing data loss Keeping supplier and product relationships intact Do you prefer bulk imports or
                                                                                                                • set up an opportunity progress bar in canva

                                                                                                                  Hi, set up an opportunity progress bar in canva I need help to set to reproduce the progress bar or equivalent of the opportunity steps in canva as in standard view (see capture ) Thank you in advance Amadou
                                                                                                                • Reassign Partially Saved Entries

                                                                                                                  Hi, I would like to be able to go to Partially Saved Entries and like the option to delete them I would like the option to multi-select and be able to reassign them to another user to complete (Such as when a user has left the company). Thanks Dan
                                                                                                                • Preventing auto-redirect to Parent Record on Save...

                                                                                                                  Our users often create records from the related list on th left side of the screen. They click the blue "plus" button to create the record. This is handy, but for some modules, or situations, they would like to remain on the record AFTER clicking "Save",
                                                                                                                • Introducing Version-3 APIs - Explore New APIs & Enhancements

                                                                                                                  New Update - The end of life timeline for V2 APIs has now been extended to 30th June, 2026 Happy to announce the release of Version 3 (V3) APIs with an easy to use interface, new APIs, and more examples to help you understand and access the APIs better.
                                                                                                                • Correlated subqueries not supported in Zoho Analytics. This creates huge limitations

                                                                                                                  Running into a major limitation in Zoho Analytics: correlated subqueries simply don’t work, even in completely standard SQL patterns inside a JOIN. Example: LEFT JOIN "Bills" b ON d."Id" = b."Deal ID" AND EXISTS ( SELECT 1 FROM "Bill
                                                                                                                • Unknown table or alias 'A1'

                                                                                                                  I would like to create a subquery but i am getting the following error: Unknown table or alias 'A1' used in select query. This is the sql statement:  SELECT A1.active_paying_customers, A1.active_trial_customers, A1.new_paying_signup, date(A1.date_active_customers), 
                                                                                                                • Feature announcement - Introducing recipient authentication via Didit in Zoho Sign

                                                                                                                  Hi everyone! Zoho Sign already integrates with trusted providers like IDology (US), eID Easy (EU), and Stripe Identity. Today, we're excited to add another powerful option: Didit. Some benefits of using Didit: Unified ID verification Streamlined eKYC
                                                                                                                • 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
                                                                                                                • Next Page