Adobe Learning Manager Developer Manual

Überblick

Adobe Learning Manager stellt RESTful-APIs bereit, mit denen Entwickler Anwendungen oder Workflows effektiv integrieren und anpassen können. Das Entwicklerhandbuch enthält Anleitungen zur Verwendung dieser APIs und behandelt Themen wie Authentifizierung, Datenmodelle und Integration mit anderen Anwendungen. Darüber hinaus unterstützt dieses Handbuch API-Referenzdokumentation Entwickler beim Erstellen von externen Anwendungen oder Backend-Workflows, die mit verschiedenen Funktionen von Adobe Learning Manager interagieren, einschließlich Kurserstellung, Verfolgung des Teilnehmerfortschritts, Kenntniszuordnung, Zertifizierung, Gamification und Transkripten.

Dieses Handbuch behandelt Folgendes:

  • OAuth2.0-Authentifizierung
  • API-Objektmodelle
  • Einschließen, Felder und andere Parameter
  • Nutzungsszenarien in der Praxis
IMPORTANT
Dieses Entwicklerhandbuch behandelt ausschließlich die V2-APIs von Adobe Learning Manager. Alle in diesem Handbuch beschriebenen Beispiele, Anforderungsstrukturen und Authentifizierungs-Workflows sind spezifisch für die /primeapi/v2/-Endpunkte. Informationen zu älteren Versionen oder veralteten APIs finden Sie in der API-Referenzdokumentation.

API-Verwendungsszenarien

Entwickler können Lern-Manager-APIs verwenden, um den Lern-Manager zu verbessern oder mit anderen Unternehmensanwendungen zu integrieren. Sie können Web-, Desktop- oder mobile Apps mit jeder beliebigen Technologie erstellen. Entwickler können auf die Learning Manager-Daten zugreifen, Sie steuern jedoch, wo und wie die App verwendet wird.

Authentifizierung mit OAuth 2.0

Um sicher auf Adobe Learning Manager-APIs zugreifen zu können, müssen Sie sich mit dem OAuth 2.0-Mechanismus von Adobe Learning Manager authentifizieren. Dieser Vorgang umfasst das Registrieren der Anwendung, das Generieren eines Autorisierungscodes, das Austauschen gegen ein Aktualisierungstoken und schließlich das Verwenden des Aktualisierungstokens zum Abrufen eines Zugriffstokens.

Registrieren von Anwendungen

