Kaizen 217 Actions APIs Tasks

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. In this post, we will discuss the Automation Tasks API.
Zylker's admin have set up the email notification that notifies the team for different triggers. Team is notified when a deal is lost. But then, what should be the course of action? Does someone know to follow up? Is the reason for the loss being logged? Often, notifications create awareness but not accountability. That is the significance of tasks. Including Task details to Zylker's dashboard ensure the right people receive the right instructions.

This update to the dashboard will allow system admins to:
  1. audit the existing tasks,
  2. create new tasks,
  3. update existing tasks, and
  4. clean up inactive and unwanted tasks.

STEP 1: Discover and audit existing tasks

To get details of existing tasks in the system and audit them the admins at Zylker use GET Automation Tasks API.

Request to fetch all automation tasks:
GET {api-domain}/crm/v8/settings/automation/tasks

Request to fetch a specific automation task:
GET {api-domain}/crm/v8/settings/automation/tasks/{task_ID}

Zylker's admin has created an automation task for investigating the reason behind a lost deal. Below output JSON shows the details of the automation task such as name, id. Note that whenever an automation task is created in the system a new task is created in the task module. 

{
    "tasks": [
        {
            "created_time": "2025-11-07T12:29:18+05:30",
            "lock_status": {
                "locked": false
            },
            "editable": true,
            "module": {
                "api_name": "Deals",
                "id": "5843104000000002181"
            },
            "related_module": null,
            "deletable": true,
            "source": "crm",
            "created_by": {
                "name": "Patricia Boyle",
                "id": "5843104000000424672"
            },
            "notify": false,
            "feature_type": "workflow",
            "field_mappings": [
                {
                    "display_value": "Investigate loss reason for ${Deals.Deal Name}",
                    "field": {
                        "api_name": "Subject",
                        "id": "5843104000000002271"
                    },
                    "type": "merge_field",
                    "value": "Investigate loss reason for ${!Deals.Deal_Name}"
                },
                {
                    "display_value": "Trigger Date plus 3 day(s)",
                    "field": {
                        "api_name": "Due_Date",
                        "id": "5843104000000002273"
                    },
                    "type": "execution_time",
                    "value": {
                        "period": "days",
                        "unit": "3",
                        "trigger_field": "${CURRENTTIME}",
                        "sign": "plus"
                    }
                },
                {
                    "display_value": "Patricia Boyle",
                    "field": {
                        "api_name": "Owner",
                        "id": "5843104000000002269"
                    },
                    "type": "static",
                    "value": {
                        "name": "Patricia Boyle",
                        "id": "5843104000000424672"
                    }
                },
                {
                    "display_value": "Not Started",
                    "field": {
                        "api_name": "Status",
                        "id": "5843104000000002279"
                    },
                    "type": "static",
                    "value": "Not Started"
                },
                {
                    "display_value": "Highest",
                    "field": {
                        "api_name": "Priority",
                        "id": "5843104000000002281"
                    },
                    "type": "static",
                    "value": "Highest"
                }
            ],
            "modified_time": "2025-11-07T12:29:18+05:30",
            "associated": true,
            "modified_by": {
                "name": "Patricia Boyle",
                "id": "5843104000000424672"
            },
            "name": "Investigate loss reason for ${Deals.Deal Name}",
            "id": "5843104000006662001"
        }
    ]
}

This task makes sure that the reason for loss is properly analyzed and logged. This ensures that the same mistakes are not repeated and corrective action can be taken.
 

STEP 2: Create new automation task

At any company, proactive engagement with customers is crucial for customer retention, especially when they are new. At Zylker, the management decided to check in with the customer after 30 days of onboarding. The admin created an Automation Task to engage with the customer using the Create Automation Task API

Request to create an automation task for a follow up task: 
POST {api-domain}/crm/v8/settings/automation/tasks

{
  "tasks": [
    {
      "module": {
        "api_name": "Accounts",
        "id": "5843104000000002177"
      },
      "feature_type": "workflow",
      "field_mappings": [
        {
          "field": {
            "api_name": "Subject",
            "id": "5843104000000002271"
          },
          "type": "static",
          "value": "Customer Success Check-in"
        },
        {
          "field": {
            "api_name": "Due_Date",
            "id": "5843104000000002273"
          },
          "type": "execution_time",
          "value": {
            "period": "days",
            "unit": "30",
            "trigger_field": "${!Accounts.Created_Time}",
            "sign": "plus"
          }
        },
        {
          "field": {
            "api_name": "Owner",
            "id": "5843104000000002269"
          },
          "type": "static",
          "value": {
            "name": "John Smith",
            "id": "5843104000000424688"
          }
        },
        {
          "field": {
            "api_name": "Status",
            "id": "5843104000000002279"
          },
          "type": "static",
          "value": "Not Started"
        },
        {
          "field": {
            "api_name": "Priority",
            "id": "5843104000000002281"
          },
          "type": "static",
          "value": "Highest"
        },
        {
          "field": {
            "api_name": "Description",
            "id": "5843104000000002291"
          },
          "type": "merge_field",
          "value": "30-day follow-up with ${!Accounts.Account_Name}.Check adoption metrics and gather feedback."
        }
      ],
      "name": "Customer Success Check-in"
    }
  ]
}

