Diffuser des offres à l’aide de l’API Batch Decisioning deliver-offers-batch

L’API Batch Decisioning permet aux organisations d’utiliser la fonctionnalité de prise de décision pour tous les profils d’une audience donnée en un seul appel. Le contenu de l’offre pour chaque profil de l’audience est placé dans un jeu de données Adobe Experience Platform où il est disponible pour les workflows par lots personnalisés.

Avec l’API Batch Decisioning, vous pouvez renseigner un jeu de données avec les meilleures offres pour tous les profils d’une audience Adobe Experience Platform pour les portées de décision. Par exemple, une organisation peut vouloir exécuter Batch Decisioning afin de pouvoir envoyer des offres à un fournisseur de diffusion de messages. Ces offres sont ensuite utilisées comme contenu envoyé pour la diffusion de messages par lots à une même audience d’utilisateurs et d’utilisatrices.

Pour ce faire, l'organisation :

  • Exécute l'API Batch Decisioning, qui contient deux requêtes :

    1. Une Requête POST par lots pour démarrer une charge de travail afin de traiter par lots les sélections d'offres.

    2. Une Requête GET par lots pour obtenir l'état de la charge de travail par lots.

  • Exporte le jeu de données vers l'API du fournisseur de diffusion de messages.

NOTE
La diffusion des décisions par lots peut également être effectuée à l’aide de l’interface de Journey Optimizer. Pour plus d’informations, reportez-vous à cette section, qui fournit des informations sur les conditions préalables et les limites globales à prendre en compte lors de l’utilisation de la diffusion des décisions par lots.
  • Nombre de tâches par lot en cours d’exécution par jeu de données  : jusqu’à cinq traitements par lot peuvent être exécutées à la fois, par jeu de données. Toutes les autres requêtes par lots avec le même jeu de données de sortie sont ajoutées à la file d’attente. Une tâche en file d’attente est sélectionnée pour traitement une fois que la tâche précédente a fini son exécution.
  • Capping de la fréquence  : un lot s'exécute hors de l'instantané de profil qui se produit une fois par jour. L'API Batch Decisioning limite la fréquence et charge toujours les profils à partir de l'instantané le plus récent.

Prise en main getting-started

Avant d'utiliser cette API, veillez à suivre les étapes préalables suivantes.

Préparer la décision prepare-decision

Pour préparer une ou plusieurs décisions, veillez à créer un jeu de données, une audience et une décision. Ces prérequis sont présentés dans cette section.

Exigences en termes d'API api-requirements

Toutes les requêtes Batch Decisioning nécessitent les en-têtes suivants en plus de ceux qui sont référencés dans le Guide du développeur de l'API Decision Management :

  • Content-Type : application/json
  • x-request-id : Chaîne unique qui identifie la requête.
  • x-sandbox-name : Nom du sandbox.
  • x-sandbox-id : ID du sandbox.

Démarrage d'un traitement par lot start-a-batch-process

Pour démarrer une charge de travail afin de prendre des décisions concernant le traitement par lots, envoyez une requête POST au point d’entrée /workloads/decisions.

NOTE
Vous trouverez des informations détaillées sur le temps de traitement des traitements par lots dans cette section.

Format d’API

POST {ENDPOINT_PATH}/{CONTAINER_ID}/workloads/decisions
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/ode
{CONTAINER_ID}
Conteneur où se trouvent les décisions.
e0bd8463-0913-4ca1-bd84-6309134ca1f6

Requête

curl -X POST 'https://platform.adobe.io/data/core/ode/0948b1c5-fff8-3b76-ba17-909c6b93b5a2/workloads/decisions' \
-H 'x-request-id: f671a589-eb7b-432f-b6b9-23d5b796b4dc' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'x-sandbox-id: {SANDBOX_ID}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-d '{
  "xdm:segmentIds": [
    "609028e4-e66c-4776-b0d9-c782887e2273"
  ],
  "xdm:dataSetId": "6196b4a1a63bd118dafe093c",
  "xdm:propositionRequests": [
        {
            "xdm:activityId": "xcore:offer-activity:1410cdcda196707b",
            "xdm:placementId": "xcore:offer-placement:1410c4117306488a",
            "xdm:itemCount": 1
        }
  ],
  "xdm:includeContent": false
}'
Propriété
Description
Exemple
xdm:segmentIds
La valeur est un tableau qui contient l’identifiant unique de l’audience. Il ne peut contenir qu'une seule valeur.
609028e4-e66c-4776-b0d9-c782887e2273
xdm:dataSetId
Le jeu de données de sortie dans lequel les événements de décision peuvent être écrits.
6196b4a1a63bd118dafe093c
xdm:propositionRequests
Un wrapper qui contient placementId et activityId
xdm:activityId
L'identifiant unique de la décision.
xcore:offer-activity:1410cdcda196707b
xdm:placementId
Identifiant d'emplacement unique.
xcore:offer-placement:1410c4117306488a
xdm:itemCount
Il s’agit d'un champ facultatif indiquant le nombre d'éléments, tels que les options demandées pour la portée de la décision. Par défaut, l'API renvoie une option par portée, mais vous pouvez demander explicitement plus d'options en spécifiant ce champ. Un minimum de 1 option et un maximum de 30 options peuvent être demandés par portée.
1
xdm:includeContent
Il s'agit d'un champ facultatif qui est false par défaut. Si true, le contenu de l'offre est inclus dans les événements de décision du jeu de données.
false

