W tym wpisie znajdziesz linki do specyfikacji usług API REST.

Ś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

  1. Usługa Role i Uprawnienia (Users) : https://polon2-demo.opi.org.pl/users-api/swagger-ui.html
  2. Pracownicy (Employees): https://polon2-demo.opi.org.pl/employees-api/swagger-ui.html
  3. Słowniki dla usługi Pracownicy: https://polon2-demo.opi.org.pl/employees-api/swagger-ui.html
  4. Kierunki studiów (Fields of study): https://polon2-demo.opi.org.pl//fields-of-study-api/swagger-ui.html
  5. Instytucje (Institutions): https://polon2-demo.opi.org.pl/institutions-api/swagger-ui.html
  6. Osoby ubiegające się o stopień doktora (PHD Students): https://polon2-demo.opi.org.pl/pdat-api/swagger-ui.html
  7. Szkoły doktorskie (Doctoral Schools): https://polon2-demo.opi.org.pl/doctoral-studies-api/swagger-ui.html
  8. ORPPD 2.0 (Theses repository v.2.0): https://polon2-demo.opi.org.pl/rppd-api/swagger-ui.html
  9. Postępowania awansowe (Promotions i Promotion): https://polon2-demo.opi.org.pl/pdat-api/swagger-ui.html
  10. Patenty i prawa ochronne (Patents): https://polon2-demo.opi.org.pl/patents-api/swagger-ui.html
  11. Projekty naukowe (Projects): https://polon2-demo.opi.org.pl/projects-api/swagger-ui.html
  12. Dane finansowe jednostki (Financial data): https://polon2.opi.org.pl/dfi-api/swagger-ui.html
  13. Osiągnięcia artystyczne (Artistic Achievement): https://polon2-demo.opi.org.pl/arts-api/swagger-ui.html
  14. Studenci (Students): https://polon2-demo.opi.org.pl/fields-of-study-api/swagger-ui.html

Scenariusze

Przykładowy kod programu oparty na REST API POL-on 2.0

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

  • Pre-request script
    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

    Zaimportowanie plików

    • import zmiennych środowiskowych

    • import przykładowego REST