Observação:

A API V1 do Captivate Prime foi descontinuada. As APIs V1 deixarão de funcionar a partir de fevereiro de 2021. Recomendamos que você use as APIs V2 de agora em diante.

Visão geral

O Adobe Captivate Prime é uma solução de gerenciamento de aprendizado de autosserviço centrada no aluno e hospedada na nuvem. Os clientes podem acessar os recursos do Captivate Prime de forma programáda usando a API do Captivate Prime para integrá-los a outros aplicativos corporativos. A API também pode ser usada por parceiros da Adobe para aprimorar a proposta de valor do Captivate Prime, estendendo a sua funcionalidade ou integrando-a a outros aplicativos ou serviços.

Cenário de uso

Usando a API do Captivate Prime, os desenvolvedores podem criar aplicativos independentes que ampliam a sua funcionalidade ou o integram a outros fluxos de trabalho de aplicativos corporativos. Você pode desenvolver um aplicativo da Web, um cliente de desktop ou um aplicativo móvel usando qualquer tecnologia de sua escolha. Como desenvolvedor, você pode acessar os dados do aplicativo no Captivate Prime. A implantação do aplicativo que você desenvolve é externa à plataforma do Captivate Prime e você tem controle total sobre o ciclo de vida do desenvolvimento de software à medida que o aplicativo evolui. Geralmente, os aplicativos são desenvolvidos por uma organização do cliente para usar com a conta do Captivate Prime, e esses aplicativos são privados para essa organização do cliente específica. Além disso, os parceiros da Adobe podem criar aplicativos genéricos com a API do Captivate Prime, que podem ser usados por um grande conjunto de clientes do Captivate Prime.

API do Captivate Prime

A API do Captivate Prime é baseada nos princípios de REST e expõe os elementos-chave do Modelo de objeto do Captivate Prime aos desenvolvedores de aplicativos por meio de HTTP. Antes de conhecer os detalhes dos pontos de extremidade da API e dos métodos HTTP, os desenvolvedores podem se familiarizar com os vários objetos do Captivate Prime, os seus atributos e inter-relacionamentos. Uma vez que os modelos são entendidos, será útil obter um entendimento básico da estrutura de solicitações e respostas da API, e alguns termos comuns de programação que usamos genericamente em toda a API.

Para obter detalhes sobre os diversos métodos e pontos de extremidade da API, consulte a documentação da API do Captivate Prime.

Autenticação da API

Ao gravar um aplicativo que faz chamadas de API para o Prime, você precisa registrar o aplicativo usando o aplicativo do administrador de integração. 

As APIs do Captivate Prime usam a estrutura OAuth 2.0 para autenticar e autorizar os seus aplicativos cliente. 

Procedimento

1. Configure o seu aplicativo 

Você pode configurar o seu aplicativo com a ID do cliente e o segredo do cliente para usar os pontos de extremidade apropriados. Depois de registrar o aplicativo, você pode obter a clientId e o clientSecret. Obter URL deve ser usado no navegador, pois ele autentica os usuários do Captivate Prime usando as suas contas pré-configuradas, como SSO, Adobe ID e assim por diante. 

GET https://captivateprime.adobe.com/oauth/o/authorize?client_id=<Insira a sua clientId>&redirect_uri=<Insira um url para redirecionar para>&state=<Qualquer dado de sequência de caracteres>&scope=<um ou mais escopos separados por vírgula>&response_type=CODE.

Após a autenticação bem-sucedida, o navegador redireciona para o redirect_uri mencionado no URL acima. Um código de parâmetro é anexado junto com o uri de redirecionamento.

2. Obtenha o token de atualização do código

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

Corpo da solicitação post:

client_id:<Enter your clientId>&
client_secret:<Enter your clientSecret>&
code:<code from step 1>

3. Obtenha um token de acesso do token de atualização

URL para obter o token de acesso: 

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

Corpo da solicitação post:

client_id:<Enter your clientId>&
client_secret:<Enter your clientSecret>&
refresh_token:<refresh token>

URL para verificar os detalhes do token de acesso

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

Limitação de uso