Reportez-vous à la section Documentation de la gestion des décisions pour un aperçu des concepts et propriétés principaux.

Réponse

{
    "@id": "47efef25-4bcf-404f-96e2-67c4f784a1f5",
    "xdm:imsOrgId": "9GTO98D5F@AdobeOrg",
    "xdm:containerId": "0948b1c5-fff8-3b76-ba17-909c6b93b5a2",
    "ode:createDate": 1648078924834,
    "ode:status": "QUEUED"
}
Propriété
Description
Exemple
@id
L’UUID généré par la gestion des décisions qui identifie une seule charge de travail.
5d0ffb5e-dfc6-4280-99b6-0bf3131cb8b8
xdm:imsOrgId
L’ID de l’organisation.
9GTO98D5F@AdobeOrg
xdm:containerId
L’ID du conteneur.
0948b1c5-fff8-3b76-ba17-909c6b93b5a2
ode:createDate
L'heure à laquelle la requête de charge de travail de la décision a été créée.
1648078924834
ode:status
L'état de la charge de travail.
ode:status: "QUEUED"

Récupération des informations sur une décision par lot retrieve-information-on-a-batch-decision

Pour récupérer des informations sur une décision spécifique, envoyez une requête GET au point d’entrée /workloads/decisions tout en fournissant la valeur d’ID de charge de travail correspondante pour votre décision.

Format d’API

GET  {ENDPOINT_PATH}/{CONTAINER_ID}/workloads/decisions/{WORKLOAD_ID}
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/ode
{CONTAINER_ID}
Conteneur où se trouvent les décisions.
e0bd8463-0913-4ca1-bd84-6309134ca1f6
{WORKLOAD_ID}
L’UUID généré par la gestion des décisions qui identifie une seule charge de travail.
47efef25-4bcf-404f-96e2-67c4f784a1f5

Requête

curl -X GET 'https://platform.adobe.io/data/core/ode/0948b1c5-fff8-3b76-ba17-909c6b93b5a2/workloads/decisions/f395ab1f-dfaf-48d4-84c9-199ad6354591' \
-H 'x-request-id: 7832a42a-d4e5-413b-98e8-e49bef056436' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H'x-sandbox-id: {SANDBOX_ID}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}'

Réponse

{
    "@id": "f395ab1f-dfaf-48d4-84c9-199ad6354591",
    "xdm:imsOrgId": "{IMS_ORG}",
    "xdm:containerId": "0948b1c5-fff8-3b76-ba17-909c6b93b5a2",
    "ode:createDate": 1648076994405,
    "ode:status": "COMPLETED"
}
Propriété
Description
Exemple
@id
L’UUID généré par la gestion des décisions qui identifie une seule charge de travail.
5d0ffb5e-dfc6-4280-99b6-0bf3131cb8b8
xdm:imsOrgId
L’ID de l’organisation
9GTO98D5F@AdobeOrg
xdm:containerId
L’ID du conteneur
0948b1c5-fff8-3b76-ba17-909c6b93b5a2
ode:createDate
L'heure à laquelle la requête de charge de travail de décision a été créée.
1648076994405
ode:status
L'état de la charge de travail commence par « QUEUED » et passe à « PROCESSING », « INGESTING », « COMPLETED » ou « ERROR ».
ode:status: "COMPLETED"
ode:statusDetail
Elle affiche plus de détails, tels que sparkJobId et batchID si l'état est « PROCESSING » ou « INGESTING ». Elle affiche les détails de l’erreur si l'état est « ERROR ».

Étapes suivantes next-steps

En suivant ce guide de l'API, vous avez vérifié l'état de la charge de travail et envoyé des offres à l'aide de l'API Batch Decisioning. Pour plus d'informations, consultez la présentation de la gestion des décisions.

recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76