Manual de desarrolladores de aplicaciones

Nota:

La API V1 de Captivate Prime ha dejado de utilizarse. Las API V1 dejarán de funcionar a partir del 28 de febrero de 2021. Es recomendable utilizar las API V2 para interactuar con Captivate Prime.

Información general

Adobe Captivate Prime es una solución de gestión del aprendizaje automatizada basada en la nube y centrada en el alumno. Los clientes pueden acceder a los recursos de Captivate Prime mediante programación a través de la API de Captivate Prime a fin de integrarla con otras aplicaciones empresariales. Asimismo, los socios de Adobe pueden utilizar la API para mejorar la propuesta de valor de Captivate Prime ampliando sus funciones o mediante su integración en otros servicios o aplicaciones.

Escenario de uso

Mediante la API de Captivate Prime, los desarrolladores pueden crear aplicaciones independientes que amplían las funciones de Captivate Prime o que integran esta solución en flujos de trabajo de aplicaciones empresariales. Puede desarrollar una aplicación web, un cliente de escritorio o una aplicación para dispositivos móviles con la tecnología que desee. Como desarrollador, puede acceder a los datos de la aplicación desde Captivate Prime. La implementación de la aplicación que desarrolle es externa a la plataforma Captivate Prime y tendrá control total sobre el ciclo de vida de desarrollo del software a medida que evolucione la aplicación. Por lo general, las aplicaciones las desarrolla una organización del cliente para su uso con la cuenta de Captivate Prime. Estas aplicaciones son privadas en esa organización de cliente específica. Además, los socios de Adobe pueden crear aplicaciones genéricas con la API de Captivate Prime, que pueden utilizar un gran conjunto de clientes de Captivate Prime.

API de Captivate Prime

La API de Captivate Prime se basa en los principios de REST y presenta elementos clave del modelo de objetos de Captivate Prime a los desarrolladores de aplicaciones mediante HTTP. Antes de conocer los detalles de los puntos finales de la API y los métodos HTTP, los desarrolladores pueden familiarizarse con los diferentes objetos de Captivate Prime, sus atributos y sus interrelaciones. Una vez que se conozcan los modelos, resultará útil tener nociones básicas sobre la estructura de las solicitudes y respuestas de la API y de algunos lenguajes de programación conocidos que se admiten de modo genérico en ella.

Para obtener información sobre los diferentes métodos y puntos finales de la API, consulte la documentación de la API de Captivate Prime.

Autenticación de API

Al escribir una aplicación que realiza llamadas de API a Prime, debe registrarla mediante la aplicación del administrador de integración. 

Las API de Captivate Prime utilizan el marco de OAuth 2.0 para autenticar y autorizar las aplicaciones cliente. 

Procedimiento

1. Configurar la aplicación 

Puede configurar la aplicación con el ID y el secreto de cliente para utilizar los puntos finales adecuados. Una vez que haya registrado la aplicación, puede obtener el ID y el secreto de cliente. Se debe utilizar "Get URL" en el navegador, ya que autentica a los usuarios de Captivate Prime mediante sus cuentas preconfiguradas, como SSO, Adobe ID, etc. 

GET https://captivateprime.adobe.com/oauth/o/authorize?client_id=<Introduzca su ID de cliente>&redirect_uri=<Introduzca una URL a la que redirigir>&state=<Cualquier dato de cadena>&scope=<uno o varios ámbitos separados por comas>&response_type=CODE.

Una vez completada correctamente la autenticación, el navegador redirige al URI de redirección indicado en la URL anterior. Se añade el parámetro code junto al URI de redirección.

2. Obtener token de actualización del código

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

Cuerpo de la solicitud POST:

client_id:<Introduzca su ID de cliente>y cliente_secret:<Introduzca su secreto de cliente>y code:<código del paso 1>

3. Obtener un token de acceso a partir del token de actualización

URL para obtener el token de acceso: 

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

Cuerpo de la solicitud POST:

client_id:<Introduzca su ID de cliente>y cliente_secret:<Introduzca su secreto de cliente>y refresh_token:<token de actualización>

URL para verificar los detalles del token de acceso

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

Limitación de uso

