Kaizen #46 - Handling Notes through Zoho CRM API (Part 1/2)

Kaizen #46 - Handling Notes through Zoho CRM API (Part 1/2)

Hello everyone!
Welcome back to another week of Kaizen!
This week, we will discuss Handling Notes through Zoho CRM API.

What will you learn from this post?
  1. Notes in Zoho CRM
  2. Working with Notes through Notes APIs
1. Notes in Zoho CRM

1a. Why add Notes to records?
Notes are a great way to summarize your observations on customer and prospect interactions and outcomes. By saving notes as CRM data, a sales rep will always be able to keep track of how a sale is progressing. To know more about notes in Zoho CRM, click here

1b. Associated Modules
You can attach notes to the records in the following modules:
Leads, Accounts, Contacts, Deals, Campaigns, Tasks, Cases, Events, Calls, Solutions, Products, Vendors, Price Books, Quotes, Sales Orders, Purchase Orders, Invoices, and Custom.

2. Working with Notes through Notes APIs

Request URL to get all the notes from all the modules: {{api-domain}}/crm/v2/Notes
Request URL to get a specific note: {{api-domain}}/crm/v2/Notes/{note_id}
Request URL with pagination parameters: {{api-domain}}/crm/v2/Notes?page=2&per_page=200 //fetches note records from 201-400, based on their position in Zoho CRM

Request method: GET

Sample Response
{
    "data": [
        {
            "Owner": {
                "name": "Patricia Boyle",
                "id": "4150868000000225013",
                "email": "patricia.b@zohocorp.com"
            },
            "Modified_Time": "2020-07-28T11:58:59+05:30",
            "$attachments": null,
            "Created_Time": "2020-07-28T11:55:47+05:30",
            "Parent_Id": {
                "name": null,
                "id": "4150868000002567076"
            },
            "$editable": true,
            "$se_module": "Leads",
            "$is_shared_to_client": false,
            "Modified_By": {
                "name": "Patricia Boyle",
                "id": "4150868000000225013",
                "email": "patricia.b@zohocorp.com"
            },
            "$size": null,
            "$voice_note": false,
            "id": "4150868000002748029",
            "Created_By": {
                "name": "Patricia Boyle",
                "id": "4150868000000225013",
                "email": "patricia.b@zohocorp.com"
            },
            "Note_Title": "Contacted",
            "Note_Content": null
        }
    ],
    "info": {
        "per_page": 1,
        "count": 1,
        "page": 1,
        "more_records": true
    }
}

Response JSON Keys
Key
Description
Owner
JSON Object
Represents the name, ID, and email ID of the owner of the note. This is a read-only field.
Modified_Time
Date and time in ISO 8601 format
Represents the date and time at which the note was last modified. This is a read-only field.
$attachments
JSON array
Represents the details of the attachments of the note. 
Created_Time
Date and time in ISO 8601 format
Represents the date and time at which the note was created. This is a read-only field.
Parent_Id
JSON object
Represents the name and unique ID of the parent record.
$editable
Boolean
Represents if the current user has the permission edit notes.
$se_module
String
Represents the API name of the parent module.
$is_shared_to_client
Boolean
Represents if the note is shared with a client portal user
Modified_By
JSON Object
Represents the name, ID, and email ID of the user who last modified the note.This is a read-only field.
$size
Integer
Represents the size of the voice note in bytes, if any. 
$voice_note
Boolean
Represents if the current note has a voice note attached. 
id
String
Represents the unique ID of the note.
Created_By
JSON object
Represents the name, ID, and email ID of the user who created the note. This is a read-only field.
Note_Title
String
Represents the title of the note.
Note_Content
String
Represents the content of the note.

Request URL: {{api-domain}}/crm/v2/Notes
Request Method: POST

Sample Input
{
    "data": [
        {
            "Note_Title": "Contacted",
            "Note_Content": "Need to do further tracking",
            "Parent_Id": "4150868000002748005",
            "se_module": "Leads"
        }
    ]
}

Input JSON Keys
Key
Description
Note_Title
String
The title of the note.
Note_Content
String
The note content.
Parent_Id
String
The unique ID of the parent record.
se_module
String
The API name of the parent module.

