API
Oferujemy publicznie dostępne API dla serwerów dodanych do naszej listy. Za pomocą API udostępniamy większość informacji, które są wyświetlane o serwerach TeamSpeak 3 na naszej liście.
Możesz użyć tego API np. do wyświetlenia informacji o serwerze na własnej stronie internetowej.
Dozwolone jest maksymalnie 500 zapytań na 15 minut, po przekroczeniu limitu adres IP zostanie zablokowany! Poproś o zwiększenie limitu zapytań
429 Too Many Requests, dopóki okno czasowe się nie zresetuje.Dostępne endpointy
Informacje o serwerze
Zwraca aktualny stan i podstawowe informacje o serwerze.
Endpoint dla każdego serwera znajduje się pod adresem:
| Pole | Typ | Opis |
|---|---|---|
success | boolean | Zawsze true, jeśli serwer został znaleziony. |
timestamp | number | Znacznik czasu Unix (ms) wygenerowania odpowiedzi. |
ip_address | string | Publiczny adres IP / nazwa hosta serwera. |
port | number | Port serwera. |
online | boolean | Czy serwer był dostępny podczas ostatniego sprawdzenia. |
clients | number | Liczba aktualnie połączonych klientów. |
clients_max | number | Maksymalna liczba slotów klientów. |
name | string | null | Nazwa serwera, lub null, jeśli jest offline. |
uptime | number | Czas działania serwera w sekundach. |
version | string | null | Wersja oprogramowania serwera TeamSpeak 3. |
reserved_slots | number | Liczba zarezerwowanych slotów. |
channels | number | Liczba kanałów na serwerze. |
ping | number | null | Ping serwera w milisekundach, lub null, jeśli jest offline. |
Statystyki
Zwraca szereg czasowy przydatny do wykresów jako tablicę obiektów { "x": timestamp_ms, "y": wartość }. Dodaj parametr zapytania ?days=1 (domyślnie - ostatnie 24 godziny, co godzinę), ?days=7 lub ?days=30 (ostatnie 7/30 dni, co dzień).
| Endpoint | Co oznacza y |
|---|---|
stats-votes.json | Liczba głosów otrzymanych w danym przedziale czasu. |
stats-views.json | Liczba wyświetleń strony serwera w danym przedziale czasu. |
stats-clients.json | Najwyższa liczba połączonych klientów w danym przedziale czasu. |
stats-ping.json | Najwyższy ping (ms) w danym przedziale czasu. |
stats-packet-loss.json | Największa utrata pakietów (%) w danym przedziale czasu. |
404 Not Found jest zwracane, jeśli serwer nie istnieje na naszej liście serwerów. 429 Too Many Requests jest zwracane po przekroczeniu powyższego limitu zapytań.Przykłady użycia:
<?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>