ThunderHosting

Gamehosting-API: Server verwalten und bestellen

API-Schlüssel erstellen, Server steuern, die Konsole lesen und neue Server mit Guthaben bestellen.

Mit einem Organisations-API-Schlüssel können Skripte und Bots tun, was Sie auf der Serverseite tun. Die vollständige Referenz finden Sie in Ihrem Kundenbereich unter Organisation, Entwickler, Gameserver.

1. Schlüssel erstellen

  1. Öffnen Sie Organisation, Einstellungen, API-Schlüssel und erstellen Sie einen Schlüssel.
  2. Wählen Sie den Bereich game:read zum Lesen von Servern und Konsole oder game:write, um Server auch zu steuern und zu bestellen.
  3. Kopieren Sie den Schlüssel (er beginnt mit org_k_). Er wird nur einmal angezeigt.

2. Einen Server steuern

GET/api/v1/customer/game-serversv1
POST/api/v1/customer/game-servers/{id}/powerv1
bash
API="https://api.thunderhosting.com/management"

curl -H "Authorization: Bearer org_k_..." \
  $API/api/v1/customer/game-servers

curl -X POST -H "Authorization: Bearer org_k_..." -H "Content-Type: application/json" \
  -d '{"action":"restart"}' \
  $API/api/v1/customer/game-servers/SERVER_ID/power

3. Konsole: Befehle und Ausgabe

GET/api/v1/customer/game-servers/{id}/console?lines=100v1
POST/api/v1/customer/game-servers/{id}/command/capturev1
bash
curl -X POST -H "Authorization: Bearer org_k_..." -H "Content-Type: application/json" \
  -d '{"command":"list","waitMs":1500}' \
  $API/api/v1/customer/game-servers/SERVER_ID/command/capture

# {"command":"list","lines":["There are 2 of a max of 20 players online: Alex, Sam"]}

Der Konsolen-Endpunkt liefert die letzten Zeilen (bis 500). Der Capture-Endpunkt sendet einen Befehl und liefert, was der Server innerhalb der Wartezeit ausgegeben hat. Verwenden Sie /command, wenn Sie die Ausgabe nicht brauchen.

4. Einen Server mit Guthaben bestellen

POST/api/v1/customer/game-servers/quotev1
POST/api/v1/customer/game-servers/ordersv1
bash
curl -X POST -H "Authorization: Bearer org_k_..." -H "Content-Type: application/json" \
  -H "Idempotency-Key: my-order-001" \
  -d '{"game":"minecraft-paper","plan":"custom","memoryMb":8192,"cpuPercent":200,
       "diskMb":40960,"eulaAccepted":true,"acceptTerms":true}' \
  $API/api/v1/customer/game-servers/orders
  • Laden Sie zuerst Ihr Guthaben auf; die Bestellung wird sofort davon bezahlt.
  • Mit quote und demselben Inhalt sehen Sie den Preis vor der Bestellung.
  • Reicht das Guthaben nicht, lautet die Antwort 402 und es wird nichts bestellt.
  • Senden Sie einen Idempotency-Key, damit eine wiederholte Anfrage nie doppelt bestellt.
  • Fragen Sie dann die Serverliste mit der erhaltenen subscriptionId ab, bis der Server ACTIVE ist.

Ein API-Schlüssel ist wie ein Passwort für Ihre Organisation. Halten Sie ihn geheim, geben Sie jedem Skript einen eigenen Schlüssel und löschen Sie nicht mehr genutzte Schlüssel.