API głosowania na serwery
Pobranie informacji o serwerze
Zapytanie umożliwia pobranie kluczowych informacji dotyczących głosowania na dany serwer w serwisie GOSetti.pl. Korzystając z tego zapytania programista ma możliwość między innymi:
- Stworzenia licznika głosów bezpośrednio na własnej stronie.
- Stworzenia dedykowanych grafik z dynamicznie zmieniającymi się danymi.
- Zaznaczenia rankingu serwera na swojej stronie wraz z liczbą zwycięstw w poszczególnych kategoriach.
- I wielu wielu innych.
POST https://gosetti.pl/Api/GosettiVotingCsgoServerGetData.php
Uwaga. Użytkownicy korzystający z powyższego zapytania zobowiązani są do cache'owania wyników po stronie serwera, z rozsądnym czasem (na poziomie co najmniej kilku minut). Zbyt wiele zapytań o dane serwerów poskutkuje automatycznym zablokowaniem ruchu z danego adresu, a w konsekwencji utratą połączenia pomiędzy stroną a GOSetti.pl
Format zapytania
application/json
{ "CsgoServerId": (int) ID Serwera dla którego mają zostać pobrane dane. ID serwera dostępne jest w Panelu Użytkownika. }
Format odpowiedzi
application/json
{ "PositionGosetti": (int | null) Pozycja serwera w globalnym rankingu lub null, jeśli serwer jest nieklasyfikowany "PlaceCount_1": (int) Liczba zdobytych pierwszych miejsc "PlaceCount_2": (int) Liczba zdobytych drugich miejsc "PlaceCount_3": (int) Liczba zdobytych trzecich miejsc "PlaceCount_4": (int) Liczba zdobytych losowych miejsc "VotingTour": { (dotyczy obecnej tury głosowania) "Position": (int | null) Pozycja serwera w turze głosowania lub null jeśli serwer jest nieklasyfikowany "PointsTotal": (int) Liczba punktów zdobyta w obecnej turze głosowania "MethodVotes": { (dotyczy metody "Kliknij i głosuj") "VotesCountToday": (int) Liczba głosów oddanych dziś na ten serwer } } }
Przykładowa funkcja w języku PHP do pobierania danych z serwera
/** Funkcja pobierające dane głosowania z portalu GOSetti.pl. Format wejścia i wyjścia opisany na stronie: https://gosetti.pl/dokumentacje_i_materialy/gosetti_glosowanie_na_serwery_api */ function GosettiVotingCsgoServerGetData($CsgoServerId) { $RequestBody = json_encode([ 'CsgoServerId' => (int) $CsgoServerId ]); $RequestHeaders = [ 'Content-Type' => 'application/json', 'Accept' => 'application/json', ]; $RequestHeadersString = ''; foreach($RequestHeaders as $Header => $Value) $RequestHeadersString .= $Header . ': ' . $Value . "\r\n"; $ResponseBody = @file_get_contents( 'https://gosetti.pl/Api/GosettiVotingCsgoServerGetData.php', false, stream_context_create(['http' => [ 'protocol_version' => '1.1', 'method' => 'POST', 'header' => $RequestHeadersString, 'content' => $RequestBody, ]]) ); return @json_decode($ResponseBody); }