
REST HTTP API
A Minecraft Paper plugin that allows executing server commands and get various information via HTTP requests. Perfect for integrating external tools, web dashboards, or automation scripts with your Minecraft server.
REST HTTP API

A Minecraft Paper plugin that allows executing server commands via HTTP requests and get various information. Perfect for integrating external tools, web dashboards, or automation scripts with your Minecraft server.
Features
- Execute Minecraft commands via HTTP API
- RESTful endpoints for server information
- Bearer token authentication
- Command queuing for offline players
- Support for waiting for players to join before executing commands
- Auto-generated interactive API documentation
Requirements
- Minecraft Server running Paper or a Paper fork (Spigot, Bukkit may work but not tested)
- Java 17 or higher
Installation
From Release
- Download the latest release from the Releases page
- Drop the
http-commands-*.jarfile into your server'spluginsfolder - Restart or reload your server
From Source
# Clone the repository
git clone https://github.com/lelenaic/minecraft-http-commands-plugin.git
cd http-commands-plugin
# Build the plugin
./gradlew build
# The JAR file will be in build/libs/
cp build/libs/http-commands-*.jar /path/to/server/plugins/
Configuration
After first launch, the plugin creates plugins/http-commands/config.yml.
Security Recommendations
- Change the bearer token - Use a strong, random string
- Use HTTPS - Always use a reverse proxy with TLS/SSL
- Firewall - Only allow access from trusted IPs if possible
Using with a Reverse Proxy (Recommended)
For production, use a reverse proxy like Nginx or Caddy with HTTPS:
Nginx example:
server {
listen 443 ssl;
server_name mc-api.example.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
API Documentation
Interactive API documentation is generated from the OpenAPI specification. You can access the API documentation from here: https://minecraft-http-commands-plugin-api-doc.lenaic.me
Generating Documentation
# Generate HTML API documentation
./gradlew openApiGenerate
# Output will be in docs/index.html
Viewing Documentation
Open docs/index.html in a web browser to view the interactive Swagger UI.
The documentation includes:
- All available endpoints
- Request/response schemas
- Example requests
- Try-it-out functionality
Commands
/http-commands reload
Reloads the plugin configuration and restarts the HTTP server.
/http-commands reload
Requires permission: httpcommands.reload
Building
# Build the plugin
./gradlew build
# Build and generate API docs
./gradlew build openApiGenerate
The output JAR will be in build/libs/.
