Kaizen #57 - Mass Update API in Zoho CRM

Kaizen #57 - Mass Update API in Zoho CRM

Hello everyone!

Welcome back to yet another post in the Kaizen series.
This week, we will discuss the Mass Update API in Zoho CRM.

In this post, we will cover the following:
1. Introduction
2. Mass Update Records API 
3. Schedule Update and Get Status
4. Common errors pertaining to the Mass Update API
5. FAQs regarding the Mass Update API

1. Introduction

Generally, there can be cases where you might need to update the same field for multiple/all records in a module. To avoid the tediousness of the task, Zoho CRM offers Mass Update API to update the values of specific fields in multiple records in a module. The request requires field API names, record IDs, the custom view ID, and territory ID as input depending on the type of mass update you intend to perform. 

Mass Update can occur in 2 different ways:
a. Scheduler Type: When you specify the custom view ID and the territory ID, a job gets scheduled in the background. In the response, the system returns a "job_id" which you can use to get the status of the same. Use this job_id in the GET request to get the result. In this type of mass update, You can update a maximum of 50,000 records in a single request.

b. Non-Scheduler Type: When you specify the record IDs, the system updates the records instantly. You can update a maximum of 500 records in a single API call in this type of mass update. 

Modules supporting Mass Update APIs:
Leads, Accounts, Contacts, Deals, Campaigns, Activities, Solutions, Products, Vendors, Price Books, Quotes, Sales Orders, Purchase Orders, Invoices, and Custom.

2. Mass Update Records API

Request URL: {{api-domain}}/crm/v2/{module_api_name}/actions/mass_update

Scope Required: 
ZohoCRM.mass_update.{module_name}.UPDATE

Request JSON keys:
Key
Data Type
Description
Mandatory
cvid
string
The custom view ID whose records you want to mass update
Mandatory when you want to mass update custom view fields.
over_write

boolean
Used when updating a multi-select picklist field. Providing true will overwrite the already present value while the default false value will add the value to the pick list
Optional
territory
JSON Object
Used to update the records in a territory.
Mandatory when you update territory fields.
ids
JSON Array
Specify the IDs of the records you want to mass update. A maximum of 500 IDs can be specified in the request.
Mandatory when records are updated by IDs.

Sample Request:
{{api-domain}}/crm/v2/Leads/actions/mass_update

Sample Response:


3. Schedule Update and Get Status

Let us see how to schedule a mass update by custom view ID and check it's status:

i. Schedule mass update using 'cvid' and retrieve the 'job_id'.

Sample Request: 
{{api-domain}}/crm/v2/Leads/actions/mass_update

Sample Response:

From the response, you can see that the mass update is scheduled and the job_id to check status is 3719520000001274002

ii. Check status of the scheduled Mass Update

Request URL: 
{{api-domain}}/crm/v2/{module_api_name}/actions/mass_update?job_id={job_id}

Scope Required:
ZohoCRM.mass_update.{module_name}.READ

Note: job_id is the only mandatory parameter that must be passed to obtain the status of the process. 

Sample Request: 
{{api-domain}}/crm/v2/Leads/actions/mass_update?job_id=3719520000001251XXX

Sample Response:
i. Response right after the mass update is scheduled. The status in the response is SCHEDULED.


ii. Response once the schedule is completed. The status in the response is COMPLETED.


Response JSON Keys
Key
Description
Status
Indicates the status of mass update. Possible values are COMPLETED, SCHEDULED, RUNNING, and FAILED.
Failed_Count
Specifies the number of records that failed to be mass updated.
Updated_Count
Specifies the number of records that were successfully mass updated.
Not_Updated_Count
Specifies the number of records that are not updated yet.
Total_Count
Specifies the total number of records that were scheduled to be mass updated

4. Common errors pertaining with the Mass Update APIs and ways to handle them

