API
Wir bieten eine öffentlich nutzbare API für die in unserer Serverliste eingetragenen Server an. Über die API stellen wir die meisten Informationen bereit, die auch hier auf unserer Serverliste zu den TeamSpeak-3-Servern angezeigt werden.
Du kannst diese API zum Beispiel nutzen, um Serverinformationen auf deiner eigenen Website anzuzeigen.
Es sind maximal 500 Anfragen pro 15 Minuten erlaubt, danach wird die IP-Adresse gesperrt! Erhöhung des Anfragelimits beantragen
429 Too Many Requests, bis das Zeitfenster zurückgesetzt wird.Verfügbare Endpunkte
Serverinformationen
Gibt den aktuellen Status und grundlegende Informationen über den Server zurück.
Der Endpunkt für jeden Server befindet sich unter:
| Feld | Typ | Beschreibung |
|---|---|---|
success | boolean | Immer true, wenn der Server gefunden wurde. |
timestamp | number | Unix-Zeitstempel (ms) der Erstellung dieser Antwort. |
ip_address | string | Öffentliche IP-Adresse / Hostname des Servers. |
port | number | Serverport. |
online | boolean | Ob der Server bei der letzten Prüfung erreichbar war. |
clients | number | Anzahl der aktuell verbundenen Clients. |
clients_max | number | Maximale Anzahl an Client-Slots. |
name | string | null | Servername, oder null wenn offline. |
uptime | number | Serverlaufzeit in Sekunden. |
version | string | null | Version der TeamSpeak-3-Serversoftware. |
reserved_slots | number | Anzahl der reservierten Slots. |
channels | number | Anzahl der Kanäle auf dem Server. |
ping | number | null | Serverping in Millisekunden, oder null wenn offline. |
Statistiken
Gibt eine für Diagramme nutzbare Zeitreihe als Array von { "x": timestamp_ms, "y": wert }-Objekten zurück. Füge den Query-Parameter ?days=1 (Standard - letzte 24 Stunden, stündlich), ?days=7 oder ?days=30 (letzte 7/30 Tage, täglich) hinzu.
| Endpunkt | Bedeutung von y |
|---|---|
stats-votes.json | Anzahl der erhaltenen Stimmen in diesem Zeitabschnitt. |
stats-views.json | Anzahl der Aufrufe der Serverseite in diesem Zeitabschnitt. |
stats-clients.json | Höchste Anzahl verbundener Clients in diesem Zeitabschnitt. |
stats-ping.json | Höchster Ping (ms) in diesem Zeitabschnitt. |
stats-packet-loss.json | Höchster Paketverlust (%) in diesem Zeitabschnitt. |
404 Not Found wird zurückgegeben, wenn der Server nicht in unserer Serverliste existiert. 429 Too Many Requests wird zurückgegeben, wenn du das oben genannte Anfragelimit überschreitest.Anwendungsbeispiele:
<?php
try {
$server = json_decode(file_get_contents("https://teamspeak3-servers.eu/server/teamspeak-server.eu:9987/api.json"), false);
echo "Clients on-line: ".$server->clients; //on-line clients count
echo "Maximum clients: ".$server->clients_max; //maximum clients
echo "Current server ping: ".$server->ping; //current ping
} catch (Exception $e) {
echo "There is a error: ".$e->getMessage();
}
?>
<script>
fetch("https://teamspeak3-servers.eu/server/teamspeak-server.eu:9987/api.json").then(async (result) => {
if (result.ok) {
let server = await result.json();
console.log("Clients on-line: "+server.clients);
console.log("Maximum clients: "+server.clients_max);
console.log("Current server ping: "+server.ping);
}
}).catch((err) => {
console.error("There is a error: ", err);
});
</script>