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
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/ads/datamanager/v1/viewability_info.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/field_behavior_pb'
8
+ require 'google/protobuf/duration_pb'
9
+
10
+
11
+ descriptor_data = "\n0google/ads/datamanager/v1/viewability_info.proto\x12\x19google.ads.datamanager.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1egoogle/protobuf/duration.proto\"\xa3\x03\n\x0fViewabilityInfo\x12;\n\tview_type\x18\x01 \x01(\x0e\x32#.google.ads.datamanager.v1.ViewTypeB\x03\xe0\x41\x02\x12\x1d\n\x10viewable_percent\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x39\n\x11viewable_duration\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\x12\x1c\n\x0fmedia_skippable\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12\x45\n\x0emedia_quartile\x18\x05 \x01(\x0e\x32(.google.ads.datamanager.v1.MediaQuartileB\x03\xe0\x41\x01\x12\x36\n\x0emedia_duration\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\x12!\n\x14media_volume_percent\x18\x07 \x01(\x05\x42\x03\xe0\x41\x01\x12\x39\n\x11playback_duration\x18\x08 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01*[\n\x08ViewType\x12\x19\n\x15VIEW_TYPE_UNSPECIFIED\x10\x00\x12\x18\n\x14VIEW_TYPE_MRC_VIEWED\x10\x01\x12\x1a\n\x16VIEW_TYPE_MRC_RENDERED\x10\x02*\xc9\x01\n\rMediaQuartile\x12\x1e\n\x1aMEDIA_QUARTILE_UNSPECIFIED\x10\x00\x12\x18\n\x14MEDIA_QUARTILE_START\x10\x01\x12!\n\x1dMEDIA_QUARTILE_FIRST_QUARTILE\x10\x02\x12\x1b\n\x17MEDIA_QUARTILE_MIDPOINT\x10\x03\x12!\n\x1dMEDIA_QUARTILE_THIRD_QUARTILE\x10\x04\x12\x1b\n\x17MEDIA_QUARTILE_COMPLETE\x10\x05\x42\xd1\x01\n\x1d\x63om.google.ads.datamanager.v1B\x14ViewabilityInfoProtoP\x01ZAcloud.google.com/go/datamanager/apiv1/datamanagerpb;datamanagerpb\xaa\x02\x19Google.Ads.DataManager.V1\xca\x02\x19Google\\Ads\\DataManager\\V1\xea\x02\x1cGoogle::Ads::DataManager::V1b\x06proto3"
12
+
13
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
14
+ pool.add_serialized_file(descriptor_data)
15
+
16
+ module Google
17
+ module Ads
18
+ module DataManager
19
+ module V1
20
+ ViewabilityInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.datamanager.v1.ViewabilityInfo").msgclass
21
+ ViewType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.datamanager.v1.ViewType").enummodule
22
+ MediaQuartile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.datamanager.v1.MediaQuartile").enummodule
23
+ end
24
+ end
25
+ end
26
+ 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.
@@ -0,0 +1,405 @@
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
+ # An ad event.
25
+ # @!attribute [rw] advertiser_id
26
+ # @return [::String]
27
+ # Required. The ID of the advertiser for the ad event.
28
+ #
29
+ # This must match the ID sent in the linking flow.
30
+ # @!attribute [rw] event_type
31
+ # @return [::Google::Ads::DataManager::V1::AdEvent::EventType]
32
+ # Required. The type of the event.
33
+ # @!attribute [rw] event_subtype
34
+ # @return [::Google::Ads::DataManager::V1::AdEvent::EventSubtype]
35
+ # Enum value for event subtype.
36
+ #
37
+ # Note: The following fields are mutually exclusive: `event_subtype`, `event_subtype_string`. If a field in that set is populated, all other fields in the set will automatically be cleared.
38
+ # @!attribute [rw] event_subtype_string
39
+ # @return [::String]
40
+ # String value for event subtype.
41
+ #
42
+ # Note: The following fields are mutually exclusive: `event_subtype_string`, `event_subtype`. If a field in that set is populated, all other fields in the set will automatically be cleared.
43
+ # @!attribute [rw] timestamp
44
+ # @return [::Google::Protobuf::Timestamp]
45
+ # Required. The time the event occurred.
46
+ # @!attribute [rw] event_id
47
+ # @return [::String]
48
+ # Optional. An ID created and managed by the caller that uniquely identifies
49
+ # this event.
50
+ #
51
+ # Required if you want to deduplicate ad events that are included
52
+ # in multiple requests. Otherwise, this field is optional.
53
+ # @!attribute [rw] user_data
54
+ # @return [::Google::Ads::DataManager::V1::UserData]
55
+ # Optional. Multiple pieces of user-provided data, representing the user the
56
+ # event is associated with.
57
+ #
58
+ # It is possible to provide multiple instances of the same type of data (e.g.
59
+ # email address). The more data provided, the more likely a match will be
60
+ # found.
61
+ # @!attribute [rw] device_info
62
+ # @return [::Google::Ads::DataManager::V1::DeviceInfo]
63
+ # Required. Information gathered about the device being used when the ad
64
+ # event happened.
65
+ # @!attribute [rw] mobile_device_id
66
+ # @return [::String]
67
+ # Optional. The device ID of the device that the ad was served to.
68
+ # @!attribute [rw] campaign_id
69
+ # @return [::String]
70
+ # Required. The ID of the associated campaign.
71
+ # @!attribute [rw] campaign_name
72
+ # @return [::String]
73
+ # Required. The name of the associated campaign.
74
+ # @!attribute [rw] ad_group_id
75
+ # @return [::String]
76
+ # Optional. The ID of the associated ad group.
77
+ # @!attribute [rw] ad_id
78
+ # @return [::String]
79
+ # Optional. The ID of the associated ad within the group.
80
+ # @!attribute [rw] ad_type
81
+ # @return [::Google::Ads::DataManager::V1::AdType]
82
+ # Enum value for ad type.
83
+ #
84
+ # Note: The following fields are mutually exclusive: `ad_type`, `ad_type_string`. If a field in that set is populated, all other fields in the set will automatically be cleared.
85
+ # @!attribute [rw] ad_type_string
86
+ # @return [::String]
87
+ # String value for ad type.
88
+ #
89
+ # Note: The following fields are mutually exclusive: `ad_type_string`, `ad_type`. If a field in that set is populated, all other fields in the set will automatically be cleared.
90
+ # @!attribute [rw] ad_format
91
+ # @return [::Google::Ads::DataManager::V1::AdFormat]
92
+ # Enum value for ad format.
93
+ #
94
+ # Note: The following fields are mutually exclusive: `ad_format`, `ad_format_string`. If a field in that set is populated, all other fields in the set will automatically be cleared.
95
+ # @!attribute [rw] ad_format_string
96
+ # @return [::String]
97
+ # String value for ad format.
98
+ #
99
+ # Note: The following fields are mutually exclusive: `ad_format_string`, `ad_format`. If a field in that set is populated, all other fields in the set will automatically be cleared.
100
+ # @!attribute [rw] ad_placement
101
+ # @return [::Google::Ads::DataManager::V1::AdPlacement]
102
+ # Enum value for ad placement.
103
+ #
104
+ # Note: The following fields are mutually exclusive: `ad_placement`, `ad_placement_string`. If a field in that set is populated, all other fields in the set will automatically be cleared.
105
+ # @!attribute [rw] ad_placement_string
106
+ # @return [::String]
107
+ # String value for ad placement.
108
+ #
109
+ # Note: The following fields are mutually exclusive: `ad_placement_string`, `ad_placement`. If a field in that set is populated, all other fields in the set will automatically be cleared.
110
+ # @!attribute [rw] ad_height
111
+ # @return [::Integer]
112
+ # Optional. The height of the ad in pixels.
113
+ # @!attribute [rw] ad_width
114
+ # @return [::Integer]
115
+ # Optional. The width of the ad in pixels.
116
+ # @!attribute [rw] region_code
117
+ # @return [::String]
118
+ # Optional. The ISO 3166-2 country plus subdivision.
119
+ # @!attribute [rw] source
120
+ # @return [::String]
121
+ # Required. The platform source of the ad, akin to the Google Analytics
122
+ # source.
123
+ # @!attribute [rw] medium
124
+ # @return [::String]
125
+ # Required. The medium of the ad, akin to the Google Analytics medium.
126
+ # @!attribute [rw] targeting_type
127
+ # @return [::Google::Ads::DataManager::V1::TargetingType]
128
+ # Enum value for targeting type.
129
+ #
130
+ # Note: The following fields are mutually exclusive: `targeting_type`, `targeting_type_string`. If a field in that set is populated, all other fields in the set will automatically be cleared.
131
+ # @!attribute [rw] targeting_type_string
132
+ # @return [::String]
133
+ # String value for targeting type.
134
+ #
135
+ # Note: The following fields are mutually exclusive: `targeting_type_string`, `targeting_type`. If a field in that set is populated, all other fields in the set will automatically be cleared.
136
+ # @!attribute [rw] platform_type
137
+ # @return [::Google::Ads::DataManager::V1::PlatformType]
138
+ # Enum value for platform type.
139
+ #
140
+ # Note: The following fields are mutually exclusive: `platform_type`, `platform_type_string`. If a field in that set is populated, all other fields in the set will automatically be cleared.
141
+ # @!attribute [rw] platform_type_string
142
+ # @return [::String]
143
+ # String value for platform type.
144
+ #
145
+ # Note: The following fields are mutually exclusive: `platform_type_string`, `platform_type`. If a field in that set is populated, all other fields in the set will automatically be cleared.
146
+ # @!attribute [rw] platform
147
+ # @return [::Google::Ads::DataManager::V1::Platform]
148
+ # Enum value for platform.
149
+ #
150
+ # Note: The following fields are mutually exclusive: `platform`, `platform_string`. If a field in that set is populated, all other fields in the set will automatically be cleared.
151
+ # @!attribute [rw] platform_string
152
+ # @return [::String]
153
+ # String value for platform.
154
+ #
155
+ # Note: The following fields are mutually exclusive: `platform_string`, `platform`. If a field in that set is populated, all other fields in the set will automatically be cleared.
156
+ # @!attribute [rw] attribution_hint
157
+ # @return [::Google::Ads::DataManager::V1::AttributionHint]
158
+ # Optional. The partner-assumed attribution status for this ad event.
159
+ #
160
+ # This acts only as a signal for how the partner assumed attribution played
161
+ # out, and does not force an end result in final reports.
162
+ # @!attribute [rw] viewability_info
163
+ # @return [::Google::Ads::DataManager::V1::ViewabilityInfo]
164
+ # Required. Details of the viewability of the ad served.
165
+ # @!attribute [rw] measurement_allowed
166
+ # @return [::Boolean]
167
+ # Optional. Represents if the row is allowed to be used for measurement
168
+ # purposes, as governed by applicable privacy laws within regional
169
+ # jurisdiction.
170
+ class AdEvent
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+
174
+ # The type of the event.
175
+ module EventType
176
+ # Unspecified event type.
177
+ EVENT_TYPE_UNSPECIFIED = 0
178
+
179
+ # View event.
180
+ EVENT_TYPE_VIEW = 1
181
+
182
+ # Click event.
183
+ EVENT_TYPE_CLICK = 2
184
+ end
185
+
186
+ # Additional classification about the type of ad event.
187
+ module EventSubtype
188
+ # Unspecified event subtype.
189
+ EVENT_SUBTYPE_UNSPECIFIED = 0
190
+
191
+ # Impression event.
192
+ EVENT_SUBTYPE_IMPRESSION = 1
193
+
194
+ # Engaged view event.
195
+ EVENT_SUBTYPE_ENGAGED_VIEW = 2
196
+
197
+ # Onsite click event.
198
+ EVENT_SUBTYPE_ONSITE_CLICK = 3
199
+
200
+ # Outbound click event.
201
+ EVENT_SUBTYPE_OUTBOUND_CLICK = 4
202
+ end
203
+ end
204
+
205
+ # The type of the ad served.
206
+ module AdType
207
+ # Unspecified ad type.
208
+ AD_TYPE_UNSPECIFIED = 0
209
+
210
+ # Display ad.
211
+ AD_TYPE_DISPLAY = 1
212
+
213
+ # Text ad.
214
+ AD_TYPE_TEXT = 2
215
+
216
+ # Image ad.
217
+ AD_TYPE_IMAGE = 3
218
+
219
+ # Rich media ad.
220
+ AD_TYPE_RICH_MEDIA = 4
221
+
222
+ # HTML ad.
223
+ AD_TYPE_HTML = 5
224
+
225
+ # Audio ad.
226
+ AD_TYPE_AUDIO = 6
227
+
228
+ # Video ad.
229
+ AD_TYPE_VIDEO = 7
230
+ end
231
+
232
+ # The format of the ad served.
233
+ module AdFormat
234
+ # Unspecified ad format.
235
+ AD_FORMAT_UNSPECIFIED = 0
236
+
237
+ # AR ad.
238
+ AD_FORMAT_AR = 1
239
+
240
+ # Audio ad.
241
+ AD_FORMAT_AUDIO = 2
242
+
243
+ # Banner ad.
244
+ AD_FORMAT_BANNER = 3
245
+
246
+ # Bumper ad.
247
+ AD_FORMAT_BUMPER = 4
248
+
249
+ # Carousel ad.
250
+ AD_FORMAT_CAROUSEL = 5
251
+
252
+ # Collection ad.
253
+ AD_FORMAT_COLLECTION = 6
254
+
255
+ # Image ad.
256
+ AD_FORMAT_IMAGE = 7
257
+
258
+ # Interactive ad.
259
+ AD_FORMAT_INTERACTIVE = 8
260
+
261
+ # Interstitial ad.
262
+ AD_FORMAT_INTERSTITIAL = 9
263
+
264
+ # In-feed ad.
265
+ AD_FORMAT_IN_FEED = 10
266
+
267
+ # In-stream ad.
268
+ AD_FORMAT_IN_STREAM = 11
269
+
270
+ # In-stream skippable ad.
271
+ AD_FORMAT_IN_STREAM_SKIPPABLE = 12
272
+
273
+ # In-stream non-skippable ad.
274
+ AD_FORMAT_IN_STREAM_NON_SKIPPABLE = 13
275
+
276
+ # Native ad.
277
+ AD_FORMAT_NATIVE = 14
278
+
279
+ # Shorts ad.
280
+ AD_FORMAT_SHORTS = 15
281
+
282
+ # Story ad.
283
+ AD_FORMAT_STORY = 16
284
+
285
+ # Sponsored ad.
286
+ AD_FORMAT_SPONSORED = 17
287
+
288
+ # Video ad.
289
+ AD_FORMAT_VIDEO = 18
290
+ end
291
+
292
+ # The placement of the ad served.
293
+ module AdPlacement
294
+ # Unspecified ad placement.
295
+ AD_PLACEMENT_UNSPECIFIED = 0
296
+
297
+ # Discover placement.
298
+ AD_PLACEMENT_DISCOVER = 1
299
+
300
+ # Feed placement.
301
+ AD_PLACEMENT_FEED = 2
302
+
303
+ # Footer placement.
304
+ AD_PLACEMENT_FOOTER = 3
305
+
306
+ # Header placement.
307
+ AD_PLACEMENT_HEADER = 4
308
+
309
+ # Home placement.
310
+ AD_PLACEMENT_HOME = 5
311
+
312
+ # In-content placement.
313
+ AD_PLACEMENT_IN_CONTENT = 6
314
+
315
+ # Promoted placement.
316
+ AD_PLACEMENT_PROMOTED = 7
317
+
318
+ # Search placement.
319
+ AD_PLACEMENT_SEARCH = 8
320
+
321
+ # Story placement.
322
+ AD_PLACEMENT_STORY = 9
323
+ end
324
+
325
+ # The type of targeting used to serve the ad.
326
+ module TargetingType
327
+ # Unspecified targeting type.
328
+ TARGETING_TYPE_UNSPECIFIED = 0
329
+
330
+ # Audience targeting.
331
+ TARGETING_TYPE_AUDIENCE = 1
332
+
333
+ # Contextual targeting.
334
+ TARGETING_TYPE_CONTEXTUAL = 2
335
+
336
+ # Demographic targeting.
337
+ TARGETING_TYPE_DEMOGRAPHIC = 3
338
+
339
+ # Device targeting.
340
+ TARGETING_TYPE_DEVICE = 4
341
+
342
+ # Geo targeting.
343
+ TARGETING_TYPE_GEO = 5
344
+
345
+ # Interest targeting.
346
+ TARGETING_TYPE_INTEREST = 6
347
+
348
+ # Purchase intent targeting.
349
+ TARGETING_TYPE_PURCHASE_INTENT = 7
350
+
351
+ # Remarketing targeting.
352
+ TARGETING_TYPE_REMARKETING = 8
353
+ end
354
+
355
+ # The type of the platform on which the ad was served.
356
+ module PlatformType
357
+ # Unspecified platform type.
358
+ PLATFORM_TYPE_UNSPECIFIED = 0
359
+
360
+ # Mobile platform.
361
+ PLATFORM_TYPE_MOBILE = 1
362
+
363
+ # Desktop platform.
364
+ PLATFORM_TYPE_DESKTOP = 2
365
+
366
+ # CTV platform.
367
+ PLATFORM_TYPE_CTV = 3
368
+
369
+ # Phone platform.
370
+ PLATFORM_TYPE_PHONE = 4
371
+
372
+ # Tablet platform.
373
+ PLATFORM_TYPE_TABLET = 5
374
+ end
375
+
376
+ # Further detail of the platform on which the ad was served.
377
+ module Platform
378
+ # Unspecified platform.
379
+ PLATFORM_UNSPECIFIED = 0
380
+
381
+ # iOS platform.
382
+ PLATFORM_IOS = 1
383
+
384
+ # Android platform.
385
+ PLATFORM_ANDROID = 2
386
+
387
+ # Web platform.
388
+ PLATFORM_WEB = 3
389
+ end
390
+
391
+ # The partner-assumed attribution status for this ad event.
392
+ module AttributionHint
393
+ # Unknown attribution status.
394
+ ATTRIBUTION_HINT_UNSPECIFIED = 0
395
+
396
+ # Converted status.
397
+ ATTRIBUTION_HINT_CONVERTED = 1
398
+
399
+ # Not converted status.
400
+ ATTRIBUTION_HINT_NOT_CONVERTED = 2
401
+ end
402
+ end
403
+ end
404
+ end
405
+ 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.
@@ -31,7 +31,7 @@ module Google
31
31
  # @return [::Google::Ads::DataManager::V1::UserData]