Un token de acceso es válido durante siete días. Después de un día, debe generar un nuevo token de acceso mediante el token de actualización. Si genera un nuevo token de acceso a partir del token de actualización mientras un token de acceso existente sigue siendo válido, se devuelve el token existente. 

A continuación, se describen algunos de los términos más utilizados en la API de Captivate Prime como referencia. 

Includes

Los desarrolladores pueden acceder a un único modelo de objetos de API y también a varios modelos asociados a ese modelo. Para acceder a los modelos relacionados posteriores, debe conocer la relación de cada modelo con otros modelos. El parámetro Includes permite a los desarrolladores acceder a los modelos dependientes. Puede utilizar la coma como separador para acceder a varios modelos. Para ver ejemplos de uso y obtener más información sobre Includes, consulte la sección sobre modelos de API de ejemplo de esta página. 

Solicitud de API

Las solicitudes de API se pueden realizar mediante una solicitud HTTP. En función del punto final y el método, el desarrollador puede elegir entre diversos verbos de HTTP, como GET, PUT, POST, DELETE, PATCH, etc. En algunas solicitudes, se pueden transferir parámetros de consulta. Al realizar una solicitud de un modelo de datos específico, el usuario también puede solicitar modelos relacionados, tal y como se describe en las especificaciones de la API JSON. La estructura de una solicitud API típica se describe en el uso del modelo de ejemplo.

Respuesta de API

Si un cliente realiza una solicitud de API, se obtiene un documento JSON según la especificación de API JSON. La respuesta también contiene el código de estado HTTP, que el desarrollador puede verificar para realizar los pasos siguientes adecuados en la lógica de la aplicación. La estructura de una respuesta de API típica se describe en el uso del modelo de ejemplo.

Errores

Cuando falla una solicitud de API, se obtiene una respuesta de error. El código de estado HTTP devuelto en la respuesta indica la naturaleza del error. Los códigos de error se representan con números para cada modelo en la referencia de API. 200, 204, 400 y 404 son algunos de los errores habituales representados en las API que indican problemas de acceso HTTP.  

Fields

Los atributos del objeto de API y sus relaciones se denominan de forma conjunta "Fields". Consulte la API JSON para obtener más información. Puede utilizar "Fields" como parámetro al realizar llamadas de API para obtener uno o más atributos específicos del modelo. Si no se utiliza el parámetro "Fields", la llamada de API obtiene todos los atributos disponibles del modelo. Por ejemplo, en la siguiente llamada de API, "fields[skill]=name" solo recopila el atributo de nombre del modelo de aptitud. 

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

Paginación

A veces, una solicitud de API proporciona una larga lista de objetos en la respuesta. En esos casos, el atributo de paginación permite al desarrollador obtener los resultados secuencialmente en varias páginas, en las que cada página contiene un intervalo de registros. Por ejemplo, el atributo de paginación en Captivate Prime permite establecer el número máximo de registros que se mostrarán en una página. Además, puede definir el valor del intervalo de registros que se mostrarán en la página. 

Ordenación

Se permite la ordenación en los modelos de API. En función del modelo, elija el tipo de ordenación que se aplicará a los resultados. La ordenación se puede aplicar de forma ascendente o descendente. Por ejemplo, si especifica sort=name, se trata de una ordenación ascendente por nombre. Si especifica sort=-name, se trata de una ordenación descendente por nombre. Consulte la especificación de API JSON para obtener más información

Ilustración de uso de API

Imaginemos una situación de ejemplo en la que un desarrollador desea obtener el nombre de la aptitud, la cantidad máxima de puntos asignada al nivel de aptitud y los puntos obtenidos por el alumno en esa aptitud.

Un modelo "userSkill" de las API de Captivate Prime consta de los atributos predeterminados: id, type, dateAchived, dateCreated y pointsEarned. Por lo tanto, cuando un desarrollador utiliza el método GET para adquirir información del modelo "userSkill", los datos actuales relativos a los atributos predeterminados se muestran en la salida de respuesta. 

Sin embargo, en este caso, el desarrollador desea obtener el nombre de la aptitud y los puntos de nivel de aptitud del usuario. La API de Captivate Prime permite acceder a esta información relacionada mediante campos de relación y parámetros "include". Los modelos asociados de "userSkill" se obtienen en la etiqueta de relaciones. Puede obtener información de cada uno de los modelos asociados llamándolos junto con el modelo "userSkill". Para obtener esta información, utilice el parámetro include con valores separados por puntos para cada uno de los modelos asociados. Puede utilizar la coma como separador para solicitar otro modelo como "user include=skillLevel.skill,course".