Things of note
  1. You cannot add values for the following read_only fields: Owner, Modified_Time, Created_Time, Modified_By, and Created_By.
  2. You can create a maximum of 100 notes per API call.
Sample Response


Request URL: {{api-domain}}/crm/v2/Notes
Request URL to update a specific note: {{api-domain}}/crm/v2/Notes/{note_id}

Request Method: PUT

Sample input to update a specific note:
{
    "data": [
        {
            "Note_Title": "Contacted",
            "Note_Content": "Junk Lead"
        }
    ]
}

Sample Response


Things of note
  1. When you update multiple notes, add "id" of the note in the request body. You can retrieve it using Get Notes API
  2. You can update only two fields of a note: Note_Title and Note_Content. You cannot update values for the following read_only fields: Owner, Modified_Time, Created_Time, Modified_By, and Created_By.
  3. You can update a maximum of 100 notes per API call.
Request URL: {{api-domain}}/crm/v2/Notes?ids={id1,id2,..}
Request URL to delete a specific note: {{api-domain}}/crm/v2/Notes/{note_id}

Request Method: DELETE

Sample Response


Things of note
  1. You can delete a maximum of 100 notes per API call.
We hope you found this post useful. Write to us at support@zohocrm.com if you have any questions, or let us know in the comment section.

