Uso del Offer decisioning con el SDK web de Platform

NOTE
El uso de Offer decisioning en el SDK web de Adobe Experience Platform está disponible en el acceso anticipado para usuarios seleccionados. Esta funcionalidad no está disponible para todas las organizaciones.

Adobe Experience Platform Web SDK puede entregar y procesar ofertas personalizadas que se administran en Offer Decisioning. Puede crear sus ofertas y otros objetos relacionados mediante la interfaz de usuario (IU) o las API de Offer decisioning.

Requisitos previos

  • La organización está habilitada para la toma de decisiones perimetrales
  • Ofertas, Actividades creadas
  • Flujo de datos publicado

Terminología

Es importante comprender la siguiente terminología al trabajar con Offer Decisioning. Para obtener más información y ver términos adicionales, visite el glosario de Offer decisioning.

  • Ámbitos de decisión: Para el Offer decisioning, los ámbitos de decisión son las cadenas de JSON codificadas en Base64 que contienen los identificadores de actividad y ubicación que desea que utilice el servicio de offer decisioning para proponer ofertas.

    Ámbito de decisión JSON:

    code language-json
    {
      "activityId":"xcore:offer-activity:11cfb1fa93381aca",
      "placementId":"xcore:offer-placement:1175009612b0100c"
    }
    

    Cadena codificada en Base64 del ámbito de decisión:

    code language-json
    "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
    
    note tip
    TIP
    Puede copiar el valor del ámbito de decisión desde la página Información general de actividad en la interfaz de usuario.

    Configuración de copia de decisión.

  • Flujos de datos: Para obtener más información, lea la documentación de flujos de datos.

  • Identidad: para obtener más información, lea esta documentación en la que se describe cómo utiliza el SDK web de Platform el servicio de identidad.

Habilitando Offer decisioning

Para habilitar Offer Decisioning, realice los siguientes pasos:

  1. Habilitó Adobe Experience Platform en su secuencia de datos y marque la casilla "Offer decisioning"

    offer-decisioning-edge-config

  2. Siga las instrucciones para instalar el SDK (el SDK se puede instalar de forma independiente o a través de la interfaz de usuario. Consulte la guía de inicio rápido de etiquetas) para obtener más información.

  3. Configure el SDK para el Offer decisioning mediante personalization.decisionScopes. A continuación se proporcionan pasos adicionales específicos para el Offer decisioning.

    • Instalación del SDK independiente

      1. Configurar la acción "sendEvent" con personalization.decisionScopes
      code language-javascript
      alloy("sendEvent", {
        ...
        "personalization": {
          "decisionScopes": [
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIwOWMxM2JkZDIyNCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMDZhODRkMDViMTEifQ==",
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIyNWI5NTUwNWIxZiIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMjFmOTQzMDE0MmIifQ=="
          ]
        }
      });
      
    • Instalación del SDK mediante etiquetas

      1. Creación de una propiedad de etiqueta

      2. Agregar el código incrustado

      3. Instale y configure la extensión del SDK web de Platform con la secuencia de datos que ha creado seleccionando la configuración en la lista desplegable "Secuencia de datos". Consulte la documentación sobre extensiones.

        install-aep-web-sdk-extension

        configure-aep-web-sdk-extension

      4. Cree los elementos de datos necesarios. Como mínimo, debe crear un mapa de identidad del SDK web de Platform y un elemento de datos del objeto XDM de SDK web de Platform.

        elemento de datos del mapa de identidad

        xdm-object-data-element

      5. Cree sus reglas.

        • Agregue una acción Enviar evento del SDK web de Platform y agregue el elemento decisionScopes relevante a la configuración de dicha acción

        send-event-action-decisionScopes

      6. Cree y publique una biblioteca que contenga todas las reglas, elementos de datos y extensiones relevantes que haya configurado

Solicitudes y respuestas de ejemplo

Un valor decisionScopes

Solicitud

