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

    • Free webinar: Streamlining customer service paperwork with the Zoho Sign extension for Zoho Desk

      Hello Everyone! Have you been wondering about bridging the gap between digitised customer service and business paperwork? Join our free webinar to learn how you can do this by connecting Zoho Sign, our digital signature app, with Zoho Desk, our online
    • Mail Search should allow grouping by conversation like Gmail.

      Having switched from gmail I have found the search function hard to use. Mostly because mail is not grouped by conversation in search. If I search for a word when looking for a conversation had with someone then sometimes 10 emails will come up from the
    • Improve Zoho Learn updated article notifications

      I noticed today while updating an article, that the notification users get says "[User Name] has published article [Article Name]..." My feedback to the product team is that it would be really helpful for an end user, if the system notification differentiated
    • Safari Support

      Safari, the world's second largest browser, zoho desk does not officially or fully support. That needs to change.
    • Can I get images from an "Image Upload" field in a webhook?

      I want to send images from 2 "image upload" fields via a webhook. Is this possible?
    • Ticket closure notification - all contacts cc'd on email thread

      Hello, If a client sends an email to our service desk and cc's in other people that work at the same company - so that they are in the loop of the service request. When the we close the ticket, only the ticket owner (person who emailed us - which created
    • Inactive account cleanup policy for Zoho Sign

      Zoho Sign reserves the right to delete accounts that are license free and inactive for more than 120 days. The account deletion will be initiated only after the user receives prior email notice about possible data deletion and how to backup the data.
    • Missde API documentation for Sales Receipt

      Hi! I noticed that the Sales Receipt endpoint is not currently listed in your API documentation (https://www.zoho.com/books/api/v3/introduction/). Could you please provide any available temporary documentation for this endpoint, along with a detailed
    • Multi-currency in Zoho CRM Forecast and Reports

      As a company we have branches in 4 different countries with as many different currencies. Our Sales Teams would like to work with their local currency as much as possible. The Forecast module using only 1 currency is practically usable only by the sales
    • How to select from pricebook when creating a salesorder or quote

      I am creating a sales order and when selecting the Products I do not see any where to select from pricebooks. How do i associate this to my orders?
    • I cannot find my older documents from 2024 and 2023

      I cannot find my older documents from 2024 and 2023.
    • Customising Help Center

      Hi I don't think it is possible to add custom pages to help center? We'd like to use this as a customer portal with support tickets, FAQ/Guides, Billing and contracts. Is there any plans to add a feature like this or an alternative way to do it other
    • Ticket Approvals - External Users

      The ticket approval option - we need to be able to select external users (Contacts) for approvals. Sometimes we are working with an end user and their boss needs to approve a purchase. For example, working with a cashier on a broken cash register and
    • Force Users to Ask Answer Bot a question... First

      End users will always skip talking to a bot. It would be nice if Zoho adopted the standard and forced users to first ask a question to answer bot (or zia in some fashion) and then pass to the agent if it wasn't answered. Options to force the user to speak
    • View Answer Bot conversations?

      We are trialing Zia and are experimenting with Answer Bot on our knowledge base. So far so good! Management asks me if it is possible to view Answer Bot conversations, the purpose being to look over its shoulder and confirm that it is working as des
    • Mass Email an Account

      It would be nice to mass email an account stating there is an outage at their business or something specific to an account is needed to be mass communicated. Even if it makes a ticket for every Email Out to every contact in the Account. Think: the customer
    • Multiple Topics assigned to a single Campaign

      Hello, is it possible to assign multiple Topics to a single Campaign? We frequently write a content to our subscribers that spans multiple Topics and we would like to send it to all Contacts that are subscribed to at least one of the Topics. But it looks
    • Zoho Projects Fonts and Accessibility missing

      I cannot find any more the tab where I can change the font in Zoho Project. I also checked the knowledgebase and there they have accessibility tab which I am completely missing. Is there some setup I am missing or is it a problem with our account?
    • Zoho Books Custom Widgets Deprecation Error

      I created a simple sample widget with zet and published it using sigma Both in the Sandbox and Production the Widgets are showing this error
    • Problems with PDF files in notebook

      I'm evaluating Zoho Notebook as an alternative to Evernote and imported my Evernote account to Zoho Notebook. First issue is that notes in Evernote that comprise a PDF are turned into a 'group' with a single note page (that has the text from the Evernote
    • API (v3) Tasks sorting issue

      We are using the v3 API for Projects. When we gat all tasks, per page of 100 tasks, we get the task info alright. But when we try to sort based on DESC(last_modified_time) we don't get the correct sort order. It is roughly sorted by the last_modified_time,
    • Assemblies make my stock go negative

      I am sure this is just the way that we are using this feature, but we use assemblies, a lot. The issue for us is the way that the relive inventory and the fact that it makes our composite item stock go negative. I have added flows to auto assemble and
    • User Activity Reports

      I'd like to get data related to user activity.  For example, Login and logout times, emails sent/received, new records created , etc. Is that currently available. I just can't seem to find anything . Thanks, Dave
    • Help: Populate “Contact Owner” details into Customer custom fields (for email templates) in Zoho Books

      We want to send invoices on behalf of our sales agents, and include the agent’s name, email, and phone in the email body using placeholders. Plan is to copy the Customer Owner details into three Customer custom fields, so they can be used as placeholders
    • Undocumented Books API error message - 1000 - The requested action could not be completed. Please try again. | Unexpected error

      This code sometimes throws this error 1000 - The requested action could not be completed. Please try again. | Unexpected error What does it mean? result = zoho.books.updateRecord("salesorders",organization.get("organization_id"),salesorder_id,sales_
    • Partial payments for retainer invoices

      When a customer does not pay the entire retainer invoice there is no way to apply a partial payment. PLEASE add this function.
    • Mass Update not trigger workflows

      Hi, I have performed a mass update of all records in a custom module using a custom view. I have a dummy checkbox on my module that I turn on or off - hoping to trigger all the new workflows that have been created for that module. However, no workflows
    • Multi-Select lookup field has reached its maximum??

      Hi there, I want to create a multi-select lookup field in a module but I can't select the model I want the relationship to be with from the list. From the help page on this I see that you can only create a max of 2 relationships per module? Is that true?
    • Generating CRM reports based on date moved in staged history

      Hi everyone, I'm trying to generate CRM reports of jobs (I think these are called usually deals) based on when they were moved to a particular stage, ie all jobs that were moved to Proposal/Quote in the previous financial year. I can see from other similar
    • Modules for missed calls, emails, texts etc

      Hi there. Is there a way to create a module that would automatically show a list of all inbound calls that were missed by our users, as well as any inbound SMS's, emails & WhatsApp messages. That way, a user who is available, can work through that list
    • Google Sheets New Row vs. Updated

      I would like to have a flow that says update Zoho CRM is there is a new row OR an updated row in Google Sheets.  I would rather not have two flows.   Anyone know how I can accomplish this? 
    • Ability to Set a General Email Signature for the Organization in Zoho Recruit

      Dear Zoho Recruit Team, I hope you're doing well. We would like to request a feature that would allow us to set a general email signature at the organizational level within Zoho Recruit. Currently it is only possible for individual users to create their
    • Custom Buttons & Links Now Supported in Portals

      We’ve just made portals in Zoho Recruit more powerful and customizable than ever! You can now bring the power of Custom Buttons and Links to your Candidate, Client, Vendor, and Custom Portals, enabling portal users to take direct action without recruiter
    • Live webinar: Transform data into impactful visuals with Zoho Show

      Data is frequently a core part of a presentation, whether it’s a sales pitch, project update, research report, or performance review. But when it’s just numbers on a page, the message you’re trying to convey can get buried. The real magic happens when
    • File attachments not working - web version

      Since Notebook announced better file attachments, I have experienced file attachments failing. When uploaded from my pc to the web version, notebook just spins. Acting like the attachment is very large. When it's 30k. If I cancel out of this, the notecard
    • API - Barebones Data for Send Doc For Signiture

      I am learning how to use with Zoho Sign API. I am wondering if someone can give me a bare bones JSON data sample for "Send Document For Signature". Below is the blank data that is pre-populated in postman. Seems like there is more here than the bare minimum
    • Revenue Management: #2 How to compute revenue?

      In our previous post, we discussed the revenue recognition standards under IFRS 15 and ASC 606 and the five-step model. Now, let's examine three distinct business scenarios to see how the standards and model work in practice. This will help you understand
    • External lookup in CRM (as in Books)

      Hello Context: We have a CRM module, similar to Deals, but for Purchasing. Once the PO is created, a link to this PO should be updated in that "deal". In Books, you can add a custom 'external' field which can look up into CRM modules. I'm asked to have
    • "Undo Send" Feature

      Would love it if TeamInbox had an "Undo Send" feature, that gives you 10 seconds or so to "undo" the sending of an email. Many other email clients already have this feature, and my clients really miss it, as it has saved them many times in the past when
    • Zoho Sites

      Does anyone have experience building Zoho sites or know how I can find someone who does?
    • Next Page