oursprivacy-ingest 0.1.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 (89) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +16 -0
  4. data/README.md +206 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/oursprivacy_ingest/client.rb +64 -0
  7. data/lib/oursprivacy_ingest/errors.rb +228 -0
  8. data/lib/oursprivacy_ingest/file_part.rb +58 -0
  9. data/lib/oursprivacy_ingest/internal/transport/base_client.rb +573 -0
  10. data/lib/oursprivacy_ingest/internal/transport/pooled_net_requester.rb +204 -0
  11. data/lib/oursprivacy_ingest/internal/type/array_of.rb +168 -0
  12. data/lib/oursprivacy_ingest/internal/type/base_model.rb +534 -0
  13. data/lib/oursprivacy_ingest/internal/type/base_page.rb +55 -0
  14. data/lib/oursprivacy_ingest/internal/type/boolean.rb +77 -0
  15. data/lib/oursprivacy_ingest/internal/type/converter.rb +327 -0
  16. data/lib/oursprivacy_ingest/internal/type/enum.rb +133 -0
  17. data/lib/oursprivacy_ingest/internal/type/file_input.rb +111 -0
  18. data/lib/oursprivacy_ingest/internal/type/hash_of.rb +188 -0
  19. data/lib/oursprivacy_ingest/internal/type/request_parameters.rb +42 -0
  20. data/lib/oursprivacy_ingest/internal/type/union.rb +245 -0
  21. data/lib/oursprivacy_ingest/internal/type/unknown.rb +81 -0
  22. data/lib/oursprivacy_ingest/internal/util.rb +915 -0
  23. data/lib/oursprivacy_ingest/internal.rb +20 -0
  24. data/lib/oursprivacy_ingest/models/track_event_params.rb +1009 -0
  25. data/lib/oursprivacy_ingest/models/track_event_response.rb +26 -0
  26. data/lib/oursprivacy_ingest/models/visitor_upsert_params.rb +972 -0
  27. data/lib/oursprivacy_ingest/models/visitor_upsert_response.rb +26 -0
  28. data/lib/oursprivacy_ingest/models.rb +48 -0
  29. data/lib/oursprivacy_ingest/request_options.rb +79 -0
  30. data/lib/oursprivacy_ingest/resources/track.rb +61 -0
  31. data/lib/oursprivacy_ingest/resources/visitor.rb +52 -0
  32. data/lib/oursprivacy_ingest/version.rb +5 -0
  33. data/lib/oursprivacy_ingest.rb +59 -0
  34. data/manifest.yaml +15 -0
  35. data/rbi/oursprivacy_ingest/client.rbi +46 -0
  36. data/rbi/oursprivacy_ingest/errors.rbi +205 -0
  37. data/rbi/oursprivacy_ingest/file_part.rbi +37 -0
  38. data/rbi/oursprivacy_ingest/internal/transport/base_client.rbi +305 -0
  39. data/rbi/oursprivacy_ingest/internal/transport/pooled_net_requester.rbi +80 -0
  40. data/rbi/oursprivacy_ingest/internal/type/array_of.rbi +108 -0
  41. data/rbi/oursprivacy_ingest/internal/type/base_model.rbi +316 -0
  42. data/rbi/oursprivacy_ingest/internal/type/base_page.rbi +43 -0
  43. data/rbi/oursprivacy_ingest/internal/type/boolean.rbi +58 -0
  44. data/rbi/oursprivacy_ingest/internal/type/converter.rbi +225 -0
  45. data/rbi/oursprivacy_ingest/internal/type/enum.rbi +82 -0
  46. data/rbi/oursprivacy_ingest/internal/type/file_input.rbi +59 -0
  47. data/rbi/oursprivacy_ingest/internal/type/hash_of.rbi +108 -0
  48. data/rbi/oursprivacy_ingest/internal/type/request_parameters.rbi +33 -0
  49. data/rbi/oursprivacy_ingest/internal/type/union.rbi +134 -0
  50. data/rbi/oursprivacy_ingest/internal/type/unknown.rbi +58 -0
  51. data/rbi/oursprivacy_ingest/internal/util.rbi +487 -0
  52. data/rbi/oursprivacy_ingest/internal.rbi +18 -0
  53. data/rbi/oursprivacy_ingest/models/track_event_params.rbi +1072 -0
  54. data/rbi/oursprivacy_ingest/models/track_event_response.rbi +71 -0
  55. data/rbi/oursprivacy_ingest/models/visitor_upsert_params.rbi +1035 -0
  56. data/rbi/oursprivacy_ingest/models/visitor_upsert_response.rbi +71 -0
  57. data/rbi/oursprivacy_ingest/models.rbi +7 -0
  58. data/rbi/oursprivacy_ingest/request_options.rbi +64 -0
  59. data/rbi/oursprivacy_ingest/resources/track.rbi +74 -0
  60. data/rbi/oursprivacy_ingest/resources/visitor.rbi +58 -0
  61. data/rbi/oursprivacy_ingest/version.rbi +5 -0
  62. data/sig/oursprivacy_ingest/client.rbs +25 -0
  63. data/sig/oursprivacy_ingest/errors.rbs +117 -0
  64. data/sig/oursprivacy_ingest/file_part.rbs +21 -0
  65. data/sig/oursprivacy_ingest/internal/transport/base_client.rbs +131 -0
  66. data/sig/oursprivacy_ingest/internal/transport/pooled_net_requester.rbs +45 -0
  67. data/sig/oursprivacy_ingest/internal/type/array_of.rbs +48 -0
  68. data/sig/oursprivacy_ingest/internal/type/base_model.rbs +106 -0
  69. data/sig/oursprivacy_ingest/internal/type/base_page.rbs +24 -0
  70. data/sig/oursprivacy_ingest/internal/type/boolean.rbs +26 -0
  71. data/sig/oursprivacy_ingest/internal/type/converter.rbs +79 -0
  72. data/sig/oursprivacy_ingest/internal/type/enum.rbs +32 -0
  73. data/sig/oursprivacy_ingest/internal/type/file_input.rbs +25 -0
  74. data/sig/oursprivacy_ingest/internal/type/hash_of.rbs +48 -0
  75. data/sig/oursprivacy_ingest/internal/type/request_parameters.rbs +20 -0
  76. data/sig/oursprivacy_ingest/internal/type/union.rbs +52 -0
  77. data/sig/oursprivacy_ingest/internal/type/unknown.rbs +26 -0
  78. data/sig/oursprivacy_ingest/internal/util.rbs +185 -0
  79. data/sig/oursprivacy_ingest/internal.rbs +10 -0
  80. data/sig/oursprivacy_ingest/models/track_event_params.rbs +673 -0
  81. data/sig/oursprivacy_ingest/models/track_event_response.rbs +28 -0
  82. data/sig/oursprivacy_ingest/models/visitor_upsert_params.rbs +653 -0
  83. data/sig/oursprivacy_ingest/models/visitor_upsert_response.rbs +28 -0
  84. data/sig/oursprivacy_ingest/models.rbs +5 -0
  85. data/sig/oursprivacy_ingest/request_options.rbs +36 -0
  86. data/sig/oursprivacy_ingest/resources/track.rbs +21 -0
  87. data/sig/oursprivacy_ingest/resources/visitor.rbs +17 -0
  88. data/sig/oursprivacy_ingest/version.rbs +3 -0
  89. metadata +146 -0
