Usando dados de resposta de webhook em sua jornada
Visão geral
Anchor link toQuando você mapeia valores de uma resposta de webhook, o Pushwoosh os armazena como variáveis que você pode usar mais tarde na jornada em Atualizar perfil do usuário, Atraso de tempo e personalização de conteúdo, da mesma forma que usaria um Atributo de Evento. A única exceção é a Divisão de condição: ela não pode ramificar com base em uma variável de webhook diretamente, porque precisa de um valor com um tipo declarado (uma Tag ou um Atributo de Evento), e um valor de webhook mapeado não tem tipo. Consulte Comparar um valor de webhook em Divisão de condição abaixo.
Salvar um valor de webhook como uma Tag com Atualizar perfil do usuário
Anchor link toUm Webhook pode retornar dados de um sistema externo, como um ID de usuário de CRM ou status de assinatura, que o Pushwoosh ainda não armazena no perfil do usuário. O elemento Atualizar perfil do usuário salva valores mapeados como Tags para que você possa usá-los em segmentos, conteúdo dinâmico e etapas posteriores da jornada.
Exemplo: salvar um ID de usuário do CRM como uma Tag
Anchor link toUm novo usuário se inscreve em seu aplicativo, e a jornada cria um registro correspondente em seu CRM. Salvar o ID de usuário do CRM retornado como uma Tag permite que você referencie ou atualize o mesmo registro do CRM posteriormente, por exemplo, de outra jornada ou de uma chamada de Webhook de acompanhamento, em vez de criar um registro duplicado cada vez que o usuário reentra na jornada.
Fluxo da jornada: Entrada baseada em gatilho → Webhook → Atualizar perfil do usuário → encerrar a ramificação
- Crie uma jornada com Entrada baseada em gatilho no evento
SignUp. - Adicione um elemento Webhook após a etapa de entrada. Dê um nome a ele (por exemplo,
Criar usuário no CRM) e defina a URL da solicitação para o endpoint de criação de usuário do seu CRM. - Em Mapeamento de resposta, defina o Caminho para o campo de ID na resposta (por exemplo,
data.user.id) e o Atributo paracrm_user_id.

-
Adicione um elemento Atualizar perfil do usuário após a etapa de Webhook.
-
Em Valor de Tag Dinâmico, clique em + Valor Dinâmico. Em Tag, selecione a Tag que armazena o ID do CRM (crie-a com antecedência, se necessário). Em Evento, selecione a etapa de webhook pelo nome que você deu a ela (
Criar usuário no CRM). Em Valor Dinâmico, selecionecrm_user_id.

- Encerre a ramificação — adicione um elemento de Saída ou deixe-a sem uma conexão de saída.

Agendar um atraso a partir de um valor de webhook com Atraso de tempo
Anchor link toDatas de visita, prazos de renovação e janelas de entrega geralmente residem em um sistema externo de agendamento ou faturamento. Depois que um Webhook mapeia a data da resposta da API, o Atraso de tempo pode pausar a jornada até aquele momento, por exemplo, 2 dias antes de um compromisso, para que a próxima mensagem seja enviada na hora certa.
Exemplo: agendar um lembrete a partir de uma data na resposta
Anchor link toUm usuário marca um compromisso em seu aplicativo. A jornada busca a data da visita em seu sistema de agendamento e envia um lembrete por push 2 dias antes da visita.
- Crie uma jornada com Entrada baseada em gatilho no evento
AppointmentBooked. - Adicione um elemento Webhook após a etapa de entrada. Dê um nome a ele (por exemplo,
Obter detalhes do compromisso) e defina a URL da solicitação para a API do seu sistema de agendamento. - Em Mapeamento de resposta, defina o Caminho para o campo de data na resposta (por exemplo,
appointment.date) e o Atributo paravisit_date.