Um token de acesso é válido por sete dias. Depois de um dia, você tem que gerar um novo token de acesso usando o token de atualização. Se você gerar um novo token de acesso a partir do token de atualização enquanto um token de acesso existente ainda for válido, o token existente será retornado. 

Alguns dos termos usados com frequência na API do Captivate Prime são explicados abaixo para a sua referência. 

Inclui

Os desenvolvedores podem acessar um único modelo de objeto de API e também vários modelos associados a esse modelo. Para acessar os modelos relacionados subsequentes, você precisa entender a relação de cada modelo com outros modelos. Inclui parâmetro que permite aos desenvolvedores acessar os modelos dependentes. Você pode usar o separador de vírgula para acessar vários modelos. Para obter exemplos de uso e mais detalhes sobre inclui, consulte a seção de modelo de API de amostra nesta página. 

Solicitação de API

As solicitações de API podem ser feitas através de uma solicitação HTTP. Dependendo do ponto de extremidade e do desenvolvedor de métodos, você pode ter a opção de vários verbos HTTP, como GET, PUT, POST, DELETE, PATCH etc. Para algumas solicitações, os parâmetros de consulta podem ser transmitidos. Ao fazer uma solicitação para um modelo de dados específico, o usuário também pode solicitar modelos relacionados conforme descrito nas especificações da API JSON. A estrutura de uma Solicitação de API típica é descrita no exemplo de uso do modelo.

Resposta da API

Quando uma solicitação de API é feita por um cliente, um documento SON é obtido de acordo com a especificação da API JSON. A resposta também contém o código de status HTTP, que o desenvolvedor pode verificar para executar as próximas etapas apropriadas na lógica do aplicativo. A estrutura de uma Resposta de API típica é descrita no exemplo de uso do modelo.

Erros

Quando uma solicitação de API falha, uma resposta de erro é obtida. O código de status HTTP retornado na resposta indica a natureza do erro. Os códigos de erro são representados com números para cada modelo na referência da API. 200, 204, 400 e 404 são alguns dos erros comuns representados nas APIs que indicam problemas de acesso HTTP.  

Campos

Os atributos do objeto de API e suas relações são coletivamente chamados de Campos. Consulte a API JSON para obter mais informações. Você pode usar Campos como um parâmetro ao fazer chamadas de API para buscar um ou mais atributos específicos do modelo. Na ausência do parâmetro Campos, a chamada da API busca todos os atributos disponíveis do modelo. Por exemplo, na chamada de API a seguir, fields[skill]=name busca o atributo de nome do modelo de habilidade sozinho. 

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

Paginação

Às vezes, uma solicitação de API resulta em uma longa lista de objetos a serem retornados na resposta. Nesses casos, o atributo de paginação permite que o desenvolvedor busque os resultados sequencialmente em termos de várias páginas, onde cada página contém um intervalo de registros. Por exemplo, o atributo de paginação no Captivate Prime permite definir o número máximo de registros a serem exibidos em uma página. Além disso, você pode definir o valor do intervalo dos registros a serem exibidos na página. 

Classificação

A classificação é permitida em modelos de API. Com base no modelo, escolha o tipo de classificação a ser aplicado aos resultados. A classificação pode ser aplicada em ordem crescente ou decrescente. Por exemplo, se você especificar sort=name, então será uma classificação crescente por nome. Se você especificar sort=-name, será uma classificação decrescente por nome. Consulte as especificações da API JSON para obter mais informações

Ilustração de uso da API

Vamos considerar um cenário em que um desenvolvedor deseja obter o nome da habilidade, o máximo de pontos atribuídos para o nível de habilidade e pontos obtidos pelo aluno para essa habilidade.

Um modelo userSkill nas APIs do Captivate Prime consiste em id, type, dateAchieve, dateCreated, pointsEarned como atributos padrão. Portanto, quando um desenvolvedor usa o método GET para adquirir detalhes do modelo userSkill, os dados atuais pertencentes aos atributos padrão são mostrados na saída de resposta. 

