Objetos aninhados em eventos personalizados
Este artigo descreve como enviar dados JSON aninhados como propriedades de eventos personalizados e compras, e como usar esses objetos aninhados no seu envio de mensagens.
Você pode usar objetos aninhados—objetos que estão dentro de outro objeto—para enviar dados JSON aninhados como propriedades de eventos personalizados e compras. Estes dados aninhados podem ser usados para modelar informações personalizadas em mensagens, para acionar envios de mensagens e para segmentação.
Limitações
- Dados aninhados são suportados tanto para eventos personalizados quanto para eventos de compra, mas não para outros tipos de eventos.
- Objetos de propriedades de evento que contêm valores de array ou objeto podem ter uma carga útil de propriedade de evento de até 100 KB.
- Os esquemas de propriedades de eventos não podem ser gerados para eventos de compra.
- Os esquemas de propriedades de eventos são gerados através da amostragem de eventos personalizados das últimas 24 horas.
Versões mínimas do SDK
As seguintes versões do SDK suportam objetos aninhados:
Etapa 1: Gerar um esquema
Para acessar os dados aninhados no seu evento personalizado, gere um esquema para cada evento com propriedades de evento aninhadas. Para gerar um esquema, siga estas etapas:
- Acessar Configurações de Dados > Eventos Personalizados.
- Selecione Gerenciar Propriedades para os eventos com propriedades aninhadas.
- Selecione o botão para gerar o esquema. Para visualizar o esquema, selecione o botão de adição.
Etapa 2: Use o objeto aninhado
Depois de gerar um esquema, você pode referenciar os dados aninhados durante a segmentação e personalização. Consulte as seguintes seções para exemplos de uso:
Corpo da solicitação da API
Veja a seguir um /users/track
exemplo com um evento personalizado “Criou playlist”. Depois que uma playlist for criada, para capturar as propriedades da playlist, enviaremos uma solicitação de API que lista “músicas” como uma propriedade, e um array das propriedades aninhadas das músicas.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
...
"properties": {
"songs": [
{
"title": "Smells Like Teen Spirit",
"artist": "Nirvana",
"album": {
"name": "Nevermind",
"yearReleased": "1991"
}
},
{
"title": "While My Guitar Gently Weeps",
"artist": "the Beatles",
"album": {
"name": "The Beatles",
"yearReleased": "1968"
}
}
]
}
...
O seguinte é um /users/track
exemplo com um evento personalizado “Comprou”. Após um pedido ser concluído, para capturar as propriedades desse pedido, enviaremos uma solicitação API que lista “r_details” como uma propriedade, e as propriedades aninhadas desse pedido.
1
2
3
4
5
6
7
8
9
10
11
12
...
"properties": {
"r_details": {
"name": "McDonalds",
"identifier": "12345678",
"location" : {
"city": "Montclair",
"state": "NJ"
}
}
}
...
Modelos do Liquid
Os seguintes exemplos de modelagem Liquid mostram como referenciar as propriedades aninhadas salvas da solicitação de API anterior e usá-las no seu envio de mensagens Liquid. Usando Liquid e notação de ponto, percorra os dados aninhados para encontrar o nó específico que você gostaria de incluir em suas mensagens.
Modelagem em Liquid em uma mensagem acionada pelo evento “Created Playlist”:
{{event_properties.${songs}[0].album.name}}
: “Deixa pra lá”
{{event_properties.${songs}[1].title}}
: Enquanto Minha Guitarra Gentilmente Chora
Modelagem em Liquid em uma mensagem acionada pelo evento “Ordered”:
{{event_properties.${r_details}.location.city}}
: Montclair
Mensagem de gatilho
Para usar essas propriedades para disparar uma campanha, selecione seu evento personalizado ou compra, e adicione um Filtro de Propriedade Aninhada. Nota que o disparo de mensagens ainda não é suportado para mensagens no app, mas as propriedades aninhadas na personalização Liquid nas mensagens ainda serão exibidas.
Acionando uma campanha com propriedades aninhadas do evento “Playlist Criada”:
A condição de disparo songs[].album.yearReleased
“é” “1968” corresponderá a um evento onde qualquer uma das músicas tenha um álbum lançado em 1968. Usamos a notação de colchetes []
para percorrer matrizes e correspondemos se qualquer item na matriz percorrida corresponder à propriedade do evento.
Acionando uma campanha com propriedades aninhadas do evento “Ordered”:
r_details.name
: Mcdonalds
r_details.location.city
: Montclair
Se a propriedade do seu evento contiver os caracteres []
ou .
, escape-os colocando o trecho entre aspas duplas. Por exemplo, "songs[].album".yearReleased
corresponderá a um evento com a propriedade literal "songs[].album"
.
Segmentação
Para segmentar usuários com base em propriedades de eventos aninhados, você deve usar extensões de segmento. Depois de gerar um esquema, o explorador de objetos aninhados será exibido na seção de segmentação.
A segmentação usa a mesma notação que o gatilho (veja Gatilho de mensagem).
Personalização
Usando o modal Adicionar Personalização, selecione Propriedades Avançadas do Evento como o tipo de personalização. Isso permite a opção de adicionar propriedades de eventos aninhados após um esquema ter sido gerado.
Perguntas frequentes
O uso de objetos aninhados consome pontos de dados adicionais?
Não há mudança na forma como cobramos pontos de dados como resultado da adição dessa capacidade. A segmentação com base em objetos aninhados usa extensões de segmento, o que não acarreta uso adicional de pontos de dados.
Quantos dados aninhados podem ser enviados?
Se uma ou mais propriedades do evento contiverem dados aninhados, a carga útil máxima para todas as propriedades combinadas em um evento é de 100 KB. Qualquer solicitação acima desse limite de tamanho será rejeitada.