32
32
  # User-provided data that identifies the user.
33
33
  #
34
- # Note: The following fields are mutually exclusive: `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `ppid_data`, `composite_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
34
+ # Note: The following fields are mutually exclusive: `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `ppid_data`, `composite_data`, `google_user_id_data`, `partner_provided_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
35
35
  # @!attribute [rw] pair_data
36
36
  # @return [::Google::Ads::DataManager::V1::PairData]
37
37
  # [Publisher Advertiser Identity Reconciliation (PAIR)
@@ -39,30 +39,40 @@ module Google
39
39
  #
40
40
  # This feature is only available to data partners.
41
41
  #
42
- # Note: The following fields are mutually exclusive: `pair_data`, `user_data`, `mobile_data`, `user_id_data`, `ppid_data`, `composite_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
42
+ # Note: The following fields are mutually exclusive: `pair_data`, `user_data`, `mobile_data`, `user_id_data`, `ppid_data`, `composite_data`, `google_user_id_data`, `partner_provided_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
43
43
  # @!attribute [rw] mobile_data
44
44
  # @return [::Google::Ads::DataManager::V1::MobileData]
45
45
  # Data identifying the user's mobile devices.
46
46
  #
47
- # Note: The following fields are mutually exclusive: `mobile_data`, `user_data`, `pair_data`, `user_id_data`, `ppid_data`, `composite_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
47
+ # Note: The following fields are mutually exclusive: `mobile_data`, `user_data`, `pair_data`, `user_id_data`, `ppid_data`, `composite_data`, `google_user_id_data`, `partner_provided_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
48
48
  # @!attribute [rw] user_id_data
