Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

Назначение модуля

Модуль предназначен для предоставления доступа к функционалу платформы ROBIN через API, позволяя интегрировать платформу в свои приложения без необходимости использования веб-интерфейса. просмотра списка методов API платформы Robin. С их помощью можно интегрировать некоторый функции платформы в свои приложения.

Работа с модулем доступна Раздел доступен только пользователям с ролью "Администратор оркестратораОркестратора" в текущем тенанте. . Поэтому если у вас нет такой роли, то модуль "API" не отобразится на панели меню.

Посмотреть доступные методы можно на вкладках раздела:

Авторизация и получение токена

Для работы с API платформы необходимо

...

Вкладка «Машины»

Image Removed

На вкладке представлены методы API для работы с машинами и их учётными записями.

Список методов

...

получить токен доступа (access_token). Токен используется для заполнения заголовка авторизации в запросах к API.

Запрос для получения токена

Метод: POST 

URL запроса:https://<адрес вашего Keycloak>:8443/realms/robin/protocol/openid-connect/token 

Параметры тела POST-запроса:

ПараметрЗначениеОписание
client_idExternalClientФиксированное значение
client_secret

Секретный ключ клиента. Пример:

lN10xJuiK9fnIlUIRxWEaJwSEKvaeckL

Значение можно получить из панели администратора в Keycloak (один из компонентов платформы Robin).

Получить секретный ключ можно разделе "Client secret" в Keycloak ("Clients" → "ExternalClient" → "Credentials" → "Client secret"). Если у вас нет доступа в Keycloak, получить ключ можноот администратора платформы Robin в вашей организации.

grant_typeurn:ietf:params:oauth:grant-type:token-exchangeФиксированное значение
tenant_id

ID тенанта. Пример:

f9fdg366-31e5-11ee-be30-0236va230006

Идентификатор тенанта, в рамках которого будут выполняться запросы к API. Например, при запросе списка машин, система вернет только те машины, которые добавлены в указанный тенант.
user_id

ID пользователя. Пример:

5g8c3bc4-2ff1-30a1-36ca-7sc274fa86ad

Идентификатор пользователя платформы Robin, под учётной записью которого будут выполняться запросы к  API. При выполнении запросов будут учитываться права пользователя в том тенанте, который вы указали в запросе.

Например, при запросе списка роботов, система вернет только тех роботов, который доступны указанному пользователю в указанном тенанте.


панель
titleПример запроса
POST https://prod.rpa.ru:8443/realms/robin/protocol/openid-connect/token
Content-Type: application/x-www-form-urlencoded
client_id=ExternalClient&client_secret=lN10xJuiK9fnIlUIRxWEaJwSEKvaeckL&grant_type=urn:ietf:params:oauth:grant-type:token-exchange&tenant_id=f9fdg366-31e5-11ee-be30-0236va230006&user_id=5g8c3bc4-2ff1-30a1-36ca-7sc274fa86ad

Результат запроса

При успешном выполнении запроса будет возвращен ответ с кодом 200

В теле ответа будет указан access_token, который необходим при выполнении запросов к API платформы.

панель
titleПример JSON ответа
{
  "access_token": "ваш_токен_доступа",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Примечания

  • Токен необходимо указывать в запросах в заголовке Authorization:
панель

Authorization: Bearer <ваш_токен_доступа>

  • Токен имеет ограниченное время жизни. Срок его жизни можно узнать или изменить через интерфейс Keycloak.
  • Для безопасности никогда не храните секретный ключ (client_secret) в открытом виде.

Вкладка «Роботы»

Image Removed

На вкладке представлены методы API для работы с роботами и их запусками.

Список методов

Опубликованные роботы

...

Управление запусками

...

Вкладка «Очереди ресурсов»

Image Removed

На вкладке представлены методы API для работы с очередями ресурсов.

Список методов

Очереди ресурсов

...

Ресурсы в очереди

...