google-ads-data_manager-v1 0.6.0 → 0.8.1

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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -1
  3. data/lib/google/ads/data_manager/v1/ingestion_service/client.rb +185 -1
  4. data/lib/google/ads/data_manager/v1/ingestion_service/credentials.rb +1 -1
  5. data/lib/google/ads/data_manager/v1/ingestion_service/rest/client.rb +187 -1
  6. data/lib/google/ads/data_manager/v1/ingestion_service/rest/service_stub.rb +121 -1
  7. data/lib/google/ads/data_manager/v1/ingestion_service/rest.rb +1 -1
  8. data/lib/google/ads/data_manager/v1/ingestion_service.rb +1 -1
  9. data/lib/google/ads/data_manager/v1/partner_link_service/client.rb +8 -1
  10. data/lib/google/ads/data_manager/v1/partner_link_service/rest/client.rb +8 -1
  11. data/lib/google/ads/data_manager/v1/rest.rb +1 -1
  12. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/client.rb +4 -0
  13. data/lib/google/ads/data_manager/v1/user_list_direct_license_service/rest/client.rb +4 -0
  14. data/lib/google/ads/data_manager/v1/user_list_global_license_service/client.rb +8 -0
  15. data/lib/google/ads/data_manager/v1/user_list_global_license_service/rest/client.rb +8 -0
  16. data/lib/google/ads/data_manager/v1/user_list_service/client.rb +4 -0
  17. data/lib/google/ads/data_manager/v1/user_list_service/rest/client.rb +4 -0
  18. data/lib/google/ads/data_manager/v1/version.rb +1 -1
  19. data/lib/google/ads/data_manager/v1.rb +1 -1
  20. data/lib/google/ads/datamanager/v1/ad_event_pb.rb +36 -0
  21. data/lib/google/ads/datamanager/v1/audience_pb.rb +3 -1
  22. data/lib/google/ads/datamanager/v1/destination_pb.rb +1 -1
  23. data/lib/google/ads/datamanager/v1/device_info_pb.rb +2 -1
  24. data/lib/google/ads/datamanager/v1/encryption_info_pb.rb +2 -1
  25. data/lib/google/ads/datamanager/v1/error_pb.rb +1 -1
  26. data/lib/google/ads/datamanager/v1/ingestion_service_pb.rb +8 -1
  27. data/lib/google/ads/datamanager/v1/ingestion_service_services_pb.rb +9 -1
  28. data/lib/google/ads/datamanager/v1/partner_link_service_pb.rb +4 -1
  29. data/lib/google/ads/datamanager/v1/processing_errors_pb.rb +3 -1
  30. data/lib/google/ads/datamanager/v1/request_status_per_destination_pb.rb +6 -1
  31. data/lib/google/ads/datamanager/v1/user_data_pb.rb +1 -1
  32. data/lib/google/ads/datamanager/v1/viewability_info_pb.rb +26 -0
  33. data/lib/google-ads-data_manager-v1.rb +1 -1
  34. data/proto_docs/google/ads/datamanager/v1/ad_event.rb +405 -0
  35. data/proto_docs/google/ads/datamanager/v1/audience.rb +41 -9
  36. data/proto_docs/google/ads/datamanager/v1/cart_data.rb +1 -1
  37. data/proto_docs/google/ads/datamanager/v1/consent.rb +1 -1
  38. data/proto_docs/google/ads/datamanager/v1/destination.rb +2 -2
  39. data/proto_docs/google/ads/datamanager/v1/device_info.rb +3 -2
  40. data/proto_docs/google/ads/datamanager/v1/encryption_info.rb +24 -3
  41. data/proto_docs/google/ads/datamanager/v1/error.rb +11 -1
  42. data/proto_docs/google/ads/datamanager/v1/event.rb +1 -1
  43. data/proto_docs/google/ads/datamanager/v1/experimental_field.rb +1 -1
  44. data/proto_docs/google/ads/datamanager/v1/ingestion_service.rb +60 -1
  45. data/proto_docs/google/ads/datamanager/v1/item_parameter.rb +1 -1
  46. data/proto_docs/google/ads/datamanager/v1/match_rate.rb +1 -1
  47. data/proto_docs/google/ads/datamanager/v1/partner_link_service.rb +62 -1
  48. data/proto_docs/google/ads/datamanager/v1/processing_errors.rb +92 -1
  49. data/proto_docs/google/ads/datamanager/v1/request_status_per_destination.rb +115 -16
  50. data/proto_docs/google/ads/datamanager/v1/terms_of_service.rb +1 -1
  51. data/proto_docs/google/ads/datamanager/v1/user_data.rb +30 -1
  52. data/proto_docs/google/ads/datamanager/v1/user_list.rb +2 -0
  53. data/proto_docs/google/ads/datamanager/v1/user_list_direct_license_service.rb +4 -0
  54. data/proto_docs/google/ads/datamanager/v1/user_list_global_license_service.rb +8 -0
  55. data/proto_docs/google/ads/datamanager/v1/user_list_service.rb +4 -0
  56. data/proto_docs/google/ads/datamanager/v1/user_properties.rb +1 -1
  57. data/proto_docs/google/ads/datamanager/v1/viewability_info.rb +91 -0
  58. data/proto_docs/google/api/client.rb +1 -1
  59. data/proto_docs/google/api/field_behavior.rb +1 -1
  60. data/proto_docs/google/api/launch_stage.rb +1 -1
  61. data/proto_docs/google/api/resource.rb +1 -1
  62. data/proto_docs/google/protobuf/duration.rb +1 -1
  63. data/proto_docs/google/protobuf/timestamp.rb +8 -7
  64. metadata +5 -1
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -145,6 +145,8 @@ module Google
145
145
  UNSUPPORTED_LINKED_ACCOUNT_FOR_DATA_PARTNER = 38
