Adobe Learning Manager Developer Manual
Overzicht
Adobe Learning Manager biedt RESTful-API's waarmee ontwikkelaars toepassingen of workflows effectief kunnen integreren en aanpassen. De ontwikkelaarshandleiding biedt richtlijnen voor het gebruik van deze API's, met onderwerpen zoals verificatie, gegevensmodellen en integratie met andere toepassingen. Bovendien, helpt deze gids API verwijzingsdocumentatieontwikkelaars in het creëren van externe toepassingen of achterste werkschema's die met diverse eigenschappen van Adobe Learning Manager, met inbegrip van cursusverwezenlijking, het volgen van studentenvooruitgang, vaardigheidstoewijzing, certificatie, gamification, en transcripten interactie aangaan.
Deze handleiding behandelt het volgende:
- OAuth2.0-verificatie
- API-objectmodellen
- Opnemen, velden en andere parameters
- Gebruiksscenario’s in de praktijk
API-gebruiksscenario's
Ontwikkelaars kunnen API's van Learning Manager gebruiken om de Learning Manager te verbeteren of te integreren met andere bedrijfstoepassingen. U kunt web-, desktop- of mobiele apps maken met elke technologie. Ontwikkelaars hebben toegang tot Leerbeheergegevens, maar u bepaalt waar en hoe de app wordt gebruikt.
Verificatie met OAuth 2.0
Om Adobe Learning Manager API's veilig te openen, moet u zich verifiëren met het OAuth 2.0-mechanisme van Adobe Learning Manager. Dit proces omvat het registreren van uw toepassing, het genereren van een machtigingscode, het uitwisselen van een vernieuwingstoken en het gebruiken van het vernieuwingstoken om een toegangstoken te krijgen.
Een toepassing registreren
Integreer Adobe Learning Manager met externe toepassingen voor verbeterde veelzijdigheid. De stappen omvatten de toegang tot de interface van de Beheerder van de Integratie, het registreren van de toepassing, en het verkrijgen van cliëntidentiteitskaart en Geheime. Genereer OAuth 2.0-verificatietokens uit Adobe Learning Manager, inclusief verificatie-, vernieuwings- en toegangstokens. Gebruik de OAuth 2.0-stroom om uw app veilig te verifiëren en autoriseren. De toegangstoken is zeven dagen geldig.
-
Meld u aan bij Adobe Learning Manager als integratiebeheerder.
-
Selecteer Toepassingen op de linkerruit.
-
Selecteer Register en voeg de volgende informatie toe:
-
Naam van de Toepassing: Type de naam van uw toepassing (maximum 50 karakters).
-
URL: Officiële URL van uw bedrijf of toepassing. Wordt gebruikt voor identificatie en referentie.
-
richt Domeinen opnieuw: Specificeer de domeinen (bijvoorbeeld, http://learningmanager.adobe.com) die Adobe Learning Manager aan na vergunning kan opnieuw richten. U kunt meerdere geldige URL's opgeven.
-
Beschrijving: Korte beschrijving van wat de toepassing doet.
-
Bereiken: Selecteer één van de zes beschikbare opties om het werkingsgebied van uw toepassing te bepalen. Op basis van uw hier vermelde keuze zijn de API-eindpunten van de Learning Manager toegankelijk voor uw toepassing. Als u bijvoorbeeld leestoegang voor de studentrol hebt gekozen, zijn alle API-eindpunten van de leermanager alleen-lezen voor uw toepassing.
- Lezen/schrijven-toegang beheerdersrol: hiermee kan de toepassing als beheerder toegang krijgen tot gegevens of deze wijzigen.
- Lezen/schrijven-toegang studentrol: hiermee kan de toepassing gegevens voor studenten openen of wijzigen.
- xAPI-lees- en schrijftoegang: hiermee kan de toepassing Experience API-statements (xAPI) openen en verzenden.
-
slechts voor deze rekening?
- ja - als u ja kiest, dan is de toepassing niet zichtbaar aan andere accountbeheerders.
- Nr - als u Nr kiest, kunnen andere accountbeheerders tot deze toepassing ook toegang hebben, maar zij moeten toepassings identiteitskaart gebruiken om tot deze toepassing toegang te hebben. Toepassings-id wordt gegenereerd en weergegeven in de bewerkingsmodus van de Learning Manager-toepassing.
-
-
Selecteer sparen om de toepassing te registreren.
- Nadat u de toepassing hebt geregistreerd, is deze beschikbaar in de lijst met toepassingen die in het account zijn gemaakt. Selecteer de toepassing en naast de eerder ingevoerde velden ziet u het volgende:
- Toepassings-id: dit is de client-id. Deze id vertelt Adobe Learning Manager de toepassing die toegang aanvraagt. Het is opgenomen in API-verzoeken om de app te identificeren.
- Toepassingsgeheim: hiermee wordt uw app geverifieerd en de identiteit ervan geverifieerd tijdens de uitwisselingsstappen voor token (bijvoorbeeld bij het aanvragen van een vernieuwingstoken of een toegangstoken).
Een toegangstoken verkrijgen
Verkrijg de machtigingscode
Nadat u de client-id en het clientgeheim hebt opgehaald, kunt u deze gebruiken om een toegangstoken aan te vragen. Zo kunt u API-aanroepen verifiëren.
Als u wilt beginnen met de stroom van de machtigingscode, voegt u de volgende URL toe in een browser:
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
Zodra de gebruiker de toepassing goedkeurt, leidt Adobe Learning Manager de opgegeven redirect_uri om met een toegevoegde queryparameter:
https://yourapp.com/callback?code=abc123xyz
Er wordt een parametercode toegevoegd samen met de omleidingsuri.
Vernieuwingstoken ophalen uit code
Nadat u de code hebt ontvangen, gebruikt u een API-gereedschap en voegt u de volgende POST-aanvraag toe:
https://learningmanager.adobe.com/oauth/token
Lichaam van het Verzoek (x-www-vorm-urlencoded):
grant_type=authorization_code
&code=abc123xyz
&client_id=<your_client_id>
&client_secret=<your_client_secret>
&redirect_uri=<your_redirect_url>
Antwoord
{
"access_token": "eyJhbGciOiJIUzI1...",
"refresh_token": "xTjlfz0jCk6gF1...",
"expires_in": 604800,
"token_type": "Bearer"
}
Gebruik het access_token in de machtigingheader om geverifieerde API-aanvragen in te dienen.
Het toegangstoken in een API-aanroep gebruiken
Verifieer het toegangstoken met behulp van het volgende:
GET https://learningmanager.adobe.com/oauth/token/check?access_token=<access_token>
Een toegangstoken is zeven dagen geldig. Na zeven dagen moet u een nieuw toegangstoken genereren met een vernieuwingstoken. Als u met een vernieuwingstoken een nieuw toegangstoken genereert terwijl een bestaand toegangstoken nog geldig is, wordt het bestaande token geretourneerd.
Toegangstokens verkrijgen voor testen en ontwikkelen
Als ontwikkelaars met Adobe Learning Manager API's werken, hebben ze een geldig OAuth 2.0-toegangstoken nodig om API-verzoeken te verifiëren. Het genereren van dit token via de standaard OAuth-flow kan complex en tijdrovend zijn, met name voor snel testen, leren of ontwikkelen. Adobe Learning Manager biedt een hulpprogramma voor het genereren van tokens om dit proces te vereenvoudigen.
Dit gereedschap is ideaal tijdens:
-
Concepttest (POC)
-
Ontwikkeling in een vroeg stadium
-
Problemen met API-integratie oplossen
Deze tokens zijn uitsluitend bedoeld voor persoonlijk gebruik tijdens ontwikkelings- en foutopsporingsfasen. Houd er rekening mee dat testtokens toegang geven tot je Adobe Learning Manager-data, dus het is essentieel om ze veilig te verwerken. Deel je testtokens nooit met anderen, gebruik ze in productietoepassingen of neem ze op in openbare codeopslagplaatsen. Behandel ze als wachtwoorden om de beveiliging van je account en data te waarborgen.
-
Meld u aan bij Adobe Learning Manager als integratiebeheerder.
-
Selecteer de Middelen van de Ontwikkelaar van 0} en dan selecteer de Tokens van de Toegang voor het Testen en Ontwikkeling .
-
Typ identiteitskaart van de Cliënt die u na het creëren van een toepassing kreeg om de code te krijgen OAuth. Dan selecteer voorleggen.
-
Voeg identiteitskaart van de Cliënt en het Geheime punt van de Cliënt toe om te krijgen vernieuwt token. Dan selecteer voorleggen. De OAuth wordt vooraf ingevuld vanaf de vorige stap.
-
Voeg de Client-id en het clientgeheim toe om het toegangstoken op te halen. Dan selecteer voorleggen.
-
Voeg het toegangstoken toe en selecteer Verzenden om de toegangstoken-details op te halen.
Op het selecteren legt voor, wordt het toegangstoken geverifieerd, en u zult het volgende voorwerp JSON ontvangen:
{
"access_token": "access token",
"refresh_token": "refresh token",
"user_role": "admin",
"account_id": "1234",
"user_id": "123456",
"expires_in": 604800
}
Net als voorheen verloopt het toegangstoken voor testen over zeven dagen.
Een API-tool gebruiken om de eindpunten te testen
U kunt een API-testtool van derden gebruiken, maar Postman wordt gebruikt om de eindpunten te testen. In de voorbeelden in dit document wordt Postman gebruikt voor het testen van de eindpunten.
-
Open Postman en maak een nieuwe aanvraag.
-
Selecteer het tabblad Autorisatie.
-
Stel het autietype in op Dragertoken.
-
Plak de toegangstoken die u uit de vorige sectie hebt gekregen in het veld Token.
-
Voeg het volgende toe op het tabblad Kopteksten.
- Sleutel: Accepteren
- Waarde: toepassing/json
-
Typ uw API-eindpunt in het veld URL. Voorbeeld: https://learningmanager.adobe.com/learningManager/api/v2/users
De Verwijzing van de mening Adobe Learning Manager APIvoor meer informatie. -
Selecteer Verzenden om de API-aanvraag in te dienen.
Typen API's
Admin-API's
Met de Admin API's van Adobe Learning Manager kunnen beheerders leerbewerkingen op grote schaal automatiseren en beheren.
Met de Admin API's kunnen ontwikkelaars:
- beheer gebruikers en groepen: Creeer, werk, en schrap gebruikers bij of wijs hen aan groepen toe.
- schrijf studenten in: Automatiseer inschrijving in cursussen, Leerpaden, of certificeringen.
- de vooruitgang van de student volgen: haal cursus/modulevooruitgang, quizscores, en voltooiingsstatus terug.
- Genereer rapporten: De gegevens van de toegang over studentenactiviteit, betrokkenheid, en prestaties.
- beheer inhoud: Creeer en orden cursussen, en het Leren Objecten.
De Verwijzing van de mening Adobe Learning Manager APIvoor meer informatie.
Student-API's
De API's voor studenten zijn ontworpen voor geverifieerde gebruikers (studenten) en bieden u toegang tot studentspecifieke informatie. Deze API's staan taken toe zoals:
- Toegang tot de cursussen en voortgang van een student
- Betaalde badges of certificeringen ophalen
- Profielgegevens van studenten bijwerken
- Vaardigheden weergeven die zijn gekoppeld aan voltooide cursussen
Belangrijke punten:
- Voor deze API's is een geverifieerd gebruikerstoken nodig, zodat de beveiliging en privacy van gegevens worden gewaarborgd.
- De API's zijn bedoeld voor scenario's waarin gebruikers volledig zijn geregistreerd en aangemeld, en niet voor anonieme of gedeelde gebruikers.
De Verwijzing van de mening Adobe Learning Manager APIvoor meer informatie.
API-ontwerp en algemene parameters
De API's bieden ontwikkelaars toegang tot belangrijke leermanschappen zoals gebruikers, cursussen, vaardigheden, certificeringen en leerprogramma's. Hiervoor worden REST-principes gebruikt, waarbij HTTP-methoden (GET, POST, PUT, DELETE) worden gebruikt voor gegevensbewerkingen.
Algemene parameters
Hier volgt een korte uitleg van elk:
include
Adobe Learning Manager API's kunnen worden gebruikt om nuttige informatie op te halen tijdens het bouwen van een aangepaste toepassing of een headless LMS. De API-eindpunten kunnen verder worden opgenomen met aanvullende 'include'-parameters om de extra informatie op te halen die betrekking heeft op de gegevens die standaard worden ontvangen. Deze relaties zijn relaties met gegevensmodellen. Als u bijvoorbeeld een oproep doet om gebruikersgegevens op te halen, ontvangt u de gebruikersgegevens en de relatie van de manager-id en de Adobe Learning Manager-account-id. Met de parameter include kunt u op een gedetailleerde manier aanvullende gegevens ophalen samen met de gebruikersgegevens, zoals de beheergegevens en de Adobe Learning Manager-accountgegevens.
Kortom, omvat parameter wordt gebruikt in API vraag om verwante (verbonden) middelen samen met het primaire middel in één enkele reactie te halen. Het is handig als u toegang wilt tot geneste of afhankelijke gegevens, zoals modules van een cursus of de vaardigheden die aan een student zijn toegewezen, zonder afzonderlijke API-aanroepen te maken.
Belangrijkste voordelen:
- Vermindert meerdere API-aanroepen: vermijdt de noodzaak om elke gerelateerde bron handmatig aan te vragen.
- Verbetert de efficiëntie: snellere ontwikkeling, minder serverlading en snellere rendering van gegevens.
- Zorgt voor gegevensconsistentie: haalt alle gerelateerde gegevens op in een consistente momentopname.
hoe te om te gebruiken omvat parameter
Voeg de parameter include toe aan uw API-URL en geef op welke verwante entiteiten u wilt opnemen.
gemeenschappelijk omvat wegen
Voorbeeld 1
Haal de details op van een gebruiker die userID parameter in het eindpunt gebruikt.
https://learningmanager.adobe.com/primeapi/v2/users/<userID>
GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>
In de reactie kunt u zien dat het gegevensobject een relatie heeft met het account en de manager van de gebruiker.
"relationships": {
"account": {
"data": {
"id": "1010",
"type": "account"
}
},
"manager": {
"data": {
"id": "3400476",
"type": "user"
}
}
}
Met de parameter include in de aanvraag kunt u gedetailleerde informatie over de manager ophalen, zoals hieronder wordt weergegeven:
GET https://learningmanager.adobe.com/primeapi/v2/users/<userid>?include=manager
Voorbeeld 2
Gebruik de parameter include in de aanroep van het eindpunt om de cursusdetails op te halen. Het volgende eindpunt krijgt de cursusinformatie samen met de relaties.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>
De relaties worden als volgt weergegeven in de reactie:
- exemplaren
- vaardigheden
- auteurs
"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 relaties kunnen (niet aanwezig in het bovenstaande antwoord) omvatten:
- voorwaarde-LO's
- aanvullende LO's
- additionalResources
Als u gedetailleerde gegevens wilt over de instanties en vaardigheden, neemt u 'instanties,vaardigheden' op in de parameter include.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances,skills
Als u bijvoorbeeld meer gegevens wilt ophalen die aan de cursusinstantie zijn gekoppeld, zoals loResources (module-informatie van de cursus), moet u loResources toepassen als een genest include-bestand.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances.loResources
Combineer vaardigheden en instanties met een genest include-bestand.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances,instances.loResources,skills
andere omvatten filters
velden
De kenmerken en relaties van een API-object worden velden genoemd. Gebruik Velden als een parameter in API-aanroepen om specifieke kenmerken van het model op te halen. Zonder de parameter Fields haalt de API-aanroep alle beschikbare kenmerken op.
Bijvoorbeeld, in de volgende API vraag, haalt de gebieden [ vaardigheid ]=name u het naamattribuut van het vaardigheidsmodel alleen.
GET https://learningmanager.adobe.com/primeapi/v2/users/3400490/userSkills/3400490_1796_1?include=skillLevel.skill&fields[skill]=name
paginering
API-paginering is een techniek die in API's wordt gebruikt om grote gegevenssets op te splitsen in kleinere, beheerbare blokken, pagina's genoemd, in plaats van de volledige gegevens in één reactie te retourneren.
Paginering vermindert het laden van de client en de server, beperkt de reactiegrootte om knelpunten in de server te voorkomen of is handig voor het weergeven van gegevens in tabellen of lijsten van één pagina tegelijk.
Hoe de paginering in Adobe Learning Manager APIs werkt
Adobe Learning Manager API's ondersteunen paginering via parameters zoals:
- pagina [ grens ]: Aantal verslagen per pagina.
- pagina [ verschuiving ]: Aantal verslagen aan oversla.
- pagina [ curseur ]: Wijs aan de volgende reeks resultaten aan. In plaats van op verschuiving gebaseerde paginering (die een aantal records overslaat) gebruikt op cursor gebaseerde paginering een uniek markeerteken dat door de API wordt geretourneerd om de volgende pagina met resultaten op te halen.
Hieronder wordt beschreven hoe u paginering in API's kunt gebruiken:
pagina [ grens]
Terwijl https://learningmanager.adobe.com/primeapi/v2/usersalle gebruikers en verwante informatie in één enkele vraag terugkeert, beperkt het gebruiken van pagina [ grens ] het aantal resultaten tot de gespecificeerde waarde.
Gebruik de volgende API om slechts vijf gebruikersrecords in één aanroep te retourneren:
GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5
pagina [ verschuiving]
Gebruik deze API-aanroep om drie gebruikersrecords te retourneren, de eerste vijf gebruikers over te slaan en vanaf de zesde te beginnen.
GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=3&page[offset]=5
pagina [ curseur]
-
Klik eerst op de eerste pagina met een limiet van 5.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5
-
Kopieer de cursorwaarde van links.next en gebruik deze in de volgende aanvraag:
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" }
-
Verzend het volgende verzoek:
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5&page[cursor]=3400482
Hiermee wordt de volgende set van 10 records geretourneerd, te beginnen na het laatste item van de vorige pagina.
filter
Met de filterparameter kunt u de API-resultaten beperken op basis van een of meer veldwaarden.
Adobe Learning Manager API's bieden verschillende variaties van de filterparameter om de reacties te beperken.
De Verwijzing van de mening Adobe Learning Manager APIvoor meer informatie.
In dit voorbeeld wordt getoond hoe u de taakhulpen kunt filteren waarvoor een student zich heeft ingeschreven bij het gebruiken van het eindpunt met de filterparameter:
GET https://learningmanager.adobe.com/primeapi/v2/users/3400480/enrollments?filter.loTypes=jobAid
sorteren
De sorteerparameter wordt gebruikt voor het sorteren van API-resultaten in oplopende of aflopende volgorde op basis van een of meer velden.
De Adobe Learning Manager biedt verschillende sorteeropties voor het sorteren van de API-reactie. De Verwijzing van de mening Adobe Learning Manager APIvoor meer informatie.
Als u het vorige voorbeeld uitbreidt, sorteert u nu de inschrijving van de gebruiker naar leerprogramma's op datum die in oplopende volgorde is ingeschreven.
GET https://learningmanager.adobe.com/primeapi/v2/users/3400480/enrollments?filter.lotypes=learningProgram&sort=dateEnrolled
Overzicht van API-modellen
Met de Adobe Learning Manager API's hebben ontwikkelaars toegang tot leermantobjecten als RESTful-bronnen. Elk API-eindpunt vertegenwoordigt een bron, meestal een object zoals een badge, of een verzameling van dergelijke objecten. De ontwikkelaars gebruiken dan de werkwoorden van HTTP zoals PUT, GET, POST en DELETE om de verrichtingen CRUD op die voorwerpen (inzamelingen) uit te voeren.
Student-API's en eindpunten
Hier volgen belangrijke API-eindpunten voor het werken met studentgegevens. Deze API's begeleiden ontwikkelaars bij het werken met studentgegevens, het volgen van de voortgang, het beheren van inschrijvingen en het ophalen van cursusinhoud.
Details van alle studenten ophalen
Haal de gegevens van de student op (naam, e-mail, UUID, gebruikersprofiel, enzovoort). Gebruik de API om alle studenten in het account weer te geven.
GET https://learningmanager.adobe.com/primeapi/v2/users
Gegevens van een specifieke student ophalen
Als u het profiel van een student wilt bekijken op ID, gebruikt u de volgende API om te bellen.
GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>
Alle cursussen, leerprogramma's, taakhulpen en certificeringen weergeven
Haal de gegevens op van alle leerobjecten waarin de student is ingeschreven, is voltooid of door de beheerder is ingeschakeld.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects
Details ophalen van een specifiek leerobject
Krijg gedetailleerde informatie over een leerobject. Deze bevat de aanmaakdatum, de publicatiedatum, de bijgewerkte datum en andere informatie.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<LearningObjectID>
Lijst met vaardigheden ophalen die zijn gekoppeld aan cursussen
Geef de vaardigheden weer die aan alle studenten in het account zijn toegewezen.
GET https://learningmanager.adobe.com/primeapi/v2/skills
Informatie over vaardigheidsniveau en badges ophalen
Controleer de voortgang van de studenten in de op vaardigheden gebaseerde leertrajecten.
GET https://learningmanager.adobe.com/primeapi/v2/skills/<skillID>?include=levels
Lijst met alle badges die voor een account zijn gemaakt
Bel het volgende eindpunt om een lijst op te halen met alle badges die voor een account in een organisatie zijn gemaakt.
GET https://learningmanager.adobe.com/primeapi/v2/badges
Informatie van een badge ophalen
Verkrijg gedetailleerde informatie over een badge, zoals de badgenaam, de afbeeldings-URL van de badge en de status van de badge.
GET https://learningmanager.adobe.com/primeapi/v2/badges/<skillID>
Dit levert de volgende reactie op:
{
"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"
}
}
}
Andere voorbeelden van API-gebruik
Een gebruiker maken
-
Gebruik het eindpunt:
code language-none POST https://learningmanager.adobe.com/primeapi/v2/users
Verwerkt de kenmerken van de API-hoofdtekst of de JSON-lading om een gebruiker te genereren en geeft vervolgens een gebruiker de respectievelijke gebruikers-id ingevuld.
-
Gebruik de volgende lading als lichaam:
code language-none { "data": { "type": "user", "attributes": { "email": "bob@example.com", "name": "Bob", "userType": "INTERNAL" } } }
Er zijn drie verplichte kenmerken:
- e-mail: E-mail-ID van de gebruiker. Deze waarde moet uniek zijn voor elke gebruiker.
- naam: de naam van de gebruiker.
- userType: Op dit moment kunnen alleen interne gebruikers worden toegevoegd aan de hand van dit eindpunt. Het userType moet "INTERNAL" zijn.
U ontvangt het volgende JSON-object:
{
"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"
}
}
}
}
}
Een gebruiker verwijderen
-
Haal de gebruikers-id op van de gebruiker die u wilt verwijderen.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>
-
Breng vervolgens met DELETE de volgende aanroep aan:
code language-none DELETE https://learningmanager.adobe.com/primeapi/v2/users/<userID>
Er verschijnt een reactie van 204. Een 204-responscode geeft aan dat de code is gelukt zonder dat er inhoud is die moet worden geretourneerd. De server heeft het verzoek verwerkt, maar heeft geen gegevens om aan de client te verstrekken.
De status van de gebruiker wordt nu VERWIJDERD nadat u de details van de gebruiker terugwint.
Gebruikersgegevens bijwerken
- Werk gebruikersgegevens bij van de gebruiker die de v2-API gebruikt. Studenten kunnen bio, uiLocale, contentLocale en timezone aanpassen. Voor grote accounts zijn dit asynchrone aanroepen. Er zijn vele andere gebruikersattributen die kunnen worden bijgewerkt gebruikend dit API eindpunt. Gebruik het /users/ {id} eindpunt, waar identiteitskaart gebruikersidentiteitskaart van de gebruiker is de waarvan details moeten worden bijgewerkt.
PATCH https://learningmanager.adobe.com/primeapi/v2/users/<userID>
Voeg het volgende toe in de lading van de aanvraag om de gebruiker bij te werken met de id <userID>
uit de vorige sectie.
Wijzig elk veld in de lading.
{
"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"
}
}
}
}
}
Nadat u de vraag maakt, worden de details van de gebruiker bijgewerkt.
Een extern profiel maken
Een extern profiel verwijst naar een gebruikersprofiel dat is gemaakt voor externe studenten, doorgaans individuen die geen deel uitmaken van de interne gebruikersbasis van de organisatie. Tot deze studenten kunnen klanten, partners, leveranciers, franchisehouders of tijdelijke contractanten behoren die toegang nodig hebben tot door de organisatie aangeboden trainings- of certificeringsprogramma's.
-
Gebruik het volgende eindpunt:
code language-none POST https://learningmanager.adobe.com/primeapi/v2/externalProfiles
-
Gebruik de volgende lading als lichaam:
{
"data": {
"type": "externalProfile",
"attributes": {
"name": "Jonas Albertson",
"expiry": "2027-12-31T18:29:59.000Z",
"managerEmail": "jonas@acme.com",
"seatLimit": 10
}
}
}
De lading heeft de volgende attributen:
- naam: de naam van de externe gebruiker.
- vervaldatum: de vervaldatum (in ISO-8601-indeling) van de gebruikersregistratie in Adobe Learning Manager.
- managerEmail: het e-mailadres van de manager van de gebruiker van de partnerorganisatie.
- seatLimit: het aantal toegestane licenties voor de partnerorganisatie.
Nadat u de vraag maakt, krijgt u de volgende reactie:
{
"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"
}
}
}
Dit betekent dat de externe gebruiker is toegevoegd aan Adobe Learning Manager. Verzend de URL in de reactie naar de gebruiker, met behulp waarvan deze zich kan registreren op het platform.
Gebruikersrapport extraheren met gebruikers-ID en managergegevens
Een gebruikersrapport kan direct van het gebruikersinterface van de beheerder worden gedownload (Admin > Gebruikers > Intern). Het rapport retourneert echter niet de gebruikers-id en de gegevens van de bijbehorende manager.
Gebruik de Jobs-API om het rapport te downloaden. De API voor Taken helpt bij het genereren van rapporten, bulkbewerkingen (inschrijvingen of badgetoewijzingen), certificeringsvoltooiing of het genereren van badges.
Hieronder wordt beschreven hoe u het rapport kunt downloaden:
-
Voeg de volgende lading aan Jobs API toe.
code language-none { "data": { "type": "job", "attributes": { "description": "description of your choice", "jobType": "generateUsers", "payload":{ "expandMetadata":true } } } }
-
Gebruik het volgende eindpunt.
code language-none POST https://learningmanager.adobe.com/primeapi/v2/jobs
-
Kopieer de taak-id uit het antwoord.
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 de reactie is de taak-id 43118.
-
Nadat u de id hebt gekopieerd, gebruikt u de id in de Jobs API om het rapport te downloaden.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/jobs/43118
-
Kopieer de S3 URL van de reactie.
-
Plak de URL in uw browser. De browser vraagt u het CSV-bestand op te slaan of te openen. Sla het bestand op uw computer op.
Het gedownloade bestand bevat de volgende kolommen:
internalUserID, userEmail, customerDefinedUniqueUserId, name, managerEmail, userType, state, excludeFromGamification, pointsEarned, profile, rollen, dateCreated, lastLoginDate, dateDeleting, uiLocale, contentLocale, timeZoneCode, userSource, group, Active fields, metadata en lastSocial ActivityDate.
Badge genereren met de Jobs API
-
Ontvang een lijst met badges voor een gebruiker in de organisatie. Gebruik het volgende eindpunt:
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users/3400476/userBadges
Waarbij 3400476 de gebruikers-id is.
-
Kopieer de badge-id uit het antwoord. 3400476_759_COMPETENCY_1796_1 is bijvoorbeeld de badge-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" } } } }
-
Maak een lading en geef de badge-id op in de lading. Een voorbeeldlading is als volgt:
code language-none { "data": { "type": "job", "attributes": { "description": "Acme Corp Badge", "jobType": "generateUserBadge", "payload": { "userBadgeId": "3400476_759_COMPETENCY_1796_1" } } } }
Nadat u een vraag maakt, zult u taakidentiteitskaart in de reactie krijgen.
-
Neem baanID van de reactie en gebruik taakidentiteitskaart in het volgende eindpunt om de vraag te maken.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/jobs/<jobsID>
-
Kopieer de badge-URL van het antwoord en open de URL in een browser. Het certificaat wordt gedownload als een PDF.
Gebruikers maken in Adobe Learning Manager
Het POST /users eindpunt helpt u een gebruiker creëren gebruikend de headless wijze. Maak gebruikers met gedetailleerde informatie, zoals het registratieproces in de native gebruikersinterface in Adobe Learning Manager.
Bijvoorbeeld:
POST https://learningmanager.adobe.com/primeapi/v2/users
Voeg de volgende tekst toe aan de aanvraag:
{
"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"
}
}
}
}
}
Nadat u de vraag maakt, verschijnt de volgende reactie:
{
"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"
}
}
}
}
}
Er wordt een nieuwe gebruiker toegevoegd aan Adobe Learning Manager.
L1-feedback plaatsen
-
Haal de cursus-, instantie- en inschrijvingsgegevens van de student op. Gebruik de volgende endoint:
code language-none GET /enrollments
-
Controleer of L1-feedback is ingeschakeld voor de cursusinstantie.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<loID>/instances/<loInstanceID>/l1Feedback
-
Stuur de L1-feedback.
code language-none POST /enrollments/{id}/l1Feedback
Voorbeeld van vereiste lading:
{
"data": {
"id": "course:7454218_10333537_11257863",
"type": "feedback",
"attributes": {
"questions": [
{
"answer": "8",
"questionId": "1",
"mandatory": true,
"questionType": "scaleTen"
}
],
"score": 80
}
}
}
Informatie op moduleniveau van een cursus ophalen
-
Haal de gegevens van een leerobject op ID.
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" } ] } } } }
-
Gebruik de parameter include om het volgende op te halen:
a. Vermeld alle modules van het leerobject.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/course:1171899?include=instances.loResources
b. Vermeld alle inhoud van de modules.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/course:1171899?include=instances.loResources.resources
Voortgang module controleren
-
Haal het leerobject uit de catalogus op met de cursus-id.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/learningObjects?page[limit]=10&filter.loTypes=course&sort=name&filter.ignoreEnhancedLP=true&id=<courseID>
-
Haal inschrijvingsgegevens van een student op met behulp van de inschrijvers-id.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/enrollments/<enrollmentID>
Kopieer de bronklasse-id van het leerobject uit de reactie.
-
Gebruik de id in het volgende eindpunt.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/loResourceGrades/<courseResourceGradeID>
In de reactie krijgt u informatie over de voortgang van de module.
Imiteren van studenten
Bij het implementeren van een headless LMS met Adobe Learning Manager als back-end, kunnen organisaties ondersteuningspersoneel nodig hebben om studenten te kunnen nakomen voor probleemoplossing of hulp. De API-gestuurde imitatiemethode garandeert veilige toegang met behoud van de vertrouwelijkheid van de studentreferentie en ondersteunt naadloze overgangen in sessiestatussen.
Adobe Learning Manager vereenvoudigt het nadoen van studenten in headless LMS-omgevingen via een speciale API. Met deze functie kan ondersteuningspersoneel tijdelijk de identiteit van een student overnemen, zodat deze problemen kan diagnosticeren, functionaliteiten kan testen of praktische hulp kan bieden door de ervaring van de student te simuleren. Imitatie wordt geactiveerd met een toegangstoken voor beheerders in de cache, dat wordt gebruikt om programmatisch een toegangstoken voor studenten te genereren. Hierdoor kan het systeem werken alsof het als student is aangemeld.
API eindpuntdetails
POST /oauth/learnerToken
Volledige URL voorbeeld
https://learningmanager.adobe.com/oauth/o/learnerToken?learner_email=foo@acme.com&force=false
parameters van de Vraag:
- student_e-mail: (tekenreeks) De e-mail van de student om zich voor te doen.
- force: (Boolean) Of een nieuwe token geforceerd moet worden gegenereerd als deze bestaat.
Hoofdtekst van het verzoek:
{
"client_id": "your-client-id",
"client_secret": "your-client-secret",
"refresh_token": "your-admin-refresh-token"
}
reactie van de Steekproef:
{
"access_token": "generated-token",
"refresh_token": "new-refresh-token",
"user_role": "learner",
"account_id": "123456",
"user_id": "7891011",
"expires_in": 604800
}
Steekproef 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"
}'
Foutcodes
Wanneer ontwikkelaars met Adobe Learning Manager (Adobe Learning Manager)-API's werken, kunnen ze verschillende HTTP-foutcodes tegenkomen tijdens aanvragen. Deze fouten geven belangrijke feedback over wat er is misgegaan en hoe deze kan worden opgelost. Als u deze codes begrijpt, kunnen ontwikkelaars snel problemen oplossen, de betrouwbaarheid van de API verbeteren en zorgen voor vloeiendere integraties. In de volgende tabel vindt u een overzicht van algemene HTTP-foutcodes die worden geretourneerd door de Adobe Learning Manager API's, samen met uitleg en typische scenario's waarin deze voorkomen. Deze sectie is essentieel voor iedereen die toepassingen bouwt, test, of zuivert die met Adobe Learning Manager verbinden.
Adobe Learning Manager APIs vereist strikt dit inhoudstype.