{
"id": 42,
"alias": "home",
"name": "Домашняя группа",
"description": "Возможно написать короткое описание группы. Может пригодится например для описания правил или инструкции",
"permissions": [
{
"type": "device", // "device" | "script"
"id": 8, // Описывает право доступа к девайсу или скрипту с этим id
"access": "granted_at", // "granted" | "denied" | "granted_at"
"granted_at": "05:00-18:30" // Если access = granted_at, то добавляется поле с указанием ренджа времени суток
},
//...
],
"update_at": "2025-07-29 19:45",
"create_at": "2025-07-28 18:35"
}
/api/v1/groups/listПолучить список существующих груп
{
"status": "ok",
"groups": {
"GROUP_STRUCT"
// ...
},
"total": 6
}
{
"status": "error",
"message": "Permissions error" // "Permission error"
}
/api/v1/groups/newДобавить новую групу.
{
"alias": "home", // Required
"name": "Домашняя группа", // Required
"description": "Возможно написать короткое описание группы. Может пригодится например для описания правил или инструкции"
}
{
"status": "ok",
"group": "GROUP_STRUCT"
}
{
"status": "error",
"message": "Permissions error"
}
{
"status": "error",
"field": "alias", // alias | name
"message": "Alias already exists"
}
/api/v1/groups/id/{{id}} OR GET /api/v1/groups/alias/{{alias}}Получить группу по id
{
"status": "ok",
"group": "GROUP_STRUCT"
}
/api/v1/groups/id/{{id}}/add_userДобавить пользователя в группу
{
"user_id": 12
}
/api/v1/groups/id/{{id}}/users OR GET /api/v1/groups/alias/{{alias}}/usersПолучить список пользователей группы
{
"status": "ok",
"users": [
"USER_STRUCT"
// ...
],
"total": 11
}
/api/v1/groups/id/{{id}}/removeУдалить группу, пользователи в этой группе должны стать безправными.
{
"status": "ok",
"user": "USER_STRUCT"
}
{
"status": "error",
"message": "User not found" // | "Permission error"
}
/api/v1/groups/id/{{id}}/updateРедактировать группу
{
"name": "Changed name",
"description": "Something else"
}
{
"status": "ok",
"group": "GROUP_STRUCT"
}
/api/v1/groups/id/{{id}}/permissions/updateРедактировать флаги доступа к устройствам и скриптам
{
"permissions": {
"id": 8, // Редактируем право доступа к девайсу или скрипту с этим id
"access": "granted_at", // устанавливаем "granted" | "denied" | "granted_at"
"granted_at": "05:00-18:30" // Если access = granted_at, то добавляется поле с указанием ренджа времени суток
}
}
{
"status": "ok",
"group": "GROUP_STRUCT"
}
{
"status": "error",
"message": "Device or script not found" // | "Permission error"
}