google-ads-data_manager-v1 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/ads/data_manager/v1/marketing_data_insights_service/client.rb +494 -0
  3. data/lib/google/ads/data_manager/v1/marketing_data_insights_service/credentials.rb +47 -0
  4. data/lib/google/ads/data_manager/v1/marketing_data_insights_service/rest/client.rb +444 -0
  5. data/lib/google/ads/data_manager/v1/marketing_data_insights_service/rest/service_stub.rb +143 -0
  6. data/lib/google/ads/data_manager/v1/marketing_data_insights_service/rest.rb +53 -0
  7. data/lib/google/ads/data_manager/v1/marketing_data_insights_service.rb +56 -0
  8. data/lib/google/ads/data_manager/v1/partner_link_service/client.rb +739 -0
  9. data/lib/google/ads/data_manager/v1/partner_link_service/credentials.rb +48 -0
  10. data/lib/google/ads/data_manager/v1/partner_link_service/paths.rb +69 -0
  11. data/lib/google/ads/data_manager/v1/partner_link_service/rest/client.rb +675 -0
  12. data/lib/google/ads/data_manager/v1/partner_link_service/rest/service_stub.rb +265 -0
  13. data/lib/google/ads/data_manager/v1/partner_link_service/rest.rb +52 -0
  14. data/lib/google/ads/data_manager/v1/partner_link_service.rb +55 -0
  15. data/lib/google/ads/data_manager/v1/rest.rb +5 -0
  16. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/client.rb +813 -0
  17. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/credentials.rb +47 -0
  18. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/paths.rb +69 -0
  19. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/rest/client.rb +742 -0
  20. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/rest/service_stub.rb +327 -0
  21. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/rest.rb +56 -0
  22. data/lib/google/ads/data_manager/v1/user_list_direct_license_service.rb +59 -0
  23. data/lib/google/ads/data_manager/v1/user_list_global_license_service/client.rb +955 -0
  24. data/lib/google/ads/data_manager/v1/user_list_global_license_service/credentials.rb +47 -0
  25. data/lib/google/ads/data_manager/v1/user_list_global_license_service/paths.rb +69 -0
  26. data/lib/google/ads/data_manager/v1/user_list_global_license_service/rest/client.rb +877 -0
  27. data/lib/google/ads/data_manager/v1/user_list_global_license_service/rest/service_stub.rb +388 -0
  28. data/lib/google/ads/data_manager/v1/user_list_global_license_service/rest.rb +56 -0
  29. data/lib/google/ads/data_manager/v1/user_list_global_license_service.rb +59 -0
  30. data/lib/google/ads/data_manager/v1/user_list_service/client.rb +972 -0
  31. data/lib/google/ads/data_manager/v1/user_list_service/credentials.rb +47 -0
  32. data/lib/google/ads/data_manager/v1/user_list_service/paths.rb +69 -0
  33. data/lib/google/ads/data_manager/v1/user_list_service/rest/client.rb +894 -0
  34. data/lib/google/ads/data_manager/v1/user_list_service/rest/service_stub.rb +388 -0
  35. data/lib/google/ads/data_manager/v1/user_list_service/rest.rb +52 -0
  36. data/lib/google/ads/data_manager/v1/user_list_service.rb +55 -0
  37. data/lib/google/ads/data_manager/v1/version.rb +1 -1
  38. data/lib/google/ads/data_manager/v1.rb +5 -0
  39. data/lib/google/ads/datamanager/v1/age_range_pb.rb +21 -0
  40. data/lib/google/ads/datamanager/v1/audience_pb.rb +5 -26
  41. data/lib/google/ads/datamanager/v1/cart_data_pb.rb +4 -25
  42. data/lib/google/ads/datamanager/v1/consent_pb.rb +3 -24
  43. data/lib/google/ads/datamanager/v1/destination_pb.rb +4 -24
  44. data/lib/google/ads/datamanager/v1/device_info_pb.rb +3 -24
  45. data/lib/google/ads/datamanager/v1/encryption_info_pb.rb +3 -24
  46. data/lib/google/ads/datamanager/v1/error_pb.rb +3 -24
  47. data/lib/google/ads/datamanager/v1/event_pb.rb +4 -31
  48. data/lib/google/ads/datamanager/v1/experimental_field_pb.rb +3 -24
  49. data/lib/google/ads/datamanager/v1/gender_pb.rb +21 -0
  50. data/lib/google/ads/datamanager/v1/ingestion_service_pb.rb +3 -31
  51. data/lib/google/ads/datamanager/v1/insights_service_pb.rb +33 -0
  52. data/lib/google/ads/datamanager/v1/insights_service_services_pb.rb +62 -0
  53. data/lib/google/ads/datamanager/v1/item_parameter_pb.rb +3 -24
  54. data/lib/google/ads/datamanager/v1/match_rate_pb.rb +3 -24
  55. data/lib/google/ads/datamanager/v1/partner_link_service_pb.rb +32 -0
  56. data/lib/google/ads/datamanager/v1/partner_link_service_services_pb.rb +79 -0
  57. data/lib/google/ads/datamanager/v1/processing_errors_pb.rb +3 -24
  58. data/lib/google/ads/datamanager/v1/request_status_per_destination_pb.rb +7 -26
  59. data/lib/google/ads/datamanager/v1/terms_of_service_pb.rb +3 -24
  60. data/lib/google/ads/datamanager/v1/user_data_pb.rb +3 -24
  61. data/lib/google/ads/datamanager/v1/user_list_direct_license_pb.rb +28 -0
  62. data/lib/google/ads/datamanager/v1/user_list_direct_license_service_pb.rb +32 -0
  63. data/lib/google/ads/datamanager/v1/user_list_direct_license_service_services_pb.rb +63 -0
  64. data/lib/google/ads/datamanager/v1/user_list_global_license_pb.rb +30 -0
  65. data/lib/google/ads/datamanager/v1/user_list_global_license_service_pb.rb +34 -0
  66. data/lib/google/ads/datamanager/v1/user_list_global_license_service_services_pb.rb +67 -0
  67. data/lib/google/ads/datamanager/v1/user_list_global_license_type_pb.rb +21 -0
  68. data/lib/google/ads/datamanager/v1/user_list_license_client_account_type_pb.rb +21 -0
  69. data/lib/google/ads/datamanager/v1/user_list_license_metrics_pb.rb +23 -0
  70. data/lib/google/ads/datamanager/v1/user_list_license_pricing_pb.rb +26 -0
  71. data/lib/google/ads/datamanager/v1/user_list_license_status_pb.rb +21 -0
  72. data/lib/google/ads/datamanager/v1/user_list_pb.rb +43 -0
  73. data/lib/google/ads/datamanager/v1/user_list_service_pb.rb +34 -0
  74. data/lib/google/ads/datamanager/v1/user_list_service_services_pb.rb +118 -0
  75. data/lib/google/ads/datamanager/v1/user_properties_pb.rb +3 -24
  76. data/proto_docs/google/ads/datamanager/v1/age_range.rb +53 -0
  77. data/proto_docs/google/ads/datamanager/v1/audience.rb +42 -3
  78. data/proto_docs/google/ads/datamanager/v1/cart_data.rb +52 -0
  79. data/proto_docs/google/ads/datamanager/v1/destination.rb +3 -0
  80. data/proto_docs/google/ads/datamanager/v1/device_info.rb +31 -0
  81. data/proto_docs/google/ads/datamanager/v1/encryption_info.rb +6 -3
  82. data/proto_docs/google/ads/datamanager/v1/error.rb +212 -1
  83. data/proto_docs/google/ads/datamanager/v1/event.rb +47 -2
  84. data/proto_docs/google/ads/datamanager/v1/gender.rb +41 -0
  85. data/proto_docs/google/ads/datamanager/v1/insights_service.rb +133 -0
  86. data/proto_docs/google/ads/datamanager/v1/partner_link_service.rb +141 -0
  87. data/proto_docs/google/ads/datamanager/v1/processing_errors.rb +4 -1
  88. data/proto_docs/google/ads/datamanager/v1/request_status_per_destination.rb +121 -11
  89. data/proto_docs/google/ads/datamanager/v1/user_list.rb +403 -0
  90. data/proto_docs/google/ads/datamanager/v1/user_list_direct_license.rb +75 -0
  91. data/proto_docs/google/ads/datamanager/v1/user_list_direct_license_service.rb +134 -0
  92. data/proto_docs/google/ads/datamanager/v1/user_list_global_license.rb +114 -0
  93. data/proto_docs/google/ads/datamanager/v1/user_list_global_license_service.rb +204 -0
  94. data/proto_docs/google/ads/datamanager/v1/user_list_global_license_type.rb +41 -0
  95. data/proto_docs/google/ads/datamanager/v1/user_list_license_client_account_type.rb +44 -0
  96. data/proto_docs/google/ads/datamanager/v1/user_list_license_metrics.rb +55 -0
  97. data/proto_docs/google/ads/datamanager/v1/user_list_license_pricing.rb +108 -0
  98. data/proto_docs/google/ads/datamanager/v1/user_list_license_status.rb +38 -0
  99. data/proto_docs/google/ads/datamanager/v1/user_list_service.rb +151 -0
  100. data/proto_docs/google/api/client.rb +149 -29
  101. data/proto_docs/google/protobuf/empty.rb +34 -0
  102. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  103. metadata +73 -2
