API
Dane listy w JSON, dla botów Discorda, stron serwerów i własnych narzędzi.
Adres
Wszystko przez GET, odpowiedź zawsze w JSON, nagłówek CORS ustawiony.
api/public.phpParametry
| Parametr | Wartość | Do czego |
|---|---|---|
slug | host-port | jeden serwer zamiast całej listy |
online | 1 | tylko serwery, które odpowiadają |
limit | 1-500 | ile pozycji zwrócić, sortowane po graczach |
key | klucz API | gdy właściciel listy włączył klucze |
Przykłady
GET api/public.php
GET api/public.php?online=1&limit=10
GET api/public.php?slug=example.com-7171
curl -H "X-Api-Key: YOUR_API_KEY" https://example.com/api/public.php
Odpowiedź
Skrócony przykład jednego wpisu.
{
"ok": true,
"count": 2,
"generated": 1756400000,
"servers": [
{
"slug": "example.com-7171",
"name": "Example",
"host": "example.com",
"port": 7171,
"country": "pl",
"pvp": "PVP",
"tags": ["evo", "custom"],
"online": true,
"players": 446,
"max": 1545,
"peak": 779,
"uptime": 99.94,
"client": "8.6",
"engine": "TFS 1.4",
"exp": 9999,
"points": 256,
"checked": 1756399940
}
]
}
Zasady
- Limit 20 zapytań na minutę z jednego adresu.
- Dane w cache przez 30 sekund, częstsze odpytywanie nic nie da.
- Pomiary robimy co 5 minut, więc szybsze odświeżanie u siebie nie ma sensu.
- Korzystasz publicznie? Miło, jeśli podlinkujesz źródło.
Postacie
Osobny endpoint, tylko dla serwerów, które oddają listę graczy.
GET api/players.php?q=bubble
GET api/players.php?top=1&limit=50
GET api/players.php
Pierwszy szuka postaci po fragmencie imienia (minimum 3 znaki), drugi oddaje najwyższe poziomy, trzeci same liczby zbiorcze i listę serwerów, z których mamy imiona.
Widget i sygnatura
Bez pisania kodu: gotowy obrazek i ramka do wklejenia.
<img src="api/signature.php?slug=example.com-7171&style=1">
<iframe src="widget.php?s=example.com-7171" width="240" height="92" frameborder="0"></iframe>