Segmentos
Como montar a definição de um segmento, com todos os tipos de regra e operadores.
Loading documentation…
Um segmento filtra os dispositivos ativos de um site. Ele é salvo como uma definição em JSON e avaliado de novo a cada envio, então quem passa a atender às regras entra na próxima campanha sem você fazer nada.
Crie pelo painel ou pela rota Criar segmento, e use o id devolvido como segment_id ao criar uma campanha.
As regras dentro de um grupo se combinam com E. Os grupos se combinam com OU. O exemplo seleciona quem tem a tag esporte e está sumido há 14 dias, mais quem tem plano anual.
Os limites são de 1 a 10 grupos por segmento e de 1 a 20 regras por grupo.
| Tipo | Compara com | Observação |
|---|---|---|
country | País, código ISO de duas letras | Convertido para maiúsculas |
region | Estado ou região | Nome por extenso, como vem da geolocalização (São Paulo) |
city | Cidade | Comparação exata |
browser | Navegador | chrome, firefox, safari, edge, opera, samsung |
os | Sistema operacional | windows, macos, linux, android, ios, chromeos |
device | Tipo de aparelho | desktop, mobile, tablet |
migrated_from | Provedor de origem da migração | Valores da migração |
Operadores: in e not_in, com values de 1 a 200 itens. O not_in também seleciona dispositivos sem o dado preenchido.
País, região e cidade vêm da localização aproximada do IP no momento da inscrição.
Operadores in e not_in. A comparação usa o idioma base: pt seleciona pt, pt-BR e pt-PT.
Seleciona dispositivos de assinantes com external_id (true) ou anônimos (false).
| Operador | Seleciona quem |
|---|---|
has_any | tem pelo menos uma das tags |
has_all | tem todas as tags |
has_none | não tem nenhuma das tags |
Até 50 tags por regra.
| Operador | Significado |
|---|---|
eq, neq | igual, diferente |
contains, not_contains | contém o texto, não contém |
gt, gte, lt, lte | maior, maior ou igual, menor, menor ou igual |
exists, not_exists | o atributo existe ou não, sem olhar o valor |
value é sempre um valor simples de até 255 caracteres e não é usado em exists e not_exists. Nas comparações de maior e menor, quando value é um número, só atributos numéricos entram e a comparação é numérica. Os negativos (neq, not_contains) também selecionam quem não tem o atributo.
| Tipo | Operadores |
|---|---|
subscribed | within_days (inscrito nos últimos N dias), older_than_days (inscrito há mais de N dias) |
last_seen | active_within_days (visitou o site nos últimos N dias), inactive_for_days (não visita há N dias ou nunca registrou visita) |
value vai de 1 a 3650.
Seleciona quem fez (did) ou não fez (did_not) um evento.
| Campo | Uso |
|---|---|
event | delivered, clicked, closed, sent ou custom |
within_days | Janela de tempo, de 1 a 3650 dias. Sem ele, considera todo o histórico guardado. |
min_count | Mínimo de ocorrências, até 100000. Só vale com did. |
campaign_id | Só eventos de uma campanha. Não vale para custom. |
name | Nome do evento personalizado, quando event é custom |
property | Filtro numa propriedade do evento personalizado: { "key": "valor", "op": "gte", "value": "100" } |
O property.op aceita os mesmos operadores de atributo mais exists.
O histórico de eventos segue a retenção do plano. Depois desse prazo, os eventos antigos deixam de contar.
audience_count é o número de dispositivos ativos que atendem às regras agora: uma pessoa com celular e notebook conta duas vezes. É quantas notificações sairiam numa campanha para o segmento. subscriber_count é o número de assinantes distintos por trás desses dispositivos, ou seja, quantas pessoas.
warnings lista regras que não puderam ser aplicadas, como um campaign_id de outro site. Uma regra com aviso não seleciona ninguém, então o grupo dela fica vazio. Confira essa lista sempre que audience_count vier zerado.
Erros de formato voltam com 422, apontando o caminho da regra: definition.groups.0.rules.1.op.