Ir para o conteúdo

Atualização de usuário

O componente Atualização de usuário permite atualizar atributos, eventos e compras de um usuário em um editor JSON, sem a necessidade de incluir informações sensíveis como chaves de API.

Como esse componente funciona

Uma etapa de Atualização de Usuário chamada "Update loyalty" que atualiza um atributo "Is Premium Member" para "true".

Ao usar esse componente no seu Canvas, as atualizações não contam para o limite de frequência de solicitações por minuto de /users/track. Em vez disso, essas atualizações são agrupadas em lotes para que a Braze possa processá-las de forma mais eficiente do que um webhook Braze-to-Braze. Esse componente não registra pontos de dados quando usado para atualizar pontos de dados não faturáveis (como grupos de inscrições).

Depois que os usuários entram na etapa de Atualização de Usuário e o processamento é concluído, eles avançam para a próxima etapa. Isso significa que qualquer envio de mensagens subsequente que dependa dessas atualizações de usuário estará atualizado quando a próxima etapa for executada.

Criando uma atualização de usuário

Arraste e solte o componente da barra lateral ou selecione o botão de mais na parte inferior da variante ou etapa e selecione User Update.

Existem três opções que permitem atualizar informações existentes do perfil de usuário, adicionar novas informações ou remover informações do perfil de usuário. No total, as etapas de User Update em um espaço de trabalho podem atualizar até 200.000 perfis de usuário por minuto.

Atributos personalizados

No editor de interface, selecione um nome de atributo (existente ou novo) e escolha uma Ação:

  • Update: Insira o novo valor.
  • Remove: Limpa o atributo do perfil de usuário (nenhum valor é necessário).

Você pode adicionar até 10 atributos em uma única etapa. Para eventos, compras, campos aninhados ou outras alterações complexas, use o editor JSON avançado.

Aumentando e diminuindo valores

A etapa User Update pode aumentar ou diminuir o valor de um atributo. Selecione o atributo, selecione Increment By ou Decrement By e insira um número.

Acompanhar o progresso semanal

Ao incrementar um atributo personalizado que rastreia um evento, você pode acompanhar o número de aulas que um usuário fez em uma semana. Usando esse componente, a contagem de aulas pode ser redefinida no início da semana e começar a rastrear novamente.

Etapa de User Update que incrementa o atributo "class_count" em um.

Atualizando uma matriz de objetos

Uma matriz de objetos é um atributo personalizado rico em dados armazenado no perfil de um usuário. Você pode usá-la para criar um histórico das interações do usuário com sua marca e para criar segmentos com base em um campo calculado, como histórico de compras ou valor total do tempo de vida.

Usando a opção Advanced JSON Editor, você pode inserir JSON para adicionar itens ou remover itens dessa matriz de objetos.

Caso de uso: Atualizando a lista de desejos de um usuário

Acompanhe a lista de desejos de um usuário para que você possa segmentar ou personalizar com base nos itens salvos.

  1. Crie um atributo personalizado que seja uma matriz de objetos, por exemplo wishlist. Cada objeto pode incluir campos como product_id, product_name e added_at.
  2. Na etapa User Update, selecione Advanced JSON Editor. Em seguida, na seção Compose, use a operação $add para adicionar um item ou a operação $remove para remover um item por valor.

A seguir está um exemplo de como adicionar um item à lista de desejos:

{
  "attributes": [
    {
      "wishlist": {
        "$add": [
          {
            "product_id": "SKU-123",
            "product_name": "Wireless Headphones",
            "added_at": "{{'now' | date: '%Y-%m-%dT%H:%M:%S%z'}}"
          }
        ]
      }
    }
  ]
}

Para remover um item, use "wishlist": { "$remove": [ { "product_id": "SKU-123", ... } ] } com a mesma estrutura de objeto para que a Braze possa encontrar e removê-lo.

Caso de uso: Calculando o total do carrinho de compras

Acompanhe quando um usuário tem itens no carrinho de compras, quando ele adiciona ou remove itens, e qual é o valor total do carrinho.

  1. Crie uma matriz de objetos personalizada chamada shopping_cart. O exemplo a seguir mostra como esse atributo pode ser. Cada item tem um product_id exclusivo que possui dados adicionais em sua própria matriz aninhada de objetos, incluindo price.
{
  "attributes": [
    {
      "shopping_cart": [
       {
         "total_cart_value": number,
         "shipping": number,
         "items_in_cart": number,
         "product_id": array,
         "gift": boolean,
         "discount_code": "enum",
         "timestamp": {"$time" : "{{'now' | date: '%Y-%m-%dT%H:%M:%S%z'}}"}
       }
      ]
    }
  ]
}
  1. Crie um evento personalizado chamado add_item_to_cart que é registrado quando um usuário adiciona um item ao carrinho.
  2. Crie um Canvas que direcione os usuários que realizam esse evento personalizado. Agora, quando um usuário adicionar um item ao carrinho, esse Canvas será disparado. Você pode então direcionar mensagens diretamente a esse usuário, oferecendo códigos de cupom quando ele atingir um determinado valor de gastos, abandonar o carrinho por um certo período de tempo, ou qualquer outra coisa que se alinhe ao seu caso de uso.