Llamada de API

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

Por ejemplo, "userId" puede ser 746783 y "userSkills id" puede ser 746783_4426_1. 

Respuesta de llamada de 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} } ] }

Modelos de Captivate Prime

La API de Captivate Prime permite que los desarrolladores accedan a los objetos de Captivate Prime como recursos RESTful. Cada punto final de la API representa un recurso, por lo general, una instancia de objeto como una insignia o una colección de esos objetos. Así, los desarrolladores utilizan verbos de HTTP como PUT, GET, POST y DELETE para efectuar operaciones CRUD en esos objetos (colecciones).

El siguiente diagrama representa los distintos elementos del Modelo de objetos de Captivate Prime de la API V1.

Modelo de objetos de la API V1
Modelo de objetos de la API V1

N.º de serie

Objeto de Captivate Prime

Descripción

1.      

user

El usuario es el modelo clave en Captivate Prime. Por lo general, los usuarios son los alumnos internos o externos de una organización que consumen objetos de aprendizaje. Sin embargo, pueden desempeñar otras funciones, como la de autor o responsable, junto con la función de alumno. El ID de usuario, el tipo y la dirección de correo electrónico son algunos de los atributos integrados. 

2.      

curso

El curso es uno de los objetos de aprendizaje admitidos en Captivate Prime y consta de uno o varios módulos. 

3.      

módulo

El módulo es un componente básico para crear objetos de aprendizaje en Captivate Prime. Los módulos pueden ser de cuatro tipos diferentes, como clase, clase virtual, actividad y ritmo personalizado. Utilice este modelo de módulo para obtener información sobre todos los módulos de una cuenta. 

4.      

certificación

La certificación se concede a los alumnos al finalizar con éxito los cursos. Se deben incluir cursos en la aplicación antes de utilizar las certificaciones. 

5.      

programa de aprendizaje

Los programas de aprendizaje son cursos diseñados de forma exclusiva que cumplen los requisitos de aprendizaje específicos de los usuarios. Por lo general, los programas de aprendizaje se utilizan para impulsar objetivos de aprendizaje que abarcan varios cursos individuales. 

6.      

insignia

La insignia es una muestra de los logros que obtienen los alumnos cuando alcanzan hitos específicos mientras avanzan en un curso. 

7.      

skill

El modelo de aptitudes consta de niveles y créditos. Los alumnos pueden adquirir aptitudes una vez completado el curso correspondiente. 

8.      

certificationEnrollment

Este modelo proporciona información sobre la inscripción de un usuario en una única certificación.

9.  

courseEnrollment

Este modelo proporciona información sobre la inscripción de un usuario en un único curso. 

10.  

courseInstance

Un curso puede tener una o varias instancias asociadas. Puede obtener la instancia del curso. 

11.  

courseSkill

Un modelo courseSkill especifica el progreso de una única aptitud que se consigue al completar un curso.

12.  

courseModule

Un modelo courseModule especifica cómo se incluye un módulo en un curso. Por ejemplo, si el módulo se utiliza para pruebas preliminares o para contenido.

13.  

learningProgramInstance

Un programa de aprendizaje puede constar de diversas instancias que imbuyen propiedades similares de un programa de aprendizaje o instancias personalizadas. 

14.  

ayuda de trabajo

La ayuda de trabajo es un contenido de aprendizaje al que pueden acceder los alumnos sin ningún criterio de inscripción o finalización. Puede obtener la fecha de actualización, el estado y la información de identificación, junto con sus modelos relacionados, como la versión de la ayuda de trabajo, los autores y el nivel de aptitud. 

15.  

jobAidVersion

La ayuda de trabajo puede tener una o varias versiones asociadas según el número de revisiones en el contenido y el número de cargas. Este modelo proporciona información de una única versión de ayuda de trabajo. 

16.  

learningProgramInstanceEnrollment

