Användarhandbok för Adobe Learning Manager-utvecklare
Översikt
Adobe Learning Manager tillhandahåller RESTful API:er som gör det möjligt för utvecklare att integrera och anpassa program eller arbetsflöden effektivt. Utvecklarhandboken innehåller vägledning om hur du använder dessa API:er, och omfattar ämnen som autentisering, datamodeller och integrering med andra program. Dessutom kan den här användarhandboken API-referensdokumentation hjälpa utvecklare att skapa externa program eller serverarbetsflöden som interagerar med olika funktioner i Adobe Learning Manager, inklusive kursskapande, spårning av elevframsteg, kompetensmappning, certifiering, spelifiering och utskrifter.
I den här handboken beskrivs följande:
- OAuth2.0-autentisering
- API-objektmodeller
- Inkludera, fält och andra parametrar
- Verkliga användningsfall
Användningsscenarier för API
Utvecklare kan använda Learning Manager API:er för att förbättra eller integrera Learning Manager med andra företagsprogram. Du kan skapa webb-, dator- och mobilappar med vilken teknik som helst. Utvecklare kan komma åt Learning Manager-data, men du styr var och hur appen används.
Autentisering med OAuth 2.0
För att få säker åtkomst till Adobe Learning Manager API:er måste du autentisera med Adobe Learning Manager OAuth 2.0-mekanism. I den här processen ingår att registrera programmet, generera en auktoriseringskod, byta ut den mot en uppdateringstoken och slutligen använda uppdateringstoken för att få en åtkomsttoken.
Registrera en ansökan
Integrera Adobe Learning Manager med externa program för förbättrad mångsidighet. Stegen innebär att få åtkomst till gränssnittet för Integreringsadministratör, registrera programmet och erhålla klient-ID och hemlighet. Generera OAuth 2.0-autentiseringstoken, inklusive auktoriserings-, uppdaterings- och åtkomsttoken, från Adobe Learning Manager. Använd OAuth 2.0-flödet för att autentisera och auktorisera programmet på ett säkert sätt. Åtkomsttoken har en giltighet på sju dagar.
-
Logga in i Adobe Learning Manager som integreringsadministratör.
-
Välj Applications i den vänstra rutan.
-
Välj Register och lägg till följande information:
-
Application Name: Skriv programmets namn (max 50 tecken).
-
URL: Företagets eller programmets officiella webbadress. Används för identifiering och referens.
-
Redirect Domains: Ange de domäner (till exempel http://learningmanager.adobe.com) som Adobe Learning Manager kan omdirigera till efter auktorisering. Du kan ange flera giltiga URL:er.
-
Description: Kort beskrivning av vad programmet gör.
-
Scopes: Välj ett av de sex tillgängliga alternativen för att definiera programmets omfattning. Baserat på ditt val som nämns här är API-slutpunkterna för Learning Manager tillgängliga för ditt program. Om du till exempel väljer läsåtkomst till elevrollen är alla slutpunkter för Learning Manager-elevens API skrivskyddade för ditt program.
- Läs- och skrivåtkomst för administratörsrollen: Tillåter programmet att komma åt eller ändra data som administratör.
- Läsåtkomst/skrivåtkomst för elevroll: Tillåter att programmet får åtkomst till eller ändrar data för elever.
- Läs- och skrivåtkomst till xAPI: Gör att programmet kan komma åt och skicka Experience API-satser (xAPI).
-
For this account only?
- Yes - Om du väljer Ja visas inte programmet för andra kontoadministratörer.
- No - Om du väljer Nej kan andra kontoadministratörer också komma åt det här programmet, men de måste använda program-ID:t för att komma åt programmet. Program-ID genereras och visas i redigeringsläget för Learning Manager-program.
-
-
Välj Save för att registrera programmet.
- När du har registrerat programmet är det tillgängligt i listan över program som har skapats på kontot. Välj programmet så ser du följande utöver de tidigare angivna fälten:
- Program-ID: Detta är klient-ID:t. Detta ID talar om för Adobe Learning Manager vilket program som begär åtkomst. Det ingår i API-begäranden för att identifiera programmet.
- Programhemlighet: Detta används för att autentisera programmet och verifiera dess identitet under steg för tokenutbyte (till exempel vid begäran om en uppdateringstoken eller en åtkomsttoken).
Hämta en åtkomsttoken
Hämta auktoriseringskoden
När du har hämtat klient-ID:t och klienthemligheten använder du dem för att begära en åtkomsttoken som används för att autentisera API-anrop.
Börja flödet med auktoriseringskoden genom att lägga till följande URL i en webbläsare:
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
När användaren har auktoriserat programmet omdirigeras Adobe Learning Manager till angiven redirect_uri med en tillagd frågeparameter:
https://yourapp.com/callback?code=abc123xyz
En parameterkod läggs till tillsammans med omdirigerings-URI:n.
Hämta uppdateringstoken från kod
När du har hämtat POSTEN ska du använda valfritt API-verktyg och lägga till följande kodbegäran:
https://learningmanager.adobe.com/oauth/token
Text för begäran (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>
Svar
{
"access_token": "eyJhbGciOiJIUzI1...",
"refresh_token": "xTjlfz0jCk6gF1...",
"expires_in": 604800,
"token_type": "Bearer"
}
Använd access_token i auktoriseringsrubriken för att göra autentiserade API-begäranden.
Använd åtkomsttoken i ett API-anrop
Verifiera åtkomsttoken på följande sätt:
GET https://learningmanager.adobe.com/oauth/token/check?access_token=<access_token>
En åtkomsttoken är giltig i sju dagar. Efter sju dagar måste du generera en ny åtkomsttoken med hjälp av uppdateringstoken. Om du genererar en ny åtkomsttoken från uppdateringstoken medan en befintlig åtkomsttoken fortfarande är giltig, returneras den befintliga token.
Skaffa åtkomsttokens för testning och utveckling
När du arbetar med Adobe Learning Manager API:er behöver utvecklare en giltig OAuth 2.0-åtkomsttoken för att autentisera API-begäranden. Att generera denna token via standard-OAuth-flödet kan vara komplext och tidskrävande, särskilt för snabbtester, inlärning och utveckling. Adobe Learning Manager tillhandahåller ett tokengenereringsverktyg för att förenkla processen.
Detta verktyg är idealiskt under:
-
Koncepttest (POC)-versioner
-
Utveckling i ett tidigt skede
-
Felsöka problem med API-integrering
Dessa tokens är endast avsedda för personligt bruk under utvecklings- och felsökningsfaserna. Tänk på att testtoken ger åtkomst till dina Adobe Learning Manager-data och att det är viktigt att hantera dem på ett säkert sätt. Dela aldrig dina testtoken med andra, använd dem i produktionsprogram eller inkludera dem i offentliga koddatabaser. Behandla dem som lösenord för att säkerställa säkerheten för ditt konto och dina data.
-
Logga in på Adobe Learning Manager som integreringsadministratör.
-
Välj Developer Resources och sedan select Access Tokens for Testing and Development.
-
Skriv Client ID som du fick när du skapade ett program för att få OAuth-koden. Välj sedan Submit.
-
Lägg till Client ID och Client Secret för att få uppdateringstoken. Välj sedan Submit. OAuth är förifylld från föregående steg.
-
Lägg till klient-ID:t och klienthemligheten för att få åtkomsttoken. Välj sedan Submit.
-
Lägg till åtkomsttoken och välj Skicka för att få information om åtkomsttoken.
När du väljer Submit verifieras åtkomsttoken och du får följande JSON-objekt:
{
"access_token": "access token",
"refresh_token": "refresh token",
"user_role": "admin",
"account_id": "1234",
"user_id": "123456",
"expires_in": 604800
}
Som tidigare upphör åtkomsttoken för testning att gälla om sju dagar.
Använd ett API-verktyg för att testa slutpunkterna
Du kan använda valfritt API-testverktyg från tredje part, men vi använder Postman för att testa slutpunkterna. Exemplen i det här dokumentet använder Postman för att testa slutpunkterna.
-
Öppna Postman och skapa en ny förfrågan.
-
Välj fliken Auktorisering.
-
Ställ in autentiseringstypen till Bearer Token.
-
Klistra in den åtkomsttoken som du erhöll från föregående avsnitt i tokenfältet.
-
Lägg till följande på fliken Sidhuvuden.
- Nyckel: Acceptera
- Värde: application/json
-
Ange din API-slutpunkt i URL-fältet. Exempel: https://learningmanager.adobe.com/learningManager/api/v2/users
Mer information finns i Adobe Learning Manager API-referens. -
Välj Skicka för att göra API-begäran.
Typer av API:er
API för administratörer
Med Adobe Learning Manager Admin API kan administratörer automatisera och hantera utbildningsåtgärder i stor skala.
Med hjälp av Admin API:er kan utvecklare:
- Hantera användare och grupper: Skapa, uppdatera och ta bort användare eller tilldela grupper dem.
- Registrera elever: Automatisera registrering till kurser, utbildningsvägar eller certifieringar.
- Följ elevens framsteg: Hämta kurs-/modulförlopp, quizpoäng och slutförandestatus.
- Generera rapporter: Få tillgång till data om elevaktivitet, engagemang och prestanda.
- Hantera innehåll: Skapa och organisera kurser och utbildningsobjekt.
Mer information finns i Adobe Learning Manager API-referens.
Elevens API
Elevens API:er är designade för autentiserade användare (elever) och ger dig åtkomst till elevspecifik information. Dessa API:er tillåter uppgifter som:
- Komma åt en elevs kurser och framsteg
- Hämtar intjänade märken eller certifieringar
- Uppdaterar elevprofilinformation
- Visa kompetenser som är kopplade till slutförda kurser
Viktiga punkter:
- Dessa API:er kräver en autentiserad användartoken, vilket garanterar datasäkerhet och integritet.
- API:erna är avsedda för scenarier där användare är helt registrerade och inloggade i stället för anonyma eller delade användare.
Mer information finns i Adobe Learning Manager API-referens.
API-design och vanliga parametrar
API:erna ger utvecklare tillgång till viktiga Learning Manager-resurser som användare, kurser, färdigheter, certifieringar och utbildningsprogram. Den följer REST-principerna och använder HTTP-metoder (GET, POST, PUT, DELETE) för dataåtgärder.
Vanliga parametrar
Här är en kort förklaring av varje:
innefatta
Adobe Learning Manager API:er kan användas för att hämta användbar information när du skapar ett anpassat program eller ett fjärradministrerat LMS. API-slutpunkterna kan vidare inkluderas med ytterligare include-parametrar för att hämta den ytterligare information som gäller de data som tas emot som standard. Dessa relationer är datamodellrelationer, så när du ringer för att få användarinformation får du användarinformationen och relationen mellan chef-ID och Adobe Learning Manager-konto-ID. Med parametern include kan du extrahera ytterligare information tillsammans med användarinformation, till exempel chefsinformation och Adobe Learning Manager-kontoinformation, på ett detaljerat sätt.
Kort sagt används parametern include i API-anrop för att hämta relaterade (länkade) resurser tillsammans med den primära resursen i ett enda svar. Det är användbart när du vill få åtkomst till kapslade eller beroende data, till exempel moduler till en kurs eller kunskaper som är mappade till en elev, utan att göra separata API-anrop.
Viktiga fördelar:
- Minskar flera API-anrop: Undviker behovet att manuellt begära varje relaterad resurs.
- Förbättrar effektiviteten: Snabbare utveckling, mindre serverbelastning och snabbare dataåtergivning.
- Garanterar datakonsekvens: Hämtar alla relaterade data i en konsekvent ögonblicksbild.
Så här använder du parametern include
Lägg till parametern include i API-URL:en och ange de relaterade entiteterna som ska inkluderas.
Vanliga innehåller sökvägar
Exempel 1
Hämta informationen för en användare med hjälp av parametern userID i slutpunkten.
https://learningmanager.adobe.com/primeapi/v2/users/<userID>
GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>
I svaret kan du se att dataobjektet har en relation med kontot och användarens chef.
"relationships": {
"account": {
"data": {
"id": "1010",
"type": "account"
}
},
"manager": {
"data": {
"id": "3400476",
"type": "user"
}
}
}
Med parametern include i begäran kan du hämta detaljerad information om hanteraren enligt nedan:
GET https://learningmanager.adobe.com/primeapi/v2/users/<userid>?include=manager
Exempel 2
Om du vill hämta kursdetaljerna använder du parametern include i slutpunktsanropet. Följande slutpunkt får kursinformationen tillsammans med dess relationer.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>
Relationerna visas i svaret på följande sätt:
- instanser
- färdigheter
- författare
"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"
}
]
}
}
Andra relationer kan inkludera (finns inte i svaret ovan):
- förutsättningarLO
- additionalLO
- additionalResources
Om du vill få detaljerade data om instanserna och kunskaperna inkluderar du "instanser, färdigheter" i parametern include.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances,skills
Om du nu till exempel vill hämta mer data som är associerade med kursinstansen, till exempel loResources (kursmodulinformation), använder du loResources som ett kapslat include.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances.loResources
Dessutom kan du kombinera färdigheter och instanser med en kapslad include.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<courseID>?include=instances,instances.loResources,skills
Andra filter som ingår
fält
Ett API-objekts attribut och relationer kallas fält. Använd Fält som en parameter i API-anrop för att hämta specifika attribut från modellen. Utan parametern Fields hämtar API-anropet alla tillgängliga attribut.
I följande API-anrop hämtar till exempel fälten [skills]=name attributet name för enbart kompetensmodellen.
GET https://learningmanager.adobe.com/primeapi/v2/users/3400490/userSkills/3400490_1796_1?include=skillLevel.skill&fields[skill]=name
sidnumrering
API-sidnumrering är en teknik som används i API:er för att dela upp stora datauppsättningar i mindre, hanterbara segment, så kallade sidor, i stället för att returnera alla data i ett enda svar.
Sidnumreringen gör klienten och servern mindre, begränsar svarsstorleken för att undvika serverflaskhalsar eller är användbar för att visa data i tabeller eller visar en sida i taget.
Så här fungerar sidnumrering i Adobe Learning Manager API:er
Adobe Learning Manager API:er stöder sidnumrering via parametrar som:
- sida[gräns]: Antal poster per sida.
- sida[förskjutning]: Antal poster att hoppa över.
- sida[markör]: Peka på nästa resultatuppsättning. I stället för att använda förskjutningsbaserad sidnumrering (som hoppar över ett antal poster) använder markörbaserad sidnumrering en unik markör som returneras från API:et för att hämta nästa resultatsida.
Så här använder du sidnumrering i API
sida[gräns]
Medan https://learningmanager.adobe.com/primeapi/v2/users returnerar alla användare och relaterad information i ett enda anrop, begränsar du antalet resultat till det angivna värdet om du använder sidan[limit].
Använd följande API om du bara vill returnera fem användarposter i ett enda anrop:
GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5
sida[förskjutning]
Använd det här API-anropet för att returnera tre användarposter, hoppa över de första fem användarna och börja från den sjätte.
GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=3&page[offset]=5
sida[markör]
-
Börja med att begära den första sidan med en gräns på 5.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5
-
Kopiera markörvärdet från links.next och använd det i nästa begäran:
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" }
-
Skicka följande begäran:
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users?page[limit]=5&page[cursor]=3400482
Detta returnerar nästa uppsättning med 10 poster, med början efter det sista objektet från föregående sida.
filter
Med filterparametern kan du begränsa API-resultat baserat på ett eller flera fältvärden.
Adobe Learning Manager API:er tillhandahåller olika varianter av filterparametern för att begränsa svaren.
Mer information finns i Adobe Learning Manager API-referens.
I det här exemplet visas hur du filtrerar de hjälpmedel som en elev har registrerat sig till med hjälp av slutpunkten med filterparametern:
GET https://learningmanager.adobe.com/primeapi/v2/users/3400480/enrollments?filter.loTypes=jobAid
sort
Parametern sort används för att sortera API-resultat i stigande eller fallande ordning baserat på ett eller flera fält.
I Adobe Learning Manager finns olika sorteringsalternativ för att sortera API-svar. Mer information finns i Adobe Learning Manager API-referens.
Om du utökar det föregående exemplet sorterar du nu användarens registrering till utbildningsprogram efter datum som registrerats i stigande ordning.
GET https://learningmanager.adobe.com/primeapi/v2/users/3400480/enrollments?filter.lotypes=learningProgram&sort=dateEnrolled
Översikt över API-modeller
Med Adobe Learning Manager API:er kan utvecklare få tillgång till Learning Manager-objekt som RESTful-resurser. Varje API-slutpunkt representerar en resurs, vanligtvis en objektinstans som Badge, eller en samling av sådana objekt. Utvecklarna använder sedan HTTP-verb som PUT, GET, POST och DELETE för att utföra CRUD-åtgärder på dessa objekt (samlingar).
Elevens API:er och slutpunkter
Här är de viktigaste API-slutpunkterna för arbete med elevdata. Dessa API:er guidar utvecklare att interagera med elevinformation, hålla reda på framsteg, hantera registreringar och hämta kursinnehåll.
Hämta information om alla elever
Hämta elevinformation (namn, e-postadress, UUID, användarprofil och så vidare). Använd API:et för att lista alla elever i kontot.
GET https://learningmanager.adobe.com/primeapi/v2/users
Hämta information om en specifik elev
Om du vill visa en elevs profil efter ID använder du följande API för att ringa ett samtal.
GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>
Lista alla kurser, utbildningsprogram, arbetsstöd och certifieringar
Hämta information om alla utbildningsobjekt där eleven är registrerad, har slutfört eller har aktiverats av administratören.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects
Få information om ett specifikt utbildningsobjekt
Få detaljerad information om ett utbildningsobjekt. Den inkluderar datum då den skapades, publiceringsdatum, uppdateringsdatum och annan information.
GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<LearningObjectID>
Hämta en lista över kompetenser som är kopplade till kurser
Visa kompetenser som är tilldelade alla elever i kontot.
GET https://learningmanager.adobe.com/primeapi/v2/skills
Hämta information om kompetensnivå och utmärkelsetecken
Kontrollera elevernas framsteg i färdighetsbaserade inlärningsresor.
GET https://learningmanager.adobe.com/primeapi/v2/skills/<skillID>?include=levels
Lista över alla utmärkelsetecken som skapats för ett konto
Ring till följande slutpunkt för att hämta en lista över alla utmärkelsetecken som har skapats för ett konto i en organisation.
GET https://learningmanager.adobe.com/primeapi/v2/badges
Hämta information om ett utmärkelsetecken
Hämta detaljerad information om ett märke, inklusive namnet på märket, URL-adressen till märket och statusen för märket.
GET https://learningmanager.adobe.com/primeapi/v2/badges/<skillID>
Detta ger följande svar:
{
"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"
}
}
}
Andra exempel på API-användning
Skapa en användare
-
Använd slutpunkt:
code language-none POST https://learningmanager.adobe.com/primeapi/v2/users
Bearbetar attributen från API-brödtexten eller JSON-nyttolasten för att generera en användare och tillhandahåller sedan en användare med respektive användar-ID ifyllt.
-
Använd följande nyttolast som text:
code language-none { "data": { "type": "user", "attributes": { "email": "bob@example.com", "name": "Bob", "userType": "INTERNAL" } } }
Det finns tre obligatoriska attribut:
- e-postadress: användarens e-post-ID. Värdet måste vara unikt för alla användare.
- namn: Användarens namn.
- userType: För närvarande kan endast interna användare läggas till med denna slutpunkt. userType ska vara INTERNAL.
Du får följande 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"
}
}
}
}
}
Ta bort en användare
-
Hämta användar-ID för den användare du vill ta bort.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users/<userID>
-
Ring sedan följande när du använder DELETE:
code language-none DELETE https://learningmanager.adobe.com/primeapi/v2/users/<userID>
Ett 204-svar visas. En 204-svarskod indikerar att åtgärden lyckats utan något innehåll att returnera. Servern har bearbetat begäran men har inga data att tillhandahålla klienten.
Användarens status är nu DELETED efter att du har hämtat användarens information.
Uppdatera användarinformation
- Uppdatera användarinformation för användare med v2 API. Eleven kan ändra bio, uiLocale, contentLocale, timezone. För stora konton är detta asynkrona anrop. Det finns många andra användarattribut som kan uppdateras med denna API-slutpunkt. Använd slutpunkten /users/{id}, där id är användar-id för den användare vars information ska uppdateras.
PATCH https://learningmanager.adobe.com/primeapi/v2/users/<userID>
Lägg till följande i nyttolasten för begäran att uppdatera användaren med ID <userID>
från föregående avsnitt.
Ändra fält i nyttolasten.
{
"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"
}
}
}
}
}
När du har gjort samtalet uppdateras användarens uppgifter.
Skapa en extern profil
En extern profil avser en användarprofil som skapas för externa elever, vanligtvis enskilda personer som inte ingår i organisationens interna användarbas. Dessa elever kan inkludera kunder, partner, leverantörer, franchisetagare eller tillfälliga uppdragstagare som behöver tillgång till utbildnings- eller certifieringsprogram som erbjuds av organisationen.
-
Använd följande slutpunkt:
code language-none POST https://learningmanager.adobe.com/primeapi/v2/externalProfiles
-
Använd följande nyttolast som text:
{
"data": {
"type": "externalProfile",
"attributes": {
"name": "Jonas Albertson",
"expiry": "2027-12-31T18:29:59.000Z",
"managerEmail": "jonas@acme.com",
"seatLimit": 10
}
}
}
Nyttolasten har följande attribut:
- namn: Den externa användarens namn.
- Utgångsdatum: sista giltighetsdag (i ISO-8601-format) för användarens registrering i Adobe Learning Manager.
- managerEmail: e-postadressen till användarens chef för partnerorganisationen.
- seatLimit: Antalet platser som tillåts för partnerorganisationen.
När du har ringt får du följande svar:
{
"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"
}
}
}
Det innebär att den externa användaren har lagts till i Adobe Learning Manager. Skicka URL:en som är i svaret till användaren och använd den för att registrera sig på plattformen.
Extrahera en användarrapport med användar-ID och chefsinformation
En användarrapport kan hämtas direkt från administratörens användargränssnitt (Admin > Users > Internal). Rapporten returnerar dock inte användar-ID:et och tillhörande chefsinformation.
Använd Jobb-API:et för att hämta rapporten. Jobb-API:t hjälper till att generera rapporter, gruppåtgärder (registreringar eller tilldelningar av utmärkelsetecken), slutförda certifieringar eller generering av utmärkelsetecken.
Så här kan du hämta rapporten:
-
Lägg till följande nyttolast i jobb-API:et.
code language-none { "data": { "type": "job", "attributes": { "description": "description of your choice", "jobType": "generateUsers", "payload":{ "expandMetadata":true } } } }
-
Använd följande slutpunkt.
code language-none POST https://learningmanager.adobe.com/primeapi/v2/jobs
-
Kopiera jobbets ID från svaret.
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" } } } }
Jobb-ID:t 43118 i svaret.
-
När du har kopierat ID:t använder du ID:t i Job API för att hämta rapporten.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/jobs/43118
-
Kopiera S3-URL:en från svaret.
-
Klistra in webbadressen i webbläsaren. Webbläsaren uppmanar dig att spara eller öppna CSV-filen. Spara filen på din dator.
Den hämtade filen innehåller följande kolumner:
internalUserID, userEmail, customerDefiniedUniqueUserId, name, managerEmail, userType, state, excludeFromGamification, pointsEarned, profile, roller, dateCreated, lastLoginDate, dateDeleted, uiLocale, contentLocale, timeZoneCode, userSource, grupp, aktiva fält, metadata och lastSocialActivityDate.
Generera utmärkelsetecken med Jobb-API
-
Hämta en lista med utmärkelsetecken för en användare i organisationen. Använd följande slutpunkt:
code language-none GET https://learningmanager.adobe.com/primeapi/v2/users/3400476/userBadges
Var 3400476 är användar-ID:et.
-
Kopiera utmärkelsetecknet-ID från svaret. Till exempel är 3400476_759_COMPETENCY_1796_1 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" } } } }
-
Skapa en nyttolast och ange ID-bricka i nyttolasten. Ett exempel på nyttolast är följande:
code language-none { "data": { "type": "job", "attributes": { "description": "Acme Corp Badge", "jobType": "generateUserBadge", "payload": { "userBadgeId": "3400476_759_COMPETENCY_1796_1" } } } }
När du har ringt får du jobb-ID:t i svaret.
-
Ta jobb-ID från svaret och använd jobb-ID i följande slutpunkt för att genomföra samtalet.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/jobs/<jobsID>
-
Kopiera URL-adressen för märket från svaret och öppna URL-adressen i en webbläsare. Certifikatet hämtas som PDF.
Skapa användare i Adobe Learning Manager
Slutpunkten POST/användare hjälper dig att skapa en användare med hjälp av fjärradministrerat läge. Skapa användare med detaljerad information, som registreringsprocessen i det inbyggda användargränssnittet i Adobe Learning Manager.
Exempel:
POST https://learningmanager.adobe.com/primeapi/v2/users
Lägg till följande brödtext i begäran:
{
"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"
}
}
}
}
}
När du har ringt upp visas följande svar:
{
"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"
}
}
}
}
}
En ny användare läggs till i Adobe Learning Manager.
Skicka feedback om L1
-
Hämta elevens kurs, instans och registreringsdata. Använd följande slutpunkt:
code language-none GET /enrollments
-
Kontrollera om L1-feedback är aktiverad för kursinstansen.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/<loID>/instances/<loInstanceID>/l1Feedback
-
Skicka feedback om L1.
code language-none POST /enrollments/{id}/l1Feedback
Exempel på nödvändig nyttolast:
{
"data": {
"id": "course:7454218_10333537_11257863",
"type": "feedback",
"attributes": {
"questions": [
{
"answer": "8",
"questionId": "1",
"mandatory": true,
"questionType": "scaleTen"
}
],
"score": 80
}
}
}
Hämta information på modulnivå för en kurs
-
Hämta information om ett utbildningsobjekt per 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" } ] } } } }
-
Använd parametern include för att hämta följande:
a. Lista alla moduler för utbildningsobjektet.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/course:1171899?include=instances.loResources
b. Lista allt innehåll i modulerna.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/learningObjects/course:1171899?include=instances.loResources.resources
Kontrollera modulförlopp
-
Hämta utbildningsobjektet från katalogen med hjälp av kurs-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>
-
Hämta registreringsinformation för en elev med hjälp av registrerings-ID:t.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/enrollments/<enrollmentID>
Kopiera ID:t för utbildningsobjektresursgrad från svaret.
-
Använd ID:et i följande slutpunkt.
code language-none GET https://learningmanager.adobe.com/primeapi/v2/loResourceGrades/<courseResourceGradeID>
I svaret får du information om modulens förlopp.
Implementera personifiering av elever
När du implementerar ett fjärradministrerat LMS med Adobe Learning Manager som serverdel kan organisationer behöva supportpersonal som utger sig för att vara elever som felsöker eller får hjälp. Den API-drivna personifieringsmetoden garanterar säker åtkomst samtidigt som elevens inloggningsuppgifter skyddas och stöder sömlösa övergångar i sessionstillstånd.
Adobe Learning Manager underlättar elevpersonifiering i fjärradministrerade LMS-miljöer genom ett dedikerat API. Den här funktionen gör att supportpersonalen tillfälligt kan identifiera en elev, så att de kan diagnostisera problem, testa funktioner eller ge praktisk hjälp genom att simulera elevens upplevelse. Personifiering aktiveras med en cachelagrad åtkomsttoken för administratörer, som används för att programmatiskt generera en åtkomsttoken för elever. Denna process gör att systemet kan fungera som om det var inloggad som eleven.
Information om API-slutpunkt
POST /oauth/learnerToken
Exempel på fullständig URL
https://learningmanager.adobe.com/oauth/o/learnerToken?learner_email=foo@acme.com&force=false
Frågeparametrar:
- learner_email: (sträng) Elevens e-postadress för att uppträda.
- force: (boolean) Om en token ska tvångsgenereras om en sådan finns.
Text för begäran:
{
"client_id": "your-client-id",
"client_secret": "your-client-secret",
"refresh_token": "your-admin-refresh-token"
}
Exempelsvar:
{
"access_token": "generated-token",
"refresh_token": "new-refresh-token",
"user_role": "learner",
"account_id": "123456",
"user_id": "7891011",
"expires_in": 604800
}
Exempel på 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"
}'
Felkoder
När du arbetar med Adobe Learning Manager (Adobe Learning Manager) API:er kan utvecklare stöta på olika HTTP-felkoder vid förfrågningar. De här felen ger viktig feedback om vad som gick fel och hur du åtgärdar det. Om du förstår de här koderna kan utvecklare snabbt felsöka problem, förbättra API-tillförlitligheten och få smidigare integrationer. Följande tabell är en guide till vanliga HTTP-felkoder som returneras av Adobe Learning Manager API:er, tillsammans med förklaringar och vanliga scenarier där de inträffar. Det här avsnittet är viktigt för alla som skapar, testar eller felsöker program som ansluter till Adobe Learning Manager.
Den här innehållstypen krävs strikt för Adobe Learning Manager API:er.