Mas, nesse cenário, o desenvolvedor quer obter o nome da habilidade e os pontos de nível de habilidade para o usuário. A API do Captivate Prime permite que você acesse essas informações relacionadas usando os campos de relacionamento e inclua o parâmetro. Os modelos associados para userSkill são obtidos na tag de relacionamentos. Você pode obter os detalhes de cada modelo associado chamando esses modelos junto com o userSkill. Para obter essas informações, use o parãmetro incluir com valores separados por ponto (".") para cada um dos modelos associados. Você pode usar vírgula como separador para solicitar outro modelo como user include=skillLevel.skill,course

Chamada de API

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

Por exemplo, userId pode ser 746783 e userSkills id: 746783_4426_1. 

Resposta da chamada de API

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

Modelos do Captivate Prime

A API do Captivate Prime permite que os desenvolvedores acessem os objetos do Captivate Prime como recursos RESTful. Cada ponto de extremidade da API representa um recurso, geralmente uma instância de objeto, como Medalha ou uma coleção desses objetos. Os desenvolvedores usam os verbos HTTP como PUT, GET, POST e DELETE para executar as operações CRUD nesses objetos (coleções).

Veja a seguir os vários elementos do diagrama de classe do Captivate Prime na API V2.

Diagrama da classe da API V2
Diagrama da classe da API V2
Objeto do Captivate Prime Descrição
conta Encapsula os detalhes de um cliente prime.
medalha A medalha é um sinal de conquista que os alunos obtêm quando atingem etapas específicas enquanto avançam em um curso. 
catálogo Catálogo é uma coleção de objetos de aprendizado.
usuário O usuário é o modelo principal no Captivate Prime. Geralmente, os usuários são os alunos internos ou externos de uma organização que consomem objetos de aprendizado. No entanto, eles podem desempenhar algumas outras funções, como autor e gerente, juntamente com a função do aluno. ID do usuário, tipo, e-mail são alguns dos atributos embutidos. 
recurso Isso é usado para modelar cada recurso de conteúdo que um módulo procura encapsular. Todos os recursos encapsulados emum baixaResourcesão equivalentes em termos de objetivo de aprendizado, mas diferem entre si em termos de tipo de entrega ou local do conteúdo.
userNotification Este modelo contém informações de notificação relativas a um aluno.
userSkill UserSkill indica o quanto de um único nível de habilidade é alcançado por um único usuário.
userBadge UserBadge relaciona uma única medalhacomum único usuário. Contém detalhes, por exemplo, quando ela foi obtida.assertionUrle assim por diante. 
habilidade O modelo de habilidades consiste em níveis e créditos. As habilidades podem ser adquiridas pelos alunos após a conclusão relevante do curso. 
skillLevel Um nível de habilidade compreende um ou vários cursos a serem consumidos para adquirir um nível junto com seus créditos associados. 
learningObject Um objeto de aprendizado é uma abstração para vários tipos de objetos nos quais os usuários podem se inscrever e aprender. Atualmente, o Prime tem os quatro tipos de objetos de aprendizado - Curso, Certificação, Programa de aprendizadoeAjuda de tarefa
learningObjectInstance
Uma instância específica de um objeto de aprendizado.
learningObjectResource Isso equivale ao conceito demódulo. Um curso é composto por umoumais módulos. No Prime, um módulo pode ser fornecido de várias maneiras equivalentes. Portanto, obaixaResourceessencialmente encapsula todos esses recursos equivalentes.
loResourceGrade
Isso encapsula o resultado do usuário que está consumindo um recurso específico no contexto de um objeto de aprendizado no qual ele está inscrito. Ele tem informações como a duração gasta porusuáriono recurso, o progresso percentual feito pelo usuário, o status de aprovação/reprovação e a pontuação obtida pelo usuário em qualquer questionário associado.
calendário
Um objeto de calendário é uma lista de cursosem sala de aulafuturos ou virtuais nos quais o usuário pode se inscrever.
l1FeedbackInfo
O Feedback L1 encapsula as respostas fornecidas por um aluno para as perguntas de feedback associadas aos Objetos de aprendizado. Normalmente, isso é coletado depois que o usuário conclui um Objeto de aprendizado, caso estiver configurado para coletar esse feedback dos alunos.
inscrição
Essa abstração encapsula os detalhes relativos à transação que representa a atribuição de um usuário específico a uma instância específica do objeto de aprendizado.