@@ -0,0 +1,1009 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OursprivacyIngest
4
+ module Models
5
+ # @see OursprivacyIngest::Resources::Track#event
6
+ class TrackEventParams < OursprivacyIngest::Internal::Type::BaseModel
7
+ extend OursprivacyIngest::Internal::Type::RequestParameters::Converter
8
+ include OursprivacyIngest::Internal::Type::RequestParameters
9
+
10
+ # @!attribute token
11
+ # The token for your Ours Privacy Source. You can find this in the Ours dashboard.
12
+ #
13
+ # @return [String]
14
+ required :token, String
15
+
16
+ # @!attribute event
17
+ # The name of the event you're tracking. This must be whitelisted in the Ours
18
+ # dashboard.
19
+ #
20
+ # @return [String]
21
+ required :event, String
22
+
23
+ # @!attribute default_properties
24
+ # These properties are used throughout the Ours app to pass known values onto
25
+ # destinations
26
+ #
27
+ # @return [OursprivacyIngest::Models::TrackEventParams::DefaultProperties, nil]
28
+ optional :default_properties,
29
+ -> { OursprivacyIngest::TrackEventParams::DefaultProperties },
30
+ api_name: :defaultProperties,
31
+ nil?: true
32
+
33
+ # @!attribute distinct_id
34
+ # A unique identifier for the event. This helps prevent duplicate events.
35
+ #
36
+ # @return [String, nil]
37
+ optional :distinct_id, String, api_name: :distinctId, nil?: true
38
+
39
+ # @!attribute email
40
+ # The email address of a user. We will associate this event with the user or
41
+ # create a user. Used for lookup if externalId and userId are not included in the
42
+ # request.
43
+ #
44
+ # @return [String, nil]
45
+ optional :email, String, nil?: true
46
+
47
+ # @!attribute event_properties
48
+ # Any additional event properties you want to pass along.
49
+ #
50
+ # @return [Hash{Symbol=>Object, nil}, nil]
51
+ optional :event_properties,
52
+ OursprivacyIngest::Internal::Type::HashOf[OursprivacyIngest::Internal::Type::Unknown,
53
+ nil?: true],
54
+ api_name: :eventProperties,
55
+ nil?: true
56
+
57
+ # @!attribute external_id
58
+ # The externalId (the ID in your system) of a user. We will associate this event
59
+ # with the user or create a user. If included in the request, email lookup is
60
+ # ignored.
61
+ #
62
+ # @return [String, nil]
63
+ optional :external_id, String, api_name: :externalId, nil?: true
64
+
65
+ # @!attribute time
66
+ # The time at which the event occurred in milliseconds since UTC epoch. The time
67
+ # must be in the past and within the last 7 days.
68
+ #
69
+ # @return [Float, nil]
70
+ optional :time, Float, nil?: true
71
+
72
+ # @!attribute user_id
73
+ # The Ours user id stored in local storage and cookies on your web properties. If
74
+ # userId is included in the request, we do not lookup the user by email or
75
+ # externalId.
76
+ #
77
+ # @return [String, nil]
78
+ optional :user_id, String, api_name: :userId, nil?: true
79
+
80
+ # @!attribute user_properties
81
+ # Properties to set on the visitor. (optional) You can also update these
82
+ # properties via the identify endpoint.
83
+ #
84
+ # @return [OursprivacyIngest::Models::TrackEventParams::UserProperties, nil]
85
+ optional :user_properties,
86
+ -> { OursprivacyIngest::TrackEventParams::UserProperties },
87
+ api_name: :userProperties,
88
+ nil?: true
89
+
90
+ # @!method initialize(token:, event:, default_properties: nil, distinct_id: nil, email: nil, event_properties: nil, external_id: nil, time: nil, user_id: nil, user_properties: nil, request_options: {})
91
+ # Some parameter documentations has been truncated, see
92
+ # {OursprivacyIngest::Models::TrackEventParams} for more details.
93
+ #
94
+ # @param token [String] The token for your Ours Privacy Source. You can find this in the Ours dashboard.
95
+ #
96
+ # @param event [String] The name of the event you're tracking. This must be whitelisted in the Ours dash
97
+ #
98
+ # @param default_properties [OursprivacyIngest::Models::TrackEventParams::DefaultProperties, nil] These properties are used throughout the Ours app to pass known values onto dest
99
+ #
100
+ # @param distinct_id [String, nil] A unique identifier for the event. This helps prevent duplicate events.
101
+ #
102
+ # @param email [String, nil] The email address of a user. We will associate this event with the user or creat
103
+ #
104
+ # @param event_properties [Hash{Symbol=>Object, nil}, nil] Any additional event properties you want to pass along.
105
+ #
106
+ # @param external_id [String, nil] The externalId (the ID in your system) of a user. We will associate this event w
107
+ #
108
+ # @param time [Float, nil] The time at which the event occurred in milliseconds since UTC epoch. The time m
109
+ #
110
+ # @param user_id [String, nil] The Ours user id stored in local storage and cookies on your web properties. If
111
+ #
112
+ # @param user_properties [OursprivacyIngest::Models::TrackEventParams::UserProperties, nil] Properties to set on the visitor. (optional) You can also update these propertie
113
+ #
114
+ # @param request_options [OursprivacyIngest::RequestOptions, Hash{Symbol=>Object}]
115
+
116
+ class DefaultProperties < OursprivacyIngest::Internal::Type::BaseModel
117
+ # @!attribute active_duration
118
+ # The active time in milliseconds that the user had this tab active
119
+ #
120
+ # @return [Float, nil]
121
+ optional :active_duration, Float, api_name: :activeDuration, nil?: true
122
+
123
+ # @!attribute ad_id
124
+ # The ad id for detected in the session. This is set by the web sdk automatically.
125
+ #
126
+ # @return [String, nil]
127
+ optional :ad_id, String, nil?: true
128
+
129
+ # @!attribute adset_id
130
+ # The adset id for detected in the session. This is set by the web sdk
131
+ # automatically.
132
+ #
133
+ # @return [String, nil]
134
+ optional :adset_id, String, nil?: true
135
+
136
+ # @!attribute browser_language
137
+ # The language of the browser. Ex: en-US
138
+ #
139
+ # @return [String, nil]
140
+ optional :browser_language, String, nil?: true
141
+
142
+ # @!attribute browser_name
143
+ # The name of the browser. Ex: Chrome
144
+ #
145
+ # @return [String, nil]
146
+ optional :browser_name, String, nil?: true
147
+
148
+ # @!attribute browser_version
149
+ # The version of the browser. Ex: 114.0
150
+ #
151
+ # @return [String, nil]
152
+ optional :browser_version, String, nil?: true
153
+
154
+ # @!attribute campaign_id
155
+ # The campaign id for detected in the session. This is set by the web sdk
156
+ # automatically.
157
+ #
158
+ # @return [String, nil]
159
+ optional :campaign_id, String, nil?: true
160
+
161
+ # @!attribute clickid
162
+ # The Click ID. Ex: clickid123
163
+ #
164
+ # @return [String, nil]
165
+ optional :clickid, String, nil?: true
166
+
167
+ # @!attribute clid
168
+ # The Generic Click ID. Ex: clid123
169
+ #
170
+ # @return [String, nil]
171
+ optional :clid, String, nil?: true
172
+
173
+ # @!attribute cpu_architecture
174
+ # The architecture of the CPU. Ex: x64
175
+ #
176
+ # @return [String, nil]
177
+ optional :cpu_architecture, String, nil?: true
178
+
179
+ # @!attribute current_url
180
+ # The full url (including query params) of the current page
181
+ #
182
+ # @return [String, nil]
183
+ optional :current_url, String, nil?: true
184
+
185
+ # @!attribute dclid
186
+ # The DoubleClick Click ID. Ex: dclid123
187
+ #
188
+ # @return [String, nil]
189
+ optional :dclid, String, nil?: true
190
+
191
+ # @!attribute device_model
192
+ # The model of the device. Ex: iPhone 13
193
+ #
194
+ # @return [String, nil]
195
+ optional :device_model, String, nil?: true
196
+
197
+ # @!attribute device_type
198
+ # The type of device the user is using. Ex: mobile
199
+ #
200
+ # @return [String, nil]
201
+ optional :device_type, String, nil?: true
202
+
203
+ # @!attribute device_vendor
204
+ # The vendor of the device. Ex: Apple
205
+ #
206
+ # @return [String, nil]
207
+ optional :device_vendor, String, nil?: true
208
+
209
+ # @!attribute duration
210
+ # The time in milliseconds since the page was loaded // script was loaded
211
+ #
212
+ # @return [Float, nil]
213
+ optional :duration, Float, nil?: true
214
+
215
+ # @!attribute encoding
216
+ # The browsers encoding. Ex: UTF-8
217
+ #
218
+ # @return [String, nil]
219
+ optional :encoding, String, nil?: true
220
+
221
+ # @!attribute engine_name
222
+ # The name of the browser engine. Ex: Blink
223
+ #
224
+ # @return [String, nil]
225
+ optional :engine_name, String, nil?: true
226
+
227
+ # @!attribute engine_version
228
+ # The version of the browser engine. Ex: 114.0
229
+ #
230
+ # @return [String, nil]
231
+ optional :engine_version, String, nil?: true
232
+
233
+ # @!attribute epik
234
+ # The Pinterest Click ID. Ex: epik456
235
+ #
236
+ # @return [String, nil]
237
+ optional :epik, String, nil?: true
238
+
239
+ # @!attribute fbc
240
+ # Facebook Click ID with prefix format for Conversions API tracking. Ex:
241
+ # fb.1.1554763741205.AbCdEfGhIjKlMnOpQrStUvWxYz1234567890
242
+ #
243
+ # @return [String, nil]
244
+ optional :fbc, String, nil?: true
245
+
246
+ # @!attribute fbclid
247
+ # Raw Facebook Click ID query parameter without prefix from ad clicks. Ex:
248
+ # AbCdEfGhIjKlMnOpQrStUvWxYz1234567890
249
+ #
250
+ # @return [String, nil]
251
+ optional :fbclid, String, nil?: true
252
+
253
+ # @!attribute fbp
254
+ # Facebook Browser ID parameter for identifying browsers and attributing events.
255
+ # Ex: fb.1.1554763741205.1098115397
256
+ #
257
+ # @return [String, nil]
258
+ optional :fbp, String, nil?: true
259
+
260
+ # @!attribute fv
261
+ # Deprecated
262
+ #
263
+ # @return [Boolean, nil]
264
+ optional :fv, OursprivacyIngest::Internal::Type::Boolean, nil?: true
265
+
266
+ # @!attribute gad_source
267
+ # The Google Ad Source. Ex: google
268
+ #
269
+ # @return [String, nil]
270
+ optional :gad_source, String, nil?: true
271
+
272
+ # @!attribute gbraid
273
+ # The Google Braid ID. Ex: gbraid123
274
+ #
275
+ # @return [String, nil]
276
+ optional :gbraid, String, nil?: true
277
+
278
+ # @!attribute gclid
279
+ # The Google Click ID. Ex: gclid123
280
+ #
281
+ # @return [String, nil]
282
+ optional :gclid, String, nil?: true
283
+
284
+ # @!attribute host
285
+ # The host of the current page. Ex: example.com
286
+ #
287
+ # @return [String, nil]
288
+ optional :host, String, nil?: true
289
+
290
+ # @!attribute iframe
291
+ # Whether the user is in an iframe. Ex: true
292
+ #
293
+ # @return [Boolean, nil]
294
+ optional :iframe, OursprivacyIngest::Internal::Type::Boolean, nil?: true
295
+
296
+ # @!attribute ip
297
+ # The IP address of the user. Ex: 127.0.0.1
298
+ #
299
+ # @return [String, nil]
300
+ optional :ip, String, nil?: true
301
+
302
+ # @!attribute is_bot
303
+ # Whether we have detected that the user is a bot. This is set automatically by
304
+ # the Ours server primarily for events tracked through the web SDK.
305
+ #
306
+ # @return [Object, nil]
307
+ optional :is_bot, OursprivacyIngest::Internal::Type::Unknown
308
+
309
+ # @!attribute li_fat_id
310
+ # The LinkedIn Click ID. Ex: li_fat_id123
311
+ #
312
+ # @return [String, nil]
313
+ optional :li_fat_id, String, nil?: true
314
+
315
+ # @!attribute msclkid
316
+ # The Microsoft Click ID. Ex: msclkid123
317
+ #
318
+ # @return [String, nil]
319
+ optional :msclkid, String, nil?: true
320
+
321
+ # @!attribute ndclid
322
+ # The NextDoor Click ID. Ex: ndclid123
323
+ #
324
+ # @return [String, nil]
325
+ optional :ndclid, String, nil?: true
326
+
327
+ # @!attribute new_s
328
+ # Deprecated
329
+ #
330
+ # @return [Boolean, nil]
331
+ optional :new_s, OursprivacyIngest::Internal::Type::Boolean, nil?: true
332
+
333
+ # @!attribute os_name
334
+ # The name of the operating system. Ex: Windows
335
+ #
336
+ # @return [String, nil]
337
+ optional :os_name, String, nil?: true
338
+
339
+ # @!attribute os_version
340
+ # The version of the operating system. Ex: 10.0
341
+ #
342
+ # @return [String, nil]
343
+ optional :os_version, String, nil?: true
344
+
345
+ # @!attribute page_hash
346
+ # A random set of numbers for the page load
347
+ #
348
+ # @return [Float, nil]
349
+ optional :page_hash, Float, nil?: true
350
+
351
+ # @!attribute pathname
352
+ # The pathname of the current page. Ex: /home
353
+ #
354
+ # @return [String, nil]
355
+ optional :pathname, String, nil?: true
356
+
357
+ # @!attribute qclid
358
+ # The Quora Click ID. Ex: qclid123
359
+ #
360
+ # @return [String, nil]
361
+ optional :qclid, String, nil?: true
362
+
363
+ # @!attribute rdt_cid
364
+ # The Reddit Click ID. Ex: rdt_cid123
365
+ #
366
+ # @return [String, nil]
367
+ optional :rdt_cid, String, nil?: true
368
+
369
+ # @!attribute received_at
370
+ # The time the event was received by an Ours server in ISO format
371
+ #
372
+ # @return [String, nil]
373
+ optional :received_at, String, nil?: true
374
+
375
+ # @!attribute referrer
376
+ # The referrer URL of the current page
377
+ #
378
+ # @return [String, nil]
379
+ optional :referrer, String, nil?: true
380
+
381
+ # @!attribute sacid
382
+ # The StackAdapt Tracking ID. Ex: sacid123
383
+ #
384
+ # @return [String, nil]
385
+ optional :sacid, String, nil?: true
386
+
387
+ # @!attribute sccid
388
+ # The SnapChat Click ID. Ex: sccid123
389
+ #
390
+ # @return [String, nil]
391
+ optional :sccid, String, nil?: true
392
+
393
+ # @!attribute screen_height
394
+ # The height of the screen. Ex: 1080
395
+ #
396
+ # @return [Float, nil]
397
+ optional :screen_height, Float, nil?: true
398
+
399
+ # @!attribute screen_width
400
+ # The width of the screen. Ex: 1920
401
+ #
402
+ # @return [Float, nil]
403
+ optional :screen_width, Float, nil?: true
404
+
405
+ # @!attribute session_count
406
+ # The number of sessions the user has had. Ex: 3
407
+ #
408
+ # @return [Float, nil]
409
+ optional :session_count, Float, api_name: :sessionCount, nil?: true
410
+
411
+ # @!attribute sid
412
+ # The session ID as assigned automatically by the web SDK. This is required for
413
+ # session replay
414
+ #
415
+ # @return [String, nil]
416
+ optional :sid, String, nil?: true
417
+
418
+ # @!attribute sr
419
+ #
420
+ # @return [String, nil]
421
+ optional :sr, String, nil?: true
422
+
423
+ # @!attribute title
424
+ # The title of the current page
425
+ #
426
+ # @return [String, nil]
427
+ optional :title, String, nil?: true
428
+
429
+ # @!attribute ttclid
430
+ # The TikTok Click ID. Ex: ttclid123
431
+ #
432
+ # @return [String, nil]
433
+ optional :ttclid, String, nil?: true
434
+
435
+ # @!attribute twclid
436
+ # The Twitter Click ID. Ex: twclid123
437
+ #
438
+ # @return [String, nil]
439
+ optional :twclid, String, nil?: true
440
+
441
+ # @!attribute uafvl
442
+ # User agent as a full list of strings.
443
+ #
444
+ # @return [String, nil]
445
+ optional :uafvl, String, nil?: true
446
+
447
+ # @!attribute user_agent
448
+ # The user agent of the browser
449
+ #
450
+ # @return [String, nil]
451
+ optional :user_agent, String, nil?: true
452
+
453
+ # @!attribute utm_campaign
454
+ # The UTM Campaign. The web SDK automatically captures this from the query params.
455
+ #
456
+ # @return [String, nil]
457
+ optional :utm_campaign, String, nil?: true
458
+
459
+ # @!attribute utm_content
460
+ # The UTM Content. The web SDK automatically captures this from the query params.
461
+ #
462
+ # @return [String, nil]
463
+ optional :utm_content, String, nil?: true
464
+
465
+ # @!attribute utm_medium
466
+ # The UTM Medium. The web SDK automatically captures this from the query params.
467
+ #
468
+ # @return [String, nil]
469
+ optional :utm_medium, String, nil?: true
470
+
471
+ # @!attribute utm_name
472
+ # The UTM Name. The web SDK automatically captures this from the query params.
473
+ #
474
+ # @return [String, nil]
475
+ optional :utm_name, String, nil?: true
476
+
477
+ # @!attribute utm_source
478
+ # The UTM Source. The web SDK automatically captures this from the query params.
479
+ #
480
+ # @return [String, nil]
481
+ optional :utm_source, String, nil?: true
482
+
483
+ # @!attribute utm_term
484
+ # The UTM Term. The web SDK automatically captures this from the query params.
485
+ #
486
+ # @return [String, nil]
487
+ optional :utm_term, String, nil?: true
488
+
489
+ # @!attribute version
490
+ # The version of the web SDK
491
+ #
492
+ # @return [String, nil]
493
+ optional :version, String, nil?: true
494
+
495
+ # @!attribute wbraid
496
+ # The WBRAID Identifier. The web SDK automatically captures this from the query
497
+ # params.
498
+ #
499
+ # @return [String, nil]
500
+ optional :wbraid, String, nil?: true
501
+
502
+ # @!attribute webview
503
+ # Whether the user is in a webview. Ex: true
504
+ #
505
+ # @return [Boolean, nil]
506
+ optional :webview, OursprivacyIngest::Internal::Type::Boolean, nil?: true
507
+
508
+ # @!method initialize(active_duration: nil, ad_id: nil, adset_id: nil, browser_language: nil, browser_name: nil, browser_version: nil, campaign_id: nil, clickid: nil, clid: nil, cpu_architecture: nil, current_url: nil, dclid: nil, device_model: nil, device_type: nil, device_vendor: nil, duration: nil, encoding: nil, engine_name: nil, engine_version: nil, epik: nil, fbc: nil, fbclid: nil, fbp: nil, fv: nil, gad_source: nil, gbraid: nil, gclid: nil, host: nil, iframe: nil, ip: nil, is_bot: nil, li_fat_id: nil, msclkid: nil, ndclid: nil, new_s: nil, os_name: nil, os_version: nil, page_hash: nil, pathname: nil, qclid: nil, rdt_cid: nil, received_at: nil, referrer: nil, sacid: nil, sccid: nil, screen_height: nil, screen_width: nil, session_count: nil, sid: nil, sr: nil, title: nil, ttclid: nil, twclid: nil, uafvl: nil, user_agent: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_name: nil, utm_source: nil, utm_term: nil, version: nil, wbraid: nil, webview: nil)
509
+ # Some parameter documentations has been truncated, see
510
+ # {OursprivacyIngest::Models::TrackEventParams::DefaultProperties} for more
511
+ # details.
512
+ #
513
+ # These properties are used throughout the Ours app to pass known values onto
514
+ # destinations
515
+ #
516
+ # @param active_duration [Float, nil] The active time in milliseconds that the user had this tab active
517
+ #
518
+ # @param ad_id [String, nil] The ad id for detected in the session. This is set by the web sdk automatically.
519
+ #
520
+ # @param adset_id [String, nil] The adset id for detected in the session. This is set by the web sdk automatical
521
+ #
522
+ # @param browser_language [String, nil] The language of the browser. Ex: en-US
523
+ #
524
+ # @param browser_name [String, nil] The name of the browser. Ex: Chrome
525
+ #
526
+ # @param browser_version [String, nil] The version of the browser. Ex: 114.0
527
+ #
528
+ # @param campaign_id [String, nil] The campaign id for detected in the session. This is set by the web sdk automati
529
+ #
530
+ # @param clickid [String, nil] The Click ID. Ex: clickid123
531
+ #
532
+ # @param clid [String, nil] The Generic Click ID. Ex: clid123
533
+ #
534
+ # @param cpu_architecture [String, nil] The architecture of the CPU. Ex: x64
535
+ #
536
+ # @param current_url [String, nil] The full url (including query params) of the current page
537
+ #
538
+ # @param dclid [String, nil] The DoubleClick Click ID. Ex: dclid123
539
+ #
540
+ # @param device_model [String, nil] The model of the device. Ex: iPhone 13
541
+ #
542
+ # @param device_type [String, nil] The type of device the user is using. Ex: mobile
543
+ #
544
+ # @param device_vendor [String, nil] The vendor of the device. Ex: Apple
545
+ #
546
+ # @param duration [Float, nil] The time in milliseconds since the page was loaded // script was loaded
547
+ #
548
+ # @param encoding [String, nil] The browsers encoding. Ex: UTF-8
549
+ #
550
+ # @param engine_name [String, nil] The name of the browser engine. Ex: Blink
551
+ #
552
+ # @param engine_version [String, nil] The version of the browser engine. Ex: 114.0
553
+ #
554
+ # @param epik [String, nil] The Pinterest Click ID. Ex: epik456
555
+ #
556
+ # @param fbc [String, nil] Facebook Click ID with prefix format for Conversions API tracking. Ex: fb.1.1554
557
+ #
558
+ # @param fbclid [String, nil] Raw Facebook Click ID query parameter without prefix from ad clicks. Ex: AbCdEfG
559
+ #
560
+ # @param fbp [String, nil] Facebook Browser ID parameter for identifying browsers and attributing events. E
561
+ #
562
+ # @param fv [Boolean, nil] Deprecated
563
+ #
564
+ # @param gad_source [String, nil] The Google Ad Source. Ex: google
565
+ #
566
+ # @param gbraid [String, nil] The Google Braid ID. Ex: gbraid123
567
+ #
568
+ # @param gclid [String, nil] The Google Click ID. Ex: gclid123
569
+ #
570
+ # @param host [String, nil] The host of the current page. Ex: example.com
571
+ #
572
+ # @param iframe [Boolean, nil] Whether the user is in an iframe. Ex: true
573
+ #
574
+ # @param ip [String, nil] The IP address of the user. Ex: 127.0.0.1
575
+ #
576
+ # @param is_bot [Object] Whether we have detected that the user is a bot. This is set automatically by th
577
+ #
578
+ # @param li_fat_id [String, nil] The LinkedIn Click ID. Ex: li_fat_id123
579
+ #
580
+ # @param msclkid [String, nil] The Microsoft Click ID. Ex: msclkid123
581
+ #
582
+ # @param ndclid [String, nil] The NextDoor Click ID. Ex: ndclid123
583
+ #
584
+ # @param new_s [Boolean, nil] Deprecated
585
+ #
586
+ # @param os_name [String, nil] The name of the operating system. Ex: Windows
587
+ #
588
+ # @param os_version [String, nil] The version of the operating system. Ex: 10.0
589
+ #
590
+ # @param page_hash [Float, nil] A random set of numbers for the page load
591
+ #
592
+ # @param pathname [String, nil] The pathname of the current page. Ex: /home
593
+ #
594
+ # @param qclid [String, nil] The Quora Click ID. Ex: qclid123
595
+ #
596
+ # @param rdt_cid [String, nil] The Reddit Click ID. Ex: rdt_cid123
597
+ #
598
+ # @param received_at [String, nil] The time the event was received by an Ours server in ISO format
599
+ #
600
+ # @param referrer [String, nil] The referrer URL of the current page
601
+ #
602
+ # @param sacid [String, nil] The StackAdapt Tracking ID. Ex: sacid123
603
+ #
604
+ # @param sccid [String, nil] The SnapChat Click ID. Ex: sccid123
605
+ #
606
+ # @param screen_height [Float, nil] The height of the screen. Ex: 1080
607
+ #
608
+ # @param screen_width [Float, nil] The width of the screen. Ex: 1920
609
+ #
610
+ # @param session_count [Float, nil] The number of sessions the user has had. Ex: 3
611
+ #
612
+ # @param sid [String, nil] The session ID as assigned automatically by the web SDK. This is required for se
613
+ #
614
+ # @param sr [String, nil]
615
+ #
616
+ # @param title [String, nil] The title of the current page
617
+ #
618
+ # @param ttclid [String, nil] The TikTok Click ID. Ex: ttclid123
619
+ #
620
+ # @param twclid [String, nil] The Twitter Click ID. Ex: twclid123
621
+ #
622
+ # @param uafvl [String, nil] User agent as a full list of strings.
623
+ #
624
+ # @param user_agent [String, nil] The user agent of the browser
625
+ #
626
+ # @param utm_campaign [String, nil] The UTM Campaign. The web SDK automatically captures this from the query params.
627
+ #
628
+ # @param utm_content [String, nil] The UTM Content. The web SDK automatically captures this from the query params.
629
+ #
630
+ # @param utm_medium [String, nil] The UTM Medium. The web SDK automatically captures this from the query params.
631
+ #
632
+ # @param utm_name [String, nil] The UTM Name. The web SDK automatically captures this from the query params.
633
+ #
634
+ # @param utm_source [String, nil] The UTM Source. The web SDK automatically captures this from the query params.
635
+ #
636
+ # @param utm_term [String, nil] The UTM Term. The web SDK automatically captures this from the query params.
637
+ #
638
+ # @param version [String, nil] The version of the web SDK
639
+ #
640
+ # @param wbraid [String, nil] The WBRAID Identifier. The web SDK automatically captures this from the query pa
641
+ #
642
+ # @param webview [Boolean, nil] Whether the user is in a webview. Ex: true
643
+ end
644
+
645
+ class UserProperties < OursprivacyIngest::Internal::Type::BaseModel
646
+ # @!attribute ad_id
647
+ #
648
+ # @return [String, nil]
649
+ optional :ad_id, String, nil?: true
650
+
651
+ # @!attribute adset_id
652
+ #
653
+ # @return [String, nil]
654
+ optional :adset_id, String, nil?: true
655
+
656
+ # @!attribute campaign_id
657
+ #
658
+ # @return [String, nil]
659
+ optional :campaign_id, String, nil?: true
660
+
661
+ # @!attribute city
662
+ #
663
+ # @return [String, nil]
664
+ optional :city, String, nil?: true
665
+
666
+ # @!attribute clickid
667
+ #
668
+ # @return [String, nil]
669
+ optional :clickid, String, nil?: true
670
+
671
+ # @!attribute clid
672
+ #
673
+ # @return [String, nil]
674
+ optional :clid, String, nil?: true
675
+
676
+ # @!attribute company_name
677
+ #
678
+ # @return [String, nil]
679
+ optional :company_name, String, nil?: true
680
+
681
+ # @!attribute consent
682
+ #
683
+ # @return [Hash{Symbol=>Object, nil}, nil]
684
+ optional :consent,
685
+ OursprivacyIngest::Internal::Type::HashOf[OursprivacyIngest::Internal::Type::Unknown,
686
+ nil?: true],
687
+ nil?: true
688
+
689
+ # @!attribute country
690
+ #
691
+ # @return [String, nil]
692
+ optional :country, String, nil?: true
693
+
694
+ # @!attribute custom_properties
695
+ #
696
+ # @return [Hash{Symbol=>Object, nil}, nil]
697
+ optional :custom_properties,
698
+ OursprivacyIngest::Internal::Type::HashOf[OursprivacyIngest::Internal::Type::Unknown,
699
+ nil?: true],
700
+ nil?: true
701
+
702
+ # @!attribute date_of_birth
703
+ #
704
+ # @return [String, nil]
705
+ optional :date_of_birth, String, nil?: true
706
+
707
+ # @!attribute dclid
708
+ #
709
+ # @return [String, nil]
710
+ optional :dclid, String, nil?: true
711
+
712
+ # @!attribute email
713
+ #
714
+ # @return [String, nil]
715
+ optional :email, String, nil?: true
716
+
717
+ # @!attribute epik
718
+ #
719
+ # @return [String, nil]
720
+ optional :epik, String, nil?: true
721
+
722
+ # @!attribute external_id
723
+ #
724
+ # @return [String, nil]
725
+ optional :external_id, String, nil?: true
726
+
727
+ # @!attribute fbc
728
+ #
729
+ # @return [String, nil]
730
+ optional :fbc, String, nil?: true
731
+
732
+ # @!attribute fbclid
733
+ #
734
+ # @return [String, nil]
735
+ optional :fbclid, String, nil?: true
736
+
737
+ # @!attribute fbp
738
+ #
739
+ # @return [String, nil]
740
+ optional :fbp, String, nil?: true
741
+
742
+ # @!attribute first_name
743
+ #
744
+ # @return [String, nil]
745
+ optional :first_name, String, nil?: true
746
+
747
+ # @!attribute gad_source
748
+ #
749
+ # @return [String, nil]
750
+ optional :gad_source, String, nil?: true
751
+
752
+ # @!attribute gbraid
753
+ #
754
+ # @return [String, nil]
755
+ optional :gbraid, String, nil?: true
756
+
757
+ # @!attribute gclid
758
+ #
759
+ # @return [String, nil]
760
+ optional :gclid, String, nil?: true
761
+
762
+ # @!attribute gender
763
+ #
764
+ # @return [String, nil]
765
+ optional :gender, String, nil?: true
766
+
767
+ # @!attribute ip
768
+ # The IP address of the user
769
+ #
770
+ # @return [String, nil]
771
+ optional :ip, String, nil?: true
772
+
773
+ # @!attribute is_bot
774
+ #
775
+ # @return [Object, nil]
776
+ optional :is_bot, OursprivacyIngest::Internal::Type::Unknown
777
+
778
+ # @!attribute job_title
779
+ #
780
+ # @return [String, nil]
781
+ optional :job_title, String, nil?: true
782
+
783
+ # @!attribute last_name
784
+ #
785
+ # @return [String, nil]
786
+ optional :last_name, String, nil?: true
787
+
788
+ # @!attribute li_fat_id
789
+ #
790
+ # @return [String, nil]
791
+ optional :li_fat_id, String, nil?: true
792
+
793
+ # @!attribute msclkid
794
+ #
795
+ # @return [String, nil]
796
+ optional :msclkid, String, nil?: true
797
+
798
+ # @!attribute ndclid
799
+ #
800
+ # @return [String, nil]
801
+ optional :ndclid, String, nil?: true
802
+
803
+ # @!attribute phone_number
804
+ #
805
+ # @return [Object, nil]
806
+ optional :phone_number, OursprivacyIngest::Internal::Type::Unknown
807
+
808
+ # @!attribute qclid
809
+ #
810
+ # @return [String, nil]
811
+ optional :qclid, String, nil?: true
812
+
813
+ # @!attribute rdt_cid
814
+ #
815
+ # @return [String, nil]
816
+ optional :rdt_cid, String, nil?: true
817
+
818
+ # @!attribute referrer
819
+ #
820
+ # @return [String, nil]
821
+ optional :referrer, String, nil?: true
822
+
823
+ # @!attribute sacid
824
+ #
825
+ # @return [String, nil]
826
+ optional :sacid, String, nil?: true
827
+
828
+ # @!attribute sccid
829
+ #
830
+ # @return [String, nil]
831
+ optional :sccid, String, nil?: true
832
+
833
+ # @!attribute sid
834
+ #
835
+ # @return [String, nil]
836
+ optional :sid, String, nil?: true
837
+
838
+ # @!attribute state
839
+ #
840
+ # @return [String, nil]
841
+ optional :state, String, nil?: true
842
+
843
+ # @!attribute ttclid
844
+ #
845
+ # @return [String, nil]
846
+ optional :ttclid, String, nil?: true
847
+
848
+ # @!attribute twclid
849
+ #
850
+ # @return [String, nil]
851
+ optional :twclid, String, nil?: true
852
+
853
+ # @!attribute user_agent
854
+ #
855
+ # @return [String, nil]
856
+ optional :user_agent, String, nil?: true
857
+
858
+ # @!attribute user_agent_full_list
859
+ #
860
+ # @return [String, nil]
861
+ optional :user_agent_full_list, String, nil?: true
862
+
863
+ # @!attribute utm_campaign
864
+ #
865
+ # @return [String, nil]
866
+ optional :utm_campaign, String, nil?: true
867
+
868
+ # @!attribute utm_content
869
+ #
870
+ # @return [String, nil]
871
+ optional :utm_content, String, nil?: true
872
+
873
+ # @!attribute utm_medium
874
+ #
875
+ # @return [String, nil]
876
+ optional :utm_medium, String, nil?: true
877
+
878
+ # @!attribute utm_name
879
+ #
880
+ # @return [String, nil]
881
+ optional :utm_name, String, nil?: true
882
+
883
+ # @!attribute utm_source
884
+ #
885
+ # @return [String, nil]
886
+ optional :utm_source, String, nil?: true
887
+
888
+ # @!attribute utm_term
889
+ #
890
+ # @return [String, nil]
891
+ optional :utm_term, String, nil?: true
892
+
893
+ # @!attribute wbraid
894
+ #
895
+ # @return [String, nil]
896
+ optional :wbraid, String, nil?: true
897
+
898
+ # @!attribute zip
899
+ #
900
+ # @return [Object, nil]
901
+ optional :zip, OursprivacyIngest::Internal::Type::Unknown
902
+
903
+ # @!method initialize(ad_id: nil, adset_id: nil, campaign_id: nil, city: nil, clickid: nil, clid: nil, company_name: nil, consent: nil, country: nil, custom_properties: nil, date_of_birth: nil, dclid: nil, email: nil, epik: nil, external_id: nil, fbc: nil, fbclid: nil, fbp: nil, first_name: nil, gad_source: nil, gbraid: nil, gclid: nil, gender: nil, ip: nil, is_bot: nil, job_title: nil, last_name: nil, li_fat_id: nil, msclkid: nil, ndclid: nil, phone_number: nil, qclid: nil, rdt_cid: nil, referrer: nil, sacid: nil, sccid: nil, sid: nil, state: nil, ttclid: nil, twclid: nil, user_agent: nil, user_agent_full_list: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_name: nil, utm_source: nil, utm_term: nil, wbraid: nil, zip: nil)
904
+ # Properties to set on the visitor. (optional) You can also update these
905
+ # properties via the identify endpoint.
906
+ #
907
+ # @param ad_id [String, nil]
908
+ #
909
+ # @param adset_id [String, nil]
910
+ #
911
+ # @param campaign_id [String, nil]
912
+ #
913
+ # @param city [String, nil]
914
+ #
915
+ # @param clickid [String, nil]
916
+ #
917
+ # @param clid [String, nil]
918
+ #
919
+ # @param company_name [String, nil]
920
+ #
921
+ # @param consent [Hash{Symbol=>Object, nil}, nil]
922
+ #
923
+ # @param country [String, nil]
924
+ #
925
+ # @param custom_properties [Hash{Symbol=>Object, nil}, nil]
926
+ #
927
+ # @param date_of_birth [String, nil]
928
+ #
929
+ # @param dclid [String, nil]
930
+ #
931
+ # @param email [String, nil]
932
+ #
933
+ # @param epik [String, nil]
934
+ #
935
+ # @param external_id [String, nil]
936
+ #
937
+ # @param fbc [String, nil]
938
+ #
939
+ # @param fbclid [String, nil]
940
+ #
941
+ # @param fbp [String, nil]
942
+ #
943
+ # @param first_name [String, nil]
944
+ #
945
+ # @param gad_source [String, nil]
946
+ #
947
+ # @param gbraid [String, nil]
948
+ #
949
+ # @param gclid [String, nil]
950
+ #
951
+ # @param gender [String, nil]
952
+ #
953
+ # @param ip [String, nil] The IP address of the user
954
+ #
955
+ # @param is_bot [Object]
956
+ #
957
+ # @param job_title [String, nil]
958
+ #
959
+ # @param last_name [String, nil]
960
+ #
961
+ # @param li_fat_id [String, nil]
962
+ #
963
+ # @param msclkid [String, nil]
964
+ #
965
+ # @param ndclid [String, nil]
966
+ #
967
+ # @param phone_number [Object]
968
+ #
969
+ # @param qclid [String, nil]
970
+ #
971
+ # @param rdt_cid [String, nil]
972
+ #
973
+ # @param referrer [String, nil]
974
+ #
975
+ # @param sacid [String, nil]
976
+ #
977
+ # @param sccid [String, nil]
978
+ #
979
+ # @param sid [String, nil]
980
+ #
981
+ # @param state [String, nil]
982
+ #
983
+ # @param ttclid [String, nil]
984
+ #
985
+ # @param twclid [String, nil]
986
+ #
987
+ # @param user_agent [String, nil]
988
+ #
989
+ # @param user_agent_full_list [String, nil]
990
+ #
991
+ # @param utm_campaign [String, nil]
992
+ #
993
+ # @param utm_content [String, nil]
994
+ #
995
+ # @param utm_medium [String, nil]
996
+ #
997
+ # @param utm_name [String, nil]
998
+ #
999
+ # @param utm_source [String, nil]
1000
+ #
1001
+ # @param utm_term [String, nil]
1002
+ #
1003
+ # @param wbraid [String, nil]
1004
+ #
1005
+ # @param zip [Object]
1006
+ end
1007
+ end
1008
+ end
1009
+ end