Autenticar e acessar APIs da Experience Platform

Este documento fornece um tutorial passo a passo para obter acesso a uma conta de desenvolvedor do Adobe Experience Platform para fazer chamadas para APIs Experience Platform. No final deste tutorial, você terá gerado ou coletado as seguintes credenciais que são necessárias como cabeçalhos em todas as chamadas de API da plataforma:

  • {ACCESS_TOKEN}
  • {API_KEY}
  • {ORG_ID}
TIP
Além das três credenciais acima, muitas APIs da Platform também exigem que um {SANDBOX_NAME} válido seja fornecido como um cabeçalho. Consulte a visão geral das sandboxes para obter mais informações sobre sandboxes e a documentação do ponto de extremidade de gerenciamento de sandbox para obter informações sobre como listar as sandboxes disponíveis para sua organização.

Para manter a segurança de seus aplicativos e usuários, todas as solicitações para APIs Experience Platform devem ser autenticadas e autorizadas usando padrões como o OAuth.

Este tutorial aborda como coletar as credenciais necessárias para autenticar chamadas de API da plataforma, conforme descrito no fluxograma abaixo. Você pode coletar a maioria das credenciais necessárias na configuração inicial única. No entanto, o token de acesso deve ser atualizado a cada 24 horas.

Pré-requisitos prerequisites

Para fazer chamadas com êxito para APIs Experience Platform, você deve ter o seguinte:

  • Uma organização com acesso ao Adobe Experience Platform.
  • Um administrador de Admin Console que pode adicioná-lo como desenvolvedor e usuário para um perfil de produto.
  • Um administrador de sistema do Experience Platform que pode conceder a você os controles de acesso baseados em atributos necessários para executar operações de leitura ou gravação em diferentes partes do Experience Platform por meio de APIs.

Você também deve ter uma Adobe ID para concluir este tutorial. Se você não tiver uma Adobe ID, poderá criar uma usando as seguintes etapas:

  1. Ir para Adobe Developer Console.
  2. Selecione Criar uma nova conta.
  3. Conclua o processo de inscrição.

Obter acesso de desenvolvedor e usuário para o Experience Platform gain-developer-user-access

Antes de criar integrações no Adobe Developer Console, sua conta deve ter permissões de desenvolvedor e usuário para um perfil de produto do Experience Platform no Adobe Admin Console.

Obter acesso de desenvolvedor gain-developer-access

Contate um administrador do Admin Console em sua organização para adicioná-lo como desenvolvedor a um perfil de produto Experience Platform usando o Admin Console. Consulte a documentação do Admin Console para obter instruções específicas sobre como gerenciar o acesso de desenvolvedor para perfis de produtos.

Depois de atribuído como desenvolvedor, você pode começar a criar integrações no Adobe Developer Console. Essas integrações são um pipeline de aplicativos e serviços externos para APIs Adobe.

Obter acesso do usuário gain-user-access

O administrador do Admin Console também deve adicioná-lo como usuário ao mesmo perfil de produto. Com o acesso do usuário, é possível ver na interface do usuário o resultado das operações de API executadas.

Consulte o manual sobre gerenciamento de grupos de usuários em Admin Console para obter mais informações.

Gerar uma chave de API (ID do cliente) e uma ID da organização generate-credentials

NOTE
Se você estiver seguindo este documento a partir do guia da API de Privacy Service, poderá retornar a esse guia para gerar as credenciais de acesso exclusivas para Privacy Service.

Depois de receber acesso de desenvolvedor e usuário à Platform por meio do Admin Console, a próxima etapa é gerar suas credenciais do {ORG_ID} e do {API_KEY} no Adobe Developer Console. Essas credenciais só precisam ser geradas uma vez e podem ser reutilizadas em chamadas futuras da API da plataforma.

Adicionar Experience Platform a um projeto add-platform-to-project

Acesse o Adobe Developer Console e faça logon com seu Adobe ID. Em seguida, siga as etapas descritas no tutorial sobre criação de um projeto vazio na documentação do Adobe Developer Console.

Depois de criar um novo projeto, selecione Adicionar API na tela Visão geral do projeto.

