Authentification et accès aux API Experience Platform

Ce document fournit un tutoriel détaillé pour accéder à un compte de développeur Adobe Experience Platform afin d’effectuer des appels API Experience Platform. À la fin de ce tutoriel, vous aurez généré les informations d’identification suivantes requises pour tous les appels d’API Platform :

  • {ACCESS_TOKEN}
  • {API_KEY}
  • {IMS_ORG}

Pour maintenir la sécurité de vos applications et de vos utilisateurs, toutes les requêtes aux API Adobe I/O doivent être authentifiées et autorisées à l’aide de normes telles que OAuth et JSON Web Tokens (JWT). Un jeton JWT est utilisé avec des informations spécifiques au client pour générer votre jeton d’accès personnel.

Ce tutoriel explique comment rassembler les informations d’identification requises pour authentifier les appels API Platform, comme indiqué dans l’organigramme suivant :

Conditions préalables

Pour passer avec succès des appels à des API Experience Platform, vous devez disposer des éléments suivants :

  • Une organisation IMS ayant accès à Adobe Experience Platform.
  • Administrateur de Admin Console capable de vous ajouter en tant que développeur et utilisateur pour un profil de produit.

Vous devez également disposer d’un Adobe ID pour suivre ce tutoriel. Si vous ne possédez pas d’Adobe ID, vous pouvez en créer un en suivant les étapes suivantes :

  1. Accédez à Adobe Developer Console.
  2. Sélectionnez Créer un nouveau compte.
  3. Terminez le processus d’inscription.

Obtenir un accès développeur et utilisateur pour les Experience Platform

Avant de créer des intégrations sur Adobe Developer Console, votre compte doit disposer des autorisations de développeur et d’utilisateur pour un profil de produit Experience Platform dans Adobe Admin Console.

Obtenir un accès en tant que développeur

Contactez un administrateur Admin Console de votre entreprise pour vous ajouter en tant que développeur à un profil de produit Experience Platform à l’aide de Admin Console. Consultez la Admin Console documentation pour obtenir des instructions spécifiques sur la façon de gérer l’accès des développeurs pour les profils de produit.

Une fois que vous avez été affecté en tant que développeur, vous pouvez commencer à créer des intégrations dans Adobe Developer Console. Ces intégrations constituent un pipeline allant des applications et services externes vers les API d’Adobe.

Obtenir un accès en tant qu’utilisateur

Votre administrateur Admin Console doit également vous ajouter en tant qu’utilisateur au même profil de produit. Pour plus d’informations, consultez le guide sur la gestion des groupes d’utilisateurs dans Admin Console .

Génération d’une clé API, d’un identifiant de l’organisation IMS et d’un secret client

REMARQUE

Si vous suivez ce document à partir du guide de développement du Privacy Service, vous pouvez désormais revenir à ce guide pour générer les informations d’identification d’accès uniques à Privacy Service.

Une fois que vous avez reçu l’accès utilisateur et développeur à Platform via Admin Console, l’étape suivante consiste à générer vos informations d’identification {IMS_ORG} et {API_KEY} dans Adobe Developer Console. Ces informations d’identification ne doivent être générées qu’une seule fois et peuvent être réutilisées dans les futurs appels d’API Platform.

Ajout d’un Experience Platform à un projet

Accédez à Adobe Developer Console et connectez-vous avec votre Adobe ID. Suivez ensuite les étapes décrites dans le tutoriel sur la création dʼun projet vide disponible dans la documentation dʼAdobe Developer Console.

Une fois que vous avez créé un projet, sélectionnez Ajouter l’API dans l’écran Aperçu du projet.

L’écran Ajouter une API s’affiche. Sélectionnez l’icône de produit pour Adobe Experience Platform, puis choisissez API Experience Platform avant de sélectionner Suivant.

À partir de là, suivez les étapes décrites dans le tutoriel sur l’ajout d’une API à un projet à l’aide d’un compte de service (JWT) (à partir de l’étape "Configurer l’API") pour terminer le processus.

IMPORTANT

A une certaine étape du processus lié ci-dessus, votre navigateur télécharge automatiquement une clé privée et un certificat public associé. Notez où cette clé privée est stockée sur votre ordinateur, puisqu’elle est requise à une étape ultérieure de ce tutoriel.

Collecte des informations d’identification

