Membuat daftar pengguna

Anda dapat menggunakan daftar pengguna di kampanye pemasaran ulang untuk berinteraksi kembali dengan pengguna yang telah melakukan tindakan tertentu di situs atau aplikasi Anda. Google Ads API mendukung beberapa jenis daftar pengguna. Panduan ini berfokus pada pembuatan daftar pengguna berbasis aturan.

Daftar pengguna berbasis aturan

Daftar pengguna berbasis aturan yang dibuat dengan flexible_rule_user_list dapat berisi beberapa aturan. Setiap aturan diwakili oleh pesan UserListRuleInfo, yang memiliki rule_type yang menentukan cara menggabungkan item aturan dalam grup item aturan.

Jika rule_type adalah OR_OF_ANDS (default), Google Ads akan AND semua item aturan dalam grup item aturan. Artinya, untuk aturan tertentu, setiap item aturan dalam setidaknya satu grup item aturan harus cocok agar aturan terpenuhi. Hal ini disebut "bentuk normal disjungtif".

Atau, jika Anda menetapkan rule_type ke AND_OF_ORS, maka setidaknya satu item aturan dalam setiap grup item aturan harus cocok agar aturan terpenuhi. Hal ini disebut "bentuk normal konjungtif".

Yang tersisa adalah menggabungkan grup item aturan di atas ke dalam daftar pengguna baru. Dalam hal ini, kita akan membiarkan fungsi OR_OF_ANDS default tetap ada, karena itulah yang kita bangun untuk aturan ini.

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 => []});
      

Menyertakan pengguna lama dalam daftar berbasis aturan

Anda juga dapat menyertakan pengguna lama dalam daftar pengguna berbasis aturan dengan menetapkan prepopulation_status daftar pengguna ke REQUESTED, dan memantau progres proses pengisian otomatis asinkron dengan memeriksa status kolom ini secara berkala.

Tindakan ini hanya akan menambahkan pengguna lama dari 30 hari terakhir, bergantung pada durasi keanggotaan daftar dan tanggal saat tag pemasaran ulang ditambahkan. Status akan diperbarui menjadi FINISHED setelah permintaan diproses, atau FAILED jika permintaan gagal.