Guide du développeur de l'API de gestion des décisions

Ce guide du développeur décrit les étapes à suivre pour commencer à utiliser l'API Offer Library. Le guide fournit ensuite des exemples d'appels API pour effectuer des opérations clés à l'aide du moteur de gestion des décisions.

➡️ En savoir plus sur les composants de la gestion des décisions dans cette vidéo

Conditions préalables

Ce guide nécessite une compréhension professionnelle des composants suivants d'Adobe Experience Platform :

  • Experience Data Model (XDM) System : cadre normalisé selon lequel Experience Platform organise les données de l’expérience client.
  • Gestion des décisions : explique les concepts et les composants utilisés pour Experience Decisioning en général et pour Offer Decisioning en particulier. Illustre les stratégies utilisées pour choisir la meilleure option à présenter lors de l'expérience client.
  • Profile Query Language (PQL) : PQL est un langage puissant pour écrire des expressions sur des instances XDM. PQL est utilisé pour définir des règles de décision.

Lecture d'exemples d'appels API

Ce guide fournit des exemples d’appels API pour démontrer comment formater vos requêtes. Il s’agit notamment de chemins d’accès, d’en-têtes requis et de payloads de requêtes correctement formatés. L’exemple JSON renvoyé dans les réponses de l’API est également fourni. Pour plus d'informations sur les conventions utilisées dans la documentation pour les exemples d'appels d'API, voir la section concernant la lecture d'exemples d'appels d'API dans le guide de dépannage Experience Platform.

Collecte des valeurs des en-têtes requis

Pour effectuer des appels aux API Adobe Experience Platform, vous devez d'abord suivre le tutoriel d'authentification Le tutoriel d'authentification fournit les valeurs de chacun des en-têtes requis dans tous les appels d'API Experience Platform, comme indiqué ci-dessous :

  • Authorization: Bearer {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}

Toutes les requêtes contenant une payload (POST, PUT, PATCH) requièrent un en-tête supplémentaire :

  • Content-Type: application/json

Gérer l'accès à un conteneur

Un conteneur est un mécanisme d'isolement qui permet de séparer différentes préoccupations. L'ID de conteneur est le premier élément de chemin d'accès pour toutes les API du référentiel. Tous les objets de prise de décision résident dans un conteneur.

Un administrateur peut regrouper des entités principales, des ressources et des autorisations d'accès similaires dans des profils. La charge de gestion est ainsi réduite et est assurée par l'Adobe Admin Console. Pour créer des profils et leur affecter des utilisateurs, vous devez être un administrateur de produit pour Adobe Experience Platform. Il suffit de créer des profils de produit qui correspondent à certaines autorisations en une seule étape, puis d'ajouter des utilisateurs à ces profils. Les profils agissent comme des groupes ayant reçu des autorisations, et chaque utilisateur réel ou technique de ce groupe hérite de ces autorisations.

Avec les privilèges d'administrateur, vous pouvez accorder ou retirer des autorisations aux utilisateurs via l‘Adobe Admin Console. Pour plus d'informations, voir la présentation du contrôle d'accès

Liste des conteneurs accessibles aux utilisateurs et aux intégrations

Format d'API

GET /{ENDPOINT_PATH}?product={PRODUCT_CONTEXT}&property={PROPERTY}==decisioning
Paramètre Description Exemple
{ENDPOINT_PATH} Chemin d'accès de point d'entrée pour les API de référentiel. https://platform.adobe.io/data/core/xcore/
{PRODUCT_CONTEXT} Filtre la liste des conteneurs par leur association aux contextes de produits. acp
{PROPERTY} Filtre le type de conteneur renvoyé. _instance.containerType==decisioning

Requête

curl -X GET \
  'https://platform.adobe.io/data/core/xcore/?product=acp&property=_instance.containerType==decisioning' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'

Réponse

Une réponse positive renvoie des informations concernant les conteneurs de gestion de décision. Elle inclut un attribut instanceId dont la valeur est votre identifiant de conteneur.

{
    "_embedded": {
        "https://ns.adobe.com/experience/xcore/container": [
            {
                "instanceId": "{INSTANCE_ID}",
                "schemas": [
                    "https://ns.adobe.com/experience/xcore/container;version=0.5"
                ],
                "productContexts": [
                    "acp"
                ],
                "repo:etag": 2,
                "repo:createdDate": "2020-09-16T07:54:28.319959Z",
                "repo:lastModifiedDate": "2020-09-16T07:54:32.098139Z",
                "repo:createdBy": "{CREATED_BY}",
                "repo:lastModifiedBy": "{MODIFIED_BY}",
                "repo:createdByClientId": "{CREATED_CLIENT_ID}",
                "repo:lastModifiedByClientId": "{MODIFIED_CLIENT_ID}",
                "_instance": {
                    "containerType": "decisioning",
                    "repo:name": "{REPO_NAME}",
                    "dataCenter": "{DATA_CENTER}",
                    "parentName": "{PARENT_NAME}",
                    "parentId": "{PARENT_ID}"
                },
                "_links": {
                    "self": {
                        "href": "/containers/{INSTANCE_ID}"
                    }
                }
            }
        ]
    },
    "_links": {
        "self": {
            "href": "/?product=acp&property=_instance.containerType==decisioning",
            "@type": "https://ns.adobe.com/experience/xcore/hal/home"
        }
    }
}

Étapes suivantes

Ce document couvrait les connaissances préalables requises pour effectuer des appels à l'API Offer Library, y compris l'acquisition de votre ID de conteneur. Vous pouvez désormais procéder aux exemples d'appel fournis dans ce guide de développement et suivre leurs instructions.

REMARQUE

Le canal Messagerie in-app d’Adobe Journey Optimizer utilise des objets Offer Decisioning. Si votre entreprise utilise le canal de messagerie in-app, les demandes de liste d’API pour les objets incluront les objets créés par le service de messagerie in-app et pourront être ignorées pour les cas d’utilisation Offer Decisioning. Les objets créés pour les messages in-app auront createdBy = “Mobile_Sheliak”.

Vidéo pratique

La vidéo suivante est destinée à vous aider à comprendre les composants de gestion des décisions.

Sur cette page