Mit der MineList-API kann dein Server prüfen, ob ein Spieler gevotet hat, eine Belohnung genau einmal vergeben und öffentliche Statistiken abrufen. Alle Endpunkte liefern JSON und arbeiten mit einfachen HTTPS-GET-Anfragen, funktionieren also in jeder Programmiersprache.
API-Schlüssel erhalten
Trage deinen Server ein, übernimm ihn und öffne das Betreiber-Panel. Den API-Schlüssel findest du auf der Seite mit den Servereinstellungen. Halte ihn geheim, denn er identifiziert deinen Server. Wird er öffentlich, erzeuge im Panel einen neuen und aktualisiere dein Plugin oder Skript.
Die Basisadresse aller Endpunkte lautet https://minelist.eu.
Vote prüfen
GET /api/v1/vote?key=API_KEY&username=NICK
Zeigt dir, ob der Spieler heute gevotet hat und ob die Belohnung schon eingelöst wurde.
{"voted":true,"claimed":false,"next_vote_utc":"2026-10-31T00:00:00Z"}
votedist true, wenn der Nick am aktuellen UTC-Tag einen Vote für deinen Server hat.claimedist true, wenn du diesen Vote bereits als eingelöst markiert hast.next_vote_utcist der Zeitpunkt, ab dem der Spieler wieder voten kann.
Vote einlösen
GET /api/v1/vote/claim?key=API_KEY&username=NICK
Markiert den heutigen Vote als eingelöst. Rufe den Endpunkt direkt vor der Vergabe der Belohnung auf, damit ein Spieler sie nicht zweimal abholen kann. Mögliche Antworten:
| Antwort | Bedeutung |
|---|---|
{"voted":true,"claimed":true} | Der Vote war gültig und ist jetzt eingelöst. Vergib die Belohnung. |
{"voted":true,"claimed":false,"already_claimed":true} | Der Vote wurde bereits früher eingelöst. Vergib nichts. |
{"voted":false,"claimed":false} | Der Spieler hat heute nicht gevotet. |
Votes dieses Monats auflisten
GET /api/v1/votes?key=API_KEY
Liefert alle Votes, die dein Server im aktuellen Monat erhalten hat. Praktisch für monatliche Belohnungen an die Top-Voter und für Ranglisten auf deiner eigenen Website.
Öffentliche Server-Statistiken
GET /api/v1/server/<slug>
Dieser Endpunkt braucht keinen Schlüssel. Der Slug ist der letzte Teil der Serveradresse auf MineList. Felder der Antwort:
| Feld | Beschreibung |
|---|---|
name | Servername |
url | Website des Servers |
ip | Verbindungsadresse |
online | Ob die letzte Prüfung erfolgreich war |
players | Spieler online bei der letzten Prüfung |
max_players | Spielerplätze |
version | Serverversion |
votes_month | Votes in diesem Monat |
votes_total | Votes seit dem Eintrag des Servers |
uptime_30 | Verfügbarkeit in den letzten 30 Tagen in Prozent |
rating | Durchschnittliche Bewertung |
last_check | Zeitpunkt der letzten Prüfung |
Beispiel mit curl
Das ist die gesamte Logik als Shell-Befehl. Jede Sprache, die eine HTTP-Anfrage senden kann, etwa Java, PHP, Python oder Node.js, erledigt dasselbe.
curl -s "https://minelist.eu/api/v1/vote/claim?key=API_KEY&username=Steve"
Werte das JSON aus und führe, wenn claimed true ist, deinen Befehl für die Belohnung aus, zum Beispiel give Steve diamond 3.
NuVotifier-Unterstützung
Wenn du Belohnungen sofort und ohne Abfragen bevorzugst, kann MineList Votes über NuVotifier an deinen Server senden. Beide Protokollversionen werden unterstützt. Version 1 verwendet einen öffentlichen RSA-Schlüssel, Version 2 ein Token.
- Installiere NuVotifier auf deinem Server und starte ihn neu.
- Gib im Betreiber-Panel den Host, den Port (standardmäßig 8192) und den öffentlichen Schlüssel (v1) oder das Token (v2) ein.
- Klicke auf Test-Vote senden und prüfe, ob dein Server den Vote ins Log schreibt.
Schlägt der Test fehl, stelle sicher, dass der Votifier-Port in deiner Firewall offen ist und der Schlüssel ohne Leerzeichen oder Zeilenumbrüche kopiert wurde.
Live-Banner
Jeder Server hat ein Live-Banner mit 468x60 Pixeln, das den aktuellen Status und die Spielerzahl anzeigt:
https://minelist.eu/banner/<slug>.png
Beispiel zum Einbetten in HTML:
<a href="https://minelist.eu/de/server/dein-slug">
<img src="https://minelist.eu/banner/dein-slug.png" width="468" height="60" alt="Vote für uns auf MineList">
</a>
Praxistipps
- Speichere öffentliche Statistiken mindestens eine Minute im Cache, statt die API bei jedem Seitenaufruf abzufragen.
- Packe den API-Schlüssel niemals in clientseitigen Code oder in ein öffentliches Repository.
- Rufe den Einlöse-Endpunkt nur einmal pro Belohnung auf.