Utilização do Offer Decisioning com o SDK da Web da plataforma

NOTE
O uso do Offer Decisioning no SDK da Web da Adobe Experience Platform está disponível no acesso antecipado a usuários selecionados. Essa funcionalidade não está disponível para todas as organizações.

O Adobe Experience Platform Web SDK pode entregar e renderizar ofertas personalizadas que são gerenciadas no Offer Decisioning. É possível criar suas ofertas e outros objetos relacionados usando a interface ou as APIs do Offer Decisioning.

Pré-requisitos

  • A organização está habilitada para decisão de borda
  • Ofertas, Atividades criadas
  • A sequência de dados é publicada

Terminologia

É importante entender a seguinte terminologia ao trabalhar com o Offer Decisioning. Para obter mais informações e exibir termos adicionais, visite o glossário de Offers decisioning.

  • Escopos de Decisão: Para o Offer Decisioning, os escopos de decisão são as cadeias de caracteres codificadas em Base64 do JSON que contêm as IDs de atividade e posicionamento que você deseja que o serviço do offer decisioning use para propor ofertas.

    Escopo de decisão JSON:

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

    Cadeia de caracteres codificada de Base64 de escopo de decisão:

    code language-json
    "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
    
    note tip
    TIP
    Você pode copiar o valor do escopo de decisão da página Visão geral da atividade na interface.

    Configurações de cópia de decisão.

  • Datastreams: Para obter mais informações, leia a documentação de datastreams.

  • Identidade: para obter mais informações, leia esta documentação que descreve como o SDK da Web da Platform usa o Serviço de Identidade.

Ativar o Offer Decisioning

Para ativar o Offer Decisioning, execute as seguintes etapas:

  1. Habilitou o Adobe Experience Platform na sua sequência de dados e marcou a caixa "Offer decisioning"

    offer-decisioning-edge-config

  2. Siga as instruções para instalar o SDK (O SDK pode ser instalado de forma independente ou por meio da interface do usuário. Consulte o guia de início rápido das tags) para obter mais informações.

  3. Configure o SDK para o Offer Decisioning usando o personalization.decisionScopes. As etapas adicionais específicas para o Offer decisioning são fornecidas a seguir.

    • Instalar o SDK independente

      1. Configurar a ação "sendEvent" com personalization.decisionScopes
      code language-javascript
      alloy("sendEvent", {
        ...
        "personalization": {
          "decisionScopes": [
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIwOWMxM2JkZDIyNCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMDZhODRkMDViMTEifQ==",
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIyNWI5NTUwNWIxZiIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMjFmOTQzMDE0MmIifQ=="
          ]
        }
      });
      
    • Instalar o SDK por meio de tags

      1. Criar uma propriedade de tag

      2. Adicionar o código de inserção

      3. Instale e configure a extensão SDK da Web da Platform com a sequência de dados criada selecionando a configuração na lista suspensa "Sequência de dados". Consulte a documentação em extensões.

        install-aep-web-sdk-extension

        configure-aep-web-sdk-extension

      4. Crie os Elementos de Dados necessários. No mínimo, você deve criar um Mapa de identidade do SDK da Web da plataforma e um elemento de dados do Objeto XDM do SDK da Web da plataforma.

        identity-map-data-element

        xdm-object-data-element

      5. Crie suas Regras.

        • Adicione uma ação Enviar evento do SDK da Web da plataforma e adicione o decisionScopes relevante à configuração dessa ação

        send-event-action-decisionScopes

      6. Crie e publique uma biblioteca contendo todas as Regras, Elementos de Dados e Extensões relevantes que você configurou

Solicitações e respostas de exemplo

Um valor de decisionScopes

Solicitação

{
  "events": [
    {
      "xdm": {
        "identityMap": {
          "ECID": [
            {
              "id": "91133425615229052182584359620783097099"
            }
          ]
        }
      },
      "query": {
        "personalization": {
          "decisionScopes": [
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
          ]
        }
      }
    }
  ]
}
Propriedade
Obrigatório
Descrição
Limites
Exemplo
identityMap
Sim
Consulte esta documentação do Serviço de Identidade.
Uma identidade por solicitação.
{ "identityMap": { "ECID": [ { "id": "91133425615229052182584359620783097099" } ] } }.

Observação: os usuários não precisam incluir o parâmetro ECID na chamada de API. Esse parâmetro é adicionado automaticamente à chamada do, se necessário.
decisionScopes
Sim
Uma matriz de sequências de caracteres codificadas na Base64 de JSON que contém as IDs de atividade e posicionamento.
Máximo de 30 decisionScopes por solicitação.
"decisionScopes": ["eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="]

