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

      • Better Security, Better User Experience | Help Center Update | June'25

        As part of our commitment to enhancing user experience and security, we are happy to announce updates to our authentication mechanism. This update introduces several key enhancements designed to improve the password recovery process and streamline the
      • Upload Logo to Account Page

        It would be nice to set a logo for an Account
      • View Agent Collision on Ticket List Page

        It would be nice from the ticket listing page (views) to see what agents are working on what tickets rather than having to click into each ticket throughout the day to see what agents are working on what tickets. This functionality would also be desired
      • Restrict user from viewing the detail standard view

        Is there any way to restrict a user(it can be user-field-based) from viewing the detail standard view? Basically, I have created a canvas detailed view so that on some conditions I can hide some data from the users but the standard view client script
      • Upload Picture to Contact

        It would be nice to upload a profile picture to a contact.
      • Allowing Pictures for Client Contacts

        Do you have any plans to allow us to add pictures of our client contacts? There is a silhouette of a person there now, but no way that I can see where I can actually add a picture of the individual.
      • Agent name Alias

        I am seeing that Full name of my staffs are written on every ticket response which is not good for some reasons. It is possible to user like this: Manny P. (First Name with Last Name's First Letter) or  Manny (First Name) This is want we want to show
      • Unable to add attachments to tickets through Desk API

        I able to use the Desk API to generate tickets. However when I try to use the tickets/{ticketId}/attachments endpoint, I always get an Unauthorized error. My app has Desk.Tickets.ALL included in its scope so this should not be an issue
      • What's wrong with this COQL?

        What's wrong with this COQL? Code returns "invalid operator found". SELECT id, Name, Stage, Account, Created_Time, Tag FROM Production_Orders WHERE (Account = '4356038000072566002' AND Stage NOT LIKE '%customer%') ORDER BY Created_Time DESC LIMIT 200
      • [Feature Request] Add support for internationalized top-level domains mail hosting

        This is an important request to add support for internationalized domains mail hosting to https://www.zoho.com/mail/ In this case, that is only limited to domain name/mail address however currently it's already possible for us send mails etc using below
      • Add Enable/Disable to Field Rules and other Rules

        Hi, Sometimes I have rules setup for fields, and until I want to enable them for use, I can set the fields to Hidden but rules still show them, today you have to delete rules and then recreate them again, would be nice to have a toggle for Enabled/Disabled
      • Syncing stuck for days

        Hello when I made an account a few days ago and synced all my notes to it, it is still syncing. My app is only 400mb so I do not know why it is taking so long. Please help
      • Workflow runs on every edit despite not ticking the field repeat this workflow whenever a parent is edited.....

        Hi, It is my understanding that this workflow should only trigger once. Why is this triggering on every edit of the field? Based on another support query - directly from Zoho, If i tick the box 'repeat this workflow whenever a parent is edited' it should
      • How do you add or update tags on Zoho CRM records via n8n? (Workarounds or best practices?)

        Hi all, I’m running into some limitations with the Zoho CRM node in n8n and was wondering how others have handled this: From what I see, the standard Zoho CRM node in n8n doesn’t allow you to add or update tags when creating or updating contacts/leads.
      • API PARAMETER FOR TICKET CLOSED TIME

        Hi, Is there a parameter for filtering tickets by closed time in zoho api, i can see closed time in the API response i get, but can't get tickets by that field while calling. Regards, Anvin Alias
      • Reply to email addresses wrong.

        I have setup my Zoho mail account using my main domain and I also have an Alias setup from a different domain. In Settings - Mail - Compose I have selected to the option "For replies, send using The same email address to which the email was sent to".
      • Meeting integration with Otter.ai

        Would love for an integration with an AI transcription service like Otter.ai to be integrated with Zoho Meeting. Thanks
      • How to close/delete a free creator account?

        I have a free zoho creator account associated with my email address that is not being used.  I want to become a user of another paid zoho creator account but I can not associate with the paid account with the same email.  I assume if I can close or delete the free account I will be able to use the paid account. I have emailed support but no response. Suggestions?
      • Zoho books and zapier causes Invalid data provided

        I have been using zoho books with zapier for over 2 years now, everything was working fine. On September 13th my zaps stopped working. Now on step create sales invoice in zoho books i get an error: Failed to create a create_invoice_v2 in Zoho Books The
      • CRM report

        Is it possible to pull a contacts report that also includes the company industry, as well as the company name? I’m having trouble combining company and contact fields – any help is appreciated. Thank you, Sam
      • Enhancements to Client script?

        Hi Zoho CRM, I've been extensively using Client Scripts to enhance our Deal form experience, particularly for real time validations and auto updating fields based on specific logic. However, I've encountered a challenge regarding permission boundaries.
      • Add views to new CRM UI navigation + Unlimited Webtabs

        Zoho CRM is so close now to being the ultimate business application with the new UI, as soon as this one feature is added. This is probably where Zoho is headed but if it's not I want to BEG for this to be incorporated. What we need is to be able to put
      • E-Mail Distribution List

        How do I create an e-mail distribution list in Zoho Mail?
      • Custom "create meeting" button with more functionality than Zoho currently has?

        I'm looking for a little help/direction in how to do this. Even just some general high level pointers on how this might be able to be done. The current Zoho Meeting Activity functionality is not ideal for my org's workflow. I'd like to try and create
      • Error Code 4: Invalid value passed for JSONString

        Okay, I want to start by saying I know I'm a terrible scripter, so sorry if this is a dumb mistake. I just can't figure it out, even with LLM help. Here's my code: // --- Input Variables --- customer_id = salesorder.get("customer_id"); so_id = salesorder.get("salesorder_id");
      • Organizing contacts/members by company

        I work for a membership organization (representing businesses) and am trying to use Zoho CRM more effectively for managing the points of contact for our members. Currently, our members are listed in our CRM by the primary point of contact's name, but
      • Unable to search in Zoho Email

        I've started using Zoho Email (free version) recently and realized that it doesn't have email search functionality. Am I missing anything here? I've gone through the Zoho tutorial which does show the search bar on the right top of the Zoho UI. But in
      • Response Time Report

        From data to decisions: A deep dive into ticketing system reports Every organization that interacts with its customers should have an established timeframe for how soon an agent is expected to send the first response and any reply to any follow-up messages.
      • Zoho - Outlook plugin

        Does anyone know if there is a way to modify the autofill in the Zoho plugin in outlook? When we create a contact, it enters the correct email address and name, but then pulls information from our own signature line to add phone number, address, etc.
      • Zoho Books - Sales Person Information

        Hi Team, On Invoices, Quotes, etc... I can include the Sales Person, but it only shows their name and not their email or phone number. It would be great to have place on invoice templates where we can manage what sales person information should be shows
      • Offline working in Zoho Creator portal

        Zoho's help says that offline working is only available in the Creator mobile app and not in the portal app. But I can see offline options in the portal app too and it seems to work when I test it. My portal users are often in areas where there is poor
      • Fetch Records using Dynamic Criteria

        Hi,  I have a form that builds a filter based on user input.  I need to fetch the records based on dynamic criteria.  How would I accomplish this as there is no eval function? For example: desiredRecord = Form1[dynamicCriteria];
      • Url filter Report date (pivot chart)

        Hello. Is it possible to filter the data in pivot char using parameters in the url? I'm trying but I should not doing very well. Something like: https://creator.zoho.com/.../....../#Report:MyPivotChartReport?MyDate=01-Jan-2012;31-Jun-2012;MyDate_op=58 Saludos
      • Sending gmail to a particular person fails because the address gets changed to "gmaill", with a second "l" typo somewhere

        I send to bob@gmail.com (example) and get an error sending to bob@gmaill.com, only for this one person. Note the extra "l" in the email the system tried to send to, which was not in the address I entered. Can't find a typo in the contact or anywhere else
      • Emoji Support in Bigin CRM

        We request the implementation of emoji support across Bigin CRM. This feature should allow users to seamlessly use emojis in text fields, headlines, and deals. It would enhance communication, improve the visual appeal of records, and bring more personalization
      • Bigin Booking Pages enhancements

        I would like to ask for several enhancements for the brand new (and promising) Booking feature. 1. Add "Contact/Mobile" Field to Booking form We use Mobile as key (id), but unfortunately it is missing from the Booking form, only Home Phone is available.
      • Amount in words in Indian format

        Hi, I had coded the following code to convert amount in words. But in the code in the format of US like million. But i need in Lakh and Crore. So pls suggest ideas r post corrected code string Num2Words(int val) {     val_s = input.val.toString();     th = {"", "thousand", "million", "billion", "trillion"};     // uncomment this line for English Number System     // th = {"","thousand","million", "milliard","billion"};     dg = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight",
      • What are people using to send Service based emails?

        Zoho Campaigns is for marketing. Users can unsubscribe from these emails. Service based emails need to be delivered and can without the worry of Can-spam act. What are people using to send service based emails? My mailing list is derived from a database
      • Standalone LMS tool

        Will Zoho release a standalone LMS (Learning management System) than can be used by external parties (guest)?
      • 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,
      • Next Page