49
49
  # @return [::Google::Ads::DataManager::V1::UserIdData]
50
50
  # Data related to unique identifiers for a user, as defined by the
51
51
  # advertiser.
52
52
  #
53
- # Note: The following fields are mutually exclusive: `user_id_data`, `user_data`, `pair_data`, `mobile_data`, `ppid_data`, `composite_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
53
+ # Note: The following fields are mutually exclusive: `user_id_data`, `user_data`, `pair_data`, `mobile_data`, `ppid_data`, `composite_data`, `google_user_id_data`, `partner_provided_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
54
54
  # @!attribute [rw] ppid_data
55
55
  # @return [::Google::Ads::DataManager::V1::PpidData]
56
56
  # Data related to publisher provided identifiers.
57
57
  #
58
58
  # This feature is only available to data partners.
59
59
  #
60
- # Note: The following fields are mutually exclusive: `ppid_data`, `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `composite_data`. 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: `ppid_data`, `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `composite_data`, `google_user_id_data`, `partner_provided_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
61
61
  # @!attribute [rw] composite_data
62
62
  # @return [::Google::Ads::DataManager::V1::CompositeData]
63
63
  # Group of multiple identifier types.
64
64
  #
65
- # Note: The following fields are mutually exclusive: `composite_data`, `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `ppid_data`. 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: `composite_data`, `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `ppid_data`, `google_user_id_data`, `partner_provided_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
66
+ # @!attribute [rw] google_user_id_data
67
+ # @return [::Google::Ads::DataManager::V1::GoogleUserIdData]
68
+ # Encrypted Google User IDs.
69
+ #
70
+ # Note: The following fields are mutually exclusive: `google_user_id_data`, `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `ppid_data`, `composite_data`, `partner_provided_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
71
+ # @!attribute [rw] partner_provided_id_data
72
+ # @return [::Google::Ads::DataManager::V1::PartnerProvidedIdData]
73
+ # Partner-provided identifiers.
74
+ #
75
+ # Note: The following fields are mutually exclusive: `partner_provided_id_data`, `user_data`, `pair_data`, `mobile_data`, `user_id_data`, `ppid_data`, `composite_data`, `google_user_id_data`. If a field in that set is populated, all other fields in the set will automatically be cleared.
66
76
  # @!attribute [rw] consent
