REST API plugin for Luminol/Folia 26.1.2 — Javalin-based whitelist/server controller
Find a file
admin_ekaii 68d323603e
All checks were successful
Build EkaiiAPI / build (push) Successful in 47s
plugbench/bench plugbench gate success
plugbench / bench (push) Successful in 10m13s
config: per-repo plugbench bench parameters
2026-05-06 09:39:55 +00:00
.forgejo/workflows ci: install plugbench-ekaii regression gate 2026-05-06 09:39:54 +00:00
.github/workflows Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
gradle/wrapper Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
src/main Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
.gitignore Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
.plugbench.toml config: per-repo plugbench bench parameters 2026-05-05 20:31:57 +00:00
build.gradle Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
gradle.properties Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
gradlew Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
gradlew.bat Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
LICENSE Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00
README.md Update README: target MC 26.1.2 + endpoint inventory + repos 2026-05-01 19:54:21 +02:00
settings.gradle Initial port: EkaiiAPI 1.3.0-ekaii26 for MC 26.1.2 (paper-api 26.1.2.build.53-stable, JDK 25, Gradle 9.4.1, gradleup shadow 9.2.2) 2026-05-01 19:53:41 +02:00

EkaiiAPI

REST API plugin for Luminol / Folia / Paper 26.1.2 — Javalin-backed endpoints for whitelist + server stats.

Ported to MC 26.1.2 (paper-api 26.1.2.build.53-stable), JDK 25 / Gradle 9.4.1, shadow plugin com.gradleup.shadow:9.2.2.

Endpoints

All require Authorization: Bearer <api_token> (configured in plugins/EkaiiAPI/config.yml).

Method Path Purpose
GET / Plugin identification
GET /server/ping Server status + player counts
GET /server/stop Trigger graceful shutdown
GET /server/players Online player list
GET /server/banned Banned profile list
GET /whitelist Whitelisted players
GET / POST / DELETE /whitelist/{uuid} Per-UUID whitelist mutation

Config

config.yml (auto-generated on first enable):

server_port: 5599   # default 5000 collides with macOS AirPlay
api_token: 'changeme'

Build

export JAVA_HOME=/opt/homebrew/opt/openjdk/libexec/openjdk.jdk/Contents/Home  # JDK 25
./gradlew shadowJar
# Output: build/libs/EkaiiAPI-1.3.0-ekaii26.jar (~8 MB shadow)

Releasing

Push a v* tag → CI builds shadowJar + creates a Forgejo release with the jar attached.

Repos