Manuel du développeur d’applications

Attention :

Les programmes d’apprentissage Captivate Prime sont renommés « Parcours d’apprentissage ». Cette modification se produit immédiatement après la version d’octobre 2021 et la terminologie du parcours d’apprentissage est reflétée pour tous les rôles.

Remarque :

L’API Captivate Prime V1 est désormais obsolète. Les API V1 cesseront de fonctionner à partir du 28 février 2021. Nous vous recommandons d’utiliser les API V2 pour interagir avec Captivate Prime.

Présentation

Adobe Captivate Prime est une solution de gestion d’apprentissage en libre service dédiée aux élèves et hébergée sur le cloud. Les clients peuvent accéder aux ressources de Captivate Prime par programmation à l’aide de l’API Captivate Prime pour les intégrer à d’autres applications d’entreprise. L’API peut également être utilisée par les partenaires Adobe pour renforcer la proposition de valeur de Captivate Prime en étendant ses fonctionnalités ou en les intégrant à d’autres applications ou services.

Scénario d’utilisation

En utilisant l’API Captivate Prime, les développeurs peuvent créer des applications autonomes qui étendent la fonctionnalité Captivate Prime ou intègrent Captivate Prime à d’autres flux de travail d’applications d’entreprise. Vous pouvez développer une application Web, un client de bureau ou une application mobile en utilisant la technologie de votre choix. En tant que développeur, vous pouvez accéder aux données de votre application depuis Captivate Prime.Le déploiement de l’application que vous développez est externe à la plate-forme Captivate Prime et vous avez un contrôle total sur le cycle de vie du développement logiciel au fur et à mesure de l’évolution de l’application. Les applications sont généralement développées par une organisation de client pour être utilisées avec leur compte Captivate Prime, et ces applications sont privées pour cette organisation client spécifique. En outre, les partenaires Adobe peuvent créer des applications génériques avec l’API Captivate Prime, qui peut être utilisée par un grand nombre de clients Captivate Prime.

API Captivate Prime

L’API Captivate Prime est basée sur des principes REST et expose les éléments clés du modèle d’objet Captivate Prime aux développeurs d’applications via HTTP. Avant de connaître les détails des points de terminaison API et des méthodes HTTP, les développeurs peuvent se familiariser avec les différents objets Captivate Prime, leurs attributs et leurs relations. Une fois les modèles bien compris, il est utile de bien cerner la structure des demandes et des réponses d’API et de bien comprendre quelques termes courants de programmation que nous utilisons de manière générique dans l’ensemble de l’API.

Pour plus d’informations sur les points de terminaison API et les méthodes, reportez-vous à la documentation sur l’API Captivate Prime.

Authentification API

Lorsque vous écrivez une application qui effectue des appels d’API à Prime, vous devez enregistrer votre application à l’aide de l’application Administrateur d’intégration. 

Les API Captivate Prime utilisent l’infrastructure OAuth 2.0 pour authentifier et autoriser vos applications client. 

Procédure

1. Configuration de votre application 

Vous pouvez configurer votre application avec l’ID client et le secret client pour utiliser les points de terminaison appropriés. Une fois votre application enregistrée, vous pouvez obtenir le clientId et le clientSecret. Get URL doit être utilisé dans le navigateur car il authentifie les utilisateurs de Captivate Prime à l’aide de leurs comptes préconfigurés tels que SSO, Adobe ID, etc. 

GET https://captivateprime.adobe.com/oauth/o/authorize?client_id=<Entrez votre ID de client>&redirect_uri=<Saisissez une URL de redirection>&state=<toutes données de chaîne>&scope=<une ou plusieurs portées séparées par des virgules>&response_type = CODE.

Une fois l’authentification réussie, votre navigateur se redirige vers l’URI de redirection de l’URL ci-dessus. Un code de paramètre est ajouté avec l’URI de redirection.

2. Obtenir le jeton d’actualisation à partir du code

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

Corps de la demande de publication :

client_id:<entrez votre ID de client>& client_secret:<entrez votre secret de client>& code:<code de l’étape 1>

3.Obtenir un jeton d’accès à partir du jeton d’actualisation

URL pour obtenir le jeton d’accès : 

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

Corps de la demande de publication :

client_id:<entrez votre ID de client>& client_secret:<entrez votre secret de client>& refresh_token:<jeton d’actualisation>

URL de vérification des détails du jeton d’accès

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

Limitation d’utilisation

