Informacje ogólne

Adobe Captivate Prime jest hostowanym w chmurze, samoobsługowym, zorientowanym na uczniów rozwiązaniem do zarządzania nauczaniem. Klienci mogą uzyskać programowy dostęp do zasobów Captivate Prime za pomocą interfejsu API Captivate Prime w celu zintegrowania ich z innymi aplikacjami korporacyjnymi. Interfejs API może być również wykorzystywany przez partnerów Adobe w celu podwyższenia wartości aplikacji Captivate Prime poprzez zwiększenie liczby funkcji lub integrację z innymi aplikacjami czy usługami.

Sposoby użycia

Korzystając z interfejsu API Captivate Prime, programiści mogą tworzyć samodzielne aplikacje, które zwiększają funkcjonalność środowiska Captivate Prime, a nawet integrują to środowisko z innymi aplikacjami korporacyjnymi w konkretnych procesach. Możesz stworzyć aplikację internetową, klienta desktopowego lub aplikację mobilną przy użyciu dowolnej technologii. Jako programista możesz uzyskać dostęp do danych aplikacji z poziomu Captivate Prime.Wdrożenie tworzonej aplikacji ma miejsce poza platformą Captivate Prime. Programista ma pełną kontrolę nad cyklem rozwoju oprogramowania w miarę rozwoju aplikacji. Zazwyczaj aplikacje są opracowywane przez organizację klienta do stosowania z kontem Captivate Prime i są to aplikacje „prywatne” dla tej konkretnej organizacji klienta. Partnerzy firmy Adobe mogą również tworzyć aplikacje z interfejsem API Captivate Prime, z których może korzystać duża liczba klientów Captivate Prime.

API Captivate Prime

API aplikacji Captivate Prime opiera się na zasadach REST i eksponuje kluczowe elementy modelu obiektowego Captivate Prime programistom aplikacji poprzez protokół HTTP. Przed zapoznaniem się z informacjami szczegółowymi dotyczącymi punktów końcowych API i metod HTTP programiści mogą zaznajomić się z różnymi obiektami Captivate Prime, ich atrybutami i wzajemnymi powiązaniami. Gdy modele zostaną dobrze zrozumiane, przydatne będzie zapoznanie się ze strukturą żądań i odpowiedzi API oraz kilku terminów programistycznych, których używamy ogólnie w całym API.

Szczegółowe informacje na temat różnych punktów końcowych i metod API znajdują się w dokumentacji API Captivate Prime.

Uwierzytelnianie API

Podczas pisania aplikacji, która tworzy wywołania API do aplikacji Prime, należy zarejestrować aplikację za pomocą aplikacji Administrator ds. integracji. 

Standard API Captivate Prime wykorzystuje strukturę OAuth 2.0 do uwierzytelniania i autoryzacji aplikacji klienckich. 

Procedura

1. Konfiguracja aplikacji 

Możesz skonfigurować swoją aplikację z identyfikatorem klienta i tajnym kluczem klienta, aby korzystać z odpowiednich punktów końcowych.Po zarejestrowaniu aplikacji można uzyskać dostęp do wartości clientId i clientSecret. Zapytanie GET w adresie URL powinno być używane w wyszukiwarce do uwierzytelniania użytkowników Captivate Prime za pomocą wstępnie skonfigurowanych kont, takich jak SSO, Adobe ID. 

GET https://captivateprime.adobe.com/oauth/o/authorize?client_id=<Wprowadź identyfikator klienta>&redirect_uri=<Wprowadź URL przekierowania>&state=<Dowolny ciąg danych>&scope=<zakresy oddzielone przecinkami>&response_type=CODE.

Po udanym uwierzytelnieniu przeglądarka przekierowuje do redirect_uri wspomnianego w powyższym adresie URL. Parametr kod jest dołączany wraz z przekierowaniem uri.

2. Pobieranie odświeżonego tokena z kodu

POST https://captivateprime.adobe.com/oauth/token Content-Type: application/x-www-form-urlencoded

Treść prośby typu POST:

client_id:<Enter your clientId>&
client_secret:<Enter your clientSecret>&
code:<code from step 1>

