Описание: Скопировать один или несколько элементов (с возможной вложенной иерархией) в указанную папку/родителя. Требует право create на целевого родителя (если вызывающий не администратор). Для каждого узла можно независимо управлять тем, что именно копировать: содержимое файла, права доступа, метаданные (прочие поля), дочерние элементы, а также нужно ли по завершении скопировать и связи (references), у которых источник — один из скопированных элементов.


🌐 HTTP-информация

  • Метод: POST
  • URL: /api/item/Copy/{parentId}
  • Headers:
    • Content-Type: application/json
    • Authorization: <UserSessionToken>

📥 Параметры запроса (URL Path)

ПараметрТипОписание
parentIdGuidID папки/родителя, в который копируются элементы

📦 Тело запроса (Request Body)

Тело — массив узлов копирования.

ПолеТипОбяз.Описание
idGuidДаID копируемого исходного элемента
isFileCopyboolНетКопировать содержимое файла (для файловых элементов). По умолчанию true
isPermissionCopyboolНетКопировать назначенные права доступа. По умолчанию true
isMetadataCopyboolНетКопировать остальные метаданные (поля) элемента. По умолчанию true
isChildListCopy / isChildListCopyRequiredboolНетРекурсивно скопировать все дочерние элементы. По умолчанию false
childNodeListobject[]НетЯвный список конкретных дочерних узлов для копирования (используется вместо полного рекурсивного копирования, когда isChildListCopy не установлен) — формат каждого элемента такой же, как у узла верхнего уровня
isReferenceCopyboolНетЕсли у всех узлов запроса установлено true (или не указано — по умолчанию true) — по завершании копирования также копируются ссылки (references), исходящие из скопированных элементов, на новые копии

Пример JSON-тела:

[
  {
    "id": "622dddbb-2db2-433d-9d3c-89f31ea22e64",
    "isChildListCopy": true
  }
]

📤 Тело ответа (Response Body)

Метод ничего не возвращает (void, HTTP 200 OK без тела в случае успеха).

  • No labels