Integriere Adobe Learning Manager mit externen Programmen, um deine Vielseitigkeit zu verbessern. Die Schritte umfassen den Zugriff auf die Benutzeroberfläche des Integrationsadministrators, das Registrieren der Anwendung sowie das Abrufen der Client-ID und des geheimen Schlüssels. Generieren Sie OAuth 2.0-Authentifizierungstoken, einschließlich Autorisierungs-, Aktualisierungs- und Zugriffstoken, aus Adobe Learning Manager. Verwenden Sie den OAuth 2.0-Ablauf, um Ihre App sicher zu authentifizieren und zu autorisieren. Das Zugriffstoken hat eine Gültigkeitsdauer von sieben Tagen.

  1. Melden Sie sich bei Adobe Learning Manager als Integrationsadministrator an.

  2. Wählen Sie im linken Fensterbereich Anwendungen aus.

    Alternativtext

  3. Wählen Sie Register aus und fügen Sie die folgenden Informationen hinzu:

    • Anwendungsname: Geben Sie den Namen der Anwendung ein (maximal 50 Zeichen).

    • URL: Die offizielle URL Ihres Unternehmens oder Ihrer Anwendung. Wird zur Identifizierung und Referenz verwendet.

    • Domänen umleiten: Geben Sie die Domänen an (z. B. http://learningmanager.adobe.com), zu denen Adobe Learning Manager nach der Autorisierung umleiten kann. Sie können mehrere gültige URLs angeben.

    • Beschreibung: Kurze Beschreibung der Anwendung.

    • Geltungsbereiche: Wählen Sie eine der sechs verfügbaren Optionen aus, um den Geltungsbereich Ihrer Anwendung zu definieren. Basierend auf Ihrer hier genannten Auswahl sind die Learning Manager-API-Endpunkte für Ihre Anwendung zugänglich. Wenn Sie beispielsweise Lesezugriff für die Teilnehmerrolle gewählt haben, ist der Zugriff auf alle Lern-Manager-API-Endpunkte für Teilnehmer für Ihre Anwendung schreibgeschützt.

      • Lese-/Schreibzugriff auf Administratorrolle: Ermöglicht der Anwendung, auf Daten als Administrator zuzugreifen oder sie zu ändern.
      • Lese-/Schreibzugriff auf Teilnehmerrolle: Ermöglicht der Anwendung den Zugriff auf oder die Änderung von Daten für Teilnehmer.
      • xAPI-Lese-/Schreibzugriff: Ermöglicht es der Anwendung, auf Experience API(xAPI)-Anweisungen zuzugreifen und diese zu senden.
    • Nur für dieses Konto?

      • Ja - Wenn Sie "Ja" auswählen, ist die Anwendung für andere Kontoadministratoren nicht sichtbar.
      • Nein - Wenn Sie "Nein" auswählen, können auch andere Kontoadministratoren auf diese Anwendung zugreifen, sie müssen jedoch die Anwendungs-ID verwenden, um auf diese Anwendung zuzugreifen. Die Anwendungs-ID wird generiert und im Bearbeitungsmodus der Learning Manager-Anwendung angezeigt.

      Alternativtext

  4. Wählen Sie Speichern aus, um die Anwendung zu registrieren.

    • Nachdem Sie die Anwendung registriert haben, steht sie in der Liste der im Konto erstellten Anwendungen zur Verfügung. Wählen Sie die Anwendung aus. Zusätzlich zu den zuvor eingegebenen Feldern sehen Sie Folgendes:
    • Anwendungs-ID: Dies ist die Client-ID. Diese ID teilt Adobe Learning Manager die Anwendung mit, die den Zugriff anfordert. Sie ist in API-Anfragen zur Identifizierung der App enthalten.
    • Anwendungsgeheimnis: Dieses Kennwort wird verwendet, um Ihre App zu authentifizieren und ihre Identität während der Schritte zum Tokenaustausch zu überprüfen (z. B. wenn ein Aktualisierungstoken oder ein Zugriffstoken angefordert wird).

Abrufen eines Zugriffstokens

Berechtigungscode abrufen

Nachdem Sie die Client-ID und den geheimen Clientschlüssel abgerufen haben, können Sie mit ihnen ein Zugriffstoken anfordern, mit dem API-Aufrufe authentifiziert werden.

Um den Autorisierungscodefluss zu starten, fügen Sie die folgende URL in einem Browser hinzu:

GET https://learningmanager.adobe.com/oauth/o/authorize?client_id=<Enter your clientId>&redirect_uri=<Enter a url to redirect to>&state=<Any String data>&scope=<one or more comma separated scopes>&response_type=CODE

Sobald der Benutzer die Anwendung autorisiert hat, leitet Adobe Learning Manager mit einem angehängten Abfrageparameter zu dem angegebenen redirect_uri um:

https://yourapp.com/callback?code=abc123xyz

Ein Parametercode wird zusammen mit dem Umleitungs-URI angehängt.

Aktualisierungstoken aus dem Code abrufen

Nachdem Sie den Code abgerufen haben, verwenden Sie ein beliebiges API-Tool und fügen Sie die folgende POST an:

https://learningmanager.adobe.com/oauth/token

Anforderungstext (x-www-form-urlencoded):

grant_type=authorization_code
&code=abc123xyz
&client_id=<your_client_id>
&client_secret=<your_client_secret>
&redirect_uri=<your_redirect_url>

Antwort

{

  "access_token": "eyJhbGciOiJIUzI1...",
  "refresh_token": "xTjlfz0jCk6gF1...",
  "expires_in": 604800,
  "token_type": "Bearer"

}

Verwenden Sie das access_token im Autorisierungs-Header, um authentifizierte API-Anforderungen zu stellen.

Verwenden des Zugriffstokens in einem API-Aufruf

Überprüfen Sie das Zugriffstoken anhand der folgenden Kriterien:

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

Ein Zugriffstoken ist sieben Tage lang gültig. Nach sieben Tagen müssen Sie mithilfe des Aktualisierungstokens ein neues Zugriffstoken generieren. Wenn Sie ein neues Zugriffstoken aus dem Aktualisierungstoken generieren, während ein vorhandenes Zugriffstoken noch gültig ist, wird das vorhandene Token zurückgegeben.

Zugriffstoken für Tests und Entwicklung erhalten

Beim Arbeiten mit Adobe Learning Manager APIs benötigen Entwickler ein gültiges OAuth 2.0-Zugriffstoken, um API-Anfragen zu authentifizieren. Das Generieren dieses Tokens über den standardmäßigen OAuth-Flow kann komplex und zeitaufwendig sein, insbesondere für schnelles Testen, Lernen oder Entwicklung. Adobe Learning Manager bietet ein Tool zur Tokengenerierung, um diesen Prozess zu vereinfachen.

Dieses Tool ist ideal für:

  • Proof of Concept (POC) Builds

  • Frühphase der Entwicklung

  • Fehlerbehebung bei API-Integrationsproblemen

Diese Tokens sind ausschließlich für den persönlichen Gebrauch während der Entwicklungs- und Debugphase vorgesehen. Beachte, dass Testtoken Zugriff auf deine Adobe Learning Manager-Daten gewähren, daher ist es wichtig, sie sicher zu verarbeiten. Geben Sie Ihre Testtoken niemals für andere frei, verwenden Sie sie in Produktionsanwendungen oder fügen Sie sie nicht in öffentlichen Code-Repositorys ein. Behandeln Sie sie wie Kennwörter, um die Sicherheit Ihres Kontos und Ihrer Daten zu gewährleisten.

  1. Melden Sie sich bei Adobe Learning Manager als Integrationsadministrator an.

  2. Wählen Sie Entwicklerressourcen und anschließend Zugriffstoken für Tests und Entwicklung aus.

  3. Geben Sie die Client-ID ein, die Sie nach dem Erstellen einer Anwendung erhalten haben, um den OAuth-Code abzurufen. Wählen Sie dann Senden.

  4. Fügen Sie die Client-ID und den Client-Schlüssel hinzu, um das Aktualisierungstoken abzurufen. Wählen Sie dann Senden. Die OAuth wird aus dem vorherigen Schritt vorausgefüllt.

  5. Fügen Sie die Client-ID und das geheime Clientschlüssel hinzu, um das Zugriffstoken zu erhalten. Wählen Sie dann Senden.

  6. Fügen Sie das Zugriffstoken hinzu und wählen Sie Senden , um die Zugriffstokendetails abzurufen.

Wenn Sie Senden auswählen, wird das Zugriffstoken überprüft, und Sie erhalten das folgende JSON-Objekt:

{
  "access_token": "access token",
  "refresh_token": "refresh token",
  "user_role": "admin",
  "account_id": "1234",
  "user_id": "123456",
  "expires_in": 604800
}

Wie zuvor läuft das Zugriffstoken für Tests in sieben Tagen ab.

Verwenden eines API-Tools zum Testen der Endpunkte

Sie können zwar ein beliebiges API-Testtool eines Drittanbieters verwenden, wir verwenden jedoch Postman zum Testen der Endpunkte. In den Beispielen in diesem Dokument wird Postman zum Testen der Endpunkte verwendet.

  1. Öffnen Sie Postman und erstellen Sie eine neue Anforderung.

  2. Wählen Sie die Registerkarte Autorisierung aus.

  3. Setzen Sie den Authentifizierungstyp auf "Inhabertoken".

  4. Fügen Sie das im vorherigen Abschnitt erhaltene Zugriffstoken in das Feld Token ein.

  5. Fügen Sie auf der Registerkarte "Kopfzeilen" Folgendes hinzu:

    • Schlüssel: Akzeptieren
    • Wert: application/json
  6. Geben Sie Ihren API-Endpunkt in das URL-Feld ein. Beispiel: https://learningmanager.adobe.com/learningManager/api/v2/users
    Weitere Informationen finden Sie in Adobe Learning Manager API Reference.

  7. Wählen Sie "Senden", um die API-Anforderung zu senden.

API-Typen

Admin-APIs

Mit den Admin-APIs von Adobe Learning Manager können Administratoren Lernvorgänge in großem Umfang automatisieren und verwalten.

Mit den Admin-APIs können Entwickler:

NOTE
Die Liste ist nicht vollständig.
  • Benutzer und Gruppen verwalten: Erstellen, aktualisieren und löschen Sie Benutzer oder weisen Sie sie Gruppen zu.
  • Teilnehmer registrieren: Automatisieren Sie die Registrierung für Kurse, Lernpfade oder Zertifizierungen.
  • Fortschritt der Teilnehmer verfolgen: Abrufen des Kursfortschritts/Modulfortschritts, der Quizpunktzahlen und des Abschlussstatus
  • Berichte generieren: Greifen Sie auf Daten zu Teilnehmeraktivität, Interaktion und Leistung zu.
  • Inhalt verwalten: Erstellen und Organisieren von Kursen und Lernobjekten.

Weitere Informationen finden Sie in Adobe Learning Manager API Reference.

Teilnehmer-APIs

Die Teilnehmer-APIs sind für authentifizierte Benutzer (Teilnehmer) konzipiert und ermöglichen Ihnen den Zugriff auf teilnehmerspezifische Informationen. Diese APIs ermöglichen Aufgaben wie:

  • Zugriff auf die Kurse und den Fortschritt eines Teilnehmers
  • Abzeichen oder erworbene Zertifizierungen werden abgerufen
  • Aktualisieren der Profilinformationen von Teilnehmern
  • Anzeigen von Kenntnissen, die mit abgeschlossenen Kursen verknüpft sind

Wichtigste Punkte:

  • Diese APIs erfordern ein authentifiziertes Benutzer-Token, um Datensicherheit und Datenschutz zu gewährleisten.
  • Die APIs sind für Szenarien gedacht, in denen Benutzer vollständig registriert und angemeldet sind, und nicht für anonyme oder freigegebene Benutzer.

Weitere Informationen finden Sie in Adobe Learning Manager API Reference.

API-Design und gemeinsame Parameter

Die APIs bieten Entwicklern Zugriff auf wichtige Lern-Manager-Ressourcen wie Benutzer, Kurse, Kenntnisse, Zertifizierungen und Lernprogramme. Sie folgt den REST-Prinzipien und verwendet HTTP-Methoden (GET, POST, PUT, DELETE) für Datenoperationen.

Methoden
GET, PUT, POST, DELETE
Format
application/vnd.api+json, application/json. Weitere Informationen zu gängigen MIME-Typen.
Basis-URL
https://learningmanager.adobe.com/primeapi/v2/

Allgemeine Parameter

Parameter
Zweck
mitrechnen
Ruft verwandte Ressourcen in einem Anruf ab.
Felder
Bestimmte Attribute auswählen, um die Nutzlast zu reduzieren.
filtern
Eingeschränkte Ergebnisse (z. B. nach ID, Name)
Sorte
Ergebnisse bestellen.
page[limit], page[offset]
Unterstützung für Seitenumbrüche.

Im Folgenden finden Sie eine kurze Erläuterung der einzelnen Punkte:

mitrechnen

Adobe Learning Manager APIs können verwendet werden, um nützliche Informationen beim Erstellen einer benutzerdefinierten Anwendung oder eines Headless LMS abzurufen. Die API-Endpunkte können außerdem mit zusätzlichen "include"-Parametern versehen werden, um die zusätzlichen Informationen abzurufen, die in Beziehung zu den standardmäßig empfangenen Daten stehen. Diese Beziehungen sind Datenmodellbeziehungen, z. B. während eines Anrufs zum Abrufen von Benutzerdetails, erhalten Sie die Benutzerinformationen und die Beziehung zwischen Manager-ID und Adobe Learning Manager-Konto-ID. Mit dem Include -Parameter können Sie zusätzliche Details zusammen mit den Benutzerdetails, wie z. B. deren Manager- und Adobe Learning Manager-Kontodetails, detailliert extrahieren.
Kurz gesagt, der Parameter include wird in API-Aufrufen verwendet, um verwandte (verknüpfte) Ressourcen zusammen mit der primären Ressource in einer einzigen Antwort abzurufen. Dies ist nützlich, wenn Sie auf verschachtelte oder abhängige Daten zugreifen möchten, z. B. auf Module eines Kurses oder die Kenntnisse, die einem Teilnehmer zugeordnet sind, ohne separate API-Aufrufe zu tätigen.

Wichtigste Vorteile:

  • Reduziert mehrere API-Aufrufe: Es ist nicht mehr erforderlich, jede zugehörige Ressource manuell anzufordern.
  • Verbessert die Effizienz: Schnellere Entwicklung, geringere Serverlast und schnelleres Rendering von Daten.
  • Gewährleistet Datenkonsistenz: Ruft alle verknüpften Daten in einem konsistenten Snapshot ab.

Verwenden des Include-Parameters

Hängen Sie den Include-Parameter an Ihre API-URL an und geben Sie die einzuschließenden verwandten Entitäten an.

Häufige Include-Pfade

Wert einschließen
Beschreibung
Instanzen
Gibt alle Instanzen des Lernobjekts zurück
Registrierung
Gibt Registrierungsdetails für den Benutzer zurück
instances.loResources.resources
Ruft Module und Ressourcen innerhalb einer Instanz ab
additionalResources
Gibt zugeordnete zusätzliche Ressourcen zurück.
skills.skillLevel.badge
Ruft Qualifikationsstufen und die zugehörigen Abzeichen ab
prerequisiteLOs
Enthält erforderliche Lernobjekte
SubLOs
Ruft Sub-Lernobjekte ab (in LPs oder Zertifizierungen verwendet)
subLOs.enrollment
Registrierung für Sub-Lernobjekte
instances.badge
Abzeichen für den Abschluss einer Kursinstanz
subLOs.subLOs.instances.loResources.resources
Tief verschachtelte Ressourcen in einer Sub-LO-Instanz

Beispiel 1

Rufen Sie die Details eines Benutzers ab, indem Sie den Parameter "userID" im Endpunkt verwenden.

https://learningmanager.adobe.com/primeapi/v2/users/<userID>
GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>

In der Antwort können Sie sehen, dass das Datenobjekt eine Beziehung zum Konto und zum Manager des Benutzers hat.

"relationships": {
            "account": {
                "data": {
                    "id": "1010",
                    "type": "account"
                }
            },
            "manager": {
                "data": {
                    "id": "3400476",
                    "type": "user"
                }
            }
        }

Mit dem Include-Parameter in der Anforderung können Sie wie folgt detaillierte Informationen über den Manager abrufen:

GET https://learningmanager.adobe.com/primeapi/v2/users/<userid>?include=manager

Beispiel 2

Um die Kursdetails abzurufen, verwenden Sie den include-Parameter im Endpunktanruf. Der folgende Endpunkt ruft die Kursinformationen zusammen mit ihren Beziehungen ab.

GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>

Die Beziehungen werden in der Antwort wie folgt angezeigt:

  • Instanzen
  • Kenntnisse
  • Autoren
"relationships": {
            "authors": {
                "data": [
                    {
                        "id": "3400468",
                        "type": "user"
                    }
                ]
            },
            "instances": {
                "data": [
                    {
                        "id": "course:16444_31598",
                        "type": "learningObjectInstance"
                    }
                ]
            },
            "skills": {
                "data": [
                    {
                        "id": "course:16444_1796",
                        "type": "learningObjectSkill"
                    },
                    {
                        "id": "course:16444_3103",
                        "type": "learningObjectSkill"
                    }
                ]
            }
        }

Andere Beziehungen können Folgendes umfassen (in der obigen Antwort nicht vorhanden):

  • prerequisiteLOs
  • additionalLOs
  • additionalResources

Um detaillierte Daten zu den Instanzen und Kenntnissen zu erhalten, fügen Sie "Instanzen, Kenntnisse" in den Include-Parameter ein.

GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances,skills

Wenn Sie jetzt beispielsweise mehr Daten abrufen möchten, die mit der Kursinstanz verknüpft sind, z. B. loResources (Modulinformationen des Kurses), wenden Sie loResources als verschachteltes Include an.

GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances.loResources

Darüber hinaus können Sie Kenntnisse und Instanzen mit einem verschachtelten Include kombinieren.

GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances,instances.loResources,skills

Andere Include-Filter

Lernprogramme
Kurs
subLOs.prerequisiteLOs.enrollment

subLOs.subLOs.prerequisiteLOs.enrollment

subLOs.enrollment.loResourceGrades

subLOs.subLOs.enrollment.loResourceGrades

subLOs.subLOs.instances.loResources.resources.room

subLOs.instances.loResources.resources.room

subLOs.supplementaryResources

subLOs.enrollment

SubLOs.enrollment.loInstance.loResources.resources

subLOs.supplementaryLOs.instances.loResources.resources
instances.enrollment.loResourceGrades

enrollment.loInstance.loResources.resources
prerequisiteLOs

authors

instances.loResources.resources

additionalLOs.instances.loResources.resources

additionalResources

instances.badge

skills.skillLevel.badge

skills.skillLevel.skill

instances.loResources.resources.room

prerequisiteLOs.enrollment

enrollment.loResourceGrades

Felder

Die Attribute und Beziehungen eines API-Objekts werden als Felder bezeichnet. Verwenden Sie Felder als Parameter in API-Aufrufen, um bestimmte Attribute aus dem Modell abzurufen. Ohne den Fields-Parameter ruft der API-Aufruf alle verfügbaren Attribute ab.

Im folgenden API-Aufruf ruft fields[skill]=name beispielsweise nur das name-Attribut des Kenntnismodells ab.

GET https://learningmanager.adobe.com/primeapi/v2/users/3400490/userSkills/3400490_1796_1?include=skillLevel.skill&fields[skill]=name

Seitenumbruch

API-Paginierung ist eine Technik, die in APIs verwendet wird, um große Datensätze in kleinere, verwaltbare Blöcke, so genannte Seiten, aufzuteilen, anstatt die gesamten Daten in einer einzigen Antwort zurückzugeben.

Paginierung reduziert die Last von Client und Server, begrenzt die Antwortgröße, um Engpässe auf dem Server zu vermeiden, oder ist nützlich, um Daten seitenweise in Tabellen oder Listen anzuzeigen.

Funktionsweise der Paginierung in Adobe Learning Manager-APIs

Adobe Learning Manager APIs unterstützen Paginierung über Parameter wie:

  • page[limit]: Anzahl der Datensätze pro Seite.
  • page[offset]: Anzahl der zu überspringenden Datensätze.
  • page[cursor]: Zeiger auf den nächsten Ergebnissatz. Anstelle der Verwendung von versatzbasiertem Seitenumbruch (bei dem eine Anzahl von Datensätzen übersprungen wird), verwendet der Cursor-basierte Seitenumbruch eine eindeutige Marke, die von der API zurückgegeben wird, um die nächste Ergebnisseite abzurufen.

So verwenden Sie die Paginierung in APIs:

Seite[Limit]

Während https://learningmanager.adobe.com/primeapi/v2/users alle Benutzer und zugehörige Informationen in einem einzigen Aufruf zurückgibt, beschränkt die Verwendung von Seite[limit] die Anzahl der Ergebnisse auf den angegebenen Wert.

Verwenden Sie die folgende API, um nur fünf Benutzerdatensätze in einem einzigen Aufruf zurückzugeben:

GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5

Seite[Offset]

Verwenden Sie diesen API-Aufruf, um drei Benutzerdatensätze zurückzugeben, die ersten fünf Benutzer zu überspringen und mit dem sechsten zu beginnen.

GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=3&page[offset]=5

Seite[Cursor]

  1. Beginnen Sie mit der Anforderung der ersten Seite mit einem Limit von 5.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5
    
  2. Kopieren Sie den Cursorwert von links.next und verwenden Sie ihn in der nächsten Anforderung:

    code language-none
    "links": {
        "self": "https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5",
        "next": "https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5&page[cursor]=3400482"
     }
    
  3. Senden Sie die folgende Anforderung:

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5&page[cursor]=3400482
    

Dies gibt den nächsten Satz von 10 Datensätzen zurück, beginnend nach dem letzten Element der vorherigen Seite.

filtern

Mit dem Filterparameter können Sie API-Ergebnisse basierend auf einem oder mehreren Feldwerten eingrenzen.

Adobe Learning Manager APIs bieten verschiedene Varianten des Filterparameters, um die Antworten einzugrenzen.

Weitere Informationen finden Sie in Adobe Learning Manager API Reference.

Dieses Beispiel zeigt, wie die Arbeitshilfen, für die sich ein Teilnehmer registriert hat, mithilfe des Endpunkts mit dem Filterparameter gefiltert werden:

GET https://learningmanager.adobe.com/primeapi/v2/users/3400480/enrollments?filter.loTypes=jobAid

Sorte

Der sort-Parameter wird verwendet, um API-Ergebnisse basierend auf einem oder mehreren Feldern in aufsteigender oder absteigender Reihenfolge zu sortieren.

Die Adobe Learning Manager bietet verschiedene Sortieroptionen zum Sortieren der API-Antwort. Weitere Informationen finden Sie in Adobe Learning Manager API Reference.

Wenn Sie das vorherige Beispiel erweitern, sortieren Sie jetzt die Registrierung des Benutzers für Lernprogramme nach dem Datum, an dem der Benutzer in aufsteigender Reihenfolge registriert wurde.

GET https://learningmanager.adobe.com/primeapi/v2/users/3400480/enrollments?filter.lotypes=learningProgram&sort=dateEnrolled

Übersicht über API-Modelle

Mit den Adobe Learning Manager APIs können Entwickler auf Lern-Manager-Objekte als RESTful-Ressourcen zugreifen. Jeder API-Endpunkt stellt eine Ressource dar, typischerweise eine Instanz eines Objekts, etwa ein Abzeichen, oder eine Gruppe solcher Objekte. Die Entwickler verwenden dann HTTP-Verben wie PUT, GET, POST und DELETE, um die CRUD-Vorgänge für diese Objekte (Auflistungen) auszuführen.

Learning Manager-Objekt
Beschreibung
account
Kapselt die Details eines Learning Manager-Kunden.
badge
Ein Abzeichen ist ein Leistungsnachweis, den Teilnehmer erhalten, wenn sie bestimmte Meilensteine erreichen, während sie innerhalb eines Kurses fortschreiten.
catalog
ist eine Sammlung von Lernobjekten.
Benutzer
Der Benutzer (user) ist das wichtigste Modell in Learning Manager. Benutzer sind in der Regel die internen oder externen Teilnehmer eines Unternehmens, die Lernobjekte nutzen. Sie können jedoch außer der Teilnehmerrolle auch andere Rollen wie z. B. Autor oder Manager haben. „User id“, „type“ und „email“ gehören zu den Inline-Attributen.
resource
Dies stellt jede Inhaltsressource innerhalb eines Moduls dar. Alle in einer "loResource" zusammengefassten Ressourcen sind hinsichtlich des Lernziels äquivalent, unterscheiden sich jedoch in Bezug auf den Bereitstellungstyp oder das Inhaltsgebietsschema.
userNotification
Dieses Modell enthält Benachrichtigungsinformationen für einen Teilnehmer.
userSkill
UserSkill gibt an, wie viel von einer einzelnen Kenntnisstufe ein einzelner Benutzer erreicht.
userBadge
UserBadge verbindet ein einzelnes Abzeichen mit einem einzelnen Benutzer. Es enthält Details wie den Zeitpunkt der Erstellung, assertionUrl usw.
skill
Das Modell für Kenntnisse (skill) setzt sich aus Stufen und Punktzahlen zusammen. Die Teilnehmer erwerben Kenntnisse durch Abschließen der relevanten Kurse.
skillLevel
Eine Kenntnisstufe umfasst einen oder mehrere Kurse, die genutzt werden sollen, um eine Stufe zusammen mit den zugehörigen Credits zu erwerben.
learningObject
Ein Lernobjekt ist eine Abstraktion für verschiedene Arten von Objekten, bei denen sich Benutzer anmelden und von denen sie lernen können. Derzeit verfügt der Learning Manager über die vier Typen von Lernobjekten, Kurs, Zertifizierung, Lernprogramm und Arbeitshilfe.
learningObjectInstance
Eine bestimmte Instanz eines Lernobjekts.
learningObjectResource
Dies entspricht dem Konzept des Moduls . Ein Kurs besteht aus einem oder mehreren Modulen. In Learning Manager kann ein Modul auf verschiedene gleichwertige Arten bereitgestellt werden. Daher kapselt loResource im Wesentlichen alle diese äquivalenten Ressourcen.
loResourceGrade
Dies umfasst das Ergebnis des Benutzers, der eine bestimmte Ressource im Kontext eines Lernobjekts konsumiert, bei dem er angemeldet ist. Es enthält Informationen wie die Dauer, die der Benutzer in der Ressource verbracht hat, den prozentualen Fortschritt, der vom Benutzer gemacht wurde, den Status "Bestanden/Nicht bestanden" und die Punktzahl, die der Benutzer in einem zugeordneten Quiz erzielt hat.
Kalender
Ein Kalenderobjekt ist eine Liste der bevorstehenden Kurse im Klassenzimmer oder virtuellen Klassenzimmer, bei denen sich der Benutzer anmelden kann.
l1FeedbackInfo
L1 Feedback enthält die Antworten, die von einem Teilnehmer für die Feedbackfragen gegeben werden, die Lernobjekten zugeordnet sind. In der Regel wird dies erfasst, nachdem der Benutzer ein Lernobjekt abgeschlossen hat, wenn konfiguriert, um ein solches Feedback von Teilnehmern zu erfassen.
Registrierung
Dieses Abstrakt umfasst die Einzelheiten der Transaktion, die die Zuordnung eines bestimmten Benutzers zu einer bestimmten Lernobjektinstanz darstellt.

Teilnehmer-APIs und Endpunkte

Hier sind die wichtigsten API-Endpunkte für die Arbeit mit Teilnehmerdaten. Diese APIs unterstützen Entwickler bei der Interaktion mit Teilnehmerinformationen, beim Verfolgen des Fortschritts, beim Verwalten von Registrierungen und beim Abrufen von Kursinhalten.

Abrufen der Details aller Teilnehmer

Abrufen von Teilnehmerdetails (Name, E-Mail-Adresse, UUID, Benutzerprofil usw.) Verwenden Sie die API, um alle Teilnehmer im Konto aufzulisten.

GET https://learningmanager.adobe.com/primeapi/v2/users

Abrufen der Details eines bestimmten Teilnehmers

Wenn Sie das Profil eines Teilnehmers nach ID anzeigen möchten, verwenden Sie die folgende API für einen Aufruf.

GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>

Liste aller Kurse, Lernprogramme, Arbeitshilfen und Zertifizierungen

Rufen Sie die Details aller Lernobjekte ab, bei denen sich der Teilnehmer registriert hat, die Schulung abgeschlossen hat oder die vom Administrator aktiviert wurden.

GET https://learningmanager.adobe.com/primeapi/v2/learningObjects

Abrufen von Details zu einem bestimmten Lernobjekt

Abrufen detaillierter Informationen zu einem Lernobjekt Es enthält das Erstellungsdatum, das Veröffentlichungsdatum, das Aktualisierungsdatum und andere Informationen.

GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<LearningObjectID>

Liste der Kenntnisse abrufen, die mit Kursen verknüpft sind

Zeigen Sie Qualifikationen an, die allen Teilnehmern im Konto zugewiesen sind.

GET https://learningmanager.adobe.com/primeapi/v2/skills

Abrufen von Kenntnisstufen- und Abzeicheninformationen

Überprüfen Sie den Fortschritt der Teilnehmer bei kompetenzbasierten Lernreisen.

GET https://learningmanager.adobe.com/primeapi/v2/skills/<skillID>?include=levels

Liste aller Abzeichen, die für ein Konto erstellt wurden

Rufen Sie den folgenden Endpunkt auf, um eine Liste aller Abzeichen abzurufen, die für ein Konto in einer Organisation erstellt wurden.

GET https://learningmanager.adobe.com/primeapi/v2/badges

Abrufen von Informationen zu einem Abzeichen

Rufen Sie detaillierte Informationen zu einem Abzeichen ab, einschließlich des Namens des Abzeichens, der URL des Abzeichenbilds und des Status des Abzeichens.

GET https://learningmanager.adobe.com/primeapi/v2/badges/<skillID>

Dies führt zu folgender Antwort:

{
    "links": {
        "self": "https://learningmanager.adobe.com/primeapi/v2/badges/499"
    },
    "data": {
        "id": "499",
        "type": "badge",
        "attributes": {
            "imageUrl": "https://cpcontentsdev.adobe.com/public/account/1010/accountassets/1010/badges/test_57a5ab00555a475a8fc6671562184dc9.png",
            "name": "penguins",
            "state": "Retired"
        }
    }
}

Weitere Beispiele für die API-Nutzung

Benutzer erstellen

  1. Verwenden Sie den Endpunkt:

    code language-none
    POST https://learningmanager.adobe.com/primeapi/v2/users
    

    Verarbeitet die Attribute aus dem API-Hauptteil oder der JSON-Payload, um einen Benutzer zu generieren, und stellt anschließend einem Benutzer die jeweilige ausgefüllte Benutzer-ID zur Verfügung.

  2. Verwenden Sie die folgende Nutzlast als Textkörper:

    code language-none
    {
       "data": {
         "type": "user",
         "attributes": {
          "email": "bob@example.com",
           "name": "Bob",
           "userType": "INTERNAL"
         }
       }
     }
    

Es gibt drei obligatorische Attribute:

  • E-Mail: E-Mail-ID des Benutzers. Dieser Wert sollte für jeden Benutzer eindeutig sein.
  • name: Der Name des Benutzers.
  • userType: Derzeit können nur interne Benutzer mit diesem Endpunkt hinzugefügt werden. Der userType muss "INTERNAL" sein.

Sie erhalten das folgende JSON-Objekt:

{
  "links": {
      "self": "https://learningmanager.adobe.com/primeapi/v2/users"
  },
  "data": {
      "id": "13386404",
      "type": "user",
      "attributes": {
          "avatarUrl": "https://cpcontents.adobe.com/public/images/default_user_avatar.svg",
          "email": "bob@example.com",
          "name": "Bob",
          "pointsEarned": 0,
          "pointsRedeemed": 0,
          "preferredResolution": "AUTO",
          "profile": "Employee",
          "roles": [
              "Learner"
          ],
          "state": "ACTIVE",
          "userType": "Internal",
          "userUniqueId": "bob@example.com"
      },
      "relationships": {
          "account": {
              "data": {
                  "id": "1010",
                  "type": "account"
              }
          },
          "manager": {
              "data": {
                  "id": "3400468",
                  "type": "user"
              }
          }
      }
  }
}

Benutzer löschen

  1. Rufen Sie die Benutzer-ID des Benutzers ab, den Sie löschen möchten.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>
    
  2. Rufen Sie dann über DELETE Folgendes auf:

    code language-none
    DELETE https://learningmanager.adobe.com/primeapi/v2/users/<userID>
    

Eine 204-Antwort wird angezeigt. Ein 204-Antwortcode zeigt einen Erfolg an, ohne dass Inhalte zurückgegeben werden müssen. Der Server hat die Anforderung erfolgreich verarbeitet, verfügt aber über keine Daten, die an den Client übermittelt werden müssen.

Der Status des Benutzers ist jetzt GELÖSCHT, nachdem Sie die Benutzerdetails abgerufen haben.

Benutzerdetails aktualisieren

  1. Aktualisieren Sie die Benutzerdetails des Benutzers, der die v2-API verwendet. Teilnehmer können Bio, uiLocale, contentLocale, timezone ändern. Bei großen Konten handelt es sich um asynchrone Aufrufe. Es gibt viele andere Benutzerattribute, die mit diesem API-Endpunkt aktualisiert werden können. Verwenden Sie den Endpunkt /users/{id}, wobei id die Benutzer-ID des Benutzers ist, dessen Details aktualisiert werden sollen.
PATCH https://learningmanager.adobe.com/primeapi/v2/users/<userID>

Fügen Sie in der Payload der Anforderung zum Aktualisieren des Benutzers mit der ID "<userID>" aus dem vorherigen Abschnitt Folgendes hinzu:

Ändert ein beliebiges Feld in der Nutzlast.

{
    "data": {
        "id": "3400468",
        "type": "user",
        "attributes": {
            "avatarUrl": "https://cpcontents.adobe.com/public/images/default_user_avatar.svg",
            "binUserId": "3e6d571f-3956-44db-be69-8e458bde649f",
            "bio": "Manager",
            "contentLocale": "de-DE",
            "email": "user@example.com",
            "enrollOnClick": true,
            "fields": {
                "Web": "Web",
                "newfororder": "newvalue",
                "location": "New",
                "test1": "b"
            },
            "gamificationEnabled": true,
            "lastLoginDate": "2025-04-30T09:30:51.000Z",
            "metadata": {
                "level": "5",
                "expertise": "java",
                "sport": "tennis"
            },
            "name": "John Adams",
            "pointsEarned": 8600,
            "pointsRedeemed": 0,
            "preferredResolution": "AUTO",
            "profile": "Employee",
            "roles": [
                "Learner",
                "Admin",
                "Author",
                "Instructor",
                "Integration Admin",
                "Manager"
            ],
            "state": "ACTIVE",
            "timeZoneCode": "213",
            "uiLocale": "en-US",
            "userType": "Internal",
            "userUniqueId": "user@example.com"
        },
        "relationships": {
            "account": {
                "data": {
                    "id": "1010",
                    "type": "account"
                }
            }
        }
    }
}

Nachdem Sie den Anruf getätigt haben, werden die Benutzerdetails aktualisiert.

Erstellen eines externen Profils

Ein externes Profil bezieht sich auf ein Benutzerprofil, das für externe Teilnehmer erstellt wird, in der Regel Personen, die nicht Teil der internen Benutzerbasis des Unternehmens sind. Zu diesen Teilnehmern können Kunden, Partner, Verkäufer, Franchisenehmer oder temporäre Vertragspartner gehören, die Zugang zu Schulungs- oder Zertifizierungsprogrammen benötigen, die von der Organisation angeboten werden.

  1. Verwenden Sie den folgenden Endpunkt:

    code language-none
    POST https://learningmanager.adobe.com/primeapi/v2/externalProfiles
    
  2. Verwenden Sie die folgende Nutzlast als Textkörper:

{
    "data": {
      "type": "externalProfile",
      "attributes": {
        "name": "Jonas Albertson",
        "expiry": "2027-12-31T18:29:59.000Z",
        "managerEmail": "jonas@acme.com",
        "seatLimit": 10
      }
    }
}

Die Nutzlast hat die folgenden Attribute:

  • name: Der Name des externen Benutzers.
  • expiry: Das Ablaufdatum (im ISO-8601-Format) der Registrierung des Benutzers in Adobe Learning Manager.
  • managerEmail: Die E-Mail-Adresse des Managers des Benutzers in der Partnerorganisation.
  • seatLimit: Die Anzahl der zulässigen Lizenzen für die Partnerorganisation.

Nach dem Anruf erhalten Sie die folgende Antwort:

{
    "links": {
        "self": "https://learningmanager.adobe.com/primeapi/v2/externalProfiles"
    },
    "data": {
        "id": "18805",
        "type": "externalProfile",
        "attributes": {
            "accessKey": "8gte2ne7f4r14",
            "enabled": true,
            "expiry": "2027-12-31T18:29:59.000Z",
            "managerEmail": "jonas@acme.com",
            "name": "Jonas Albertson",
            "seatLimit": 10,
            "url": "https://learningmanager.adobe.com/eplogin?groupid=18805&accesskey=8gte2ne7f4r14"
        }
    }
}

Dies bedeutet, dass der externe Benutzer erfolgreich zu Adobe Learning Manager hinzugefügt wurde. Senden Sie die URL in der Antwort an den Benutzer, mit der er sich auf der Plattform registrieren kann.

Benutzerbericht mit Benutzer-ID- und Manager-Details extrahieren

Ein Benutzerbericht kann direkt von der Administrator-Benutzeroberfläche heruntergeladen werden (Admin > Benutzer > Intern). Der Bericht gibt jedoch nicht die Benutzer-ID und die Details des zugehörigen Managers zurück.

Verwenden Sie die Jobs-API, um den Bericht herunterzuladen. Die Jobs-API unterstützt Sie beim Generieren von Berichten, Massenvorgängen (Registrierungen oder Abzeichenzuweisungen), abgeschlossenen Zertifizierungen oder beim Generieren von Abzeichen.

So können Sie den Bericht herunterladen:

  1. Fügen Sie der Jobs-API die folgende Payload hinzu.

    code language-none
    {
        "data": {
            "type": "job",
            "attributes": {
                "description": "description of your choice",
                "jobType": "generateUsers",
                "payload":{
                    "expandMetadata":true
                }
            }
       }
    }
    
  2. Verwenden Sie den folgenden Endpunkt.

    code language-none
    POST https://learningmanager.adobe.com/primeapi/v2/jobs
    
  3. Kopieren Sie die Job-ID aus der Antwort.

    code language-none
    {
        "links": {
            "self": "https://learningmanager.adobe.com/primeapi/v2/jobs"
        },
        "data": {
            "id": "43118",
            "type": "job",
            "attributes": {
                "dateCreated": "2025-05-26T06:35:35.000Z",
                "description": "description of your choice",
                "jobType": "generateUsers",
                "payload": {
                    "expandMetadata": true
                },
              "status": {
                    "code": "Submitted"
                }
            }
        }
    }
    

    In der Antwort wird die Job-ID 43118.

  4. Nachdem Sie die ID kopiert haben, laden Sie den Bericht mithilfe der ID in der Jobs-API herunter.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/jobs/43118
    
  5. Kopieren Sie die S3-URL aus der Antwort.

  6. Fügen Sie die URL in Ihren Browser ein. Der Browser fordert Sie auf, die CSV-Datei zu speichern oder zu öffnen. Speichern Sie die Datei auf Ihrem Computer.
    Die heruntergeladene Datei enthält die folgenden Spalten:

internalUserID, userEmail, customerDefinedUniqueUserId, name, managerEmail, userType, state, excludedFromGamification, pointsEarned, profile, roles, dateCreated, lastLoginDate, dateDeleted, uiLocale, contentLocale, timeZoneCode, userSource, group, Active fields, metadata und lastSocialActivityDate.

Abzeichen mit Jobs-API generieren

  1. Liste der Abzeichen für einen Benutzer in der Organisation abrufen Verwenden Sie den folgenden Endpunkt:

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/users/3400476/userBadges
    

    Dabei steht 3400476 die Benutzer-ID an.

  2. Kopieren Sie die Abzeichen-ID aus der Antwort. Beispiel: 3400476_759_COMPETENCY_1796_1 ist die Abzeichen-ID.

    code language-none
    {
     "id": "3400476_759_COMPETENCY_1796_1",
     "type": "userBadge",
     "attributes": {
         "assertionUrl": "https://cpcontentsdev.adobe.com/public/accountassets/1010/badges/assertions/a99566b5aa8f4cfa92380581733c63a9_1626278856926.json",
         "dateAchieved": "2016-02-25T08:45:25.000Z",
         "modelType": "skillLevel"
     },
     "relationships": {
         "badge": {
             "data": {
                 "id": "759",
                 "type": "badge"
             }
         },
         "learner": {
             "data": {
                 "id": "3400476",
                 "type": "user"
             }
         },
         "model": {
             "data": {
                 "id": "1796_1",
                 "type": "skillLevel"
             }
         }
     }
    }
    
  3. Erstellen Sie eine Payload und geben Sie die Badge-ID in der Payload an. Beispiel für eine Nutzlast:

    code language-none
    {
     "data": {
         "type": "job",
         "attributes": {
             "description": "Acme Corp Badge",
             "jobType": "generateUserBadge",
             "payload": {
                 "userBadgeId": "3400476_759_COMPETENCY_1796_1"
             }
         }
     }
    }
    

    Nachdem Sie einen Anruf getätigt haben, erhalten Sie die Job-ID in der Antwort.

  4. Nehmen Sie die Job-ID aus der Antwort und verwenden Sie die Job-ID im folgenden Endpunkt, um den Aufruf durchzuführen.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/jobs/<jobsID>
    
  5. Kopieren Sie die Abzeichen-URL aus der Antwort und öffnen Sie die URL in einem Browser. Das Zertifikat wird als PDF heruntergeladen.

Erstellen von Benutzern in Adobe Learning Manager

Mit dem Endpunkt POST /users können Sie einen Benutzer im Headless-Modus erstellen. Erstellen Sie Benutzer mit detaillierten Informationen, wie z. B. dem Registrierungsprozess in der nativen Benutzeroberfläche im Adobe Learning Manager.

Beispiel:

POST https://learningmanager.adobe.com/primeapi/v2/users

Fügen Sie der Anforderung den folgenden Textkörper hinzu:

{
   "data":
     {
       "type": "user",
       "attributes": {
         "bio": "",
         "contentLocale": "fr-FR",
         "email": "user@work.com",
         "enrollOnClick": true,
         "fields": {
           "Learning Categories": [
             "Business"
           ],
           "Categories": "IT"
         },
         "gamificationEnabled": true,
         "name": "Test User",
         "profile": "Engineer",
         "userType": "INTERNAL",
         "userUniqueId": "user@work.com"
       },
       "relationships": {
         "account": {
           "data": {
             "id": "108079",
             "type": "account"
           }
         }
         }
       }
    }

Nach dem Anruf wird die folgende Antwort angezeigt:

{
    "links": {
        "self": "https://learningmanager.adobe.com/primeapi/v2/users"
    },
    "data": {
        "id": "13385627",
        "type": "user",
        "attributes": {
            "avatarUrl": "https://cpcontents.adobe.com/public/images/default_user_avatar.svg",
            "email": "user@work.com",
            "name": "Test User",
            "pointsEarned": 0,
            "pointsRedeemed": 0,
            "preferredResolution": "AUTO",
            "profile": "Engineer",
            "roles": [
                "Learner"
            ],
            "state": "ACTIVE",
            "userType": "Internal",
            "userUniqueId": "user@work.com"
        },
        "relationships": {
            "account": {
                "data": {
                    "id": "1010",
                    "type": "account"
                }
            },
            "manager": {
                "data": {
                    "id": "3400468",
                    "type": "user"
                }
            }
        }
    }
}

Ein neuer Benutzer wird zu Adobe Learning Manager hinzugefügt.

L1-Feedback posten

  1. Rufen Sie die Kurs-, Instanz- und Registrierungsdaten des Teilnehmers ab. Verwenden Sie die folgende endoint:

    code language-none
    GET /enrollments
    
  2. Überprüfen Sie, ob L1-Feedback für die Kursinstanz aktiviert ist.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<loID>/instances/<loInstanceID>/l1Feedback
    
  3. Senden Sie das L1-Feedback.

    code language-none
    POST /enrollments/{id}/l1Feedback
    

Beispiel für erforderliche Nutzlast:

{
    "data": {
      "id": "course:7454218_10333537_11257863",
      "type": "feedback",
      "attributes": {
        "questions": [
          {
            "answer": "8",
            "questionId": "1",
            "mandatory": true,
            "questionType": "scaleTen"
          }
        ],
        "score": 80
      }
    }
  }

Modulebeneninformationen eines Kurses abrufen

  1. Rufen Sie die Details eines Lernobjekts nach ID ab.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<loID>
    
    code language-none
    {
     "links": {
         "self": "https://learningmanager.adobe.com/primeapi/v2/learningObjects/course:1171899"
     },
     "data": {
         "id": "course:1171899",
         "type": "learningObject",
         "attributes": {
             "authorNames": [
                 "James Adams"
             ],
             "dateCreated": "2017-11-01T15:28:09.000Z",
             "datePublished": "2017-11-01T15:28:20.000Z",
             "dateUpdated": "2017-11-01T15:28:20.000Z",
             "duration": 60,
             "effectiveModifiedDate": "2017-11-01T15:28:20.000Z",
             "effectivenessIndex": 0,
             "enrollmentType": "Self Enroll",
             "hasOptionalLoResources": false,
             "hasPreview": false,
             "isExternal": false,
             "isMqaEnabled": false,
             "isPrerequisiteEnforced": false,
             "isSubLoOrderEnforced": false,
             "loFormat": "Self Paced",
             "loResourceCompletionCount": 3,
             "loType": "course",
             "moduleResetEnabled": false,
             "state": "Published",
             "unenrollmentAllowed": true,
             "catalogLabels": [
                 {
                     "catalogLabelValueIds": [
                         {
                             "name": "Sales",
                             "id": "catalogLabel:13_31"
                         }
                     ],
                     "description": "",
                     "mandatory": false,
                     "name": "Department",
                     "values": [
                         "Sales"
                     ]
                 }
             ],
             "localizedMetadata": [
                 {
                     "locale": "en-US",
                     "name": " Test course 2"
                 }
             ],
             "rating": {
                 "averageRating": 0,
                 "ratingsCount": 0
             }
         },
         "relationships": {
             "authors": {
                 "data": [
                     {
                         "id": "3400468",
                         "type": "user"
                     }
                 ]
             },
             "instances": {
                 "data": [
                     {
                         "id": "course:1171899_2067352",
                         "type": "learningObjectInstance"
                     }
                 ]
             },
             "skills": {
                 "data": [
                     {
                         "id": "course:1171899_1797",
                         "type": "learningObjectSkill"
                     }
                 ]
             }
         }
     }
    }
    
  2. Verwenden Sie den include-Parameter, um Folgendes abzurufen:

    a. Listen Sie alle Module des Lernobjekts auf.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/course:1171899?include=instances.loResources
    

    b. Listet alle Inhalte in den Modulen auf.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/course:1171899?include=instances.loResources.resources
    

Modulfortschritt überprüfen

  1. Rufen Sie das Lernobjekt aus dem Katalog mit der Kurs-ID ab.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/learningObjects?page[limit]=10&filter.loTypes=course&sort=name&filter.ignoreEnhancedLP=true&id=<courseID>
    
  2. Abrufen der Registrierungsdetails eines Teilnehmers mithilfe der Registrierungs-ID.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/enrollments/<enrollmentID>
    

    Kopieren Sie die Ressourcenqualität-ID des Lernobjekts aus der Antwort.

  3. Verwenden Sie die ID im folgenden Endpunkt.

    code language-none
    GET https://learningmanager.adobe.com/primeapi/v2/loResourceGrades/<courseResourceGradeID>
    

Sie erhalten Informationen über den Fortschritt des Moduls in der Antwort.

Identitätswechsel von Teilnehmern implementieren

Bei der Implementierung eines Headless LMS mit Adobe Learning Manager als Backend benötigen Unternehmen möglicherweise Supportmitarbeiter, die sich für die Teilnehmer als Ansprechpartner bei der Fehlerbehebung oder für Unterstützung entscheiden. Die API-gestützte Identitätswechselmethode stellt einen sicheren Zugriff sicher, während die Vertraulichkeit der Teilnehmeranmeldeinformationen gewahrt bleibt, und unterstützt nahtlose Übergänge in den Sitzungszuständen.

Adobe Learning Manager erleichtert den Identitätswechsel von Teilnehmern in Headless-LMS-Umgebungen durch eine dedizierte API. Mit dieser Funktion können Supportmitarbeiter vorübergehend die Identität eines Teilnehmers annehmen und Probleme diagnostizieren, Funktionen testen oder praktische Unterstützung bereitstellen, indem sie die Erfahrung des Teilnehmers simulieren. Der Identitätswechsel wird mithilfe eines zwischengespeicherten Admin-Zugriffstokens aktiviert, mit dem programmgesteuert ein Teilnehmerzugriffstoken generiert wird. Dieser Prozess ermöglicht es dem System, so zu arbeiten, als wäre es als Teilnehmer angemeldet.

IMPORTANT
Benutzer müssen einen speziellen API-Zugriff anfordern, um diese Funktion nutzen zu können, und das System muss den Wechsel der Sitzung, die Autorisierung und andere Indikatoren verarbeiten, um Transparenz und Rechenschaftspflicht während des Identitätswechsels zu gewährleisten.

API-Endpunktdetails

POST /oauth/learnerToken

Beispiel für vollständige URL

https://learningmanager.adobe.com/oauth/o/learnerToken?learner_email=foo@acme.com&force=false

Abfrageparameter:

  • learner_email: (string) Die E-Mail-Adresse des Teilnehmers, dessen Identität Sie annehmen möchten.
  • force: (boolean) Gibt an, ob ein neues Token zwangsweise generiert werden soll, falls vorhanden.

Anforderungstext:

{
    "client_id": "your-client-id",
    "client_secret": "your-client-secret",
    "refresh_token": "your-admin-refresh-token"
}

Beispielantwort:

{
    "access_token": "generated-token",
    "refresh_token": "new-refresh-token",
    "user_role": "learner",
    "account_id": "123456",
    "user_id": "7891011",
    "expires_in": 604800
}

Beispiel-cURL:

curl --location --request POST 'https://learningmanager.adobe.com/oauth/o/learnerToken?learner_email=foo@acme.com&force=false' \
--header 'Content-Type: application/json' \
--data-raw '{
  "client_id": "xxxx",
  "client_secret": "xxxx",
  "refresh_token": "xxxx"
}'

