Документация API

EVA Platform предоставляет REST API для получения метрик и управления серверами. Все запросы требуют Basic-аутентификации.

Аутентификация

Все запросы к API требуют HTTP Basic Auth. Используйте логин и пароль от личного кабинета.

# Пример запроса с Basic Auth
curl -u "username:password" https://evasea.space/api/stats.json

Эндпоинты

GET /api/stats.json

Текущие метрики сервера в реальном времени.

{
  "ts": 1719000000,
  "cpu": 12.5,
  "ram_percent": 45.2,
  "ram_used": 858993459,
  "ram_total": 1900000000,
  "disk_percent": 32.1,
  "disk_used": 8589934592,
  "disk_total": 26843545600,
  "net_rx": 102400,
  "net_tx": 51200,
  "load1": 0.45,
  "load5": 0.32,
  "load15": 0.28,
  "uptime": 1209600,
  "connections": 42,
  "services": {
    "nginx": "active",
    "xray": "active"
  }
}

GET /api/history.jsonl

Исторические данные в формате JSON Lines. Каждая строка — снимок метрик за 30-секундный интервал.

// Каждая строка — независимый JSON-объект
{"ts":1719000000,"cpu":12.5,"ram":45.2,"rx":102400,"tx":51200,"load":0.45,"conn":42,"disk":32.1}
{"ts":1719000030,"cpu":10.1,"ram":44.8,"rx":98304,"tx":49152,"load":0.38,"conn":41,"disk":32.1}
...

POST /api/login

Аутентификация пользователя. (В разработке)

POST /api/register

Регистрация нового пользователя. Требуется подтверждение email.

{
  "email": "user@example.com",
  "name": "Иван Петров",
  "password": "********"
}

POST /api/recover

Запрос на восстановление пароля. На указанный email отправляется ссылка для сброса.

{
  "email": "user@example.com"
}

Форматы ответов

Все ответы возвращаются в формате application/json. Ошибки содержат поле error с описанием.

Ограничения

Частота запросов ограничена: не более 60 запросов в минуту для тарифа Starter, 300 для Pro. При превышении возвращается HTTP 429.