Skip to content

Latest commit

 

History

History
277 lines (193 loc) · 4.25 KB

File metadata and controls

277 lines (193 loc) · 4.25 KB
🌐 Язык: ✅ 🇷🇺 Русский (текущий) | 🇺🇸 English

Lizerium Restarter Server API

HTTP API для ботов, систем мониторинга, веб-панелей и удалённых интеграций.


Базовый URL

Локально:

http://127.0.0.1:52349

Публичный доступ (пример):

https://users.lizup.ru

Авторизация

Все защищённые запросы требуют заголовок:

X-Api-Key: YOUR_SECRET_KEY

Настраивается в:

appsettings.json

Пример:

{
	"ApiSecretKey": "my_super_secret_key"
}

Content-Type

Ответы используют:

application/json; charset=utf-8

Endpoints


GET /users

Возвращает текущую статистику сервера и список активных игроков.

Запрос

GET /users HTTP/1.1
Host: users.lizup.ru
X-Api-Key: YOUR_SECRET_KEY

Успешный ответ

{
	"serverload": "6",
	"players": [
		{
			"name": "NubotiV",
			"rank": "142",
			"group": "0",
			"ship": "Vestnik",
			"system": "Aiur"
		},
		{
			"name": "Lizerium",
			"rank": "1",
			"group": "0",
			"ship": "Shadow Blade",
			"system": "New York"
		}
	]
}

Пустой сервер

{
	"serverload": "0",
	"players": []
}

Ошибка авторизации

Статус:

401 Unauthorized

Тело ответа:

{
	"error": "Unauthorized"
}

Внутренняя ошибка сервера

Статус:

500 Internal Server Error

Тело ответа:

{
	"error": "Failed reading stats file"
}

Примеры использования


curl

curl -H "X-Api-Key: YOUR_SECRET_KEY" ^
https://users.lizup.ru/users

PowerShell

Invoke-RestMethod `
-Uri "https://users.lizup.ru/users" `
-Headers @{ "X-Api-Key" = "YOUR_SECRET_KEY" }

C#

using var client = new HttpClient();

client.DefaultRequestHeaders.Add(
    "X-Api-Key",
    "YOUR_SECRET_KEY");

string json =
    await client.GetStringAsync(
        "https://users.lizup.ru/users");

JavaScript

const res = await fetch('https://users.lizup.ru/users', {
	headers: {
		'X-Api-Key': 'YOUR_SECRET_KEY',
	},
})

const data = await res.json()

Поля ответа

Поле Описание
serverload Текущая нагрузка сервера
players Массив активных игроков
name Ник игрока
rank Ранг игрока
group Идентификатор группы
ship Текущий корабль
system Текущая система

Рекомендации по безопасности

  • Не публикуйте API ключ
  • Используйте HTTPS
  • Ограничивайте доступ по IP при необходимости
  • Периодически меняйте ключ

Ограничение запросов

Рекомендуемый интервал опроса:

5-30 секунд

Избегайте слишком частых запросов.


Идеи интеграции

  • Discord бот со статистикой онлайна
  • Telegram бот со списком игроков
  • Веб-панель мониторинга
  • Prometheus exporter
  • Панель управления сервером

Планируемые endpoints

Возможные будущие маршруты:

/status
/restart
/start
/stop
/metrics
/version

Связанная документация