Все элементы | Чтение метаданных | URL: api/item/get/{itemId} Метод: POST Описание: получить информацию об элементе по ID элемента Входные параметры: itemId: Guid - ID элемента списка Выходные параметры: json объект:
{ id: Guid - ID элемента siteId: Guid - ID сайта listId: Guid - ID списка parentId: Guid - ID родительского элемента itemPath: ItemPath - путь до элемента + количество дочерних элементов сontentTypeId - ID типа контента элемента fieldValueMap - объект ключ-значение. Ключ - internalName поля, значение - значение этого поля в элементе } |
Создание/изменение | URL: api/item/update Метод: POST Описание: Создать/обновить элемент списка (или массив элементов) Входные параметры: multipart/form-data
itemListJson - строка, сериализованный в json массив элементов ItemUpdateRequest
{ list_id: Guid - ID списка, элемент которого нужно создать (обязательное) content_type_id: Guid - ID типа контента элемента (обязательное при создании элемента). parent_id: Guid - ID родительского элемента. ...поля типа контента элемента, которые нужно изменить, например: name: "новое имя" }
Правила передачи значений 1. Если поле является лукапом, то нужно передать строку с уникальным идентификатором нового значения. Пример:
"document_status":"583ba97b-4688-41cc-a21a-9e4d3f6794b1" 2. Если поле является множественным лукапом, то нужно передать массив строк - уникальных идентификаторов. Пример:
"approval_workflow_initiator":["aab39600-92b4-4c38-a55c-53efac8db9cc","3a9a648b-98a0-43e2-b5bf-b06d0084303a"] 3. Если поле является датой, то нужно передать строку в формате ISO 8601 в UTC. Пример:
"end_date_plan":"2024-01-28T08:40:26.168Z" 4. Если поле является числом, то нужно передать число:
"duration_plan":3 5. Если поле является строкой, то нужно передать строку. Пример:
"name":"План.pdf" |
Удаление | URL: api/item/delete Метод: POST Описание: Удалить элемент (массив элементов) Входные параметры: itemListJson - строка, сериализованный в json массив элементов
[ { id : Guid - ID первого удаляемого элемента }, { id : Guid - ID второго удаляемого элемента }, ... ]
Примечание: при вызове данного метода элемент перемещается в корзину и может быть восстановлен методом описанным ниже. Для удаления элемента без возможности восстановления требуется вызвать данный метод повторно. |
Восстановление из корзины | URL: api/item/restore/{itemId} Метод: POST Описание: восстановить ранее удаленный в корзину элемент Входные параметры: itemId: Guid - ID элемента списка |
Установить уникальные права доступа к элементу | URL: api/security/setItemUniquePermission/{itemId} Метод: POST Описание: Прервать наследование прав/ установить уникальные права доступа к элементу Входные параметры: itemId - ID элемента |
Удалить уникальные права доступа к элементу | URL: api/security/removeItemUniquePermission/{itemId} Метод: POST Описание: Восстановить наследование прав/ Удалить уникальные права доступа к элементу Входные параметры: itemId - ID элемента |
Назначение прав доступа к элементу пользователю или группе | URL: api/item/update Метод: POST Описание: Задать права пользователю на элемент с уникальными правами. Задание прав происходит путем создания элемента «Разрешение пользователя» в списке «Разрывы прав». Входные параметры: multipart/form-data
itemListJson - строка, сериализованный в json массив элементов ItemUpdateRequest
{ list_id: Guid - ID списка «Разрывы прав» (обязательное) , content_type_id: Guid – ID типа элемента «Разрешение пользователя» (обязательное), source: Guid - ID элемента, для которого задаются права (обязательное), principal: Guid - ID пользователя или группы (обязательное), permission_level: Guid - ID уровня доступа (обязательное) } |
Списки | Чтение метаданных | URL: api/list/get/{listId} Метод: POST Описание: получить информацию о списке по ID списка Входные параметры: listId: Guid - ID списка Выходные параметры: json объект List { id: Guid - ID списка name: string - Название списка description: string - описание списка } |
Элементы списка | URL: api/item/getList/{parentId} Метод: POST Описание: получить информацию о всех дочерних элементах по ID родительского элемента Входные параметры: parentId - ID родительского элемента (ID списка или ID папки внутри списка) Выходные параметры: json объект: |
Типы элементов списка | URL: api/contenttype/getByList/{listId} Метод: POST Описание: получить информацию о типах контента списка по ID списка Входные параметры: listId: Guid - ID списка Выходные параметры: json объект ContentType[] - массив типов контента списка ContentType { id: Guid - ID типа контента name: string - Название типа контента description: string - описание типа контента isFolder: boolean - могут ли элементы этого типа контента содержать в себе дочерние элементы fieldList: Field[] - массив полей, которые привязаны к типу контента } |
Папки / элементы | Перемещение | URL: api/item/move/{itemId}/{toItemId}/{moveItemType} Метод: POST Описание: Переместить элемент Входные параметры:
itemId - ID перемещаемого элемента toItemId - ID элемента назначения moveItemType - тип перемещения: 1 - выше элемента назначения 2 - в конец дочерних элементов элемента назначения 3 - ниже элемента назначения |
Файлы
| Создание | URL: api/item/update Метод: POST Описание: Создать/обновить элемент списка (или массив элементов) Входные параметры: multipart/form-data
itemListJson - строка, сериализованный в json массив элементов ItemUpdateRequest fileList - двоичные данные - массив файлов (экземпляр File)
{ id: Guid - ID обновляемого элемента. Если создается новый элемент, то это поле не указывается (не обязательное) list_id: Guid - ID списка, элемент которого нужно обновить (обязательное) content_type_id: Guid - ID типа контента элемента. Указывается только при создании или при изменении типа контента существующего элемента (не обязательное) parent_id: Guid - ID типа родительского элемента. Указывается только при создании или при изменении родителя существующего элемента (не обязательное) file: int - ID тела файла, индекс из массива fileList . Указывается только при добавлении тела файла или при изменении тела существующего файла (не обязательное) ...поля типа контента элемента, которые нужно изменить, например: name: "новое имя" } |
Получить список версий файла | URL: api/fileversion/get/{sourceId} Метод: GET Описание: получить список версий файла по ID файла Входные параметры: sourceId: Guid - ID элемента/файла Выходные параметры: массив – список версий файла |
Скачивание файла | URL: api/file/getbyitemid/{itemId}/{version} Метод: GET Описание: получить файл по ID элемента/файла Входные параметры: itemId: Guid - ID элемента/файла version: имя версии файла (0.1, 1.0, 1.1, …) Выходные параметры: тело файла |
Бизнес-процессы | Создание бизнес-процесса | URL: api/item/update Метод: POST Описание: Создать/обновить бизнес-процесс Входные параметры: multipart/form-data
itemListJson - строка, сериализованный в json массив элементов ItemUpdateRequest
{ list_id: Guid – ID списка «Процессы», content_type_id: Guid – ID типа элемента запускаемого процесса, name: Наименование создаваемого процесса, start_date_plan:дата и время запуска процесса в формате "YYYY-MM-DDThh:mm:ss[.f{1,7}]<TZDSuffix>", importance: Guid – ID уровня важности процесса из списка «Важность», workflow_template: Guid – ID шаблона проесса из списка «Шаблоны процессов», ... … (поля типа контента процесса, которые нужно изменить), reference_list: список вложений рабочего процесса [ { content_type_id: Guid – ID типа элемента «Вложение рабочего процесса» из списка «Типы контента», destination: Guid – ID элемента, вкладываемого в процесс }, ] } |
Запуск бизнес-процесса | URL: workflow/api/workflow/start/{processId} Метод: POST Описание: Запустить бизнес-процесс Входные параметры:
processId - Guid – ID запускаемого процесса |