{
  "events": [
    {
      "xdm": {
        "identityMap": {
          "ECID": [
            {
              "id": "91133425615229052182584359620783097099"
            }
          ]
        }
      },
      "query": {
        "personalization": {
          "decisionScopes": [
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
          ]
        }
      }
    }
  ]
}
Propiedad
Requerido
Descripción
Límites
Ejemplo
identityMap
Consulte esta documentación del servicio de identidad.
Una identidad por solicitud.
{ "identityMap": { "ECID": [ { "id": "91133425615229052182584359620783097099" } ] } }.

Nota: Los usuarios no necesitan incluir el parámetro ECID en la llamada de API. Este parámetro se agrega automáticamente a la llamada de si es necesario.
decisionScopes
Matriz de cadenas JSON codificadas en Base64 que contiene los ID de actividad y ubicación.
Máximo 30 decisionScopes por solicitud.
"decisionScopes": ["eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="]

Respuesta

{
  "requestId": "94c4f2f1-9218-43ce-afd3-eb0d853c5174",
  "handle": [
    {
      "payload": [
        {
          "id": "2862bb89-5df2-4bc6-85c2-d8f7e1a091de",
          "scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ==",
          "activity": {
            "id": "xcore:offer-activity:11cfb1fa93381aca",
            "etag": "2"
          },
          "placement": {
            "id": "xcore:offer-placement:1175009612b0100c",
            "etag": "1"
          },
          "items": [
            {
              "id": "xcore:personalized-offer:124cc332095cfa74",
              "schema": "https://ns.adobe.com/experience/offer-management/content-component-html",
              "etag": "1",
              "data": {
                "id": "xcore:personalized-offer:124cc332095cfa74",
                "format": "text/html",
                "language": [
                  "en-US"
                ],
                "content": "<p>20% Off on shipping</p>",
                "characteristics": {
                  "foo": "bar",
                  "foo1": "bar1"
                }
              }
            }
          ]
        }
      ],
      "type": "personalization:decisions",
      "eventIndex": 0
    }
  ]
}
Propiedad
Descripción
Ejemplo
scope
Ámbito de decisión que dio lugar a las ofertas propuestas.
"scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
activity.id
ID único de la actividad de oferta.
"id": "xcore:offer-activity:11cfb1fa93381aca"
placement.id
ID único de la ubicación de la oferta.
"id": "xcore:offer-placement:1175009612b0100c"
items.id
El ID de la oferta propuesta.
"id": "xcore:personalized-offer:124cc332095cfa74"
schema
El esquema del contenido asociado con la oferta propuesta.
"schema": "https://ns.adobe.com/experience/offer-management/content-component-html"
data.id
El ID de la oferta propuesta.
"id": "xcore:personalized-offer:124cc332095cfa74"
format
El formato del contenido asociado con la oferta propuesta.
"format": "text/html"
language
Una matriz de idiomas asociados con el contenido de la oferta propuesta.
"language": [ "en-US" ]
content
Contenido asociado con la oferta propuesta en formato de cadena.
"content": "<p style="color:red;">20% Off on shipping</p>"
deliveryUrl
Contenido de imagen asociado con la oferta propuesta en formato de dirección URL.
"deliveryURL": "https://image.jpeg"
characteristics
Características asociadas con la oferta propuesta en formato de objeto JSON.
"characteristics": { "foo": "bar", "foo1": "bar1" }

Varios valores decisionScopes

Solicitud

{
  "events": [
    {
      "xdm": {
        "identityMap": {
          "ECID": [
            {
              "id": "91133425615229052182584359620783097099"
            }
          ]
        }
      },
      "query": {
        "personalization": {
          "decisionScopes": [
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ==",
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIyMjA4YjNhODc0MDU1OCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMjIwNDUyOTUxNGEyYzAifQ==",
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIyYzkxMzg1Mjc2MDE4YyIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMzMxZjU2MTYyYWEyZjcifQ=="
          ]
        }
      }
    }
  ]
}
Propiedad
Requerido
Descripción
Límites
Ejemplo
identityMap
Consulte esta documentación del servicio de identidad.
Una identidad por solicitud.
{ "identityMap": { "ECID": [ { "id": "91133425615229052182584359620783097099" } ] } }.