146
146
 
147
147
  # Events data contains no user identifiers or ad identifiers.
148
+ # For Floodlight Event ingestion this error indicates requests contains no ad
149
+ # identifiers.
148
150
  NO_IDENTIFIERS_PROVIDED = 39
149
151
 
150
152
  # The property type is not supported.
@@ -411,6 +413,14 @@ module Google
411
413
 
412
414
  # Insights missing for this dimension.
413
415
  INSIGHTS_MISSING_FOR_DIMENSION = 123
416
+
417
+ # A required prerequisite link (such as a Google Ads link) must exist for
418
+ # the Google Analytics property to perform this operation.
419
+ REQUIRED_PREREQUISITE_LINK_MISSING = 124
420
+
421
+ # The remove as of time must be in the past or present. Future timestamps are
422
+ # not permitted for removing audience members.
423
+ INVALID_REMOVE_AS_OF_TIME = 125
414
424
  end
415
425
  end
416
426
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -68,6 +68,9 @@ module Google
68
68
  # @!attribute [rw] request_id
69
69
  # @return [::String]
70
70
  # The auto-generated ID of the request.
71
+ # @!attribute [rw] field_warnings
72
+ # @return [::Array<::Google::Ads::DataManager::V1::FieldWarning>]
73
+ # Detailed row-level warnings with field paths.
71
74
  class IngestAudienceMembersResponse
72
75
  include ::Google::Protobuf::MessageExts
73
76
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -113,6 +116,36 @@ module Google
113
116
  extend ::Google::Protobuf::MessageExts::ClassMethods
114
117
  end
115
118
 
119
+ # Request to remove all users from an audience in the provided destinations.
120
+ # Returns a
121
+ # {::Google::Ads::DataManager::V1::RemoveAllAudienceMembersResponse RemoveAllAudienceMembersResponse}.
122
+ # @!attribute [rw] destinations
123
+ # @return [::Array<::Google::Ads::DataManager::V1::Destination>]
124
+ # Required. The list of destinations to remove the users from.
125
+ # @!attribute [rw] remove_as_of_time
126
+ # @return [::Google::Protobuf::Timestamp]
127
+ # Optional. The remove as of time. If set, only audience members last added
128
+ # before this time will be removed. If not set, it defaults to current time.
129
+ # The remove as of time must not be in the future.
130
+ # @!attribute [rw] validate_only
131
+ # @return [::Boolean]
132
+ # Optional. For testing purposes. If `true`, the request is validated but not
133
+ # executed. Only errors are returned, not results.
134
+ class RemoveAllAudienceMembersRequest
135
+ include ::Google::Protobuf::MessageExts
136
+ extend ::Google::Protobuf::MessageExts::ClassMethods
137
+ end
138
+
139
+ # Response from the
140
+ # {::Google::Ads::DataManager::V1::RemoveAllAudienceMembersRequest RemoveAllAudienceMembersRequest}.
141
+ # @!attribute [rw] request_id
142
+ # @return [::String]
143
+ # The auto-generated ID of the request.
144
+ class RemoveAllAudienceMembersResponse
145
+ include ::Google::Protobuf::MessageExts
146
+ extend ::Google::Protobuf::MessageExts::ClassMethods
147
+ end
148
+
116
149
  # Request to upload audience members to the provided destinations. Returns an