67
77
  # @return [::Google::Ads::DataManager::V1::Consent]
68
78
  # Optional. The consent setting for the user.
@@ -90,8 +100,10 @@ module Google
90
100
  # Mobile IDs for the audience. At least one mobile ID is required.
91
101
  # @!attribute [rw] mobile_ids
92
102
  # @return [::Array<::String>]
93
- # Required. The list of mobile device IDs (advertising ID/IDFA). At most 10
94
- # `mobileIds` can be provided in a single
103
+ # Required. The list of mobile device IDs (Android advertising ID, iOS IDFA
104
+ # for Customer Match user lists and Android advertising ID, iOS IDFA,
105
+ # Xbox or Microsoft ID, Amazon Fire TV ID, Roku ID, Generic Device ID for
106
+ # basic user lists). At most 10 `mobileIds` can be provided in a single
95
107
  # {::Google::Ads::DataManager::V1::AudienceMember AudienceMember}.
96
108
  class MobileData
97
109
  include ::Google::Protobuf::MessageExts
@@ -152,6 +164,26 @@ module Google
152
164
  include ::Google::Protobuf::MessageExts
153
165
  extend ::Google::Protobuf::MessageExts::ClassMethods
154
166
  end
167
+
168
+ # Google user id data holding encrypted google user IDs. At least one google
169
+ # user ID is required.
170
+ # @!attribute [rw] google_user_ids
171
+ # @return [::Array<::String>]
172
+ # Required. The list of encrypted google user IDs.
173
+ class GoogleUserIdData
174
+ include ::Google::Protobuf::MessageExts
175
+ extend ::Google::Protobuf::MessageExts::ClassMethods
176
+ end
177
+
178
+ # Partner-provided data holding the partner-provided identifiers. At least one
179
+ # partner-provided identifier is required.
180
+ # @!attribute [rw] partner_provided_ids
181
+ # @return [::Array<::String>]
182
+ # Required. The list of partner-provided identifiers.
183
+ class PartnerProvidedIdData
184
+ include ::Google::Protobuf::MessageExts
185
+ extend ::Google::Protobuf::MessageExts::ClassMethods
186
+ end
155
187
  end