Fehlercodes

Bei der Arbeit mit Adobe Learning Manager (Adobe Learning Manager)-APIs können Entwickler während einer Anforderung auf verschiedene HTTP-Fehlercodes stoßen. Diese Fehler liefern wichtiges Feedback dazu, was schief gelaufen ist und wie man es beheben kann. Wenn Sie diese Codes verstehen, können Entwickler Probleme schnell beheben, die API-Zuverlässigkeit verbessern und reibungslosere Integrationen sicherstellen. Die folgende Tabelle enthält Erläuterungen zu häufig von den Adobe Learning Manager-APIs zurückgegebenen HTTP-Fehlercodes sowie typische Szenarien, in denen diese auftreten. Dieser Abschnitt ist für alle Benutzer wichtig, die Anwendungen erstellen, testen oder debuggen, die eine Verbindung mit Adobe Learning Manager herstellen.

HTTP-Status
Bedeutung
Fehlerbehebung
400
Fehlerhafte Anforderung
Überprüfen Sie die Anforderung auf fehlende oder fehlerhafte Parameter. Überprüfen Sie die erforderlichen Felder und die richtige Formatierung. Ungültige Syntax für Filter, Felder oder Include-Parameter.
401
Unberechtigtes ungültiges oder fehlendes Token
Stellen Sie sicher, dass Ihr Zugriffstoken korrekt ist und in der Autorisierungskopfzeile enthalten ist. Überprüfen Sie, ob das Token aktiv ist. Verwenden Sie bei der Anforderung des Tokens auch die richtige Client-ID und den richtigen Client-Schlüssel.
403
Verboten. Kein Zugriff
Sie haben keine Berechtigung, auf die Ressource zuzugreifen. Stellen Sie sicher, dass Ihr Token die richtigen Geltungsbereiche hat (Admin:Read, Teilnehmer:Write usw.).
404
Ressource nicht gefunden
Die Endpunkt- oder Ressourcen-ID ist falsch oder nicht vorhanden. Stellen Sie sicher, dass die Ressource in der Liste der Parameter vorhanden ist.
406
Nicht akzeptabel - Falsche Kopfzeile "Akzeptieren"
Fügen Sie dieser Kopfzeile Ihrer Anforderung hinzu: Akzeptieren Sie: application/vnd.api+json
Für Adobe Learning Manager-APIs ist dieser Inhaltstyp strikt erforderlich.
500
Interner Serverfehler
Dies ist ein serverseitiges Problem. Versuchen Sie es später erneut oder melden Sie das Problem dem Adobe Learning Manager-Support-Team, wenn es weiterhin auftritt.
recommendation-more-help
d5e5961a-141b-4c77-820e-8453ddef913d