Общие сведения
В программном комплексе «Диспетчер подключений виртуальных рабочих мест Termidesk» (далее - Termidesk) поддерживается интерфейс REST API для обращения к функциям управления.
REST API позволяет: Для передачи команд через REST API может использоваться утилита При работе с внешней утилитой Возвращаемые форматы задаются заголовком Пример POST-запроса: Результирующий формат указывается в ответном заголовке Перед использованием REST API нужно получить токен ( Для получения токена необходимо авторизоваться в Termidesk, для этого: В приведенных командах Для запросов проверки состояния сервера Общий вид команд реализован следующим образом: где: В REST API реализовано следующее логическое разделение на модули: Список модулей API, предоставляемого сервером, может быть получен URL-командой Пример команды через Полная информация о параметрах и командах REST API доступна при вводе URL-команды По нажатию кнопки [Try it out] в пространстве команд какого-либо модуля можно составить запрос и отправить его на выполнение кнопкой [Execute]. После нажатия будет отображена также команда для запроса через Для ввода токена доступа к определенным командам необходимо нажать кнопку [Authorize] и ввести необходимые ключи:curl. Curl - кроссплатформенная служебная программа командной строки, позволяющая взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.curl возникает ряд особенностей:-X 'GET';-X 'DELETE'; -X 'PUT'; -X 'POST'; -X 'PATCH'.accept, например:curl ... -H "accept:application/json"
curl -X 'POST' \
'http://disp.termidesk.local/api/webui/v1/servicespools' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Auth-Token: 7bjqtodywjd69dkpdta9ncqprifkr3pu' \
-d '{
"name": "string",
"comments": "string",
"service_id": "string",
"osmanager_id": "string",
"image_id": "string",
"help_url": "string",
"servicesPoolGroup_id": "string",
"cache_l1_srvs": 2147483647,
"cache_l2_srvs": 2147483647,
"max_srvs": 2147483647,
"debug_mode": true,
"backup": true,
"fallbackAccess": "string"
}'
content-type.-H 'X-Auth-Token: 7bjqtodywjd69dkpdta9ncqprifkr3pu' из примера выше), который необходимо подставлять во все последующие запросы, кроме запросов health. Получение токена
http://disp.termidesk.local/api/auth/draft/authenticators;authUuid, authSmallName, auth;http://disp.termidesk.local/api/auth/v1/legacy/login и заполнить экранные поля «Логин», «Пароль», «Название аутентификатора» (значение параметра auth из предыдущей команды), «UUID аутентификатора» (значение параметра authUuid из предыдущей команды), «Короткое название аутентификатора» (значение параметра authSmallName из предыдущей команды).disp.termidesk.local - сетевой адрес или полное доменное имя узла диспетчера Termidesk./api/health используется токен, определенный в конфигурационном файле /etc/opt/termidesk-vdi/termidesk.conf в значении переменной HEALTH_CHECK_ACCESS_KEY.Формат URL-команд
/api/<module>/<ver>/<name>/,<module> - наименование модуля, реализованного в REST API;<ver> - версия;<name> - наименование элемента. После наименования элемента также могут быть включены уникальные номера объектов и наименования других элементов./api/discover/.curl:curl -X 'GET' \
'http://disp.termidesk.local/api/discover/' \
-H 'accept: application/json' \
-H 'X-Auth-Token: 7bjqtodywjd69dkpdta9ncqprifkr3pu'
Электронный справочник по командам
http://disp.termidesk.local/api/docs/, где disp.termidesk.local - сетевой адрес или полное доменное имя узла диспетчера Termidesk. Доступ предоставляется после аутентификации в Termidesk. curl./external/login;/legacy/login. Наименование в заголовках запросов: X-Auth-Token;Token <значение>. Значение токена определено в конфигурационном файле /etc/opt/termidesk-vdi/termidesk.conf, в значении переменной HEALTH_CHECK_ACCESS_KEY.