117
150
  # {::Google::Ads::DataManager::V1::IngestEventsResponse IngestEventsResponse}.
118
151
  # @!attribute [rw] destinations
@@ -157,11 +190,37 @@ module Google
157
190
  # @!attribute [rw] request_id
158
191
  # @return [::String]
159
192
  # The auto-generated ID of the request.
193
+ # @!attribute [rw] field_warnings
194
+ # @return [::Array<::Google::Ads::DataManager::V1::FieldWarning>]
195
+ # Detailed row-level warnings with field paths.
160
196
  class IngestEventsResponse
161
197
  include ::Google::Protobuf::MessageExts
162
198
  extend ::Google::Protobuf::MessageExts::ClassMethods
163
199
  end
164
200
 
201
+ # Request to upload ad events.
202
+ # @!attribute [rw] ad_events
203
+ # @return [::Array<::Google::Ads::DataManager::V1::AdEvent>]
204
+ # Required. Required (at least 1). A list of ad events.
205
+ # @!attribute [rw] encryption_info
206
+ # @return [::Google::Ads::DataManager::V1::EncryptionInfo]
207
+ # Required. Information about encryption keys which are used to encrypt the
208
+ # data.
209
+ # @!attribute [rw] validate_only
210
+ # @deprecated This field is deprecated and may be removed in the next major version update.
211
+ # @return [::Boolean]
212
+ # Optional. If true, the request is validated, but not executed.
213
+ class IngestAdEventsRequest
214
+ include ::Google::Protobuf::MessageExts
215
+ extend ::Google::Protobuf::MessageExts::ClassMethods
216
+ end
217
+
218
+ # Response from an ad event ingestion operation.
219
+ class IngestAdEventsResponse
220
+ include ::Google::Protobuf::MessageExts
221
+ extend ::Google::Protobuf::MessageExts::ClassMethods
222
+ end
223
+
165
224
  # Request to get the status of request made to the DM API for a given request
166
225
  # ID. Returns a
167
226
  # {::Google::Ads::DataManager::V1::RetrieveRequestStatusResponse RetrieveRequestStatusResponse}.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -62,7 +62,7 @@ module Google
62
62
  # @return [::Integer]
63
63
  # The maximum number of partner links to return. The service may return
64
64
  # fewer than this value.
65
- # If unspecified, at most 10 partner links will be returned.
65
+ # If unspecified, at most 50 partner links will be returned.
66
66
  # The maximum value is 100; values above 100 will be coerced to 100.
67
67
  # @!attribute [rw] page_token
68
68
  # @return [::String]
@@ -93,6 +93,13 @@ module Google
93
93
  # - `owning_account.account_id`
94
94
  # - `partner_account.account_type`
95
95
  # - `partner_account.account_id`
96
+ # - `feature_set`
97
+ #
98
+ # For partner links with the
99
+ # {::Google::Ads::DataManager::V1::FeatureSet::FEATURE_SET_AD_EVENT_MANAGEMENT FEATURE_SET_AD_EVENT_MANAGEMENT}
100
+ # feature set, the following fields are also supported:
101
+ #
102
+ # - `partner_customer_account.account_id`
96
103
  #
97
104
  # Example:
98
105
  # `owning_account.account_type = "GOOGLE_ADS" AND partner_account.account_id
@@ -131,10 +138,64 @@ module Google
131
138
  # @!attribute [rw] partner_account
132
139
  # @return [::Google::Ads::DataManager::V1::ProductAccount]
133
140
  # Required. The partner account granted access by the owning account.
141
+ # @!attribute [rw] feature_set
142
+ # @return [::Google::Ads::DataManager::V1::FeatureSet]
143
+ # Optional. Immutable. The set of features supported for the partner link.
144
+ # If not specified, the system behavior defaults to
145
+ # {::Google::Ads::DataManager::V1::FeatureSet::FEATURE_SET_AUDIENCE_AND_EVENT_MANAGEMENT FEATURE_SET_AUDIENCE_AND_EVENT_MANAGEMENT}.
146
+ # @!attribute [rw] partner_customer_account
147
+ # @return [::Google::Ads::DataManager::V1::PartnerCustomerAccount]
148
+ # Optional. The customer account in the partner system.
149
+ # This is required for partner links with the
150
+ # {::Google::Ads::DataManager::V1::FeatureSet::FEATURE_SET_AD_EVENT_MANAGEMENT FEATURE_SET_AD_EVENT_MANAGEMENT}
151
+ # feature set.
152
+ # @!attribute [rw] partner_link_metadata
153
+ # @return [::Google::Ads::DataManager::V1::PartnerLinkMetadata]
154
+ # Optional. Metadata associated with the partner link.
155
+ # This is optional and only accepted for partner links with the
156
+ # {::Google::Ads::DataManager::V1::FeatureSet::FEATURE_SET_AD_EVENT_MANAGEMENT FEATURE_SET_AD_EVENT_MANAGEMENT}.
134
157
  class PartnerLink
