Modding API Hub

Открытый REST-интерфейс проекта MixerGrief для разработчиков визуальных модов, аддонов и кастомных клиентов. Получайте информацию о состоянии авто-шахт и глобальных игровых событий со всех анархий одним запросом.

Статус ноды
Online
Публичный GET-эндпоинт
REST API Endpoint
Отдается в чистом JSON-формате
Назначение ресурсов
Визуальные моды
Отрисовка в главном меню / HUD

Почему это удобно для разработчиков модов?

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

Интеграция в визуальные клиенты

Данный API полностью оптимизирован для легковесных асинхронных запросов из Java/Kotlin модов (Fabric, Forge, NeoForge, кастомные лаунчеры).

Особенности парсинга данных для HUD

  • Исключение рассинхронизации: Поля с префиксом virtual вычисляют точное время до события на стороне бэкенда, учитывая сетевой пинг. Ваш таймер на экране не будет дёргаться назад.
  • Очистка от Minecraft-цветов: Все строки (названия редкостей шахт, статусы) очищены от параграфов форматирования (символы §). Текст готов к выводу через стандартный fontRenderer вашего клиента.
  • Безопасность игрового процесса: API не передает личные данные игроков и не относится к запрещенным (чит-модификациям), так как дублирует публичную информацию.

Поведение при перезапусках серверов

Если определенная анархия уходит на рестарт, хаб автоматически убирает её из JSON-дерева через 5 секунд отсутствия ответа от плагина. Ваш мод может просто проверять наличие нужного serverId в полученном объекте — если сервера нет в списке, значит он временно недоступен.

Справочник API эндпоинтов

GET http://api-v1.mixergrief.pw:8000/api/events

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

200 OK — Успешное получение структуры данных

Запрос обработан успешно. Возвращается корневой JSON-словать, идеальный для десериализации через библиотеки Gson или Jackson.

{
  "anarchy_1": {
    "serverId": "anarchy_1",
    "mines": {
      "main_mine": {
        "currentLevel": "мифическая",
        "timeToNextMine": 84,
        "virtualTimeToNextMineSeconds": 84
      }
    },
    "events": {
      "secondsUntilNextEvent": 412,
      "virtualSecondsUntilNextEvent": 412,
      "activeEvents": [
        {
          "type": "METEORITE",
          "status": "Активен",
          "virtualStatus": "Активен",
          "location": { "x": 100, "y": 64, "z": -250, "world": "world" }
        }
      ]
    }
  }
}

Используйте значения virtualTimeToNextMineSeconds для рендеринга полосы прогресса (Progress Bar) или текстового кулдауна шахты в HUD мода.

429 Too Many Requests — Превышение лимита запросов (Rate Limit)

Возвращается, если мод отправляет запросы слишком часто. На сервере стоит ограничение для предотвращения DDoS-нагрузок.

{
  "error": "Rate limit exceeded",
  "message": "Too many requests, please try again later."
}

Важно для разработчиков модов: Делайте запрос к API асинхронно в отдельном потоке (Thread) не чаще, чем раз в 2–3 секунды, и кэшируйте результат локально внутри клиента, чтобы пользователь не ловил ошибку 429 при обновлении кадров.

500 Internal Server Error — Ошибка на стороне веб-сервера

Сигнализирует о внутренних неполадках на самом прокси-сервере MixerGrief.

{
  "detail": "Internal Server Error"
}

В коде вашего мода обязательно оберните чтение ответа в блок try-catch, чтобы при падении бэкенда или проведение тех. работ у пользователя не крашился майнкрафт.