Dashboard API

Этот эндпоинт предоставляет все необходимые агрегированные данные для построения панели мониторинга в едином ответе.


Получить сводные данные для дашборда

  • Метод: GET

  • Путь: /api/dashboard/

Успешный ответ (200 OK):

Ответ представляет собой единый JSON-объект, содержащий три основных ключа: statistics, system_average_temperature_chart и devices.

{
  "statistics": {
    "total_devices": 5,
    "active_devices": 4,
    "readings_last_24h": 17280,
    "recent_dos_ip": "192.168.1.105"
  },
  "system_average_temperature_chart": {
    "labels": [
      "2023-10-27T09:00:00Z",
      "2023-10-27T10:00:00Z"
    ],
    "data": [
      36.15,
      36.32
    ]
  },
  "devices": [
    {
      "ip_address": "192.168.1.101",
      "last_seen": "2023-10-27T10:05:00Z",
      "status": "active",
      "latest_reading": {
        "timestamp": "2023-10-27T10:05:00Z",
        "contact_temp": 36.5,
        "non_contact_temp": 35.8
      }
    },
    {
      "ip_address": "192.168.1.102",
      "last_seen": "2023-10-27T08:30:00Z",
      "status": "inactive",
      "latest_reading": {
        "timestamp": "2023-10-27T08:30:00Z",
        "contact_temp": 37.1,
        "non_contact_temp": 36.4
      }
    }
  ]
}

Описание структуры ответа

  • statistics: Объект с ключевыми показателями.

    • total_devices (integer): Всего устройств.

    • active_devices (integer): Активных устройств за последние 10 минут.

    • readings_last_24h (integer): Всего показаний за 24 часа.

    • recent_dos_ip (string | null): Последний IP, попавший под ограничение скорости.

  • system_average_temperature_chart: Данные для графика средней температуры.

    • labels (array of strings): Массив меток времени в формате ISO 8601.

    • data (array of floats | null): Массив соответствующих средних значений температуры.

  • devices: Массив объектов, представляющих каждое устройство.

    • ip_address (string): IP-адрес.

    • last_seen (string): Время последней активности в ISO 8601.

    • status (string): Статус устройства (active, warning, inactive).

    • latest_reading (object | null): Объект с последним измерением от этого устройства.

Last updated