Automation Series: Auto-create Dependent Task on Status Change

Automation Series: Auto-create Dependent Task on Status Change

In Zoho Projects, you can automatically create and assign a dependent task when a task’s status is updated. This helps teams stay aligned, ensures reviews happen on time, and reduces manual effort.

In this post, we’ll walk through an easy setup using a Custom Function scripted in Deluge.

Use-case

In a scenario where an auditor schedules a task that requires a compliance review, once the task status is updated from Scheduled, a Dependent task is automatically created and assigned to the Compliance team. All related attachments are carried forward, ensuring the auditors and reviewers have full overview and can proceed without manual coordination.

To configure this flow,

1. Navigate to the upper-right corner of the page and click  → Developer Space → Connections Create Connection using the following scopes:
  1. ZohoProjects.portals.READ
  2. ZohoProjects.portals.ALL
  3. ZohoProjects.projects.READ
  4. ZohoProjects.tasks.CREATE
  5. ZohoProjects.tasks.UPDATE
  6. ZohoProjects.tasks.READ
  7. WorkDrive.workspace.ALL
  8. WorkDrive.files.ALL
  9. ZohoProjects.documents.READ
  10. ZohoProjects.documents.CREATE


2. Navigate to  → Developer Space Custom Functions. Under the Task tab, create a new custom function and add the following Deluge script.
Notes
Ensure that the portal URL aligns with your data centre. If not, the function may not execute as expected. Also, make sure the specified team is associated with the project; otherwise, the task assignment will fail.
  1. // TODO : Replace Dependency Type here with "FS, SS, SF, FF"
  2. // scopes: ZohoProjects.portals.READ, ZohoProjects.portals.CREATE, ZohoProjects.projects.READ, ZohoProjects.tasks.CREATE, ZohoProjects.tasks.UPDATE, ZohoProjects.tasks.READ, WorkDrive.workspace.ALL, WorkDrive.files.ALL, ZohoProjects.documents.READ, ZohoProjects.documents.CREATE.
  3. // get team id
  4. endPoint = "https://projects.zoho.in/restapi/portal/";
  5. endPointV3 = "https://projects.zoho.in/api/v3/portal/";
  6. getTaskStatusTimeline = invokeurl
  7. [
  8. url :endPointV3 + portalId + "/projects/" + projectId + "/tasks/" + taskId + "/status-timeline"
  9. type :GET
  10. connection:"connectionprojects"
  11. ];
  12. size = getTaskStatusTimeline.size() - 1;
  13. oldStatusName = getTaskStatusTimeline.get(size).get("previous_status").get("name");
  14. if(oldStatusName.containsIgnoreCase("Scheduled"))
  15. {
  16. teamName = "Compliance Team";
  17. userGroupsResponse = invokeurl
  18. [
  19. url :endPoint + portalId + "/projects/" + projectId + "/usergroups/"
  20. type :GET
  21. connection:"connectionprojects"
  22. ];
  23. teams = userGroupsResponse.get("userGroups");
  24. for each team in teams
  25. {
  26. if(team.get("groupObj").get("group_name").containsIgnoreCase(teamName))
  27. {
  28. teamId = team.get("groupObj").get("group_id");
  29. }
  30. }
  31. teamIds = List();
  32. teamIds.add(teamId);
  33. dependencyType = "FS";
  34. //Create Tasks parameters
  35. values_map = Map();
  36. values_map.put("name","Compliance Audit Verification");
  37. values_map.put("description"," Review task created for the Security and Compliance team to validate requirements, assess risks, and confirm adherence to defined standards. Attachments from the originating task are included for reference.");
  38. values_map.put("associated_teams",teamIds);
  39. //Invoke Create Task
  40. createTaskResponse = zoho.projects.create(portalId,projectId,"tasks",values_map,"connectionprojects");
  41. // Get TaskId From Task response
  42. if(createTaskResponse != null && createTaskResponse.get("tasks") != null)
  43. {
  44. taskInfo = createTaskResponse.get("tasks").get(0);
  45. newTaskId = taskInfo.get("id_string");
  46. // copy attachments to new task
  47. getAttachmentsResponse = invokeurl
  48. [
  49. url :endPointV3 + portalId + "/projects/" + projectId + "/attachments?entity_type=task&entity_id=" + taskId
  50. type :GET
  51. connection:"connectionprojects"
  52. ];
  53. if(getAttachmentsResponse.get("attachment").size() > 0)
  54. {
  55. taskAttachments = getAttachmentsResponse.get("attachment");
  56. for each attachment in taskAttachments
  57. {
  58. associateParam = Map();
  59. associateParam.put("entity_type","task");
  60. associateParam.put("entity_id",newTaskId);
  61. associateToTaskComment = invokeurl
  62. [
  63. url :endPointV3 + portalId + "/projects/" + projectId + "/attachments/" + attachment.get("attachment_id")
  64. type :POST
  65. parameters:associateParam
  66. connection:"connectionprojects"
  67. ];
  68. }
  69. }
  70. //Add Dependancy Between Tasks Parameter
  71. dependencyParam = Map();
  72. dependencyParam.put("taskid",newTaskId);
  73. dependencyParam.put("predids",taskId);
  74. dependencyParam.put("projId",projectId);
  75. dependencyParam.put("toupdate","dependencyset");
  76. dependencyParam.put("childprojId",projectId);
  77. dependencyParam.put("dependencytype",dependencyType);
  78. // invoke task dependency Api
  79. dependency = invokeurl
  80. [
  81. url :endPoint + portalId + "/projects/" + projectId + "/taskdependency/"
  82. type :POST
  83. parameters:dependencyParam
  84. connection:"connectionprojects"
  85. ];
  86. info dependency;
  87. info "-------------------------------------";
  88. }
  89. }
  90. return "success";