TIP
Se você tiver sido provisionado para várias organizações, use o seletor de organizações no canto superior direito da interface para garantir que está na organização necessária.

Tela do Developer Console com a opção Adicionar API realçada.

A tela Adicionar uma API é exibida. Selecione o ícone do produto para o Adobe Experience Platform e escolha Experience Platform API antes de selecionar Avançar.

Selecione a API de Experience Platform.

TIP
Selecione a opção Exibir documentos para navegar em uma janela de navegador separada para a documentação de referência da API de Experience Platform completa.

Selecione o tipo de autenticação de Servidor para Servidor do OAuth select-oauth-server-to-server

Em seguida, selecione o tipo de autenticação OAuth Server-to-Server para gerar tokens de acesso e acessar a API de Experience Platform.

IMPORTANT
O método OAuth Server-to-Server é o único método de geração de token com suporte no futuro. O método Conta de Serviço (JWT) anteriormente aceito está obsoleto e não pode ser selecionado para novas integrações. Embora as integrações existentes que usam o método de autenticação JWT continuem a funcionar até 1º de janeiro de 2025, a Adobe recomenda que você migre as integrações existentes para o novo método OAuth Server-to-Server antes dessa data. Obtenha mais informações na seção [Obsoleto]{class="badge negative"}Gerar um JSON Web Token (JWT).

Selecione o método de autenticação OAuth de servidor para servidor para a API de Experience Platform.

Selecione os perfis de produto para sua integração select-product-profiles

Na tela Configurar API, selecione AEP-Padrão-Todos-Usuários.

IMPORTANT
Para obter acesso a determinados recursos na Platform, você também precisa de um administrador do sistema para conceder as permissões de controle de acesso baseadas em atributos necessárias. Leia mais na seção Obtenha as permissões de controle de acesso baseadas em atributos necessárias.

Selecione perfis de produto para sua integração.

Selecione Salvar API configurada quando estiver pronto.

Uma apresentação das etapas descritas acima para configurar uma integração com a API de Experience Platform também está disponível no tutorial em vídeo abaixo:

Coletar credenciais gather-credentials

Depois que a API for adicionada ao projeto, a página APIs de Experience Platform do projeto exibirá as seguintes credenciais, necessárias em todas as chamadas para APIs de Experience Platform:

Informações de integração após adicionar uma API no Console do Desenvolvedor.

  • {API_KEY} (ID do Cliente)
  • {ORG_ID} (ID da Organização)

Gerar um token de acesso generate-access-token

A próxima etapa é gerar uma credencial {ACCESS_TOKEN} para uso em chamadas de API da plataforma. Diferentemente dos valores de {API_KEY} e {ORG_ID}, um novo token deve ser gerado a cada 24 horas para continuar usando as APIs da plataforma. Selecione Gerar token de acesso, como mostrado abaixo.

Mostrar como gerar um token de acesso

TIP
Você também pode usar um ambiente e uma coleção do Postman para gerar tokens de acesso. Para obter mais informações, leia a seção sobre como usar o Postman para autenticar e testar chamadas de API.

[Obsoleto]{class="badge informative"} Gerar um JSON Web Token (JWT) jwt

WARNING
O método JWT para gerar tokens de acesso foi descontinuado. Todas as novas integrações devem ser criadas usando o método de autenticação Servidor para Servidor do OAuth. O Adobe também exige que você migre suas integrações existentes para o método OAuth até 1º de janeiro de 2025 para que suas integrações continuem funcionando. Leia a seguinte documentação importante:
Exibir informações obsoletas

A próxima etapa é gerar um JSON Web Token (JWT) com base nas credenciais da conta. Esse valor é usado para gerar a credencial {ACCESS_TOKEN} para uso em chamadas de API da plataforma, que devem ser geradas novamente a cada 24 horas.

note important
IMPORTANT
Para os fins deste tutorial, as etapas abaixo descrevem como gerar um JWT no Developer Console. No entanto, esse método de geração só deve ser usado para fins de teste e avaliação.
Para uso regular, o JWT deve ser gerado automaticamente. Para obter mais informações sobre como gerar JWTs de forma programática, consulte o guia de autenticação da conta de serviço no Adobe Developer.