@@ -31,11 +31,23 @@ module Google
31
31
  # @!attribute [rw] error_info
32
32
  # @return [::Google::Ads::DataManager::V1::ErrorInfo]
33
33
  # An error info error containing the error reason and error counts related to
34
- # the upload.
34
+ # the upload. Only populated if the
35
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#request_status `request_status`}
36
+ # is
37
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination::RequestStatus::FAILED `FAILED`}
38
+ # or
39
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination::RequestStatus::PARTIAL_SUCCESS `PARTIAL_SUCCESS`}.
40
+ # This field isn't populated while the request has
41
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#request_status `request_status`}
42
+ # of
43
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination::RequestStatus::PROCESSING `PROCESSING`}.
35
44
  # @!attribute [rw] warning_info
36
45
  # @return [::Google::Ads::DataManager::V1::WarningInfo]
37
46
  # A warning info containing the warning reason and warning counts related to
38
- # the upload.
47
+ # the upload. This field isn't populated while the request has
48
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#request_status `request_status`}
49
+ # of
50
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination::RequestStatus::PROCESSING `PROCESSING`}.
39
51
  # @!attribute [rw] audience_members_ingestion_status
40
52
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestAudienceMembersStatus]
41
53
  # The status of the ingest audience members request.
@@ -60,17 +72,27 @@ module Google
60
72
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestUserDataStatus]
61
73
  # The status of the user data ingestion to the destination.
