Actions APIs - Field Updates

Actions APIs - Field Updates




Hello all!!
Welcome back to a fresh Kaizen week.
In the previous weeks, we covered Workflow Rules APIs, Actions APIs - Email Notification APIs, and Tasks Update APIs.
This week, we will continue with another Actions API - the Field Update API in Zoho CRM.

Field Updates in Zoho CRM

The Field Update option helps you automatically update specific field values in records when the associated workflow rule is triggered.

Note: Field Updates can also be used in Blueprint and Approval Processes, but in this post, we will focus only on Field Updates used with Workflow Rules in Zoho CRM.
When multiple leads enter Zoho CRM each day, from small to large industries, the Sales team manages all these entries inside a module. Every single lead is important for a company, whether it comes from a small or large industry. High-profit leads should not be missed and must be treated with high priority, frequent follow-ups, and faster actions to convert them into won deals.

High-profit deals without Field Update

There are chances of missing or failing to prioritize high-profit deals when all entries are cluttered inside the same module. This leads to manual mistakes and confusion for the Sales team. It becomes manual work, which increases the possibility of missing high-profit Leads.

High-profit deals with Field Update

A Field Update + Workflow Rule can solve these issues by creating an automated process. This avoids manual intervention and reduces errors.

Use case
Zylker, an IT solutions provider, wants to give high-priority attention to leads coming from large industries or leads that have a high lead score, especially when the Lead Status is Not Contacted.
Whenever a lead has a Lead Score ≥ 80 and is Not Contacted, the system should automatically update a field called Profit Category and set it to High Profit.

Why Lead Score for our use case?
Lead Score shows how active and interested a lead is. A score of 80 or above means the lead is highly engaged and more likely to convert. This makes it a dependable way to identify important leads that need quick attention.

Scenario
Whenever a lead meets the following conditions:
  1. Lead Score ≥ 80
  2. Lead Status = Not Contacted
The system should automatically update the Profit Category field to High Profit, and add a Contact Immediately tag. This helps the Sales team quickly identify high-profit records even when many records are cluttered in the module.

This can be achieved using a Field Update combined with a Workflow Rule.

Why not just use a Custom View?

A custom view can filter and display leads that meet these conditions, but it still depends on the Sales team to open the view and take action. In a busy Leads module, important leads can be missed or delayed. Also, if you want to perform dependent actions, you will need to create and schedule a custom function manually.
With a Workflow and Field Update, the system emails and also trigger many other actions like Field Update, Webhooks, and so on to your executives about these leads automatically. In our case, the Profit Category and tag are updated the moment the lead meets the condition, making high-profit leads stand out everywhere in CRM - without relying on manual checks or someone remembering to look at a view.

Profit Category mapping based on Lead Score

Profit Category is a custom picklist field in the Leads module.

The following table shows how Zylker classifies profit categories based on Lead Score:

Lead Score

Profit Category

20-40

Minimal Profit

40-60

Average Profit

60-80

Good Profit

80+

    High Profit


In this use case, we focus only on the High Profit category.
Let us now see how to enable a Field Update in Zoho CRM through the UI.

Creating a Field Update via UI

To create a Field Update in Zoho CRM, follow the steps below:
  1. Go to Setup > Automation > Actions > Field Updates.
  2. Click Create Field Update.
  3. Enter the Name of the field update.
  4. Select the Module.
  5. Choose the Field that should be updated.
  6. Provide the value to be updated that must be applied.
  7. Save the Field Update.
Field Update Configuration
In this use case, a Field Update is created to modify the Profit Category field when the workflow rule is triggered.

Field Update Details:
  1. Name: Profit Category
  2. Module: Leads
  3. Field to Update: Profit Category
  4. New Value: High Profit
This Field Update will be used as an action inside the workflow rule.
How to create the workflow for this use case and associate this Field Update with the workflow has been covered in the following section of this post.

UI - Field Update Creation View

Creating a Field Update via API

You can create a Field Update using the Create Field Update API available from Zoho CRM API version 8.
Request URL:  {{api-domain}}/crm/v8/settings/automation/field_updates
Request Method: POST
Input JSON


{
    "field_updates": [
        {
            "name": "Profit Category ",
            "module": {
                "api_name": "Leads",
                "id": "5725767000000002175"
            },
            "type": "static",
            "feature_type": "workflow",
            "field": {
                "api_name": "Profit_Category",
                "id": "5725767000008570298"
            },
            "value": "High Profit"
        }
    ]
}


