API
Nabízíme veřejně použitelné API pro servery přidané do našeho server listu. Přes API veřejně poskytujeme většinu informací, které jsou zobrazovány o TeamSpeak3 serverech zde na našem server listu.
Toto API můžeš využít například k zobrazení informací o serveru na svém webu.
Povoleno je maximálně 500 požadavků za 15 minut, poté bude IP adresa zablokována! Požádat o navýšení limitu požadavků
429 Too Many Requests, dokud časové okno neskončí.Dostupné endpointy
Informace o serveru
Vrací aktuální stav a základní informace o serveru.
Endpoint pro každý server se nachází na adrese:
| Pole | Typ | Popis |
|---|---|---|
success | boolean | Vždy true, pokud byl server nalezen. |
timestamp | number | Unix timestamp (ms) vygenerování odpovědi. |
ip_address | string | Veřejná IP adresa / hostname serveru. |
port | number | Port serveru. |
online | boolean | Jestli byl server dostupný při posledním ověření. |
clients | number | Počet aktuálně připojených klientů. |
clients_max | number | Maximální počet slotů. |
name | string | null | Název serveru, nebo null pokud je offline. |
uptime | number | Doba běhu serveru ve vteřinách. |
version | string | null | Verze softwaru TeamSpeak 3 serveru. |
reserved_slots | number | Počet rezervovaných slotů. |
channels | number | Počet kanálů na serveru. |
ping | number | null | Ping serveru v milisekundách, nebo null pokud je offline. |
Statistiky
Vrací časovou řadu použitelnou pro grafy jako pole objektů { "x": timestamp_ms, "y": hodnota }. Přidej query parametr ?days=1 (výchozí - posledních 24 hodin, po hodinách), ?days=7 nebo ?days=30 (posledních 7/30 dní, po dnech).
| Endpoint | Co znamená y |
|---|---|
stats-votes.json | Počet hlasů získaných v daném časovém úseku. |
stats-views.json | Počet zobrazení stránky serveru v daném úseku. |
stats-clients.json | Nejvyšší počet připojených klientů v daném úseku. |
stats-ping.json | Nejvyšší ping (ms) v daném úseku. |
stats-packet-loss.json | Nejvyšší ztrátovost paketů (%) v daném úseku. |
404 Not Found se vrátí, pokud server neexistuje v našem server listu. 429 Too Many Requests se vrátí při překročení limitu požadavků výše.Příklady použití:
<?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>