object TasksSetParentTaskResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TaskResponse"
    }
  }
}
object TasksSetTaskDependentsRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/ModifyDependentsRequest"
    }
  }
}
object TasksSetTaskDependentsResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EmptyResponse"
    }
  }
}
object TasksUnlinkDependenciesFromTaskRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/ModifyDependenciesRequest"
    }
  }
}
object TasksUnlinkDependenciesFromTaskResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EmptyResponse"
    }
  }
}
object TasksUnlinkDependentsRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/ModifyDependentsRequest"
    }
  }
}
object TasksUnlinkDependentsResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EmptyResponse"
    }
  }
}
object TasksUpdateTaskRecordRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TaskRequest"
    }
  }
}
object TasksUpdateTaskRecordResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TaskResponse"
    }
  }
}
object TeamAddUserRequest
{
  "type": "object",
  "properties": {
    "user": {
      "type": "string",
      "example": "12345",
      "description": "A string identifying a user. This can either be the string \"me\", an email, or the gid of a user."
    }
  },
  "description": "A user identification object for specification with the addUser/removeUser endpoints."
}
object TeamCompact
{
  "allOf": [
    {
      "$ref": "#/components/schemas/AsanaResource"
    },
    {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "example": "Marketing",
          "description": "The name of the team."
        }
      },
      "description": "A *team* is used to group related projects and people together within an organization. Each project in an organization is associated with a team.",
      "x-docs-overrides": {
        "properties.resource_type.example": "team"
      }
    }
  ]
}
object TeamMembershipCompact
{
  "allOf": [
    {
      "$ref": "#/components/schemas/AsanaResource"
    },
    {
      "type": "object",
      "properties": {
        "team": {
          "$ref": "#/components/schemas/TeamCompact"
        },
        "user": {
          "$ref": "#/components/schemas/UserCompact"
        },
        "is_admin": {
          "type": "boolean",
          "example": false,
          "description": "Describes if the user is a team admin."
        },
        "is_guest": {
          "type": "boolean",
          "example": false,
          "description": "Describes if the user is a guest in the team."
        },
        "is_limited_access": {
          "type": "boolean",
          "example": false,
          "readOnly": true,
          "description": "Describes if the user has limited access to the team."
        }
      },
      "description": "This object represents a user's connection to a team.",
      "x-docs-overrides": {
        "properties.resource_type.example": "team_membership"
      }
    }
  ]
}
object TeamMembershipsGetCompactRecordsResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TeamMembershipCompact"
      }
    },
    "next_page": {
      "$ref": "#/components/schemas/NextPage"
    }
  }
}
object TeamMembershipsGetCompactResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TeamMembershipCompact"
      }
    },
    "next_page": {
      "$ref": "#/components/schemas/NextPage"
    }
  }
}
object TeamMembershipsGetRecordByIdResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamMembershipCompact"
    }
  }
}
object TeamMembershipsGetUserCompactResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TeamMembershipCompact"
      }
    },
    "next_page": {
      "$ref": "#/components/schemas/NextPage"
    }
  }
}
object TeamRemoveUserRequest
{
  "type": "object",
  "properties": {
    "user": {
      "type": "string",
      "example": "12345",
      "description": "A string identifying a user. This can either be the string \"me\", an email, or the gid of a user."
    }
  },
  "description": "A user identification object for specification with the addUser/removeUser endpoints."
}
object TeamRequest
{
  "allOf": [
    {
      "$ref": "#/components/schemas/TeamCompact"
    },
    {
      "type": "object",
      "properties": {
        "visibility": {
          "enum": [
            "secret",
            "request_to_join",
            "public"
          ],
          "type": "string",
          "description": "The visibility of the team to users in the same organization\n"
        },
        "description": {
          "type": "string",
          "example": "All developers should be members of this team.",
          "description": "The description of the team.\n"
        },
        "organization": {
          "type": "string",
          "example": "123456789",
          "description": "The organization/workspace the team belongs to. This must be the same organization you are in and cannot be changed once set.\n"
        },
        "html_description": {
          "type": "string",
          "example": "<body><em>All</em> developers should be members of this team.</body>",
          "description": "The description of the team with formatting as HTML.\n"
        },
        "team_member_removal_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can remove team members\n"
        },
        "guest_invite_management_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can accept or deny guest invites for a given team\n"
        },
        "join_request_management_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can accept or deny join team requests for a Membership by Request team\n"
        },
        "member_invite_management_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can accept or deny member invites for a given team\n"
        },
        "edit_team_name_or_description_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can edit team name and description\n"
        },
        "edit_team_visibility_or_trash_team_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can edit team visibility and trash teams\n"
        }
      }
    }
  ]
}
object TeamResponse
{
  "allOf": [
    {
      "$ref": "#/components/schemas/TeamCompact"
    },
    {
      "type": "object",
      "properties": {
        "visibility": {
          "enum": [
            "secret",
            "request_to_join",
            "public"
          ],
          "type": "string",
          "description": "The visibility of the team to users in the same organization\n"
        },
        "description": {
          "type": "string",
          "example": "All developers should be members of this team.",
          "description": "[Opt In](https://raw.githubusercontent.com). The description of the team.\n"
        },
        "organization": {
          "allOf": [
            {
              "$ref": "#/components/schemas/WorkspaceCompact"
            },
            {
              "type": "object",
              "description": "The organization/workspace the team belongs to.\n"
            }
          ]
        },
        "permalink_url": {
          "type": "string",
          "example": "https://app.asana.com/0/resource/123456789/list",
          "readOnly": true,
          "description": "A url that points directly to the object within Asana."
        },
        "html_description": {
          "type": "string",
          "example": "<body><em>All</em> developers should be members of this team.</body>",
          "description": "[Opt In](https://raw.githubusercontent.com). The description of the team with formatting as HTML.\n"
        },
        "team_member_removal_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can remove team members\n"
        },
        "guest_invite_management_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can accept or deny guest invites for a given team\n"
        },
        "join_request_management_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can accept or deny join team requests for a Membership by Request team\n"
        },
        "member_invite_management_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can accept or deny member invites for a given team\n"
        },
        "edit_team_name_or_description_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can edit team name and description\n"
        },
        "edit_team_visibility_or_trash_team_access_level": {
          "enum": [
            "all_team_members",
            "only_team_admins"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Controls who can edit team visibility and trash teams\n"
        }
      }
    }
  ]
}
object TeamsAddUserToTeamRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamAddUserRequest"
    }
  }
}
object TeamsAddUserToTeamResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamMembershipCompact"
    }
  }
}
object TeamsCreateTeamRecordRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamRequest"
    }
  }
}
object TeamsCreateTeamRecordResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamResponse"
    }
  }
}
object TeamsGetTeamRecordResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamResponse"
    }
  }
}
object TeamsGetUserTeamsResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TeamCompact"
      }
    },
    "next_page": {
      "$ref": "#/components/schemas/NextPage"
    }
  }
}
object TeamsListWorkspaceTeamsResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TeamCompact"
      }
    },
    "next_page": {
      "$ref": "#/components/schemas/NextPage"
    }
  }
}
object TeamsRemoveUserFromTeamRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamRemoveUserRequest"
    }
  }
}
object TeamsRemoveUserFromTeamResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EmptyResponse"
    }
  }
}
object TeamsUpdateTeamRecordRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamRequest"
    }
  }
}
object TeamsUpdateTeamRecordResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TeamResponse"
    }
  }
}
object TemplateRole
{
  "allOf": [
    {
      "$ref": "#/components/schemas/AsanaResource"
    },
    {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "example": "Designer",
          "description": "Name of the template role."
        }
      }
    }
  ]
}
object TimePeriodBase
{
  "allOf": [
    {
      "$ref": "#/components/schemas/TimePeriodCompact"
    },
    {
      "type": "object",
      "properties": {
        "parent": {
          "allOf": [
            {
              "$ref": "#/components/schemas/TimePeriodCompact"
            },
            {
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object TimePeriodCompact
{
  "allOf": [
    {
      "$ref": "#/components/schemas/AsanaResource"
    },
    {
      "type": "object",
      "properties": {
        "end_on": {
          "type": "string",
          "example": "2019-09-14",
          "description": "The localized end date of the time period in `YYYY-MM-DD` format."
        },
        "period": {
          "enum": [
            "FY",
            "H1",
            "H2",
            "Q1",
            "Q2",
            "Q3",
            "Q4"
          ],
          "type": "string",
          "example": "Q1",
          "description": "The cadence and index of the time period. The value is one of: `FY`, `H1`, `H2`, `Q1`, `Q2`, `Q3`, or `Q4`."
        },
        "start_on": {
          "type": "string",
          "example": "2019-09-13",
          "description": "The localized start date of the time period in `YYYY-MM-DD` format."
        },
        "display_name": {
          "type": "string",
          "example": "Q1 FY22",
          "description": "A string representing the cadence code and the fiscal year."
        }
      },
      "x-docs-overrides": {
        "properties.resource_type.example": "time_period"
      }
    }
  ]
}
object TimePeriodsGetCompactTimePeriodsResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TimePeriodCompact"
      }
    },
    "next_page": {
      "$ref": "#/components/schemas/NextPage"
    }
  }
}
object TimePeriodsGetFullRecordResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TimePeriodBase"
    }
  }
}
object TimeTrackingEntriesCreateNewTimeEntryRecordRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/CreateTimeTrackingEntryRequest"
    }
  }
}
object TimeTrackingEntriesCreateNewTimeEntryRecordResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TimeTrackingEntryBase"
    }
  }
}
object TimeTrackingEntriesDeleteTimeEntryResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EmptyResponse"
    }
  }
}
object TimeTrackingEntriesGetForTaskResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TimeTrackingEntryCompact"
      }
    },
    "next_page": {
      "$ref": "#/components/schemas/NextPage"
    }
  }
}
object TimeTrackingEntriesGetRecordResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TimeTrackingEntryBase"
    }
  }
}
object TimeTrackingEntriesUpdateTimeTrackingEntryRequest
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/UpdateTimeTrackingEntryRequest"
    }
  }
}
object TimeTrackingEntriesUpdateTimeTrackingEntryResponse
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/TimeTrackingEntryBase"
    }
  }
}
object TimeTrackingEntryBase
{
  "allOf": [
    {
      "$ref": "#/components/schemas/TimeTrackingEntryCompact"
    },
    {
      "type": "object",
      "properties": {
        "task": {
          "$ref": "#/components/schemas/TaskCompact",
          "readOnly": true
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "example": "2012-02-22T02:06:58.147Z",
          "readOnly": true,
          "description": "The time at which this resource was created."
        }
      }
    }
  ]
}
object TimeTrackingEntryCompact
{
  "allOf": [
    {
      "$ref": "#/components/schemas/AsanaResource"
    },
    {
      "type": "object",
      "properties": {
        "created_by": {
          "$ref": "#/components/schemas/UserCompact",
          "readOnly": true
        },
        "entered_on": {
          "type": "string",
          "format": "date",
          "example": "2015-03-14",
          "description": "The day that this entry is logged on."
        },
        "duration_minutes": {
          "type": "integer",
          "example": 12,
          "description": "Time in minutes tracked by the entry."
        }
      }
    }
  ]
}
object TypeaheadGetResultsResponse
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AsanaNamedResource"
      }
    }
  },
  "description": "A generic list of objects, such as those returned by the typeahead search endpoint."
}
object UpdateTimeTrackingEntryRequest
{
  "type": "object",
  "properties": {
    "entered_on": {
      "type": "string",
      "format": "date",
      "example": "2023-03-19",
      "description": "*Optional*. The day that this entry is logged on. Defaults to today if no day specified"
    },
    "duration_minutes": {
      "type": "integer",
      "example": 12,
      "description": "*Optional*. Time in minutes tracked by the entry"
    }
  }
}
object UserBaseResponse
{
  "allOf": [
    {
      "$ref": "#/components/schemas/UserCompact"
    },
    {
      "type": "object",
      "properties": {
        "email": {
          "type": "string",
          "format": "email",
          "example": "gsanchez@example.com",
          "readOnly": true,
          "description": "The user's email address."
        },
        "photo": {
          "type": "object",
          "example": {
            "image_21x21": "https://...",
            "image_27x27": "https://...",
            "image_36x36": "https://...",
            "image_60x60": "https://...",
            "image_128x128": "https://...",
            "image_1024x1024": "https://..."
          },
          "nullable": true,
          "readOnly": true,
          "properties": {
            "image_21x21": {
              "type": "string",
              "format": "uri"
            },
            "image_27x27": {
              "type": "string",
              "format": "uri"
            },
            "image_36x36": {
              "type": "string",
              "format": "uri"
            },
            "image_60x60": {
              "type": "string",
              "format": "uri"
            },
            "image_128x128": {
              "type": "string",
              "format": "uri"
            },
            "image_1024x1024": {
              "type": "string",
              "format": "uri"
            }
          },
          "description": "A map of the user’s profile photo in various sizes, or null if no photo is set. Sizes provided are 21, 27, 36, 60, 128, and 1024. All images are in PNG format, except for 1024 (which is in JPEG format)."
        }
      }
    }
  ]
}
object UserCompact
{
  "allOf": [
    {
      "$ref": "#/components/schemas/AsanaResource"
    },
    {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "example": "Greg Sanchez",
          "description": "*Read-only except when same user as requester*. The user’s name."
        }
      },
      "description": "A *user* object represents an account in Asana that can be given access to various workspaces, projects, and tasks.",
      "x-docs-overrides": {
        "properties.resource_type.example": "user"
      }
    }
  ]
}
object UserResponse
{
  "allOf": [
    {
      "$ref": "#/components/schemas/UserBaseResponse"
    },
    {
      "type": "object",
      "properties": {
        "workspaces": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/WorkspaceCompact"
          },
          "readOnly": true,
          "description": "Workspaces and organizations this user may access.\nNote\\: The API will only return workspaces and organizations that also contain the authenticated user."
        }
      }
    }
  ]
}
object UserTaskListCompact
{
  "allOf": [
    {
      "$ref": "#/components/schemas/AsanaResource"
    },
    {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "example": "My Tasks in My Workspace",
          "description": "The name of the user task list."
        },
        "owner": {
          "$ref": "#/components/schemas/UserCompact"
        },
        "workspace": {
          "$ref": "#/components/schemas/WorkspaceCompact"
        }
      },
      "description": "A user task list represents the tasks assigned to a particular user. It provides API access to a user’s [My Tasks](https://asana.com/guide/help/fundamentals/my-tasks) view in Asana.",
      "x-docs-overrides": {
        "properties.resource_type.example": "user_task_list"
      },
      "x-konfig-properties": {
        "owner": {
          "readOnly": true,
          "description": "The owner of the user task list, i.e. the person whose My Tasks is represented by this resource."
        },
        "workspace": {
          "readOnly": true,
          "description": "The workspace in which the user task list is located."
        }
      }
    }
  ]
}
Load more schemas