---
metadata:
  - name: generator
    content: Diplodoc Platform v5.44.0
alternate:
  - https://yandex.ru/dev/disk-api/doc/ru/reference/copy_shd.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/disk-api/doc/ru/llms.txt

# Копирование файла или папки на общем диске

Метод позволяет копировать файлы и папки на общем диске. Для этого нужно указать путь к ресурсу и требуемый путь к его копии.

Метод могут использовать как администраторы, так и другие сотрудники организации, у которых есть права на чтение данных с общего диска и запись на него.

Для OAuth-приложения необходимо наличие прав:
* `cloud_api:disk.read`
* `cloud_api:disk.write`

## Формат запроса {#request}

Метод: ##POST##.

```
https://cloud-api.yandex.net/v1/disk/virtual-disks/resources/copy
 ? [from](*popup-vd_resource_from-copy)=<путь к копируемому ресурсу>
 & [path](*popup-vd_resource_path-copy)=<требуемый путь к копии ресурса>
 & [[overwrite](*popup-overwrite)=<признак перезаписи>]
 & [[force_async](*popup-force_async)=<признак асинхронного выполнения операции>]
```

### Описание query-параметров {#query}

from[*](*popup-a)
: Путь к копируемому ресурсу на общем диске.

<!-- source: ru/_includes/reference/shd/resources/path-disk-area.md -->
Указывается в следующем формате:

```
vd:<vd_hash>:disk:/<путь внутри общего диска>
```

Где 