62
74
  #
63
- # Note: The following fields are mutually exclusive: `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
75
+ # Note: The following fields are mutually exclusive: `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
64
76
  # @!attribute [rw] mobile_data_ingestion_status
65
77
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestMobileDataStatus]
66
78
  # The status of the mobile data ingestion to the destination.
67
79
  #
68
- # Note: The following fields are mutually exclusive: `mobile_data_ingestion_status`, `user_data_ingestion_status`, `pair_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
80
+ # Note: The following fields are mutually exclusive: `mobile_data_ingestion_status`, `user_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
69
81
  # @!attribute [rw] pair_data_ingestion_status
70
82
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestPairDataStatus]
71
83
  # The status of the pair data ingestion to the destination.
72
84
  #
73
- # Note: The following fields are mutually exclusive: `pair_data_ingestion_status`, `user_data_ingestion_status`, `mobile_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
85
+ # Note: The following fields are mutually exclusive: `pair_data_ingestion_status`, `user_data_ingestion_status`, `mobile_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
86
+ # @!attribute [rw] user_id_data_ingestion_status
87
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestUserIdDataStatus]
88
+ # The status of the user id data ingestion to the destination.
89
+ #
90
+ # Note: The following fields are mutually exclusive: `user_id_data_ingestion_status`, `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`, `ppid_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
91
+ # @!attribute [rw] ppid_data_ingestion_status
92
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestPpidDataStatus]
93
+ # The status of the ppid data ingestion to the destination.
94
+ #
95
+ # Note: The following fields are mutually exclusive: `ppid_data_ingestion_status`, `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
74
96
  class IngestAudienceMembersStatus
75
97
  include ::Google::Protobuf::MessageExts
76
98
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -81,17 +103,27 @@ module Google
81
103
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveUserDataStatus]
82
104
  # The status of the user data removal from the destination.
83
105
  #
84
- # Note: The following fields are mutually exclusive: `user_data_removal_status`, `mobile_data_removal_status`, `pair_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
106
+ # Note: The following fields are mutually exclusive: `user_data_removal_status`, `mobile_data_removal_status`, `pair_data_removal_status`, `user_id_data_removal_status`, `ppid_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
85
107
  # @!attribute [rw] mobile_data_removal_status
86
108
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveMobileDataStatus]
87
109
  # The status of the mobile data removal from the destination.
88
110
  #
89
- # Note: The following fields are mutually exclusive: `mobile_data_removal_status`, `user_data_removal_status`, `pair_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
111
+ # Note: The following fields are mutually exclusive: `mobile_data_removal_status`, `user_data_removal_status`, `pair_data_removal_status`, `user_id_data_removal_status`, `ppid_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
90
112
  # @!attribute [rw] pair_data_removal_status
91
113
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemovePairDataStatus]
92
114
  # The status of the pair data removal from the destination.
93
115
  #
94
- # Note: The following fields are mutually exclusive: `pair_data_removal_status`, `user_data_removal_status`, `mobile_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
116
+ # Note: The following fields are mutually exclusive: `pair_data_removal_status`, `user_data_removal_status`, `mobile_data_removal_status`, `user_id_data_removal_status`, `ppid_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
117
+ # @!attribute [rw] user_id_data_removal_status
118
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveUserIdDataStatus]
119
+ # The status of the user id data removal from the destination.
120
+ #
121
+ # Note: The following fields are mutually exclusive: `user_id_data_removal_status`, `user_data_removal_status`, `mobile_data_removal_status`, `pair_data_removal_status`, `ppid_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
122
+ # @!attribute [rw] ppid_data_removal_status
123
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemovePpidDataStatus]
124
+ # The status of the ppid data removal from the destination.
125
+ #
126
+ # Note: The following fields are mutually exclusive: `ppid_data_removal_status`, `user_data_removal_status`, `mobile_data_removal_status`, `pair_data_removal_status`, `user_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
95
127
  class RemoveAudienceMembersStatus
