---
title: "Copy Items"
method: POST
path: "/fs-items/copy"
tags: ["Filesystem Items"]
---

# Copy Items

`POST /fs-items/copy`

## Request

- Base URL: `https://api.aspect.inc`
- URL: `https://api.aspect.inc/fs-items/copy`
- Auth: API key in header `Authorization`

Copy items into a directory as a background job; poll GET /fs-items/copy/{job_id}.

## Request body

- FsItemsCopyRequest: API request schema for copying filesystem items into a destination directory. Copying is asynchronous: the endpoint enqueues a copy job and returns its job id, which can be polled via GET /fs-items/copy/{job_id}.
  - `asset_ids` string[], nullable: List of asset IDs to copy
  - `directory_ids` string[], nullable: List of directory IDs to copy (recursively, including all nested items)
  - `symlink_ids` string[], nullable: List of symlink IDs to copy
  - `destination_directory_id` string, uuid, required: ID of the destination parent directory
  - `include_comments` boolean: Whether comment threads (comments, reactions, mentions, and their attachments) carry over to the copied assets
  - `include_metadata` boolean: Whether metadata values carry over to the copied assets
  - `copy_as_proxy` boolean: Copy videos as their stream proxy: the proxy becomes the copied asset's original. Other asset types copy their original.

## Response `201`

Successful Response

- FsItemsCopyResponse: API response schema for an enqueued copy job
  - `job_id` string, uuid, required: ID of the enqueued copy job; poll GET /fs-items/copy/{job_id}
  - `items_total` integer, required: Number of items the job copies: directories, assets, and symlinks

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/aspect/apis/aspect-api.md) - [All operations](https://skmtc.dev/aspect/apis/aspect-api/llms.txt) - [OpenAPI document](https://skmtc.dev/aspect/apis/aspect-api/revisions/28ea5f1adb54?raw)