3. Uzyskiwanie tokena dostępu dzięki odświeżonemu tokenowi

Adres URL umożliwiający uzyskanie tokena dostępu:

POST https://captivateprime.adobe.com/oauth/token/refresh Content-Type: application/x-www-form-urlencoded

Treść prośby typu POST:

client_id:<Enter your clientId>&
client_secret:<Enter your clientSecret>&
refresh_token:<refresh token>

Adres URL umożliwiający weryfikację informacji szczegółowych tokena dostępu

GET https://captivateprime.adobe.com/oauth/token/check?access_token=<access_token>

Ograniczenia wykorzystania

Token dostępu jest ważny przez siedem dni. Po jednym dniu należy wygenerować nowy token dostępu, odświeżając go. Jeśli wygenerujesz nowy token dostępu, odświeżając go, podczas gdy obecny token dostępu jest nadal ważny, token dostępu zostanie zwrócony. 

Poniżej wyjaśniono niektóre z często używanych terminów w odniesieniu do API Captivate Prime. 

Parametr zawiera

Programiści mają dostęp do jednego modelu obiektowego API, a także wielu modeli związanych z tym modelem. Aby uzyskać dostęp do kolejnych powiązanych modeli, należy zrozumieć związek każdego modelu z innymi modelami. Parametr zawiera umożliwia programistom dostęp do modeli zależnych. Można użyć przecinka jako separatora, aby uzyskać dostęp do wielu modeli.Przykładowe użycie i informacje szczegółowe dotyczące parametru zawiera znajdują się na tej stronie w sekcji przykładowego modelu API.

Żądanie API

Żądania API mogą być zgłaszane poprzez żądanie HTTP. W zależności od punktu końcowego i metody programista może wybrać pomiędzy różnymi czasownikami HTTP, takimi jak m.in. GET, PUT, POST, DELETE, PATCH. W przypadku niektórych żądań mogą być przekazywane parametry zapytania. Przy składaniu żądania o konkretny model danych użytkownik może również zażądać modeli pokrewnych opisanych w specyfikacjach API JSON. Struktura typowego żądania API została opisana w sekcji przykładowe wykorzystanie modelu.

Odpowiedź API

Gdy żądanie API jest składane przez klienta, zostanie uzyskany dokument SON zgodnie ze specyfikacją API JSON. Odpowiedź zawiera również kod statusu HTTP, który programista może zweryfikować w celu wykonania odpowiednich dalszych kroków w logice aplikacji.Struktura typowej odpowiedzi API opisana jest w sekcji przykładowe wykorzystanie modelu.

Błędy

Gdy żądanie API nie powiedzie się, pojawi się informacja o błędzie. Zwrócony w odpowiedzi kod statusu HTTP wskaże charakter błędu. Kody błędów są przedstawiane za pomocą numerów dla każdego modelu. Niektóre z częstych błędów występujących w interfejsie API, wskazujące na problemy z dostępem do protokołu HTTP, to 200, 204, 400 i 404.  

Pola

Atrybuty obiektu API i ich relacje nazywane są zbiorczo polami. Szczegółowe informacje można znaleźć w sekcji API JSON. Pól można używać jako parametru podczas wywołań API w celu pobrania określonych atrybutów z modelu. W przypadku braku parametru Pola wywołanie API pobiera wszystkie dostępne atrybuty z modelu. W tym wywołaniu API fields[skill]=name zapewnia atrybut nazwy samego modelu umiejętności.

https://captivateprime.adobe.com/primeapi/v1/users/{userId}/userSkills/{id}?include=skillLevel.skill&fields[skill]=name 

Dzielenie na strony

Czasami żądanie API skutkuje długą listą obiektów, które mają być przesłane w odpowiedzi. W takich przypadkach atrybut dzielenia na strony umożliwia programiście pobieranie wyników kolejno na wielu stronach, gdzie każda strona zawiera szereg rekordów. Atrybut dzielenia na strony w aplikacji Captivate Prime umożliwia ustawienie maksymalnej ilości danych wyświetlanych na stronie. Można również określić zakres rekordów, które mają zostać wyświetlone na stronie. 

