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

    • How to increase my Zoho sign limit.

      I cannot send a document/contract for signature. Zoho sign says I reached my monthly limit. May I know how to fix this please? Thanks! 
    • Can not add m365 outlook account to zohomail.

      I am attempting to use zoho mail as an imap client to add my outlook.com m365 account. In the m365 exchange admin center i have made sure the imap is enabled. In zoho mail i go to settings, mail accounts, add account, add imap account, i select "outlook",
    • Unable to attach Work Order / Service Appointment PDF to Email Notifications (Zoho FSM)

      I’m trying to include the Work Order PDF or Service Appointment PDF as an attachment in Email Notifications (automation/notification templates), but I don’t see any option to attach these generated PDFs. Is this currently supported in Zoho FSM? If not,
    • local file csv import problem

      The issue occurs when I upload a CSV file via Databridge. In the preview, everything looks correct — the values are in the proper columns. However, after clicking Import, the first column becomes empty, and the values from that column appear in a new
    • Función Deshacer y Rehacer

      Hola. Soy un reciente usuario de Zoho Notebook que he migrado desde Evernote. He encontrado en falta una función que considero muy importante: un botón para "deshacer". Es frustrante cuando se borra un parte del texto o un archivo de una nota, generalmente
    • Tip #59- Technician Console: Exploring View option- 'Insider Insights'

      Hello Zoho Assist Community! Ever wondered how technicians adapt quickly during a live support session? Imagine a customer reaching out with an issue that’s disrupting their work. The technician starts a remote session and begins troubleshooting right
    • MRP or Manufacturing Module for Zoho

      We have been searching for options for a production planning or MRP that will integrate with Zoho.   Zoho Creator is pushed as a platform that can have an MRP built from scratch but we would like to find more of an out of the box solution and modify it to fit our needs.  Are there any recommendations? Would Zoho consider creating a custom solution in Creator to support this need?
    • encountering an error when attempting to associate an email with a Deal using the Zoho CRM extension in Zoho Mail.

      When I click "Yes, associate," the system displays an "Oops!! Something went wrong" error message. I have attached a screenshot of the issue for reference.
    • Can 1 Zoho CRM instance sync with 2 Zoho Marketing Automation instances?

      Can 1 Zoho CRM instance sync with 2 Zoho Marketing Automation instances?
    • Can I add Conditional merge tags on my Templates?

      Hi I was wondering if I can use Conditional Mail Merge tags inside my Email templates/Quotes etc within the CRM? In spanish and in our business we use gender and academic degree salutations , ie: Dr., Dra., Sr., Srta., so the beginning of an email / letter
    • Zoho mail account ownership transfer

      We recently took over another company and have assumed responsibility for its Zoho account, including Zoho Mail and all related services. We would like to formally transfer ownership of this account to our organization. Could you please outline the complete
    • Email Authentication is Failing

      I'm trying to setup gitlab with email authentication. I used the following configs picked up from: https://docs.gitlab.com/omnibus/settings/smtp/ gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.zoho.com" gitlab_rails['smtp_port']
    • DMARC reports for mail I didn't send: how to deal with?

      I know the enthusiastic amateur's bare minimum about e-mail; am able to set up a Thunderbird account and know the basic acronyms. I have a Zoho Mail account connected to my domain, and have set up SPF, DMARC and DKIM successfully according to Zoho's instruction
    • ms

      Email set up for communication
    • Fix the speed

      It takes ages to load on every step even though my dataset is quite small.
    • Capture Bank Charges for Invoice Payments

      We've added the Bank Charges field in the "Add Payments" page both in Zoho Invoice & Zoho Books. So all you need to do is to enter the bank charges when you record a payment for the invoices. This bank charge will be included to the amount paid for that invoice. Steps to add the bank charges while you record the payment:       1. Click the "Invoices" sub-tab under the "Money-In" tab.       2. Click the 'add payment' link for the invoice that you wish to record the payment for.       3. On the add
    • Conditional Layouts On Multi Select Field

      How we can use Conditional Layouts On Multi Select Field field? Please help.
    • Image field in custom module

      Hi guy, Is there any hope of adding a custom image field in the custom module? We created a custom module to keep track of assets, and it would be helpful if we could attach an image to the record. Thanks Rudy
    • Deluge Function to Update Custom Field

      I'm trying to get a Deluge function (which will run as part of a Schedule in Desk) that retrieves all tickets with the status "Recurring" and updates the custom field checkbox "cf_recurring" to "true". Here's what I have, which doesn't work: searchValue
    • "View ticket" link is broken

      The "View ticket" link in our Zoho ticketing system confirmation emails is broken (please see attached). Impacts ability to update/review details, and, refresh recollection at a later date. Any help would be much appreciated.
    • import data from Apollo.ai into zoho crm via zoho flow

      I might be asking this question in the wrong forum. We use Apollo.ai to find potential new leads for our business, there are around 10000 leads that we have initially found. We have an Apollo.ai account but just to do searches, we dont use it as a crm.
    • Woocommerce Line Item Information

      I'd like to add each line item from a Woocommerce order to a zoho creator form record. The line items are found within the line items array, but I'm not sure how to get each item out of the array? Any help would be much appreciated.
    • Synching changes to Stripe when changes are made in Zoho Billing

      We have a situation where we have merged customers in Zoho BIlling and then found out later that the payment in Stripe was not updated and still associated with the old customer record. The card gets updated and billed, but that payment is still associated
    • How do I fix this? Unable to send message; Reason:554 5.1.8 Email Outgoing Blocked.

      How do I fix this? Unable to send message; Reason:554 5.1.8 Email Outgoing Blocked.
    • Disable Smart Filters By Default

      The smart filters "feature" is causing confusion for Zoho Mail users. New emails should be delivered to the inbox unless they have specifically opted to redirect them somewhere else. People don't understand that new emails might be waiting in a random
    • ME SALE ESTE ERROR: No fue posible enviar el mensaje;Motivo:554 5.1.8 Email Outgoing Blocked

      Ayuda!! Me sale este error al intentar enviar mensajes desde mi correo electronico de Zoho! Tampoco recibo correos pues cuando me envia rebotan. Ayuda, Me urge enviar unos correo importantes!! Quedo atenta MAGDA HERNANDEZ +5731120888408
    • Client Script | Update - Client Script Support For Custom Buttons

      Hello everyone! We are excited to announce one of the most requested features - Client Script support for Custom Buttons. This enhancement lets you run custom logic on button actions, giving you greater flexibility and control over your user interactions.
    • Zoho Mail not working

      Zoho Mail not working
    • Queries on Project-Based Inventory Consumption and Proforma Invoice in Zoho ERP

      We would appreciate your clarification on how Zoho ERP plans to handle the following: Project-based inventory consumption without itemized sales orders Accurate project cost tracking along with inventory reduction Proforma Invoice usage We look forward
    • I can't add a new customer in Zoho invoice? Anyone had this issue before?

      Ive been using Zoho invoice for over 6 years. Today I wanted to add a new customer to send an invoice to but it doesn't save when I try to access it from the pulldown menu when you go to send a new invoice.
    • Spreadsheet View click & focus issue in Arabic (RTL) localization

      Hello Zoho Support Team, I am facing an issue in Zoho Creator Spreadsheet View when using Arabic localization (RTL). Scenario: My app supports English (LTR) and Arabic (RTL). I created a Spreadsheet View for a form. In English, everything works correctly.
    • Customer address in Zoho Bookings

      Hello,  Is it possible to add customer address information to the Zoho bookings appointment screen? Or have it pull that information automatically from the CRM? We are wanting to use this as a field management software but it is difficult to pull the address from multiple sources when it would be ideal to have a clickable address on the appointment screen that opens up the user's maps.  It would also be advantageous for the "list view" to show appointment times instead of just duration and booking
    • Ghost email notification on a form

      Hello, We have recently encountered an error where I can not see a email notification set up for a form which I am currently the owner, although neither the form nor the notification were created by me. However, neither can the Super Admin access the
    • bulk edit records and run internal logic

      hi there is few logics in manner "it this than that" logics work well when i edit entry openning it one by one (via workflow "on add/edit - on success" , for custom field "on update/on user input") but when i try bulk edit records - logic does not work.  how can i turn on logic to work as programmed - for mass editing records via bulk edit?
    • Bulk bank rule creatioin

      Hi team, I am exploring Option to create a multiple bank rule. Could please suggest the option to implement this?
    • Limitations on editing a message in Cliq

      Hi I've checked the documentations and there's no mention of how many times a message can be edited. When trying with code, I get various numbers such as ~1000 edits or so. Please mention if there's a limit on how many times one can change a message via
    • email address autocomplete

      Is there a way to eliminate certain addresses from showing up in auto complete when entering an address? Many old and unused addresses currently show up, many of which I would like to get rid of. Thanks
    • How to use MAIL without Dashboard?

      Whenever I open Mail, it opens Dashboard. This makes Mail area very small and also I cannot manage Folders (like delete/rename) etc. I want to know if there is any way to open only Mail apps and not the Dashboard.
    • How can i download and secure all my mails from the archive folders?

      Hi, i would like to download all my mails from my archive folders and secure it on my external HDD. Is this possible? Thx. amir
    • How to open filtered report in popup using Zoho Creator Deluge?

      First report: There is so many records in Report, If I click one record, pop up is occur. Second report (Pop up): there is also so many record data, and this pop up is also Report, not Form. First report: It has got "Sales Order" field. when I click any
    • Next Page