API
Specjalnie dla naszych użytkowników, przygotowaliśmy specjalne API pozwalające na wyświetlenie informacji o kanałach na naszych stronach w prosty sposób.
To w jaki sposób dane te zostaną wykorzystane zależy tylko i wyłącznie od webmastera - i to właśnie on musi zadbać o odpowiednie przetworzenie tych danych. API jest wbrew pozorom bardzo proste. API wyświetla dane plaintextem, używając kodowania UTF-8.
Api znajduje się pod adresem: https://api.pirc.pl
Dokumentacja
Autoryzacja i CORS
API jest otwarte i publiczne. Do uzyskania podstawowych informacji nie jest wymagana żadna autoryzacja, ani nie jest weryfikowany CORS.
Statystyki
Podstawowe informacje o kanale: nazwa, liczba użytkowników, ilość wiadomości i aktualny temat.
Adres URL | https://api.pirc.pl/stats/NAZWA_KANAŁU |
---|---|
Zwracany typ | application/json |
Przykładowy URL | https://api.pirc.pl/stats/help |
Przykładowa odpowiedź | { name: "#help", users: 19, messages: 12179, topic: "Zanim zadasz swoje pytanie, przeczytaj: http://pirc.pl/help || FAQ: http://pirc.pl/faq" } |
ChanServ
Informacje z serwisu ChanServ: nazwa, właściciel/założyciel i data rejestracji (timestamp)
Adres URL | https://api.pirc.pl/chanserv/NAZWA_KANAŁU |
---|---|
Zwracany typ | application/json |
Przykładowy URL | https://api.pirc.pl/chanserv/help |
Przykładowa odpowiedź | { name: "#help", time_registered: 1244723078, founder: "samaelszafran" } |
Wszystkie informacje
Dla ułatwienia: endpoint zwracający połączone informacje z obu powyższych.
Adres URL | https://api.pirc.pl/all/NAZWA_KANAŁU |
---|---|
Zwracany typ | application/json |
Przykładowy URL | https://api.pirc.pl/all/help |
Przykładowa odpowiedź | { "chanserv": { "name": "#help", "time_registered": 1244723078, "founder": "samaelszafran" }, "stats": { "name": "#help", "users": 19, "messages": 12179, "topic": "Zanim zadasz swoje pytanie, przeczytaj: http://pirc.pl/help || FAQ: http://pirc.pl/faq" } } |
Przykładowe użycie na stronie
W przypadku strony statycznej (opartej jedynie o HTML, CSS i JavaScript), najłatwiej jest wykorzystać JavaScript do wykonania zapytania do naszego API:
<p> Na moim kanale jest <span id="api-channel-users"></span> użytkowników. </p> <script type="text/javascript"> const textContainer = document.getElementById('api-channel-users'); const req = new XMLHttpRequest(); req.open('GET', 'https://api.pirc.pl/all/help', true); req.onreadystatechange = (event) => { if (req.readyState !== 4) return; if (req.status === 200) { const data = JSON.parse(req.responseText); textContainer.innerText = data.stats.users; } else { textContainer.innerText = 'ERROR'; } }; req.send(null); </script>