96
128
  include ::Google::Protobuf::MessageExts
97
129
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -210,21 +242,99 @@ module Google
210
242
  extend ::Google::Protobuf::MessageExts::ClassMethods
211
243
  end
212
244
 
245
+ # The status of the user id data ingestion to the destination containing
246
+ # stats related to the ingestion.
247
+ # @!attribute [rw] record_count
248
+ # @return [::Integer]
249
+ # The total count of audience members sent in the upload request for the
250
+ # destination. Includes all audience members in the request, regardless of
251
+ # whether they were successfully ingested or not.
252
+ # @!attribute [rw] user_id_count
253
+ # @return [::Integer]
254
+ # The total count of user ids sent in the upload request for the
255
+ # destination. Includes all user ids in the request, regardless of
256
+ # whether they were successfully ingested or not.
257
+ class IngestUserIdDataStatus
258
+ include ::Google::Protobuf::MessageExts
259
+ extend ::Google::Protobuf::MessageExts::ClassMethods
260
+ end
261
+
262
+ # The status of the user id data removal from the destination.
263
+ # @!attribute [rw] record_count
264
+ # @return [::Integer]
265
+ # The total count of audience members sent in the removal request. Includes
266
+ # all audience members in the request, regardless of whether they were
267
+ # successfully removed or not.
268
+ # @!attribute [rw] user_id_count
269
+ # @return [::Integer]
270
+ # The total count of user ids sent in the removal request. Includes all
271
+ # user ids in the request, regardless of whether they were successfully
272
+ # removed or not.
273
+ class RemoveUserIdDataStatus
274
+ include ::Google::Protobuf::MessageExts
275
+ extend ::Google::Protobuf::MessageExts::ClassMethods
276
+ end
277
+
278
+ # The status of the ppid data ingestion to the destination containing stats
279
+ # related to the ingestion.
280
+ # @!attribute [rw] record_count
281
+ # @return [::Integer]
282
+ # The total count of audience members sent in the upload request for the
283
+ # destination. Includes all audience members in the request, regardless of
284
+ # whether they were successfully ingested or not.
285
+ # @!attribute [rw] ppid_count
286
+ # @return [::Integer]
287
+ # The total count of ppids sent in the upload request for the
288
+ # destination. Includes all ppids in the request, regardless of
289
+ # whether they were successfully ingested or not.
290
+ class IngestPpidDataStatus
291
+ include ::Google::Protobuf::MessageExts
292
+ extend ::Google::Protobuf::MessageExts::ClassMethods
293
+ end
294
+
295
+ # The status of the ppid data removal from the destination.
296
+ # @!attribute [rw] record_count
297
+ # @return [::Integer]
298
+ # The total count of audience members sent in the removal request. Includes
299
+ # all audience members in the request, regardless of whether they were
300
+ # successfully removed or not.
301
+ # @!attribute [rw] ppid_count
302
+ # @return [::Integer]
303
+ # The total count of ppids sent in the removal request. Includes all
304
+ # ppids in the request, regardless of whether they were successfully
305
+ # removed or not.
306
+ class RemovePpidDataStatus
307
+ include ::Google::Protobuf::MessageExts
308
+ extend ::Google::Protobuf::MessageExts::ClassMethods
309
+ end
310
+
213
311
  # The request status.
214
312
  module RequestStatus
215
313
  # The request status is unknown.
216
314
  REQUEST_STATUS_UNKNOWN = 0
217
315
 
218
- # The request succeeded.
316
+ # Processing succeeded for all records without any errors. However, there
317
+ # may be warnings in the
318
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#warning_info `warning_info`}
319
+ # field.
219
320
  SUCCESS = 1
220
321
 
221
322
  # The request is processing.
222
323
  PROCESSING = 2
223
324
 
224
- # The request failed.
325
+ # Processing failed for all records. Check the
326
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#error_info `error_info`}
327
+ # field for error details, and check the
328
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#warning_info `warning_info`}
329
+ # field for warning details.
225
330
  FAILED = 3
226
331
 
227
- # The request partially succeeded.
332
+ # Processing completed successfully without errors for some records, but
333
+ # failed with errors for other records. Check the
334
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#error_info `error_info`}
335
+ # field for error details, and check the
336
+ # {::Google::Ads::DataManager::V1::RequestStatusPerDestination#warning_info `warning_info`}
337
+ # field for warning details.
228
338
  PARTIAL_SUCCESS = 4
229
339
  end
230
340
  end