156
188
  end
157
189
  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.
@@ -71,7 +71,7 @@ module Google
71
71
  # Required. The ID of the account. For example, your Google Ads account ID.
72
72
  # @!attribute [rw] account_type
73
73
  # @return [::Google::Ads::DataManager::V1::ProductAccount::AccountType]
74
- # Optional. The type of the account. For example, `GOOGLE_ADS`.
74
+ # Required. The type of the account. For example, `GOOGLE_ADS`.
75
75
  # Either `account_type` or the deprecated `product` is required.
76
76
  # If both are set, the values must match.
77
77
  class ProductAccount
@@ -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.
@@ -27,7 +27,8 @@ module Google
27
27
  # Optional. The user-agent string of the device for the given context.
28
28
  # @!attribute [rw] ip_address
29
29
  # @return [::String]
30
- # Optional. The IP address of the device for the given context.
30
+ # Optional. The IP address of the device for the given context. Required when
31
+ # used in an {::Google::Ads::DataManager::V1::AdEvent AdEvent}.
31
32
  #
32
33
  # **Note:** Google Ads does not support IP address matching for end users in
33
34
  # the European Economic Area (EEA), United Kingdom (UK), or Switzerland (CH).
@@ -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.
@@ -26,12 +26,24 @@ module Google
26
26
  # @return [::Google::Ads::DataManager::V1::GcpWrappedKeyInfo]
