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 IMS.
Adobe Experience Platform Web SDK O 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.
É importante entender a seguinte terminologia ao trabalhar com o Offer Decisioning. Para obter mais informações e visualizar os termos adicionais, visite o glossário do Offer Decisioning.
Contêiner: Um container é um mecanismo de isolamento destinado a manter diferentes problemas separados. A ID do container é o primeiro elemento de caminho para todas as APIs do repositório. Todos os objetos de decisão residem em um container.
Escopos de decisão: Para o Offer Decisioning, os escopos de decisão são as cadeias de caracteres codificadas na Base64 de 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:
{
"activityId":"xcore:offer-activity:11cfb1fa93381aca",
"placementId":"xcore:offer-placement:1175009612b0100c"
}
Sequência de caracteres codificada Base64 do escopo de decisão:
"eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTFjZmIxZmE5MzM4MWFjYSIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjExNzUwMDk2MTJiMDEwMGMifQ=="
Você pode copiar o valor do escopo de decisão do Visão geral da atividade na interface do usuário do.
Sequências de dados: Para obter mais informações, leia a sequências de dados documentação.
Identidade: para obter mais informações, leia esta documentação descrevendo como O SDK da Web da Platform usa o Serviço de identidade.
Para ativar o Offer Decisioning, execute as seguintes etapas:
Ativação do Adobe Experience Platform no sequência de dados e marque a caixa "Offer Decisioning"
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 a guia de início rápido das tags) para obter mais informações.
Configurar o SDK para Offer Decisioning. As etapas adicionais específicas para o Offer decisioning são fornecidas a seguir.
Instalar o SDK independente
Configure a ação "sendEvent" com o decisionScopes
alloy("sendEvent", {
...
"decisionScopes": [
"eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIwOWMxM2JkZDIyNCIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMDZhODRkMDViMTEifQ==",
"eyJhY3Rpdml0eUlkIjoieGNvcmU6b2ZmZXItYWN0aXZpdHk6MTIxYWIyNWI5NTUwNWIxZiIsInBsYWNlbWVudElkIjoieGNvcmU6b2ZmZXItcGxhY2VtZW50OjEyMWFiMjFmOTQzMDE0MmIifQ=="
]
})
Instalar o SDK por meio de tags
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.
Crie o necessário Elementos de dados. 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.
Crie seu Regras.
Adicione uma ação Enviar evento do SDK da Web da plataforma e adicione as ações relevantes decisionScopes
à configuração dessa ação
Criar e publicar uma biblioteca contendo todas as Regras, Elementos de dados e Extensões relevantes que você configurou
decisionScopes
valueSolicitaçã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 a variável 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 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" } |
decisionScopes
valoresSolicitaçã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 a variável 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 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" } |
No momento, algumas restrições de oferta não são compatíveis com os fluxos de trabalho móveis do Experience Edge, 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 de elegibilidade e restrições da oferta.