Key fields 
  1. name : indicates the name of the automation task
  2. module: indicates the module for which the automation task is created
  3. field_mappings: consists of the field mappings of the fields to a record in tasks module. This consists of three main keys:
    1. field: indicates the API name and ID of the field  in the Tasks module records
    2. value: indicates the value of the field in the Tasks record
    3. type: denotes the type of value. The possible values for this field are merge_field, static, execution_time

For the field `Due_Date`, type is `execution_time` and value is `Account Created Time + 30 Days` as:

 "value": {
 "period": "days",
 "unit": "30",
 "trigger_field": "${!Accounts.Created_Time}",
 "sign": "plus"
 }

It forms the core of our solution to create a task 30 days after onboarding.

This ensures customer success team automatically follow up with new customers after their first month. It helps them to:
  1. measure product adoption,
  2. gather early feedback,
  3. identify potential issues, and
  4. strengthen customer relationships.

The task is automatically created, assigned, and scheduled without manual intervention.

STEP 3: Updating an automation task 

After using the customer success check-in for a while, the customer success gave their feedback to admin. They feel that the 30 day follow up is too soon and assigning the task as Highest priority is overwhelming. 
The admin updates the automation tasks to accommodate their feedback using the Update Automation Tasks API.

Request to update an automation task: 
PUT {api-domain}/crm/v8/settings/automation/tasks/5843104000006646001


{
  "tasks": [
    {
      "field_mappings": [
        {
          "field": {
            "api_name": "Due_Date",
            "id": "5843104000000002273"
          },
          "type": "execution_time",
          "value": {
            "period": "days",
            "unit": "60",//Changed from 30 to 60.
            "trigger_field": "${!Accounts.Created_Time}",
            "sign": "plus"
          }
        },
        {
          "field": {
            "api_name": "Priority",
            "id": "5843104000000002281"
          },
          "type": "static",
          "value": "High"///Changed from Highest to High.
        },
        {
          "field": {
            "api_name": "Description",
            "id": "5843104000000002291"
          },
          "type": "merge_field",
          "value": "60-day follow-up with ${!Accounts.Account_Name}.Check adoption metrics and gather feedback."// Description changed to account for the update to the task.
        }
      ]
    }
  ]
}


The admin has changed the execution time to `Account Created Time + 60 Days`, the priority from `Highest` to `High` and also the description to reflect the change in execution time.

STEP 4: Deleting tasks notifications 

Any unwanted or redundant task can be deleted using Delete Automation Tasks API.

Request to delete an automation tasks: 
DELETE {api-domain}/crm/v8/settings/automation/tasks/5843104000006678001
DELETE {api-domain}/crm/v8/settings/automation/tasks?ids=5843104000006646001,5843104000006646002