Sortowanie

W modelach API sortowanie jest dozwolone. W oparciu o model, wybierz typ sortowania, który ma być zastosowany dla wyników.Wyniki mogą być sortowane w kolejności rosnącej lub malejącej. Na przykład, jeśli podasz wartość sort=name nazwy zostaną posortowane alfabetycznie w kolejności od A do Z. Jeśli podasz wartość sort=-name nazwy zostaną posortowane alfabetycznie w kolejności od Z do A. Szczegółowe informacje można znaleźć w sekcji Specyfikacje API JSON.

Wykorzystanie interfejsu API

Rozważmy przypadek, w którym programista chce uzyskać nazwę umiejętności, maksymalną liczbę punktów przypisanych do poziomu umiejętności oraz punkty zdobyte przez ucznia w ramach tej umiejętności.

Model userSkill (Umiejętności użytkownika) w API Captivate Prime składa się z atrybutów domyślnych, takich jak id, type, dateAchieved, dateCreated, pointsEarned. Gdy programista używa metody GET do pozyskania informacji o modelu userSkill, bieżące dane dotyczące atrybutów domyślnych są wyświetlane. 

Jednak w tym scenariuszu programista chce uzyskać nazwę umiejętności i punkty poziomu umiejętności dla użytkownika. Interfejs API Captivate Prime umożliwia dostęp do tych powiązanych informacji za pomocą pól relacji i parametru Zawiera. Modele skojarzone dla userSkill są uzyskiwane ze znacznika relacji. Informacje szczegółowe każdego skojarzonego modelu można uzyskać przez wywołanie tych modeli wraz z userSkill. Aby uzyskać te informacje, użyj parametru zawiera z wartościami oddzielonymi kropką dla każdego ze skojarzonych modeli.Można użyć przecinka jako separatora, aby zażądać innego modelu, takiego jak np. użytkownik include=skillLevel.skill,course

Wywołanie API

https://captivateprime.adobe.com/primeapi/v1/users/{userId}/userSkills/{id}?include=skillLevel.skill&fields[skill]=name&fields[skillLevel]=maxCredits&fields[userSkill]=pointsEarned

Wartość dla userId może wynosić np. 746783 a dla userSkills id: 746783_4426_1. 

Odpowiedź na wywołanie API

{
   "links": {"self": "https://captivateprime.adobe.com/primeapi/v1/users/746783/userSkills/746783_4426_1?include=skillLevel.skill&fields[userSkill]=pointsEarned&fields[skillLevel]=maxCredits&fields[skill]=name"},
   "data":    {
      "id": "746783_4426_1",
      "type": "userSkill",
      "attributes": {"pointsEarned": 5},
      "links": {"self": "https://captivateprime.adobe.com/primeapi/v1/users/746783/userSkills/746783_4426_1"}
   },
   "included":    [
            {
         "id": "4426",
         "type": "skill",
         "attributes": {"name": "Java"},
         "links": {"self": "https://captivateprime.adobe.com/primeapi/v1/skills/4426"}
      },
            {
         "id": "4426_1",
         "type": "skillLevel",
         "attributes": {"maxCredits": 10}
      }
   ]
}

Modele Captivate Prime

Interfejs API Captivate Prime umożliwia programistom dostęp do obiektów Captivate Prime jako zasobów RESTful. Oznacza to, że każdy punkt końcowy API reprezentuje zasób (zazwyczaj element obiektu, taki jak Odznaka lub zbiór takich elementów). Następnie programiści używają czasowników HTTP, takich jak PUT, GET, POST i DELETE do wykonywania operacji CRUD na tych obiektach (kolekcjach).

Poniższy diagram przedstawia różne elementy modelu obiektowego Captivate Prime w API V1.

Model obiektowy API V1
Model obiektowy API V1

Poniższa tabela przedstawia różne elementy modelu obiektowego V1 Captivate Prime:

Lp.

Element Captivate Prime

Opis

1.      

user