- Adicione um elemento de Atraso de tempo após a etapa de Webhook. Selecione Com base nos dados do usuário/evento, defina Obter data de como Evento, defina Evento como a etapa de webhook pelo nome que você deu a ela (
Obter detalhes do compromisso), defina Valor do evento comovisit_datee defina o atraso para Antes de2Dias.

- Se os usuários puderem agendar com menos de 2 dias de antecedência, ative Dividir em ramificações se a data estiver no passado ou vazia no elemento Atraso de tempo. Isso cria duas ramificações, No passado e No futuro. Consulte Dividir ramificações quando a data está no passado ou vazia.
- Adicione uma etapa de Push com sua mensagem de lembrete. Se a divisão estiver ativada, adicione este Push em ambas as ramificações: No passado (enviar imediatamente) e No futuro (após o Atraso de tempo).
- Encerre cada ramificação — adicione um elemento de Saída ou deixe-a sem uma conexão de saída.

Comparar um valor de webhook em Divisão de condição
Anchor link toA Divisão de condição ramifica com base em um Segmento, uma Tag ou um atributo de Evento com um tipo declarado. Um valor mapeado de uma resposta de webhook não tem tipo, então ele não aparece nos menus suspensos da Divisão de condição e não pode ser comparado diretamente.
Para ramificar com base em um valor de webhook, primeiro salve-o como uma Tag do tipo correspondente com Atualizar perfil do usuário e, em seguida, compare essa Tag na Divisão de condição.
Exemplo: ramificar com base em um saldo de webhook em comparação com o valor do evento de acionamento
Anchor link toUm usuário solicita uma compra, e a jornada verifica se o saldo do CRM dele cobre o preço do evento de acionamento antes de continuar.
Fluxo da jornada: Entrada baseada em gatilho → Webhook → Atualizar perfil do usuário → Divisão de condição
- Crie uma jornada com Entrada baseada em gatilho no evento
PurchaseRequested, com um atributo numéricorequired_amount. - Adicione um elemento Webhook após a etapa de entrada. Em Mapeamento de resposta, defina o Caminho para o campo de saldo na resposta (por exemplo,
current_balance) e o Atributo paracurrent_balance. - Adicione um elemento Atualizar perfil do usuário após a etapa de Webhook. Em Valor de Tag Dinâmico, defina a Tag como uma Tag numérica do tipo Inteiro ou Preço (crie-a com antecedência, se necessário, por exemplo,
Current_balance), o Evento como a etapa de webhook e o Valor Dinâmico comocurrent_balance. - Adicione um elemento de Divisão de condição após Atualizar perfil do usuário. Defina a condição para a Tag
Current_balance, operador maior ou igual a, e para o valor, selecione Atributo de evento → o evento de entrada →required_amountem vez de uma constante. - Conecte cada ramificação às próximas etapas.
Pontos a serem considerados
Anchor link to- Sintaxe do caminho: use um caminho separado por pontos (por exemplo,
data.user.id) ou um segmento*para mapear cada elemento de um array. Filtros não são suportados. Consulte Mapear cada elemento de um array para obter detalhes. - Tamanho da resposta: respostas maiores que 64 KB não são processadas para mapeamento.
- Divisão de condição: um valor de webhook mapeado não tem tipo e não pode ser usado diretamente. Salve-o primeiro como uma Tag. Consulte Comparar um valor de webhook em Divisão de condição.
- Testes: execute o Teste de webhook no elemento Webhook antes de usar valores mapeados em uma jornada ativa. Confirme se a solicitação foi bem-sucedida e, em seguida, verifique o corpo da resposta em relação a cada Caminho na guia Registro de chamadas. Se um valor parecer errado para um viajante específico quando a jornada estiver ativa, verifique a linha desse viajante no Registro de chamadas.
- Listas na resposta: use
*no Caminho para mapear cada item. Escolhaitem_{n}para atributos separados ou um nome sem{n}para uma única string separada por vírgulas. Os índices do Caminho começam em 0. Os nomes{n}começam em 1. No máximo, os primeiros 50 elementos são mapeados. Consulte Mapear cada elemento de um array.