135
158
  include ::Google::Protobuf::MessageExts
136
159
  extend ::Google::Protobuf::MessageExts::ClassMethods
137
160
  end
161
+
162
+ # Represents a customer account in the partner's system.
163
+ # @!attribute [rw] account_id
164
+ # @return [::String]
165
+ # Required. The identifier of the customer account in the partner's ID space.
166
+ # @!attribute [rw] account_name
167
+ # @return [::String]
168
+ # Optional. The name of the account.
169
+ # @!attribute [rw] account_type
170
+ # @return [::String]
171
+ # Optional. The type of the account. Can be used to distinguish between
172
+ # advertiser accounts and business level accounts, for example.
173
+ class PartnerCustomerAccount
174
+ include ::Google::Protobuf::MessageExts
175
+ extend ::Google::Protobuf::MessageExts::ClassMethods
176
+ end
177
+
178
+ # Represents metadata associated with a partner link.
179
+ # @!attribute [rw] implicit_accounts
180
+ # @return [::Array<::Google::Ads::DataManager::V1::PartnerCustomerAccount>]
181
+ # Optional. The list of implicit accounts.
182
+ class PartnerLinkMetadata
183
+ include ::Google::Protobuf::MessageExts
184
+ extend ::Google::Protobuf::MessageExts::ClassMethods
185
+ end
186
+
187
+ # The set of supported features for a partner link.
188
+ module FeatureSet
189
+ # Unspecified feature set. If unspecified, the system behavior defaults to
190
+ # {::Google::Ads::DataManager::V1::FeatureSet::FEATURE_SET_AUDIENCE_AND_EVENT_MANAGEMENT FEATURE_SET_AUDIENCE_AND_EVENT_MANAGEMENT}.
191
+ FEATURE_SET_UNSPECIFIED = 0
192
+
193
+ # Indicates a link used for audience and event management.
194
+ FEATURE_SET_AUDIENCE_AND_EVENT_MANAGEMENT = 1
195
+
196
+ # Indicates a link used for ad event management.
197
+ FEATURE_SET_AD_EVENT_MANAGEMENT = 2
198
+ end
138
199
  end
139
200
  end
140
201
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -64,6 +64,22 @@ module Google
64
64
  extend ::Google::Protobuf::MessageExts::ClassMethods
65
65
  end
66
66
 
67
+ # Detailed row-level warning with field paths.
68
+ # @!attribute [rw] reason
69
+ # @return [::Google::Ads::DataManager::V1::WarningReason]
70
+ # The warning reason.
71
+ # @!attribute [rw] description
72
+ # @return [::String]
73
+ # The detailed warning message describing the issue.
74
+ # @!attribute [rw] field
75
+ # @return [::String]
76
+ # The field path that triggered the warning. Uses the same format as
77
+ # [google.rpc.BadRequest.FieldViolation.field][google.rpc.BadRequest.FieldViolation.field].
78
+ class FieldWarning
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+ end
82
+
67
83
  # The processing error reason.
68
84
  # New reasons may be added in the future.
69
85
  module ProcessingErrorReason
@@ -210,6 +226,10 @@ module Google
210
226
 
211
227
  # A corresponding click can't be found that matches the provided attributes.
212
228
  PROCESSING_ERROR_REASON_CLICK_NOT_FOUND = 43
229
+
230
+ # External attribution data is missing. Sending events to a destination for
231
+ # an external attribution conversion action isn't supported.
232
+ PROCESSING_ERROR_REASON_EXTERNAL_ATTRIBUTION_DATA_MISSING = 44
213
233
  end
214
234
 
215
235
  # The processing warning reason.
@@ -248,6 +268,77 @@ module Google
248
268
  # The system failed to authenticate with AWS.