Un jeton d’accès est valide pendant sept jours. Après une journée, vous devez générer un nouveau jeton d’accès à l’aide du jeton d’actualisation. Si vous générez un nouveau jeton d’accès à partir du jeton d’actualisation alors qu’un jeton d’accès existant est toujours valide, le jeton existant est renvoyé. 

Certains termes fréquemment utilisés dans l’API Captivate Prime sont expliqués ci-dessous pour référence. 

Inclut

Les développeurs peuvent accéder à un seul modèle d’objet API et à plusieurs modèles associés à ce modèle. Pour accéder aux modèles connexes suivants, vous devez comprendre la relation de chaque modèle avec d’autres modèles. Le paramètre Includes permet aux développeurs d’accéder aux modèles dépendants. Vous pouvez utiliser un séparateur de virgules pour accéder à plusieurs modèles. Pour des exemples et plus d’informations sur includes, reportez-vous à la section relative au modèle d’API de cette page. 

Demande d’API

Les demandes d’API peuvent être faites à l’aide d’une requête HTTP. Selon le point de terminaison et le développeur de méthodes, vous avez le choix entre divers verbes HTTP, tels que GET, PUT, POST, DELETE, PATCH, etc. Pour certaines requêtes, les paramètres de requête peuvent être transmis. Lors de la création d’une requête pour un modèle de données spécifique, l’utilisateur peut également demander des modèles associés, comme décrit dans les spécifications de l’API JSON. La structure d’une demande d’API typique est décrite dans l’exemple d’utilisation du modèle.

Réponse de l’API

Lorsqu’une demande d’API est faite par un client, un document SON est obtenu conformément à la spécification de l’API JSON. La réponse contient également le code d’état HTTP, que le développeur peut vérifier pour effectuer les prochaines étapes appropriées dans sa logique d’application. La structure d’une réponse d’API typique est décrite dans l’exemple d’utilisation du modèle.

Erreurs

Lorsqu’une demande d’API échoue, une réponse Erreur est obtenue. Le code d’état HTTP renvoyé dans la réponse indique la nature de l’erreur. Les codes d’erreur sont représentés avec des numéros pour chaque modèle dans la référence API. 200, 204, 400 et 404 font partie des erreurs courantes représentées dans les API indiquant les problèmes d’accès HTTP.  

Champs

Les attributs de l’objet API et ses relations sont appelés collectivement Champs. Reportez-vous à l’API JSON pour plus d’informations. Vous pouvez utiliser Champs en tant que paramètre lors de la création d’appels d’API pour extraire un ou plusieurs attributs spécifiques du modèle. En l’absence du paramètre Champs, l’appel API extrait tous les attributs disponibles du modèle. Par exemple, dans l’appel d’API suivant, fields [skill] = name récupère l’attribut name du modèle de compétence uniquement. 

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

Pagination

Parfois, une requête API entraîne une longue liste d’objets à retourner dans la réponse. Dans de tels cas, l’attribut de pagination permet au développeur d’extraire les résultats séquentiellement en termes de pages multiples, chaque page contenant une série d’enregistrements. Par exemple, l’attribut de pagination dans Captivate Prime vous permet de définir le nombre maximal d’enregistrements à afficher dans une page. En outre, vous pouvez définir la valeur de plage des enregistrements à afficher sur la page. 

Tri

Le tri est autorisé dans les modèles d’API. Sur la base du modèle, choisissez le type de tri à appliquer pour les résultats. Le tri peut être appliqué dans l’ordre croissant ou décroissant. Par exemple, si vous spécifiez sort=name, il s’agit alors d’un tri croissant par nom. Si vous spécifiez sort=-name, il s’agit alors d’un tri décroissant par nom. Reportez-vous aux spécifications de l’API JSON pour plus d’informations

Illustration d’utilisation de l’API

Imaginons qu’un développeur souhaite obtenir le nom de la compétence, les points maximum attribués pour le niveau de compétence et les points gagnés par l’apprenant pour cette compétence.

Un modèle userSkill dans les API Captivate Prime est constitué des attributs par défaut suivants : id, type, dateAchieved, dateCreated, pointsEarned. Ainsi, lorsqu’un développeur utilise la méthode GET pour acquérir des détails du modèle userSkill, les données actuelles relatives aux attributs par défaut sont affichées dans la sortie de réponse. 