El programa de aprendizaje consta de una o varias instancias. Los alumnos pueden inscribirse en una instancia de programa de aprendizaje por sí mismos o asignados por el administrador. Este modelo proporciona información de la inscripción de un usuario en una única instancia de programa de aprendizaje. 

17.  

moduleVersion

Un módulo puede tener una o varias versiones en función de las cargas de contenido modificado. Utilice este modelo para obtener información específica sobre cualquier versión del módulo. 

18.  

skillLevel

Un nivel de aptitud consta de uno o varios cursos que se van a consumir para adquirir un nivel, junto con sus créditos asociados. 

19.  

userBadge

Relaciona una única insignia con un único usuario. Contiene información como, por ejemplo, cuándo se logró, assertionUrl, etc. 

20.  

userSkill

Indica el porcentaje de una única aptitud que ha alcanzado un solo alumno.

A continuación, se muestran los distintos elementos del diagrama de clases de Captivate Prime de la API V2.

Diagrama de clases de API V2
Diagrama de clases de API V2

Objeto de Captivate Prime Descripción
account Engloba la información de un cliente de Prime.
badge La insignia es una muestra de los logros que obtienen los alumnos cuando alcanzan hitos específicos mientras avanzan en un curso. 
catalog El catálogo es una colección de objetos de aprendizaje.
user El usuario es el modelo clave en Captivate Prime. Por lo general, los usuarios son los alumnos internos o externos de una organización que consumen objetos de aprendizaje. Sin embargo, pueden desempeñar otras funciones, como la de autor o responsable, junto con la función de alumno. El ID de usuario, el tipo y la dirección de correo electrónico son algunos de los atributos integrados. 
resource Se utiliza para modelar cada recurso de contenido que un módulo busca englobar. Todos los recursos englobados enun loResourceson equivalentes en términos del objetivo de aprendizaje, pero difieren entre sí en términos de tipo de entrega o configuración regional del contenido.
userNotification Este modelo contiene información de notificación relativa a un alumno.
userSkill Indica el porcentaje de una única aptitud que ha alcanzado un solo alumno.
userBadge Relaciona una única insigniaconun solo usuario. Contiene detalles, como el momento en que se logró,assertionUrl,etc. 
skill El modelo de aptitudes consta de niveles y créditos. Los alumnos pueden adquirir aptitudes una vez completado el curso correspondiente. 
skillLevel Un nivel de aptitud consta de uno o varios cursos que se van a consumir para adquirir un nivel, junto con sus créditos asociados. 
learningObject Un objeto de aprendizaje es una abstracción de varios tipos de objetos en los que los usuarios pueden inscribirse y con los que pueden aprender. Prime presenta actualmente cuatro tipos de objetos de aprendizaje: curso, certificación, programas de aprendizajeyayuda de trabajo.
learningObjectInstance
Una instancia específica de un objeto de aprendizaje.
learningObjectResource Equivale al concepto demódulo. Un curso está compuesto por unoomás módulos. En Captivate Prime, un módulo se puede entregar de diversas formas equivalentes. Por lo tanto,loResourcebásicamente engloba esos recursos equivalentes.
loResourceGrade
Engloba el resultado del usuario que consume un recurso específico en el contexto de un objeto de aprendizaje en el que está inscrito. Incluye información como, por ejemplo, el tiempo dedicado porel usuarioen el recurso, el porcentaje de progreso realizado por el usuario, el estado de aprobado/suspenso y la puntuación obtenida por el usuario en cualquier prueba asociada.
calendar
Un objeto de calendario es una lista delos próximos cursospresenciales o de clase virtual en los que puede inscribirse el usuario.
l1FeedbackInfo
Los comentarios de L1 engloban las respuestas proporcionadas por un alumno para las preguntas de comentarios asociadas a los objetos de aprendizaje. Por lo general, esta información se recopila una vez que el usuario ha completado un objeto de aprendizaje si se ha configurado la recopilación de esa información de los alumnos.
enrollment
Esta abstracción engloba los detalles relativos a la transacción que representan la asignación de un usuario específico a una determinada instancia de objeto de aprendizaje.

Proceso de desarrollo de aplicaciones

Requisitos previos