O atributo shopping_cart contém o total de muitos eventos personalizados: o custo total de todos os itens, o número total de itens no carrinho, se o carrinho contém um presente, e assim por diante. Isso pode se parecer com o seguinte:

{
  "attributes": [
    {
      "shopping_cart": [
       {
         "total_cart_value": 22.99,
         "shipping": 4.99,
         "items_in_cart": 2,
         "product_id": ["1001", "1002"],
         "gift": true,
         "discount_code": "flashsale1000",
         "timestamp": {"$time" : "{{'now' | date: '%Y-%m-%dT%H:%M:%S%z'}}"}
       }
      ]
    }
  ]
}

Persistir dados de entrada como atributo personalizado

Use uma etapa de Atualização de Usuário para copiar os dados de entrada do Canvas em um atributo personalizado, permitindo segmentar ou enviar mensagens com base nesses dados após o usuário sair do Canvas. Os dados de entrada ficam disponíveis em Liquid apenas durante o Canvas — a Atualização de Usuário armazena essas informações no perfil.

Por exemplo, um Canvas de carrinho abandonado pode definir most_recent_cart_item a partir do ID do item no evento-gatilho. Depois, Campaigns posteriores podem segmentar esse item novamente.

  1. No editor de interface, selecione ou crie o atributo (por exemplo, most_recent_cart_item).
  2. Defina Action como Update e ative Use personalization.
  3. Insira a propriedade de entrada pelo modal de personalização:
    • Se o seu espaço de trabalho exibir Context Variables, use {{context.${item_id}}}.
    • Se o seu espaço de trabalho exibir Canvas Entry Properties, use o formato legado {{canvas_entry_properties.${item_id}}}.

Para saber mais sobre qual namespace o seu espaço de trabalho utiliza, consulte Propriedades de contexto e de evento.

Personalização

Para armazenar dados de entrada do disparador como atributo, ative Use personalization e insira a propriedade pelo modal de personalização. A Atualização de Usuário também oferece suporte aos seguintes recursos de personalização:

Editor JSON avançado

Adicione um objeto JSON de atributo, evento ou compra com até 65.536 caracteres ao editor JSON. O estado de inscrição global e o estado do grupo de inscrições de um usuário também podem ser definidos.

Adicione um objeto JSON de atributo, evento ou compra com até 65.536 caracteres ao editor JSON. O estado de inscrição global e o estado do grupo de inscrições de um usuário também podem ser definidos.

Usando o editor JSON, você também pode visualizar e testar se o perfil de usuário foi atualizado com suas alterações na guia Prévia e teste. Você pode selecionar um usuário aleatório ou buscar um usuário específico. Em seguida, após enviar um teste para um usuário, visualize o perfil de usuário usando o link gerado.

Usando o editor JSON, você também pode visualizar e testar se o perfil de usuário foi atualizado com suas alterações na guia Prévia e teste. Você pode selecionar um usuário aleatório ou buscar um usuário específico. Em seguida, após enviar um teste para um usuário, visualize o perfil de usuário usando o link gerado.

Considerações

Você não precisa incluir dados sensíveis como sua chave de API ao usar o editor JSON, pois isso é fornecido automaticamente pela plataforma. Os seguintes campos não devem ser incluídos no editor JSON:

  • ID de usuário externo
  • Chave de API
  • URL do cluster da Braze
  • Campos relacionados à importação de tokens por push

Registrar eventos personalizados

Usando o editor JSON, você também pode registrar eventos personalizados. Isso requer um timestamp no formato ISO, portanto é necessário atribuir uma data e hora com Liquid no início. Considere este exemplo que registra um evento com um horário.

{% assign timestamp = 'now' | date: "%Y-%m-%dT%H:%M:%SZ" %}
{
  "events": [
    {
      "name": "logged_user_event",
      "time": "{{timestamp}}"
    }
  ]
}

Este próximo exemplo vincula um evento a um app específico usando um evento personalizado com propriedades opcionais e o app_id.

{% assign timestamp = 'now' | date: "%Y-%m-%dT%H:%M:%SZ" %}
{
  "events": [
    {
      "app_id": "insert_app_id",
      "name": "rented_movie",
      "time": "{{timestamp}}",
      "properties": {
        "release": {
          "studio": "FilmStudio",
          "year": "2022"
        },
        "cast": [
          {
            "name": "Actor1"
          },
          {
            "name": "Actor2"
          }
        ]
      }
    }
  ]
}

Editar estado de inscrição

No editor JSON, você também pode editar o estado de inscrição de um usuário. Por exemplo, o trecho a seguir mostra o estado de inscrição de um usuário atualizado para opted_in.

{
  "attributes": [
    {
      "email_subscribe": "opted_in"
    }
  ]
}

Atualizar grupos de inscrições

Você também pode atualizar grupos de inscrições usando esta etapa do Canvas. O exemplo a seguir mostra como atualizar um ou mais grupos de inscrições.

{
  "attributes": [
    {
      "subscription_groups": [
        {
          "subscription_group_id": "subscription_group_identifier_1",
          "subscription_state": "subscribed"
        },
        {
          "subscription_group_id": "subscription_group_identifier_2",
          "subscription_state": "subscribed"
        },
        {
          "subscription_group_id": "subscription_group_identifier_3",
          "subscription_state": "subscribed"
        }
      ]
    }
  ]
}
New Stuff!