1// Copyright 2023 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15syntax = "proto3"; 16 17package google.ads.googleads.v15.resources; 18 19import "google/ads/googleads/v15/common/user_lists.proto"; 20import "google/ads/googleads/v15/enums/access_reason.proto"; 21import "google/ads/googleads/v15/enums/user_list_access_status.proto"; 22import "google/ads/googleads/v15/enums/user_list_closing_reason.proto"; 23import "google/ads/googleads/v15/enums/user_list_membership_status.proto"; 24import "google/ads/googleads/v15/enums/user_list_size_range.proto"; 25import "google/ads/googleads/v15/enums/user_list_type.proto"; 26import "google/api/field_behavior.proto"; 27import "google/api/resource.proto"; 28 29option csharp_namespace = "Google.Ads.GoogleAds.V15.Resources"; 30option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v15/resources;resources"; 31option java_multiple_files = true; 32option java_outer_classname = "UserListProto"; 33option java_package = "com.google.ads.googleads.v15.resources"; 34option objc_class_prefix = "GAA"; 35option php_namespace = "Google\\Ads\\GoogleAds\\V15\\Resources"; 36option ruby_package = "Google::Ads::GoogleAds::V15::Resources"; 37 38// Proto file describing the User List resource. 39 40// A user list. This is a list of users a customer may target. 41message UserList { 42 option (google.api.resource) = { 43 type: "googleads.googleapis.com/UserList" 44 pattern: "customers/{customer_id}/userLists/{user_list_id}" 45 }; 46 47 // Immutable. The resource name of the user list. 48 // User list resource names have the form: 49 // 50 // `customers/{customer_id}/userLists/{user_list_id}` 51 string resource_name = 1 [ 52 (google.api.field_behavior) = IMMUTABLE, 53 (google.api.resource_reference) = { 54 type: "googleads.googleapis.com/UserList" 55 } 56 ]; 57 58 // Output only. Id of the user list. 59 optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; 60 61 // Output only. An option that indicates if a user may edit a list. Depends on 62 // the list ownership and list type. For example, external remarketing user 63 // lists are not editable. 64 // 65 // This field is read-only. 66 optional bool read_only = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; 67 68 // Name of this user list. Depending on its access_reason, the user list name 69 // may not be unique (for example, if access_reason=SHARED) 70 optional string name = 27; 71 72 // Description of this user list. 73 optional string description = 28; 74 75 // Membership status of this user list. Indicates whether a user list is open 76 // or active. Only open user lists can accumulate more users and can be 77 // targeted to. 78 google.ads.googleads.v15.enums.UserListMembershipStatusEnum 79 .UserListMembershipStatus membership_status = 6; 80 81 // An ID from external system. It is used by user list sellers to correlate 82 // IDs on their systems. 83 optional string integration_code = 29; 84 85 // Number of days a user's cookie stays on your list since its most recent 86 // addition to the list. This field must be between 0 and 540 inclusive. 87 // However, for CRM based userlists, this field can be set to 10000 which 88 // means no expiration. 89 // 90 // It'll be ignored for logical_user_list. 91 optional int64 membership_life_span = 30; 92 93 // Output only. Estimated number of users in this user list, on the Google 94 // Display Network. This value is null if the number of users has not yet been 95 // determined. 96 // 97 // This field is read-only. 98 optional int64 size_for_display = 31 99 [(google.api.field_behavior) = OUTPUT_ONLY]; 100 101 // Output only. Size range in terms of number of users of the UserList, on the 102 // Google Display Network. 103 // 104 // This field is read-only. 105 google.ads.googleads.v15.enums.UserListSizeRangeEnum.UserListSizeRange 106 size_range_for_display = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; 107 108 // Output only. Estimated number of users in this user list in the google.com 109 // domain. These are the users available for targeting in Search campaigns. 110 // This value is null if the number of users has not yet been determined. 111 // 112 // This field is read-only. 113 optional int64 size_for_search = 32 114 [(google.api.field_behavior) = OUTPUT_ONLY]; 115 116 // Output only. Size range in terms of number of users of the UserList, for 117 // Search ads. 118 // 119 // This field is read-only. 120 google.ads.googleads.v15.enums.UserListSizeRangeEnum.UserListSizeRange 121 size_range_for_search = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; 122 123 // Output only. Type of this list. 124 // 125 // This field is read-only. 126 google.ads.googleads.v15.enums.UserListTypeEnum.UserListType type = 13 127 [(google.api.field_behavior) = OUTPUT_ONLY]; 128 129 // Indicating the reason why this user list membership status is closed. It is 130 // only populated on lists that were automatically closed due to inactivity, 131 // and will be cleared once the list membership status becomes open. 132 google.ads.googleads.v15.enums.UserListClosingReasonEnum.UserListClosingReason 133 closing_reason = 14; 134 135 // Output only. Indicates the reason this account has been granted access to 136 // the list. The reason can be SHARED, OWNED, LICENSED or SUBSCRIBED. 137 // 138 // This field is read-only. 139 google.ads.googleads.v15.enums.AccessReasonEnum.AccessReason access_reason = 140 15 [(google.api.field_behavior) = OUTPUT_ONLY]; 141 142 // Indicates if this share is still enabled. When a UserList is shared with 143 // the user this field is set to ENABLED. Later the userList owner can decide 144 // to revoke the share and make it DISABLED. 145 // The default value of this field is set to ENABLED. 146 google.ads.googleads.v15.enums.UserListAccessStatusEnum.UserListAccessStatus 147 account_user_list_status = 16; 148 149 // Indicates if this user list is eligible for Google Search Network. 150 optional bool eligible_for_search = 33; 151 152 // Output only. Indicates this user list is eligible for Google Display 153 // Network. 154 // 155 // This field is read-only. 156 optional bool eligible_for_display = 34 157 [(google.api.field_behavior) = OUTPUT_ONLY]; 158 159 // Output only. Indicates match rate for Customer Match lists. The range of 160 // this field is [0-100]. This will be null for other list types or when it's 161 // not possible to calculate the match rate. 162 // 163 // This field is read-only. 164 optional int32 match_rate_percentage = 24 165 [(google.api.field_behavior) = OUTPUT_ONLY]; 166 167 // The user list. 168 // 169 // Exactly one must be set. 170 oneof user_list { 171 // User list of CRM users provided by the advertiser. 172 google.ads.googleads.v15.common.CrmBasedUserListInfo crm_based_user_list = 173 19; 174 175 // Output only. User list which are similar to users from another UserList. 176 // These lists are readonly and automatically created by google. 177 google.ads.googleads.v15.common.SimilarUserListInfo similar_user_list = 20 178 [(google.api.field_behavior) = OUTPUT_ONLY]; 179 180 // User list generated by a rule. 181 google.ads.googleads.v15.common.RuleBasedUserListInfo rule_based_user_list = 182 21; 183 184 // User list that is a custom combination of user lists and user interests. 185 google.ads.googleads.v15.common.LogicalUserListInfo logical_user_list = 22; 186 187 // User list targeting as a collection of conversion or remarketing actions. 188 google.ads.googleads.v15.common.BasicUserListInfo basic_user_list = 23; 189 190 // Immutable. Lookalike User List. 191 google.ads.googleads.v15.common.LookalikeUserListInfo lookalike_user_list = 192 36 [(google.api.field_behavior) = IMMUTABLE]; 193 } 194} 195