Użytkownik jest kluczowym modelem w systemie Captivate Prime. Użytkownicy są zazwyczaj uczniami z organizacji lub spoza niej, którzy korzystają z elementów edukacyjnych. Mogą oni jednak odgrywać inne role, takie jak Autor czy Przełożony. Identyfikator użytkownika, typ, adres e-mail to niektóre z atrybutów inline. 

2.      

course

Kurs to jeden z obiektów edukacyjnych obsługiwanych w aplikacji Captivate Prime, który składa się z co najmniej jednego modułu. 

3.      

module

Moduł tworzy elementy edukacyjne w aplikacji Captivate Prime. Istnieją cztery typy modułów: klasa, wirtualna klasa, aktywność i moduł realizowany w tempie uczestnika. Użyj tego modelu modułu, aby uzyskać szczegółowe informacje o wszystkich modułach na koncie. 

4.      

certification

Certyfikacja jest przyznawana uczniom na podstawie pomyślnego ukończenia kursów. Przed skorzystaniem z certyfikacji aplikacja musi zawierać kursy. 

5.      

learning program

Programy edukacyjne to kursy pozwalające uczniom osiągnąć określone wymagania. Zazwyczaj programy są wykorzystywane do realizacji celów edukacyjnych obejmujących poszczególne kursy. 

6.      

badge

Odznaka to znak osiągnięć, który uczniowie otrzymują, gdy osiągną określone cele w miarę postępów w nauce. 

7.      

skill

Model umiejętności składa się z poziomów i punktów. Umiejętności mogą być nabywane przez uczniów po ukończeniu odpowiedniego kursu. 

8.      

certificationEnrollment

Model ten zawiera szczegółowe informacje o rejestracji użytkownika na certyfikację.

9.  

courseEnrollment

Model ten zawiera szczegółowe informacje o rejestracji użytkownika na kurs. 

10.  

courseInstance

Kurs może mieć jeden lub wiele elementów. Można wybrać element kursu.

11.  

courseSkill

Model ten określa postęp dla umiejętności osiągany poprzez ukończenie kursu.

12.  

courseModule

Model ten określa, w jaki sposób moduł jest zawarty  w kursie,np. czy jest używany do testów wstępnych czy też do tworzenia treści.

13.  

learningProgramInstance

Program edukacyjny może składać się z wielu elementów o cechach programu edukacyjnego lub z elementów niestandardowych. 

14.  

job aid

Materiały pomocnicze to treści szkoleniowe dostępne dla uczniów bez konieczności rejestracji czy ukończenia kursu. Można uzyskać zaktualizowaną datę, stan, informacje o identyfikatorze wraz z powiązanymi z nimi modelami, takimi jak wersja materiału pomocniczego, autorzy i poziom umiejętności. 

15.  

jobAidVersion

Materiały pomocnicze mogą być dostępne w jednej lub wielu wersjach, co wynika z liczby aktualizacji dokumentu. Model ten zawiera szczegółowe informacje na temat wersji materiału pomocniczego. 

16.  

learningProgramInstanceEnrollment

Program edukacyjny składa się z co najmniej jednego elementu. Uczniowie mogą zapisać się do elementu programu samodzielnie lub mogą zostać przypisani przez administratora. Model ten zawiera szczegółowe informacje o rejestracji użytkownika na element programu edukacyjnego. 

17.  

moduleVersion

Moduł może mieć jedną wersję lub wiele wersji w oparciu o liczbę aktualizacji. Użyj tego modelu, aby uzyskać szczegółowe informacje na temat wersji modułu. 

18.  

skillLevel

Poziom umiejętności składa się z co najmniej jednego kursu, który należy ukończyć w celu zdobycia poziomu i punktów. 

19.  

userBadge

Ten element odnosi się do odznaki danego użytkownika. Zawiera informacje, takie jak data uzyskania odznaki czy URL ACS. 

20.  

userSkill

UserSkill wskazuje, ile z jednego poziomu umiejętności osiągnął jeden użytkownik.

Poniżej przedstawiono różne elementy diagramu klasy Captivate Prime w API V2.

