W tym wpisie znajdziesz linki do specyfikacji usług API REST.
Dotychczasowe API systemu POL-on będzie systematycznie wygaszane wraz migracją poszczególnych usług do nowego systemu POL-on 2.0.
Specyfikację API REST przedstawioną w trakcie konsultacji technicznych znajdziesz pod linkiem: POL-on – Specyfikacja API REST w systemie POL-on – wersja 1.0
Środowisko produkcyjne https://polon2.opi.org.pl/home/login
Usługi edycji danych POL-on 2.0 obejmują następujące dziedziny:
- Usługa Role i Uprawnienia (Users)
- Pracownicy (Employees)
- Słowniki dla usługi Pracownicy
- Kierunki studiów (Fields of study)
- Instytucje (Institutions)
- Osoby ubiegające się o stopień doktora (PHD Students)
- Szkoły doktorskie (Doctoral Schools)
- Postępowania awansowe (Promotions i Promotion)
- Patenty i prawa ochronne (Patents)
- Projekty naukowe (Projects)
- Dane finansowe jednostki (Financial data)
- Osiągnięcia artystyczne (Artistic Achievement)
Katalog usług RAD-on zawierający dostęp do danych (bez zapisu) ogólnodostępnych znajdziesz pod adresem: https://radon.nauka.gov.pl/api/katalog-udostepniania-danych
Środowisko demonstracyjne (DEMO) https://polon2-demo.opi.org.pl/home/login
Środowisko demonstracyjne służy do celów testowych użytkownikom systemu POL-on 1 oraz POL-on 2.0.
Środowiska produkcyjne i demonstracyjne wykorzystują do autoryzacji ten sam system MCL. Uprawnienia i ustawienia kont z produkcji systemu POL-on 1 i POL-on 2.0 obowiązują także na środowisku testowym. Dane są synchronizowane z danymi produkcyjnymi raz w tygodniu (wtorek). Oznacza to, że dane na środowisku demonstracyjnym są nadpisywane danymi produkcyjnymi.
Specyfikacja usług API REST do przetestowania na DEMO
- Usługa Role i Uprawnienia (Users) : https://polon2-demo.opi.org.pl/users-api/swagger-ui.html
- Pracownicy (Employees): https://polon2-demo.opi.org.pl/employees-api/swagger-ui.html
- Słowniki dla usługi Pracownicy: https://polon2-demo.opi.org.pl/employees-api/swagger-ui.html
- Kierunki studiów (Fields of study): https://polon2-demo.opi.org.pl//fields-of-study-api/swagger-ui.html
- Instytucje (Institutions): https://polon2-demo.opi.org.pl/institutions-api/swagger-ui.html
- Osoby ubiegające się o stopień doktora (PHD Students): https://polon2-demo.opi.org.pl/pdat-api/swagger-ui.html
- Szkoły doktorskie (Doctoral Schools): https://polon2-demo.opi.org.pl/doctoral-studies-api/swagger-ui.html
- ORPPD 2.0 (Theses repository v.2.0): https://polon2-demo.opi.org.pl/rppd-api/swagger-ui.html
- Postępowania awansowe (Promotions i Promotion): https://polon2-demo.opi.org.pl/pdat-api/swagger-ui.html
- Patenty i prawa ochronne (Patents): https://polon2-demo.opi.org.pl/patents-api/swagger-ui.html
- Projekty naukowe (Projects): https://polon2-demo.opi.org.pl/projects-api/swagger-ui.html
- Dane finansowe jednostki (Financial data): https://polon2.opi.org.pl/dfi-api/swagger-ui.html
- Osiągnięcia artystyczne (Artistic Achievement): https://polon2-demo.opi.org.pl/arts-api/swagger-ui.html
- Studenci (Students): https://polon2-demo.opi.org.pl/fields-of-study-api/swagger-ui.html
Powyższe usługi dostępne są także dla środowiska produkcyjnego. Adres domeny środowiska to https://polon2.opi.org.pl (zamiast https://polon2-demo.opi.org.pl). Końcówki są takie same.
Scenariusze
Przykładowy kod programu oparty na REST API POL-on 2.0
- Kod programu do pobrania (.zip) (pobranie tokena dostępowego MCL oraz uwierzytelnienie wywołania jednej z usług z domeny pracownicy)
Przykładowe działanie REST API w ramach domeny pracownicy
Poniżej znajdziesz przykłady uzyskane na środowisku testowym z wykorzystaniem oprogramowania POSTMAN.
Użycie opcji „Try it out” swaggera
Wywołanie REST z wykorzystaniem swagger-ui (przykład dla środowiska polon2-dev)
Konfiguracja i użycie programu POSTMAN w kontekście domeny pracownicy
Wywołanie REST z wykorzystaniem POSTMAN
- ustawienie zmiennych środowiskowych
- przykładowy REST
pm.sendRequest({ url: pm.environment.get("MCL_URL"), method: 'POST', header: { 'Accept': 'application/json', 'Content-Type': 'application/x-www-form-urlencoded', }, body: { mode: 'urlencoded', urlencoded: [ {key: "client_id", value: pm.environment.get("MCL_CLIENT_ID"), disabled: false, description: {content:"", type:"text/plain"}}, {key: "grant_type", value: "password", disabled: false}, {key: "username", value: pm.environment.get("MCL_USER"), disabled: false}, {key: "password", value: pm.environment.get("MCL_PASS"), disabled: false} ] } }, function (err, res) { pm.environment.set("TOKEN", res.json().access_token); pm.environment.set("REFRESH_TOKEN", res.json().refresh_token); });
Pliki importowe dla POSTMAN
- zmienne środowiskowe
Środowisko do testów postman environment (.zip) - przykładowy REST
Przykladowy REST postman collection (.zip)
Zaimportowanie plików
- import zmiennych środowiskowych
- import przykładowego REST