Page:
API
Clone
1
API
M_Viper edited this page 2026-01-22 18:42:34 +00:00
Willkommen im Wiki.# HTTP API Dokumentation
StatusAPI stellt einen integrierten HTTP-Server auf Port 9191 bereit, über den externe Anwendungen mit dem Plugin kommunizieren können.
Basis-URL
http://dein-server:9191
Endpunkte
GET /status
Gibt den aktuellen Serverstatus zurück.
Response:
{
"online": true,
"players": 42,
"maxPlayers": 100,
"servers": [
{
"name": "lobby",
"players": 15
},
{
"name": "survival",
"players": 27
}
]
}
POST /broadcast
Sendet eine Broadcast-Nachricht an alle Online-Spieler.
Request Headers:
Content-Type: application/json
X-API-Key: <dein-api-key> (optional, wenn in config gesetzt)
Request Body:
{
"sourceName": "System",
"message": "Server startet in 5 Minuten neu!",
"type": "global",
"prefix": "[Info]",
"prefixColor": "&e",
"bracketColor": "&8",
"messageColor": "&f"
}
Parameter:
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
sourceName |
String | Nein | Name der Quelle (Standard: "System") |
message |
String | Ja | Die Nachricht |
type |
String | Nein | Broadcast-Typ (Standard: "global") |
prefix |
String | Nein | Prefix vor der Nachricht |
prefixColor |
String | Nein | Farbcode für den Prefix |
bracketColor |
String | Nein | Farbcode für die Klammern [] |
messageColor |
String | Nein | Farbcode für die Nachricht |
Response:
{
"success": true,
"recipients": 42
}
POST /broadcast/schedule
Plant einen Broadcast für einen späteren Zeitpunkt.
Request Body:
{
"sourceName": "System",
"message": "Tägliche Wartung beginnt!",
"timestamp": 1700000000000,
"type": "global",
"prefix": "[Wartung]",
"prefixColor": "&c",
"messageColor": "&f",
"recur": "daily",
"clientScheduleId": "daily-maintenance"
}
Parameter:
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
timestamp |
Long | Ja | Unix-Timestamp in Millisekunden |
recur |
String | Nein | Wiederholung: none, hourly, daily, weekly |
clientScheduleId |
String | Nein | Eindeutige ID für den geplanten Broadcast |
Response:
{
"success": true,
"scheduleId": "daily-maintenance",
"scheduledFor": "2024-01-15 12:00:00 UTC"
}
DELETE /broadcast/schedule/{id}
Bricht einen geplanten Broadcast ab.
Request:
DELETE /broadcast/schedule/daily-maintenance
Response:
{
"success": true,
"cancelled": "daily-maintenance"
}
Farbcodes
StatusAPI unterstützt Minecraft-Farbcodes mit dem & Prefix:
| Code | Farbe |
|---|---|
&0 |
Schwarz |
&1 |
Dunkelblau |
&2 |
Dunkelgrün |
&3 |
Dunkelaqua |
&4 |
Dunkelrot |
&5 |
Lila |
&6 |
Gold |
&7 |
Grau |
&8 |
Dunkelgrau |
&9 |
Blau |
&a |
Grün |
&b |
Aqua |
&c |
Rot |
&d |
Pink |
&e |
Gelb |
&f |
Weiß |
&l |
Fett |
&n |
Unterstrichen |
&o |
Kursiv |
&m |
Durchgestrichen |
&r |
Reset |
API-Authentifizierung
Optional kann ein API-Key in der verify.properties konfiguriert werden:
broadcast.api_key=dein-geheimer-api-key
Wenn gesetzt, muss der Key im Header mitgesendet werden:
X-API-Key: dein-geheimer-api-key
Beispiele
cURL - Sofortiger Broadcast
curl -X POST http://localhost:9191/broadcast \
-H "Content-Type: application/json" \
-d '{
"message": "Willkommen auf dem Server!",
"prefix": "[Info]",
"prefixColor": "&a"
}'
cURL - Geplanter Broadcast
# Timestamp für morgen 12:00 Uhr
TIMESTAMP=$(($(date -d "tomorrow 12:00" +%s) * 1000))
curl -X POST http://localhost:9191/broadcast/schedule \
-H "Content-Type: application/json" \
-d "{
\"message\": \"Server-Restart in 5 Minuten!\",
\"timestamp\": $TIMESTAMP,
\"recur\": \"daily\",
\"clientScheduleId\": \"daily-restart-warning\"
}"
Python - Broadcast senden
import requests
url = "http://localhost:9191/broadcast"
data = {
"message": "Python sagt Hallo!",
"prefix": "[Bot]",
"prefixColor": "&b",
"messageColor": "&f"
}
response = requests.post(url, json=data)
print(response.json())
JavaScript/Node.js - Broadcast senden
const fetch = require('node-fetch');
const url = 'http://localhost:9191/broadcast';
const data = {
message: 'Node.js sagt Hallo!',
prefix: '[Bot]',
prefixColor: '&e'
};
fetch(url, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(data)
})
.then(res => res.json())
.then(json => console.log(json));
Fehlerbehandlung
HTTP Status Codes
| Code | Bedeutung |
|---|---|
200 |
Erfolgreich |
400 |
Ungültige Anfrage |
401 |
API-Key ungültig oder fehlt |
404 |
Endpunkt nicht gefunden |
500 |
Interner Serverfehler |
Fehler-Response
{
"success": false,
"error": "Modul ist deaktiviert"
}
StatusAPI Wiki
Erste Schritte
Konfiguration
Module
Referenz
Plugin-Oekosystem
- Uebersicht
- GlobalChat-Supressor
- MC-Player-History
- MC-Server-Status
- MC-BungeeCord-Status
- MC-Gallery
- PulseCast
Support
Rechtliches
Copyright (c) M_Viper