Nota: Los usuarios no necesitan incluir el parámetro ECID en la llamada de API. Este parámetro se agrega automáticamente a la llamada de si es necesario.
decisionScopes
Matriz de cadenas JSON codificadas en Base64 que contiene los ID de actividad y ubicación.
Máximo 30 decisionScopes por solicitud.
"decisionScopes":["eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ==", "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIyMjA4YjNhODc0MDU1OCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMjIwNDUyOTUxNGEyYzAifQ=="

Respuesta

{
  "requestId": "94c4f2f1-9218-43ce-afd3-eb0d853c5174",
  "handle": [
    {
      "payload": [
        {
          "id": "a2804dfb-a0ec-4df9-8311-59d3ecdeb642",
          "scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MTEyMyIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDExMjMifQ==",
          "activity": {
            "id": "xcore:offer-activity:11cfb1fa93381123",
            "etag": "1"
          },
          "placement": {
            "id": "xcore:offer-placement:1175009612b01123",
            "etag": "3"
          },
          "items": [
            {
              "id": "xcore:personalized-offer:11e36d4a22954123",
              "schema": "https://ns.adobe.com/experience/offer-management/content-component-text",
              "etag": "2",
              "data": {
                "id": "xcore:personalized-offer:11e36d4a22954123",
                "format": "text/text",
                "language": [
                  "en"
                ],
                "content": "20% Off on shipping",
                "characteristics": {
                  "foo2": "bar2"
                }
              }
            }
          ]
        },
        {
          "id": "a2804dfb-a0ec-4df9-8311-59d3ecdeb642",
          "scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ==",
          "activity": {
            "id": "xcore:offer-activity:11cfb1fa93381aca",
            "etag": "2"
          },
          "placement": {
            "id": "xcore:offer-placement:1175009612b0100c",
            "etag": "1"
          },
          "items": [
            {
              "id": "xcore:personalized-offer:11e36d4a2295415d",
              "schema": "https://ns.adobe.com/experience/offer-management/content-component-imagelink",
              "etag": "1",
              "data": {
                "id": "xcore:personalized-offer:11e36d4a2295415d",
                "format": "image/png",
                "language": [
                  "en"
                ],
                "deliveryURL": "https://image.jpeg",
                "characteristics": {
                  "foo": "bar",
                  "foo1": "bar1"
                }
              }
            }
          ]
        }
      ],
      "type": "personalization:decisions",
      "eventIndex": 0
    }
  ]
}
Propiedad
Descripción
Ejemplo
scope
Ámbito de decisión que dio lugar a las ofertas propuestas.
"scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
activity.id
ID único de la actividad de oferta.
"id": "xcore:offer-activity:11cfb1fa93381123"
placement.id
ID único de la ubicación de la oferta.
"xcore:offer-placement:1175009612b01123"
items.id
El ID de la oferta propuesta.
"id": "xcore:personalized-offer:11e36d4a22954123"
schema
El esquema del contenido asociado con la oferta propuesta.
"schema": "https://ns.adobe.com/experience/offer-management/content-component-text"
data.id
El ID de la oferta propuesta.
"id": "xcore:personalized-offer:11e36d4a22954123"
format
El formato del contenido asociado con la oferta propuesta.
"format": "text/text"
language
Una matriz de idiomas asociados con el contenido de la oferta propuesta.
"language": [ "en-US" ]
content
Contenido asociado con la oferta propuesta en formato de cadena.
"content": "<p style="color:red;">20% Off on shipping</p>"
deliveryUrl
Contenido de imagen asociado con la oferta propuesta en formato de dirección URL.
"deliveryURL": "https://image.jpeg"
characteristics
Características asociadas con la oferta propuesta en formato de objeto JSON.
"characteristics": { "foo": "bar", "foo1": "bar1" }

Limitaciones

Actualmente, algunas restricciones de oferta no son compatibles con los flujos de trabajo de Edge Network móviles, por ejemplo, Límite. El valor del campo Límite especifica el número de veces que se puede presentar una oferta entre todos los usuarios. Para obtener más información, consulte Documentación sobre reglas de elegibilidad de ofertas y restricciones.

recommendation-more-help
ad108910-6329-42f1-aa1d-5920a2b13636