Keys explanation

                         Key

                        Explanation

field_updates

 

Holds all details to create a field update.

name

Field Update name

module

Specify the module details

module.api_name

Represents the module API name. In our case, it is "Leads" module.

module.id

Represents the System ID for the module

type

Represents the Update type. Usually “static” for fixed-value updates.

feature_type

Represents that this Field Update is for workflow Rules.

field

Represents which field should be updated.

field.api_name

Represents the field API name.

field.id

Represents the unique ID of the field.

value

The value to be updated


Sample Response

{
    "field_updates": [
        {
            "code": "SUCCESS",
            "details": {
                "id": "5725767000008604002"
            },
            "message": "field update deleted successfully",
            "status": "success"
        }
    ]
}



A note on the unique ID

You can add:
  1. You need this ID to retrieveupdate, and delete the Field Update later.

Retrieve your Field Update

You can retrieve a Field Update by using the Get Field Update API. It lists all available Field Update actions available in your org.

Request URL:  {{api-domain}}/crm/v8/settings/automation/field_updates/5725767000008604002
Request Method: GET

Sample Response:
Below is the sample response returned by Zoho CRM.

{
    "field_updates": [
        {
            "created_time": "2025-11-15T07:57:39-08:00",
            "update_type": null,
            "lock_status": {
                "locked": false
            },
            "apply_assignment_threshold": false,
            "editable": true,
            "module": {
                "api_name": "Leads",
                "id": "5725767000000002175"
            },
            "related_module": null,
            "deletable": true,
            "source": "crm",
            "type": "static",
            "created_by": {
                "name": "Patricia Boyle",
                "id": "5725767000000411001"
            },
            "notify": false,
            "feature_type": "workflow",
            "modified_time": "2025-11-15T07:57:39-08:00",
            "field": {
                "api_name": "Profit_Category",
                "id": "5725767000008570298"
            },
            "dependent_fields": null,
            "associated": false,
            "related_records": null,
            "name": "Profit Category Leads",
            "modified_by": {
                "name": "Patricia Boyle",
                "id": "5725767000000411001"
            },
            "id": "5725767000008604002",
            "value": "High Profit"
        }
    ]
}


Note: This API helps you fetch all the details of a specific Field Update using its unique ID. Also, you can create a workflow and associate the created Field Update action using its unique ID.

Workflow Rule Configuration 

Trigger:
  1. When a Lead is created or edited.
Condition:
  1. Lead Score is greater than or equal to 80.
  2. Lead Status is currently Not Contacted.
Actions:
  1. Associate the created Field Update action: High Profit
  2. Add a Contact Immediately tag to the record.

Workflow Rule and Field Update action via UI

Configuring Workflow and associating the Field Update action

Workflow Rule and Field Update action via API
Create a Workflow:
You can use the Configure Workflow Rule API to create a workflow.

Associate the Field Update:

You can associate the Field Update action with the workflow by using the unique ID of the Field Update.
Retrieve the Field Update ID using the Get Field Updates API.

Request URL:  {{api-domain}}/crm/v8/settings/automation/workflow_rules
Request Method: POST

Sample Input:

{
    "workflow_rules": [
        {
          .
          .
          .

            "execute_when": {
                "details": {
                    "trigger_module": {
                        "api_name": "Leads",
                        "id": "5725767000000002175"
                    },
                },
                "type": "create_or_edit"
            },
            "module": {
                "api_name": "Leads",
                "id": "5725767000000002175"
            },
            "conditions": [
                {
                    "instant_actions": {
                        "actions": [
                            {
                               
                                "name": "Profit Category",
                                "details": {
                                    "module": {
                                        "api_name": "Leads",
                                        "id": "5725767000000002175"
                                    }
                                },
                                "id": "5725767000008604002",   //associating the created Field Update with the Workflow.
                                "type": "field_updates"
                            },
                            {
                                "name": "High Priority Deal",
                                "details": {
                                    "module": {
                                        "api_name": "Leads",
                                        "id": "5725767000000002175"
                                    },
                                    "over_write": false,
                                    "tags": [
                                        {
                                            "name": "High Priority Deal",
                                            "id": "5725767000008570458",
                                            "color_code": "#63C57E"
                                        }
                                    ]
                                },
                                "id": "5725767000008570470",
                                "type": "add_tags"
                            }
                        ]
                    },
                    "criteria": {
                        "group_operator": "AND",
                        "group": [
                            {
                                "comparator": "greater_equal",
                                "field": {
                                    "api_name": "Entity_Scores__s.Score", //Lead Score's API name
                                    "id": "5725767000002324045" 
                                },
                                "type": "value",
                                "value": "80"
                            },
                            {
                                "comparator": "contains",
                                "field": {
                                    "api_name": "Lead_Status",
                                    "id": "5725767000000002611"
                                },
                                "type": "value",
                                "value": "Not Contacted"
                            }
                        ]
                    }
                }
            ]
            .
            .
            .
        }
    ]
}