HTTP Status Code
Error Code
Message
Reason
403
NO_PERMISSION
Field Edit Permission not given
User does not have permission to edit the field
403
NO_PERMISSION
Customview not accessible
Custom view is not accessible to the user of the module
400
NO_RECORDS_FOUND
No record found to update
There are no records in the specified custom view
200
ALREADY_SCHEDULED
Already a Mass Action scheduler is running for the given cvid
The records in the custom view specified are already scheduled for a mass update.
200
LIMIT_EXCEEDED
Record count exceeded
Number of records that can be mass updated has exceeded the maximum allowed limit of 50000
200
RECORD_IN_BLUEPRINT
The record is in blue print
The specified record is in blueprint and user tries to update a blueprint picklist value


5. FAQs regarding Mass Update API

Q. What happens if some record IDs that I provide are invalid?
A: While mass updating records based on their IDs, if some of the record IDs are invalid only those records will not be processed.
Sample Response when one of the ID is invalid:


Q. Can I mass update the email field in the module?
A. No, you cannot mass update Email field. The other fields that cannot be processed for mass update are lookup fields, layout fields, multi line fields, and line items.

Q. Is it possible to mass update the account owner via Zoho CRM API?
A: No, you cannot mass update the account owner via Zoho CRM API. It throws the following error:
{
    "data": [
        {
            "code": "INVALID_DATA",
            "details": {
                "api_name": "Account_Owner"
            },
            "message": "This field cannot be updated in the Mass Update",
            "status": "error"
        }
    ]
}

Q. How to set the scope for custom modules?
A. The process is similar to that of setting scope for any standard module. The scope for Mass Update API is ZohoCRM.mass_update.{module_name}.UPDATE/READ. Hence, for example, if your custom module name is 'Clients', the scope would be 'ZohoCRM.mass_update.Clients.UPDATE/READ

Q. Can I have more than one mass update job for a custom view?
A. No, only one mass update job can happen on a custom view at a given time. An error is thrown with the error code 'ALREADY_SCHEDULED'. 

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

