---
title: "Copy a folder"
method: POST
path: "/api/v2/folders/copy"
tags: ["Folders"]
---

# Copy a folder

`POST /api/v2/folders/copy`

Creates a new folder by copying a **source folder** (`template_id`) into a target project. By default only the folder shell is copied; enable the `copy_*` flags to duplicate its task lists, tasks, and their details.

Required: `name`, `template_id` (the source folder), and `project_id`.

### Copy flags

Copying cascades through levels: enable `copy_task_lists` to bring over the folder's task lists, then `copy_open_tasks` / `copy_closed_tasks` to bring over their tasks, then the per-task flags to bring over task details. All `copy_*` flags default to `false`.

| Flag(s) | Prerequisite | Notes |
|---|---|---|
| `copy_task_lists` | — | The "task lists" gate |
| `copy_open_tasks`, `copy_closed_tasks` | `copy_task_lists` | The "tasks" gate |
| `copy_task_comments`, `copy_task_description`, `copy_task_subscribers`, `copy_task_attachments` | `copy_open_tasks` or `copy_closed_tasks` | — |
| `copy_task_open_todos`, `copy_task_closed_todos` | `copy_open_tasks` or `copy_closed_tasks` | — |
| `copy_task_open_subtasks`, `copy_task_closed_subtasks` | `copy_open_tasks` or `copy_closed_tasks` | — |
| `copy_task_dependencies` | `copy_open_tasks` or `copy_closed_tasks` | — |
| `copy_assignees`, `copy_tags`, `copy_due_date`, `copy_start_date`, `copy_repeat`, `copy_estimate` | `copy_open_tasks` or `copy_closed_tasks` | — |
| `copy_custom_fields` | `copy_open_tasks` or `copy_closed_tasks` | Task custom field values |

Enabling tasks without `copy_task_lists` returns `422` (`task_lists_required`); enabling any per-task flag without a tasks gate returns `422` (`tasks_required`).

### Minimal copy (shell only)
```json
{
  "data": {
    "type": "folders",
    "attributes": {
      "name": "Design (copy)",
      "template_id": 88440,
      "project_id": 31002
    }
  }
}
```

### Full copy with task lists and tasks
```json
{
  "data": {
    "type": "folders",
    "attributes": {
      "name": "Design (copy)",
      "template_id": 88440,
      "project_id": 31002,
      "copy_task_lists": true,
      "copy_open_tasks": true,
      "copy_task_comments": true,
      "copy_task_description": true,
      "copy_task_subscribers": true,
      "copy_task_attachments": true,
      "copy_task_open_todos": true,
      "copy_task_open_subtasks": true,
      "copy_task_dependencies": true,
      "copy_assignees": true,
      "copy_tags": true,
      "copy_due_date": true,
      "copy_start_date": true,
      "copy_repeat": true,
      "copy_estimate": true,
      "copy_custom_fields": true
    }
  }
}
```

## Headers

- `X-Organization-Id` string, required

## Response `201`

A single folder resource response.

## Other responses

- `422` — The folder could not be copied due to validation errors.

---

[API](https://skmtc.net/productive/apis/api-documentation.md) · [All operations](https://skmtc.net/productive/apis/api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/productive/api-documentation/versions/6bb0150a5c5f/schema)
