Update Project

Definition

This action allows a user to modify the attributes of an existing project within Asana. By specifying a project, you can update various details such as its name, description, due dates, team assignment, and status, including archiving or making it public.

  • Key capabilities:
  • Identify a specific project within a workspace to modify.
  • Update core project details including its name, notes, start/due dates, and team.
  • Change project settings like its archived status, public visibility, and custom fields.

This action is fundamental for automating project management workflows, enabling dynamic updates to project information based on triggers from other systems or steps in a flow.


Inputs

  1. connection
  • Purpose: This field establishes a secure, authenticated link to your Asana account. It authorizes zenphi to interact with your Asana workspaces and projects on your behalf.
  • Practical Guidance: You must select a pre-configured Asana connection from the dropdown menu. If you haven't connected your Asana account yet, you will be prompted to create a new connection. This is a one-time setup for each account you wish to use.
  • Use Case Context: You would use this field to grant zenphi the necessary permissions to access and update the specific project you want to change.
  1. Workspace
  • Purpose: This field specifies the exact Asana Workspace that contains the project you intend to update. Asana organizes all projects within a Workspace.
  • Practical Guidance: After selecting a valid connection, a dropdown list of all available Workspaces in your Asana account will be displayed. You must select one from this list.
  • Use Case Context: You would use the 'Workspace' field to narrow down the search and ensure zenphi is looking for your project in the correct organizational area.
  1. Project id
  • Purpose: This field is the unique identifier for the specific project you wish to update.
  • Practical Guidance: You can provide this ID in two ways. You can select it from the dropdown list, which is a static value that won't change. Alternatively, you can use a dynamic value by clicking the token picker icon and selecting the 'Project ID' output from a previous action, such as 'Find Project' or 'Create Project'.
  • Use Case Context: You would use the 'Project id' field to tell zenphi precisely which project's details need to be modified.
  1. Optional fields
  • Purpose: This section contains all the specific details of the project that you can change. You only need to provide values for the fields you wish to update.
  • Practical Guidance: For each field you want to modify, you can enter a static value directly (e.g., typing "New Project Name") or use the token picker to insert a dynamic value from a previous step (e.g., using a project name from a Google Sheet).
  • Use Case Context: You would use these fields to perform the actual update, such as renaming a project, changing its due date, or adding a description.
  • Name: The new name for the project.
  • Archived: A true/false value to determine if the project should be archived. Setting this to true will hide the project from the default UI in Asana.
  • Public: A true/false value. If set to true, the project will be visible to all members of its assigned team.
  • Notes: The free-form text description or notes associated with the project.
  • Start On: The date the project is scheduled to begin, typically in YYYY-MM-DD format.
  • Due On: The date the project is scheduled to be completed, in YYYY-MM-DD format.
  • Team: The unique identifier of the team that should have access to this project. You can select from a list or provide a dynamic ID.
  • custom fields: If your project has custom fields configured in Asana, they will appear here, allowing you to update their values.

Outputs

  1. Project id
  • Data Description: The globally unique identifier for the project that was just updated.
  • Workflow Utility: This ID is crucial for interacting with the same project in later steps. For example, you could pass this ID to an 'Add Task to Project' action to add new tasks to the updated project or to a 'Get Project Details' action to verify the changes.
  1. Name
  • Data Description: The new, updated name of the project.
  • Workflow Utility: This output can be used in notification actions, such as sending an email or a Slack message, to confirm that the project has been renamed (e.g., "Project '[Name]' has been successfully updated.").
  1. Archived
  • Data Description: A boolean (true or false) value indicating the current archived status of the project after the update.
  • Workflow Utility: You can use this in a conditional 'If' branch. For example, if 'Archived' is true, you could trigger a flow to notify team members that the project has been closed.
  1. Color
  • Data Description: The color associated with the project in the Asana UI.
  • Workflow Utility: While often used for visual organization, this could be used in logging or reporting steps to categorize projects by color.
  1. Create At
  • Data Description: The timestamp indicating when the project was originally created. This value does not change during an update.
  • Workflow Utility: This is useful for reporting and auditing purposes, allowing you to calculate the total lifespan of a project once it's completed.
  1. Public
  • Data Description: A boolean (true or false) value indicating if the project is public to its team after the update.
  • Workflow Utility: This can be used in a conditional path to manage permissions. For instance, if a project is made public, you could automatically post a link to it in a shared team channel.
  1. Permalink URL
  • Data Description: A direct, permanent web link to the project in the Asana application.
  • Workflow Utility: This is extremely useful for notifications. You can include this URL in an email, Slack message, or a task description to give users a one-click way to navigate directly to the updated project.
  1. Text
  • Data Description: This field is deprecated and generally not used; it is retained for legacy purposes.
  • Workflow Utility: It is recommended to use the 'Notes' field instead for project descriptions.
  1. Notes
  • Data Description: The full text of the project's description or notes after the update.
  • Workflow Utility: You can pass this content to other systems. For example, you could sync the project notes with a Confluence page or a Google Doc for more detailed documentation.
  1. modified at
  • Data Description: The timestamp indicating the exact time and date the project was last updated by this action.
  • Workflow Utility: This is essential for logging and auditing. You can record this timestamp in a spreadsheet or database to track the history of changes to a project.
  1. Due on
  • Data Description: The project's due date in YYYY-MM-DD format after the update.
  • Workflow Utility: This can be used to trigger time-based automations. For example, you could use this date to create a reminder task that is due one week before the project's 'Due on' date.
  1. Owner
  • Data Description: An object containing information about the user who owns the project.
  • id: The unique identifier for the project owner.
  • name: The display name of the project owner.
  • Workflow Utility: The owner's 'id' can be used to assign them a follow-up task, while the 'name' can be used to personalize notifications (e.g., "Project updated. Current owner: [Owner.name]").
  1. Workspace
  • Data Description: An object containing details about the workspace the project belongs to.
  • id: The unique identifier for the workspace.
  • name: The name of the workspace.
  • Workflow Utility: This information is useful for logging and for actions that require a Workspace ID as an input, ensuring subsequent steps operate within the same context.
  1. Team
  • Data Description: An object containing details about the team the project is assigned to.
  • id: The unique identifier for the team.
  • name: The name of the team.
  • Workflow Utility: The team 'id' or 'name' can be used to send a summary notification to the entire team's communication channel or to list all members of that team for further processing.
  1. members
  • Data Description: A list of user objects representing all members of the project. Each object contains:
  • id: The unique identifier for the member.
  • name: The display name of the member.
  • Workflow Utility: This list is perfect for use in a 'For Each' loop. You could iterate through each member to send them a personalized email about the project update or assign them all a standard review task.
  1. followers
  • Data Description: A list of user objects representing all followers of the project. Each object contains:
  • id: The unique identifier for the follower.
  • name: The display name of the follower.
  • Workflow Utility: Similar to members, this list can be used in a 'For Each' loop to send notifications to everyone who is following the project, ensuring all stakeholders are aware of the changes.

