Плагин для серверов Майнкрафт на Paper, который даёт внешним инструментам HTTP/JSON-доступ к серверу. Через API и веб-консоль можно получать сведения о сервере и игроках, выполнять команды, работать с файлами в выделенной папке и просматривать журнал.
Возможности
- Веб-консоль по адресу
/с панелью команд, готовыми действиями и браузером файлов. - Получение состояния сервера, TPS, памяти, MOTD, дистанции прорисовки, списка миров, установленных плагинов и игроков онлайн.
- Действия с игроками: объявление, личное сообщение, кик и телепортация.
- Выполнение одной или нескольких консольных команд, а также настроенной команды перезагрузки.
- Чтение, создание, изменение, удаление и перемещение файлов, создание папок и просмотр свойств файлов.
- Чтение последних строк
logs/latest.logчерез действиеtail_log.
Команды
/devapi status— показывает состояние слушателя./devapi reload— перечитываетconfig.ymlи перезапускает слушатель./devapi token— выводит текущий токен доступа; команда доступна только операторам.
Каждый запрос к API должен передавать заголовок Authorization: Bearer <token>. Доступны адреса GET /api/health, GET /api/info, POST /api/action и GET /.
Настройка
Основной файл — plugins/DevelopmentAPI/config.yml.
server.hostиserver.portзадают адрес и порт HTTP-сервера.server.tokenхранит токен доступа; при пустом значении он создаётся при первом запуске.security.target-plugin-folderзадаёт папку, в которой разрешены операции с файлами.security.allowed-extensionsограничивает допустимые расширения файлов.commands.reloadзадаёт команду, которую выполняет действиеreload.
Пути файлов считаются относительно папки из target-plugin-folder; выход за её пределы блокируется. Токен можно сменить в конфиге, затем выполнить /devapi reload.
Требования
Нужен сервер Paper. Команды, запущенные через API, выполняются от имени консоли с полными правами, поэтому токен следует хранить как пароль администратора. Для доступа только с компьютера сервера используйте адрес 127.0.0.1; при внешнем доступе автор рекомендует обратный прокси с TLS.
