Project templates

A project template is an object that allows new projects to be created with a predefined setup, which may include tasks, sections, rules, etc. It simplifies the process of running a workflow that involves a similar set of work every time.

Project templates in organizations are shared with a single team. Currently, the team of a project template cannot be changed via the API.


ProjectTemplateCompact

A Compact object reflects the default fields returned after a successful API request. See input/output options to include more fields in the response.

PropertyTypeDescription
gidstringGlobally unique identifier of the resource, as a string.
resource_typestringThe base type of this resource.
namestringName of the project template.
{
  "gid": "12345",
  "resource_type": "project_template",
  "name": "Packing list"
}

ProjectTemplate

PropertyTypeDescription
gidstringGlobally unique identifier of the resource, as a string.
resource_typestringThe base type of this resource.
colorstring¦nullColor of the project template.
descriptionstringFree-form textual information associated with the project template
html_descriptionstringThe description of the project template with formatting as HTML.
namestringName of the project template.
ownerobjectA user object represents an account in Asana that can be given access to various workspaces, projects, and tasks.
owner.gidstringGlobally unique identifier of the resource, as a string.
owner.resource_typestringThe base type of this resource.
owner.namestringRead-only except when same user as requester. The user’s name.
publicbooleanTrue if the project template is public to its team.
requested_dates[object]Array of date variables in this project template. Calendar dates must be provided for these variables when instantiating a project.
» {}.descriptionstringThe description of what the date variable is used for when instantiating a project.
» {}.gidstringGlobally unique identifier of the date field in the project template. A value of 1 refers to the project start date, while 2 refers to the project due date.
» {}.namestringThe name of the date variable.
teamobjectA team is used to group related projects and people together within an organization. Each project in an organization is associated with a team.
team.gidstringGlobally unique identifier of the resource, as a string.
team.resource_typestringThe base type of this resource.
team.namestringThe name of the team.
requested_roles[object]Array of template roles in this project template. User IDS can be provided for these variables when instantiating a project to assign template tasks to the user.
» {}.gidstringGlobally unique identifier of the resource, as a string.
» {}.resource_typestringThe base type of this resource.
» {}.namestringName of the template role.
{
  "data": {
    "gid": "12345",
    "resource_type": "task",
    "name": "Packing list",
    "description": "These are things we need to pack for a trip.",
    "html_description": "<body>These are things we need to pack for a trip.</body>",
    "public": false,
    "owner": {
      "gid": "12345",
      "resource_type": "task",
      "name": "Greg Sanchez"
    },
    "team": {
      "gid": "12345",
      "resource_type": "task",
      "name": "Marketing"
    },
    "requested_dates": [
      {
        "gid": "1",
        "name": "Start Date",
        "description": "Choose a start date for your project."
      }
    ],
    "color": "light-green",
    "requested_roles": [
      {
        "gid": "12345",
        "resource_type": "task",
        "name": "Designer"
      }
    ]
  }
}