Referência de pontos
Cada ponto carrega um objeto point_data com exatamente uma chave aninhada, correspondendo ao point_type do ponto (consulte o mapeamento de tipo de ponto → chave). Esta página documenta a estrutura sob cada chave.
Pontos de entrada
Anchor link toUma jornada precisa de pelo menos um ponto de entrada. Todos os pontos de entrada têm uma única saída default.
start_by_segment
Anchor link toInsere usuários que correspondem a um segmento. POINT_TYPE_START_BY_SEGMENT.
| Field | Type | Description |
|---|---|---|
application_code | string | Código do aplicativo. |
filter_code | string | Código de segmento/filtro que define o público. |
repeat | SegmentRepeat | Agendamento opcional de entrada recorrente (consulte SegmentRepeat). |
start_at | timestamp | Não processar antes deste horário (ISO 8601). |
is_deactivated | bool | Se este ponto de entrada está desativado. |
message_bus (entrada por evento)
Anchor link toInsere usuários quando eles disparam um evento. POINT_TYPE_EVENT.
| Field | Type | Description |
|---|---|---|
event_name | string | Nome do evento a ser escutado. |
application_code | string | Código do aplicativo. |
event_conditions | PointEventCondition[] | Condições comparadas com os atributos do evento. |
active_period | Period | Janela de tempo durante a qual o gatilho está ativo. |
multi_entry | MultiEntry | Como um usuário pode entrar mais de uma vez (consulte MultiEntry). |
attribute_entry | AttributeEntry | Inscrever os IDs de usuário contidos em um atributo de evento em vez do usuário que disparou o evento (consulte AttributeEntry). |
allow_reenter | bool | Se os usuários podem reentrar na jornada. |
AttributeEntry
Anchor link toInscreve os IDs de Usuário contidos em um atributo de evento, em vez do usuário que disparou o evento. Espelha Usuários de um atributo de evento no construtor da Customer Journey.
| Field | Type | Description |
|---|---|---|
enabled | bool | Se deve inscrever usuários nomeados em um atributo de evento em vez do usuário que disparou o evento. |
attribute_name | string | Nome do atributo de evento que contém o ID de Usuário (ou lista de IDs de Usuário) a ser inscrito. |
start_by_api
Anchor link toPonto de entrada alimentado pela chamada Start by API. POINT_TYPE_START_BY_API.
| Field | Type | Description |
|---|---|---|
application_code | string | Código do aplicativo. |
attributes | string[] | Nomes dos atributos personalizados que podem ser passados nos attribute_values de uma solicitação Start by API. |
is_deactivated | bool | Se este ponto de entrada está desativado. |
Pontos de tempo
Anchor link todelay (espera)
Anchor link toPausa cada usuário por um intervalo fixo ou calculado. POINT_TYPE_WAIT. O objeto point_data.delay define exatamente uma das seguintes chaves de intervalo:
| Chave de intervalo | Type | Description |
|---|---|---|
sec | uint64 | Esperar um número fixo de segundos. |
exact_time | ExactTime | Esperar até um horário do dia (hour, minute). |
exact_date_time | ExactDateTime | Esperar até uma data e hora absolutas. |
exact_week_days_time | ExactWeekDaysTime | Esperar até horários específicos em dias da semana específicos (mapa do dia 0=Segunda-feira … 6=Domingo → ExactTime). |
dynamic_time | DynamicTime | Esperar em relação a um valor de uma tag ou evento. |
Um dynamic_time com split_branches: true adiciona um ramo output1 (consulte chaves de saída).
DynamicTime
Anchor link to| Field | Type | Description |
|---|---|---|
from | enum DynamicTimeFrom | Se o tempo base vem de uma tag ou de um evento. |
direction | enum DynamicTimeDirection | Deslocamento antes ou depois do tempo base. |
duration | uint64 | Tamanho do deslocamento. |
unit | enum DynamicTimeUnit | Unidade de duration (minutos, horas, dias, …). |
split_branches | bool | Dividir usuários em ramos separados quando seus tempos calculados diferem. |
tag_name | string | Tag que contém o tempo base (quando from é uma tag). |
event_name / event_attribute / point_id | string | Fonte do evento do tempo base (quando from é um evento). |
wait_event
Anchor link toEspera até que os usuários disparem um evento (ou um tempo limite). POINT_TYPE_WAIT_EVENT. A saída default é o caminho não disparado. O caminho disparado é output1 ou, com um script, um ramo por condição.
| Field | Type | Description |
|---|---|---|
events | PointWaitEventInfo[] | Eventos a aguardar. |
conditions_script | string | Script opcional para lógica complexa de múltiplos eventos. Seus nomes de condição analisados se tornam as chaves de saída. |
multi_entry | MultiEntry | Comportamento de reentrada. |
Pontos de divisão e filtragem
Anchor link toboolean_splitter
Anchor link toEncaminha os usuários por ramos com base em uma condição. POINT_TYPE_BOOLEAN_SPLITTER.
| Field | Type | Description |
|---|---|---|
split_strategy | enum | SPLIT_FILTER (por segmento), SPLIT_TAGS (por condições de tag) ou SPLIT_EVENTS (por condições de evento). |
load_policy | enum | ALL (qualquer um dos dispositivos do usuário pode corresponder) ou FILTER (apenas o dispositivo atual). |
filter_code | string | Código do segmento, quando split_strategy é SPLIT_FILTER. |
filter_expressions | FilterExpression[] | Condições de tag, quando split_strategy é SPLIT_TAGS: um ramo output extra por expressão. |
event | BooleanSplitterEventInfo | Condições de evento, quando split_strategy é SPLIT_EVENTS: um ramo output extra por condição. |
ab_splitter
Anchor link toDivide aleatoriamente os usuários em variantes ponderadas. POINT_TYPE_AB_SPLITTER. As chaves de saída são output0, output1, … (uma por entrada em split, indexada a partir de 0. Não há default).
| Field | Type | Description |
|---|---|---|
split | uint32[] | Porcentagem para cada ramo. A soma deve ser 100. O índice i mapeia para a chave de saída output{i}. |
auto_select_winner | bool | Se deve escolher automaticamente um ramo vencedor. |
winner_strategy | enum | ANY_GOAL ou SPECIFIC_GOAL. |
goal_uuid | string | Meta usada para determinar o vencedor (com SPECIFIC_GOAL). |
winner_split | uint32 | Número do ramo vencedor (base 1, 0 = ainda sem vencedor). |
filter
Anchor link toPermite que apenas os usuários correspondentes continuem (default), encaminhando o restante para output1. POINT_TYPE_FILTER.
| Field | Type | Description |
|---|---|---|
filter | enum Filter | Uma verificação predefinida: EMAIL_EXISTS, PUSH_TOKEN_EXISTS, SMS_TOKEN_EXISTS, WHATSAPP_TOKEN_EXISTS, LINE_TOKEN_EXISTS ou CUSTOM. |
filter_raw | string | Expressão de filtro personalizada, quando filter é CUSTOM. |
Pontos de ação
Anchor link toset_tags
Anchor link toAtualiza as tags no usuário. POINT_TYPE_SET_TAGS.
| Field | Type | Description |
|---|---|---|
application_code | string | Código do aplicativo. |
tags | Tag[] | Tags a serem escritas. |
| Field | Type | Description |
|---|---|---|
name | string | Nome da tag. |
type | enum TagType | Tipo de dados e operação: TYPE_STRING, TYPE_INTEGER, TYPE_DATE, TYPE_BOOLEAN, TYPE_LIST, TYPE_LIST_APPEND, TYPE_LIST_REMOVE, TYPE_DYNAMIC, … |
| value | oneof | Exatamente uma chave de valor correspondente a type: str, int, bool, date, price, version, timezone, list ou dynamic. |
web_hook
Anchor link toEnvia uma solicitação HTTP de saída. POINT_TYPE_WEBHOOK. Saída única default.
| Field | Type | Description |
|---|---|---|
method | string | Método HTTP (GET, POST, PUT, …). |
url | string | URL de destino. |
request_template | string | Modelo do corpo da solicitação. Suporta templates Liquid. |
headers | map<string, string> | Cabeçalhos HTTP. |
disabled | bool | Apenas leitura. true quando o Pushwoosh desativou automaticamente o webhook após erros repetidos. |
reactivate | bool | Apenas escrita. Defina como true para reativar um webhook desativado. |
Pontos de conversão
Anchor link togoal_event
Anchor link toRastreia uma meta de conversão. POINT_TYPE_GOAL_EVENT. Não tem saídas.
| Field | Type | Description |
|---|---|---|
event_name | string | Nome do evento da meta. |
application_code | string | Código do aplicativo. |
event_conditions | PointEventCondition[] | Condições comparadas com os atributos do evento da meta. |
is_throw_out | bool | Se deve remover o usuário da jornada assim que a meta for alcançada. |
is_cancel_event | bool | Se esta é uma meta negativa (de cancelamento). |
Pontos de saída
Anchor link toterminator
Anchor link toTermina a jornada para o usuário. POINT_TYPE_EXIT. Objeto vazio ({}) e sem saídas.
{ "point_type": "POINT_TYPE_EXIT", "point_data": { "terminator": {} }, "outputs": [] }Um ponto terminador é opcional. Deixar o info.next_point_uuid de uma saída indefinido termina a jornada para o usuário da mesma forma que um terminador explícito — ambos os casos são contados da mesma forma, como Saídas, e não como erros.
Pontos de mensagens
Anchor link toTodos os pontos de mensagens enviam através de um canal e compartilham um envelope comum. Cada um tem uma única saída default, a menos que um divisor esteja ativado (consulte chaves de saída).
Campos comuns:
| Field | Type | Description |
|---|---|---|
application_code | string | Código do aplicativo. |
preset_code | string | Predefinição (template) a ser enviada. inapp usa richmedia_code em vez disso. |
content / title | string | Conteúdo da mensagem embutido, quando não se usa uma predefinição (dependente do canal). |
campaign_code | string | Código da campanha para rastreamento. Criado automaticamente se omitido. |
split_params | BehaviorSplitter | Opcional: esperar por uma interação e ramificar com base nela. |
message_type | enum | Tipo de mensagem Marketing vs transacional (controla o manuseio do grupo de controle). Não usado por send_email, que tem seu próprio par email_type/email_category abaixo. |
Tipos de ponto e seus campos extras notáveis:
| Tipo de ponto | Chave point_data | Notas |
|---|---|---|
POINT_TYPE_SEND_PUSH | send_push | split_params (comportamento) mais um divisor de entrega podem produzir até três saídas. send_by_user_id, wait_optimal_time. |
POINT_TYPE_SEND_EMAIL | send_email | liquid_template_params, personalise, email_type, email_category (veja abaixo). Consulte a API de E-mail. |
POINT_TYPE_SEND_SMS | send_sms | Consulte SMS. |
POINT_TYPE_SEND_WHATSAPP | send_whatsapp | Uma predefinição de resposta rápida adiciona uma saída por resposta (chave = valor da resposta). Consulte WhatsApp. |
POINT_TYPE_SEND_TELEGRAM | send_telegram | Canal do Telegram. |
POINT_TYPE_SEND_KAKAO | send_kakao | Consulte Kakao. |
POINT_TYPE_SEND_LINE | send_line | Consulte a API do LINE. |
POINT_TYPE_SEND_DATA | send_data | Mensagem de dados silenciosa (sem interface do usuário). |
POINT_TYPE_INAPP | inapp | Usa richmedia_code, expire_in_days, capping. |
Tipos compartilhados
Anchor link toSegmentRepeat
Anchor link to| Field | Type | Description |
|---|---|---|
enabled | bool | Se a entrada recorrente está ativada. |
frequency | string | daily, weekly, monthly ou dates. |
every | uint32 | Repetir a cada N períodos. |
dates | string[] | Datas específicas, quando frequency é dates. |
time | SegmentRepeatTime | Configuração de hora do dia. |
Objetos de tempo
Anchor link toExactTime:{ "hour": 0–23, "minute": 0–59 }.ExactDateTime:{ "year", "month": 1–12, "day": 1–31, "hour": 0–23, "minute": 0–59 }.
BehaviorSplitter
Anchor link to| Field | Type | Description |
|---|---|---|
enabled | bool | Se deve esperar por uma interação e ramificar com base nela. |
interval | uint64 | Segundos para esperar pela interação. |
MultiEntry
Anchor link toControla quantas sessões ativas um usuário pode ter na jornada ao mesmo tempo. Espelha Controlar quantas sessões um usuário pode ter ao mesmo tempo no construtor da Customer Journey. Usado pelo ponto de entrada de evento e wait_event.
| Field | Type | Description |
|---|---|---|
enabled | bool | Se um usuário pode ter várias sessões ativas ao mesmo tempo. false: uma sessão ativa por usuário. true: várias sessões ativas por usuário. |
attribute_name | string | Opcional. Atributo de evento que define o escopo de cada sessão. Quando definido, um usuário pode ter uma sessão ativa por valor distinto deste atributo (por exemplo, uma por order_id). Eventos com o mesmo valor compartilham uma sessão. Deixe em branco para agrupar todas as entradas do usuário. |