For more details on Workflow Rules using APIs, refer to Kaizen #213 - Workflow APIs - Part 1, Part 2, and Part 3.


Edit your existing Field Update

You can update an existing Field Update using the Update Field Update API. To update it, use the unique ID of the Field Update in the request URL. Use Get Field Update API to get the required Field Update ID.

Request URL:  {{api-domain}}/crm/v8/settings/automation/field_updates/5725767000008599001
Request Method: PUT

Input JSON

{
    "field_updates": [
        {
            "name": "Profit Category - Updated", //updated the response
            "field": {
                "api_name": "Profit_Category",
                "id": "5725767000008570298"
            },
            "value": "Good Profit" //updated value
        }
    ]
}


Note:
  1. Only the configured modules cannot be updated using the PUT - Field Update API call. The rest of the fields can be updated.
  2. The updated value must be valid for the field type. For example, picklist fields accept only existing picklist options. 
  3. After updating a Field Update, any workflow linked to it will automatically start using the updated configuration.

Delete Your Existing Field Update

You can delete an existing Field Update using the Delete Field Update API. To delete it, you must use the unique ID of the Field Update in the request URL.
 If you do not know the ID, use the Get Field Update API to retrieve it.

Request URL:  {{api-domain}}/crm/v8/settings/automation/field_updates/5725767000008599001
Request Method: DELETE

Sample Response:

{
    "field_updates": [
        {
            "code": "SUCCESS",
            "details": {
                "id": "5725767000008604002"
            },
            "message": "Field update deleted successfully",
            "status": "success"
        }
    ]
}




Note
  1. You cannot delete a Field Update if it is currently associated with any Workflow, Blueprint, or Approval Process. Remove the Field Update from the workflow first, and then try deleting it.

We hope this post helps you understand how to use Field Updates through the Zoho CRM Actions API - Field Update API.


Try it out, and let us know your experience in the comments section or reach out to us at support@zohocrm.com.
Stay tuned for more insights in our upcoming Kaizen posts!