@@ -0,0 +1,403 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Ads
22
+ module DataManager
23
+ module V1
24
+ # A user list resource.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # Identifier. The resource name of the user list.
28
+ # Format:
29
+ # accountTypes/\\{account_type}/accounts/\\{account}/userLists/\\{user_list}
30
+ # @!attribute [r] id
31
+ # @return [::Integer]
32
+ # Output only. The unique ID of the user list.
33
+ # @!attribute [r] read_only
34
+ # @return [::Boolean]
35
+ # Output only. An option that indicates if a user may edit a list.
36
+ # @!attribute [rw] display_name
37
+ # @return [::String]
38
+ # Required. The display name of the user list.
39
+ # @!attribute [rw] description
40
+ # @return [::String]
41
+ # Optional. A description of the user list.
42
+ # @!attribute [rw] membership_status
43
+ # @return [::Google::Ads::DataManager::V1::UserList::MembershipStatus]
44
+ # Optional. Membership status of this user list.
45
+ # @!attribute [rw] integration_code
46
+ # @return [::String]
47
+ # Optional. An ID from external system. It is used by user list sellers to
48
+ # correlate IDs on their systems.
49
+ # @!attribute [rw] membership_duration
50
+ # @return [::Google::Protobuf::Duration]
51
+ # Optional. The duration a user remains in the user list.
52
+ # Valid durations are exact multiples of 24 hours (86400 seconds).
53
+ # Providing a value that is not an exact multiple of 24 hours will result in
54
+ # an INVALID_ARGUMENT error.
55
+ # @!attribute [r] closing_reason
56
+ # @return [::Google::Ads::DataManager::V1::UserList::ClosingReason]
57
+ # Output only. The reason why this user list membership status is closed.
58
+ # @!attribute [r] access_reason
59
+ # @return [::Google::Ads::DataManager::V1::UserList::AccessReason]
60
+ # Output only. The reason this account has been granted access to the list.
61
+ # @!attribute [rw] account_access_status
62
+ # @return [::Google::Ads::DataManager::V1::UserList::AccessStatus]
63
+ # Optional. Indicates if this share is still enabled. When a user list is
64
+ # shared with the account this field is set to `ENABLED`. Later the user list
65
+ # owner can decide to revoke the share and make it `DISABLED`.
66
+ # @!attribute [r] size_info
67
+ # @return [::Google::Ads::DataManager::V1::SizeInfo]
68
+ # Output only. Estimated number of members in this user list in different
69
+ # target networks.
70
+ # @!attribute [rw] target_network_info
71
+ # @return [::Google::Ads::DataManager::V1::TargetNetworkInfo]
72
+ # Optional. Eligibility information for different target networks.
73
+ # @!attribute [rw] ingested_user_list_info
74
+ # @return [::Google::Ads::DataManager::V1::IngestedUserListInfo]
75
+ # Optional. Represents a user list that is populated by user ingested data.
76
+ class UserList
77
+ include ::Google::Protobuf::MessageExts
78
+ extend ::Google::Protobuf::MessageExts::ClassMethods
79
+
80
+ # Status of the user list.
81
+ module MembershipStatus
82
+ # Not specified.
83
+ MEMBERSHIP_STATUS_UNSPECIFIED = 0
84
+
85
+ # Open status - User list is accruing members and can be targeted to.
86
+ OPEN = 1
87
+
88
+ # Closed status - No new members being added.
89
+ CLOSED = 2
90
+ end
91
+
92
+ # Indicates the reason why the user list was closed.
93
+ # This enum is only used when a list is auto-closed by the system.
94
+ module ClosingReason
95
+ # Not specified.
96
+ CLOSING_REASON_UNSPECIFIED = 0
97
+
98
+ # The user list was closed because it has not been used in targeting
99
+ # recently. See https://support.google.com/google-ads/answer/2472738
100
+ # for details.
101
+ UNUSED = 1
102
+ end
103
+
104
+ # Enum describing possible access reasons.
105
+ module AccessReason
106
+ # Not specified.
107
+ ACCESS_REASON_UNSPECIFIED = 0
108
+
109
+ # The resource is owned by the user.
110
+ OWNED = 1
111
+
112
+ # The resource is shared to the user.
113
+ SHARED = 2
114
+
115
+ # The resource is licensed to the user.
116
+ LICENSED = 3
117
+
118
+ # The user subscribed to the resource.
119
+ SUBSCRIBED = 4
120
+
121
+ # The resource is accessible to the user.
122
+ AFFILIATED = 5
123
+ end
124
+
125
+ # Indicates if this client still has access to the list.
126
+ module AccessStatus
127
+ # Not specified.
128
+ ACCESS_STATUS_UNSPECIFIED = 0
129
+
130
+ # The access is enabled.
131
+ ENABLED = 1
132
+
133
+ # The access is disabled.
134
+ DISABLED = 2
135
+ end
136
+ end
137
+
138
+ # Estimated number of members in this user list in different target networks.
139
+ # @!attribute [r] display_network_members_count
140
+ # @return [::Integer]
141
+ # Output only. Estimated number of members in this user list, on the Google
142
+ # Display Network.
143
+ # @!attribute [r] search_network_members_count
144
+ # @return [::Integer]
145
+ # Output only. Estimated number of members in this user list in the
146
+ # google.com domain. These are the members available for targeting in Search
147
+ # campaigns.
148
+ # @!attribute [r] youtube_members_count
149
+ # @return [::Integer]
150
+ # Output only. Estimated number of members in this user list on YouTube.
151
+ # @!attribute [r] gmail_members_count
152
+ # @return [::Integer]
153
+ # Output only. Estimated number of members in this user list on Gmail.
154
+ class SizeInfo
155
+ include ::Google::Protobuf::MessageExts
156
+ extend ::Google::Protobuf::MessageExts::ClassMethods
157
+ end
158
+
159
+ # Eligibility information for different target networks.
160
+ # @!attribute [r] eligible_for_display
161
+ # @return [::Boolean]
162
+ # Output only. Indicates this user list is eligible for Google Display
163
+ # Network.
164
+ # @!attribute [rw] eligible_for_search
165
+ # @return [::Boolean]
166
+ # Optional. Indicates if this user list is eligible for Google Search
167
+ # Network.
168
+ class TargetNetworkInfo
169
+ include ::Google::Protobuf::MessageExts
170
+ extend ::Google::Protobuf::MessageExts::ClassMethods
171
+ end
172
+
173
+ # Represents a user list that is populated by user provided data.
174
+ # @!attribute [rw] upload_key_types
175
+ # @return [::Array<::Google::Ads::DataManager::V1::IngestedUserListInfo::UploadKeyType>]
176
+ # Required. Immutable. Upload key types of this user list.
177
+ # @!attribute [rw] contact_id_info
178
+ # @return [::Google::Ads::DataManager::V1::ContactIdInfo]
179
+ # Optional. Additional information when `CONTACT_ID` is one of the
180
+ # `upload_key_types`.
181
+ # @!attribute [rw] mobile_id_info
182
+ # @return [::Google::Ads::DataManager::V1::MobileIdInfo]
183
+ # Optional. Additional information when `MOBILE_ID` is one of the
184
+ # `upload_key_types`.
185
+ # @!attribute [rw] user_id_info
186
+ # @return [::Google::Ads::DataManager::V1::UserIdInfo]
187
+ # Optional. Additional information when `USER_ID` is one of the
188
+ # `upload_key_types`.
189
+ # @!attribute [rw] pair_id_info
190
+ # @return [::Google::Ads::DataManager::V1::PairIdInfo]
191
+ # Optional. Additional information when `PAIR_ID` is one of the
192
+ # `upload_key_types`.
193
+ #
194
+ # This feature is only available to data partners.
195
+ # @!attribute [rw] pseudonymous_id_info
196
+ # @return [::Google::Ads::DataManager::V1::PseudonymousIdInfo]
197
+ # Optional. Additional information for `PSEUDONYMOUS_ID` is one of the
198
+ # `upload_key_types`.
199
+ # @!attribute [rw] partner_audience_info
200
+ # @return [::Google::Ads::DataManager::V1::PartnerAudienceInfo]
201
+ # Optional. Additional information for partner audiences.
202
+ #
203
+ # This feature is only available to data partners.
204
+ class IngestedUserListInfo
205
+ include ::Google::Protobuf::MessageExts
206
+ extend ::Google::Protobuf::MessageExts::ClassMethods
207
+
208
+ # Enum containing the possible upload key types of a user list.
209
+ module UploadKeyType
210
+ # Not specified.
211
+ UPLOAD_KEY_TYPE_UNSPECIFIED = 0
212
+
213
+ # Customer info such as email address, phone number or physical address.
214
+ CONTACT_ID = 1
215
+
216
+ # Mobile advertising ids.
217
+ MOBILE_ID = 2
218
+
219
+ # Third party provided user ids.
220
+ USER_ID = 3
221
+
222
+ # Publisher advertiser identity reconciliation ids.
223
+ PAIR_ID = 4
224
+
225
+ # Data Management Platform IDs:
226
+ # - Google User ID
227
+ # - Partner Provided ID
228
+ # - Publisher Provided ID
229
+ # - iOS IDFA
230
+ # - Android advertising ID
231
+ # - Roku ID
232
+ # - Amazon Fire TV ID
233
+ # - Xbox or Microsoft ID
234
+ PSEUDONYMOUS_ID = 5
235
+ end
236
+ end
237
+
238
+ # Additional information when `CONTACT_ID` is one of the `upload_key_types`.
239
+ # @!attribute [rw] data_source_type
240
+ # @return [::Google::Ads::DataManager::V1::DataSourceType]
241
+ # Optional. Immutable. Source of the upload data
242
+ # @!attribute [r] match_rate_percentage
243
+ # @return [::Integer]
244
+ # Output only. Match rate for customer match user lists.
245
+ class ContactIdInfo
246
+ include ::Google::Protobuf::MessageExts
247
+ extend ::Google::Protobuf::MessageExts::ClassMethods
248
+ end
249
+
250
+ # Additional information when `MOBILE_ID` is one of the `upload_key_types`.
251
+ # @!attribute [rw] data_source_type
252
+ # @return [::Google::Ads::DataManager::V1::DataSourceType]
253
+ # Optional. Immutable. Source of the upload data.
254
+ # @!attribute [rw] key_space
255
+ # @return [::Google::Ads::DataManager::V1::MobileIdInfo::KeySpace]
256
+ # Required. Immutable. The key space of mobile IDs.
257
+ # @!attribute [rw] app_id
258
+ # @return [::String]
259
+ # Required. Immutable. A string that uniquely identifies a mobile application
260
+ # from which the data was collected.
261
+ class MobileIdInfo
262
+ include ::Google::Protobuf::MessageExts
263
+ extend ::Google::Protobuf::MessageExts::ClassMethods
264
+
265
+ # Key space for mobile ID.
266
+ module KeySpace
267
+ # Not specified.
268
+ KEY_SPACE_UNSPECIFIED = 0
269
+
270
+ # The iOS keyspace.
271
+ IOS = 1
272
+
273
+ # The Android keyspace.
274
+ ANDROID = 2
275
+ end
276
+ end
277
+
278
+ # Additional information when `USER_ID` is one of the `upload_key_types`.
279
+ # @!attribute [rw] data_source_type
280
+ # @return [::Google::Ads::DataManager::V1::DataSourceType]
281
+ # Optional. Immutable. Source of the upload data.
282
+ class UserIdInfo
283
+ include ::Google::Protobuf::MessageExts
284
+ extend ::Google::Protobuf::MessageExts::ClassMethods
285
+ end
286
+
287
+ # Additional information when `PAIR_ID` is one of the `upload_key_types`.
288
+ #
289
+ # This feature is only available to data partners.
290
+ # @!attribute [rw] publisher_id
291
+ # @return [::Integer]
292
+ # Required. Immutable. Identifies the publisher that the Publisher Advertiser
293
+ # Identity Reconciliation user list is reconciled with. This field is
294
+ # provided by the cleanroom provider and is only unique in the scope of that
295
+ # cleanroom. This cannot be used as a global identifier across multiple
296
+ # cleanrooms.
297
+ # @!attribute [rw] publisher_name
298
+ # @return [::String]
299
+ # Required. Descriptive name of the publisher to be displayed in the UI for a
300
+ # better targeting experience.
301
+ # @!attribute [rw] match_rate_percentage
302
+ # @return [::Integer]
303
+ # Required. This field denotes the percentage of membership match of this
304
+ # user list with the corresponding publisher's first party data. Must be
305
+ # between 0 and 100 inclusive.
306
+ # @!attribute [rw] advertiser_identifier_count
307
+ # @return [::Integer]
308
+ # Optional. The count of the advertiser's first party data records that have
309
+ # been uploaded to a clean room provider. This does not signify the size of a
310
+ # PAIR user list.
311
+ # @!attribute [rw] clean_room_identifier
312
+ # @return [::String]
313
+ # Required. Immutable. Identifies a unique advertiser to publisher
314
+ # relationship with one clean room provider or across multiple clean room
315
+ # providers.
316
+ class PairIdInfo
317
+ include ::Google::Protobuf::MessageExts
318
+ extend ::Google::Protobuf::MessageExts::ClassMethods
319
+ end
320
+
321
+ # Additional information for partner audiences.
322
+ #
323
+ # This feature is only available to data partners.
324
+ # @!attribute [rw] partner_audience_source
325
+ # @return [::Google::Ads::DataManager::V1::PartnerAudienceInfo::PartnerAudienceSource]
326
+ # Required. Immutable. The source of the partner audience.
327
+ # @!attribute [rw] commerce_partner
328
+ # @return [::String]
329
+ # Optional. The commerce partner name.
330
+ # Only allowed if `partner_audience_source` is `COMMERCE_AUDIENCE`.
331
+ class PartnerAudienceInfo
332
+ include ::Google::Protobuf::MessageExts
333
+ extend ::Google::Protobuf::MessageExts::ClassMethods
334
+
335
+ # Partner audience source.
336
+ module PartnerAudienceSource
337
+ # Not specified.
338
+ PARTNER_AUDIENCE_SOURCE_UNSPECIFIED = 0
339
+
340
+ # Partner Audience source is commerce audience.
341
+ COMMERCE_AUDIENCE = 1
342
+
343
+ # Partner Audience source is linear TV audience.
344
+ LINEAR_TV_AUDIENCE = 2
345
+
346
+ # Partner Audience source is agency/provider audience.
347
+ AGENCY_PROVIDER_AUDIENCE = 3
348
+ end
349
+ end
350
+
351
+ # Additional information when `PSEUDONYMOUS_ID` is one of the
352
+ # `upload_key_types`.
353
+ # @!attribute [r] sync_status
354
+ # @return [::Google::Ads::DataManager::V1::PseudonymousIdInfo::SyncStatus]
355
+ # Output only. Sync status of the user list.
356
+ # @!attribute [rw] billable_record_count
357
+ # @return [::Integer]
358
+ # Optional. Immutable. The number of billable records (e.g. uploaded or
359
+ # matched).
360
+ class PseudonymousIdInfo
361
+ include ::Google::Protobuf::MessageExts
362
+ extend ::Google::Protobuf::MessageExts::ClassMethods
363
+
364
+ # Sync status of the user list.
365
+ module SyncStatus
366
+ # Not specified.
367
+ SYNC_STATUS_UNSPECIFIED = 0
368
+
369
+ # The user list has been created as a placeholder. List contents and/or
370
+ # metadata are still being synced. The user list is not ready for use.
371
+ CREATED = 1
372
+
373
+ # The user list is ready for use. Contents and cookies have been synced
374
+ # correctly.
375
+ READY_FOR_USE = 2
376
+
377
+ # An error has occurred syncing user list contents and/or metadata. The
378
+ # user list cannot be used.
379
+ FAILED = 3
380
+ end
381
+ end
382
+
383
+ # Indicates source of upload data.
384
+ module DataSourceType
385
+ # Not specified.
386
+ DATA_SOURCE_TYPE_UNSPECIFIED = 0
387
+
388
+ # The uploaded data is first-party data.
389
+ DATA_SOURCE_TYPE_FIRST_PARTY = 1
390
+
391
+ # The uploaded data is from a third-party credit bureau.
392
+ DATA_SOURCE_TYPE_THIRD_PARTY_CREDIT_BUREAU = 2
393
+
394
+ # The uploaded data is from a third-party voter file.
395
+ DATA_SOURCE_TYPE_THIRD_PARTY_VOTER_FILE = 3
396
+
397
+ # The uploaded data is third party partner data.
398
+ DATA_SOURCE_TYPE_THIRD_PARTY_PARTNER_DATA = 4
399
+ end
400
+ end
401
+ end
402
+ end
403
+ end
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Ads
22
+ module DataManager
23
+ module V1
24
+ # A user list direct license.
25
+ #
26
+ # This feature is only available to data partners.
27
+ # @!attribute [rw] name
28
+ # @return [::String]
29
+ # Identifier. The resource name of the user list direct license.
30
+ # @!attribute [rw] user_list_id
31
+ # @return [::Integer]
32
+ # Immutable. ID of the user list being licensed.
33
+ # @!attribute [r] user_list_display_name
34
+ # @return [::String]
35
+ # Output only. Name of the user list being licensed.
36
+ #
37
+ # This field is read-only.
38
+ # @!attribute [rw] client_account_type
39
+ # @return [::Google::Ads::DataManager::V1::UserListLicenseClientAccountType]
40
+ # Immutable. Account type of client customer which the user list is being
41
+ # licensed to.
42
+ # @!attribute [rw] client_account_id
43
+ # @return [::Integer]
44
+ # Immutable. ID of client customer which the user list is being licensed to.
45
+ # @!attribute [r] client_account_display_name
46
+ # @return [::String]
47
+ # Output only. Name of client customer which the user list is being licensed
48
+ # to.
49
+ #
50
+ # This field is read-only.
51
+ # @!attribute [rw] status
52
+ # @return [::Google::Ads::DataManager::V1::UserListLicenseStatus]
53
+ # Optional. Status of UserListDirectLicense - ENABLED or DISABLED.
54
+ # @!attribute [rw] pricing
55
+ # @return [::Google::Ads::DataManager::V1::UserListLicensePricing]
56
+ # Optional. UserListDirectLicense pricing.
57
+ # @!attribute [r] historical_pricings
58
+ # @return [::Array<::Google::Ads::DataManager::V1::UserListLicensePricing>]
59
+ # Output only. Pricing history of this user list license.
60
+ #
61
+ # This field is read-only.
62
+ # @!attribute [r] metrics
63
+ # @return [::Google::Ads::DataManager::V1::UserListLicenseMetrics]
64
+ # Output only. Metrics related to this license
65
+ #
66
+ # This field is read-only and only populated if the start and end dates are
67
+ # set in the ListUserListDirectLicenses call
68
+ class UserListDirectLicense
69
+ include ::Google::Protobuf::MessageExts
70
+ extend ::Google::Protobuf::MessageExts::ClassMethods
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end