Selecione Conta de Serviço (JWT) na navegação à esquerda e Gerar JWT.

Na caixa de texto fornecida em Gerar JWT personalizada, cole o conteúdo da chave privada gerada anteriormente ao adicionar a API da plataforma à sua conta de serviço. Em seguida, selecione Gerar token.

A página é atualizada para mostrar o JWT gerado, juntamente com um comando cURL de amostra que permite gerar um token de acesso. Para os fins deste tutorial, selecione Copiar ao lado de JWT Gerado para copiar o token para a área de transferência.

Gerar um token de acesso

Depois de gerar um JWT, você pode usá-lo em uma chamada de API para gerar o {ACCESS_TOKEN}. Diferentemente dos valores de {API_KEY} e {ORG_ID}, um novo token deve ser gerado a cada 24 horas para continuar usando as APIs da plataforma.

Solicitação

A solicitação a seguir gera um novo {ACCESS_TOKEN} com base nas credenciais fornecidas na carga. Este ponto de extremidade só aceita dados de formulário como sua carga, e portanto deve receber um cabeçalho Content-Type de multipart/form-data.

code language-shell
curl -X POST https://ims-na1.adobelogin.com/ims/exchange/jwt \
  -H 'Content-Type: multipart/form-data' \
  -F 'client_id={API_KEY}' \
  -F 'client_secret={SECRET}' \
  -F 'jwt_token={JWT}'
table 0-row-2 1-row-2 2-row-2 3-row-2
Propriedade Descrição
{API_KEY} O {API_KEY} (ID do Cliente) que você recuperou em uma etapa anterior.
{SECRET} O segredo do cliente que você recuperou em uma etapa anterior.
{JWT} O JWT gerado em uma etapa anterior.
note note
NOTE
Você pode usar a mesma chave de API, segredo do cliente e JWT para gerar um novo token de acesso para cada sessão. Isso permite automatizar a geração de token de acesso em seus aplicativos.

Resposta

code language-json
{
  "token_type": "bearer",
  "access_token": "{ACCESS_TOKEN}",
  "expires_in": 86399992
}
table 0-row-2 1-row-2 2-row-2 3-row-2
Propriedade Descrição
token_type O tipo of token sendo retornado. Para tokens de acesso, esse valor é sempre bearer.
access_token O {ACCESS_TOKEN} gerado. Este valor, prefixado com a palavra Bearer, é necessário como o cabeçalho Authentication para todas as chamadas de API da plataforma.
expires_in O número de milissegundos restantes até que o token de acesso expire. Quando esse valor atingir 0, um novo token de acesso deverá ser gerado para continuar usando as APIs da plataforma.

Testar credenciais de acesso test-credentials

Depois de coletar todas as três credenciais necessárias - token de acesso, chave de API e ID da organização - , você pode tentar fazer a seguinte chamada de API. Esta chamada lista todas as classes padrão Experience Data Model (XDM) disponíveis para sua organização. Importe e execute a chamada no Postman.

recommendation-more-help

Solicitação

curl -X GET https://platform.adobe.io/data/foundation/schemaregistry/global/classes \
  -H 'Accept: application/vnd.adobe.xed-id+json' \
  -H 'Authorization: Bearer {{ACCESS_TOKEN}}' \
  -H 'x-api-key: {{API_KEY}}' \
  -H 'x-gw-ims-org-id: {{ORG_ID}}'

Resposta

Se sua resposta for semelhante à mostrada abaixo, suas credenciais serão válidas e estarão funcionando. (Esta resposta foi truncada por questões de espaço.)

{
  "results": [
    {
        "title": "XDM ExperienceEvent",
        "$id": "https://ns.adobe.com/xdm/context/experienceevent",
        "meta:altId": "_xdm.context.experienceevent",
        "version": "1"
    },
    {
        "title": "XDM Individual Profile",
        "$id": "https://ns.adobe.com/xdm/context/profile",
        "meta:altId": "_xdm.context.profile",
        "version": "1"
    }
  ]
}
IMPORTANT
Embora a chamada acima seja suficiente para testar suas credenciais de acesso, esteja ciente de que você não poderá acessar ou modificar vários recursos sem ter as permissões certas de controle de acesso baseado em atributos. Leia mais na seção Obter as permissões de controle de acesso baseadas em atributos necessárias abaixo.