Mais, dans ce scénario, le développeur veut obtenir le nom de la compétence et les points de niveau de compétence pour l’utilisateur. L’API Captivate Prime vous permet d’accéder à ces informations associées à l’aide de champs de relation et d’inclure des paramètres. Les modèles associés à userSkill sont obtenus dans la balise de relations. Vous pouvez obtenir les détails de chaque modèle associé en appelant ces modèles avec userSkill. Pour obtenir ces informations, utilisez le paramètre include avec des valeurs séparées par des points pour chacun des modèles associés.Vous pouvez utiliser une virgule comme séparateur pour demander un autre modèle comme user include=skillLevel.skill,course

Appel API

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

Par exemple userId peut être 746783 et userSkills id 746783_4426_1. 

Réponse de l’appel API

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

Modèles Captivate Prime

L’API Captivate Prime permet aux développeurs d’accéder aux objets Captivate Prime en tant que ressources RESTful. Chaque point de terminaison de l’API représente une ressource. Il s’agit généralement d’une instance d’objet comme Badge ou un ensemble de ces objets. Les développeurs utilisent ensuite les verbes HTTP tels que PUT, GET, POST et DELETE pour effectuer des opérations CRUD sur ces objets (collections).

Le schéma suivant représente les différents éléments du modèle d’objet Captivate Prime dans l’API V1.

Modèle d’objet API V1
Modèle d’objet API V1

Numéro de série

Objet Captivate Prime

Description

1.      

user

L’utilisateur est le modèle principal de Captivate Prime. Les utilisateurs sont généralement les apprenants internes ou externes d’une organisation qui utilisent des objets d’apprentissage. Cependant, ils peuvent jouer d’autres rôles tels que celui de l’auteur et du responsable outre le rôle de l’élève. L’ID de l’utilisateur, le type, le courrier électronique sont quelques-uns des attributs en ligne. 

2.      

course

Le cours est l’un des objets d’apprentissage pris en charge dans Captivate Prime, qui composé d’un ou de plusieurs modules. 

3.      

module

Le module est un bloc constitution pour créer des objets d’apprentissage dans Captivate Prime. Les modules présentent quatre types différents : la salle de classe, la salle de classe virtuelle, l’activité et l’auto-apprentissage. Utilisez ce modèle de module pour obtenir les détails de tous les modules d’un compte. 

4.      

certification

La certification est accordée aux élèves en fonction de la réussite des cours. Des cours sont requis dans l’application avant d’utiliser les certifications. 

5.      

learning program

Les programmes d’apprentissage sont des cours conçus de manière unique qui répondent aux besoins d’apprentissage spécifiques des utilisateurs. Généralement, les programmes d’apprentissage sont utilisés pour atteindre des objectifs d’apprentissage couvrant des cours individuels. 

6.      

badge

Le badge constitue une preuve de réussite que les élèves obtiennent lorsqu’ils atteignent des étapes spécifiques à mesure qu’ils progressent dans un cours. 

7.      

skill

Le modèle de compétences se compose de niveaux et de crédits. Les compétences peuvent être acquises par les élèves après la fin du cours concerné. 

8.      

certificationEnrollment

Ce modèle fournit des informations sur l’inscription d’un utilisateur à une certification.

9.  

courseEnrollment

Ce modèle fournit des informations sur l’inscription d’un utilisateur à un cours. 

10.  

courseInstance

Un cours peut comporter une ou plusieurs instances associées. Vous pouvez obtenir une instance de cours 

11.  

courseSkill

Un modèle courseSkill spécifie la progression d’une compétence obtenue en terminant un cours.

12.  

courseModule

Un modèle courseModule spécifie comment un module est inclus dans un cours. Par exemple, si le module est utilisé pour un test préliminaire ou pour du contenu.

13.  

learningProgramInstance

Un programme d’apprentissage peut comporter plusieurs instances assimilant des propriétés similaires d’un programme d’apprentissage ou d’instances personnalisées. 

14.  

job aid

L’assistance à la tâche est un contenu d’apprentissage accessible aux élèves sans aucun critère d’inscription ou d’achèvement de cours. Vous pouvez récupérer la date, l’état, les informations d’identification mis à jour avec ses modèles connexes tels que la version de l’assistance à la tâche, les auteurs et le niveau de compétence. 

15.  

jobAidVersion

L’assistance à la tâche peut avoir une ou plusieurs versions associées en fonction des révisions de contenu et du nombre de téléchargements. Ce modèle fournit des détails sur une seule version d’assistance à la tâche. 

16.  

learningProgramInstanceEnrollment

