Criar uma lista de usuários

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 é compatível com vários tipos de listas de usuários. Este guia se concentra na criação de listas de usuários com base em regras usando os grupos de itens de regra definidos em Criar grupos de itens de regra.

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 (inclusive_rule e exclusive_rule, unidas por inclusive_rule_operator). Cada regra é representada por uma mensagem UserListRuleInfo, que tem um campo rule_type que dita como os itens de regra dentro dos grupos de itens de regra são combinados.

Embora UserListRuleTypeEnum defina OR_OF_ANDS (forma normal disjuntiva) e AND_OF_ORS (forma normal conjuntiva), OR_OF_ANDS é o único rule_type compatível com FlexibleRuleUserListInfo (a configuração AND_OF_ORS retorna UserListError.RULE_TYPE_IS_NOT_SUPPORTED). Com OR_OF_ANDS, o Google Ads AND todos os itens de regra em um grupo de itens de regra, o que 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.

Depois de definir os dois objetos UserListRuleItemGroupInfo em Criar grupos de itens de regra, combine-os em uma nova lista de usuários. O exemplo de código a seguir mantém o tipo de regra OR_OF_ANDS padrão, adiciona os dois grupos de itens de regra a um FlexibleRuleOperandInfo em FlexibleRuleUserListInfo e altera a lista de usuários:

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::V26::Common::FlexibleRuleUserListInfo->new({
    inclusiveRuleOperator => AND,
    inclusiveOperands     => [
      Google::Ads::GoogleAds::V26::Common::FlexibleRuleOperandInfo->new({
          rule => Google::Ads::GoogleAds::V26::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 => []});
      

curl

Incluir usuários anteriores em uma lista baseada em regras

Também é possível incluir visitantes anteriores do site ou usuários do app em uma lista de usuários baseada em regras (compatível apenas na Rede de Display). Para isso, defina o prepopulation_status da lista como REQUESTED e monitore o progresso do processo de preenchimento automático assíncrono verificando periodicamente o status desse campo.

O preenchimento automático só adiciona usuários dos últimos 30 dias, dependendo da membership_life_span da lista (de 1 a 540 dias) e da data em que a tag de remarketing foi adicionada. O status é atualizado para FINISHED quando a solicitação é processada ou FAILED se ela falhar.

Segmentar a lista de usuários e ajustar lances

Depois de criar o UserList, anexe o nome do recurso a um AdGroupCriterion ou CampaignCriterion e defina bid_modifier (por exemplo, 1.25 para um aumento de 25% no lance). Para ver exemplos de código que demonstram como segmentar uma lista de usuários e modificar lances, consulte Segmentar a lista.