RU
Добавить сервер

API MineList для владельцев серверов

API MineList позволяет твоему серверу проверять, голосовал ли игрок, выдавать награду ровно один раз и получать публичную статистику. Все методы возвращают JSON и работают через обычные HTTPS-запросы GET, поэтому подходят для любого языка программирования.

Как получить ключ API

Добавь свой сервер, подтверди права на него и открой панель владельца. Ключ API показан на странице настроек сервера. Храни его в тайне, ведь он идентифицирует твой сервер. Если ключ утёк, создай новый в панели и обнови плагин или скрипт.

Базовый адрес всех методов — https://minelist.eu.

Проверка голоса

GET /api/v1/vote?key=API_KEY&username=NICK

Показывает, голосовал ли игрок сегодня и была ли награда уже получена.

{"voted":true,"claimed":false,"next_vote_utc":"2026-10-31T00:00:00Z"}

Отметка голоса как полученного

GET /api/v1/vote/claim?key=API_KEY&username=NICK

Отмечает сегодняшний голос как полученный. Вызывай этот метод прямо перед выдачей награды, чтобы игрок не мог получить её дважды. Возможные ответы:

ОтветЗначение
{"voted":true,"claimed":true}Голос действителен и теперь отмечен как полученный. Выдай награду.
{"voted":true,"claimed":false,"already_claimed":true}Голос был отмечен как полученный раньше. Ничего не выдавай.
{"voted":false,"claimed":false}Игрок сегодня не голосовал.

Список голосов за месяц

GET /api/v1/votes?key=API_KEY

Возвращает все голоса, которые твой сервер получил в текущем месяце. Это удобно для наград лучшим голосующим за месяц и для таблиц лидеров на твоём сайте.

Публичная статистика сервера

GET /api/v1/server/<slug>

Этому методу ключ не нужен. Slug — это последняя часть адреса сервера на MineList. Примеры полей ответа:

ПолеОписание
nameНазвание сервера
urlСайт сервера
ipАдрес для подключения
onlineБыла ли последняя проверка успешной
playersИгроков онлайн при последней проверке
max_playersКоличество слотов для игроков
versionВерсия сервера
votes_monthГолоса за этот месяц
votes_totalГолоса с момента добавления сервера
uptime_30Аптайм за последние 30 дней в процентах
ratingСредняя оценка
last_checkВремя последней проверки

Пример с curl

Это вся логика в виде команды для оболочки. То же самое делает любой язык, который умеет отправлять HTTP-запросы, например Java, PHP, Python или Node.js.

curl -s "https://minelist.eu/api/v1/vote/claim?key=API_KEY&username=Steve"

Разбери JSON, и если claimed равно true, выполни команду выдачи награды, например give Steve diamond 3.

Поддержка NuVotifier

Если хочешь выдавать награды мгновенно, без опроса API, MineList может передавать голоса на твой сервер через NuVotifier. Поддерживаются обе версии протокола. Версия 1 использует публичный ключ RSA, версия 2 использует токен.

  1. Установи NuVotifier на сервер и перезапусти его.
  2. В панели владельца укажи хост, порт (по умолчанию 8192) и публичный ключ (v1) или токен (v2).
  3. Нажми Отправить тестовый голос и проверь, что сервер записал голос в лог.

Если тест не прошёл, убедись, что порт Votifier открыт в файрволе, а ключ скопирован без пробелов и переносов строк.

Живой баннер

У каждого сервера есть живой баннер размером 468x60 пикселей, который показывает текущий статус и число игроков:

https://minelist.eu/banner/<slug>.png

Пример встраивания в HTML:

<a href="https://minelist.eu/ru/server/vash-slug">
  <img src="https://minelist.eu/banner/vash-slug.png" width="468" height="60" alt="Голосуй за нас на MineList">
</a>

Полезные советы