Obter as permissões necessárias de controle de acesso baseado em atributos get-abac-permissions

Para acessar ou modificar vários recursos no Experience Platform, você deve ter as permissões de controle de acesso apropriadas. Os administradores do sistema podem conceder a você as permissões necessárias. Obtenha mais informações na seção sobre gerenciamento de credenciais de API para uma função.

Informações detalhadas sobre como um administrador do sistema pode conceder as permissões necessárias para acessar os recursos da plataforma por meio da API também estão disponíveis no tutorial em vídeo abaixo:

Usar o Postman para autenticar e testar chamadas de API use-postman

O Postman é uma ferramenta popular que permite aos desenvolvedores explorar e testar as APIs RESTful. Você pode usar coleções e ambientes do Experience Platform Postman para acelerar seu trabalho com APIs de Experience Platform. Leia mais sobre como usar o Postman no Experience Platform e começar a usar coleções e ambientes.

Informações detalhadas sobre o uso do Postman com coleções e ambientes de Experience Platform também estão disponíveis nos tutoriais em vídeo abaixo:

Baixe e importe um ambiente do Postman para usar com APIs Experience Platform

Usar uma coleção do Postman para gerar tokens de acesso

Baixe a coleção do Identity Management Service Postman e assista ao vídeo abaixo para saber como gerar tokens de acesso.

Baixe coleções do Postman da API de Experience Platform e interaja com as APIs

Administradores do sistema: conceder controle de acesso a desenvolvedores e API com permissões de Experience Platform grant-developer-and-api-access-control

NOTE
Somente administradores do sistema têm a capacidade de exibir e gerenciar credenciais de API nas Permissões.

Antes de criar integrações no Adobe Developer Console, sua conta deve ter permissões de desenvolvedor e usuário para um perfil de produto do Experience Platform no Adobe Admin Console.

Adicionar desenvolvedores ao perfil do produto add-developers-to-product-profile

Vá para Admin Console e entre com sua Adobe ID.

Selecione Produtos e Adobe Experience Platform na lista de produtos.

Lista de produtos no Admin Console

Na guia Perfis de produto, selecione AEP-Padrão-Todos-Usuários. Como alternativa, use a barra de pesquisa para pesquisar o perfil de produto inserindo o nome.

Pesquisar o perfil de produto

Selecione a guia Desenvolvedores e selecione Adicionar desenvolvedor.

Adicionar desenvolvedor da guia Desenvolvedores

Insira o email ou nome de usuário do desenvolvedor. Um email ou nome de usuário válido exibirá os detalhes do desenvolvedor. Selecione Salvar.

Adicionar desenvolvedor usando seu email ou nome de usuário

O desenvolvedor foi adicionado com sucesso e aparece na guia Desenvolvedores.

Desenvolvedores listados na guia Desenvolvedores

Atribuir API a uma função

Um administrador do sistema pode atribuir APIs a funções na interface do usuário do Experience Platform.

Selecione Permissões e a função à qual você deseja adicionar a API. Selecione a guia Credenciais da API e selecione Adicionar credenciais de API.

Guia de credenciais de API na função selecionada

Selecione a API que você deseja adicionar à função e selecione Salvar.

Lista de APIs disponíveis para seleção

Você retornará à guia Credenciais da API, onde a API recém-adicionada está listada.

Guia de credenciais de API com API recém-adicionada

Recursos adicionais additional-resources

Consulte os recursos adicionais vinculados abaixo para obter mais ajuda para começar a usar as APIs de Experience Platform

Próximas etapas next-steps

Ao ler este documento, você reuniu e testou com êxito suas credenciais de acesso para APIs da plataforma. Agora você pode seguir as chamadas de API de exemplo fornecidas na documentação.

Além dos valores de autenticação coletados neste tutorial, muitas APIs da Platform também exigem que uma {SANDBOX_NAME} válida seja fornecida como um cabeçalho. Consulte a visão geral das sandboxes para obter mais informações.

5741548a-2e07-44b3-9157-9c181502d0c5