Cheers!




    • 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
    • Recent Topics

    • Introducing custom lookup fields in the Tickets, Contacts, and Accounts modules

      Hello all, We are excited to announce a new enhancement that will empower you to further customize the Tickets, Contacts, and Accounts modules. Now, you will be able to create custom lookup fields in your Tickets, Contacts, and Accounts layouts for more
    • DKIM cannot be enabled for the domain as no verified default selector present

      Can't get the DKIM working. May you please check my account (nksy.us) to see what's wrong?
    • Collections Management: #3 Tackling Payment Failures

      Sam refreshed the dashboard. "Payment failed". Same customer. Same subscription. This is happening for the third time. He sends a usual email: "Your renewal payment failed again. Could you please check and retry?" A couple of days passed, and there was
    • How do I increase the email attachment size in Zoho CRM ?

      It looks like I'm limited to 10MB when sending an attachment using the email widget on a record in Zoho CRM. Is there a way to increase the size? Or can I use some other tool? From what I'm reading online, I'm maxed out at 10MB. Any insight would be greatly
    • 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.
    • Zoho sign and creator error message {"code":9043,"error_param":"Checked by","message":"Extra key found","status":"failure"}

      Good day, I receive the error message: {"code":9043,"error_param":"Checked by","message":"Extra key found","status":"failure"} when running below code from creator to sign, void TestForSign(int ID) { //Fetch Template Details (Optional, for dynamic mapping)
    • Download a writer template as .docx instead of .pdf.

      I have been trying to implement a feature to download a writer template as a .docx and got it working partly but it isn't good. Earlier I checked our code and I saw openurl("https://crm.zoho.com/crm/org121314/specific/Template.do?action=print&step=pdfPreview&id="
    • Allow the usage of Multi-Select fields as the primary field on "Layout Rules"

      We want to force our users to enter some explanation strings when a multi-select field has been utilized. I can't understand the reason for the usage restriction of Multi-Select fields as a primary field. This is a simple "Display hidden mandatory field
    • Extract Archived Projects using Zoho Projects API

      In my organization we archive the projects when they are already completed, charged, invoiced, so that only those that are still pending process remain active. I need to access all projects (active and archived) from an external system, but the API v3
    • Ask the Experts: Five-hour live Q&A session with Zoho WorkDrive product experts

      Have questions about WorkDrive 5.0? Let’s talk! We recently launched Zoho WorkDrive 5.0, packed with powerful updates to help your team work smarter, stay secure, and get more value from your business content. From content-centric workflows and AI-powered
    • File upload support for subforms

      Dear All, Subforms help you add and track data related to your CRM records. We've always supported most of the commonly used field types in subforms, so as to cater to your business requirements. Now we're happy to extend support to file upload fields.
    • Circular record relationship in CRM

      Given there is a lookup in custom module Transactions creating a related list on the chosen Contact record. I. e. a lookup field on Transactions module points to Contacts. The related list on a Contact record can thus have have many transaction records.
    • Is it possible to pull the Zoho desk data into Zoho analytics in real time

      Hi - I am looking to add more dashboards and reports of Zoho Desk in analytics. I see there is a schedule to pull the data into analytics, but I'm wondering if there is an option to pull the data in real time instead of a specific interval?
    • How to set value of dropdown field to variable

      For the life of me, I can't figure out why the following code won't set input.status to the previousSelection. Steps to reproduce: 1. Click input.complete 2. input.status dropdown updates from '1-Backlog' to '4-Done' 3. Click input.complete again to deselect
    • [Product Update] TimeSheets module is now renamed as Time Logs in Zoho Projects.

      Dear Zoho Analytics customers, As part of the ongoing enhancements in Zoho Projects, the Timesheets module has been renamed to Time Logs. However, the module name will continue to be displayed as Timesheets in Zoho Analytics until the relevant APIs are
    • [WEBINAR][MEA] Learn how to control your inventory and multi-channel sales with the Zoho Inventory & Zoho Books integration

      Hello there, We are hosting an exclusive live webinar tailored for businesses across the Middle East and African countries, where you'll learn how to take full control of your inventory and multi-channel sales while keeping your accounting perfectly in
    • Less clicks, more connection – the usability edge of Zoho Desk

      Imagine joining a new workplace, eager to prove your skills, partner with peers, learn new tools, and build a strong foundation for your career. The standards you've set could drive pressure into your head. You now discover the organization is using Zoho
    • Tip #3 Automating total item weight calculation for your sales orders in Zoho Inventory

      Hello, Hope the day is treating you well. Last week, we saw how we could automate the calculation of total shipping charges from numerous shipments for your sales orders and invoices. This week, we will see how you can automate the calculation of total item weight for your sales orders.  How does this work? First, you are required to capture the weight of all your items using a custom field. And when you create a sales order, you can either have the system display the individual weights for you or
    • Why Format section gets disabled when we create Merge Template over PDF

      I need some assistance I have a Client who is going to give certificates to users who passes his exam. So, I am using mail merge but in ZOHO writer after I upload the PDF and create merge Template over PDF the format Section gets disabled. My problem
    • Whatsapp Integration on Zoho Campaign

      Team: Can the messages from Zoho Campaign delivered through Whatsapp... now customers no longer are active on email, but the entire campaign module is email based.... when will it be available on whatsapp.... are there any thirdparty providers who can
    • How to calculate separate totals for Product Line Items filtered by category in Quotes?

      Hello! I'm working with Quotes in Zoho CRM and need help calculating conditional totals for line items. Current setup: I have two tables in my Quote template (Zoho Writer), both displaying Quoted Line Items Table 1 (top): Shows all products where Product
    • Zoho Desk API Documentation missing a required field

      We are trying to create a section using this information. Even after preparing everything based on that page, we still get an error. The error we get is this: {"errorCode":"INVALID_DATA","message":"The data is invalid due to validation restrictions","errors":[{"fieldName":"/translations","errorType":"missing","errorMessage":""}]}
    • Fetch Subform values through a lookup of a lookup

      Hi, I'm having an issue fetching the values of a subform through a lookup field through another lookup field. The code works perfectly to show me the subform row ID, but the second I try to get any readable data, it says "Error occurred. Please contact
    • Turn Decision Box to a button

      Dear all, I need your help on CSS to turn a Decision Box to a Button. I have a Decision Box like: Turn on/off to refresh the information. (on User Input, either True or False, will refresh the information) Now I want to simulate to treat it like a Refresh
    • Emails not being received from a particular domain

      Cannot receive any emails sent from atco.com Domain is in the spam whitelist so should be no reason for it not to be coming through. Have filed a ticket and besides a generic response of we are looking at it - it seems there is no actual support workers
    • Stock Count

      The stock count is a nice new feature, but we cannot figure out how to: 1. Use it without assigning to a person, we have a team or one of multiple do stock counts as do most any company. 2. Add any extra fields to what the "counter" sees. The most important
    • Send Whatsapp message from Whatsapp template with custom variables

      Hi, I'm trying to do some basic integration for sending WhatsApp messages from Zoho CRM using Zoho Desk whatsapp templates. When creating new whatsapp template in Zoho Desk we can choose ticket related fields as variables but it's not clear how to use
    • Outgoing blocked: Unusual activity detected.

      I just made payment for my Zohomail Today and have been debited so i will like to be Unblocked because this is what it says (Outgoing blocked: Unusual activity detected) Thank you i await your swift responses
    • Integrating with My Own Application and ZOHO CRM Simultaneously

      I have my own WhatsApp bot that uses my WhatsApp business account. I want to use the same phone number to integrate with ZOHO as well. What is the recommended way to do that? Should I integrate my application with ZOHO, forwarding messages whenever the
    • How do i move multiple tickets to a different department?

      Hello, i have several tickets that have been assigned to the wrong department.  I am talking about hundreds of automatically generated ones that come from a separate system. How can i select them all at once to move them to another department in one go? I can select them in "unsassigned open tickets view" but i can't find a "move to another department" option. I also can't seem to assign multiple tickets to the same agent in that same view. Could somebody advice?
    • Account for Cryptocurrency Holdings in Zoho Books/Custom Currencies?

      Hello, I've recently started using Zoho to run my small business and I've really been enjoying all of its features. However, I've been struggling to find a way to account for cryptocurrencies in Zoho Books. My company mines a Cryptocurrency token called
    • Transferring CRM Attachments to Workdrive

      relatedrecords = zoho.crm.getRelatedRecords("Attachments","Conditions",conId); attachid = List(); for each ele in relatedrecords { attachementId = ele.get("id"); attachid.add(attachementId); } for each ele in attachid { counter = 1; downloadFile = invokeurl [ url: "https://www.zohoapis.com/crm/v2/Conditions/" + conId + "/Attachments/" + ele type: GET connection : "work_drive" ]; resp2 = zoho.crm.attachFile("Deals",dealId,downloadFile); resp3 = zoho.workdrive.uploadFile(downloadFile, dealWD, "PlaceHolder"+counter+"",
    • New Customization options in the module builder: Quick Create and Detail view

      Hello everyone, We have introduced two new components to the module builder: Quick create and Detail view. The Quick Create Component It is a mini form used to create a record and associate it to the parent record from a lookup field. For example, if you have a Deals lookup in the Contacts module, then you can associate existing deals or create a deal and associate it with the contact. You can customize this Quick Create form by adding standard as well as custom fields. There is no limit to the number
    • unblock my zoho mail account. outlines@zoho.com

      please unblock my zoho mail account, outlines@zoho.com
    • SMTP email sending problem

      Hello, I've sent emails before, but you haven't responded. Please respond. My work is being disrupted. I can't send emails via SMTP. Initially, there were no problems, but now I'm constantly receiving 550 bounce errors. I can't use the service I paid
    • Mailk got blocked / Inquiry About Email Sending Limits and Upgrade Options

      Dear Zoho Support Team, My name is Kamr Elsayed I created this account to use for applying for vocational training in Germany. As part of this process, I send multiple emails to different companies. However, after sending only 8 emails today, I received
    • Forwarder

      Hi, I tried to add a forwarder from which emails are sent to my main zoho account email . However, it asks me for a code that should be received at the forwarder email, which is still not activated to send to my zoho emial account. So how can I get the
    • No chat option

      Chat option is not supported.
    • Direct “Add to Google Calendar” Option in Zoho Meeting

      Hello Zoho Meeting Team, Hope you are doing well. We would like to request an enhancement related to the “Add to Calendar” functionality in Zoho Meeting. Currently, when we open Zoho Meeting and view our meetings under My Calendar, there is an Add to
    • DKIM cannot be enabled for the domain as no verified default selector present

      Hi Support Team, For Domain DKIM record trying to enable status. but showing error "DKIM cannot be enabled for the domain as no verified default selector present" So, please resolve the issue. Thank you.
    • Next Page