Diagram klasy API V2
Diagram klasy API V2
Element Captivate Prime Opis
account Zawiera informacje dotyczące klienta systemu Prime.
badge Odznaka to znak osiągnięć, który uczniowie otrzymują, gdy osiągną określone cele w miarę postępów w nauce. 
catalog W aplikacji Captivate Prime katalog jest zbiorem elementów edukacyjnych.
user Użytkownik jest kluczowym modelem w systemie Captivate Prime. Użytkownicy są zazwyczaj uczniami z organizacji lub spoza niej, którzy korzystają z elementów edukacyjnych. Mogą oni jednak odgrywać inne role, takie jak Autor czy Przełożony. Identyfikator użytkownika, typ, adres e-mail to niektóre z atrybutów inline. 
resource Używany do modelowania każdego zasobu zawartości, który moduł stara się zawrzeć. Wszystkie zasoby znajdujące sięw loResourcesą równoważne pod względem celu nauczania, ale różnią się od siebie pod względem sposobu dostarczania lub lokalizacji treści.
userNotification Model ten zawiera informacje nt. powiadomień związane z uczniem.
userSkill UserSkill wskazuje, ile z jednego poziomu umiejętności osiągnął jeden użytkownik.
userBadge Ten element odnosi się do odznakidanegoużytkownika. Zawiera informacje, takie jak data uzyskania odznakiczy URLACS. 
skill Model umiejętności składa się z poziomów i punktów. Umiejętności mogą być nabywane przez uczniów po ukończeniu odpowiedniego kursu. 
skillLevel Poziom umiejętności składa się z co najmniej jednego kursu, który należy ukończyć w celu zdobycia poziomu i punktów. 
learningObject Element edukacyjny jest elementem, do którego użytkownicy mogą się zapisać i dzięki któremu mogą się uczyć. Obecnie w systemie Prime istnieją cztery rodzaje elementów edukacyjnych: Kurs, Certyfikacja, Program edukacyjnyiMateriały pomocnicze.
learningObjectInstance
Konkretny przykład elementu edukacyjnego.
learningObjectResource Jest to odpowiednik (modułu)module. Kurs składa się z co najmniejjednegomodułu. W systemie Prime moduł może być dostarczany na różne sposoby. Z tego względuloResourcezasadniczo obejmuje wszystkie te równoważne zasoby.
loResourceGrade
Jest to wynik użytkownika realizującego określony zasób w kontekście elementu edukacyjnego, do którego jest zapisany. Zawiera informacje takie jak czas spędzony przez (użytkownika)userpodczas korzystania z zasobu, procentowy postęp dokonany przez użytkownika, status Zaliczony/Niezaliczony oraz wynik uzyskany przez użytkownika w powiązanym teście.
calendar
Kalendarz to listazbliżających się kursów typu klasalub wirtualna klasa, do których użytkownik może się zapisać.
l1FeedbackInfo
Informacje zwrotne L1 zawierają odpowiedzi udzielone przez ucznia na pytania związane z elementami edukacyjnymi. Zazwyczaj pytania te są zadawane po ukończeniu przez użytkownika elementu edukacyjnego, jeśli został on skonfigurowany tak, aby zbierać takie informacje zwrotne od uczniów.
enrollment
Zawiera informacje dotyczące przypisania konkretnego użytkownika do konkretnego elementu edukacyjnego.

Proces opracowywania aplikacji

Warunki wstępne

Zaleca się, aby programista najpierw utworzył konto testowe w systemie Prime, aby uzyskać pełny dostęp do wszystkich ról w ramach tego konta. Aby napisać aplikację, programista musi również utworzyć kilku użytkowników i kilka kursów oraz doprowadzić konto do odpowiedniego stanu, tak aby tworzona aplikacja miała dostęp do przykładowych danych.