Processo de desenvolvimento de aplicativos

Pré-requisitos

Como desenvolvedor, você precisa criar uma conta de avaliação no Prime para poder ter acesso total a todas as funções nessa conta. Para poder gravar um aplicativo, um desenvolvedor precisa criar alguns usuários e cursos e levar a conta a um estado razoável para que o aplicativo que está sendo desenvolvido possa ter acesso a alguns dados de amostra.

Criar ID de cliente e segredo

  1. No logon do administrador de integração, clique em Aplicativos no painel esquerdo. 

    application-development-menu
  2. Clique em Registrar no canto superior direito da página para registrar os detalhes do aplicativo. A página de registro é exibida. 

    Registrar um novo candidato
    Registrar um novo candidato

    É obrigatório preencher todos os campos desta página. 

    Nome do aplicativo: insira o nome do aplicativo. Não é obrigatório usar o mesmo nome de aplicativo; pode ser qualquer nome válido. 

    URL: se souber o URL exato onde o aplicativo está hospedado, você poderá mencioná-lo. Se não estiver ciente, você poderá mencionar o URL da sua empresa. O nome de URL válido é obrigatório neste campo. 

    Domínios de redirecionamento: insira o nome de domínio do aplicativo no qual você deseja que o aplicativo Captivate Prime seja redirecionado após a autenticação OAuth. Você pode mencionar vários URLs aqui, mas precisa usar os URLs válidos, como http://google.com, http://yahoo.com e assim por diante. 

    Descrição: insira a breve descrição do aplicativo. 

    Escopos: escolha uma das quatro opções disponíveis para definir o escopo do aplicativo. Com base na sua escolha mencionada aqui, o ponto de extremidade da API do Captivate Prime está acessível para o seu aplicativo. Por exemplo: se você escolheu o acesso de leitura da função do aluno, todos os pontos de extremidade da API do aluno do Captivate Prime são somente leitura acessíveis ao seu aplicativo. 

    Apenas para esta conta? 
    Sim - se você escolher Sim, o aplicativo não estará visível para outros administradores de conta.
    Não - se você escolher Não, outros administradores de conta também poderão acessar este aplicativo, mas precisarão usar a ID do aplicativo para acessar esse aplicativo. A ID do aplicativo é gerada e exibida no modo Edição do aplicativo Captivate Prime. 

    Observação:

    Se você escolher o acesso de gravação e leitura da função de administrador como escopo ao registrar o aplicativo e escolher o acesso de leitura da função de administrador ao criar as APIs, ainda será possível ter acesso de gravação para o aplicativo, pois o escopo de registro do aplicativo substitui o fluxo de trabalho de autorização. 

  3. Clique em Registrar no canto superior direito após preencher os detalhes na página de registro.

Desenvolvimento e teste de aplicativos

A API do Captivate Prime pode ser usada pelos desenvolvedores para criar qualquer aplicativo. Os desenvolvedores devem garantir que as suas contas sejam compostas por alguns usuários e cursos válidos. Eles podem criar alguns usuários simulados e cursos e simular a atividade na conta de avaliação para que possam testar a funcionalidade do aplicativo.

Implantação de aplicativos

Recomendamos que o administrador do Captivate Prime ou um administrador de integração da conta de produção assuma a propriedade de disponibilizar o aplicativo para os usuários em sua organização. Depois que o aplicativo for testado e considerado pronto para produção, informe o administrador da conta de produção. Preferencialmente, os administradores desejam gerar uma nova ID de cliente e segredo de cliente para o aplicativo na conta de produção e executar as etapas necessárias para incorporá-los no aplicativo de maneira segura. O procedimento real de implantação de aplicativos varia de empresa para empresa, e o administrador do Captivate Prime da sua organização precisa receber suporte do departamento de TI/IS da organização para concluir a implantação.

Aprovação de aplicativo externo

Você pode adicionar aplicativos externos clicando em Aprovar no canto superior direito da página Aplicativos . Forneça a ID do aplicativo externo e clique em Salvar.

Adicionar um candidato externo
Adicionar um candidato externo