Une fois l’API ajoutée au projet, la page API Experience Platform du projet affiche les informations d’identification suivantes, requises dans tous les appels aux API Experience Platform :

  • {API_KEY} (Identifiant du client)
  • {IMS_ORG} (ID d’organisation)

Outre les informations d’identification ci-dessus, vous aurez également besoin du secret client généré pour une prochaine étape. Sélectionnez Récupérer le secret client pour afficher la valeur, puis copiez-la pour une utilisation ultérieure.

Génération d’un jeton Web JSON (JWT)

L’étape suivante consiste à générer un jeton Web JSON (JWT) basé sur les informations d’identification de votre compte. Cette valeur est utilisée pour générer vos informations d’identification {ACCESS_TOKEN} à utiliser dans les appels API Platform, qui doivent être régénérés toutes les 24 heures.

Sélectionnez Compte de service (JWT) dans le volet de navigation de gauche, puis sélectionnez Générer JWT.

Dans la zone de texte fournie sous Generate custom JWT, collez le contenu de la clé privée que vous avez précédemment générée lors de l’ajout de l’API Platform à votre compte de service. Sélectionnez ensuite Générer le jeton.

La page se met à jour pour afficher le JWT généré, ainsi qu’un exemple de commande cURL qui vous permet de générer un jeton d’accès. Pour les besoins de ce tutoriel, sélectionnez Copier en regard de JWT généré pour copier le jeton dans le presse-papiers.

Génération d’un jeton d’accès

Une fois que vous avez généré un jeton JWT, vous pouvez l’utiliser dans un appel API pour générer votre {ACCESS_TOKEN}. Contrairement aux valeurs de {API_KEY} et {IMS_ORG}, un nouveau jeton doit être généré toutes les 24 heures pour continuer à utiliser les API de Platform.

Requête

La requête suivante génère un nouveau {ACCESS_TOKEN} en fonction des informations d’identification fournies dans la payload. Ce point de terminaison accepte uniquement les données de formulaire comme charge utile. Il doit donc se voir attribuer un en-tête Content-Type de multipart/form-data.

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}'
Propriété Description
{API_KEY} {API_KEY} (ID client) que vous avez récupéré à l’étape précédente.
{SECRET} Secret client que vous avez récupéré à l’étape précédente.
{JWT} JWT que vous avez généré dans une étape précédente.
REMARQUE

Vous pouvez utiliser la même clé API, le même secret client et JWT pour générer un nouveau jeton d’accès pour chaque session. Vous pouvez ainsi automatiser la génération des jetons d’accès dans vos applications.

Réponse

{
  "token_type": "bearer",
  "access_token": "{ACCESS_TOKEN}",
  "expires_in": 86399992
}
Propriété Description
token_type Type de jeton renvoyé. Pour les jetons d’accès, cette valeur est toujours bearer.
access_token Le {ACCESS_TOKEN} généré. Cette valeur, précédée du mot Bearer, est requise en tant qu’en-tête Authentication pour tous les appels d’API Platform.
expires_in Nombre de millisecondes restantes jusqu’à l’expiration du jeton d’accès. Une fois cette valeur atteinte, un nouveau jeton d’accès doit être généré pour continuer à utiliser les API Platform.

Tester les informations d’accès

Une fois que vous avez rassemblé les trois informations d’identification requises, vous pouvez effectuer l’appel API suivant. Cet appel répertorie toutes les classes Experience Data Model (XDM) standard disponibles pour votre organisation.

Requête

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: {IMS_ORG}'

Réponse

Si votre réponse est similaire à celle illustrée ci-dessous, vos informations d’identification sont valides et fonctionnent. (Cette réponse a été tronquée pour l’espace.)

{
  "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"
    }
  ]
}

Utilisation de Postman pour authentifier et tester les appels API

🔗 Postmanis est un outil populaire qui permet aux développeurs d’explorer et de tester les API RESTful. Cette publication moyenne décrit comment configurer Postman pour qu’il effectue automatiquement l’authentification JWT et l’utilise pour utiliser les API de Platform.

Étapes suivantes

En lisant ce document, vous avez rassemblé et testé avec succès vos informations d’identification d’accès pour les API Platform. Vous pouvez désormais suivre l’exemple d’appels API fourni dans la documentation.

Outre les valeurs d’authentification que vous avez collectées dans ce tutoriel, de nombreuses API Platform nécessitent également qu’un {SANDBOX_NAME} valide soit fourni en tant qu’en-tête. Pour plus d’informations, consultez la présentation des environnements de test.

Sur cette page