Info
Customise the task name and description in lines 36 and 37 as needed, then save the function.

Replace "connectionprojects" with your Zoho Projects connection name in lines 10, 21, 51, and 84 of the deluge.

3. Add the below arguments during configuration.



After mapping the arguments, save the function and enter the Task ID when prompted. This custom function will execute automatically whenever an issue status changes from Scheduled, creating the dependent task as defined in the workflow rule.

4. After saving the custom function, Navigate to  → Automation → Workflow Rules → Projects TabNew Workflow Rule with the below settings.

5. Configure the workflow to trigger Based on User Action when a task is Updated, and associate the custom function to execute automatically on the status change.



With this automation in place, tasks are triggered automatically, dependencies are assigned, and supporting attachments are transferred ensuring hand-offs without manual effort.

If you have any questions, feel free to drop a comment below or reach out to us at support@zohoprojects.com.
    • Sticky Posts

    • CodeX Scripts for Enforcing Custom Project Logic

      Every organization has a defined way of executing projects. There are clear expectations around how tasks should move, when projects should progress, and which actions require validation. When these rules are consistently followed, projects remain structured
    • Automation Series: Auto-create Dependent Task on Status Change

      In Zoho Projects, you can automatically create and assign a dependent task when a task’s status is updated. This helps teams stay aligned, ensures reviews happen on time, and reduces manual effort. In this post, we’ll walk through an easy setup using
    • Time Log Reminder

      Tracking the time spent on tasks and issues is one of the most important functions of a timesheet. However, users may forget to update the time logs because they have their own goals to achieve. But, time logs must be updated at regular intervals to keep
    • Introducing the Zoho Projects Learning Space

      Every product has its learning curve, and sometimes having a guided path makes the learning experience smoother. With that goal, we introduce a dedicated learning space for Zoho Projects, a platform where you can explore lessons, learn at your own pace,
    • Update on V2 API End-of-Life Timeline

      Dear Users, Earlier this year, we shared the launch of the V3 APIs and requested users to migrate from the older V2 APIs by December 2025. We have received valuable feedback from our users and partners regarding their migration timelines. We are happy
    • Recent Topics

    • Powering Customer Support with our women

      In Zoho Desk support, women make up 50% of our team. We see this as one of our strengths, reflecting the spirit of this year’s theme, "Give to Gain". Our women find their balance Women carry many responsibilities — they represent frontline support, lead
    • Can't rename groups on Mac desktop app

      I'm working on an up-to-date Mac with a freshly downloaded Notebook app. I'm trying to rename a group within a notebook. Here I have, left to right, a note, a group, and a note. I select the group. On the top left, I select Action. On the dropdown, "Rename"
    • Zoho Forms - Feature Request - Year Field

      Hi Zoho Forms Team, You currently have the following date and time fields: Date Time Date and Time Year and Month It would be useful if you could include a "Year" field For example a recent application I completed said "What year was your house built?"
    • I need help to take Reports for tickets moved between departments.

      Hi, I need help to take Reports for tickets moved between different departments. Pls guide Shyam
    • Export to excel stored amounts as text instead of numbers or accounting

      Good Afternoon, We have a quarterly billing report that we generate from our Requests. It exports to excel. However if we need to add a formula (something as simple as a sum of the column), it doesn't read the dollar amounts because the export stores
    • Increase Round Robin Scheduler Frequency in Zoho Desk

      Dear Zoho Desk Team, We hope this message finds you well. We would like to request an enhancement to the Round Robin Scheduler in Zoho Desk to better address ticket assignment efficiency. Current Behavior At present, the Round Robin Scheduler operates
    • Automation #6 - Prevent Re-opening of Closed Tickets

      This is a monthly series where we pick some common use cases that have been either discussed or most asked about in our community and explain how they can be achieved using one of the automation capabilities in Zoho Desk. Typically when a customer submits
    • Zoho Desk EU slow/unresponsive

      Has anyone else got issues with ZohoDesk today in the EU? It takes an age to come back and if you do start typing something and try and send or save it looks like it times out. We are also getting this pic. ot I can't see anything on https://status.zoho.eu/
    • EU DC Partial Outage Resolved: A Detailed RCA

      Incident Summary Due to an overload on one of the nodes in the EU DC for Zoho Desk, the system was unable to handle the heavy load, causing a slowdown in requests and resulting in a partial outage for customers with data residing in that node. On May
    • Use Zoho Creator as a source for merge templates in Zoho Writer

      Hello all! We're excited to share that we've enhanced Zoho Creator's integration with Zoho Writer to make this combination even more powerful. You can now use Zoho Creator as a data source for mail merge templates in Zoho Writer. Making more data from
    • Perfomance Management - Zoho People

      Hi team, I am looking for performance management data such as KRA, goals, feedback, appraisals, etc., in Zoho Analytics. However, I am unable to find these metrics while editing the setup. Could you please confirm whether these fields are available in
    • Deprecation of the Zoho OAuth connector

      Hello everyone, At Zoho, we continuously evaluate our integrations to ensure they meet the highest standards of security, reliability, and compliance. As part of these ongoing efforts, we've made the decision to deprecate the Zoho OAuth default connector
    • Good news! Calendar in Zoho CRM gets a face lift

      Dear Customers, We are delighted to unveil the revamped calendar UI in Zoho CRM. With a complete visual overhaul aligned with CRM for Everyone, the calendar now offers a more intuitive and flexible scheduling experience. What’s new? Distinguish activities
    • Zoho - Please explain difference between Thread view and Conversation view on Ticket

      I have reviewed the help document here but am still not clear on the difference between the two views. As an example, I just had a back and forth on a ticket: - Customer emails support email. - I email back from Desk. - Customer responds back. - I email back from Desk. On the upper left drop down box on the ticket Zoho Desk now says this is "4 Threads" and "4 Conversations" . How is that 4 threads?? By my count it is 1 thread and 4 conversations (assuming by "conversation" Zoho means number of total
    • Mobile phone version not working well

      I am working on the Zoho Site Builder. In the preview the desktop version looks okay, but in the mobile phone preview many words are cut off in the weirdest (wrong) way. How can I fix that?
    • Zoho Mail iOS app update: Display recipient's nickname on contact suggestion

      Hello everyone! In the most recent version(v3.3.1) of the Zoho Mail iOS app update we have brought in support to display recipient's nickname in contacts suggestion. Please update the app to the latest version directly from the App Store or using the
    • Digest Février - Un résumé de ce qui s'est passé le mois dernier sur Community

      Bonjour chers utilisateurs, Le 26 février, nous avons organisé notre première session Ask the Expert de 2026. Nous sommes heureux de partager que ce fut une session très interactive, avec de nombreuses questions intéressantes posées par nos clients. Si
    • Zoho CRM Case Notes - Share to Customer

      Hi team does anyone know the Api to set a note, against a case, to shared with customer? i cant seem to find it  cheers 
    • Zoho Forms - Feature Request - Past Into Scanning/OCR Field

      Hi Zoho Forms Team, You recently introduced the OCR/Scanning field which I have found great use for with one client who receives work orders as a screenshot from one customer. I want to raise a feature request here which would make that field even more
    • Synching changes to Stripe when changes are made in Zoho Billing

      We have a situation where we have merged customers in Zoho BIlling and then found out later that the payment in Stripe was not updated and still associated with the old customer record. The card gets updated and billed, but that payment is still associated
    • Send out follow-up email in the same thread (threaded conversations in individual emails) from Zoho CRM

      Hi, I'm new to Zoho. I'm trying to send individual emails to my leads one by one. And I'll send out follow up email if I don't hear back from them later. However, instead of sending a new email, I want to reply in the same email thread so that the recipients
    • Depositing funds to account

      Hello, I have been using Quickbooks for many years but am considering moving to Zoho Books so I am currently running through various workflows and am working on the Invoicing aspect. In QB, the process is to create an invoice, receive payment and then
    • 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
    • FSM integration with Books

      Hi, I have spent a few months working with FSM and have come across a critical gap in the functionality, which I find almost shocking....either that, or I am an idiot. The lack of bi-directional sync between Books and FSM on Sales Orders/ Work Orders
    • web to lead

      Can anyone help me how to create web to lead from zoho marketing automation
    • Introducing Workqueue: your all-in-one view to manage daily work

      Hello all, We’re excited to introduce a major productivity boost to your CRM experience: Workqueue, a dynamic, all-in-one workspace that brings every important sales activity, approval, and follow-up right to your fingertips. What is Workqueue? Sales
    • UI issue with Organize Tabs

      When looking at the organize Tabs window (bellow) you can see that some tabs are grayed out. there is also a "Add Module/Web Tab" button. When looking at this screen it's clear that the grayed out tabs can not be removed from the portal user's screen
    • I created a signup form in Zoho Marketing Automation with the correct field mapping, but the data is not being reflected under Leads in Zoho CRM.

      web to lead from zoho marketing automation
    • Pasted Images not being embedded in custom mail

      Hi, I'm making a custom report by email based on commentaries. I have the email ready, all working great except for images that are being pasted in the commentaries. Zoho deals with them as temp images and so it requires authentication to view them, something
    • Kaizen #232 - Building a Ticket Escalation Mechanism from Zoho CRM

      Howdy, Tech Wizards! Picking up the thread from last week, we will continue our Zoho CRM and Zoho Desk integration. In Kaizen #231 - Embedding Zoho Desk Tickets in Zoho CRM, we built a Related List widget that displays open Zoho Desk tickets within the
    • Inactive License for free account.

      I recently upgraded my Cliq subscription not my team (on the free version), are unable to login to their accounts. The error message received is Inactive License Looks like you have not been covered under the current free plan of users. Please contact
    • Deluge scripts

      Why is there not a search function to make it easier to find the script of interest when modifications are required.
    • Zoho Sheet for Desktop

      Does Zoho plans to develop a Desktop version of Sheet that installs on the computer like was done with Writer?
    • Zoho Books (and other Finance Suite Apps) - Clickable Item Name on Invoices and Reports

      Hi Zoho Books team, It would be really helpful if the Item Name on Reports were clicable to take me to the item. The same on Invoices, often I am looking at an invoice and I want to look at the deails of a product. A link here would be helpful to jump
    • Zoho Books - Payment Gateway - Revolut

      Hi Books Team, My feature request if to include the popular platform Revolut as a payment collection option on invoices in Zoho Books. Please upvote if you are also looking for this option.
    • Searching for an item from within an invoice should show any item containing the string, not just those that begin with the string.

      Hello, I've found myself becoming increasingly frustrated with the limited line-item seach when adding new items to an invoice. The problem is that the characters being typed are only being matched from the beginning of the item name.  This might be usable
    • How to Rank Tables by Row Count in Descending Order

      I am trying to understand the consume of lines that grow up so fast in the last week. Is there any way to create a pivot table or query to get TABLE NAME LINES in descending order?
    • Dealing With One-Time Customers on Zoho Books

      Hello there! I am trying to figure out a way to handle One-Time customers without having to create multiple accounts for every single one on Zoho Books. I understand that I can create a placeholder account called "Walk-In Customer", for example, but I
    • Marking a meeting 'done'.

      I would like to somehow mark a meeting 'done' and placed under the contact's page rather than deleting it and having no record of it. Am I missing a button that does this?
    • Feature Request: Render Markdown (.md) files in Zoho Cliq

      Hi, We regularly share Markdown (.md) files in Zoho Cliq. However, when we open these files in Cliq, the content does not render as Markdown—it displays as plain text. This forces us to copy/paste the content into an external Markdown viewer to read it
    • Next Page