We hope that you find this post on Actions - Tasks APIs useful. If you have any feedback, please let us know in the comments, or reach out to us via support@zohocrm.com

    • 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

    • Darshan Hiranandani : How many participants can join a Zoho Meeting at once?

      Hi everyone, I'm Darshan Hiranandani, trying to find out the maximum number of participants that can join a Zoho Meeting at once. Has anyone here used Zoho Meeting for larger groups and can share their experience or knowledge about the participant limit?
    • Ask The Expert: Deep Dive into Zoho CRM, Desk, SalesIQ, and Campaigns!

      Are you using Zoho to power your sales, support, and marketing, and have questions about configuration, automation, or best practices? We have great news: the “Ask The Expert” session is coming to the Zoho Benelux Community! This session is specifically
    • How to create a new Batch and update Stock via Inventory?

      Hi everyone, We are building an automation where a user enters batch details (Batch Number, Mfg Date, Expiry, and Quantity) into a Custom Module. I need this to trigger an API call to Zoho Inventory to: Create the new batch for the item. Increase the
    • Zoho books Inventory valuation report VS Stock GL value

      At one client, we track inventory using composite (bundled) items, and in the system settings we have enabled the option to prevent stock from going below zero. After the year-end physical count and quantity adjustments, we identified a mismatch: Inventory
    • Zoho Zoom extension for CRM

      When meetings are booked through Zoho using the Zoom extension, the Zoom link in the invite is a host start link that contains an expiring ZAK token. The invite should instead use a standard attendee join link or a non-expiring host link - why is this
    • Stereo audio

      L.S. Is stereo audio supported in Zoho Meetings? I would like to conduct music lessons with Meetings, but the audio needs to be good (if not great!) and stereo, and not too much compressed and such.
    • Is Zoho Sites still actively being developed?

      Hello, Is Zoho Sites still actively being developed as part of the Zoho ecosystem? I noticed that the What's New page (https://www.zoho.com/sites/whats-new.html) does not show any updates since Q1 2025. We were considering migrating our website from Squarespace
    • Zia should track how customer relationships evolve over time

      Here's a feature idea that I've been thinking about The Problem Zia is great at analyzing individual interactions email sentiment, call transcription, best time to contact. But here's what it can't do: tell you how a relationship has evolved over time.
    • Zoho Surveys

      Dear Zoho Support Team, I hope this message finds you well. I am writing to inquire about the availability and documentation for the Zoho Survey API. Background: I am currently working on a project that requires programmatic access to survey data and
    • Zoho FSM API Delete Record

      Hi FSM Team, It would be great if you could delete a record via API. Thank you,
    • Duplicate Leads Concerns with Round Robin and Lead Approval Process

      It is great to have the Duplicate Lead Approval Process, there are a few issues with the process that I would greatly appreciate taken consideration in enhancing. It appears that A Lead comes in Lead owner assigned by the Round Robin Check for Duplicate,
    • Cliq iOS can't see shared screen

      Hello, I had this morning a video call with a colleague. She is using Cliq Desktop MacOS and wanted to share her screen with me. I'm on iPad. I noticed, while she shared her screen, I could only see her video, but not the shared screen... Does Cliq iOS is able to display shared screen, or is it somewhere else to be found ? Regards
    • Incoming email replies not automatically associating with Deals/Opportunities - Is this possible in Zoho CRM?

      Hello Zoho Community, I'm running a travel agency (B2B and B2C) and we've been struggling with what seems like a basic functionality that we cannot get to work properly. Our use case: We send emails to suppliers (hotels, transportation companies) and
    • Writing SQL Queries - After Comma Auto Suggesting Column

      When writing SQL Queries, does anyone else get super annoyed that after you type a comma and try to return to a new line it is automatically suggest a new column, so hitting return just inputs this suggested column instead of going to a new line? Anyone
    • New Enhancements to Zoho CRM and Zoho Creator Integration

      Hello Everyone, We’ve rolled out enhancements to the Zoho Creator and Zoho CRM integration to align with recent updates made to the Zoho Creator platform. With enhancements to both the UI and functionality, This update also tightens access control by
    • Desk API that can search Merged Tickets

      Is there any method that can still search a ticket that was already merged? zoho.desk.searchRecords - doesn't explicitly mention
    • Issue with "Send Email" from Quotes not loading Email Template data

      Hi everyone, I'm currently experiencing an issue when using the "Send Email" option from a Quote record in Zoho CRM. What’s happening: When I go to the Quotes module and select a record, then click Send Email, the attached file (Quote) correctly pulls
    • Suggestions for Improved Table Management and Dashboard Filter Controls in Zoho Analytics

      Dear Zoho Analytics Community, I hope you are doing well. I would like to share a few suggestions based on issues I am currently experiencing while working with visualizations and dashboards. Firstly, when I create a new visualization using the Sales-Order
    • Introducing Rollup summary in Zoho CRM

      ------------------------------------------Moderated on 5th July'23---------------------------------------------- Rollup summary is now available for all organizations in all the DCs. Hello All, We hope you're well! We're here with an exciting update that
    • Zoho Projects and CRM Integration in Analytics

      Hi Team, In Zoho CRM, I’ve integrated CRM with Zoho Projects and associated a project within the CRM. The integration is visible under the Deals module. However, I’m unable to find this data in Zoho Analytics. Does anyone know where this information is
    • Cursor lands on disabled fields when tabbing through forms

      As of yesterday, form behavior has changed w/ regard to disabled fields. Previously when tabbing through a form the cursor would skip over disable fields (as would typically be desired). But now the cursor is landing on all disabled fields, in all of
    • Permission query

      we have two permission settings i.e 'user permission ' & 'portal user permission' and both have the same setting that we enable for our users, Now those who have access to user permission can see a button on the pivot table, "regenerate" but those who
    • Zoho Forms sheet prefil

      I've been using zoho sheet prefill for a week and it was working perfectly, as soon as i deleted the particular sheet and replaced it with another one no matter what I do it cant find the record and i get this message. Could you please assist me to resolve
    • "Create Deal" button should default to the currently selected layout/pipeline

      When viewing Deals in Kanban or List view with a specific layout and pipeline selected, clicking "Create Deal" should default to that same layout — not the profile's default layout. Currently it always opens the default layout regardless of context, requiring
    • Zoho mail admin panel not opening

    • Dynamic Questions in Zoho Forms

      Is it possible to add dynamic questions (like displaying a user’s name) in Zoho Forms? I know this is possible in surveys, but can we implement similar functionality in Zoho Forms?
    • Canvas: is it possible to have a fixed header?

      Hello. Does Canvas provide the option to have a fixed header, similar to the standard view? It would also be interesting for other parts of the interface, like the header or sidebar of the tab section. Thanks!
    • Removing Related Modules Lookup Fields Assignment / Relationship

      Issue: When creating a related list, I accidently selected module itself creating a circle reference. See attached. Situation: I wish to relating a custom module called "Phone Calls" to Leads and Contacts. Outcome: 1) I either want to remove the this
    • Zoho LandingPage pricing update: Essentials plan is now fully free!

      Hello Everyone, We have updated the Zoho LandingPage pricing structure. The Essentials plan, previously priced at $9 per month for 1,000 visitors, is now fully free, and the visitor limit has been increased to 5,000. With this change, users can start
    • ZOHO.CRM.UI.Record.open not working properly

      I have a Zoho CRM Widget and in it I have a block where it will open the blocks Meeting like below block.addEventListener("click", () => { ZOHO.CRM.UI.Record.open({ Entity: "Events", RecordID: meeting.id }).catch(err => { console.error("Open record failed:",
    • Zoho Survey – Page Skip Logic Not Working

      Hi everyone, I'm experiencing an issue with the page skip logic in Zoho Survey. Last week, it was working fine, and I haven’t changed anything in the settings. However, today the skip logic is not working at all. I also tried testing it with different
    • Introducing a smarter, faster, and more flexible charting experience

      Hello Zoho Sheet users, We're delighted to share the latest news about a major update to charts in Zoho Sheet! The new version supports dynamic data ranges, granular styling options, faster loading, and other interesting enhancements that allow you to
    • Zoho Form URL displays incorrect name

      Hi, I have a form I created called "Design Request form". It displays this way everywhere I look. However, in the URL, it shows up as "DesignJobRequestFormFINAL011325PROOFV1B" and I'm not sure why. I can't find where to fix this. Does anyone have any
    • Introducing Radio Buttons and Numeric Range Sliders in Zoho CRM

      Release update: Currently out for CN, JP, AU and CA DCs (Free and standard editions). For other DCs, this will be released by mid-March. Hello everyone, We are pleased to share with you that Zoho CRM's Layout Editor now includes two new field formats—
    • Finding rhythm through poetry

      Poetry has long been a powerful form of expression, discovery, and reflection. For many, it is a way to pen down their thoughts and experiences. The "poetic license" allows writers to shape their words with rhythm and flow. This year, on World Poetry
    • Zoho Desk Ticket SLA Level

      Hello, we have 2 levels of SLA escalation for our Tickets. Is there a way to display on the ticket information the level of SLA escalation the ticket currently on? I am aware that we can see in the ticket history the level of escalation that has been
    • Allow Font Size 11 in Editors...

      That is basic functionality...
    • 【まだ間に合う!】Zoho ユーザー交流会 | AI活用・CRM・Analytics の事例を聞いて、ユーザー同士で交流しよう!

      ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 3月27日(金)に東京、新橋で開催する「東京 Zoho ユーザー交流会 NEXUS」へのお申し込みがまだの方は、この機会にぜひお申し込みください!(参加無料) ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー イベントの詳細はこちらから▷▷ https://www.zohomeetups.com/tokyo2026vol1#/?affl=communityforumpost3 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
    • Where is the scheduled report in New UI?

      Hi Team, Seems there is not such a field in New UI, hence I have to switch to old UI to handle request..
    • Building a Simple Raspberry Pi + Keypad IoT PoC with Zoho Flow

      I want to share a simple IoT PoC I recently built that connects a Raspberry Pi to Zoho Flow and Zoho Creator. The goal was to send PIN input data from a hardware keypad to Zoho and trigger a servo and buzzer for visual/audible feedback. This can serve
    • Next Page