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 #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
      • Kaizen #152 - Client Script Support for the new Canvas Record Forms

        Hello everyone! Have you ever wanted to trigger actions on click of a canvas button, icon, or text mandatory forms in Create/Edit and Clone Pages? Have you ever wanted to control how elements behave on the new Canvas Record Forms? This can be achieved
      • Kaizen #142: How to Navigate to Another Page in Zoho CRM using Client Script

        Hello everyone! Welcome back to another exciting Kaizen post. In this post, let us see how you can you navigate to different Pages using Client Script. In this Kaizen post, Need to Navigate to different Pages Client Script ZDKs related to navigation A.
      • Kaizen #210 - Answering your Questions | Event Management System using ZDK CLI

        Hello Everyone, Welcome back to yet another post in the Kaizen Series! As you already may know, for the Kaizen #200 milestone, we asked for your feedback and many of you suggested topics for us to discuss. We have been writing on these topics over the

        • Recent Topics

        • issue with deluge script

          i used chat gpt to build this script and I am getting 2 errors which I cannot figure out how to fix: void monthly_sales_order_generation() { try { // ---------------- CONFIG ------------------- analytics_url_1 = "https://analytics.zoho.com/api/<workspaceID>/report/<reportID1>/data";
        • Introducing LinkedIn Apply Connect for Zoho Recruit

          Attract up to 3x more qualified candidates and hire more efficiently with LinkedIn Apply Connect. Let candidates fill-in job applications without any redirections, gain deeper insights with applicant highlights within Zoho Recruit, and keep candidates
        • Recruit paid support?

          Hi all, Could anyone who has paid support package advise if it provides value for money with regards to support response times? Exploring the idea as unfortunately when we have faced issues with Recruit it has been a 7+ day timescale from reporting to
        • Introducing Dedicated Modules for Plans, Addons, and Coupons in Zoho Billing

          We’ve enhanced the way you manage Plans, Addons, and Coupons in Zoho Billing. Previously, all three grouped together under Subscription Items. Now, each one has its own dedicated module, giving you a cleaner and more intuitive experience. This update
        • Ticket Status email

          Good day, This was discussed in the past, but it would be helpful if we could have the system assign a custom response to a status. We have various statuses for tickets, e.g. "closed due to no response", or "Pending Status", it would be helpful for the
        • Customer ticket creation via Microsoft Teams

          Hi all, I'm looking to see if someone could point me in the right direction. I'd love to make it so my customers/ end users can make tickets, see responses and respond within microsoft teams. As Admin and an Agent i've installed the zoho assist app within
        • Holidays

          Hi; For defining Holidays, you need to add logic to handle the year as well as the month & day. We need to be able to enter Holidays for the next year. I need to add a holiday for January 2, 2017, but I can't until January 1st, which is a Sunday and we
        • Can I use a Standalone CRM Function as the Callback URL For Async Export Data API?

          I am creating an export job using this API https://www.zoho.com/analytics/api/v2/bulk-api/export-data-async/create-export/view-id.html There is a "callbackUrl" key in the CONFIG object. I tried copying the URL for a standalone function in CRM which can
        • Future Orders - Due Date

          Hi In my role, I can receive tickets where the work required is requested months in advance. Using a Future Orders option, which I believe was setup under the On Hold status type, hides the Due Date, in all views/ticket etc. Whilst I understand the reasoning
        • Introducing Withdrawal Reasons for Offers

          We’re excited to introduce a new enhancement to the Offer module that brings more clarity and accountability to every withdrawn offer. The Withdrawal Reason update ensures that each withdrawal — manual or automatic — is backed by a clear explanation,
        • Zoho Creator customer portal users

          Hi, I'm in a Zoho One subscription with our company. I'm running a project now that involves creating a Zoho Creater application and using the Zoho Creator Customer Portal.  At most we need 25 customer portal users. In our Zoho One plan we only get 3
        • GPS tracking only or Check out facility

          Dear Team, Zoho CRM is quite robust CRM but till date i was waiting for the feature of having GPS tracking of Sales employees which is a common demand by all customers for thier field sales executives. We cover them by saying that CRM provides Checkin
        • HTML Tags added to Reports with Notes

          Recently Zoho added the ability to markup text within notes. That way, users can change font size, colors, etc. It's a great change. However, since the change, reports that include a column for "Note Content" are printing HTML tags within the report.
        • In App Auto Refresh/Update Features

          Hi,    I am trying to use Zoho Creator for Restaurant management. While using the android apps, I reliased the apps would not auto refresh if there is new entries i.e new kitchen order ticket (KOT) from other users.   The apps does received notification but would not auto refresh, users required to refresh the apps manually in order to see the new KOT in the apps.    I am wondering why this features is not implemented? Or is this feature being considered to be implemented in the future? With the
        • Appraisals on Employee Information Profile

          Is it possible to show completed appraisals on each employee's "Employee Information" page? I would presume at the bottom - similar to the "Related Lists" concept in Zoho CRM. Obviously view access would be limited to employee and appropriate other roles
        • AI Interview Insights: Turn Recorded Interviews into Quick Transcripts & Summaries

          Evaluating interviews shouldn’t require replaying long recordings or taking manual notes. With AI Interview Insights, you can now review complete transcripts and AI-generated summaries of your One-way (Recorded) interviews right inside Zoho Recruit. This
        • Kaizen #220: Actions API - Webhooks APIs - Part 2

          Hello all!! Welcome back to the follow-up Kaizen post of Kaizen #219: Actions API - Webhooks APIs - Part 1. In the previous week, we covered how to configure a basic Webhook and how to include Headers, Body, and URL Parameters using both the POST Webhook
        • Standard Payment Term is not pulled from account to quotation

          Hey Team There seems to be something off. I do have "Net 30" as my default payment term in Zoho Books for my customers. If, from the customer overview or quote section, I create a new Quotation, the payment terms field stays blank and doesn't get the
        • Request for Auto PO - Min–Max based Automated Purchase Feature

          Dear Zoho POS Team, I’m writing to request a feature enhancement that would significantly streamline inventory management for businesses using Zoho POS — particularly supermarkets, FMCG retail, and multi-store operations like ours. Feature Requested:
        • Canva Integration

          Hello! As many marketing departments are streamlining their teams, many have begun utilizing Canva for all design mockups and approvals prior to its integration into Marketing automation software. While Zoho Social has this integration already accomplished,
        • Manage your invoices from Bigin's mobile app (iOS)

          Hello everyone! We're happy to announce that users can now integrate Zoho Books with the latest version of Bigin's iOS app. Zoho Books can be integrated with Bigin only via the web application. Users can view the Zoho Books tab in the detail pages of
        • HubSpot CRM to Zoho Creator Integration

          I'm trying to create an integration between HubSpot CRM and Zoho Creator with HubSpot being the push source (if a contact is created or updated in HubSpot, it pushes the information to Zoho Creator). I have two questions: 1- Is it best to use Zoho Flow
        • Systematic SPF alignment issues with Zoho subdomains

          Analysis Period: August 19 - September 1, 2025 PROBLEM SUMMARY Multiple Zoho services are causing systematic SPF authentication failures in DMARC reports from major email providers (Google, Microsoft, Zoho). While emails are successfully delivered due
        • Accessibility controls and multilingual captcha authorization for Help Center users ​

          Hello everyone, As part of our ongoing effort to improve user experience, we are excited about the accessibility controls and predefined accessibility personas added in the Help Center, similar to what is already available in Zoho Desk. Help Center users
        • Gain control over record sharing with portal users through our new enhancement: criteria-based data exposure

          Dear Customers, We hope you're well! Portals is a self-service avenue through which your clients can access and manage their direct and related data in Zoho CRM. This empowers them to be more independent and enables them to experience a sense of transparency
        • Zoho Sign + Zoho CRM : la solution pour simplifier vos accords de vente

          La conclusion d’un contrat de vente nécessite de nombreuses étapes : préparation de documents, validations successives et collecte des signatures. Les équipes commerciales passent souvent par plusieurs cycles de collaboration et de révision, tout en assurant
        • Zoho Desk Limitations

          Good day, all, I would like to know whether others share my frustration with some of Zoho's limitations. Don't get me wrong, I like Desk (and I also have a subscription for Analytics), I have been with them for close to 10 years, and unfortunately, I
        • Item/service subtotal

          Just discovered & really pleased that we can drag to re-order the line items in Sales orders & Invoices, a very nice feature which doesn't seem to be documented? It would be nice to be able to insert a subtotal as a line item to complete this great feature
        • Converting Sales Order to Purchase Order

          Hi All, Firstly, this code works to convert a sales order(SO) to a purchase order (PO) via a button, however I am running into an issue when I convert the SO where the values from the line items are not pulled across from the SO to the PO. The ones in
        • how to Solve Conflict Invoices in Zoho POS

          Hello Team, I am facing a repeated issue in Zoho POS while saving a sale that contains service-based items. My products are intentionally created as Service (Non-Inventory) items because I do not want to track stock for them. However, every time I try
        • All new Address Field in Zoho CRM: maintain structured and accurate address inputs

          The address field will be available exclusively for IN DC users. We'll keep you updated on the DC-specific rollout soon. It's currently available for all new sign-ups and for existing Zoho CRM orgs which are in the Professional edition. Latest update
        • Copy, Paste, Highlighted text

          when i copy paste text it gets highlighted. Fix this.  WTF is with this black highlight ? Fix copy pasting. Some people pay for using this mail service. 
        • Pricing Strategies: #6 Common Mistakes while Configuring Pricing

          "Why does this month's billing feel messy again?" That was the exact line Priya muttered while staring at the spreadsheet full of edited pricing, one-off discounts and mismatched subscription details. Her business was growing, but the pricing machine
        • Publish to LinkedIn via API

          Hi, Is it possible to publish a job opening to LinkedIn (paid job slots) if creating a job opening via api / deluge function? Or is the user required to manually publish via the job boards process? Many Thanks Adrian
        • FSM - Associating and selecting Contacts based on Service Addresses

          Hi FSM team, I've come across an FSM limitation I wanted to share for improvement. I'm currently configuring FSM for a client who provides heating system install and maintenance services. The are often sub contracted by building management companies to
        • 日本語フォントの選択肢拡充についての要望

          日本語フォントの選択肢がとても少ないと感じたことはありませんか? 多くのアプリ(たとえば Invoice)ではフォントが1種類しかなく、正直あまり使いやすい・見た目が良いとも言えません。 そろそろ、もっと多くの日本語フォントを追加してほしい、そしてすべてのアプリで同じフォント選択肢を使えるようにしてほしいと、私たちユーザーが声を上げる時期だと思います。 ご存じのとおり、現状ではアプリごとにフォント周りの仕様にほとんど一貫性がありません。 みなさん、一緒に要望を出していきましょう!
        • Do Unpublished Products in Shopify Sync to Zoho POS?

          Will an unpublished product in Shopify sync to Zoho POS? I would like to know how Zoho POS handles products that are in draft/unpublished status in Shopify.
        • Problem in Zoho POS frontend ERP.

          We are facing some difficulties in our billing and inventory processes and require your support to resolve them at the earliest. Customer Advance Payments We receive advance payments from customers for upcoming sales. Please guide us on how to record
        • How to create estimates/Invoices with sub-totals

          Every other accounting package can create estimates and invoices with Sub-totals. How can I do that in ZohoBooks?
        • Categorize Items with Item Headers

          Hello customers, Did you ever want to classify items based on specific categories to help your customers understand your invoice better? With the new Item Header feature, you can easily categorize items in your invoices and estimates and give them a common title.  Item Headers are available in the Invoices, the Recurring Invoices and the Estimates module. It can be carried forward from estimates to invoices at the time of converting the estimates.  To add an item header: Go to the Estimates, Invoices
        • Next Page