27
27
  # Google Cloud Platform wrapped key information.
28
28
  #
29
- # Note: The following fields are mutually exclusive: `gcp_wrapped_key_info`, `aws_wrapped_key_info`. If a field in that set is populated, all other fields in the set will automatically be cleared.
29
+ # Note: The following fields are mutually exclusive: `gcp_wrapped_key_info`, `aws_wrapped_key_info`, `coordinator_key_info`. If a field in that set is populated, all other fields in the set will automatically be cleared.
30
30
  # @!attribute [rw] aws_wrapped_key_info
31
31
  # @return [::Google::Ads::DataManager::V1::AwsWrappedKeyInfo]
32
32
  # Amazon Web Services wrapped key information.
33
33
  #
34
- # Note: The following fields are mutually exclusive: `aws_wrapped_key_info`, `gcp_wrapped_key_info`. If a field in that set is populated, all other fields in the set will automatically be cleared.
34
+ # Note: The following fields are mutually exclusive: `aws_wrapped_key_info`, `gcp_wrapped_key_info`, `coordinator_key_info`. If a field in that set is populated, all other fields in the set will automatically be cleared.
35
+ # @!attribute [rw] coordinator_key_info
36
+ # @return [::Google::Ads::DataManager::V1::CoordinatorKeyInfo]
37
+ # Key information for the chosen coordinator key.
38
+ #
39
+ # This is not supported for the
40
+ # {::Google::Ads::DataManager::V1::IngestionService::Client#ingest_events IngestEvents},
41
+ # {::Google::Ads::DataManager::V1::IngestionService::Client#ingest_audience_members IngestAudienceMembers},
42
+ # and
43
+ # {::Google::Ads::DataManager::V1::IngestionService::Client#remove_audience_members RemoveAudienceMembers}
44
+ # methods.
45
+ #
46
+ # Note: The following fields are mutually exclusive: `coordinator_key_info`, `gcp_wrapped_key_info`, `aws_wrapped_key_info`. If a field in that set is populated, all other fields in the set will automatically be cleared.
35
47
  class EncryptionInfo
36
48
  include ::Google::Protobuf::MessageExts
37
49
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -102,6 +114,15 @@ module Google
102
114
  XCHACHA20_POLY1305 = 1
103
115
  end
104
116
  end
117
+
118
+ # Information about the coordinator key.
119
+ # @!attribute [rw] key_id
120
+ # @return [::String]
121
+ # Required. The ID of the chosen coordinator key.
122
+ class CoordinatorKeyInfo
123
+ include ::Google::Protobuf::MessageExts
124
+ extend ::Google::Protobuf::MessageExts::ClassMethods
125
+ end
105
126
  end
106
127
  end
107
128
  end