MinecraftREST
PluginMIT

MinecraftREST

MinecraftREST, a powerful REST API interface for Minecraft servers that provides secure endpoints for server management and player interactions.

68
Downloads
1
Followers
1 years ago
Updated
📦
2
Versions

📖About MinecraftREST

MinecraftREST

The first stable release of MinecraftREST, a powerful REST API interface for Minecraft servers that provides secure endpoints for server management and player interactions.

🚀 Features

  • 🔒 Secure JWT Authentication
  • 🌐 RESTful API endpoints for server management
  • 👥 Player management (kick, gamemode, messaging)
  • 📊 Server information and statistics
  • ⚡ Rate limiting protection
  • 🔍 Real-time player and world data

📋 Requirements

  • Java 17 or higher
  • Spigot/Paper server 1.20.4

🔧 Installation

  1. Download the minecraft-rest-1.0.0.jar from this release
  2. Place it in your server's plugins folder
  3. Start/restart your server
  4. Configure the plugin in plugins/MinecraftREST/config.yml

Configuration

The plugin creates a config.yml file in plugins/MinecraftREST/ with the following options:

# API Configuration
api-port: 4567  # The port on which the HTTP API will run

# Security Configuration
security:
  jwt-secret: "your-secret-key-here"  # Change this to a secure random string
  max-requests-per-minute: 60  # Rate limiting threshold
  admin-credentials:
    username: "admin"  # Change this to a secure username
    password: "change-this-password"  # Change this to a secure password

⚠️ Important: Change the default security settings before using in production!

API Documentation

The API is documented using the OpenAPI (Swagger) specification. You can find the full API documentation in:

Quick API Overview

All endpoints except /api/auth/login require JWT authentication via Bearer token.

  1. Authentication

    • POST /api/auth/login - Get JWT token
  2. Server Management

    • GET /api/server/info - Get server information
    • POST /api/server/command - Execute console command
    • POST /api/broadcast - Broadcast message
  3. Player Management

    • GET /api/players - List online players
    • POST /api/player/message - Send message to player
    • POST /api/player/kick - Kick player
    • POST /api/player/gamemode - Change player gamemode