Le programme d’apprentissage comprend une ou plusieurs instances. Les élèves peuvent s’inscrire eux-mêmes à une instance de programme d’apprentissage ou être affectés par un administrateur. Ce modèle fournit des informations sur l’inscription d’un utilisateur à une instance de programme d’apprentissage. 

17.  

moduleVersion

Un module peut avoir une ou plusieurs versions basées sur ses téléchargements de contenu révisé. Utilisez ce modèle pour obtenir des informations spécifiques sur une version de module. 

18.  

skillLevel

Un niveau de compétence comprend un ou plusieurs cours auxquels assister afin d’acquérir un niveau avec ses crédits associés. 

19.  

userBadge

UserBadge met en relation un badge avec un utilisateur. Il contient des informations telles que la date d’obtention, assertionUrl, etc. 

20.  

userSkill

UserSkill indique le niveau de compétence atteint par un utilisateur.

Voici les différents éléments du schéma de classe de modèle d’objet Captivate Prime dans l’API V2.

Schéma de classe de l’API V2
Schéma de classe de l’API V2

Objet Captivate Prime Description
account Encapsule les détails d’un client principal.
badge Le badge constitue une preuve de réussite que les élèves obtiennent lorsqu’ils atteignent des étapes spécifiques à mesure qu’ils progressent dans un cours. 
catalog Un catalogue est une collection d’objets de formation.
user L’utilisateur est le modèle principal de Captivate Prime. Les utilisateurs sont généralement les apprenants internes ou externes d’une organisation qui utilisent des objets d’apprentissage. Cependant, ils peuvent jouer d’autres rôles tels que celui de l’auteur et du responsable outre le rôle de l’élève. L’ID de l’utilisateur, le type, le courrier électronique sont quelques-uns des attributs en ligne. 
resource Cet élément est utilisé pour modéliser chaque ressource de contenu qu’un module cherche à encapsuler. Toutes les ressources encapsulées dansun élément loResourcesont équivalentes en termes d’objectif d’apprentissage, mais elles diffèrent les uns des autres en termes de type de livraison ou de paramètres régionaux de contenu.
userNotification Ce modèle contient des informations de notification relatives à un élève.
userSkill UserSkill indique le niveau de compétence atteint par un utilisateur.
userBadge UserBadge met en relation un badgeavecun utilisateur. Il contient des informations telles que la date d’obtention,assertionUrletc. 
skill Le modèle de compétences se compose de niveaux et de crédits. Les compétences peuvent être acquises par les élèves après la fin du cours concerné. 
skillLevel Un niveau de compétence comprend un ou plusieurs cours auxquels assister afin d’acquérir un niveau avec ses crédits associés. 
learningObject Un objet d’apprentissage est une abstraction pour différents types d’objets auxquels les utilisateurs peuvent s’inscrire et desquels ils peuvent apprendre. Actuellement, Prime présente les quatre types d’objets d’apprentissage : Cours, Certification, Programme d’apprentissageetAssistance à la tâche.
learningObjectInstance
Instance spécifique d’un objet d’apprentissage.
learningObjectResource Cet élément équivaut au concept demodule. Un cours se compose d’un moduleparmid’autres. Dans Prime, un module peut être fourni de diverses manières équivalentes. Par conséquent, l’élémentloResourceencapsule essentiellement toutes ces ressources équivalentes.
loResourceGrade
Cet objet encapsule le résultat de l’utilisateur qui consomme une ressource spécifique dans le contexte d’un objet d’apprentissage auquel il est inscrit. Il contient des informations telles que la durée passée parutilisateurdans la ressource, le pourcentage de progression réalisé par l’utilisateur, l’état réussite/échec et le score obtenu par l’utilisateur dans tout quiz associé.
calendar
Un objet de calendrier est une liste desalles de classe à venirou de cours en salle de classe virtuelle auxquels l’utilisateur peut s’inscrire.
l1FeedbackInfo
Le retour d’informations L1 encapsule les réponses fournies par un élève aux questions de retour d’informations associées à des objets d’apprentissage. En règle générale, il est collecté après que l’utilisateur a terminé un objet d’apprentissage, s’il a été configuré pour collecter ces informations auprès des élèves.
enrollment
Cette abstraction encapsule les détails relatifs à la transaction représentant l’affectation d’un utilisateur spécifique à une instance d’objet d’apprentissage spécifique.

Processus de développement de l’application

Prérequis

En tant que développeur, vous devez créer un compte d’évaluation sur Prime, afin de pouvoir bénéficier d’un accès complet à tous les rôles dans ce compte. Pour pouvoir créer une application, le développeur doit également créer certains utilisateurs et cours et obtenir un état satisfaisant pour le compte, de façon à ce que l’application en cours de développement puisse avoir accès à des données factices.