Como desarrollador, debe crear una cuenta de prueba en Captivate Prime para poder tener acceso completo a todas las funciones de esa cuenta. Asimismo, para poder escribir una aplicación, el desarrollador debe crear varios usuarios y cursos, y lograr que la cuenta tenga un estado razonable para que la aplicación que se desarrolla tenga acceso a datos de ejemplo.

Crear el ID y el secreto de cliente

  1. En el inicio de sesión del administrador de integración, haga clic en Aplicaciones en el panel izquierdo. 

  2. Haga clic en Registrar en la esquina superior derecha de la página para registrar los detalles de la aplicación. Aparece la página Registro. 

    Registrar un nuevo solicitante
    Registrar un nuevo solicitante

    Es obligatorio rellenar todos los campos de esta página. 

    Nombre de la aplicación: introduzca el nombre de la aplicación. No es obligatorio usar el mismo nombre de aplicación; puede ser cualquier nombre válido. 

    URL: si conoce la dirección URL exacta en la que se aloja la aplicación, puede especificarla. Si no lo sabe, puede indicar la URL de su empresa. El nombre de URL válido es obligatorio en este campo. 

    Dominios de redirección: introduzca el nombre de dominio de la aplicación a la que desea que se redirija la aplicación de Captivate Prime después de la autenticación de OAuth. Puede mencionar varias direcciones URL aquí, pero debe utilizar direcciones URL válidas, como http://google.com, http://yahoo.com, etc. 

    Descripción: introduzca una breve descripción de la aplicación. 

    Ámbitos: elija una de las cuatro opciones disponibles para definir el ámbito de la aplicación. En función de su elección, los puntos finales de la API de Captivate Prime están accesibles para la aplicación. Por ejemplo, si elige Acceso de lectura de la función de alumno, todos los puntos finales de la API de alumno de Captivate Prime solo estarán accesibles en modo de solo lectura para la aplicación. 

    ¿Solo para esta cuenta? 
    : si elige Sí, la aplicación no estará visible para otros administradores de cuentas.
    No: si elige No, otros administradores de cuentas también pueden acceder a esta aplicación, pero deben utilizar el ID de aplicación para acceder a ella. El ID de aplicación se genera y se muestra en el modo de edición de aplicaciones de Captivate Prime. 

    Nota:

    Si elige Acceso de lectura y escritura de la función de admin. como ámbito al registrar la aplicación y elige Acceso de lectura de la función de admin. al crear las API, podrá seguir teniendo acceso de escritura en la aplicación, ya que el ámbito de registro de la aplicación sustituye al flujo de trabajo de autorización. 

  3. Haga clic en Registrar en la esquina superior derecha después de completar la información de la página de registro.

Desarrollo y prueba de aplicaciones

Los desarrolladores pueden utilizar la API de Captivate Prime para crear cualquier aplicación. Estos deben asegurarse de que sus cuentas incluyan algunos usuarios y cursos válidos. Pueden crear algunos usuarios y cursos ficticios y simular actividad en la cuenta de prueba para que puedan probar la funcionalidad de la aplicación.

Implementación de aplicaciones

Es recomendable que el administrador de Captivate Prime o un administrador de integración de la cuenta de producción asuman la responsabilidad de facilitar la aplicación a los usuarios de su organización. Una vez que la aplicación se haya probado y se considere lista para la producción, informe al administrador de la cuenta de producción. Lo ideal es que los administradores generen un nuevo ID y secreto de cliente para la aplicación en la cuenta de producción y realicen los pasos necesarios para incorporarlos en la aplicación de forma segura. El procedimiento real de implementación de aplicaciones varía de una empresa a otra y el administrador de Captivate Prime de su organización debe obtener asistencia del departamento de TI/SI de su organización para completar la implementación.

Aprobación de aplicaciones externas

Puede añadir aplicaciones externas. Para ello, haga clic en Aprobar en la esquina superior derecha de la página Aplicaciones. Indique el ID de la aplicación externa y haga clic en Guardar.

Añadir un solicitante externo
Añadir un solicitante externo

Preguntas más frecuentes

1. ¿Captivate Prime incluye una integración de comercio electrónico?

Adobe Captivate Prime no incluye una integración de comercio electrónico. Sin embargo, proporcionamos API para que pueda crear su propio LMS sin encabezado e implementar funciones de comercio electrónico. 

Logotipo de Adobe

Inicia sesión en tu cuenta