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

        • Using data fields in Zoho Show presentations to extract key numbers from Zia insights based on a report created

          Is it possible to use data fields in Zoho Show presentations along with Zoho Analytics to extract key numbers from Zia insights based on a report created? For example, using this text below: (note that the numbers in bold would be from Zia Insights) Revenue
        • Free webinar: AI-powered agreement management with Zoho Sign

          Hi there! Does preparing an agreement feel like more work than actually signing it? You're definitely not alone. Between drafting the document, managing revisions, securing internal approvals, and rereading clauses to make sure everything still reflects
        • WhatsApp Channels in Zoho Campaigns

          Now that Meta has opened WhatsApp Channels globally, will you add it to Zoho Campaigns? It's another top channel for marketing communications as email and SMS. Thanks.
        • CRM For Everyone - Bring Back Settings Tile View

          I've been using CRM for Everyone since it was in early access and I just can't stand the single list settings menu down the left-hand side. It takes so much longer to find the setting I need. Please give users the option to make the old sytle tile view
        • Lets have Dynamics 365 integration with Zohobooks

          Lets have Dynamics 365 integration with Zohobooks
        • Add notes in spreadsheet view

          It would be great if we could Add/edit notes in the spreadsheet view of contacts/leads. This would enable my sales teams to greatly increase their number of calls. Also viewing the most recent note in the Contact module would also be helpful.
        • Opening balances - Accounts Receivable and Payable

          Our accounting year starts on 1st August 2013 and I have a Trial Balance as at that date, including Accounts Receivableand Accounts Payable balances, broken down by each customer and supplier. Q1 - do I show my opening balance date as 31st July 2013 or
        • Announcing Kiosk 1.1 - Customize screen titles, configure new fields & actions, use values from your Kiosk to update fields, and more.

          Hello all We are back again with more enhancements to Kiosk. So what's new? Enhancements made to the Components Add titles for your Kiosk screens and adjust its width to suit your viewing preferences. Three new fields can be added to your screen: Percentage,
        • Limited System because of Limited Number of Fields for Car Dealership

          Dear Zoho Support, we want to have all the information about a car inside of a car record. We want to have Zoho CRM as our single source of truth for our data, but the limited number of fields are not allowing that. The data consist of: technical data
        • Cancel Subscription

          Hi , Im want to cancel my account but without success please help me to do it
        • Making an email campaign into a Template

          I used a Zoho Campaign Template to create an email. Now I want to use this email and make it a new template, but this seems to be not possible. Am I missing something?
        • Direct Access and Better Search for Zoho Quartz Recordings

          Hi Zoho Team, We would like to request a few enhancements to improve how Zoho Quartz recordings are accessed and managed after being submitted to Zoho Support. Current Limitation: After submitting a Quartz recording, the related Zoho Support ticket displays
        • Multiple Cover Letters

          We are using the staffing firm edition of Recruit and we have noticed that candidates cannot add more than one cover letter. This is a problem as they might be applying for multiple jobs on our career site and when we submit their application to a client,
        • URGENT: Deluge issue with Arabic text Inbox

          Dear Deluge Support, We are facing an issue that started on 12/Feb/2026 with custom functions written using Deluge within Qntrl platform. Currently, custom functions do not accept Arabic content; it is replaced with (???) characters. Scenario 1: If we
        • File Conversion from PDF to JPG/PNG

          Hi, I have a question did  anyone every tried using custom function to convert a PDF file to JPG/PNG format? Any possibility by using the custom function to achieve this within zoho apps.  I do know there are many third parties API provide this with
        • Now in Zoho One: Orchestrate customer journeys across apps with Zoho CommandCenter

          Hello Zoho One Community! We’re excited to introduce Zoho CommandCenter as a new capability available in Zoho One. For the whole customer journey As Zoho One customers adopt more apps across sales, marketing, finance, and support, a common challenge emerges:
        • annualy customer report

          we need a report per customer that looks like this invoic number cleaning laundry repair management 01 january xxx euro xx euro xx euro xxx euro 02 february xxx euro xxx euro x euro xxxx euro and so on the years 12 months is that possible to make and
        • Totals for Sales Tax Report

          On the sales tax report, the column totals aren't shown for any column other than Total Tax. I can't think of a good reason that they shouldn't be included for the other columns, as well. It would help me with my returns, for sure. It seems ludicrous
        • Free Webinar: Zoho Sign for Zoho Projects: Automate tasks and approvals with e-signatures

          Hi there! Handling multiple projects at once? Zoho Projects is your solution for automated and streamlined project management, and with the Zoho Sign extension, you can sign, send, and manage digital paperwork directly from your project workspace. Join
        • Exported Report File Name

          Hi, We often export reports for information. It is time consuming to rename all the reports we export on a weekly basis, as when exported their default name is a seemingly random string of numbers. These numbers may be important, I'm not sure, but I am
        • Automatic Refresh on Page?

          Hi everyone, We use a page as a dashboard which shows data for the laboratory and tasks pending etc. Is there a way to set the page to automatically refresh on a X time? Many thanks TOG
        • Hiding Pre-defined Views

          You can enhance Zoho with custom views - but you cannot hide the pre-defined views. Most users focus on 4 or 5 views. Right now for EVERY user EVERY time they want to move to one of their 4 or 5 views - they have to scroll down past a long list of pre-defined views - we don't use ANY of the pre-defined views. Adding the feature to allow a predefined view to be hidden completely or only visible to certain users would be a big improvement in usability for Zoho CRM. This feature is already available
        • How do I edit the Calendar Invite notifications for Interviews in Recruit?

          I'm setting up the Zoho Recruit Interview Calendar system but there's some notifications I don't have any control over. I've turned off all Workflows and Automations related to the Calendar Scheduling and it seems that it's the notification that is sent
        • Add RTL and Hebrew Support for Candidate Portal (and Other Zoho Recruit Portals)

          Dear Zoho Recruit Team, I hope you're doing well. We would like to request the ability to set the Candidate Portal to be Right-to-Left (RTL) and in Hebrew, similar to the existing functionality for the Career Site. Currently, when we set the Career Site
        • App for Mac OS X please!

          It would be awesome to have a mail app for Mac OS X that included all the cool features such as steams, calendar, tasks, contacts, etc. Most people prefer native apps, rather than running it through a web browser. I know that we can use the IMAP, CalDAV,
        • How to integrate Zoho CRM, Zoho Forms and a WIX Web Site

          Attached video demonstrates how to use Zoho Forms included in Zoho One, to design a Contact Us form to be embedded into a WIX web site and integrated into Zoho CRM.
        • 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
        • Introducing Workqueue: your all-in-one view to manage daily work

          Hello all, We’re excited to introduce a major productivity boost to your CRM experience: Workqueue, a dynamic, all-in-one workspace that brings every important sales activity, approval, and follow-up right to your fingertips. What is Workqueue? Sales
        • Default Reminder Time in New Tasks or New Event?

          Any way to change this from 1:00am? Thanks, Gary Moderation Update (February 2026): With the Calendar preferences, the default reminder time for Meetings, Appointments and All-Day Meetings can be set. Read more: Calendar preferences in Zoho CRM Regarding
        • Dynamic Field Folders in OneDrive

          Hi, With the 2 options today we have either a Dynamic Parent Folder and lots of attachments all in that one folder with only the ability to set the file name (Which is also not incremented so if I upload 5 photos to one field they are all named the same
        • Right Shift key not sending to Zoho Assist environments

          I'm unable to use Right Shift key in Zoho environments. Zoho environments are Win10. Computer I access from is Win 11. Issue started when I changed to Win 11. Have tried: - Multiple browsers - web client AND desktop client - 3rd party mapping tools to
        • Unable to Filter Retail Sales Orders & Need Paid/Unpaid Filter – Zoho Books

          Hi Zoho Team, Recently you introduced Retail – Standard and Retail – Premium templates for Sales Orders. However, in the Sales Order module we still cannot filter or segregate Retail Sales Orders separately from normal B2B sales orders. Because of this,
        • About Meetings (Events module)

          I was working on an automation to cancel appointments in zoho flow , and in our case, we're using the Meetings module (which is called Events in API terms). But while working with it, I'm wondering what information I can display in the image where the
        • PDF Annotation is here - Mark Up PDFs Your Way!

          Reviewing PDFs just got a whole lot easier. You can now annotate PDFs directly in Zoho Notebook. Highlight important sections, add text, insert images, apply watermarks, and mark up documents in detail without leaving your notes. No app switching. No
        • Ability to assign Invoice Ownership through Deluge in FSM

          Hi, As part of our process, when a service appointment is completed, we automated the creation of the invoice based on a specific business logic using Deluge. When we do that, the "Owner" of the invoice in Zoho FSM is defaulted to the SuperAdmin. This
        • How do you do ticket add ons in Backstage?

          Hi Everyone, If you wanted to have general admin tickets and allow for add ons, like camping, or car or Carbon offset. What would you do? Peace Robin
        • From Zoho CRM to Paper : Design & Print Data Directly using Canvas Print View

          Hello Everyone, We are excited to announce a new addition to your Canvas in Zoho CRM - Print View. Canvas print view helps you transform your custom CRM layouts into print-ready documents, so you can bring your digital data to the physical world with
        • validation rules doesn't work in Blueprint when it is validated using function?

          I have tried to create a validation rule in the deal module. it works if I try to create a deal manually or if I try to update the empty field inside a deal. but when I try to update the field via the blueprint mandatory field, it seems the validation
        • Pull cells from one sheet onto another

          Hello all! I have created an ingredients database where i have pricing and information and i want to pull from that database into a recipe calculator. I want it to pull based on what ingredient I choose. The ingredients database has an idea and i want
        • 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
        • Next Page