249
269
  PROCESSING_WARNING_REASON_AWS_AUTH_FAILED = 9
250
270
  end
271
+
272
+ # Reasons for non-blocking warnings returned during ingestion.
273
+ module WarningReason
274
+ # Unspecified warning reason.
275
+ WARNING_REASON_UNSPECIFIED = 0
276
+
277
+ # A custom variable in
278
+ # {::Google::Ads::DataManager::V1::Event#custom_variables `custom_variables`} is
279
+ # not enabled in the account.
280
+ WARNING_REASON_CUSTOM_VARIABLE_NOT_ENABLED = 1
281
+
282
+ # A custom variable value in
283
+ # {::Google::Ads::DataManager::V1::Event#custom_variables `custom_variables`} is
284
+ # not among the predefined allowed values configured for the custom variable
285
+ # on the destination account.
286
+ WARNING_REASON_CUSTOM_VARIABLE_NOT_PREDEFINED = 2
287
+
288
+ # The {::Google::Ads::DataManager::V1::Event#cart_data `cart_data`} is not
289
+ # supported with {::Google::Ads::DataManager::V1::AdIdentifiers#gbraid `gbraid`}
290
+ # or {::Google::Ads::DataManager::V1::AdIdentifiers#wbraid `wbraid`}.
291
+ WARNING_REASON_CART_DATA_NOT_SUPPORTED_WITH_GBRAID_OR_WBRAID = 3
292
+
293
+ # The
294
+ # {::Google::Ads::DataManager::V1::Item#merchant_product_id `merchant_product_id`}
295
+ # is missing in the cart item.
296
+ WARNING_REASON_CART_DATA_ITEM_MERCHANT_PRODUCT_ID_MISSING = 4
297
+
298
+ # The {::Google::Ads::DataManager::V1::Item#unit_price `unit_price`} is missing in
299
+ # the cart item.
300
+ WARNING_REASON_CART_DATA_ITEM_UNIT_PRICE_MISSING = 5
301
+
302
+ # Generic warning reason for issues that do not fit into other specific
303
+ # categories.
304
+ WARNING_REASON_GENERIC = 6
305
+
306
+ # The {::Google::Ads::DataManager::V1::Event#client_id `client_id`} is invalid.
307
+ WARNING_REASON_INVALID_CLIENT_ID = 7
308
+
309
+ # The
310
+ # {::Google::Ads::DataManager::V1::EventLocation#subdivision_code `subdivision_code`}
311
+ # is invalid.
312
+ WARNING_REASON_INVALID_SUBDIVISION_CODE = 8
313
+
314
+ # The {::Google::Ads::DataManager::V1::EventLocation#region_code `region_code`}
315
+ # is invalid.
316
+ WARNING_REASON_INVALID_REGION_CODE = 9
317
+
318
+ # The
319
+ # {::Google::Ads::DataManager::V1::EventLocation#subcontinent_code `subcontinent_code`}
320
+ # is invalid.
321
+ WARNING_REASON_INVALID_SUBCONTINENT_CODE = 10
322
+
323
+ # The
324
+ # {::Google::Ads::DataManager::V1::EventLocation#continent_code `continent_code`}
325
+ # is invalid.
326
+ WARNING_REASON_INVALID_CONTINENT_CODE = 11
327
+
328
+ # The device {::Google::Ads::DataManager::V1::DeviceInfo#category `category`}
329
+ # is invalid.
330
+ WARNING_REASON_INVALID_DEVICE_CATEGORY = 12
331
+
332
+ # The device
333
+ # {::Google::Ads::DataManager::V1::DeviceInfo#screen_height `screen_height`} or
334
+ # {::Google::Ads::DataManager::V1::DeviceInfo#screen_width `screen_width`} is
335
+ # invalid.
336
+ WARNING_REASON_INVALID_DEVICE_SCREEN_RESOLUTION = 13
337
+
338
+ # The {::Google::Ads::DataManager::V1::CartData#merchant_id `merchant_id`} is
339
+ # invalid.
340
+ WARNING_REASON_INVALID_MERCHANT_ID = 14
341
+ end
251
342
  end
252
343
  end
253
344
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -52,17 +52,22 @@ module Google
52
52
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestAudienceMembersStatus]
53
53
  # The status of the ingest audience members request.
54
54
  #
55
- # Note: The following fields are mutually exclusive: `audience_members_ingestion_status`, `events_ingestion_status`, `audience_members_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
55
+ # Note: The following fields are mutually exclusive: `audience_members_ingestion_status`, `events_ingestion_status`, `audience_members_removal_status`, `remove_all_audience_members_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
56
56
  # @!attribute [rw] events_ingestion_status
