Работа с API начинается со входа в систему:
Сущность | Операции доступные через API | REST API |
Вход в систему | Получение токена | URL: api/security/login "login": "логин", "password": "пароль" } (Токен пользователя передается в заголовке Authorization) |
Нужно передать логин/пароль, в ответ придет информация о новой сессии (в формате JSON). Пример ответа:
В поле "token" передается токен авторизации. Этот токен нужно передавать в заголовке "Authorization" HTTP запроса при вызове остальных сервисов.
Сущность | Операции доступные через API | REST API | ||
Все элементы | Чтение метаданных | URL: api/item/get/{itemId} | ||
Создание/изменение | URL: api/item/update | |||
Удаление | URL: api/item/delete | |||
Установить уникальные права доступа к элементу | URL: api/security/setItemUniquePermission/{itemId} Описание: Прервать наследование прав/ установить уникальные права доступа к элементу Входные параметры: | |||
Удалить уникальные права доступа к элементу | URL: api/security/removeItemUniquePermission/{itemId} Описание: Восстановить наследование прав/ Удалить уникальные права доступа к элементу Входные параметры: | |||
Назначение прав доступа к элементу пользователю или группе | URL: api/item/update { 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} | |||
Типы элементов списка | 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} | ||
Файлы | Создание | URL: api/item/update | ||
Получить список версий файла | URL: api/fileversion/get/{sourceId} Метод: GET Описание: получить список версий файла по ID файла Входные параметры: sourceId: Guid - ID элемента/файла Выходные параметры: массив – список версий файла | |||
Скачивание файла | URL: api/file/getbyitemid/{itemId}/{version} version: имя версии файла (0.1, 1.0, 1.1, …) | |||
Бизнес-процессы | Создание бизнес-процесса | URL: api/item/update 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 запускаемого процесса | Вход в систему | Получение токена | URL: api/user/login Метод: POST Описание: Авторизация Входные параметры: json объект { "login": "логин", "password": "пароль" } (Токен пользователя передается в заголовке Authorization) |
