5.1. Общая информация

Важно

Если вы контролируете результат управления по API в web-интерфейсе Boro, обновляйте страницу после исполнения команды.

5.1.1. Описание

API предназначено для управления решением Boro и получения результатов анализа. Для настройки доступа по API необходимо выполнить несколько шагов:

Важно

Предварительно необходимо указать имя хоста в поле Host name во вкладке Email. Без указания Host name не удастся применить настройки API

  1. Настроить доступ к API в Nginx сервере.

  2. Разрешить управление сервером Boro Solution по API: Войдите под учетной записью администратора сервера (роль Суперадмин); Перейдите на вкладки настроек сервера AdminControl API и включите соответствующий чекбокс.

    ../_images/AdminApiEnable_ru.png
  3. [опционально] Настроить аутентификацию пользователей.

5.1.2. Иерархия сущностей системы Boro

Иерархия

../_images/ProjectProbeTask.tree.png

Проект

//TODO//

Зонд

//TODO//

Задачи анализа

//TODO//

5.1.3. Описание формата сообщений

Формат сообщения основан на JSON RPC. Запросы отправляются на сервер Boro с помощью HTTP POST на URL http://<SERVER_NAME>/ctrl_api/v1/json.

ЗАПРОС:

POST сообщение с типом содержимого Content-Type: application/json.

{
  "user_id":(number),
  "methods":[
    {
      "method":(string),
      "id":(number),
      "params":{
        ...
        /DATA/
        ...
      }
    }
  ]
}
  • user_id - целое число, идентификатор пользователя;

  • methods - массив объектов, список вызываемых методов с параметрами. Возможен вызов нескольких методов в одном запросе (в том числе одинаковых, используя опциональное поле id для идентификации ответа);

  • method - строка, имя вызываемого метода;

  • id (опциональное поле) - целое число, идентификатор запроса. Установленное значение возвращается в ответе на вызов метода. Поле предназначено для идентификации ответа при вызове нескольких одинаковых методов;

  • params - объект, параметры вызываемого метода (см. описание каждого метода).

ОТВЕТ:

Данные в формате JSON.

{
  "reply":[
    {
      "method":(string),
      "id":(number),
      "result":[
        ...
        /DATA/
        ...
      ]
    }
  ]
}
  • method - строка, имя вызванного метода;

  • id (опциональное поле) - целое число, идентификатор запроса. Принятое в запросе значение возвращается в ответе. Поле предназначено для идентификации ответа при вызове нескольких одинаковых методов;

  • result - массив объектов, данные, возвращаемые методом (см. описание каждого метода).