57
57
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestEventsStatus]
58
58
  # The status of the ingest events request.
59
59
  #
60
- # Note: The following fields are mutually exclusive: `events_ingestion_status`, `audience_members_ingestion_status`, `audience_members_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
60
+ # Note: The following fields are mutually exclusive: `events_ingestion_status`, `audience_members_ingestion_status`, `audience_members_removal_status`, `remove_all_audience_members_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
61
61
  # @!attribute [rw] audience_members_removal_status
62
62
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveAudienceMembersStatus]
63
63
  # The status of the remove audience members request.
64
64
  #
65
- # Note: The following fields are mutually exclusive: `audience_members_removal_status`, `audience_members_ingestion_status`, `events_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
65
+ # Note: The following fields are mutually exclusive: `audience_members_removal_status`, `audience_members_ingestion_status`, `events_ingestion_status`, `remove_all_audience_members_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
66
+ # @!attribute [rw] remove_all_audience_members_status
67
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveAllAudienceMembersStatus]
68
+ # The status of the remove all audience members request.
69
+ #
70
+ # Note: The following fields are mutually exclusive: `remove_all_audience_members_status`, `audience_members_ingestion_status`, `events_ingestion_status`, `audience_members_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
66
71
  class RequestStatusPerDestination
67
72
  include ::Google::Protobuf::MessageExts
68
73
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -72,32 +77,43 @@ module Google
72
77
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestUserDataStatus]
73
78
  # The status of the user data ingestion to the destination.
74
79
  #
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`, `composite_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: `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`, `composite_data_ingestion_status`, `google_user_id_data_ingestion_status`, `partner_provided_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
76
81
  # @!attribute [rw] mobile_data_ingestion_status
77
82
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestMobileDataStatus]
78
83
  # The status of the mobile data ingestion to the destination.
79
84
  #
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`, `composite_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: `mobile_data_ingestion_status`, `user_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`, `composite_data_ingestion_status`, `google_user_id_data_ingestion_status`, `partner_provided_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
81
86
  # @!attribute [rw] pair_data_ingestion_status
82
87
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestPairDataStatus]
83
88
  # The status of the pair data ingestion to the destination.
84
89
  #
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`, `composite_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
90
+ # 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`, `composite_data_ingestion_status`, `google_user_id_data_ingestion_status`, `partner_provided_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
86
91
  # @!attribute [rw] user_id_data_ingestion_status
87
92
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestUserIdDataStatus]
88
93
  # The status of the user id data ingestion to the destination.
89
94
  #
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`, `composite_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
95
+ # 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`, `composite_data_ingestion_status`, `google_user_id_data_ingestion_status`, `partner_provided_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
91
96
  # @!attribute [rw] ppid_data_ingestion_status
92
97
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestPpidDataStatus]
93
98
  # The status of the ppid data ingestion to the destination.
94
99
  #
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`, `composite_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
100
+ # 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`, `composite_data_ingestion_status`, `google_user_id_data_ingestion_status`, `partner_provided_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
96
101
  # @!attribute [rw] composite_data_ingestion_status
97
102
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestCompositeDataStatus]
98
103
  # The status of the composite data ingestion to the destination.
99
104
  #
100
- # Note: The following fields are mutually exclusive: `composite_data_ingestion_status`, `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.
105
+ # Note: The following fields are mutually exclusive: `composite_data_ingestion_status`, `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`, `google_user_id_data_ingestion_status`, `partner_provided_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
106
+ # @!attribute [rw] google_user_id_data_ingestion_status
107
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestGoogleUserIdDataStatus]
108
+ # The status of the google user id data ingestion to the destination.
109
+ #
110
+ # Note: The following fields are mutually exclusive: `google_user_id_data_ingestion_status`, `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`, `composite_data_ingestion_status`, `partner_provided_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
111
+ # @!attribute [rw] partner_provided_id_data_ingestion_status
112
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::IngestPartnerProvidedIdDataStatus]
113
+ # The status of the partner provided id data ingestion to the
114
+ # destination.
115
+ #
116
+ # Note: The following fields are mutually exclusive: `partner_provided_id_data_ingestion_status`, `user_data_ingestion_status`, `mobile_data_ingestion_status`, `pair_data_ingestion_status`, `user_id_data_ingestion_status`, `ppid_data_ingestion_status`, `composite_data_ingestion_status`, `google_user_id_data_ingestion_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
101
117
  class IngestAudienceMembersStatus
