Baza udostępnia proste API HTTP umożliwiające:
Wszystkie argumenty wywołania API przekazywane są przez adres zapytania HTTP GET,
Nie ma potrzeby autoryzacji, przesyłania specjalnych nagłówków, itp.
Z wyjątkiem akcji generujących wykresy API zwraca kod JSON.
API dostępne jest pod adresem http://api.ewd.edu.pl
Typowy schemat korzystania z API to:
Aby wywołać daną akcję w odpowiedni sposób, potrzeba zapoznać się z dostępnymi dla niej parametrami, co opisano poniżej.
Aby uzyskać listę dostępnych akcji, wywołaj API z parametrem pomoc
http://api.ewd.edu.pl?pomoc=
[ { "obowiazkowy" : true, "typ" : "string", "wartDomyslna" : null, "nazwa" : "akcja", "opis" : "Akcja API", "wartosci" : [ "zwrWskazniki", "zwrDanePWE", "zwrCSVPWE", "zwrWykresPWE", "zwrDaneAdrSzkoly", "zwrDaneEWD", "zwrWykresEWD", "zwrSzkoly", "zwrWojewodztwa", "zwrPowiaty", "zwrGminy" ] } ]
Ze zwróconego obiektu możemy dowiedzieć się, że API przyjmuje obowiązkowy parametr akcja oraz jakie może on przyjąć wartości.
Aby dowiedzieć się, jakie parametry przyjmuje dana akcja, należy wywołać API ze wskazaną akcją oraz parametrem pomoc, np.:
http://api.ewd.edu.pl?akcja=zwrWskazniki&pomoc=
W wyniku otrzymujemy opis wszystkich dostępnych parametrów. Z uwagi na jego długość, poniżej zamieszczono tylko początek
[ { "wartosci" : [ "ewd", "pwe" ], "wartDomyslna" : null, "typ" : "string", "opis" : "rodzaj wskaźnika", "nazwa" : "rodzajWsk", "obowiazkowy" : false }, { "nazwa" : "doPrezentacji", "obowiazkowy" : false, "wartDomyslna" : null, "typ" : "bool", "opis" : "czy tylko wskaźniki do publicznej prezentacji/ukryte", "wartosci" : null }, (...) ]
Jako przykład wykorzystane zostanie wywołanie akcji zwrWskazniki z parametrami:
http://api.ewd.edu.pl?akcja=zwrWskazniki&doPrezentacji=1&rodzajWsk=ewd
var param = { akcja: 'zwrWskazniki', doPrezentacji: 1, rodzajWsk: 'pwe' } $.getJSON('http://api.ewd.edu.pl', param, function(dane){ ...tu wpisz kod obsługi danych... });
$url = http_build_query(array( 'akcja' => 'zwrWskazniki', 'doPrezentacji' => 1, 'rodzajWsk' => 'pwe' )); $dane = json_decode(file_get_contents('http://api.ewd.edu.pl?' . $url));