Propriedades de entrada persistentes
Quando um Canvas é acionado por um evento personalizado, uma compra ou uma chamada de API, você pode usar metadados da chamada de API, do evento personalizado ou do evento de compra para personalização em cada etapa do fluxo de trabalho do Canvas. Você pode usar essas propriedades para enviar mensagens mais selecionadas.
As propriedades de entrada persistentes são um artefato do editor original do Canvas, portanto, há referências obsoletas a termos que permanecem para referência histórica. Para obter o editor de tela atualizado, consulte Propriedades de entrada de tela e propriedades de evento.
Uso de propriedades de entrada
As propriedades de entrada podem ser usadas em Canvases baseados em ações e acionados por API. Essas propriedades de entrada são definidas quando um Canvas é acionado por um evento personalizado, uma compra ou uma chamada de API. Consulte os artigos a seguir para obter mais informações:
As propriedades transmitidas por esses objetos podem ser referenciadas usando a tag canvas_entry_properties Liquid. Por exemplo, uma solicitação com \"canvas_entry_properties\" : {\"product_name\" : \"shoes\", \"product_price\" : 79.99} poderia adicionar a palavra “shoes” (sapatos) a uma mensagem adicionando o Liquid {{canvas_entry_properties.${product_name}}}.
Quando um Canvas inclui uma mensagem com a tag canvas_entry_properties Liquid, os valores associados a essas propriedades serão salvos durante a jornada do usuário no Canvas e excluídos quando o usuário sair do Canvas. Observe que as propriedades de entrada do Canvas só estão disponíveis para referência no Liquid. Para filtrar as propriedades dentro do Canvas, use a segmentação de propriedades de eventos.
O objeto de propriedades de entrada do Canvas tem um limite máximo de tamanho de 50 KB.
Atualização do Canvas para usar propriedades de entrada
Se um Canvas ativo que anteriormente não incluía nenhuma mensagem que usasse canvas_entry_properties for editado para incluir canvas_entry_properties, o valor correspondente a essa propriedade não estará disponível para os usuários que entraram no Canvas antes de canvas_entry_properties ter sido adicionado ao Canvas. Os valores só serão salvos para os usuários que entrarem no Canvas depois que a alteração for feita.
Por exemplo, se você lançou inicialmente um Canvas que não usava nenhuma propriedade de entrada em 3 de novembro e, em seguida, adicionou uma nova propriedade product_name ao Canvas em 11 de novembro, os valores de product_name só seriam salvos para os usuários que entraram no Canvas a partir de 11 de novembro.
No caso de uma propriedade de entrada do Canvas ser nula ou estar em branco, você pode cancelar as mensagens usando condicionais. O trecho de código a seguir é um exemplo de como você pode usar o Liquid para cancelar uma mensagem.
1
2
3
{% if canvas_entry_properties.${product_name} == blank %}
{% abort_message() %}
{% endif %}
Para saber mais sobre como abortar mensagens com o Liquid, consulte a documentação do Liquid.
Propriedades globais de entrada do Canvas
Com canvas_entry_properties, é possível definir propriedades globais que se aplicam a todos os usuários ou propriedades específicas do usuário que se aplicam apenas ao usuário especificado. A propriedade específica do usuário substituirá a propriedade global para esse usuário.
Exemplo de solicitação
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
url -X POST \
-H 'Content-Type:application/json' \
-d '{
"api_key": "a valid rest api key",
"canvas_id": "the ID of your Canvas",
"canvas_entry_properties": {
"food_allergies": "none"
},
"recipients": [
{
"external_user_id": Customer_123,
"canvas_entry_properties": {
"food_allergies": ["dairy", "soy"],
"nutrition": {
"calories_per_serving": 200,
"serving_size_in_ounces": 4
}
}
}
]
}' \
Nessa solicitação, o valor global de “food allergies” (alergias alimentares) é “none” (nenhuma). Para Customer_123,, o valor é “dairy” (laticínios). As mensagens neste Canvas que contêm o snippet do Liquid {{canvas_entry_properties.${food_allergies}}} terão como modelo “dairy” para Customer_123 e “none” para todos os outros.
Caso de uso
Se você tiver um Canvas que é acionado quando um usuário navega por um item em seu site de comércio eletrônico, mas não o adiciona ao carrinho, a primeira etapa do Canvas pode ser uma notificação por push perguntando se ele está interessado em comprar o item. Você pode fazer referência ao nome do produto usando {{canvas_entry_properties.${product_name}}}
A segunda etapa pode enviar outra notificação por push solicitando que o usuário faça o checkout, caso tenha adicionado o item ao carrinho, mas ainda não o tenha comprado. Você pode continuar a fazer referência à propriedade de entrada product_name usando {{canvas_entry_properties.${product_name}}}.
Editar esta página no GitHub