102
118
  include ::Google::Protobuf::MessageExts
103
119
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -108,37 +124,54 @@ module Google
108
124
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveUserDataStatus]
109
125
  # The status of the user data removal from the destination.
110
126
  #
111
- # 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`, `composite_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
127
+ # 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`, `composite_data_removal_status`, `google_user_id_data_removal_status`, `partner_provided_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
112
128
  # @!attribute [rw] mobile_data_removal_status
113
129
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveMobileDataStatus]
114
130
  # The status of the mobile data removal from the destination.
115
131
  #
116
- # 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`, `composite_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
132
+ # 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`, `composite_data_removal_status`, `google_user_id_data_removal_status`, `partner_provided_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
117
133
  # @!attribute [rw] pair_data_removal_status
118
134
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemovePairDataStatus]
119
135
  # The status of the pair data removal from the destination.
120
136
  #
121
- # 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`, `composite_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
137
+ # 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`, `composite_data_removal_status`, `google_user_id_data_removal_status`, `partner_provided_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
122
138
  # @!attribute [rw] user_id_data_removal_status
123
139
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveUserIdDataStatus]
124
140
  # The status of the user id data removal from the destination.
125
141
  #
126
- # 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`, `composite_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
142
+ # 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`, `composite_data_removal_status`, `google_user_id_data_removal_status`, `partner_provided_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
127
143
  # @!attribute [rw] ppid_data_removal_status
128
144
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemovePpidDataStatus]
129
145
  # The status of the ppid data removal from the destination.
130
146
  #
131
- # 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`, `composite_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
147
+ # 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`, `composite_data_removal_status`, `google_user_id_data_removal_status`, `partner_provided_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
132
148
  # @!attribute [rw] composite_data_removal_status
133
149
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveCompositeDataStatus]
134
150
  # The status of the composite data removal from the destination.
135
151
  #
136
- # Note: The following fields are mutually exclusive: `composite_data_removal_status`, `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.
152
+ # Note: The following fields are mutually exclusive: `composite_data_removal_status`, `user_data_removal_status`, `mobile_data_removal_status`, `pair_data_removal_status`, `user_id_data_removal_status`, `ppid_data_removal_status`, `google_user_id_data_removal_status`, `partner_provided_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
153
+ # @!attribute [rw] google_user_id_data_removal_status
154
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemoveGoogleUserIdDataStatus]
155
+ # The status of the google user id data removal from the destination.
156
+ #
157
+ # Note: The following fields are mutually exclusive: `google_user_id_data_removal_status`, `user_data_removal_status`, `mobile_data_removal_status`, `pair_data_removal_status`, `user_id_data_removal_status`, `ppid_data_removal_status`, `composite_data_removal_status`, `partner_provided_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
158
+ # @!attribute [rw] partner_provided_id_data_removal_status
159
+ # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::RemovePartnerProvidedIdDataStatus]
160
+ # The status of the partner provided id data removal from the
161
+ # destination.
162
+ #
163
+ # Note: The following fields are mutually exclusive: `partner_provided_id_data_removal_status`, `user_data_removal_status`, `mobile_data_removal_status`, `pair_data_removal_status`, `user_id_data_removal_status`, `ppid_data_removal_status`, `composite_data_removal_status`, `google_user_id_data_removal_status`. If a field in that set is populated, all other fields in the set will automatically be cleared.
137
164
  class RemoveAudienceMembersStatus
138
165
  include ::Google::Protobuf::MessageExts
139
166
  extend ::Google::Protobuf::MessageExts::ClassMethods
140
167
  end
141
168
 
169
+ # The status of the remove all audience members request.
170
+ class RemoveAllAudienceMembersStatus
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
142
175
  # The status of the events ingestion to the destination.
143
176
  # @!attribute [rw] record_count
144
177
  # @return [::Integer]
@@ -355,6 +388,72 @@ module Google
355
388
  extend ::Google::Protobuf::MessageExts::ClassMethods
356
389
  end
357
390
 