Tworzenie identyfikatora klienta i tajnego klucza

  1. Po zalogowaniu jako Administrator ds. integracji kliknij opcję Aplikacje w lewym panelu.

    application-development-menu
  2. Kliknij opcję Rejestruj w prawym górnym rogu strony, aby zarejestrować informacje aplikacji. Pojawi się strona Rejestracji. 

    Rejestracja nowej aplikacji
    Rejestracja nowej aplikacji

    Wypełnienie wszystkich pól na tej stronie jest obowiązkowe. 

    Nazwa aplikacji: Wprowadź nazwę aplikacji. Nie trzeba używać tej samej nazwy aplikacji, może to być dowolna nazwa.

    URL: Jeśli znasz dokładny adres URL, na którym znajduje się aplikacja, można zamieścić go w tym polu. Jeśli nie masz pewności, możesz podać adres URL swojej firmy. W tym miejscu należy podać poprawny adres URL.

    Domeny przekierowania: Wprowadź nazwę domeny aplikacji, do której ma nastąpić przekierowanie aplikacji Captivate Prime po uwierzytelnieniu OAuth. Możesz wymienić tutaj wiele adresów URL, które muszą być ważne, np.: http://google.com czy http://yahoo.com.

    Opis: Wprowadź krótki opis aplikacji. 

    Zakresy: Wybierz jedną z czterech dostępnych opcji, aby określić zakres aplikacji. Na podstawie dokonanego wyboru punkt końcowy API Captivate Prime jest dostępny dla aplikacji. Na przykład, jeśli wybrano opcję Dostęp do odczytu w roli Ucznia, wtedy wszystkie punkty końcowe API ucznia są dostępne tylko do odczytu.

    Dotyczy tylko tego konta? 
    Tak — jeśli wybierzesz opcję Tak, to aplikacja nie jest widoczna dla administratorów innych kont.
    Nie — jeśli wybierzesz opcję Nie, administratorzy innych kont również będą mogli uzyskać dostęp do tej aplikacji, ale muszą użyć identyfikatora aplikacji, aby uzyskać do niej dostęp. Identyfikator aplikacji jest generowany i wyświetlany w trybie edycji aplikacji Captivate Prime.

    Uwaga:

    Jeśli podczas rejestracji aplikacji jako zakres wybierzesz opcję Dostęp do odczytu i zapisu w roli Administratora oraz opcję Dostęp do odczytu w roli Administratora podczas tworzenia interfejsów API, nadal możesz mieć dostęp do zapisu dla aplikacji, ponieważ zakres rejestracji aplikacji zastępuje działania związane z tworzeniem.

  3. Kliknij opcję Rejestruj w prawym górnym rogu po wypełnieniu informacji na stronie rejestracji.

Rozwój i testowanie aplikacji

Interfejs API Captivate Prime może być wykorzystywany przez programistę do budowy dowolnego rodzaju aplikacji. Programiści muszą upewnić się, że ich konta składają się z ważnych użytkowników i kursów. Programiści mogą tworzyć kilka fikcyjnych użytkowników i kursów oraz symulować aktywność na koncie testowym, tak aby przetestować działanie aplikacji.

Wdrażanie aplikacji

Zalecamy, aby Administrator lub Administrator ds. integracji Captivate Prime konta produkcyjnego wziął na siebie odpowiedzialność za udostępnienie aplikacji użytkownikom w ramach organizacji. Po przetestowaniu aplikacji i uznaniu jej za gotową do produkcji należy poinformować administratora konta produkcyjnego. Idealnie byłoby, gdyby administratorzy wygenerowali nowy identyfikator i tajny klucz klienta dla aplikacji w koncie produkcyjnym oraz by wykonali niezbędne kroki w celu bezpiecznego umieszczenia ich w aplikacji. Rzeczywista procedura wdrażania aplikacji różni się w zależności od przedsiębiorstwa, a Administrator Captivate Prime organizacji musi skorzystać z pomocy działu IT/IS w organizacji, aby ukończyć ten proces.

Zatwierdzenie aplikacji zewnętrznej

Można dodać aplikacje zewnętrzne, klikając przycisk Zatwierdź w prawym górnym rogu strony Aplikacje. Podaj identyfikator aplikacji zewnętrznej i kliknij opcję Zapisz.

Dodawanie aplikacji zewnętrznej
Dodawanie aplikacji zewnętrznej

Ta zawartość jest licencjonowana na warunkach licencji Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Posty z serwisów Twitter™ i Facebook nie są objęte licencją Creative Commons.

Informacje prawne   |   Zasady prywatności online