Cheers!





    • Sticky Posts

    • Kaizen #217 - Actions APIs : Tasks

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

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

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

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

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

    • Contact custom field in layout

      Good day, all, I have an "Extension" custom field in contacts, and would like to display the contact extension in the ticket layout, but I don't seem to be able to. What am I missing? Thanks Rudy
    • Exact match in name when searching workdrive

      Hello, I am wondering how to search workdrive files/folders with an exact match in the name. For example, when I search across folder with the url param search[name]=someName, I get multiple results such as "someName", "someNameAndMore", or "someName
    • Meeting impossible to use when sharing screen

      he Meeting tool in Brazil is practically unusable when sharing anything, whether it’s a presentation or simple navigation. When accessed via Cliq, the situation gets even worse: even basic calls fail to work properly, constantly freezing. And as you are
    • Changing the Default Search Criteria for Finding Duplicates

      Hey everyone, is it possible to adjust the default search criteria for finding and merging duplicate records? Right now, CRM uses some (in my opinion nonsensical) fields as search criteria for duplicate records which do nothing except dilute the results.
    • Is there a way to create a desktop shortcut for a website course portal?

      Hello everyone, I recently got a laptop and bought an online course from a website, Skillwint.com, which I visit regularly. I open that site many times a day and want to create a desktop shortcut so I can open it directly instead of searching in the browser
    • SalesIQ Tip for Admins: Your Safety Net for Data Recovery

      Ever clicked 'Delete' in your SalesIQ and then realized it was the wrong item? Maybe it was a prospect's chat that held important context you needed to refer to later on. Or, maybe you deleted an elaborate Zobot that you were still testing or planning
    • Depreciated mergeAndStore Function Help!

      Hello, I have a function designed to create a PDF containing information from the fields in a Deals record. There is a Writer Mail Merge template in WorkDrive that is populated via Deluge code, and a copy of the resulting PDF is then attached to the record.
    • Can I execute two 'functions' when completing a mail merge from CRM?

      Hi, I have set up a mail merge from CRM Deals to a template. I want a copy of this to be saved in Workdrive, and then a copy also saved back into the deal record from which the merge occurred. I can do both independent of each other, and managed to get
    • External Share > Edit: Cannot Create Zoho Files

      Hi Zoho, When we create an external share link with Edit permission, our external users are unable to create a Zoho file (Zoho Writer, Zoho Sheet and Zoho Show). They can only upload files. They can edit the Zoho files if we create them internally and
    • Zoho Mail iOS app update - RTL languages support and access emails using permalink and universal link, image upload resolution

      Hello everyone! In the most recent version of the Zoho Mail iOS app update, we have brought in support for RTL languages(Arabic and Urudu), providing a seamless reading experience with proper text alignment and layout throughout the app. We have also
    • Why are emails sending with @viazohocrm.com ?

      I just sent out mass emails from CRM. They are sending from the email below and people cannot reply, and they are getting this message: Address not found Your message wasn't delivered to sales.XXXXXXXX.com.au@viazohocrm.com because the address couldn't
    • Duplicating and referencing datasets

      I am moving from PowerBI to Zoho Analytics and while I find Zoho easier to use in many ways, there is one function that I use in PowerBI that I have not been able to find in Zoho.   I have several data sets that I need to modify in different ways to get
    • Zoho Inventory Now Supports VeriFactu for Businesses in Spain

      Starting from January 1, 2026, Spain requires real-time invoice reporting for all B2B transactions. From July 2026, this requirement will extend to B2C transactions as well. All reporting must be carried out through the VeriFactu to AEAT (Agencia Estatal
    • Why am I seeing deleted records in Zoho Analytics syncing with Zoho CRM?

      I have done a data sync between Zoho CRM and Zoho Analytics, and the recycle bin is empty. Why do I see deleted leads/deals/contacts in Zoho Analytics if it doesn't exist in Zoho CRM? How can I solve this problem? Thanks
    • Enhancements to Zoho Map integration tasks

      Hello everyone, We're excited to announce enhancements to the Zoho Map integration tasks in Deluge, which will boost its performance. This post will walk you through the upcoming changes, explain why we're making them, and detail the steps you need to
    • Let’s Talk Recruit: Meet Zia, your all-in-one AI assistant (Part-3)

      Welcome back to the Let’s Talk Recruit series. In the part 2 post, we explored how Zia has evolved with smarter summaries and seamless AI-assisted content creation. This time, we’re diving into the latest upgrades that take productivity even further —
    • Announcing Early Access to "Zoho CRM for Everyone" — A new and exciting update to Zoho CRM

      Update : Zoho CRM For Everyone's Nextgen Interface gets an upgrade! Hello everyone, We’ve updated the Zoho CRM for Everyone Nextgen interface based on your feedback. The UI is now simpler with a unified sidebar, a more visible global search and features
    • Unable to verify domain for Zoho People

      I have added TXT records in my DNS (GoDaddy) [screenshot attached], but unable to verify even after 12 hours after adding. On checking the console, it shows some errors [screenshot attached]. It appears that the verification flow is broken - please provide
    • Zoho Invoice Now Supports VeriFactu for Businesses in Spain

      Starting from January 1, 2026, Spain requires real-time invoice reporting for all B2B transactions. From July 2026, this requirement will extend to B2C transactions as well. All reporting must be carried out through the VeriFactu to AEAT (Agencia Estatal
    • Zoho Billing Now Supports VeriFactu for Businesses in Spain

      Starting from January 1, 2026, Spain requires real-time invoice reporting for all B2B transactions. From July 2026, this requirement will extend to B2C transactions as well. All reporting must be carried out through the VeriFactu to AEAT (Agencia Estatal
    • Weekly Tips : Make your email content error free with Spell check in Zoho Mail

      As someone who writes multiple emails a day, we are bound to make both grammatical and spelling errors. Most of them we may not even notice, and even if we do, we may not have the time to correct each one individually when we are in a hurry. So how do
    • Introducing Enhanced Storage Management

      We’re excited to roll out two new enhancements in Zoho Recruit, Subscription Information and Storage Management — designed to give admins complete visibility into subscription details, feature limits, and storage consumption — all from one place inside
    • how to download all my files

      We are in the middle of zoho docs to zoho workdrive migration. I can not access my zoho docs page. I get redirected immediately to a zoho workdrive page. I would like to download all my files so that I have a backup in case something goes wrong with the
    • Convert Zoho Books SalesOrder - Invoice

      Converting a Zoho Books Sales Order into an Invoice Using the SalesOrder Convert API Hello Zoho Developers, Today, we are sharing a simple and effective solution to convert a Zoho Books Sales Order into a Zoho Books Invoice using the SalesOrder Convert
    • Zoho Expense - Report Templates

      Hi Expense Team, I do a recurring trip once every week which has the same cost: Per diem Milage Toll Payment It would be great if there was a feature which allowed me to clone a previously submitted report or create a template reports. This would save
    • How to add tabular data when execute Add Record API

      Hi everyone! I was send api updateRecord follow by this request url : https://people.zoho.com/people/api/forms/json/<formLinkName>/updateRecord with parameters "inputData", "tabularData", "recordId". Ex picture below And response success: But. When I
    • Tip #51- Centralized Contact Management for Better Remote Support- 'Insider Insights'

      For our final topic of November, we’re diving into one of the most helpful features in Zoho Assist, the Contacts section on Zoho Assist;s dashboard. Whether you’re managing multiple clients, tracking past sessions, or simply looking to streamline your
    • Using gift vouchers

      We would like to be able to offer a limited number of gift vouchers, of varying values, to our customers, and are looking for the best way to do this. We have looked at Coupons and Gift Certificates, but neither seem to fit the bill perfectly. Coupons:
    • Say Hello to Telephony in Zoho FSM

      Zoho FSM now brings complete telephony support so your team can manage inbound and outbound calls without switching tabs. Faster responses, smarter routing, and total call visibility—all in one place. Choose the telephony setup that works for you Zoho’s
    • Zoho Sign - Zoho CRM extension upgrade

      Hi everyone, We've updated Zoho Sign extension for Zoho CRM with significant internal changes. Impact on existing Zoho Sign extension users Users using the extension without customization If you are using the integration without implementing Zoho Sign's
    • E-Invoicing in Belgium with Zoho Inventory

      Starting January 1, 2026, Belgium is introducing mandatory electronic invoices (e-invoicing) for all B2B transactions between VAT-registered businesses. Invoices and credits notes must be exchanged in a prescribed digital format. How E-Invoicing Works
    • Employee ID is not correct in get records api V2 for leave

      Hi Team, We are facing an issue when calling the Get Records API V2. The employee.id returned in the response is not the actual employee record ID in Zoho People. As a result, our integration is forced to make an additional Get Record API call for every
    • Formatting Mailing Labels

      I want to use the "Print Mailing Labels" function on the drop down list, but I am not seeing a way to change the formatting on the mailing labels. At the moment, the information that appears on the mailing labels ARE NOT mailing addresses, but random
    • Zoho People. Updating TabularData

      I am trying to update tabular data in the record. I always have the same response. I have checked many times. Section ID is correct. May be something wrong with request structure itself. Can someone help me. Body content type: form urlencoded query params
    • Canvas View - Print

      What is the best way to accomplish a print to PDF of the canvas view? Latest update (27th November 2025): We are excited to announce that the Canvas Print View is now available! We encourage you all to try it out and share your feedback with us. Learn
    • New to automation - please help

      Hi there! We are new to automations in Zoho. We built out one automation campaign and it seems to be firing off for some people but others not. Please advise what's the best practice or if anything we should tweak. Thank you so much!
    • Zia Conversation Summary: Context at a glance for every customer interaction

      Hello everyone! Every customer conversation tells a story—but in CRM, that story is rarely in one place. A sales rep moving between multiple leads has to reopen long email threads, check call remarks, and revisit meeting notes just to remember what was
    • How to set a fixed width of column/cells

      Is there a way to set a 'fixed' width for cells in zoho sheet?   I know how to adjust the size of the colums.... but after I past a large block of text into a cell, it expands the cell size again. (yes, I have turned off word wrap)   How can I set a fixed width so the cells don't change size each time I add data to a cell?   Thanks.
    • Workdrive Oauth2 Token Isn't Refreshing

      I have set up oauth for a bunch of zoho apis and have never had a problem with oauth. With workdrive i am using the exact same template i usually use for the other zoho apps and it is not working. All requests will work for the first hour then stops so
    • Single Portal for Multiple Apps

      Hello, I'm just getting started with Zoho and I'm very overwhelmed. I am currently using the free trial of Zoho One, but if I can figure it out, I intend to upgrade to the paid version. Zoho One, of course, gives me  access to an entire suite of services/applications. One of the things I'd like to do is have a single place for clients (customers?) to log in and view current projects, invoices, contact information, etc. A single login for my clients. A single portal. I've come across documentation
    • Next Page