Uso del Offer decisioning con el SDK web de Platform

NOTA

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

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 IMS está habilitada para la toma de decisiones de Edge
  • Ofertas, actividades creadas
  • Datastream se publica

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 del Offer decisioning.

  • Contenedor: un contenedor es un mecanismo de aislamiento para mantener separadas diferentes preocupaciones. El ID de contenedor es el primer elemento de ruta para todas las API de repositorio. Todos los objetos de decisión residen dentro de un contenedor.

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

    Ámbito de la decisión JSON:

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

    Alcance de la decisión Cadena codificada Base64:

    "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
    
    SUGERENCIA

    Puede copiar el valor del ámbito de decisión de la página Información general de actividad en la interfaz de usuario.

  • Datastreams: Para obtener más información, lea la documentación de 🔗 datastreamsdocumentation.

  • Identidad: Para obtener más información, consulte esta documentación que describe cómo utiliza el SDK web de Platform el servicio de identidad.

Activación del Offer decisioning

Para habilitar el Offer decisioning, realice los pasos siguientes:

  1. Adobe Experience Platform habilitado en su almacén de datos y marque la casilla "Offer decisioning"

    offer-decisioning-edge-config

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

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

    • Instalación del SDK independiente

      1. Configure la acción "sendEvent" con su decisionScopes

         alloy("sendEvent", {
            ...
            "decisionScopes": [
                "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIwOWMxM2JkZDIyNCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMDZhODRkMDViMTEifQ==",
                "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIyNWI5NTUwNWIxZiIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMjFmOTQzMDE0MmIifQ=="
            ]
         })
        
    • Instalación del SDK mediante etiquetas

      1. Crear una propiedad de etiqueta

      2. Añadir el código de incrustación de

      3. Instale y configure la extensión del SDK web de Platform con el Datastream que ha creado seleccionando la configuración en la lista desplegable "Datastream". 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 plataforma y un elemento de datos de objeto XDM del SDK web de plataforma .

        identity-map-data-element

        xdm-object-data-element

      5. Cree sus Reglas.

        • Añada una acción de Platform Web SDK Send Event y añada el decisionScopes correspondiente a la configuración de esa 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" } ] } }
decisionScopes Matriz de cadenas codificadas Base64 de JSON que contienen 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 El ámbito de decisión que dio lugar a las ofertas propuestas. "scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
activity.id ID exclusivo de la actividad de oferta. "id": "xcore:offer-activity:11cfb1fa93381aca"
placement.id ID exclusivo 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 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 Matriz de idiomas asociados al 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 URL. "deliveryURL": "https://image.jpeg"
characteristics Características asociadas con la oferta propuesta en el formato de un 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" } ] } }
decisionScopes Matriz de cadenas codificadas Base64 de JSON que contienen 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 El ámbito de decisión que dio lugar a las ofertas propuestas. "scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
activity.id ID exclusivo de la actividad de oferta. "id": "xcore:offer-activity:11cfb1fa93381123"
placement.id ID exclusivo 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 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 Matriz de idiomas asociados al 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 URL. "deliveryURL": "https://image.jpeg"
characteristics Características asociadas con la oferta propuesta en el formato de un objeto JSON. "characteristics": { "foo": "bar", "foo1": "bar1" }

Limitaciones

Algunas restricciones de oferta actualmente no son compatibles con los flujos de trabajo móviles de Experience Edge, por ejemplo, Restricción. El valor del campo Restricción especifica el número de veces que se puede presentar una oferta en todos los usuarios. Para obtener más información, consulte Documentación de reglas y restricciones de idoneidad para ofertas.

En esta página