- `<vd_hash>` — метка общего диска. Пример `vd_hash`: ##9Uyws5pZmXgDNA##. Метку общего диска можно получить:
    - по API — с помощью метода, который возвращает информацию о статусе создания общего диска ([посмотреть описание метода](https://yandex.ru/dev/disk-api/doc/ru/reference/shared-disks/shd-create-state.md));
    - в интерфейсе Яндекс Диска — перейдите в общий диск, метка будет указана в персональной строке после `vd/`.

- `<путь внутри общего диска>` — путь до файла или папки внутри общего диска.

Например, путь до файла ##test_file.txt##, который лежит в папке ##test_folder## общего диска указывается так:

```
vd:9Uyws5pZmXgDNA:disk:/test_folder/test_file.txt
```
<!-- endsource: ru/_includes/reference/shd/resources/path-disk-area.md -->


path[*](*popup-a)
: Путь к создаваемой копии ресурса на общем диске. Максимальная длина нового пути к ресурсу — 32760 символов.

<!-- source: ru/_includes/reference/shd/resources/path-disk-area.md -->
Указывается в следующем формате:

```
vd:<vd_hash>:disk:/<путь внутри общего диска>
```

Где 

- `<vd_hash>` — метка общего диска. Пример `vd_hash`: ##9Uyws5pZmXgDNA##. Метку общего диска можно получить:
    - по API — с помощью метода, который возвращает информацию о статусе создания общего диска ([посмотреть описание метода](https://yandex.ru/dev/disk-api/doc/ru/reference/shared-disks/shd-create-state.md));
    - в интерфейсе Яндекс Диска — перейдите в общий диск, метка будет указана в персональной строке после `vd/`.

- `<путь внутри общего диска>` — путь до файла или папки внутри общего диска.

Например, путь до файла ##test_file.txt##, который лежит в папке ##test_folder## общего диска указывается так:

```
vd:9Uyws5pZmXgDNA:disk:/test_folder/test_file.txt
```
<!-- endsource: ru/_includes/reference/shd/resources/path-disk-area.md -->


overwrite
: Признак перезаписи. Учитывается, если ресурс копируется в папку, в которой уже есть ресурс с таким именем.

Допустимые значения:

- `false` — отменить копирование и не перезаписывать файлы. Используется по умолчанию.
- `true` — копировать, удаляя имеющиеся файлы с совпадающими именами.


force_async
: Параметр указывает на возможность асинхронного выполнения операции.

Допустимые значения:

- `false` — операция не является асинхронной: следующий запрос можно отправлять только тогда, когда выполнен предыдущий.
- `true` — асинхронная операция: следующий запрос можно отправлять, не дожидаясь выполнения предыдущего.


\* Обязательный параметр.


### Заголовок {#header}

```
Authorization: OAuth <token>
```

## Формат ответа {#response}

### Успешный ответ

<!-- source: ru/_includes/reference/copy/id-response/response-intro.md -->
Если запрос был обработан без ошибок, API составляет тело ответа в зависимости от вида указанного ресурса — ответ для пустой папки или файла отличается от ответа для непустой папки. 
<!-- endsource: ru/_includes/reference/copy/id-response/response-intro.md -->

#### Файл или пустая папка {#file}

API отвечает кодом `201 Created` (ресурс успешно скопирован), и возвращает ссылку на мета-информацию о созданном ресурсе в теле ответа в объекте [Link](https://yandex.ru/dev/disk-api/doc/ru/reference/response-objects.md#link).

Пример ответа:

```json
{
  "href": "https://cloud-api.yandex.net/v1/disk/resources?path=disk%3A%2Ffoo%2Fbar",
  "method": "GET",
  "templated": false
}
```

#### Непустая папка {#folder}

Непустая папка может копироваться в течение произвольного времени, поэтому API отвечает кодом `202 Accepted` (копирование папки начато).

<!-- source: ru/_includes/reference/copy/id-response/asynch-explain.md -->
Приложения должны самостоятельно следить за [статусами запрошенных операций](https://yandex.ru/dev/disk-api/doc/ru/reference/operations.md). API возвращает ссылку на статус запущенной по запросу операции в теле ответа в объекте [Link](https://yandex.ru/dev/disk-api/doc/ru/reference/response-objects.md#link).
<!-- endsource: ru/_includes/reference/copy/id-response/asynch-explain.md -->

Пример ответа:

```json
{
  "href": "https://cloud-api.yandex.net/v1/disk/operations?id=33ca7d03ab21ct41b4a40182e78d828a3f8b72cdb5f4c0e94cc4b1449a63a2fe",
  "method": "GET",
  "templated": false
}
```

#### Описание элементов ответа

<!-- source: ru/_includes/reference/response-objects/id-link/link-table.md -->


#|
|| **Элемент** | **Описание**||
|| `href` | URL. Может быть шаблонизирован, см. ключ `templated`. ||
|| `method` | HTTP-метод для запроса URL из ключа `href`. ||
|| `templated` | Признак URL, который был шаблонизирован согласно [RFC 6570](http://tools.ietf.org/html/rfc6570). Возможные значения:

- «true» — URL шаблонизирован: прежде чем отправлять запрос на этот адрес, следует указать нужные значения параметров вместо значений в фигурных скобках.
- «false» — URL может быть запрошен без изменений.||
|#
<!-- endsource: ru/_includes/reference/response-objects/id-link/link-table.md -->

### Ответ с ошибкой

<!-- source: ru/_includes/reference/response-error.md -->
Если запрос вызвал ошибку, возвращается подходящий код ответа, а тело ответа содержит [описание ошибки](https://yandex.ru/dev/disk-api/doc/ru/reference/response-objects.md#error).
<!-- endsource: ru/_includes/reference/response-error.md -->

Некоторые возможные ошибки:

* `400` — Некорректные данные.
* `401` — Не авторизован.
* `403` — Доступ к ресурсу запрещен. / Пользователь не имеет прав доступа к общему диску.
* `404` — Не удалось найти запрошенный ресурс.
* `406` — Ресурс не может быть представлен в запрошенном формате.
* `409` — Ресурс уже существует.
* `413` — Загрузка файла недоступна. Файл слишком большой.
* `423` — Технические работы. Сейчас можно только просматривать и скачивать файлы.
* `429` — Слишком много запросов.
* `503` — Сервис временно недоступен.
* `507` — Недостаточно свободного места.

[*popup-vd_resource_from-copy]: Путь к копируемому ресурсу на общем диске.


Указывается в следующем формате:

```
vd:<vd_hash>:disk:/<путь внутри общего диска>
```

Где 

- `<vd_hash>` — метка общего диска. Пример `vd_hash`: ##9Uyws5pZmXgDNA##. Метку общего диска можно получить:
    - по API — с помощью метода, который возвращает информацию о статусе создания общего диска ([посмотреть описание метода](https://yandex.ru/dev/disk-api/doc/ru/reference/shared-disks/shd-create-state.md));
    - в интерфейсе Яндекс Диска — перейдите в общий диск, метка будет указана в персональной строке после `vd/`.

- `<путь внутри общего диска>` — путь до файла или папки внутри общего диска.

Например, путь до файла ##test_file.txt##, который лежит в папке ##test_folder## общего диска указывается так:

```
vd:9Uyws5pZmXgDNA:disk:/test_folder/test_file.txt
```

[*popup-vd_resource_path-copy]: Путь к создаваемой копии ресурса на общем диске. Максимальная длина нового пути к ресурсу — 32760 символов.


Указывается в следующем формате:

```
vd:<vd_hash>:disk:/<путь внутри общего диска>
```

Где 

- `<vd_hash>` — метка общего диска. Пример `vd_hash`: ##9Uyws5pZmXgDNA##. Метку общего диска можно получить:
    - по API — с помощью метода, который возвращает информацию о статусе создания общего диска ([посмотреть описание метода](https://yandex.ru/dev/disk-api/doc/ru/reference/shared-disks/shd-create-state.md));
    - в интерфейсе Яндекс Диска — перейдите в общий диск, метка будет указана в персональной строке после `vd/`.

- `<путь внутри общего диска>` — путь до файла или папки внутри общего диска.

Например, путь до файла ##test_file.txt##, который лежит в папке ##test_folder## общего диска указывается так:

```
vd:9Uyws5pZmXgDNA:disk:/test_folder/test_file.txt
```

[*popup-overwrite]: Признак перезаписи. Учитывается, если ресурс копируется в папку, в которой уже есть ресурс с таким именем.

Допустимые значения:

- `false` — отменить копирование и не перезаписывать файлы. Используется по умолчанию.
- `true` — копировать, удаляя имеющиеся файлы с совпадающими именами.

[*popup-force_async]: Параметр указывает на возможность асинхронного выполнения операции.

Допустимые значения:

- `false` — операция не является асинхронной: следующий запрос можно отправлять только тогда, когда выполнен предыдущий.
- `true` — асинхронная операция: следующий запрос можно отправлять, не дожидаясь выполнения предыдущего.

[*popup-a]: Обязательный параметр.