Группы

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

При помощи API с группами могут быть реализованы следующие действия:

  1. Получение списка групп.
  2. Получение информации об одной группе.
  3. Получение статистики по одной группе.

Получение списка групп

Для получения полного списка групп, в которые входит пользователь, отправляющий запрос, необходимо воспользоваться методом GET и указать префикс groups. В ответе будет получен массив объектов, каждый из которых представляет собой конфигурацию отдельной группы.

Запрос

GET /api/v1/groups HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}

Ответ

HTTP/1.1 200 OK

[
    {
        "_id": "5d8a18d4d0025e0012fb6a31",
        "name": "group_name",
        "tagname": "group_tagname",
        "role": "5cc89f6af79a4969291dcbd7"
    }
]

Получение информации об одной группе

Если пользователь входит в более чем одну группу, он может отправить запрос на получение информации только по одной конкретной группе. В ответе на данный запрос будет получена конфигурация группы и результат выполнения запроса.

Запрос

GET /api/v1/groups/:id HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}

Ответ

HTTP/1.1 200 OK

{
    "_id": "5d8a18d4d0025e0012fb6a31",
    "name": "group_name",
    "tagname": "group_tagname",
    "role": "5cc89f6af79a4969291dcbd7",
    "success": true
}

Получение статистики по одной группе

Каждая группа обладает определенной статистической информацией. Если необходимо ее получить, достаточно отправить запрос GET /api/v1/groups/:id/stats. В ответе будет получен массив объектов формата json. При этом каждый из них будет содержать поля, отличные от полей группы, так как их значения несут в себе статистические данные.

Запрос

GET /api/v1/groups/:id/stats HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}

Ответ

HTTP/1.1 200 OK

[
    {
        "name": "services",
        "tags": "gkey=NXfszR",
        "time": 0,
        "gate_read": "",
        "gate_write": "",
        "gate_packets": "",
        "gate_auths": "",
        "gate_cmds": "",
        "gate_errors": "",
        "hndl_start_total": "",
        "hndl_packets_total": "",
        "data_objects": "",
        "data_users": 1,
        "data_object_chains": "",
        "data_object_automatons": "",
        "storage_telemetry": 100,
        "storage_processed": 100
    }
]