Você pode usar listas de usuários nas suas campanhas de remarketing para interagir novamente com usuários que realizaram ações específicas no seu site ou app. A API Google Ads aceita vários tipos de listas de usuários. Este guia se concentra na criação de listas de usuários com base em regras.
Listas de usuários com base em regras
As listas de usuários baseadas em regras criadas com flexible_rule_user_list
podem conter várias regras. Cada regra é representada por uma mensagem
UserListRuleInfo, que tem um
rule_type que determina como os itens
de regra nos grupos de itens de regra são combinados.
Se rule_type for OR_OF_ANDS (o padrão), o Google Ads vai AND todos os itens de regra em um grupo de itens de regra. Isso significa que, para uma determinada regra, cada item de regra em pelo menos um grupo de itens de regra precisa corresponder para que a regra seja atendida. Isso é chamado de "forma normal disjuntiva".
Se você definir rule_type como AND_OF_ORS, pelo menos um item de regra em cada grupo de itens de regra precisará corresponder para que a regra seja atendida. Isso é chamado de "forma normal conjuntiva".
O que fica faltando é combinar os grupos de itens da regra acima em uma nova lista de usuários. Nesse caso, vamos deixar a funcionalidade padrão OR_OF_ANDS em vigor, já que é para isso que criamos essas regras.
Java
FlexibleRuleUserListInfo flexibleRuleUserListInfo = FlexibleRuleUserListInfo.newBuilder() .setInclusiveRuleOperator(UserListFlexibleRuleOperator.AND) .addInclusiveOperands( FlexibleRuleOperandInfo.newBuilder() .setRule( // The default rule_type for a UserListRuleInfo object is OR of ANDs // (disjunctive normal form). That is, rule items will be ANDed together // within rule item groups and the groups themselves will be ORed together. UserListRuleInfo.newBuilder() .addRuleItemGroups(checkoutDateRuleGroup) .addRuleItemGroups(checkoutAndCartSizeRuleGroup)) // Optional: includes a lookback window for this rule, in days. .setLookbackWindowDays(7L)) .build();
C#
FlexibleRuleUserListInfo flexibleRuleUserListInfo = new FlexibleRuleUserListInfo(); FlexibleRuleOperandInfo flexibleRuleOperandInfo = new FlexibleRuleOperandInfo() { Rule = new UserListRuleInfo() }; flexibleRuleOperandInfo.Rule.RuleItemGroups.Add(checkoutAndCartSizeRuleGroup); flexibleRuleOperandInfo.Rule.RuleItemGroups.Add(checkoutDateRuleGroup); flexibleRuleUserListInfo.InclusiveOperands.Add(flexibleRuleOperandInfo);
PHP
$flexibleRuleUserListInfo = new FlexibleRuleUserListInfo([ 'inclusive_rule_operator' => UserListFlexibleRuleOperator::PBAND, 'inclusive_operands' => [ new FlexibleRuleOperandInfo([ 'rule' => new UserListRuleInfo([ // The default rule_type for a UserListRuleInfo object is OR of ANDs // (disjunctive normal form). That is, rule items will be ANDed together // within rule item groups and the groups themselves will be ORed together. 'rule_item_groups' => [ $checkoutAndCartSizeRuleGroup, $checkoutDateRuleGroup ] ]), // Optionally add a lookback window for this rule, in days. 'lookback_window_days' => 7 ]) ], 'exclusive_operands' => [] ]);
Python
# Create a FlexibleRuleUserListInfo object, or a flexible rule # representation of visitors with one or multiple actions. # FlexibleRuleUserListInfo wraps UserListRuleInfo in a # FlexibleRuleOperandInfo object that represents which user lists to # include or exclude. flexible_rule_user_list_info: FlexibleRuleUserListInfo = ( rule_based_user_list_info.flexible_rule_user_list ) flexible_rule_user_list_info.inclusive_rule_operator = ( client.enums.UserListFlexibleRuleOperatorEnum.AND ) # The default rule_type for a UserListRuleInfo object is OR of # ANDs (disjunctive normal form). That is, rule items will be # ANDed together within rule item groups and the groups # themselves will be ORed together. rule_operand: FlexibleRuleOperandInfo = client.get_type( "FlexibleRuleOperandInfo" ) rule_operand.rule.rule_item_groups.extend( [ checkout_and_cart_size_rule_group, checkout_date_rule_group, ] ) rule_operand.lookback_window_days = 7 flexible_rule_user_list_info.inclusive_operands.append(rule_operand)
Ruby
r.flexible_rule_user_list = client.resource.flexible_rule_user_list_info do |frul| frul.inclusive_rule_operator = :AND frul.inclusive_operands << client.resource.flexible_rule_operand_info do |froi| froi.rule = client.resource.user_list_rule_info do |info| info.rule_item_groups += [checkout_date_rule_group, checkout_and_cart_size_rule_group] end # Optionally include a lookback window for this rule, in days. froi.lookback_window_days = 7 end end
Perl
my $flexible_rule_user_list_info = Google::Ads::GoogleAds::V22::Common::FlexibleRuleUserListInfo->new({ inclusiveRuleOperator => AND, inclusiveOperands => [ Google::Ads::GoogleAds::V22::Common::FlexibleRuleOperandInfo->new({ rule => Google::Ads::GoogleAds::V22::Common::UserListRuleInfo->new({ # The default rule_type for a UserListRuleInfo object is OR of # ANDs (disjunctive normal form). That is, rule items will be # ANDed together within rule item groups and the groups # themselves will be ORed together. ruleItemGroups => [ $checkout_date_rule_group, $checkout_and_cart_size_rule_group ]} ), # Optionally include a lookback window for this rule, in days. lookback_window_days => 7 }) ], exclusiveOperands => []});
Incluir usuários anteriores em uma lista baseada em regras
Você também pode incluir usuários anteriores em uma lista de usuários baseada em regras definindo o
prepopulation_status
da lista de usuários como
REQUESTED,
e monitorar o progresso do processo assíncrono de pré-população verificando periodicamente o status desse campo.
Isso só vai adicionar usuários dos últimos 30 dias, dependendo da duração da associação da lista e da data em que a tag de remarketing foi adicionada. O status será atualizado para FINISHED quando a solicitação for processada ou FAILED se ela falhar.