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

      • Zoho CRM - Custom Views for Portal Users

        I'm looking for an option to customise custom views for portal users in CRM. It would be great if "portal user" was a permission on custom views.
      • 【参加無料】10/17(金) 東京 ユーザ交流会 Vol.3 参加登録 受付開始!

        ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 10/17(金)に、東京・新橋で「東京 ユーザー交流会 Vol.3」を開催します! 今回のユーザー事例セッションのテーマは、「Zoho Flowを活用した他社の決済サービスとの連携事例」です。 さらに、Zoho Flowに限らず、Analytics や Campaigns などの多彩なZohoサービスの活用方法について、豊富なご経験をもとにご紹介いただきます。 また、Zoho社員セッションでは、Zoho CRMを活用して日々の営業業務を効率化する具体的な事例をお話しします。業界を問わず、幅広い方にご参考いただける内容となっています!
      • Zoho Meeting Plug compatibility with newer versions of Outlook

        Documentation states that the zoho meeting plug in for outlook is only compatible with versions up to Outlook 2019 What is available to users of more up to date versions of outlook/office 365?
      • Introducing Zoho's own SMS gateway

        We're thrilled to announce the launch of our own SMS gateway feature within Zoho Marketing Automation! This new feature enables seamless SMS campaign management alongside your email marketing initiatives, providing a more integrated and efficient way
      • Embedding in Desk articles

        We would like to embed documents in our Desk articles. When we use an iframe for the embed, we get scrollbars and a frame border. Neither of those is acceptable. I've spoken with the Desk Support team about what we want and they tell me that it cannot
      • Zoho CRM button to download images from image upload field

        Hello, I am trying to create a button in Zoho CRM that I can place in my record details view for each record and use it to download all images in the image upload fields. I tried deluge, client scripts and even with a widget, but feel lost, could not
      • Mass Update Contacts In Zoho Campaigns

        Is there a way to mass update contacts in zoho campaigns? I want to be able to change the content of a field for a few hundred contacts, and can't go through all of them individually.
      • report showing assignment type

        Hi, We've created a number of workflows to allow us to auto assign tickets to agents based on keywords and other criteria. I'm struggling to create a report that would show me what is the percentage of tickets that are assigned automatically via workflows
      • Option to Disable Knowledge Base Section in Feedback Widget Popup Hello Zoho Desk Team

        Hello Zoho Desk Team, How are you? We are actively using Zoho Desk and would like to make more use of the Feedback Widget. One of the ways we implement it is through the popup option. At the moment, the popup always displays the Knowledge Base section,
      • Placeholders in Ticket Templates

        We should be able to use placeholders in ticket templates. When we create a new ticket, our description field is shown to the client in the email they receive.  It would be very handy to be able to personalize that description field in our ticket templates to pull in the name of the client that the ticket is for. Using them in the subject field as well, so we can auto populate Account Names, etc. 
      • when the record is created the tag want to Show as Opportunity how i achive this using Deluge Script

        In the quotation i have the work flow schedule for create opportunity record in the module , on that time the quotation tag select as opportunity created. How i achive this using Deluge Script . this like i want to Do tag1 = Map(); tag1.put("name","Nurturing
      • Delete a channel

        I need delete a channel in tickets.
      • Subtasks don't update parent task's times

        Hi there: I've recently upgraded to premium and check that subtasks completion % don't update the proportional completion of the parent tasks related to it.  We've been challenging with the problem of having to update twice or sometimes 3 times the completion of the related tasks. I've seen posts similar to this, of 3 years old.  Is there any roadmap for making this happen in a future release? Thanx César Ratto Lima, Perú.
      • IMAP Server not responding.

        Trying to connect a phone via IMAP and getting "imap.zoho.com not responding." Is the server down, for maintenance or otherwise? I've tried this on two different devices and got the same error on both.
      • Tip #44 – Get Deeper Insights with Zoho Assist’s Custom Reports – ‘Insider Insights’

        In today’s fast-paced IT environment, having a clear view of your remote support activities is more important than ever. Zoho Assist’s Custom Reports feature gives IT teams the ability to generate tailored reports that provide actionable insights and
      • Issue with SalesIQ Visitor Identification on WordPress

        Hi Zoho Support Team, I need some help with an issue on my WordPress website. My goal is to automatically identify logged-in WordPress users in Zoho SalesIQ, so I can see their name and email in the visitor list. Currently, my logged-in users are still
      • Message "...does not support more than 100 distinct values..." WHY????

        I get this message on one of my reports: Sorry, Zoho Reports currently does not support more than 100 distinct values in columns. 'Account Name * Sum(Amount),Count(Amount Tier)' contains more than 100 distinct values.  Possibly, you can apply filter to reduce the number of distinct values in 'Account Name' or drop the 'Account Name' field in Rows. I want to list all ACCOUNT NAMES (about 500) with SALES BY ACCOUNT.  What is blocking this?
      • Let's Talk Recruit: Super-charge hiring with Zoho Recruit add-ons

        Welcome back to our Let’s Talk Recruit series! This time, we’re diving into something that might seem like a small upgrade but has a huge impact on recruiter productivity: Zoho Recruit add-ons. Think about how much of your day is spent in your inbox or
      • Vendor Signatures Needed for Purchase Orders

        Hello everyone, We have a unique requirement that necessitates that Vendors & Suppliers formally acknowledge our Purchase Orders upon receipt. I was hoping that there would be an option to do so in Zoho Books, but that does not appear to be the case.
      • Store "Sign in with Google/Microsoft/GitHub etc." details

        Quite often now, users are using a sign-in provider like Google or Microsoft to sign into various apps and services. It would be great if Vault could remember which providers you use for each website and sign you in with that provider instead of a username
      • Tip of the Week #72– Assign thread ownership to avoid confusion.

        When teams handle a large volume of emails, managing threads becomes important to stay organized. Without a clear system, duplicate replies, missed follow-ups, or confusion over responsibilities can happen. Thread assignment solves this by designating
      • Unarchive tickets

        How can I manually unarchive tickets?
      • Optimize your Knowledge Base for enhanced accessibility by adding alt tags for images

        Let's learn why alt tags are crucial for your articles. You can add alternative tags (alt tags) and alternative text (alt text) to the images you share on your community forums or when embedding them in articles. Alt tags refer to the HTML attribute,
      • FSM trying again

        have not linked FSM yet to the rest of out Zoho suit. It certainly looks like the apointment and service part is more manageable for our staff. The question is that our engineers multi task examples 1. deliver products to customers not fitted 2. Service
      • Feature Request: Conditional Field Mandatoriness Based on Display Status

        Hello Zoho Creator Team, I would like to suggest an enhancement to improve the flexibility of form validations. Currently, when we need a field to be mandatory only if it's displayed on the form, the only option is to: Set the field as not mandatory in
      • Data Migration Strategies for Moving to a Cloud Solution

        Hi everyone, I’ve been working on moving some of our critical systems, including CRM and project data, to a Zoho cloud solution, and one of the biggest challenges I’ve encountered is data migration. Transferring large volumes of data while keeping it
      • Commerce Order as Invoice instead of Sales Order?

        I need a purchase made on my Commerce Site to result in an Invoice for services instead of a Sales Order that will be pushed to Books. My customers don't pay until I after I add some details to their transaction. Can I change the settings to make this
      • How to set different item selling prices for Zoho Commerce and Zoho Books

        Item selling prices for Zoho Commerce and Zoho Books are in sync. If we update the Item selling price in Books, the same will happen in commerce and vice versa. I need a separate commerce selling price for online users and a separate books selling price
      • How to report 'Response violation' OR 'Resolution violation'

        Hi, I want to report on SLA Violation Type. I grouped my tickets on this column. It seems I only get 'Response and Resolution Violation' or 'Not Violated'. The former seems to be given to a ticket if only the Response Time was violated. I would expect
      • Enable Keyword-Based Bot Activation in SalesIQ Without Scripts

        Hello team, We’d like to highlight an important limitation in Zoho SalesIQ Zobot. Current situation: In the no-code builder, bots can only be activated based on visitor attributes (country, page, campaign, CRM, etc.). If we want a bot to activate when
      • Date triggering Workflow rule

        I have a function triggered by a workflow rule. The function takes a date and creates a task for that date and fills in a field with the name of the day for that date. It also updates the status field of the record. The workflow rule is set to run whenever
      • Restricting contact creation

        Hi all! I am looking to use Zoho Desk in a part of the business that takes end user enquiries. These are generally single interactions, and not linked to an account name. As Desk is Account centric, has anyone designed a way to manage these incoming emails
      • Import Holiday Calendars

        HI Zoho Is there anyway of importing an online calendar like https://www.calendarlabs.com into the business hours calendars, to speed up setup of holiday calendars. Also could we also request a feature where you can specify a Holiday as hours, i.e it could be that the company is on a 1/2 day due to a holiday or when it is Eid in the UAE and they are only allowed to work restricted hours so we need the calendar to be flexible to allow for this. Regards Jamie
      • Filtering Tickets based on Email headers

        We're starting to get a lot more junk coming into our Zoho Desk, which is then triggering unnecessary email alerts to agents. Once thing we could do to cut this junk in half, is to filter tickets based on email headers. Any email containing the `List-Unsubscribe`
      • Error 550 5.4.1

        I’ve tried sending an email to someone but keep receiving this back. Any help would be greatly appreciated 
      • Billing Management: #2 Fair way of Billing- Prorated Billing

        Hello, From speaking about the traditional ways of billing in the previous post, we are moving into the deep sea of billing. We are now in a zone to break out the most complex yet, I would call it the fairest way of billing, the Prorated Billing. Prorated
      • Adding image in HTML report page

        Hi, I want to know two things: 1. Can anyone advise how to add an image in HTML report. The tagged used is <img> but what path do I mention for the image to be added in the HTML report. 2. Also, I want to know if I am creating an application for the market
      • How to change view of HTML report based on device but always print in A4

        Hello everyone, I am aware that HTML report view can be configured to adjust according to the screen size like Laptop, Tablet and mobile using media queries. But my concern is no matter on which device the reports is opened when printed should always
      • Age Calculation

        I've attempted to calculate the age of someone based on their birthday input by using the formula field. It works but I don't want all those decimals on there. I then tried to use "set variable" after birthday input but I get a field type mismatch, long vs. floating. Any ideas would be wonderful.
      • Search on Custom Field

        We're working on an integration with the Zoho FSM API and are trying to retrieve companies based on a custom field we added to the Companies module. However, we can't find a way to filter or query records using custom fields through the API. We have a
      • Next Page