Cheers!









    • Recent Topics

    • Recurring Automated Reminders

      Hi, The reminders feature in Zoho Books is a really helpful feature to automate reminders for invoices. However, currently we can set reminders based on number of days before/after the invoice date. It would be really helpful if a recurring reminder feature
    • Fail to send Email by deluge

      Hi, today I gonna update some email include details in deluge, while this msg pops up and restrict me to save but my rules has run for one year. can you tell me how to use one of our admin account or super admin account to send the email? I tried to update
    • Transitions do not update fields until the record moves to next stage

      We have a blueprint where a couple of stages have multiple transitions. If only some of the transitions are completed, but not all, Zoho does not update any of the fields impacted by the completed transitions. Is there any way Zoho can udate the fields
    • Zoho CRM - Kiosk Studio : Use action responses across your kiosks with sequential actions

      Hello Everyone, Imagine building a kiosk that gives you full control over how actions are executed in later screens in that same kiosk. What if you could use data from a previous action later in that kiosk—with no interruptions or data gaps? This is exactly
    • Ability to CC on a mass email

      Ability to CC someone on a mass email.
    • Get Cliq Meetings in my O365 calendar

      Hi, we are currently evaluating to replace the Teams Messaging and Meetings with Cliq. We currently still have all our email and calendars in O365. What i want to achieve is, to create a (ZOHO) meeting from Cliq and have this meeting added to my Outlook/O365
    • Custom Button to convert a Deal to a Custom Module?

      Hello Community I am in process of building out a custom CRM for my team and part of this is looking at building out a Custom Button or function of some sort where when a Deal is marked Closed Won the system will allow for a "Convert to Job" option to
    • Power up your Kiosk Studio with Real-Time Data Capture, Client Scripts & More!

      Hello Everyone, We’re thrilled to announce a powerful set of enhancements to Kiosk Studio in Zoho CRM. These new updates give you more flexibility, faster record handling, and real-time data capture, making your Kiosk flows smarter and more efficient
    • Emails Failing with “Relaying Issues – Mail Sending Blocked” in ZeptoMail

      Hello ZeptoMail Support Team, We are facing an email delivery issue in our ZeptoMail account where emails are failing with the status “Process failed” and the reason “Relaying issues – Mail sending blocked.” Issue Details Agent Name: mail_agent_iwwa From
    • Change eMail Template for Event-Invitations

      Hello ZOHO-CRM Team How I can change the eMail Template for Event-Invitations? I work with the German Version of the Free Version. I know how I can modify eMail alerts or Signature Templates, but where I can other eMails modify you send out? Thank you
    • 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
    • Migrate Your Notes from OneNote to Zoho Notebook Today

      Greetings Notebook Users, We’re excited to introduce a powerful new feature that lets you migrate your notes from Microsoft OneNote to Zoho Notebook—making your transition faster and more seamless than ever. ✨ What’s New One-click migration: Easily import
    • How can I import OLM to Yandex Mail easily?

      For migrating Mac Outlook OLM data to Yandex Mail efficiently, the Aryson OLM Converter is a reliable professional tool that ensures complete data integrity throughout the process. Unlike manual methods, which can risk inconsistent formatting or missing
    • Introducing Radio Buttons and Numeric Range Sliders in Zoho CRM

      Release update: Currently out for CN, JP, AU and CA DCs (Free and standard editions). For other DCs, this will be released by mid-March. Hello everyone, We are pleased to share with you that Zoho CRM's Layout Editor now includes two new field formats—
    • Is it possible to setup bin locations WITHOUT mandating batch tracking?

      Hi fellow zoho users, I'm wondering if anyone else has a similar issue to me? I only have some products batch tracked (items with shelf life expiry dates) but I am trying to setup bin locations for my entire inventory so we can do stock counting easier.
    • Implementing Inventory Process

      I am just starting to create an inventory system through Zoho for a nonprofit. We receive in-kind donations of items for kids, and utilize them in 2 or 3 different programs. Then families come in and take the items. I'm thinking of this structure: Our
    • Best way to start zoho inventory with bulk openning stock

      We are already using zoho book since long time for cars trading company. Now to streamline more, would like to import the excel data of closing stock of inventory to zoho inventory and to start on. Since we need to track each VIN (unique vehicle id number)
    • Service Reports.

      Hello Team, I have a requirement to create multiple service reports for a single AP. That means, in one AP I have 5 service line items, and all line items are linked to assets. Once I complete the AP, I want to generate 5 individual service reports, one
    • Blueprint enhancements - Parallel and multiple transitions, and more

      Last modified on Sep 4, 2023: All Zoho CRM users can now access these enhancements. Initially, these features were available only on an early access basis and by request. However, as of August 2, 2023, they have been made available to all users in all
    • Item Bulk Edit - Allow for Reorder Level

      We're implementing a process for using the Reorder Level field for Items, and I have to go through and add this value to a huge chunk of our Items. It's driving me bonkers that I have to do this individually through the UI rather than bulk updating. It
    • Zoho CRM || Unable to Bulk Assignment of Territories for Contacts

      Dear Zoho CRM Support Team, I hope this email finds you well. We recently performed a bulk upload of Contacts into Zoho CRM using the official sample Excel template downloaded from the CRM. The upload itself was completed successfully; however, we encountered
    • What's New in Zoho Inventory | August – October 2025

      Hello customers, The last quarter has been incredibly productive! We've released a powerful slate of new features and enhancements in Zoho Inventory designed to give you better control, greater efficiency, and expanded functionality across your inventory
    • Disable Zoho Inventory Tracking / Delink Zoho Books & Inventory

      We have integrated zoho inventory with zoho books? Now after a long time, we want to disable inventory tracking and delink these 2 modules. Zoho says we cant do it. Anybody else going thru the same ? Any possibility at all? Why does zoho not allow to
    • Tracking Non-Inventory Items

      We have several business locations and currently use zoho inventory to track retail items (sales and purchase orders). We were hoping to use zoho inventory to track our non-inventory items as well (toilet paper, paper towels, etc). I understand that we
    • Price Managment

      I have been in discussions with Zoho for some time and not getting what I need. Maybe someone can help explain the logic behind this for me as I fail to understand. When creating an item, you input a sales rate and purchase rate. These rates are just
    • Set Warehouse based on Vendor

      Greetings. I would like to set automaticaly the Warehouse based on the Vendor. Context: I am working on an adaptation of a Purchase Order to be used as a Quotation. I have defined that when a user has to raise a quote the Vendor will be "PROCUREMENT" I would like to set the Warehouse to a predefined value when "PROCUREMENT" is set as Vendor. I have tried to do with the Automation feature using the Field Update option, but Warehouse does not is listed as a field. Can you help? Thanks in advance.
    • Auto tagging

      Some of the articles I enter into Notebook get there when I enter them in Raindrop.io and IFTTT copies the articles in Notebook. When this happens the notes are tagged but instead of useful one word tags with topic the tag pertains to the specific article
    • How do I save audio files to my PC that I record into Zoho Notebook from my phone?

      I was thinking of using Zoho Notebook as a way to store composition ideas, as well as for other things if it can handle this. For this to be useful for me though, I need to be able to have an easy way to download those audio files to my PC, either individually
    • Search mails in shared mailbox

      Hi everyone, is there a way to search mails in shared mailbox's? Search in streams or mail doesn't return anything from mails in shared mailboxes. Thanks! Rafal
    • Kaizen #186 : Client Script Support for Subforms

      Hello everyone! Welcome back to another exciting Kaizen post on Client Script! In this edition, we’re taking a closer look at Client Script Support for Subforms with the help of the following scenario. " Zylker, a manufacturing company, uses the "Orders"
    • Writing SQL Queries - After Comma Auto Suggesting Column

      When writing SQL Queries, does anyone else get super annoyed that after you type a comma and try to return to a new line it is automatically suggest a new column, so hitting return just inputs this suggested column instead of going to a new line? Anyone
    • Convert invoice from zoho to xml with all details

      How to convert an Invoice to XML format with all details
    • Sync your Products Module for better context.

      In customer support, context is everything. The integration between Zoho Desk and Zoho CRM helps your sales and support teams function as one, delivering better customer experiences. With the latest update to this integration, you can now sync the Product module in your Zoho CRM with your Zoho Desk portal. This feature enables products from Zoho CRM to reflect in the "product" field in Zoho Desk. This can save your support team valuable time and effort.    Some things to note when syncing the two:
    • Where is the desktop app for Zoho Projects???

      As a project manager, I need a desktop app for the projects I manage. Yes, there's the web app, which is AWESOME for cross browser and platform compatibility... but I need a real desktop app for Projects that allow me to enter offline information where
    • CRM verify details pop-up

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

      I want to add a drop down field in Zoho writer. Is this possible?
    • Multiple header in the quote table???

      Hello, Is it possible in Zoho CRM to add multiple headers or sections within the Quote product table, so that when the quote is printed it shows separate sections (for example “Products” and “Services”)? To clarify, I’m asking because: This does not appear
    • openUrl in blueprints

      My customer wants to open a URL at the end of a blueprint transition. Seems this isn't possible right now but it would be very useful. In this thread, https://help.zoho.com/portal/en/community/topic/openurl-not-working the Zoho agent said that it's logically
    • Dropshipping Address - Does Not Show on Invoice Correctly

      When a dropshipping address is used for a customer, the correct ship-to address does not seem to show on the Invoice. It shows correctly on the Sales Order, Shipment Order, and Package, just not the Invoice. This is a problem, because the company being
    • Prepayment of a sales order

      How does everyone handle this common (at least it is common for us!) situation? We require all our orders to be fully prepaid before shipment since we manufacture made to order, custom products. Since ZOHO does not allow a sales order to be prepaid, we are forced to create an invoice at the time an order is placed to allow the customer to pay it. Our sales category is therefore skewed, since the sale was actually booked at the time an order was placed, rather then at the time it is shipped, which
    • Next Page