Distribuire le offerte tramite l’API Decisioning decisioning-api
Con la funzione di gestione delle decisioni, puoi creare e fornire esperienze di offerta personalizzate per l’utente finale, per diversi canali e applicazioni utilizzando la logica di business e le regole decisionali. Un’offerta è un messaggio di marketing a cui possono essere associate delle regole che determinano gli utenti idonei per visualizzare l’offerta.
Per creare e consegnare le offerte, devi effettuare una richiesta POST al Decisioning API.
Questo tutorial richiede una buona conoscenza delle API, in particolare per quanto riguarda la gestione delle decisioni. Per ulteriori informazioni, vedere Guida per gli sviluppatori API per la gestione delle decisioni. Questo tutorial richiede anche di avere a disposizione un ID posizionamento e un valore ID decisione univoci. Se non hai acquisito questi valori, consulta i tutorial per creazione di un posizionamento e creazione di una decisione.
➡️ Scopri questa funzione nel video
Intestazioni richieste required-headers
La tabella seguente mostra i valori validi che compongono Content-Type e Accetta campi nell’intestazione della richiesta:
application/vnd.adobe.xdm+json; schema="https://ns.adobe.com/experience/offer-management/decision-response;version=1.0"
application/vnd.adobe.xdm+json; schema="https://ns.adobe.com/experience/offer-management/decision-request;version=1.0"
Bearer {ACCESS_TOKEN}
{IMS_ORG}
{SANDBOX_NAME}
{API_KEY}
- Tutte le richieste che contengono un payload (POST,PUT,PATCH) richiedono l’intestazione content-type
richiesta API request
Formato API
POST /{ENDPOINT_PATH}/decisions
{ENDPOINT_PATH}
https://platform.adobe.io/data/core/ods
{CONTAINER_ID}
e0bd8463-0913-4ca1-bd84-6309134ca1f6
Richiesta
curl -X POST \
'https://platform.adobe.io/data/core/ods/decisions' \
-H 'Accept: application/vnd.adobe.xdm+json; schema="https://ns.adobe.com/experience/offer-management/decision-response;version=1.0"' \
-H 'Content-Type: application/vnd.adobe.xdm+json; schema="https://ns.adobe.com/experience/offer-management/decision-request;version=1.0"'
-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}'
-d '{
"xdm:propositionRequests": [
{
"xdm:placementId": "xcore:offer-placement:ffed0456",
"xdm:activityId": "xcore:offer-activity:ffed0123",
"xdm:itemCount": 2
},
{
"xdm:placementId": "xcore:offer-placement:ffed0012",
"xdm:activityId": "xcore:offer-activity:fffc0789"
}
],
"xdm:profiles": [
{
"xdm:identityMap": {
"SWCUSTID": [
{
"xdm:id": "123@abc.com"
}
]
},
"xdm:decisionRequestId": "0AA00002-0000-1224-c0de-cjf98Csj43"
}
],
"xdm:allowDuplicatePropositions": {
"xdm:acrossActivities": true,
"xdm:acrossPlacements": true
},
"xdm:mergePolicy": {
"xdm:id": "5f3ed32f-eaf1-456c-b0f0-7b338c4cb18a"
},
"xdm:responseFormat": {
"xdm:includeContent": true,
"xdm:includeMetadata": {
"xdm:activity": [
"name"
],
"xdm:option": [
"name"
],
"xdm:placement": [
"name"
]
}
}
}'
xdm:propositionRequests
xdm:propositionRequests.xdm:placementId
"xdm:placementId": "xcore:offer-placement:ffed0456"
xdm:propositionRequests.xdm:activityId
"xdm:activityId": "xcore:offer-activity:ffed0123"
xdm:itemCount
"xdm:itemCount": 2
xdm:profiles
xdm:profiles.xdm:identityMap
Email: [{"xdm:id": "123@abc.com"}]
xdm:profiles.xdm:decisionRequestId
"xdm:decisionRequestId": "0AA00002-0000-1224-c0de-cjf98Csj43"
xdm:allowDuplicatePropositions
xdm:allowDuplicatePropositions.xdm:acrossActivities
"xdm:acrossActivities": true
xdm:allowDuplicatePropositions.xdm:acrossPlacements
"xdm:acrossPlacements": true
xdm:mergePolicy.xdm:id
"xdm:id": "5f3ed32f-eaf1-456c-b0f0-7b338c4cb18a"
xdm:responseFormat
xdm:responseFormat.xdm:includeContent
true
, include il contenuto della risposta."xdm:includeContent": true
xdm:responseFormat.xdm:includeMetadata
xdm:id
e repo:etag
vengono restituiti per impostazione predefinita.name
xdm:responseFormat.xdm:activity
xdm:activity
.name
xdm:responseFormat.xdm:option
xdm:option
.name
, characteristics
xdm:responseFormat.xdm:placement
xdm:placement
.name
, channel
, componentType
Risposta
In caso di esito positivo, la risposta restituisce informazioni sulla proposta, comprese le sue caratteristiche univoche xdm:propositionId
.
{
"xdm:propositionId": "5d0ffb5e-dfc6-4280-99b6-0bf3131cb8b8",
"xdm:propositions": [
{
"xdm:activity": {
"xdm:id": "xcore:activity:ffed0123",
"repo:etag": 4
},
"xdm:placement": {
"xdm:id": "xcore:placement:ffed0456",
"repo:etag": 1
},
"xdm:options": [
{
"xdm:id": "xcore:personalized-option:ccc0111",
"repo:etag": 3,
"@type": "https://ns.adobe.com/experience/decisioning/content-component-html-template",
"xdm:content": "<html>some html</html>"
},
{
"xdm:id": "xcore:personalized-option:ccc0222",
"repo:etag": 5,
"@type": "https://ns.adobe.com/experience/decisioning/content-component-html-template",
"xdm:content": "<html>hello, world</html>",
"xdm:score": 45.65
}
]
},
{
"xdm:activity": {
"xdm:id": "xcore:activity:ffed0123",
"repo:etag": 4
},
"xdm:placement": {
"xdm:id": "xcore:placement:ffed0789",
"repo:etag": 2
},
"xdm:fallback": {
"xdm:id": "xcore:fallback:ccc0222",
"repo:etag": 5,
"@type": "https://ns.adobe.com/experience/decisioning/content-component-imagelink",
"dc:format": "image/png",
"xdm:deliveryURL": "https://cdn.adobe.com/content/1445323-1134331.png",
"xdm:content": "https://www.adobe.com/index2.html"
}
}
],
"ode:createDate": 1566497582038
}
xdm:propositionId
"xdm:propositionId": "5d0ffb5e-dfc6-4280-99b6-0bf3131cb8b8"
xdm:propositions
options
proprietà o un fallback
proprietà. Se presente, il options
la proprietà non può essere vuota.xdm:propositions.xdm:activity
"xdm:id": "xcore:activity:ffed0123"
xdm:propositions.xdm:placement
"xdm:id": "xcore:placement:ffed0456"
xdm:propositions.xdm:options
xdm:id": "xcore:personalized-option:ccc0111
xdm:propositions.xdm:options.@type
@type
funge da contratto di elaborazione per il cliente. Quando l'esperienza viene assemblata, il compositore cercherà i componenti che hanno un tipo specifico.https://ns.adobe.com/experience/offer-management/content-component-imagelink
xdm:propositions.xdm:content
text
, html block
, o image link
xdm:score
"xdm:score": 45.65
xdm:propositions.xdm:fallback
"xdm:id": "xcore:fallback:ccc0222"
xdm:propositions.xdm:fallback.dc:format
"dc:format": "image/png"
oppure "image/jpeg"
xdm:propositions.xdm:fallback.xdm:deliveryURL
https://d37yhxrr0p3l3l.cloudfront.net/0fd0f090-a148-11ea-89e3-f1f2ad52f7e8/urn:aaid:sc:US:a68c86a6-9295-4940-a083-11916b665500/0/40d78a12-f8b6-3f07-8e67-7cb8ae2cc7ec
ode:createDate
"ode:createDate": 1566497582038
Codici di risposta
La tabella seguente elenca tutti i codici che possono essere restituiti nella risposta:
Passaggi successivi next-steps
Seguendo questa guida API, hai creato e consegnato offerte utilizzando Decisions API. Per ulteriori informazioni, vedere panoramica sulla gestione delle decisioni.