Объекты
Основные запросы
Получить список объектов
Запрос:
GET /api/v1/objects
Ответ:
Массив всех объектов проекта
Получить информацию об одном объекте
Запрос:
GET /api/v1/objects/:id
Ответ:
Представление объекта в формате JSON
Создать новый объект
В теле запроса на создание нового объекта укажите его представление в формате JSON.
Обязательные поля:
model
— идентификатор модели;id
— идентификатор объекта для подключения устройства;name
— имя нового объекта.
Запрос:
POST /api/v1/objects
{
"model": "<model-id>",
"id": "test-object-01",
"name": "test-object-01"
}
Ответ:
Представление объекта в формате JSON
Изменить объект
В теле запроса на изменение существующего объекта укажите поля, которые нужно обновить.
Запрос:
PATCH /api/v1/objects/:id
{
"name": "test-object-02",
"status": "broken"
}
Ответ:
Представление объекта в формате JSON с учетом измененных полей
Удалить объект
Запрос:
DELETE /api/v1/objects/:id
Ответ:
Представление удаленного объекта в формате JSON
Получить историю пакетов
Запрос:
GET /api/v1/objects/:id/packets
Ответ:
Массив всех пакетов объекта
Подсказка: Для того чтобы запросить список пакетов, полученных в определенный период, укажите нижнюю и верхнюю границу интервала в параметрах from
и to
соответственно. Границы интервала указываются в виде определенных моментов времени в одном из форматов:
1) Unix time — количество миллисекунд с полуночи (00:00:00 UTC) 1 января 1970 года;
2) ISO 8601 — дата и время в формате YYYY-MM-DDThh:mm.
Например, запросы /api/v1/objects/:id/packets?from=1640131200000&to=1640563200000 и /api/v1/objects/:id/packets?from=2021-12-22T00:00&to=2021-12-27T00:00
позволяют загрузить список пакетов, полученных в период с 22 по 27 декабря 2021 года.
Команды объекта
Важно: В запросах :id — идентификатор объекта, на который отправляется команда; :command — идентификатор команды в модели.
Отправить команду
Запрос:
POST /api/v1/objects/:id/commands/:command
Ответ:
Ответ от устройства в формате JSON
Отправить команду с параметрами
Существуют команды с параметрами, значение которых можно указать непосредственно при отправке. Это нужно, если пользователь не знает заранее те значения, которые необходимо передавать в команде, либо эти значения раз от раза могут меняться.
Пример:

В этом случае в теле запроса для отправки команды на объект укажите необходимые параметры в формате JSON.
Запрос для команды из примера:
POST /api/v1/objects/:id/commands/new_command
{
«state_param»: 42
}
Ответ:
Ответ от устройства в формате JSON