---
title: "Creates a copy of the task list."
method: POST
path: "/projects/{projectId}/tasklists/{taskListId}/copy"
tags: ["taskLists"]
---

# Creates a copy of the task list.

`POST /projects/{projectId}/tasklists/{taskListId}/copy`

A new task list will be created with the same name as the original one.
            All tasks and subtasks will also be copied in this operation.
            Comments, files and activity logs are not copied.
            To copy a task list, the user needs to have 'ProjectPlanning'
            permissions in general or in the project the task list belongs to.

<Check title="Required Permissions" icon="key">Any authenticated user.</Check>

## Path parameters

- `projectId` string, uuid, required
- `taskListId` string, uuid, required

## Headers

- `Authorization` string, required

## Response `200`

OK

- TaskList — Represents a full task list with calculated duration properties. Extends TaskList with additional computed fields.
  - `id` string, uuid — The id of the task list.
  - `createdOn` string, date-time — The date this task list was created.
  - `createdBy` string, uuid — The id of the user who created this task list.
  - `updatedOn` string, date-time — The date this task list was last modified.
  - `updatedBy` string, uuid — The id of the user who last modified this task list.
  - `name` string, nullable — The name of the list.
  - `order` number, double, nullable — The order of the list.
  - `plannedDuration` integer, nullable — The planned duration for this task list, in seconds.
  - `totalPlannedDuration` integer, nullable — The total planned duration for this task list, including all primary tasks (parent tasks which have this tacklist as PrimaryTaskListId), in seconds. Calculated: sum PlannedDuration of primary tasks in list Archived task lists are not included in the calculation.
  - `totalPlannedDurationWithHierarchy` integer, nullable — The total planned duration for this task list, including all primary tasks (parent tasks which have this task list as PrimaryTaskListId), in seconds. Calculated: max(PlannedDuration, sum TotalPlannedDurationWithHierarchy of primary tasks in list) Archived task lists are not included in the calculation.
  - `isArchived` boolean — Whether the task list has been archived.
  - `isHiddenForConnectUsers` boolean — True if the task in this list will be not visible for external workspace users. False otherwise.
  - `trackedDuration` integer — The total duration of time trackings for tasks in this task list, in seconds. Includes both billable and non-billable time trackings. Backend-calculated property. When hierarchy feature flag is enabled: only tasks with PrimaryTaskListId == this list. When hierarchy feature flag is disabled: all tasks associated with this list.

## Other responses

- `401` — Unauthorized
- `404` — Not Found

---

[API](https://skmtc.net/awork-io/apis/api-v1-reference.md) · [All operations](https://skmtc.net/awork-io/apis/api-v1-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/awork-io/api-v1-reference/versions/f784a53f60df/schema)
