Модели

Основные запросы

Получить список базовых моделей

Запрос:

GET /api/v1/models/base

Ответ: 

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

Получить список моделей

Запрос:

GET /api/v1/models

Ответ: 

Массив всех моделей проекта

Получить информацию об одной модели

Запрос:

GET /api/v1/models/:id

Ответ: 

Представление модели в формате JSON

Создать новую модель

В теле запроса на создание новой модели укажите ее представление в формате JSON.

Обязательные поля:

  • base — идентификатор базовой модели;
  • name — имя новой модели.

Запрос:

POST /api/v1/models

{

  "base": "mqtt",

  "name": "test-model-01",

  "description": "Model of microcontroller"

}

Ответ:

Изменить модель

В теле запроса на изменение существующей модели укажите поля, которые нужно обновить.

Запрос:

PATCH /api/v1/models/:id

{

  "name": "test-model-02",

  "description": "Model of sensor"

}

Ответ:

Представление модели в формате JSON с учетом измененных полей

Удалить модель

Запрос:

DELETE /api/v1/models/:id

Ответ: 

Представление удаленной модели в формате JSON

Узлы моделей

Важно: В запросах :id — идентификатор модели; :node — идентификатор узла модели.

Создать новый узел

В теле запроса на создание узла укажите информацию о нем в формате JSON.

Обязательные поля:

Запрос:

POST /models/:id/nodes

{

  "id": "floorTemperature",

  "type": "argument",

  "name": "Floor Temperature",

  "unit": "temperature-celsius",

  "dataType": "number"

}

Ответ:

Изменить узел

В теле запроса на изменение существующего узла укажите укажите поля, которые нужно обновить.

Запрос:
PATCH /models/:id/nodes/:node

{

  "name": "Floor Temperature (in Fahrenheits)",

  "unit": "temperature-fahrenheit"

}

Ответ:

Представление узла в формате JSON с учетом измененных полей

Удалить узел

Запрос:

DELETE /api/v1/models/:id/nodes/:node

Ответ: 

Представление удаленного узла в формате JSON