Resposta

{
  "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
    }
  ]
}
Propriedade
Descrição
Exemplo
scope
O escopo de decisão que resultou nas ofertas propostas.
"scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
activity.id
O identificador exclusivo da atividade de oferta.
"id": "xcore:offer-activity:11cfb1fa93381aca"
placement.id
O identificador exclusivo do posicionamento da oferta.
"id": "xcore:offer-placement:1175009612b0100c"
items.id
A ID da oferta proposta.
"id": "xcore:personalized-offer:124cc332095cfa74"
schema
O schema do conteúdo associado à oferta proposta.
"schema": "https://ns.adobe.com/experience/offer-management/content-component-html"
data.id
A ID da oferta proposta.
"id": "xcore:personalized-offer:124cc332095cfa74"
format
O formato do conteúdo associado à oferta proposta.
"format": "text/html"
language
Uma matriz de idiomas associados ao conteúdo da oferta proposta.
"language": [ "en-US" ]
content
Conteúdo associado à oferta proposta no formato de uma cadeia de caracteres.
"content": "<p style="color:red;">20% Off on shipping</p>"
deliveryUrl
Conteúdo de imagem associado à oferta proposta no formato de um URL.
"deliveryURL": "https://image.jpeg"
characteristics
Características associadas à oferta proposta no formato de um objeto JSON.
"characteristics": { "foo": "bar", "foo1": "bar1" }

Vários valores de decisionScopes

Solicitação

{
  "events": [
    {
      "xdm": {
        "identityMap": {
          "ECID": [
            {
              "id": "91133425615229052182584359620783097099"
            }
          ]
        }
      },
      "query": {
        "personalization": {
          "decisionScopes": [
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ==",
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIyMjA4YjNhODc0MDU1OCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMjIwNDUyOTUxNGEyYzAifQ==",
            "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIyYzkxMzg1Mjc2MDE4YyIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMzMxZjU2MTYyYWEyZjcifQ=="
          ]
        }
      }
    }
  ]
}
Propriedade
Obrigatório
Descrição
Limites
Exemplo
identityMap
Sim
Consulte esta documentação do Serviço de Identidade.
Uma identidade por solicitação.
{ "identityMap": { "ECID": [ { "id": "91133425615229052182584359620783097099" } ] } }.

Observação: os usuários não precisam incluir o parâmetro ECID na chamada de API. Esse parâmetro é adicionado automaticamente à chamada do, se necessário.
decisionScopes
Sim
Uma matriz de sequências de caracteres codificadas na Base64 de JSON que contém as IDs de atividade e posicionamento.
Máximo de 30 decisionScopes por solicitação.
"decisionScopes":["eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ==", "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIyMjA4YjNhODc0MDU1OCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMjIwNDUyOTUxNGEyYzAifQ=="

Resposta

{
  "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
    }
  ]
}
Propriedade
Descrição
Exemplo
scope
O escopo de decisão que resultou nas ofertas propostas.
"scope": "eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
activity.id
O identificador exclusivo da atividade de oferta.
"id": "xcore:offer-activity:11cfb1fa93381123"
placement.id
O identificador exclusivo do posicionamento da oferta.
"xcore:offer-placement:1175009612b01123"
items.id
A ID da oferta proposta.
"id": "xcore:personalized-offer:11e36d4a22954123"
schema
O schema do conteúdo associado à oferta proposta.
"schema": "https://ns.adobe.com/experience/offer-management/content-component-text"
data.id
A ID da oferta proposta.
"id": "xcore:personalized-offer:11e36d4a22954123"
format
O formato do conteúdo associado à oferta proposta.
"format": "text/text"
language
Uma matriz de idiomas associados ao conteúdo da oferta proposta.
"language": [ "en-US" ]
content
Conteúdo associado à oferta proposta no formato de uma cadeia de caracteres.
"content": "<p style="color:red;">20% Off on shipping</p>"
deliveryUrl
Conteúdo de imagem associado à oferta proposta no formato de um URL.
"deliveryURL": "https://image.jpeg"
characteristics
Características associadas à oferta proposta no formato de um objeto JSON.
"characteristics": { "foo": "bar", "foo1": "bar1" }

Limitações

No momento, algumas restrições de oferta não são compatíveis com os workflows de Edge Network móvel, por exemplo, Limite. O valor do campo Limite especifica o número de vezes que uma oferta pode ser apresentada a todos os usuários. Para obter mais detalhes, consulte Documentação de regras e restrições de qualificação da oferta.

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