Créer l’ID et le secret client

  1. Sur la page de connexion Administrateur d’intégration, cliquez sur Applications dans le volet de gauche. 

  2. Cliquez sur Enregistrer dans le coin supérieur droit de la page pour enregistrer les détails de votre application. La page d’inscription apparaît. 

    Enregistrer un nouveau candidat
    Enregistrer un nouveau candidat

    Il est obligatoire de renseigner tous les champs de cette page. 

    Nom de l’application : saisissez le nom de votre application. Il n’est pas obligatoire d’utiliser le même nom d’application, il peut s’agir de n’importe quel nom valide. 

    URL : si vous connaissez l’URL exacte où l’application est hébergée, vous pouvez l’indiquer. Si vous ne disposez pas de cette URL, vous pouvez indiquer l’URL de votre entreprise. Un nom d’URL valide est obligatoire dans ce champ. 

    Rediriger les domaines : saisissez le nom de domaine de l’application vers laquelle vous souhaitez que l’application Captivate Prime redirige après l’authentification OAuth. Vous pouvez indiquer plusieurs URL ici, mais vous devez utiliser des URL valides telles que http://google.com, http://yahoo.com, etc. 

    Description : saisissez une description brève de votre application. 

    Étendues : choisissez l’une des quatre options disponibles pour définir l’étendue de votre application. En fonction de votre choix indiqué ici, le point de terminaison de l’API Captivate Prime est accessible pour votre application. Par exemple, si vous avez choisi Accès lecture du rôle de l’élève, tous les points de terminaison de l’API de l’élève Captivate Prime sont accessibles en lecture seule sur votre application. 

    Uniquement pour ce compte ? 
    Oui : si vous choisissez Oui, l’application n’est pas visible pour les autres administrateurs de compte.
    Non : si vous choisissez Non, les autres administrateurs de compte peuvent également accéder à cette application, mais ils doivent utiliser l’identifiant de l’application pour y accéder. L’identifiant de l’application est généré et affiché dans le mode Édition de l’application Captivate Prime. 

    Remarque :

    Si vous choisissez Accès lecture et écriture du rôle de l’administrateur en tant qu’étendue lors de l’enregistrement de l’application et choisissez l’option Accès lecture du rôle de l’administrateur  lors de la création des API, vous pouvez toujours avoir un accès en écriture pour l’application car l’étendue de l’enregistrement de celle-ci remplace le processus d’autorisation. 

  3. Cliquez sur Enregistrer dans le coin supérieur droit après avoir rempli les détails dans la page d’inscription.

Développement et test d’applications

L’API Captivate Prime peut être utilisée par les développeurs pour créer n’importe quelle application. Les développeurs doivent s’assurer que leurs comptes disposent d’utilisateurs et de cours valides. Ils peuvent créer quelques utilisateurs et cours fictifs et simuler une activité dans le compte d’essai afin qu’ils puissent tester le fonctionnement de l’application.

Déploiement de l’application

Nous recommandons à l’administrateur Captivate Prime ou à un administrateur d’intégration du compte de production de prendre en charge la mise à disposition de l’application aux utilisateurs de leur organisation. Une fois que l’application a été testée et considérée comme prête pour la production, informez l’administrateur du compte de production. Dans l’idéal, les administrateurs veulent générer un nouveau client-id et un nouveau client-secret pour l’application dans le compte de production et effectuer les étapes nécessaires pour les intégrer de manière sécurisée. La procédure de déploiement des applications varie d’une entreprise à l’autre et l’administrateur Captivate Prime de votre organisation doit collaborer avec le département informatique de votre organisation pour terminer le déploiement.

Approbation des applications externes

Vous pouvez ajouter des applications externes en cliquant sur Approuver dans l’angle supérieur droit de la page Applications. Indiquez l’ID de l’application externe et cliquez sur Enregistrer.

Ajouter un demandeur externe
Ajouter un demandeur externe

Forum aux questions

1. Captivate Prime offre-t-il une intégration pour le commerce électronique ?

Adobe Captivate Prime n’offre pas d’intégration pour le commerce électronique. Cependant, nous fournissons des API afin que vous puissiez créer votre propre système de gestion de l’apprentissage (LMS) sans interface utilisateur et mettre en œuvre des fonctionnalités pour le commerce électronique. 

Logo Adobe

Accéder à votre compte