391
+ # The status of the google user id data ingestion to the destination
392
+ # containing stats related to the ingestion.
393
+ # @!attribute [rw] record_count
394
+ # @return [::Integer]
395
+ # The total count of audience members sent in the upload request for the
396
+ # destination. Includes all audience members in the request, regardless of
397
+ # whether they were successfully ingested or not.
398
+ # @!attribute [rw] google_user_id_count
399
+ # @return [::Integer]
400
+ # The total count of google user ids sent in the upload request for the
401
+ # destination. Includes all google user ids in the request, regardless of
402
+ # whether they were successfully ingested or not.
403
+ class IngestGoogleUserIdDataStatus
404
+ include ::Google::Protobuf::MessageExts
405
+ extend ::Google::Protobuf::MessageExts::ClassMethods
406
+ end
407
+
408
+ # The status of the google user id data removal from the destination.
409
+ # @!attribute [rw] record_count
410
+ # @return [::Integer]
411
+ # The total count of audience members sent in the removal request. Includes
412
+ # all audience members in the request, regardless of whether they were
413
+ # successfully removed or not.
414
+ # @!attribute [rw] google_user_id_count
415
+ # @return [::Integer]
416
+ # The total count of google user ids sent in the removal request. Includes
417
+ # all google user ids in the request, regardless of whether they were
418
+ # successfully removed or not.
419
+ class RemoveGoogleUserIdDataStatus
420
+ include ::Google::Protobuf::MessageExts
421
+ extend ::Google::Protobuf::MessageExts::ClassMethods
422
+ end
423
+
424
+ # The status of the partner provided id data ingestion to the destination
425
+ # containing stats related to the ingestion.
426
+ # @!attribute [rw] record_count
427
+ # @return [::Integer]
428
+ # The total count of audience members sent in the upload request for the
429
+ # destination. Includes all audience members in the request, regardless of
430
+ # whether they were successfully ingested or not.
431
+ # @!attribute [rw] partner_provided_id_count
432
+ # @return [::Integer]
433
+ # The total count of partner provided ids sent in the upload request for
434
+ # the destination. Includes all partner provided ids in the request,
435
+ # regardless of whether they were successfully ingested or not.
436
+ class IngestPartnerProvidedIdDataStatus
437
+ include ::Google::Protobuf::MessageExts
438
+ extend ::Google::Protobuf::MessageExts::ClassMethods
439
+ end
440
+
441
+ # The status of the partner provided id data removal from the destination.
442
+ # @!attribute [rw] record_count
443
+ # @return [::Integer]
444
+ # The total count of audience members sent in the removal request. Includes
445
+ # all audience members in the request, regardless of whether they were
446
+ # successfully removed or not.
447
+ # @!attribute [rw] partner_provided_id_count
448
+ # @return [::Integer]
449
+ # The total count of partner provided ids sent in the removal request.
450
+ # Includes all partner provided ids in the request, regardless of whether
451
+ # they were successfully removed or not.
452
+ class RemovePartnerProvidedIdDataStatus
453
+ include ::Google::Protobuf::MessageExts
454
+ extend ::Google::Protobuf::MessageExts::ClassMethods
455
+ end
456
+
358
457
  # The count for a specific data type.
359
458
  # @!attribute [rw] type
360
459
  # @return [::Google::Ads::DataManager::V1::RequestStatusPerDestination::DataType]
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2025 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -74,6 +74,35 @@ module Google
74
74
  # @!attribute [rw] postal_code
75
75
  # @return [::String]
76
76
  # Required. The postal code of the user's address.
77
+ # @!attribute [rw] address_line
78
+ # @return [::String]
79
+ # Optional. The street and number of the user's address. Used only for
80
+ # Google Analytics. This field is hashed and possibly encrypted.
81
+ #
82
+ # Normalize the value before hashing:
83
+ #
84
+ # - Remove symbol characters
85
+ # - Convert to lowercase
86
+ # - Remove leading and trailing whitespace
87
+ # @!attribute [rw] city
88
+ # @return [::String]
89
+ # Optional. The city of the user's address. Used only for Google Analytics.
90
+ #
91
+ # The value should be normalized as such:
92
+ #
93
+ # - Remove symbol characters
94
+ # - Convert to lowercase
95
+ # - Remove leading and trailing whitespace
96
+ # @!attribute [rw] administrative_area
97
+ # @return [::String]
98
+ # Optional. The administrative area (state/province) of the user's address.
99
+ # Used only for Google Analytics.
100
+ #
101
+ # The value should be normalized as such:
102
+ #
103
+ # - Remove symbol characters
104
+ # - Convert to lowercase
105
+ # - Remove leading and trailing whitespace
77
106
  class AddressInfo
78
107
  include ::Google::Protobuf::MessageExts
79
108
  extend ::Google::Protobuf::MessageExts::ClassMethods