Example Use Cases

  1. Automate Project Status Transitions Automatically archive a project in Asana once all its tasks are marked as complete in a connected system.
  2. Sync Deadlines from External Calendars When a key project milestone is updated in a Google Calendar or Outlook Calendar, dynamically update the Due On date in the corresponding Asana project.
  3. Standardize Project Information from Forms Use data submitted through a Google Form or SharePoint list to update a project's name, description, and custom fields, ensuring consistency across all projects.
  4. Reassign Projects on Team Changes If a project owner is changed in your HR system, automatically update the Team and Owner fields in Asana to reflect the new assignment.

Example

Scenario: A marketing agency uses Asana to manage client campaigns. When a campaign's scope is expanded, the project manager fills out a "Project Change Request" Google Form with the updated campaign name and a revised project brief. This process is currently manual, requiring an administrator to copy and paste the new information into Asana, which can lead to delays and errors. The goal is to automate this process so that form submissions instantly update the correct Asana project.

Steps to Implement:

  1. Set Up the Trigger: Begin the zenphi flow with a Google Forms "New Response" trigger. The form should have fields to capture the Asana Project ID, the New Project Name, and the Updated Project Brief.
  2. Configure the Update Project Action: Drag and drop the Asana Update Project action onto the canvas.
  • Connection: Select your pre-configured Asana connection.
  • Workspace: Choose the workspace where your client projects are located (e.g., "Client Campaigns").
  • Project id: Use the token picker (chain icon) to insert the Asana Project ID from the Google Form trigger output.
  • Name: Use the token picker to insert the New Project Name from the form output.
  • Notes: Use the token picker to insert the Updated Project Brief from the form output.
  1. Add a Confirmation Notification: Following the Update Project action, add a "Send email" action.
  • To: Use the Owner.email token from the Update Project action's output to notify the project owner.
  • Subject: Create a dynamic subject line like "Project Updated: [Name]", using the Name output token.
  • Body: Include details of the update and provide a direct link to the project using the Permalink URL output token.

Outcome: By automating this workflow, the agency eliminates manual data entry, ensuring that project information in Asana is updated in real-time as soon as a change request is submitted. This reduces administrative overhead, prevents data entry errors, and provides project managers and stakeholders with immediate access to the most current project details, improving overall project coordination and accuracy.

Best Practices

  1. Use Dynamic Project IDs Instead of hardcoding the Project ID, always use a dynamic token from a previous step, such as a Find Project action or a trigger. This makes your flow adaptable and prevents it from failing if you need to run it for different projects.

  2. Update Only Necessary Fields Only populate the optional fields that you intend to change. Leaving a field blank will not alter its existing value in Asana. This practice prevents accidental overwrites of important project data that you did not intend to modify.

  3. Incorporate Confirmation and Error Handling After the update action, send a confirmation notification (e.g., an email or Teams message) using the Permalink URL and Name outputs to confirm success. Wrap the action in a Try-Catch block to manage potential errors, such as an invalid Project ID, and notify an administrator if the update fails.

  4. Verify Custom Field Data Types If you are updating custom fields, ensure the data you provide matches the expected format in Asana (e.g., text, number, or a specific dropdown option). Mismatched data types are a common source of errors.