Prise en main de REST APIs getting-started-with-rest-apis
Informations sur les exigences générales, authentification, paramètres de requête facultatifs, requête URLs et autres références.
Configuration requise pour l’API et Recommendations api-requirements-recommendations
Notez ce qui suit lorsque vous utilisez le code API d'Audience Manager :
- Paramètres de requête : tous les paramètres de requête sont requis, sauf indication contraire.
- En-têtes de demande : lorsque vous utilisez des jetons Adobe Developer, vous devez fournir l’en-tête
x-api-key
. Vous pouvez obtenir votre clé API en suivant les instructions de la page Intégration de compte de service . - JSONtype de contenu : Spécifiez
content-type: application/json
etaccept: application/json
dans votre code. - Requêtes et réponses : envoyez des requêtes sous la forme d’un objet JSON correctement formaté. Audience Manager répond avec JSON données formatées. Les réponses du serveur peuvent contenir les données demandées, un code d’état ou les deux.
- Accès : Votre consultant Audience Manager vous fournira un identifiant client et une clé qui vous permettront d’effectuer des requêtes API.
- Documentation et exemples de code : Le texte en italics représente une variable que vous fournissez ou transmettez lors de la création ou de la réception de données API. Remplacez le texte italicized par votre propre code, paramètres ou d’autres informations requises.
Authentification authentication
Audience Manager REST APIs prend en charge trois méthodes d’authentification.
- [Recommandé]{class="badge positive"}Authentification OAuth serveur à serveur à l’aide de Adobe console de développement. Adobe Developer est l’écosystème et la communauté des développeurs de l’Adobe. Il comprend des API pour tous les produits Adobe. Il s’agit de la méthode recommandée pour configurer et utiliser Adobe APIs. Pour en savoir plus sur l’ authentification OAuth serveur à serveur dans la documentation destinée aux développeurs d’Adobe.
- [Obsolète]{class="badge negative"}Authentification JWT (compte de service) à l’aide de la console de développement d’Adobe. Adobe Developer est l’écosystème et la communauté des développeurs de l’Adobe. Il comprend des API pour tous les produits Adobe.
- [Obsolète]{class="badge negative"}Authentification OAuth héritée. Bien que cette méthode soit obsolète, les clients avec des intégrations OAuth existantes peuvent continuer à utiliser cette méthode.
Authentification OAuth serveur à serveur à l’aide d’Adobe Developer oauth-adobe-developer
Cette section explique comment rassembler les informations d’identification requises pour authentifier les appels API d’Audience Manager, comme indiqué dans l’organigramme ci-dessous. Vous pouvez rassembler la plupart des informations d’identification requises dans la configuration initiale unique. Le jeton d’accès doit toutefois être actualisé toutes les 24 heures.
Présentation d’Adobe Developer developer-overview
Adobe Developer est l’écosystème et la communauté des développeurs de l’Adobe. Il comprend des API pour tous les produits Adobe.
Il s’agit de la méthode recommandée pour configurer et utiliser Adobe APIs.
Conditions préalables prerequisites-server-to-server
Avant de pouvoir configurer l’authentification OAuth Server-to-Server, assurez-vous d’avoir accès au Adobe Developer Console dans Adobe Developer. Contactez l’administrateur de votre entreprise pour les demandes d’accès.
Authentification oauth
Suivez les étapes ci-dessous pour configurer l’authentification OAuth Server-to-Server à l’aide de Adobe Developer :
- Connectez-vous à Adobe Developer Console.
- Suivez les étapes du guide de mise en oeuvre des informations d’identification OAuth Server-to-Server.
- Pendant l’étape 2 : ajoutez une API à votre projet à l’aide de l’authentification du compte de service, sélectionnez l’option Audience Manager API .
- Essayez la connexion en effectuant votre premier appel API en fonction des instructions de l’ étape 3.
Ajout de l’API d’Audience Manager à un projet add-aam-api-to-project
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 de la documentation Adobe Developer Console.
Une fois que vous avez créé un projet, sélectionnez Add API sur l’écran Project Overview.
L’écran Add an API s’affiche. Sélectionnez l’icône de produit pour Adobe Experience Cloud, puis choisissez Audience Manager API avant de sélectionner Next.
Sélectionnez le type d’authentification OAuth Server-to-Server select-oauth-server-to-server
Sélectionnez ensuite le type d'authentification pour générer les jetons d'accès et accéder à l'API d'Audience Manager.
Sélection des profils de produit pour votre intégration select-product-profiles
Dans l’écran Configure API, sélectionnez les profils de produit souhaités. Le compte de service de votre intégration aura accès à des fonctionnalités granulaires par le biais des profils de produits sélectionnés ici.
Sélectionnez Save configured API lorsque vous êtes prêt.
Collecte des informations d’identification gather-credentials
Une fois l’API ajoutée au projet, la page Audience Manager API du projet affiche les informations d’identification suivantes, requises dans tous les appels aux API d’Audience Manager :
{API_KEY}
(Client ID){ORG_ID}
(Organization ID)
Générer un jeton d’accès generate-access-token
L’étape suivante consiste à générer des informations d’identification {ACCESS_TOKEN}
à utiliser dans les appels API d’Audience Manager. Contrairement aux valeurs de {API_KEY}
et {ORG_ID}
, un nouveau jeton doit être généré toutes les 24 heures pour continuer à utiliser les API Audience Manager. Sélectionnez Generate access token, comme illustré ci-dessous.
Test d’un appel API test-api-call
Après avoir obtenu votre jeton porteur d’authentification, effectuez un appel API pour tester si vous pouvez désormais accéder aux API d’Audience Manager.
-
Accédez à la documentation de référence sur les API.
-
Sélectionnez Authorize et collez le jeton d’accès que vous avez obtenu à l’étape générer un jeton d’accès .
-
Effectuez un appel GET au point d’entrée de l’API
/datasources
pour récupérer une liste de toutes les sources de données disponibles globalement, comme indiqué dans la documentation de référence de l’API. Sélectionnez Try it out, suivi de Execute, comme illustré ci-dessous.
code language-shell |
---|
|
Lors de l’utilisation d’un jeton d’accès fonctionnel, le point de terminaison de l’API renvoie une réponse 200, ainsi qu’un corps de réponse qui inclut toutes les sources de données globales auxquelles votre organisation a accès.
code language-json |
---|
|
[Obsolète]{class="badge negative"}JWT (Service Account) Authentification à l’aide d’Adobe Developer jwt
Présentation d’Adobe Developer adobeio
Adobe Developer est l’écosystème et la communauté des développeurs de l’Adobe. Il comprend des API pour tous les produits Adobe.
Il s’agit de la méthode recommandée pour configurer et utiliser Adobe APIs.
Conditions préalables prerequisites
Avant de pouvoir configurer l’authentification JWT, assurez-vous d’avoir accès au Adobe Developer Console dans Adobe Developer. Contactez l’administrateur de votre entreprise pour les demandes d’accès.
Authentification auth
Suivez les étapes ci-dessous pour configurer l’authentification JWT (Service Account) à l’aide de Adobe Developer :
- Connectez-vous à Adobe Developer Console.
- Suivez les étapes de la section Connexion au compte de service.
- Pendant l’étape 2 : ajoutez une API à votre projet à l’aide de l’authentification du compte de service, sélectionnez l’option Audience Manager API .
- Essayez la connexion en effectuant votre premier appel API en fonction des instructions de l’ étape 3.
note note |
---|
NOTE |
Pour configurer et utiliser automatiquement Audience Manager REST APIs, vous pouvez générer le JWT par programmation. Voir Authentification JWT (compte de service) pour obtenir des instructions détaillées. |
Autorisations RBAC du compte technique
Si votre compte d’Audience Manager utilise le contrôle d’accès en fonction du rôle, vous devez créer un compte d’utilisateur technique d’Audience Manager et l’ajouter au groupe RBAC d’Audience Manager qui effectuera les appels d’API.
Pour créer un compte d’utilisateur technique et l’ajouter à un groupe RBAC, procédez comme suit :
-
Effectuez un appel
GET
àhttps://aam.adobe.io/v1/users/self
. L’appel crée un compte utilisateur technique que vous pouvez voir dans la page Admin Console, dans la page Users. -
Connectez-vous à votre compte d’Audience Manager et ajoutez le compte d’utilisateur techniqueau groupe d’utilisateurs qui effectuera les appels API.
[Obsolète]{class="badge negative"}OAuth Authentification (obsolète) oauth-deprecated
note warning |
---|
WARNING |
L’authentification et le renouvellement des jetons Audience Manager REST API via OAuth 2.0 sont désormais obsolètes. |
Utilisez plutôt l’ authentification JWT (compte de service) . |
Audience Manager REST API suit les OAuth 2.0 standards pour l’authentification et le renouvellement des jetons. Les sections ci-dessous décrivent comment vous authentifier et commencer à utiliser les API.
Création d’un utilisateur générique API requirements
Nous vous recommandons de créer un compte utilisateur technique distinct pour travailler avec les Audience Manager API. Il s’agit d’un compte générique qui n’est pas lié ou associé à un utilisateur spécifique de votre entreprise. Ce type de compte utilisateur API vous permet d’accomplir 2 tâches :
- Identifiez le service qui appelle le API (par exemple, les appels de vos applications qui utilisent nos API ou d'autres outils qui effectuent des requêtes API).
- Accordez un accès ininterrompu aux API. Un compte lié à une personne spécifique peut être supprimé lorsqu’il quitte votre société. Cela vous empêchera de travailler avec le code API disponible. Un compte générique qui n’est pas lié à un employé spécifique vous permet d’éviter ce problème.
Par exemple, pour ce type de compte, supposons que vous souhaitiez modifier de nombreux segments à la fois avec les outils de gestion en bloc. Pour ce faire, votre compte utilisateur doit disposer d’un accès API. Au lieu d’ajouter des autorisations à un utilisateur spécifique, créez un compte utilisateur API non spécifique disposant des informations d’identification, de la clé et du secret appropriés pour effectuer des appels API. Ceci est également utile si vous développez vos propres applications qui utilisent les Audience Manager API.
Contactez votre consultant Audience Manager pour configurer un compte utilisateur générique API uniquement.
Processus d’authentification par mot de passe password-authentication-workflow
L'authentification par mot de passe sécurise l'accès à notre REST API. Les étapes ci-dessous décrivent le processus d’authentification par mot de passe d’un client JSON dans votre navigateur.
note tip |
---|
TIP |
Chiffrez l’accès et actualisez les jetons si vous les stockez dans une base de données. |
Étape 1 : Demander l’accès à API
Contactez votre responsable Partenaires en solutions . Ils vous fourniront un ID client API et un secret. L’identifiant et le secret vous authentifient dans le API.
Remarque : Si vous souhaitez recevoir un jeton d’actualisation, indiquez-le lorsque vous demandez l’accès à API.
Étape 2 : demander le jeton
Transmettez une requête de jeton avec votre client JSON préféré. Lorsque vous créez la requête :
- Utilisez une méthode
POST
pour appelerhttps://api.demdex.com/oauth/token
. - Convertissez votre ID client et votre secret client en chaîne codée en base 64. Séparez l’ID et le secret par deux points au cours du processus de conversion. Par exemple, les informations d’identification
testId : testSecret
sont converties endGVzdElkOnRlc3RTZWNyZXQ=
. - Transmettez HTTP headers
Authorization:Basic <base-64 clientID:clientSecret>
etContent-Type: application/x-www-form-urlencoded
. Par exemple, votre en-tête peut ressembler à ceci :Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
Content-Type: application/x-www-form-urlencoded
- Configurez le corps de la requête comme suit :
grant_type=password&username=<your-AudienceManager-user-name>&password=<your-AudienceManager-password>
Étape 3 : Réception du jeton
La réponse JSON contient votre jeton d’accès. La réponse doit se présenter comme suit :
code language-json |
---|
|
La clé expires_in
représente le nombre de secondes jusqu’à l’expiration du jeton d’accès. Pour respecter les bonnes pratiques, utilisez de courts délais d’expiration pour limiter l’exposition si le jeton est un jour exposé.
Actualiser le jeton refresh-token
Les jetons d’actualisation renouvellent l’accès à API après l’expiration du jeton d’origine. Si nécessaire, la réponse JSON du workflow de mot de passe inclut un jeton d’actualisation. Si vous ne recevez pas de jeton d’actualisation, créez-en un nouveau par le biais du processus d’authentification par mot de passe.
Vous pouvez également utiliser un jeton d’actualisation pour générer un nouveau jeton avant l’expiration du jeton d’accès existant.
Si votre jeton d’accès a expiré, vous recevez un 401 Status Code
et l’en-tête suivant dans la réponse :
WWW-Authenticate: Bearer realm="oauth", error="invalid_token", error_description="Access token expired: <token>"
Les étapes suivantes décrivent le processus d’utilisation d’un jeton d’actualisation pour créer un jeton d’accès à partir d’un client JSON dans votre navigateur.
Étape 1 : demander le nouveau jeton
Transmettez une requête de jeton d’actualisation avec votre client JSON préféré. Lorsque vous créez la requête :
- Utilisez une méthode
POST
pour appelerhttps://api.demdex.com/oauth/token
. - Convertissez votre ID client et votre secret client en chaîne codée en base 64. Séparez l’ID et le secret par deux points au cours du processus de conversion. Par exemple, les informations d’identification
testId : testSecret
sont converties endGVzdElkOnRlc3RTZWNyZXQ=
. - Transmettez les en-têtes HTTP
Authorization:Basic <base-64 clientID:clientSecret>
etContent-Type: application/x-www-form-urlencoded
. Par exemple, votre en-tête peut ressembler à ceci :Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
Content-Type: application/x-www-form-urlencoded
- Dans le corps de la requête, spécifiez le
grant_type:refresh_token
et transmettez le jeton d’actualisation que vous avez reçu dans votre demande d’accès précédente. La requête doit ressembler à ceci :grant_type=refresh_token&refresh_token=b27122c0-b0c7-4b39-a71b-1547a3b3b88e
Étape 2 : réception du nouveau jeton
La réponse JSON contient votre nouveau jeton d’accès. La réponse doit se présenter comme suit :
code language-json |
---|
|
Code d’autorisation et authentification implicite authentication-code-implicit
Audience Manager REST API prend en charge le code d’autorisation et l’authentification implicite. Pour utiliser ces méthodes d’accès, vos utilisateurs doivent se connecter à https://api.demdex.com/oauth/authorize
pour accéder aux jetons et les actualiser.
Lancer des requêtes API authentifiées authenticated-api-requests
Conditions requises pour appeler les méthodes API après réception d’un jeton d’authentification.
Pour effectuer des appels par rapport aux méthodes API disponibles :
- Dans l'en-tête
HTTP
, définissezAuthorization: Bearer <token>
. - Lors de l'utilisation de l'authentification JWT (Service Account) Authentication, vous devez fournir l'en-tête
x-api-key
, qui sera identique à votreclient_id
. Vous pouvez obtenir votreclient_id
à partir de la page intégration Adobe Developer. - Appelez la méthode API requise.
Paramètres de requête facultatifs API optional-api-query-parameters
Définissez les paramètres facultatifs disponibles pour les méthodes qui renvoient toutes les propriétés d’un objet.
Vous pouvez utiliser ces paramètres facultatifs avec des méthodes API qui renvoient toutes propriétés pour un objet. Définissez ces options dans la chaîne de requête lors de la transmission de cette requête à API.
page
pageSize
sortBy
descending
ascending
est la valeur par défaut.search
GET https://aam.adobe.io/v1/models/?search=Test
. Vous pouvez effectuer une recherche sur n’importe quelle valeur renvoyée par une méthode "get all".folderId
permissions
Renvoie une liste de segments basée sur l’autorisation spécifiée. READ
est la valeur par défaut. Les autorisations incluent :
READ
: renvoie et affiche des informations sur un segment.WRITE
: utilisezPUT
pour mettre à jour un segment.CREATE
: utilisezPOST
pour créer un segment.DELETE
: supprimez un segment. Nécessite l’accès aux caractéristiques sous-jacentes, le cas échéant. Par exemple, vous aurez besoin de droits pour supprimer les caractéristiques qui appartiennent à un segment si vous souhaitez le supprimer.
Spécifiez plusieurs autorisations avec des paires clé-valeur distinctes. Par exemple, pour renvoyer une liste de segments avec les autorisations READ
et WRITE
uniquement, transmettez "permissions":"READ"
, "permissions":"WRITE"
.
includePermissions
true
pour renvoyer vos autorisations pour le segment. La valeur par défaut est false
.Remarque À Propos Des Options De Page
Lorsque les informations sur la page ne sont pas spécifiées, la requête renvoie la chaîne plain JSON donne un tableau. Si les informations sur la page sont spécifiées, alors la liste renvoyée est encapsulée dans un objet JSON qui contient des informations sur le résultat total et la page active. Votre exemple de requête utilisant les options de page peut ressembler à ceci :
GET https://aam.adobe.io/v1/models/?page=1&pageSize=2&search=Test
API URLs api-urls
URLs pour les demandes, les environnements d’évaluation et de production, ainsi que les versions.
Requête URLs request-urls
Le tableau suivant répertorie la requête URLs utilisée pour transmettre des requêtes API, par méthode.
Selon la méthode d’authentification que vous utilisez, vous devez ajuster votre requête URLs en fonction des tableaux ci-dessous.
Demande URLs pour le [recommandé]{class="badge positive"}[Obsolète]{class="badge negative"}JWT Authentification via Adobe Developer request-urls-jwt
https://aam.adobe.io/v1/models/
https://aam.adobe.io/v1/datasources/
https://aam.adobe.io/v1/signals/derived/
https://aam.adobe.io/v1/destinations/
https://aam.adobe.io/v1/partner-sites/
https://aam.adobe.io/v1/folders/traits /
Segments :
https://aam.adobe.io/v1/folders/segments /
https://aam.adobe.io/v1/schemas/
https://aam.adobe.io/v1/segments/
https://aam.adobe.io/v1/traits/
https://aam.adobe.io/v1/customer-trait-types
https://aam.adobe.io/v1/taxonomies/0/
Demande URLs pour le [obsolète]{class="badge negative"}OAuth Authentication request-urls-oauth
https://api.demdex.com/v1/models/
https://api.demdex.com/v1/datasources/
https://api.demdex.com/v1/signals/derived/
https://api.demdex.com/v1/destinations/
https://api.demdex.com/v1/partner-sites/
https://api.demdex.com/v1/folders/traits /
Segments :
https://api.demdex.com/v1/folders/segments /
https://api.demdex.com/v1/schemas/
https://api.demdex.com/v1/segments/
https://api.demdex.com/v1/traits/
https://api.demdex.com/v1/customer-trait-types
https://api.demdex.com/v1/taxonomies/0/
Environnements environments
Les Audience Manager API permettent d'accéder à différents environnements de travail. Ces environnements vous aident à tester le code par rapport à des bases de données distinctes sans affecter les données de production en direct. Le tableau suivant répertorie les environnements API disponibles et les noms d’hôtes de ressources correspondants.
Selon la méthode d’authentification que vous utilisez, vous devez ajuster votre environnement URLs en fonction du tableau ci-dessous.
https://aam.adobe.io/...
https://api.demdex.com/...
https://aam-beta.adobe.io/...
https://api-beta.demdex.com/...
Versions versions
De nouvelles versions de ces API sont publiées régulièrement. Une nouvelle version incrémente le numéro de version API. Le numéro de version est référencé dans la requête URL sous la forme v<version number>
, comme illustré dans l’exemple suivant :
https://<host>/v1/...
Codes de réponse définis response-codes-defined
HTTP
codes d’état et texte de réponse renvoyés par Audience Manager REST API.
200
OK
201
Created
PUT
et POST
.204
No Content
400
Bad Request
403
Forbidden
404
Not Found
409
Conflict
500
Server Error