safetykit 0.14.0 → 0.16.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.
@@ -25,12 +25,14 @@ module SafetyKit
25
25
  SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest,
26
26
  SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest,
27
27
  SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest,
28
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest,
28
29
  T::Array[
29
30
  T.any(
30
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact,
31
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded,
32
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount,
33
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount
31
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact,
32
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded,
33
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount,
34
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount,
35
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport
34
36
  )
35
37
  ]
36
38
  )
@@ -46,12 +48,14 @@ module SafetyKit
46
48
  SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::OrHash,
47
49
  SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::OrHash,
48
50
  SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::OrHash,
51
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::OrHash,
49
52
  T::Array[
50
53
  T.any(
51
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::OrHash,
52
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::OrHash,
53
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::OrHash,
54
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::OrHash
54
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::OrHash,
55
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::OrHash,
56
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::OrHash,
57
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::OrHash,
58
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::OrHash
55
59
  )
56
60
  ]
57
61
  ),
@@ -76,12 +80,14 @@ module SafetyKit
76
80
  SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest,
77
81
  SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest,
78
82
  SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest,
83
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest,
79
84
  T::Array[
80
85
  T.any(
81
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact,
82
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded,
83
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount,
84
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount
86
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact,
87
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded,
88
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount,
89
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount,
90
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport
85
91
  )
86
92
  ]
87
93
  ),
@@ -105,8 +111,9 @@ module SafetyKit
105
111
  SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest,
106
112
  SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest,
107
113
  SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest,
114
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest,
108
115
  T::Array[
109
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::Variants
116
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::Variants
110
117
  ]
111
118
  )
112
119
  end
@@ -175,6 +182,14 @@ module SafetyKit
175
182
  end
176
183
  attr_writer :content
177
184
 
185
+ # Your stable identifier for the content involved in this event, such as a
186
+ # message, listing, page, post, profile, or uploaded media item.
187
+ sig { returns(T.nilable(String)) }
188
+ attr_reader :content_id
189
+
190
+ sig { params(content_id: String).void }
191
+ attr_writer :content_id
192
+
178
193
  # Non-PII product context for filtering, segmentation, and debugging. Values may
179
194
  # be strings, numbers, booleans, or arrays of those scalar values.
180
195
  sig do
@@ -240,6 +255,7 @@ module SafetyKit
240
255
  SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::Content::EventImageContent::OrHash
241
256
  )
242
257
  ],
258
+ content_id: String,
243
259
  metadata:
244
260
  T::Hash[
245
261
  Symbol,
@@ -267,6 +283,9 @@ module SafetyKit
267
283
  # listing text, image URLs, and similar content SafetyKit should compare or
268
284
  # analyze.
269
285
  content: nil,
286
+ # Your stable identifier for the content involved in this event, such as a
287
+ # message, listing, page, post, profile, or uploaded media item.
288
+ content_id: nil,
270
289
  # Non-PII product context for filtering, segmentation, and debugging. Values may
271
290
  # be strings, numbers, booleans, or arrays of those scalar values.
272
291
  metadata: nil,
@@ -293,6 +312,7 @@ module SafetyKit
293
312
  SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::Content::EventImageContent
294
313
  )
295
314
  ],
315
+ content_id: String,
296
316
  metadata:
297
317
  T::Hash[
298
318
  Symbol,
@@ -771,6 +791,14 @@ module SafetyKit
771
791
  sig { returns(String) }
772
792
  attr_accessor :user_id
773
793
 
794
+ # Your stable identifier for the content involved in this event, such as a
795
+ # message, listing, page, post, profile, or uploaded media item.
796
+ sig { returns(T.nilable(String)) }
797
+ attr_reader :content_id
798
+
799
+ sig { params(content_id: String).void }
800
+ attr_writer :content_id
801
+
774
802
  # Non-PII product context for filtering, segmentation, and debugging. Values may
775
803
  # be strings, numbers, booleans, or arrays of those scalar values.
776
804
  sig do
@@ -835,6 +863,7 @@ module SafetyKit
835
863
  type:
836
864
  SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::Type::OrSymbol,
837
865
  user_id: String,
866
+ content_id: String,
838
867
  metadata:
839
868
  T::Hash[
840
869
  Symbol,
@@ -859,6 +888,9 @@ module SafetyKit
859
888
  type:,
860
889
  # Your stable canonical identifier for the user or account.
861
890
  user_id:,
891
+ # Your stable identifier for the content involved in this event, such as a
892
+ # message, listing, page, post, profile, or uploaded media item.
893
+ content_id: nil,
862
894
  # Non-PII product context for filtering, segmentation, and debugging. Values may
863
895
  # be strings, numbers, booleans, or arrays of those scalar values.
864
896
  metadata: nil,
@@ -884,6 +916,7 @@ module SafetyKit
884
916
  type:
885
917
  SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::Type::OrSymbol,
886
918
  user_id: String,
919
+ content_id: String,
887
920
  metadata:
888
921
  T::Hash[
889
922
  Symbol,
@@ -1377,6 +1410,14 @@ module SafetyKit
1377
1410
  end
1378
1411
  attr_writer :content
1379
1412
 
1413
+ # Your stable identifier for the content involved in this event, such as a
1414
+ # message, listing, page, post, profile, or uploaded media item.
1415
+ sig { returns(T.nilable(String)) }
1416
+ attr_reader :content_id
1417
+
1418
+ sig { params(content_id: String).void }
1419
+ attr_writer :content_id
1420
+
1380
1421
  # Non-PII product context for filtering, segmentation, and debugging. Values may
1381
1422
  # be strings, numbers, booleans, or arrays of those scalar values.
1382
1423
  sig do
@@ -1441,6 +1482,7 @@ module SafetyKit
1441
1482
  SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::Content::EventImageContent::OrHash
1442
1483
  )
1443
1484
  ],
1485
+ content_id: String,
1444
1486
  metadata:
1445
1487
  T::Hash[
1446
1488
  Symbol,
@@ -1465,6 +1507,9 @@ module SafetyKit
1465
1507
  # listing text, image URLs, and similar content SafetyKit should compare or
1466
1508
  # analyze.
1467
1509
  content: nil,
1510
+ # Your stable identifier for the content involved in this event, such as a
1511
+ # message, listing, page, post, profile, or uploaded media item.
1512
+ content_id: nil,
1468
1513
  # Non-PII product context for filtering, segmentation, and debugging. Values may
1469
1514
  # be strings, numbers, booleans, or arrays of those scalar values.
1470
1515
  metadata: nil,
@@ -1490,6 +1535,7 @@ module SafetyKit
1490
1535
  SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::Content::EventImageContent
1491
1536
  )
1492
1537
  ],
1538
+ content_id: String,
1493
1539
  metadata:
1494
1540
  T::Hash[
1495
1541
  Symbol,
@@ -1983,6 +2029,14 @@ module SafetyKit
1983
2029
  end
1984
2030
  attr_writer :content
1985
2031
 
2032
+ # Your stable identifier for the content involved in this event, such as a
2033
+ # message, listing, page, post, profile, or uploaded media item.
2034
+ sig { returns(T.nilable(String)) }
2035
+ attr_reader :content_id
2036
+
2037
+ sig { params(content_id: String).void }
2038
+ attr_writer :content_id
2039
+
1986
2040
  # Non-PII product context for filtering, segmentation, and debugging. Values may
1987
2041
  # be strings, numbers, booleans, or arrays of those scalar values.
1988
2042
  sig do
@@ -2048,6 +2102,7 @@ module SafetyKit
2048
2102
  SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::Content::EventImageContent::OrHash
2049
2103
  )
2050
2104
  ],
2105
+ content_id: String,
2051
2106
  metadata:
2052
2107
  T::Hash[
2053
2108
  Symbol,
@@ -2072,6 +2127,9 @@ module SafetyKit
2072
2127
  # listing text, image URLs, and similar content SafetyKit should compare or
2073
2128
  # analyze.
2074
2129
  content: nil,
2130
+ # Your stable identifier for the content involved in this event, such as a
2131
+ # message, listing, page, post, profile, or uploaded media item.
2132
+ content_id: nil,
2075
2133
  # Non-PII product context for filtering, segmentation, and debugging. Values may
2076
2134
  # be strings, numbers, booleans, or arrays of those scalar values.
2077
2135
  metadata: nil,
@@ -2097,6 +2155,7 @@ module SafetyKit
2097
2155
  SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::Content::EventImageContent
2098
2156
  )
2099
2157
  ],
2158
+ content_id: String,
2100
2159
  metadata:
2101
2160
  T::Hash[
2102
2161
  Symbol,
@@ -2531,170 +2590,1444 @@ module SafetyKit
2531
2590
  end
2532
2591
  end
2533
2592
 
2534
- # A user contacts, transacts with, or otherwise interacts with another user.
2535
- module UnionMember4
2536
- extend SafetyKit::Internal::Type::Union
2537
-
2538
- Variants =
2593
+ class UserReportEventRequest < SafetyKit::Internal::Type::BaseModel
2594
+ OrHash =
2539
2595
  T.type_alias do
2540
2596
  T.any(
2541
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact,
2542
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded,
2543
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount,
2544
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount
2597
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest,
2598
+ SafetyKit::Internal::AnyHash
2545
2599
  )
2546
2600
  end
2547
2601
 
2548
- class UserContact < SafetyKit::Internal::Type::BaseModel
2549
- OrHash =
2550
- T.type_alias do
2551
- T.any(
2552
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact,
2553
- SafetyKit::Internal::AnyHash
2554
- )
2555
- end
2602
+ # Stable, low-cardinality product action name. Use snake_case and put dynamic
2603
+ # values in typed fields, content, resources_used, or metadata.
2604
+ sig { returns(String) }
2605
+ attr_accessor :event_name
2556
2606
 
2557
- # Stable, low-cardinality product action name. Use snake_case and put dynamic
2558
- # values in typed fields, content, resources_used, or metadata.
2559
- sig { returns(String) }
2560
- attr_accessor :event_name
2607
+ # One or more label categories supplied with the report.
2608
+ sig do
2609
+ returns(
2610
+ T::Array[
2611
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Label
2612
+ ]
2613
+ )
2614
+ end
2615
+ attr_accessor :labels
2561
2616
 
2562
- # Your stable canonical identifier for the other user in a user-to-user
2563
- # interaction.
2564
- sig { returns(String) }
2565
- attr_accessor :target_user_id
2617
+ # The time the event occurred in your system, as an ISO 8601 datetime string.
2618
+ sig { returns(Time) }
2619
+ attr_accessor :timestamp
2566
2620
 
2567
- # The time the event occurred in your system, as an ISO 8601 datetime string.
2568
- sig { returns(Time) }
2569
- attr_accessor :timestamp
2621
+ sig do
2622
+ returns(
2623
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Type::OrSymbol
2624
+ )
2625
+ end
2626
+ attr_accessor :type
2570
2627
 
2571
- sig { returns(Symbol) }
2572
- attr_accessor :type
2628
+ # Your stable canonical identifier for the user or account.
2629
+ sig { returns(String) }
2630
+ attr_accessor :user_id
2573
2631
 
2574
- # Your stable canonical identifier for the user or account.
2575
- sig { returns(String) }
2576
- attr_accessor :user_id
2632
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
2633
+ # listing text, image URLs, and similar content SafetyKit should compare or
2634
+ # analyze.
2635
+ sig do
2636
+ returns(
2637
+ T.nilable(
2638
+ T::Array[
2639
+ T.any(
2640
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent,
2641
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent
2642
+ )
2643
+ ]
2644
+ )
2645
+ )
2646
+ end
2647
+ attr_reader :content
2577
2648
 
2578
- # User-authored or user-uploaded content parts. Use this for message bodies, bios,
2579
- # listing text, image URLs, and similar content SafetyKit should compare or
2580
- # analyze.
2581
- sig do
2582
- returns(
2583
- T.nilable(
2584
- T::Array[
2585
- T.any(
2586
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent,
2587
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent
2588
- )
2589
- ]
2590
- )
2649
+ sig do
2650
+ params(
2651
+ content:
2652
+ T::Array[
2653
+ T.any(
2654
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::OrHash,
2655
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::OrHash
2656
+ )
2657
+ ]
2658
+ ).void
2659
+ end
2660
+ attr_writer :content
2661
+
2662
+ # Your stable identifier for the content involved in this event, such as a
2663
+ # message, listing, page, post, profile, or uploaded media item.
2664
+ sig { returns(T.nilable(String)) }
2665
+ attr_reader :content_id
2666
+
2667
+ sig { params(content_id: String).void }
2668
+ attr_writer :content_id
2669
+
2670
+ # Non-PII product context for filtering, segmentation, and debugging. Values may
2671
+ # be strings, numbers, booleans, or arrays of those scalar values.
2672
+ sig do
2673
+ returns(
2674
+ T.nilable(
2675
+ T::Hash[
2676
+ Symbol,
2677
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::Variants
2678
+ ]
2591
2679
  )
2592
- end
2593
- attr_reader :content
2680
+ )
2681
+ end
2682
+ attr_reader :metadata
2594
2683
 
2595
- sig do
2596
- params(
2597
- content:
2598
- T::Array[
2599
- T.any(
2600
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::OrHash,
2601
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::OrHash
2602
- )
2603
- ]
2604
- ).void
2605
- end
2606
- attr_writer :content
2684
+ sig do
2685
+ params(
2686
+ metadata:
2687
+ T::Hash[
2688
+ Symbol,
2689
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::Variants
2690
+ ]
2691
+ ).void
2692
+ end
2693
+ attr_writer :metadata
2607
2694
 
2608
- # Non-PII product context for filtering, segmentation, and debugging. Values may
2609
- # be strings, numbers, booleans, or arrays of those scalar values.
2610
- sig do
2611
- returns(
2612
- T.nilable(
2613
- T::Hash[
2614
- Symbol,
2615
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::Variants
2616
- ]
2617
- )
2695
+ # Reusable resources observed during the event. Use this for emails, phone
2696
+ # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
2697
+ # identifiers.
2698
+ sig do
2699
+ returns(
2700
+ T.nilable(
2701
+ T::Array[
2702
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed
2703
+ ]
2618
2704
  )
2619
- end
2620
- attr_reader :metadata
2705
+ )
2706
+ end
2707
+ attr_reader :resources_used
2621
2708
 
2622
- sig do
2623
- params(
2624
- metadata:
2625
- T::Hash[
2626
- Symbol,
2627
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::Variants
2628
- ]
2629
- ).void
2630
- end
2631
- attr_writer :metadata
2709
+ sig do
2710
+ params(
2711
+ resources_used:
2712
+ T::Array[
2713
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::OrHash
2714
+ ]
2715
+ ).void
2716
+ end
2717
+ attr_writer :resources_used
2718
+
2719
+ # Your stable identifier for the user-owned content that is the target of a
2720
+ # report.
2721
+ sig { returns(T.nilable(String)) }
2722
+ attr_reader :target_content_id
2632
2723
 
2724
+ sig { params(target_content_id: String).void }
2725
+ attr_writer :target_content_id
2726
+
2727
+ # Your stable canonical identifier for the user being reported.
2728
+ sig { returns(T.nilable(String)) }
2729
+ attr_reader :target_user_id
2730
+
2731
+ sig { params(target_user_id: String).void }
2732
+ attr_writer :target_user_id
2733
+
2734
+ # A user-submitted report. Use user_id for the reporter, content and content_id
2735
+ # for the report itself, and target_user_id or target_content_id for what was
2736
+ # reported.
2737
+ sig do
2738
+ params(
2739
+ event_name: String,
2740
+ labels:
2741
+ T::Array[
2742
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Label::OrHash
2743
+ ],
2744
+ timestamp: Time,
2745
+ type:
2746
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Type::OrSymbol,
2747
+ user_id: String,
2748
+ content:
2749
+ T::Array[
2750
+ T.any(
2751
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::OrHash,
2752
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::OrHash
2753
+ )
2754
+ ],
2755
+ content_id: String,
2756
+ metadata:
2757
+ T::Hash[
2758
+ Symbol,
2759
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::Variants
2760
+ ],
2761
+ resources_used:
2762
+ T::Array[
2763
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::OrHash
2764
+ ],
2765
+ target_content_id: String,
2766
+ target_user_id: String
2767
+ ).returns(T.attached_class)
2768
+ end
2769
+ def self.new(
2770
+ # Stable, low-cardinality product action name. Use snake_case and put dynamic
2771
+ # values in typed fields, content, resources_used, or metadata.
2772
+ event_name:,
2773
+ # One or more label categories supplied with the report.
2774
+ labels:,
2775
+ # The time the event occurred in your system, as an ISO 8601 datetime string.
2776
+ timestamp:,
2777
+ type:,
2778
+ # Your stable canonical identifier for the user or account.
2779
+ user_id:,
2780
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
2781
+ # listing text, image URLs, and similar content SafetyKit should compare or
2782
+ # analyze.
2783
+ content: nil,
2784
+ # Your stable identifier for the content involved in this event, such as a
2785
+ # message, listing, page, post, profile, or uploaded media item.
2786
+ content_id: nil,
2787
+ # Non-PII product context for filtering, segmentation, and debugging. Values may
2788
+ # be strings, numbers, booleans, or arrays of those scalar values.
2789
+ metadata: nil,
2633
2790
  # Reusable resources observed during the event. Use this for emails, phone
2634
2791
  # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
2635
2792
  # identifiers.
2636
- sig do
2637
- returns(
2638
- T.nilable(
2639
- T::Array[
2640
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::ResourcesUsed
2641
- ]
2642
- )
2643
- )
2644
- end
2645
- attr_reader :resources_used
2646
-
2647
- sig do
2648
- params(
2649
- resources_used:
2650
- T::Array[
2651
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::ResourcesUsed::OrHash
2652
- ]
2653
- ).void
2654
- end
2655
- attr_writer :resources_used
2793
+ resources_used: nil,
2794
+ # Your stable identifier for the user-owned content that is the target of a
2795
+ # report.
2796
+ target_content_id: nil,
2797
+ # Your stable canonical identifier for the user being reported.
2798
+ target_user_id: nil
2799
+ )
2800
+ end
2656
2801
 
2657
- # A user contacts, transacts with, or otherwise interacts with another user.
2658
- sig do
2659
- params(
2802
+ sig do
2803
+ override.returns(
2804
+ {
2660
2805
  event_name: String,
2661
- target_user_id: String,
2806
+ labels:
2807
+ T::Array[
2808
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Label
2809
+ ],
2662
2810
  timestamp: Time,
2811
+ type:
2812
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Type::OrSymbol,
2663
2813
  user_id: String,
2664
2814
  content:
2665
2815
  T::Array[
2666
2816
  T.any(
2667
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::OrHash,
2668
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::OrHash
2817
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent,
2818
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent
2669
2819
  )
2670
2820
  ],
2821
+ content_id: String,
2671
2822
  metadata:
2672
2823
  T::Hash[
2673
2824
  Symbol,
2674
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::Variants
2825
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::Variants
2675
2826
  ],
2676
2827
  resources_used:
2677
2828
  T::Array[
2678
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::ResourcesUsed::OrHash
2829
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed
2679
2830
  ],
2680
- type: Symbol
2681
- ).returns(T.attached_class)
2682
- end
2683
- def self.new(
2684
- # Stable, low-cardinality product action name. Use snake_case and put dynamic
2685
- # values in typed fields, content, resources_used, or metadata.
2686
- event_name:,
2687
- # Your stable canonical identifier for the other user in a user-to-user
2688
- # interaction.
2689
- target_user_id:,
2690
- # The time the event occurred in your system, as an ISO 8601 datetime string.
2691
- timestamp:,
2692
- # Your stable canonical identifier for the user or account.
2693
- user_id:,
2694
- # User-authored or user-uploaded content parts. Use this for message bodies, bios,
2695
- # listing text, image URLs, and similar content SafetyKit should compare or
2696
- # analyze.
2831
+ target_content_id: String,
2832
+ target_user_id: String
2833
+ }
2834
+ )
2835
+ end
2836
+ def to_hash
2837
+ end
2838
+
2839
+ class Label < SafetyKit::Internal::Type::BaseModel
2840
+ OrHash =
2841
+ T.type_alias do
2842
+ T.any(
2843
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Label,
2844
+ SafetyKit::Internal::AnyHash
2845
+ )
2846
+ end
2847
+
2848
+ # Stable snake_case report label category.
2849
+ sig { returns(String) }
2850
+ attr_accessor :label
2851
+
2852
+ # Label category supplied with a user report.
2853
+ sig { params(label: String).returns(T.attached_class) }
2854
+ def self.new(
2855
+ # Stable snake_case report label category.
2856
+ label:
2857
+ )
2858
+ end
2859
+
2860
+ sig { override.returns({ label: String }) }
2861
+ def to_hash
2862
+ end
2863
+ end
2864
+
2865
+ module Type
2866
+ extend SafetyKit::Internal::Type::Enum
2867
+
2868
+ TaggedSymbol =
2869
+ T.type_alias do
2870
+ T.all(
2871
+ Symbol,
2872
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Type
2873
+ )
2874
+ end
2875
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2876
+
2877
+ USER_REPORT =
2878
+ T.let(
2879
+ :user_report,
2880
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Type::TaggedSymbol
2881
+ )
2882
+
2883
+ sig do
2884
+ override.returns(
2885
+ T::Array[
2886
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Type::TaggedSymbol
2887
+ ]
2888
+ )
2889
+ end
2890
+ def self.values
2891
+ end
2892
+ end
2893
+
2894
+ # User-authored text content associated with an event.
2895
+ module Content
2896
+ extend SafetyKit::Internal::Type::Union
2897
+
2898
+ Variants =
2899
+ T.type_alias do
2900
+ T.any(
2901
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent,
2902
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent
2903
+ )
2904
+ end
2905
+
2906
+ class EventTextContent < SafetyKit::Internal::Type::BaseModel
2907
+ OrHash =
2908
+ T.type_alias do
2909
+ T.any(
2910
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent,
2911
+ SafetyKit::Internal::AnyHash
2912
+ )
2913
+ end
2914
+
2915
+ # User-authored text SafetyKit should compare or analyze.
2916
+ sig { returns(String) }
2917
+ attr_accessor :text
2918
+
2919
+ # Text content part.
2920
+ sig do
2921
+ returns(
2922
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::Type::OrSymbol
2923
+ )
2924
+ end
2925
+ attr_accessor :type
2926
+
2927
+ # Stable field key for this content part.
2928
+ sig { returns(T.nilable(String)) }
2929
+ attr_reader :key
2930
+
2931
+ sig { params(key: String).void }
2932
+ attr_writer :key
2933
+
2934
+ # User-authored text content associated with an event.
2935
+ sig do
2936
+ params(
2937
+ text: String,
2938
+ type:
2939
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::Type::OrSymbol,
2940
+ key: String
2941
+ ).returns(T.attached_class)
2942
+ end
2943
+ def self.new(
2944
+ # User-authored text SafetyKit should compare or analyze.
2945
+ text:,
2946
+ # Text content part.
2947
+ type:,
2948
+ # Stable field key for this content part.
2949
+ key: nil
2950
+ )
2951
+ end
2952
+
2953
+ sig do
2954
+ override.returns(
2955
+ {
2956
+ text: String,
2957
+ type:
2958
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::Type::OrSymbol,
2959
+ key: String
2960
+ }
2961
+ )
2962
+ end
2963
+ def to_hash
2964
+ end
2965
+
2966
+ # Text content part.
2967
+ module Type
2968
+ extend SafetyKit::Internal::Type::Enum
2969
+
2970
+ TaggedSymbol =
2971
+ T.type_alias do
2972
+ T.all(
2973
+ Symbol,
2974
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::Type
2975
+ )
2976
+ end
2977
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2978
+
2979
+ TEXT =
2980
+ T.let(
2981
+ :text,
2982
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::Type::TaggedSymbol
2983
+ )
2984
+
2985
+ sig do
2986
+ override.returns(
2987
+ T::Array[
2988
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventTextContent::Type::TaggedSymbol
2989
+ ]
2990
+ )
2991
+ end
2992
+ def self.values
2993
+ end
2994
+ end
2995
+ end
2996
+
2997
+ class EventImageContent < SafetyKit::Internal::Type::BaseModel
2998
+ OrHash =
2999
+ T.type_alias do
3000
+ T.any(
3001
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent,
3002
+ SafetyKit::Internal::AnyHash
3003
+ )
3004
+ end
3005
+
3006
+ # Image source information.
3007
+ sig do
3008
+ returns(
3009
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source
3010
+ )
3011
+ end
3012
+ attr_reader :source
3013
+
3014
+ sig do
3015
+ params(
3016
+ source:
3017
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::OrHash
3018
+ ).void
3019
+ end
3020
+ attr_writer :source
3021
+
3022
+ # Image content part.
3023
+ sig do
3024
+ returns(
3025
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Type::OrSymbol
3026
+ )
3027
+ end
3028
+ attr_accessor :type
3029
+
3030
+ # Stable field key for this content part.
3031
+ sig { returns(T.nilable(String)) }
3032
+ attr_reader :key
3033
+
3034
+ sig { params(key: String).void }
3035
+ attr_writer :key
3036
+
3037
+ # User-uploaded image content associated with an event.
3038
+ sig do
3039
+ params(
3040
+ source:
3041
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::OrHash,
3042
+ type:
3043
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Type::OrSymbol,
3044
+ key: String
3045
+ ).returns(T.attached_class)
3046
+ end
3047
+ def self.new(
3048
+ # Image source information.
3049
+ source:,
3050
+ # Image content part.
3051
+ type:,
3052
+ # Stable field key for this content part.
3053
+ key: nil
3054
+ )
3055
+ end
3056
+
3057
+ sig do
3058
+ override.returns(
3059
+ {
3060
+ source:
3061
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source,
3062
+ type:
3063
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Type::OrSymbol,
3064
+ key: String
3065
+ }
3066
+ )
3067
+ end
3068
+ def to_hash
3069
+ end
3070
+
3071
+ class Source < SafetyKit::Internal::Type::BaseModel
3072
+ OrHash =
3073
+ T.type_alias do
3074
+ T.any(
3075
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source,
3076
+ SafetyKit::Internal::AnyHash
3077
+ )
3078
+ end
3079
+
3080
+ # URL image source.
3081
+ sig do
3082
+ returns(
3083
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::Type::OrSymbol
3084
+ )
3085
+ end
3086
+ attr_accessor :type
3087
+
3088
+ # URL of the image SafetyKit should compare or analyze.
3089
+ sig { returns(String) }
3090
+ attr_accessor :url
3091
+
3092
+ # Image source information.
3093
+ sig do
3094
+ params(
3095
+ type:
3096
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::Type::OrSymbol,
3097
+ url: String
3098
+ ).returns(T.attached_class)
3099
+ end
3100
+ def self.new(
3101
+ # URL image source.
3102
+ type:,
3103
+ # URL of the image SafetyKit should compare or analyze.
3104
+ url:
3105
+ )
3106
+ end
3107
+
3108
+ sig do
3109
+ override.returns(
3110
+ {
3111
+ type:
3112
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::Type::OrSymbol,
3113
+ url: String
3114
+ }
3115
+ )
3116
+ end
3117
+ def to_hash
3118
+ end
3119
+
3120
+ # URL image source.
3121
+ module Type
3122
+ extend SafetyKit::Internal::Type::Enum
3123
+
3124
+ TaggedSymbol =
3125
+ T.type_alias do
3126
+ T.all(
3127
+ Symbol,
3128
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::Type
3129
+ )
3130
+ end
3131
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3132
+
3133
+ URL =
3134
+ T.let(
3135
+ :url,
3136
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::Type::TaggedSymbol
3137
+ )
3138
+
3139
+ sig do
3140
+ override.returns(
3141
+ T::Array[
3142
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Source::Type::TaggedSymbol
3143
+ ]
3144
+ )
3145
+ end
3146
+ def self.values
3147
+ end
3148
+ end
3149
+ end
3150
+
3151
+ # Image content part.
3152
+ module Type
3153
+ extend SafetyKit::Internal::Type::Enum
3154
+
3155
+ TaggedSymbol =
3156
+ T.type_alias do
3157
+ T.all(
3158
+ Symbol,
3159
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Type
3160
+ )
3161
+ end
3162
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3163
+
3164
+ IMAGE =
3165
+ T.let(
3166
+ :image,
3167
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Type::TaggedSymbol
3168
+ )
3169
+
3170
+ sig do
3171
+ override.returns(
3172
+ T::Array[
3173
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::EventImageContent::Type::TaggedSymbol
3174
+ ]
3175
+ )
3176
+ end
3177
+ def self.values
3178
+ end
3179
+ end
3180
+ end
3181
+
3182
+ sig do
3183
+ override.returns(
3184
+ T::Array[
3185
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Content::Variants
3186
+ ]
3187
+ )
3188
+ end
3189
+ def self.variants
3190
+ end
3191
+ end
3192
+
3193
+ module Metadata
3194
+ extend SafetyKit::Internal::Type::Union
3195
+
3196
+ Variants =
3197
+ T.type_alias do
3198
+ T.any(
3199
+ String,
3200
+ Float,
3201
+ T::Boolean,
3202
+ T::Array[
3203
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::UnionMember3::Variants
3204
+ ]
3205
+ )
3206
+ end
3207
+
3208
+ module UnionMember3
3209
+ extend SafetyKit::Internal::Type::Union
3210
+
3211
+ Variants = T.type_alias { T.any(String, Float, T::Boolean) }
3212
+
3213
+ sig do
3214
+ override.returns(
3215
+ T::Array[
3216
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::UnionMember3::Variants
3217
+ ]
3218
+ )
3219
+ end
3220
+ def self.variants
3221
+ end
3222
+ end
3223
+
3224
+ sig do
3225
+ override.returns(
3226
+ T::Array[
3227
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::Variants
3228
+ ]
3229
+ )
3230
+ end
3231
+ def self.variants
3232
+ end
3233
+
3234
+ UnionMember3Array =
3235
+ T.let(
3236
+ SafetyKit::Internal::Type::ArrayOf[
3237
+ union:
3238
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::Metadata::UnionMember3
3239
+ ],
3240
+ SafetyKit::Internal::Type::Converter
3241
+ )
3242
+ end
3243
+
3244
+ class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
3245
+ OrHash =
3246
+ T.type_alias do
3247
+ T.any(
3248
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed,
3249
+ SafetyKit::Internal::AnyHash
3250
+ )
3251
+ end
3252
+
3253
+ # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3254
+ # youtube, linkedin, or another stable snake_case identifier.
3255
+ sig { returns(String) }
3256
+ attr_accessor :type
3257
+
3258
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
3259
+ # value, not the raw value. When type is url, this must be a valid URL.
3260
+ sig { returns(String) }
3261
+ attr_accessor :value
3262
+
3263
+ # Real-world or account resource used during the event, such as an email, phone
3264
+ # number, address, URL, social handle, or payment identifier.
3265
+ sig do
3266
+ params(type: String, value: String).returns(T.attached_class)
3267
+ end
3268
+ def self.new(
3269
+ # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3270
+ # youtube, linkedin, or another stable snake_case identifier.
3271
+ type:,
3272
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
3273
+ # value, not the raw value. When type is url, this must be a valid URL.
3274
+ value:
3275
+ )
3276
+ end
3277
+
3278
+ sig { override.returns({ type: String, value: String }) }
3279
+ def to_hash
3280
+ end
3281
+ end
3282
+ end
3283
+
3284
+ # A user contacts, transacts with, or otherwise interacts with another user.
3285
+ module UnionMember5
3286
+ extend SafetyKit::Internal::Type::Union
3287
+
3288
+ Variants =
3289
+ T.type_alias do
3290
+ T.any(
3291
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact,
3292
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded,
3293
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount,
3294
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount,
3295
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport
3296
+ )
3297
+ end
3298
+
3299
+ class UserContact < SafetyKit::Internal::Type::BaseModel
3300
+ OrHash =
3301
+ T.type_alias do
3302
+ T.any(
3303
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact,
3304
+ SafetyKit::Internal::AnyHash
3305
+ )
3306
+ end
3307
+
3308
+ # Stable, low-cardinality product action name. Use snake_case and put dynamic
3309
+ # values in typed fields, content, resources_used, or metadata.
3310
+ sig { returns(String) }
3311
+ attr_accessor :event_name
3312
+
3313
+ # Your stable canonical identifier for the other user in a user-to-user
3314
+ # interaction.
3315
+ sig { returns(String) }
3316
+ attr_accessor :target_user_id
3317
+
3318
+ # The time the event occurred in your system, as an ISO 8601 datetime string.
3319
+ sig { returns(Time) }
3320
+ attr_accessor :timestamp
3321
+
3322
+ sig { returns(Symbol) }
3323
+ attr_accessor :type
3324
+
3325
+ # Your stable canonical identifier for the user or account.
3326
+ sig { returns(String) }
3327
+ attr_accessor :user_id
3328
+
3329
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
3330
+ # listing text, image URLs, and similar content SafetyKit should compare or
3331
+ # analyze.
3332
+ sig do
3333
+ returns(
3334
+ T.nilable(
3335
+ T::Array[
3336
+ T.any(
3337
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent,
3338
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent
3339
+ )
3340
+ ]
3341
+ )
3342
+ )
3343
+ end
3344
+ attr_reader :content
3345
+
3346
+ sig do
3347
+ params(
3348
+ content:
3349
+ T::Array[
3350
+ T.any(
3351
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::OrHash,
3352
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::OrHash
3353
+ )
3354
+ ]
3355
+ ).void
3356
+ end
3357
+ attr_writer :content
3358
+
3359
+ # Your stable identifier for the content involved in this event, such as a
3360
+ # message, listing, page, post, profile, or uploaded media item.
3361
+ sig { returns(T.nilable(String)) }
3362
+ attr_reader :content_id
3363
+
3364
+ sig { params(content_id: String).void }
3365
+ attr_writer :content_id
3366
+
3367
+ # Non-PII product context for filtering, segmentation, and debugging. Values may
3368
+ # be strings, numbers, booleans, or arrays of those scalar values.
3369
+ sig do
3370
+ returns(
3371
+ T.nilable(
3372
+ T::Hash[
3373
+ Symbol,
3374
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::Variants
3375
+ ]
3376
+ )
3377
+ )
3378
+ end
3379
+ attr_reader :metadata
3380
+
3381
+ sig do
3382
+ params(
3383
+ metadata:
3384
+ T::Hash[
3385
+ Symbol,
3386
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::Variants
3387
+ ]
3388
+ ).void
3389
+ end
3390
+ attr_writer :metadata
3391
+
3392
+ # Reusable resources observed during the event. Use this for emails, phone
3393
+ # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3394
+ # identifiers.
3395
+ sig do
3396
+ returns(
3397
+ T.nilable(
3398
+ T::Array[
3399
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::ResourcesUsed
3400
+ ]
3401
+ )
3402
+ )
3403
+ end
3404
+ attr_reader :resources_used
3405
+
3406
+ sig do
3407
+ params(
3408
+ resources_used:
3409
+ T::Array[
3410
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::ResourcesUsed::OrHash
3411
+ ]
3412
+ ).void
3413
+ end
3414
+ attr_writer :resources_used
3415
+
3416
+ # A user contacts, transacts with, or otherwise interacts with another user.
3417
+ sig do
3418
+ params(
3419
+ event_name: String,
3420
+ target_user_id: String,
3421
+ timestamp: Time,
3422
+ user_id: String,
3423
+ content:
3424
+ T::Array[
3425
+ T.any(
3426
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::OrHash,
3427
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::OrHash
3428
+ )
3429
+ ],
3430
+ content_id: String,
3431
+ metadata:
3432
+ T::Hash[
3433
+ Symbol,
3434
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::Variants
3435
+ ],
3436
+ resources_used:
3437
+ T::Array[
3438
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::ResourcesUsed::OrHash
3439
+ ],
3440
+ type: Symbol
3441
+ ).returns(T.attached_class)
3442
+ end
3443
+ def self.new(
3444
+ # Stable, low-cardinality product action name. Use snake_case and put dynamic
3445
+ # values in typed fields, content, resources_used, or metadata.
3446
+ event_name:,
3447
+ # Your stable canonical identifier for the other user in a user-to-user
3448
+ # interaction.
3449
+ target_user_id:,
3450
+ # The time the event occurred in your system, as an ISO 8601 datetime string.
3451
+ timestamp:,
3452
+ # Your stable canonical identifier for the user or account.
3453
+ user_id:,
3454
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
3455
+ # listing text, image URLs, and similar content SafetyKit should compare or
3456
+ # analyze.
2697
3457
  content: nil,
3458
+ # Your stable identifier for the content involved in this event, such as a
3459
+ # message, listing, page, post, profile, or uploaded media item.
3460
+ content_id: nil,
3461
+ # Non-PII product context for filtering, segmentation, and debugging. Values may
3462
+ # be strings, numbers, booleans, or arrays of those scalar values.
3463
+ metadata: nil,
3464
+ # Reusable resources observed during the event. Use this for emails, phone
3465
+ # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3466
+ # identifiers.
3467
+ resources_used: nil,
3468
+ type: :user_contact
3469
+ )
3470
+ end
3471
+
3472
+ sig do
3473
+ override.returns(
3474
+ {
3475
+ event_name: String,
3476
+ target_user_id: String,
3477
+ timestamp: Time,
3478
+ type: Symbol,
3479
+ user_id: String,
3480
+ content:
3481
+ T::Array[
3482
+ T.any(
3483
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent,
3484
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent
3485
+ )
3486
+ ],
3487
+ content_id: String,
3488
+ metadata:
3489
+ T::Hash[
3490
+ Symbol,
3491
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::Variants
3492
+ ],
3493
+ resources_used:
3494
+ T::Array[
3495
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::ResourcesUsed
3496
+ ]
3497
+ }
3498
+ )
3499
+ end
3500
+ def to_hash
3501
+ end
3502
+
3503
+ # User-authored text content associated with an event.
3504
+ module Content
3505
+ extend SafetyKit::Internal::Type::Union
3506
+
3507
+ Variants =
3508
+ T.type_alias do
3509
+ T.any(
3510
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent,
3511
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent
3512
+ )
3513
+ end
3514
+
3515
+ class EventTextContent < SafetyKit::Internal::Type::BaseModel
3516
+ OrHash =
3517
+ T.type_alias do
3518
+ T.any(
3519
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent,
3520
+ SafetyKit::Internal::AnyHash
3521
+ )
3522
+ end
3523
+
3524
+ # User-authored text SafetyKit should compare or analyze.
3525
+ sig { returns(String) }
3526
+ attr_accessor :text
3527
+
3528
+ # Text content part.
3529
+ sig do
3530
+ returns(
3531
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::Type::OrSymbol
3532
+ )
3533
+ end
3534
+ attr_accessor :type
3535
+
3536
+ # Stable field key for this content part.
3537
+ sig { returns(T.nilable(String)) }
3538
+ attr_reader :key
3539
+
3540
+ sig { params(key: String).void }
3541
+ attr_writer :key
3542
+
3543
+ # User-authored text content associated with an event.
3544
+ sig do
3545
+ params(
3546
+ text: String,
3547
+ type:
3548
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::Type::OrSymbol,
3549
+ key: String
3550
+ ).returns(T.attached_class)
3551
+ end
3552
+ def self.new(
3553
+ # User-authored text SafetyKit should compare or analyze.
3554
+ text:,
3555
+ # Text content part.
3556
+ type:,
3557
+ # Stable field key for this content part.
3558
+ key: nil
3559
+ )
3560
+ end
3561
+
3562
+ sig do
3563
+ override.returns(
3564
+ {
3565
+ text: String,
3566
+ type:
3567
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::Type::OrSymbol,
3568
+ key: String
3569
+ }
3570
+ )
3571
+ end
3572
+ def to_hash
3573
+ end
3574
+
3575
+ # Text content part.
3576
+ module Type
3577
+ extend SafetyKit::Internal::Type::Enum
3578
+
3579
+ TaggedSymbol =
3580
+ T.type_alias do
3581
+ T.all(
3582
+ Symbol,
3583
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::Type
3584
+ )
3585
+ end
3586
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3587
+
3588
+ TEXT =
3589
+ T.let(
3590
+ :text,
3591
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::Type::TaggedSymbol
3592
+ )
3593
+
3594
+ sig do
3595
+ override.returns(
3596
+ T::Array[
3597
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventTextContent::Type::TaggedSymbol
3598
+ ]
3599
+ )
3600
+ end
3601
+ def self.values
3602
+ end
3603
+ end
3604
+ end
3605
+
3606
+ class EventImageContent < SafetyKit::Internal::Type::BaseModel
3607
+ OrHash =
3608
+ T.type_alias do
3609
+ T.any(
3610
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent,
3611
+ SafetyKit::Internal::AnyHash
3612
+ )
3613
+ end
3614
+
3615
+ # Image source information.
3616
+ sig do
3617
+ returns(
3618
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source
3619
+ )
3620
+ end
3621
+ attr_reader :source
3622
+
3623
+ sig do
3624
+ params(
3625
+ source:
3626
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::OrHash
3627
+ ).void
3628
+ end
3629
+ attr_writer :source
3630
+
3631
+ # Image content part.
3632
+ sig do
3633
+ returns(
3634
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Type::OrSymbol
3635
+ )
3636
+ end
3637
+ attr_accessor :type
3638
+
3639
+ # Stable field key for this content part.
3640
+ sig { returns(T.nilable(String)) }
3641
+ attr_reader :key
3642
+
3643
+ sig { params(key: String).void }
3644
+ attr_writer :key
3645
+
3646
+ # User-uploaded image content associated with an event.
3647
+ sig do
3648
+ params(
3649
+ source:
3650
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::OrHash,
3651
+ type:
3652
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Type::OrSymbol,
3653
+ key: String
3654
+ ).returns(T.attached_class)
3655
+ end
3656
+ def self.new(
3657
+ # Image source information.
3658
+ source:,
3659
+ # Image content part.
3660
+ type:,
3661
+ # Stable field key for this content part.
3662
+ key: nil
3663
+ )
3664
+ end
3665
+
3666
+ sig do
3667
+ override.returns(
3668
+ {
3669
+ source:
3670
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source,
3671
+ type:
3672
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Type::OrSymbol,
3673
+ key: String
3674
+ }
3675
+ )
3676
+ end
3677
+ def to_hash
3678
+ end
3679
+
3680
+ class Source < SafetyKit::Internal::Type::BaseModel
3681
+ OrHash =
3682
+ T.type_alias do
3683
+ T.any(
3684
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source,
3685
+ SafetyKit::Internal::AnyHash
3686
+ )
3687
+ end
3688
+
3689
+ # URL image source.
3690
+ sig do
3691
+ returns(
3692
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::Type::OrSymbol
3693
+ )
3694
+ end
3695
+ attr_accessor :type
3696
+
3697
+ # URL of the image SafetyKit should compare or analyze.
3698
+ sig { returns(String) }
3699
+ attr_accessor :url
3700
+
3701
+ # Image source information.
3702
+ sig do
3703
+ params(
3704
+ type:
3705
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::Type::OrSymbol,
3706
+ url: String
3707
+ ).returns(T.attached_class)
3708
+ end
3709
+ def self.new(
3710
+ # URL image source.
3711
+ type:,
3712
+ # URL of the image SafetyKit should compare or analyze.
3713
+ url:
3714
+ )
3715
+ end
3716
+
3717
+ sig do
3718
+ override.returns(
3719
+ {
3720
+ type:
3721
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::Type::OrSymbol,
3722
+ url: String
3723
+ }
3724
+ )
3725
+ end
3726
+ def to_hash
3727
+ end
3728
+
3729
+ # URL image source.
3730
+ module Type
3731
+ extend SafetyKit::Internal::Type::Enum
3732
+
3733
+ TaggedSymbol =
3734
+ T.type_alias do
3735
+ T.all(
3736
+ Symbol,
3737
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::Type
3738
+ )
3739
+ end
3740
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3741
+
3742
+ URL =
3743
+ T.let(
3744
+ :url,
3745
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::Type::TaggedSymbol
3746
+ )
3747
+
3748
+ sig do
3749
+ override.returns(
3750
+ T::Array[
3751
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Source::Type::TaggedSymbol
3752
+ ]
3753
+ )
3754
+ end
3755
+ def self.values
3756
+ end
3757
+ end
3758
+ end
3759
+
3760
+ # Image content part.
3761
+ module Type
3762
+ extend SafetyKit::Internal::Type::Enum
3763
+
3764
+ TaggedSymbol =
3765
+ T.type_alias do
3766
+ T.all(
3767
+ Symbol,
3768
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Type
3769
+ )
3770
+ end
3771
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3772
+
3773
+ IMAGE =
3774
+ T.let(
3775
+ :image,
3776
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Type::TaggedSymbol
3777
+ )
3778
+
3779
+ sig do
3780
+ override.returns(
3781
+ T::Array[
3782
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::EventImageContent::Type::TaggedSymbol
3783
+ ]
3784
+ )
3785
+ end
3786
+ def self.values
3787
+ end
3788
+ end
3789
+ end
3790
+
3791
+ sig do
3792
+ override.returns(
3793
+ T::Array[
3794
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Content::Variants
3795
+ ]
3796
+ )
3797
+ end
3798
+ def self.variants
3799
+ end
3800
+ end
3801
+
3802
+ module Metadata
3803
+ extend SafetyKit::Internal::Type::Union
3804
+
3805
+ Variants =
3806
+ T.type_alias do
3807
+ T.any(
3808
+ String,
3809
+ Float,
3810
+ T::Boolean,
3811
+ T::Array[
3812
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::UnionMember3::Variants
3813
+ ]
3814
+ )
3815
+ end
3816
+
3817
+ module UnionMember3
3818
+ extend SafetyKit::Internal::Type::Union
3819
+
3820
+ Variants = T.type_alias { T.any(String, Float, T::Boolean) }
3821
+
3822
+ sig do
3823
+ override.returns(
3824
+ T::Array[
3825
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::UnionMember3::Variants
3826
+ ]
3827
+ )
3828
+ end
3829
+ def self.variants
3830
+ end
3831
+ end
3832
+
3833
+ sig do
3834
+ override.returns(
3835
+ T::Array[
3836
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::Variants
3837
+ ]
3838
+ )
3839
+ end
3840
+ def self.variants
3841
+ end
3842
+
3843
+ UnionMember3Array =
3844
+ T.let(
3845
+ SafetyKit::Internal::Type::ArrayOf[
3846
+ union:
3847
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::Metadata::UnionMember3
3848
+ ],
3849
+ SafetyKit::Internal::Type::Converter
3850
+ )
3851
+ end
3852
+
3853
+ class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
3854
+ OrHash =
3855
+ T.type_alias do
3856
+ T.any(
3857
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserContact::ResourcesUsed,
3858
+ SafetyKit::Internal::AnyHash
3859
+ )
3860
+ end
3861
+
3862
+ # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3863
+ # youtube, linkedin, or another stable snake_case identifier.
3864
+ sig { returns(String) }
3865
+ attr_accessor :type
3866
+
3867
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
3868
+ # value, not the raw value. When type is url, this must be a valid URL.
3869
+ sig { returns(String) }
3870
+ attr_accessor :value
3871
+
3872
+ # Real-world or account resource used during the event, such as an email, phone
3873
+ # number, address, URL, social handle, or payment identifier.
3874
+ sig do
3875
+ params(type: String, value: String).returns(T.attached_class)
3876
+ end
3877
+ def self.new(
3878
+ # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3879
+ # youtube, linkedin, or another stable snake_case identifier.
3880
+ type:,
3881
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
3882
+ # value, not the raw value. When type is url, this must be a valid URL.
3883
+ value:
3884
+ )
3885
+ end
3886
+
3887
+ sig { override.returns({ type: String, value: String }) }
3888
+ def to_hash
3889
+ end
3890
+ end
3891
+ end
3892
+
3893
+ class ContentUploaded < SafetyKit::Internal::Type::BaseModel
3894
+ OrHash =
3895
+ T.type_alias do
3896
+ T.any(
3897
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded,
3898
+ SafetyKit::Internal::AnyHash
3899
+ )
3900
+ end
3901
+
3902
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
3903
+ # listing text, image URLs, and similar content SafetyKit should compare or
3904
+ # analyze.
3905
+ sig do
3906
+ returns(
3907
+ T::Array[
3908
+ T.any(
3909
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent,
3910
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent
3911
+ )
3912
+ ]
3913
+ )
3914
+ end
3915
+ attr_accessor :content
3916
+
3917
+ # Stable, low-cardinality product action name. Use snake_case and put dynamic
3918
+ # values in typed fields, content, resources_used, or metadata.
3919
+ sig { returns(String) }
3920
+ attr_accessor :event_name
3921
+
3922
+ # The time the event occurred in your system, as an ISO 8601 datetime string.
3923
+ sig { returns(Time) }
3924
+ attr_accessor :timestamp
3925
+
3926
+ sig { returns(Symbol) }
3927
+ attr_accessor :type
3928
+
3929
+ # Your stable canonical identifier for the user or account.
3930
+ sig { returns(String) }
3931
+ attr_accessor :user_id
3932
+
3933
+ # Your stable identifier for the content involved in this event, such as a
3934
+ # message, listing, page, post, profile, or uploaded media item.
3935
+ sig { returns(T.nilable(String)) }
3936
+ attr_reader :content_id
3937
+
3938
+ sig { params(content_id: String).void }
3939
+ attr_writer :content_id
3940
+
3941
+ # Non-PII product context for filtering, segmentation, and debugging. Values may
3942
+ # be strings, numbers, booleans, or arrays of those scalar values.
3943
+ sig do
3944
+ returns(
3945
+ T.nilable(
3946
+ T::Hash[
3947
+ Symbol,
3948
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::Variants
3949
+ ]
3950
+ )
3951
+ )
3952
+ end
3953
+ attr_reader :metadata
3954
+
3955
+ sig do
3956
+ params(
3957
+ metadata:
3958
+ T::Hash[
3959
+ Symbol,
3960
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::Variants
3961
+ ]
3962
+ ).void
3963
+ end
3964
+ attr_writer :metadata
3965
+
3966
+ # Reusable resources observed during the event. Use this for emails, phone
3967
+ # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3968
+ # identifiers.
3969
+ sig do
3970
+ returns(
3971
+ T.nilable(
3972
+ T::Array[
3973
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::ResourcesUsed
3974
+ ]
3975
+ )
3976
+ )
3977
+ end
3978
+ attr_reader :resources_used
3979
+
3980
+ sig do
3981
+ params(
3982
+ resources_used:
3983
+ T::Array[
3984
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::ResourcesUsed::OrHash
3985
+ ]
3986
+ ).void
3987
+ end
3988
+ attr_writer :resources_used
3989
+
3990
+ # A user posts, uploads, publishes, edits, or replaces content.
3991
+ sig do
3992
+ params(
3993
+ content:
3994
+ T::Array[
3995
+ T.any(
3996
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent::OrHash,
3997
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::OrHash
3998
+ )
3999
+ ],
4000
+ event_name: String,
4001
+ timestamp: Time,
4002
+ user_id: String,
4003
+ content_id: String,
4004
+ metadata:
4005
+ T::Hash[
4006
+ Symbol,
4007
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::Variants
4008
+ ],
4009
+ resources_used:
4010
+ T::Array[
4011
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::ResourcesUsed::OrHash
4012
+ ],
4013
+ type: Symbol
4014
+ ).returns(T.attached_class)
4015
+ end
4016
+ def self.new(
4017
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
4018
+ # listing text, image URLs, and similar content SafetyKit should compare or
4019
+ # analyze.
4020
+ content:,
4021
+ # Stable, low-cardinality product action name. Use snake_case and put dynamic
4022
+ # values in typed fields, content, resources_used, or metadata.
4023
+ event_name:,
4024
+ # The time the event occurred in your system, as an ISO 8601 datetime string.
4025
+ timestamp:,
4026
+ # Your stable canonical identifier for the user or account.
4027
+ user_id:,
4028
+ # Your stable identifier for the content involved in this event, such as a
4029
+ # message, listing, page, post, profile, or uploaded media item.
4030
+ content_id: nil,
2698
4031
  # Non-PII product context for filtering, segmentation, and debugging. Values may
2699
4032
  # be strings, numbers, booleans, or arrays of those scalar values.
2700
4033
  metadata: nil,
@@ -2702,33 +4035,33 @@ module SafetyKit
2702
4035
  # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
2703
4036
  # identifiers.
2704
4037
  resources_used: nil,
2705
- type: :user_contact
4038
+ type: :content_uploaded
2706
4039
  )
2707
4040
  end
2708
4041
 
2709
4042
  sig do
2710
4043
  override.returns(
2711
4044
  {
2712
- event_name: String,
2713
- target_user_id: String,
2714
- timestamp: Time,
2715
- type: Symbol,
2716
- user_id: String,
2717
4045
  content:
2718
4046
  T::Array[
2719
4047
  T.any(
2720
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent,
2721
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent
4048
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent,
4049
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent
2722
4050
  )
2723
4051
  ],
4052
+ event_name: String,
4053
+ timestamp: Time,
4054
+ type: Symbol,
4055
+ user_id: String,
4056
+ content_id: String,
2724
4057
  metadata:
2725
4058
  T::Hash[
2726
4059
  Symbol,
2727
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::Variants
4060
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::Variants
2728
4061
  ],
2729
4062
  resources_used:
2730
4063
  T::Array[
2731
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::ResourcesUsed
4064
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::ResourcesUsed
2732
4065
  ]
2733
4066
  }
2734
4067
  )
@@ -2743,8 +4076,8 @@ module SafetyKit
2743
4076
  Variants =
2744
4077
  T.type_alias do
2745
4078
  T.any(
2746
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent,
2747
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent
4079
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent,
4080
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent
2748
4081
  )
2749
4082
  end
2750
4083
 
@@ -2752,7 +4085,7 @@ module SafetyKit
2752
4085
  OrHash =
2753
4086
  T.type_alias do
2754
4087
  T.any(
2755
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent,
4088
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent,
2756
4089
  SafetyKit::Internal::AnyHash
2757
4090
  )
2758
4091
  end
@@ -2764,7 +4097,7 @@ module SafetyKit
2764
4097
  # Text content part.
2765
4098
  sig do
2766
4099
  returns(
2767
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::Type::OrSymbol
4100
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent::Type::OrSymbol
2768
4101
  )
2769
4102
  end
2770
4103
  attr_accessor :type
@@ -2781,7 +4114,7 @@ module SafetyKit
2781
4114
  params(
2782
4115
  text: String,
2783
4116
  type:
2784
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::Type::OrSymbol,
4117
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent::Type::OrSymbol,
2785
4118
  key: String
2786
4119
  ).returns(T.attached_class)
2787
4120
  end
@@ -2800,7 +4133,7 @@ module SafetyKit
2800
4133
  {
2801
4134
  text: String,
2802
4135
  type:
2803
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::Type::OrSymbol,
4136
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent::Type::OrSymbol,
2804
4137
  key: String
2805
4138
  }
2806
4139
  )
@@ -2816,7 +4149,7 @@ module SafetyKit
2816
4149
  T.type_alias do
2817
4150
  T.all(
2818
4151
  Symbol,
2819
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::Type
4152
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent::Type
2820
4153
  )
2821
4154
  end
2822
4155
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -2824,13 +4157,13 @@ module SafetyKit
2824
4157
  TEXT =
2825
4158
  T.let(
2826
4159
  :text,
2827
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::Type::TaggedSymbol
4160
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent::Type::TaggedSymbol
2828
4161
  )
2829
4162
 
2830
4163
  sig do
2831
4164
  override.returns(
2832
4165
  T::Array[
2833
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventTextContent::Type::TaggedSymbol
4166
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventTextContent::Type::TaggedSymbol
2834
4167
  ]
2835
4168
  )
2836
4169
  end
@@ -2843,7 +4176,7 @@ module SafetyKit
2843
4176
  OrHash =
2844
4177
  T.type_alias do
2845
4178
  T.any(
2846
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent,
4179
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent,
2847
4180
  SafetyKit::Internal::AnyHash
2848
4181
  )
2849
4182
  end
@@ -2851,7 +4184,7 @@ module SafetyKit
2851
4184
  # Image source information.
2852
4185
  sig do
2853
4186
  returns(
2854
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source
4187
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source
2855
4188
  )
2856
4189
  end
2857
4190
  attr_reader :source
@@ -2859,7 +4192,7 @@ module SafetyKit
2859
4192
  sig do
2860
4193
  params(
2861
4194
  source:
2862
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::OrHash
4195
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::OrHash
2863
4196
  ).void
2864
4197
  end
2865
4198
  attr_writer :source
@@ -2867,7 +4200,7 @@ module SafetyKit
2867
4200
  # Image content part.
2868
4201
  sig do
2869
4202
  returns(
2870
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Type::OrSymbol
4203
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Type::OrSymbol
2871
4204
  )
2872
4205
  end
2873
4206
  attr_accessor :type
@@ -2883,9 +4216,9 @@ module SafetyKit
2883
4216
  sig do
2884
4217
  params(
2885
4218
  source:
2886
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::OrHash,
4219
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::OrHash,
2887
4220
  type:
2888
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Type::OrSymbol,
4221
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Type::OrSymbol,
2889
4222
  key: String
2890
4223
  ).returns(T.attached_class)
2891
4224
  end
@@ -2903,9 +4236,9 @@ module SafetyKit
2903
4236
  override.returns(
2904
4237
  {
2905
4238
  source:
2906
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source,
4239
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source,
2907
4240
  type:
2908
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Type::OrSymbol,
4241
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Type::OrSymbol,
2909
4242
  key: String
2910
4243
  }
2911
4244
  )
@@ -2917,7 +4250,7 @@ module SafetyKit
2917
4250
  OrHash =
2918
4251
  T.type_alias do
2919
4252
  T.any(
2920
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source,
4253
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source,
2921
4254
  SafetyKit::Internal::AnyHash
2922
4255
  )
2923
4256
  end
@@ -2925,7 +4258,7 @@ module SafetyKit
2925
4258
  # URL image source.
2926
4259
  sig do
2927
4260
  returns(
2928
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::Type::OrSymbol
4261
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::Type::OrSymbol
2929
4262
  )
2930
4263
  end
2931
4264
  attr_accessor :type
@@ -2938,7 +4271,7 @@ module SafetyKit
2938
4271
  sig do
2939
4272
  params(
2940
4273
  type:
2941
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::Type::OrSymbol,
4274
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::Type::OrSymbol,
2942
4275
  url: String
2943
4276
  ).returns(T.attached_class)
2944
4277
  end
@@ -2954,7 +4287,7 @@ module SafetyKit
2954
4287
  override.returns(
2955
4288
  {
2956
4289
  type:
2957
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::Type::OrSymbol,
4290
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::Type::OrSymbol,
2958
4291
  url: String
2959
4292
  }
2960
4293
  )
@@ -2970,7 +4303,7 @@ module SafetyKit
2970
4303
  T.type_alias do
2971
4304
  T.all(
2972
4305
  Symbol,
2973
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::Type
4306
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::Type
2974
4307
  )
2975
4308
  end
2976
4309
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -2978,13 +4311,13 @@ module SafetyKit
2978
4311
  URL =
2979
4312
  T.let(
2980
4313
  :url,
2981
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::Type::TaggedSymbol
4314
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::Type::TaggedSymbol
2982
4315
  )
2983
4316
 
2984
4317
  sig do
2985
4318
  override.returns(
2986
4319
  T::Array[
2987
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Source::Type::TaggedSymbol
4320
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Source::Type::TaggedSymbol
2988
4321
  ]
2989
4322
  )
2990
4323
  end
@@ -3001,7 +4334,7 @@ module SafetyKit
3001
4334
  T.type_alias do
3002
4335
  T.all(
3003
4336
  Symbol,
3004
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Type
4337
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Type
3005
4338
  )
3006
4339
  end
3007
4340
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -3009,13 +4342,13 @@ module SafetyKit
3009
4342
  IMAGE =
3010
4343
  T.let(
3011
4344
  :image,
3012
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Type::TaggedSymbol
4345
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Type::TaggedSymbol
3013
4346
  )
3014
4347
 
3015
4348
  sig do
3016
4349
  override.returns(
3017
4350
  T::Array[
3018
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::EventImageContent::Type::TaggedSymbol
4351
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::EventImageContent::Type::TaggedSymbol
3019
4352
  ]
3020
4353
  )
3021
4354
  end
@@ -3027,7 +4360,7 @@ module SafetyKit
3027
4360
  sig do
3028
4361
  override.returns(
3029
4362
  T::Array[
3030
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Content::Variants
4363
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Content::Variants
3031
4364
  ]
3032
4365
  )
3033
4366
  end
@@ -3045,7 +4378,7 @@ module SafetyKit
3045
4378
  Float,
3046
4379
  T::Boolean,
3047
4380
  T::Array[
3048
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::UnionMember3::Variants
4381
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::UnionMember3::Variants
3049
4382
  ]
3050
4383
  )
3051
4384
  end
@@ -3058,7 +4391,7 @@ module SafetyKit
3058
4391
  sig do
3059
4392
  override.returns(
3060
4393
  T::Array[
3061
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::UnionMember3::Variants
4394
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::UnionMember3::Variants
3062
4395
  ]
3063
4396
  )
3064
4397
  end
@@ -3069,7 +4402,7 @@ module SafetyKit
3069
4402
  sig do
3070
4403
  override.returns(
3071
4404
  T::Array[
3072
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::Variants
4405
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::Variants
3073
4406
  ]
3074
4407
  )
3075
4408
  end
@@ -3080,7 +4413,7 @@ module SafetyKit
3080
4413
  T.let(
3081
4414
  SafetyKit::Internal::Type::ArrayOf[
3082
4415
  union:
3083
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::Metadata::UnionMember3
4416
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::Metadata::UnionMember3
3084
4417
  ],
3085
4418
  SafetyKit::Internal::Type::Converter
3086
4419
  )
@@ -3090,7 +4423,7 @@ module SafetyKit
3090
4423
  OrHash =
3091
4424
  T.type_alias do
3092
4425
  T.any(
3093
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UserContact::ResourcesUsed,
4426
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::ContentUploaded::ResourcesUsed,
3094
4427
  SafetyKit::Internal::AnyHash
3095
4428
  )
3096
4429
  end
@@ -3126,30 +4459,15 @@ module SafetyKit
3126
4459
  end
3127
4460
  end
3128
4461
 
3129
- class ContentUploaded < SafetyKit::Internal::Type::BaseModel
4462
+ class CreateAccount < SafetyKit::Internal::Type::BaseModel
3130
4463
  OrHash =
3131
4464
  T.type_alias do
3132
4465
  T.any(
3133
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded,
4466
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount,
3134
4467
  SafetyKit::Internal::AnyHash
3135
4468
  )
3136
4469
  end
3137
4470
 
3138
- # User-authored or user-uploaded content parts. Use this for message bodies, bios,
3139
- # listing text, image URLs, and similar content SafetyKit should compare or
3140
- # analyze.
3141
- sig do
3142
- returns(
3143
- T::Array[
3144
- T.any(
3145
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent,
3146
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent
3147
- )
3148
- ]
3149
- )
3150
- end
3151
- attr_accessor :content
3152
-
3153
4471
  # Stable, low-cardinality product action name. Use snake_case and put dynamic
3154
4472
  # values in typed fields, content, resources_used, or metadata.
3155
4473
  sig { returns(String) }
@@ -3166,6 +4484,44 @@ module SafetyKit
3166
4484
  sig { returns(String) }
3167
4485
  attr_accessor :user_id
3168
4486
 
4487
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
4488
+ # listing text, image URLs, and similar content SafetyKit should compare or
4489
+ # analyze.
4490
+ sig do
4491
+ returns(
4492
+ T.nilable(
4493
+ T::Array[
4494
+ T.any(
4495
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent,
4496
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent
4497
+ )
4498
+ ]
4499
+ )
4500
+ )
4501
+ end
4502
+ attr_reader :content
4503
+
4504
+ sig do
4505
+ params(
4506
+ content:
4507
+ T::Array[
4508
+ T.any(
4509
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::OrHash,
4510
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::OrHash
4511
+ )
4512
+ ]
4513
+ ).void
4514
+ end
4515
+ attr_writer :content
4516
+
4517
+ # Your stable identifier for the content involved in this event, such as a
4518
+ # message, listing, page, post, profile, or uploaded media item.
4519
+ sig { returns(T.nilable(String)) }
4520
+ attr_reader :content_id
4521
+
4522
+ sig { params(content_id: String).void }
4523
+ attr_writer :content_id
4524
+
3169
4525
  # Non-PII product context for filtering, segmentation, and debugging. Values may
3170
4526
  # be strings, numbers, booleans, or arrays of those scalar values.
3171
4527
  sig do
@@ -3173,7 +4529,7 @@ module SafetyKit
3173
4529
  T.nilable(
3174
4530
  T::Hash[
3175
4531
  Symbol,
3176
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::Variants
4532
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::Variants
3177
4533
  ]
3178
4534
  )
3179
4535
  )
@@ -3185,7 +4541,7 @@ module SafetyKit
3185
4541
  metadata:
3186
4542
  T::Hash[
3187
4543
  Symbol,
3188
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::Variants
4544
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::Variants
3189
4545
  ]
3190
4546
  ).void
3191
4547
  end
@@ -3198,7 +4554,7 @@ module SafetyKit
3198
4554
  returns(
3199
4555
  T.nilable(
3200
4556
  T::Array[
3201
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::ResourcesUsed
4557
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::ResourcesUsed
3202
4558
  ]
3203
4559
  )
3204
4560
  )
@@ -3209,42 +4565,39 @@ module SafetyKit
3209
4565
  params(
3210
4566
  resources_used:
3211
4567
  T::Array[
3212
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::ResourcesUsed::OrHash
4568
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::ResourcesUsed::OrHash
3213
4569
  ]
3214
4570
  ).void
3215
4571
  end
3216
4572
  attr_writer :resources_used
3217
4573
 
3218
- # A user posts, uploads, publishes, edits, or replaces content.
4574
+ # A user or account is created.
3219
4575
  sig do
3220
4576
  params(
4577
+ event_name: String,
4578
+ timestamp: Time,
4579
+ user_id: String,
3221
4580
  content:
3222
4581
  T::Array[
3223
4582
  T.any(
3224
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent::OrHash,
3225
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::OrHash
4583
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::OrHash,
4584
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::OrHash
3226
4585
  )
3227
4586
  ],
3228
- event_name: String,
3229
- timestamp: Time,
3230
- user_id: String,
4587
+ content_id: String,
3231
4588
  metadata:
3232
4589
  T::Hash[
3233
4590
  Symbol,
3234
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::Variants
4591
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::Variants
3235
4592
  ],
3236
4593
  resources_used:
3237
4594
  T::Array[
3238
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::ResourcesUsed::OrHash
4595
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::ResourcesUsed::OrHash
3239
4596
  ],
3240
4597
  type: Symbol
3241
4598
  ).returns(T.attached_class)
3242
4599
  end
3243
4600
  def self.new(
3244
- # User-authored or user-uploaded content parts. Use this for message bodies, bios,
3245
- # listing text, image URLs, and similar content SafetyKit should compare or
3246
- # analyze.
3247
- content:,
3248
4601
  # Stable, low-cardinality product action name. Use snake_case and put dynamic
3249
4602
  # values in typed fields, content, resources_used, or metadata.
3250
4603
  event_name:,
@@ -3252,6 +4605,13 @@ module SafetyKit
3252
4605
  timestamp:,
3253
4606
  # Your stable canonical identifier for the user or account.
3254
4607
  user_id:,
4608
+ # User-authored or user-uploaded content parts. Use this for message bodies, bios,
4609
+ # listing text, image URLs, and similar content SafetyKit should compare or
4610
+ # analyze.
4611
+ content: nil,
4612
+ # Your stable identifier for the content involved in this event, such as a
4613
+ # message, listing, page, post, profile, or uploaded media item.
4614
+ content_id: nil,
3255
4615
  # Non-PII product context for filtering, segmentation, and debugging. Values may
3256
4616
  # be strings, numbers, booleans, or arrays of those scalar values.
3257
4617
  metadata: nil,
@@ -3259,32 +4619,33 @@ module SafetyKit
3259
4619
  # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3260
4620
  # identifiers.
3261
4621
  resources_used: nil,
3262
- type: :content_uploaded
4622
+ type: :create_account
3263
4623
  )
3264
4624
  end
3265
4625
 
3266
4626
  sig do
3267
4627
  override.returns(
3268
4628
  {
4629
+ event_name: String,
4630
+ timestamp: Time,
4631
+ type: Symbol,
4632
+ user_id: String,
3269
4633
  content:
3270
4634
  T::Array[
3271
4635
  T.any(
3272
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent,
3273
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent
4636
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent,
4637
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent
3274
4638
  )
3275
4639
  ],
3276
- event_name: String,
3277
- timestamp: Time,
3278
- type: Symbol,
3279
- user_id: String,
4640
+ content_id: String,
3280
4641
  metadata:
3281
4642
  T::Hash[
3282
4643
  Symbol,
3283
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::Variants
4644
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::Variants
3284
4645
  ],
3285
4646
  resources_used:
3286
4647
  T::Array[
3287
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::ResourcesUsed
4648
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::ResourcesUsed
3288
4649
  ]
3289
4650
  }
3290
4651
  )
@@ -3299,8 +4660,8 @@ module SafetyKit
3299
4660
  Variants =
3300
4661
  T.type_alias do
3301
4662
  T.any(
3302
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent,
3303
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent
4663
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent,
4664
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent
3304
4665
  )
3305
4666
  end
3306
4667
 
@@ -3308,7 +4669,7 @@ module SafetyKit
3308
4669
  OrHash =
3309
4670
  T.type_alias do
3310
4671
  T.any(
3311
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent,
4672
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent,
3312
4673
  SafetyKit::Internal::AnyHash
3313
4674
  )
3314
4675
  end
@@ -3320,7 +4681,7 @@ module SafetyKit
3320
4681
  # Text content part.
3321
4682
  sig do
3322
4683
  returns(
3323
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent::Type::OrSymbol
4684
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::Type::OrSymbol
3324
4685
  )
3325
4686
  end
3326
4687
  attr_accessor :type
@@ -3337,7 +4698,7 @@ module SafetyKit
3337
4698
  params(
3338
4699
  text: String,
3339
4700
  type:
3340
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent::Type::OrSymbol,
4701
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::Type::OrSymbol,
3341
4702
  key: String
3342
4703
  ).returns(T.attached_class)
3343
4704
  end
@@ -3356,7 +4717,7 @@ module SafetyKit
3356
4717
  {
3357
4718
  text: String,
3358
4719
  type:
3359
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent::Type::OrSymbol,
4720
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::Type::OrSymbol,
3360
4721
  key: String
3361
4722
  }
3362
4723
  )
@@ -3372,7 +4733,7 @@ module SafetyKit
3372
4733
  T.type_alias do
3373
4734
  T.all(
3374
4735
  Symbol,
3375
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent::Type
4736
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::Type
3376
4737
  )
3377
4738
  end
3378
4739
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -3380,13 +4741,13 @@ module SafetyKit
3380
4741
  TEXT =
3381
4742
  T.let(
3382
4743
  :text,
3383
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent::Type::TaggedSymbol
4744
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::Type::TaggedSymbol
3384
4745
  )
3385
4746
 
3386
4747
  sig do
3387
4748
  override.returns(
3388
4749
  T::Array[
3389
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventTextContent::Type::TaggedSymbol
4750
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventTextContent::Type::TaggedSymbol
3390
4751
  ]
3391
4752
  )
3392
4753
  end
@@ -3399,7 +4760,7 @@ module SafetyKit
3399
4760
  OrHash =
3400
4761
  T.type_alias do
3401
4762
  T.any(
3402
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent,
4763
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent,
3403
4764
  SafetyKit::Internal::AnyHash
3404
4765
  )
3405
4766
  end
@@ -3407,7 +4768,7 @@ module SafetyKit
3407
4768
  # Image source information.
3408
4769
  sig do
3409
4770
  returns(
3410
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source
4771
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source
3411
4772
  )
3412
4773
  end
3413
4774
  attr_reader :source
@@ -3415,7 +4776,7 @@ module SafetyKit
3415
4776
  sig do
3416
4777
  params(
3417
4778
  source:
3418
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::OrHash
4779
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::OrHash
3419
4780
  ).void
3420
4781
  end
3421
4782
  attr_writer :source
@@ -3423,7 +4784,7 @@ module SafetyKit
3423
4784
  # Image content part.
3424
4785
  sig do
3425
4786
  returns(
3426
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Type::OrSymbol
4787
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Type::OrSymbol
3427
4788
  )
3428
4789
  end
3429
4790
  attr_accessor :type
@@ -3439,9 +4800,9 @@ module SafetyKit
3439
4800
  sig do
3440
4801
  params(
3441
4802
  source:
3442
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::OrHash,
4803
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::OrHash,
3443
4804
  type:
3444
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Type::OrSymbol,
4805
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Type::OrSymbol,
3445
4806
  key: String
3446
4807
  ).returns(T.attached_class)
3447
4808
  end
@@ -3459,9 +4820,9 @@ module SafetyKit
3459
4820
  override.returns(
3460
4821
  {
3461
4822
  source:
3462
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source,
4823
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source,
3463
4824
  type:
3464
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Type::OrSymbol,
4825
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Type::OrSymbol,
3465
4826
  key: String
3466
4827
  }
3467
4828
  )
@@ -3473,7 +4834,7 @@ module SafetyKit
3473
4834
  OrHash =
3474
4835
  T.type_alias do
3475
4836
  T.any(
3476
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source,
4837
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source,
3477
4838
  SafetyKit::Internal::AnyHash
3478
4839
  )
3479
4840
  end
@@ -3481,7 +4842,7 @@ module SafetyKit
3481
4842
  # URL image source.
3482
4843
  sig do
3483
4844
  returns(
3484
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::Type::OrSymbol
4845
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::Type::OrSymbol
3485
4846
  )
3486
4847
  end
3487
4848
  attr_accessor :type
@@ -3494,7 +4855,7 @@ module SafetyKit
3494
4855
  sig do
3495
4856
  params(
3496
4857
  type:
3497
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::Type::OrSymbol,
4858
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::Type::OrSymbol,
3498
4859
  url: String
3499
4860
  ).returns(T.attached_class)
3500
4861
  end
@@ -3510,7 +4871,7 @@ module SafetyKit
3510
4871
  override.returns(
3511
4872
  {
3512
4873
  type:
3513
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::Type::OrSymbol,
4874
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::Type::OrSymbol,
3514
4875
  url: String
3515
4876
  }
3516
4877
  )
@@ -3526,7 +4887,7 @@ module SafetyKit
3526
4887
  T.type_alias do
3527
4888
  T.all(
3528
4889
  Symbol,
3529
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::Type
4890
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::Type
3530
4891
  )
3531
4892
  end
3532
4893
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -3534,13 +4895,13 @@ module SafetyKit
3534
4895
  URL =
3535
4896
  T.let(
3536
4897
  :url,
3537
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::Type::TaggedSymbol
4898
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
3538
4899
  )
3539
4900
 
3540
4901
  sig do
3541
4902
  override.returns(
3542
4903
  T::Array[
3543
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Source::Type::TaggedSymbol
4904
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
3544
4905
  ]
3545
4906
  )
3546
4907
  end
@@ -3557,7 +4918,7 @@ module SafetyKit
3557
4918
  T.type_alias do
3558
4919
  T.all(
3559
4920
  Symbol,
3560
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Type
4921
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Type
3561
4922
  )
3562
4923
  end
3563
4924
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -3565,13 +4926,13 @@ module SafetyKit
3565
4926
  IMAGE =
3566
4927
  T.let(
3567
4928
  :image,
3568
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Type::TaggedSymbol
4929
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Type::TaggedSymbol
3569
4930
  )
3570
4931
 
3571
4932
  sig do
3572
4933
  override.returns(
3573
4934
  T::Array[
3574
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::EventImageContent::Type::TaggedSymbol
4935
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::EventImageContent::Type::TaggedSymbol
3575
4936
  ]
3576
4937
  )
3577
4938
  end
@@ -3583,7 +4944,7 @@ module SafetyKit
3583
4944
  sig do
3584
4945
  override.returns(
3585
4946
  T::Array[
3586
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Content::Variants
4947
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Content::Variants
3587
4948
  ]
3588
4949
  )
3589
4950
  end
@@ -3601,7 +4962,7 @@ module SafetyKit
3601
4962
  Float,
3602
4963
  T::Boolean,
3603
4964
  T::Array[
3604
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::UnionMember3::Variants
4965
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::UnionMember3::Variants
3605
4966
  ]
3606
4967
  )
3607
4968
  end
@@ -3614,7 +4975,7 @@ module SafetyKit
3614
4975
  sig do
3615
4976
  override.returns(
3616
4977
  T::Array[
3617
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::UnionMember3::Variants
4978
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::UnionMember3::Variants
3618
4979
  ]
3619
4980
  )
3620
4981
  end
@@ -3625,7 +4986,7 @@ module SafetyKit
3625
4986
  sig do
3626
4987
  override.returns(
3627
4988
  T::Array[
3628
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::Variants
4989
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::Variants
3629
4990
  ]
3630
4991
  )
3631
4992
  end
@@ -3636,7 +4997,7 @@ module SafetyKit
3636
4997
  T.let(
3637
4998
  SafetyKit::Internal::Type::ArrayOf[
3638
4999
  union:
3639
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::Metadata::UnionMember3
5000
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::Metadata::UnionMember3
3640
5001
  ],
3641
5002
  SafetyKit::Internal::Type::Converter
3642
5003
  )
@@ -3646,7 +5007,7 @@ module SafetyKit
3646
5007
  OrHash =
3647
5008
  T.type_alias do
3648
5009
  T.any(
3649
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::ContentUploaded::ResourcesUsed,
5010
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::CreateAccount::ResourcesUsed,
3650
5011
  SafetyKit::Internal::AnyHash
3651
5012
  )
3652
5013
  end
@@ -3682,11 +5043,11 @@ module SafetyKit
3682
5043
  end
3683
5044
  end
3684
5045
 
3685
- class CreateAccount < SafetyKit::Internal::Type::BaseModel
5046
+ class UpdateAccount < SafetyKit::Internal::Type::BaseModel
3686
5047
  OrHash =
3687
5048
  T.type_alias do
3688
5049
  T.any(
3689
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount,
5050
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount,
3690
5051
  SafetyKit::Internal::AnyHash
3691
5052
  )
3692
5053
  end
@@ -3715,8 +5076,8 @@ module SafetyKit
3715
5076
  T.nilable(
3716
5077
  T::Array[
3717
5078
  T.any(
3718
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent,
3719
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent
5079
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent,
5080
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent
3720
5081
  )
3721
5082
  ]
3722
5083
  )
@@ -3729,14 +5090,22 @@ module SafetyKit
3729
5090
  content:
3730
5091
  T::Array[
3731
5092
  T.any(
3732
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::OrHash,
3733
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::OrHash
5093
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::OrHash,
5094
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::OrHash
3734
5095
  )
3735
5096
  ]
3736
5097
  ).void
3737
5098
  end
3738
5099
  attr_writer :content
3739
5100
 
5101
+ # Your stable identifier for the content involved in this event, such as a
5102
+ # message, listing, page, post, profile, or uploaded media item.
5103
+ sig { returns(T.nilable(String)) }
5104
+ attr_reader :content_id
5105
+
5106
+ sig { params(content_id: String).void }
5107
+ attr_writer :content_id
5108
+
3740
5109
  # Non-PII product context for filtering, segmentation, and debugging. Values may
3741
5110
  # be strings, numbers, booleans, or arrays of those scalar values.
3742
5111
  sig do
@@ -3744,7 +5113,7 @@ module SafetyKit
3744
5113
  T.nilable(
3745
5114
  T::Hash[
3746
5115
  Symbol,
3747
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::Variants
5116
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::Variants
3748
5117
  ]
3749
5118
  )
3750
5119
  )
@@ -3756,7 +5125,7 @@ module SafetyKit
3756
5125
  metadata:
3757
5126
  T::Hash[
3758
5127
  Symbol,
3759
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::Variants
5128
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::Variants
3760
5129
  ]
3761
5130
  ).void
3762
5131
  end
@@ -3769,7 +5138,7 @@ module SafetyKit
3769
5138
  returns(
3770
5139
  T.nilable(
3771
5140
  T::Array[
3772
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::ResourcesUsed
5141
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::ResourcesUsed
3773
5142
  ]
3774
5143
  )
3775
5144
  )
@@ -3780,13 +5149,14 @@ module SafetyKit
3780
5149
  params(
3781
5150
  resources_used:
3782
5151
  T::Array[
3783
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::ResourcesUsed::OrHash
5152
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::ResourcesUsed::OrHash
3784
5153
  ]
3785
5154
  ).void
3786
5155
  end
3787
5156
  attr_writer :resources_used
3788
5157
 
3789
- # A user or account is created.
5158
+ # A user or account profile, contact detail, payment detail, or public bio
5159
+ # changes.
3790
5160
  sig do
3791
5161
  params(
3792
5162
  event_name: String,
@@ -3795,18 +5165,19 @@ module SafetyKit
3795
5165
  content:
3796
5166
  T::Array[
3797
5167
  T.any(
3798
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::OrHash,
3799
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::OrHash
5168
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::OrHash,
5169
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::OrHash
3800
5170
  )
3801
5171
  ],
5172
+ content_id: String,
3802
5173
  metadata:
3803
5174
  T::Hash[
3804
5175
  Symbol,
3805
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::Variants
5176
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::Variants
3806
5177
  ],
3807
5178
  resources_used:
3808
5179
  T::Array[
3809
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::ResourcesUsed::OrHash
5180
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::ResourcesUsed::OrHash
3810
5181
  ],
3811
5182
  type: Symbol
3812
5183
  ).returns(T.attached_class)
@@ -3823,6 +5194,9 @@ module SafetyKit
3823
5194
  # listing text, image URLs, and similar content SafetyKit should compare or
3824
5195
  # analyze.
3825
5196
  content: nil,
5197
+ # Your stable identifier for the content involved in this event, such as a
5198
+ # message, listing, page, post, profile, or uploaded media item.
5199
+ content_id: nil,
3826
5200
  # Non-PII product context for filtering, segmentation, and debugging. Values may
3827
5201
  # be strings, numbers, booleans, or arrays of those scalar values.
3828
5202
  metadata: nil,
@@ -3830,7 +5204,7 @@ module SafetyKit
3830
5204
  # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3831
5205
  # identifiers.
3832
5206
  resources_used: nil,
3833
- type: :create_account
5207
+ type: :update_account
3834
5208
  )
3835
5209
  end
3836
5210
 
@@ -3844,18 +5218,19 @@ module SafetyKit
3844
5218
  content:
3845
5219
  T::Array[
3846
5220
  T.any(
3847
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent,
3848
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent
5221
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent,
5222
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent
3849
5223
  )
3850
5224
  ],
5225
+ content_id: String,
3851
5226
  metadata:
3852
5227
  T::Hash[
3853
5228
  Symbol,
3854
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::Variants
5229
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::Variants
3855
5230
  ],
3856
5231
  resources_used:
3857
5232
  T::Array[
3858
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::ResourcesUsed
5233
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::ResourcesUsed
3859
5234
  ]
3860
5235
  }
3861
5236
  )
@@ -3870,8 +5245,8 @@ module SafetyKit
3870
5245
  Variants =
3871
5246
  T.type_alias do
3872
5247
  T.any(
3873
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent,
3874
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent
5248
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent,
5249
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent
3875
5250
  )
3876
5251
  end
3877
5252
 
@@ -3879,7 +5254,7 @@ module SafetyKit
3879
5254
  OrHash =
3880
5255
  T.type_alias do
3881
5256
  T.any(
3882
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent,
5257
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent,
3883
5258
  SafetyKit::Internal::AnyHash
3884
5259
  )
3885
5260
  end
@@ -3891,7 +5266,7 @@ module SafetyKit
3891
5266
  # Text content part.
3892
5267
  sig do
3893
5268
  returns(
3894
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::Type::OrSymbol
5269
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::Type::OrSymbol
3895
5270
  )
3896
5271
  end
3897
5272
  attr_accessor :type
@@ -3908,7 +5283,7 @@ module SafetyKit
3908
5283
  params(
3909
5284
  text: String,
3910
5285
  type:
3911
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::Type::OrSymbol,
5286
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::Type::OrSymbol,
3912
5287
  key: String
3913
5288
  ).returns(T.attached_class)
3914
5289
  end
@@ -3927,7 +5302,7 @@ module SafetyKit
3927
5302
  {
3928
5303
  text: String,
3929
5304
  type:
3930
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::Type::OrSymbol,
5305
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::Type::OrSymbol,
3931
5306
  key: String
3932
5307
  }
3933
5308
  )
@@ -3943,7 +5318,7 @@ module SafetyKit
3943
5318
  T.type_alias do
3944
5319
  T.all(
3945
5320
  Symbol,
3946
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::Type
5321
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::Type
3947
5322
  )
3948
5323
  end
3949
5324
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -3951,13 +5326,13 @@ module SafetyKit
3951
5326
  TEXT =
3952
5327
  T.let(
3953
5328
  :text,
3954
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::Type::TaggedSymbol
5329
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::Type::TaggedSymbol
3955
5330
  )
3956
5331
 
3957
5332
  sig do
3958
5333
  override.returns(
3959
5334
  T::Array[
3960
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventTextContent::Type::TaggedSymbol
5335
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventTextContent::Type::TaggedSymbol
3961
5336
  ]
3962
5337
  )
3963
5338
  end
@@ -3970,7 +5345,7 @@ module SafetyKit
3970
5345
  OrHash =
3971
5346
  T.type_alias do
3972
5347
  T.any(
3973
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent,
5348
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent,
3974
5349
  SafetyKit::Internal::AnyHash
3975
5350
  )
3976
5351
  end
@@ -3978,7 +5353,7 @@ module SafetyKit
3978
5353
  # Image source information.
3979
5354
  sig do
3980
5355
  returns(
3981
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source
5356
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source
3982
5357
  )
3983
5358
  end
3984
5359
  attr_reader :source
@@ -3986,7 +5361,7 @@ module SafetyKit
3986
5361
  sig do
3987
5362
  params(
3988
5363
  source:
3989
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::OrHash
5364
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::OrHash
3990
5365
  ).void
3991
5366
  end
3992
5367
  attr_writer :source
@@ -3994,7 +5369,7 @@ module SafetyKit
3994
5369
  # Image content part.
3995
5370
  sig do
3996
5371
  returns(
3997
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Type::OrSymbol
5372
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Type::OrSymbol
3998
5373
  )
3999
5374
  end
4000
5375
  attr_accessor :type
@@ -4010,9 +5385,9 @@ module SafetyKit
4010
5385
  sig do
4011
5386
  params(
4012
5387
  source:
4013
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::OrHash,
5388
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::OrHash,
4014
5389
  type:
4015
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Type::OrSymbol,
5390
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Type::OrSymbol,
4016
5391
  key: String
4017
5392
  ).returns(T.attached_class)
4018
5393
  end
@@ -4030,9 +5405,9 @@ module SafetyKit
4030
5405
  override.returns(
4031
5406
  {
4032
5407
  source:
4033
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source,
5408
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source,
4034
5409
  type:
4035
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Type::OrSymbol,
5410
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Type::OrSymbol,
4036
5411
  key: String
4037
5412
  }
4038
5413
  )
@@ -4044,7 +5419,7 @@ module SafetyKit
4044
5419
  OrHash =
4045
5420
  T.type_alias do
4046
5421
  T.any(
4047
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source,
5422
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source,
4048
5423
  SafetyKit::Internal::AnyHash
4049
5424
  )
4050
5425
  end
@@ -4052,7 +5427,7 @@ module SafetyKit
4052
5427
  # URL image source.
4053
5428
  sig do
4054
5429
  returns(
4055
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::Type::OrSymbol
5430
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::Type::OrSymbol
4056
5431
  )
4057
5432
  end
4058
5433
  attr_accessor :type
@@ -4065,7 +5440,7 @@ module SafetyKit
4065
5440
  sig do
4066
5441
  params(
4067
5442
  type:
4068
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::Type::OrSymbol,
5443
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::Type::OrSymbol,
4069
5444
  url: String
4070
5445
  ).returns(T.attached_class)
4071
5446
  end
@@ -4081,7 +5456,7 @@ module SafetyKit
4081
5456
  override.returns(
4082
5457
  {
4083
5458
  type:
4084
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::Type::OrSymbol,
5459
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::Type::OrSymbol,
4085
5460
  url: String
4086
5461
  }
4087
5462
  )
@@ -4097,7 +5472,7 @@ module SafetyKit
4097
5472
  T.type_alias do
4098
5473
  T.all(
4099
5474
  Symbol,
4100
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::Type
5475
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::Type
4101
5476
  )
4102
5477
  end
4103
5478
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -4105,13 +5480,13 @@ module SafetyKit
4105
5480
  URL =
4106
5481
  T.let(
4107
5482
  :url,
4108
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
5483
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
4109
5484
  )
4110
5485
 
4111
5486
  sig do
4112
5487
  override.returns(
4113
5488
  T::Array[
4114
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
5489
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
4115
5490
  ]
4116
5491
  )
4117
5492
  end
@@ -4128,7 +5503,7 @@ module SafetyKit
4128
5503
  T.type_alias do
4129
5504
  T.all(
4130
5505
  Symbol,
4131
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Type
5506
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Type
4132
5507
  )
4133
5508
  end
4134
5509
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -4136,13 +5511,13 @@ module SafetyKit
4136
5511
  IMAGE =
4137
5512
  T.let(
4138
5513
  :image,
4139
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Type::TaggedSymbol
5514
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Type::TaggedSymbol
4140
5515
  )
4141
5516
 
4142
5517
  sig do
4143
5518
  override.returns(
4144
5519
  T::Array[
4145
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::EventImageContent::Type::TaggedSymbol
5520
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::EventImageContent::Type::TaggedSymbol
4146
5521
  ]
4147
5522
  )
4148
5523
  end
@@ -4154,7 +5529,7 @@ module SafetyKit
4154
5529
  sig do
4155
5530
  override.returns(
4156
5531
  T::Array[
4157
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Content::Variants
5532
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Content::Variants
4158
5533
  ]
4159
5534
  )
4160
5535
  end
@@ -4172,7 +5547,7 @@ module SafetyKit
4172
5547
  Float,
4173
5548
  T::Boolean,
4174
5549
  T::Array[
4175
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::UnionMember3::Variants
5550
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::UnionMember3::Variants
4176
5551
  ]
4177
5552
  )
4178
5553
  end
@@ -4185,7 +5560,7 @@ module SafetyKit
4185
5560
  sig do
4186
5561
  override.returns(
4187
5562
  T::Array[
4188
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::UnionMember3::Variants
5563
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::UnionMember3::Variants
4189
5564
  ]
4190
5565
  )
4191
5566
  end
@@ -4196,7 +5571,7 @@ module SafetyKit
4196
5571
  sig do
4197
5572
  override.returns(
4198
5573
  T::Array[
4199
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::Variants
5574
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::Variants
4200
5575
  ]
4201
5576
  )
4202
5577
  end
@@ -4207,7 +5582,7 @@ module SafetyKit
4207
5582
  T.let(
4208
5583
  SafetyKit::Internal::Type::ArrayOf[
4209
5584
  union:
4210
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::Metadata::UnionMember3
5585
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::Metadata::UnionMember3
4211
5586
  ],
4212
5587
  SafetyKit::Internal::Type::Converter
4213
5588
  )
@@ -4217,7 +5592,7 @@ module SafetyKit
4217
5592
  OrHash =
4218
5593
  T.type_alias do
4219
5594
  T.any(
4220
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::CreateAccount::ResourcesUsed,
5595
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UpdateAccount::ResourcesUsed,
4221
5596
  SafetyKit::Internal::AnyHash
4222
5597
  )
4223
5598
  end
@@ -4253,11 +5628,11 @@ module SafetyKit
4253
5628
  end
4254
5629
  end
4255
5630
 
4256
- class UpdateAccount < SafetyKit::Internal::Type::BaseModel
5631
+ class UserReport < SafetyKit::Internal::Type::BaseModel
4257
5632
  OrHash =
4258
5633
  T.type_alias do
4259
5634
  T.any(
4260
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount,
5635
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport,
4261
5636
  SafetyKit::Internal::AnyHash
4262
5637
  )
4263
5638
  end
@@ -4267,6 +5642,16 @@ module SafetyKit
4267
5642
  sig { returns(String) }
4268
5643
  attr_accessor :event_name
4269
5644
 
5645
+ # One or more label categories supplied with the report.
5646
+ sig do
5647
+ returns(
5648
+ T::Array[
5649
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Label
5650
+ ]
5651
+ )
5652
+ end
5653
+ attr_accessor :labels
5654
+
4270
5655
  # The time the event occurred in your system, as an ISO 8601 datetime string.
4271
5656
  sig { returns(Time) }
4272
5657
  attr_accessor :timestamp
@@ -4286,8 +5671,8 @@ module SafetyKit
4286
5671
  T.nilable(
4287
5672
  T::Array[
4288
5673
  T.any(
4289
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent,
4290
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent
5674
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent,
5675
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent
4291
5676
  )
4292
5677
  ]
4293
5678
  )
@@ -4300,14 +5685,22 @@ module SafetyKit
4300
5685
  content:
4301
5686
  T::Array[
4302
5687
  T.any(
4303
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::OrHash,
4304
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::OrHash
5688
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::OrHash,
5689
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::OrHash
4305
5690
  )
4306
5691
  ]
4307
5692
  ).void
4308
5693
  end
4309
5694
  attr_writer :content
4310
5695
 
5696
+ # Your stable identifier for the content involved in this event, such as a
5697
+ # message, listing, page, post, profile, or uploaded media item.
5698
+ sig { returns(T.nilable(String)) }
5699
+ attr_reader :content_id
5700
+
5701
+ sig { params(content_id: String).void }
5702
+ attr_writer :content_id
5703
+
4311
5704
  # Non-PII product context for filtering, segmentation, and debugging. Values may
4312
5705
  # be strings, numbers, booleans, or arrays of those scalar values.
4313
5706
  sig do
@@ -4315,7 +5708,7 @@ module SafetyKit
4315
5708
  T.nilable(
4316
5709
  T::Hash[
4317
5710
  Symbol,
4318
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::Variants
5711
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::Variants
4319
5712
  ]
4320
5713
  )
4321
5714
  )
@@ -4327,7 +5720,7 @@ module SafetyKit
4327
5720
  metadata:
4328
5721
  T::Hash[
4329
5722
  Symbol,
4330
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::Variants
5723
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::Variants
4331
5724
  ]
4332
5725
  ).void
4333
5726
  end
@@ -4340,7 +5733,7 @@ module SafetyKit
4340
5733
  returns(
4341
5734
  T.nilable(
4342
5735
  T::Array[
4343
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::ResourcesUsed
5736
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::ResourcesUsed
4344
5737
  ]
4345
5738
  )
4346
5739
  )
@@ -4351,35 +5744,58 @@ module SafetyKit
4351
5744
  params(
4352
5745
  resources_used:
4353
5746
  T::Array[
4354
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::ResourcesUsed::OrHash
5747
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::ResourcesUsed::OrHash
4355
5748
  ]
4356
5749
  ).void
4357
5750
  end
4358
5751
  attr_writer :resources_used
4359
5752
 
4360
- # A user or account profile, contact detail, payment detail, or public bio
4361
- # changes.
5753
+ # Your stable identifier for the user-owned content that is the target of a
5754
+ # report.
5755
+ sig { returns(T.nilable(String)) }
5756
+ attr_reader :target_content_id
5757
+
5758
+ sig { params(target_content_id: String).void }
5759
+ attr_writer :target_content_id
5760
+
5761
+ # Your stable canonical identifier for the user being reported.
5762
+ sig { returns(T.nilable(String)) }
5763
+ attr_reader :target_user_id
5764
+
5765
+ sig { params(target_user_id: String).void }
5766
+ attr_writer :target_user_id
5767
+
5768
+ # A user-submitted report. Use user_id for the reporter, content and content_id
5769
+ # for the report itself, and target_user_id or target_content_id for what was
5770
+ # reported.
4362
5771
  sig do
4363
5772
  params(
4364
5773
  event_name: String,
5774
+ labels:
5775
+ T::Array[
5776
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Label::OrHash
5777
+ ],
4365
5778
  timestamp: Time,
4366
5779
  user_id: String,
4367
5780
  content:
4368
5781
  T::Array[
4369
5782
  T.any(
4370
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::OrHash,
4371
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::OrHash
5783
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::OrHash,
5784
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::OrHash
4372
5785
  )
4373
5786
  ],
5787
+ content_id: String,
4374
5788
  metadata:
4375
5789
  T::Hash[
4376
5790
  Symbol,
4377
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::Variants
5791
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::Variants
4378
5792
  ],
4379
5793
  resources_used:
4380
5794
  T::Array[
4381
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::ResourcesUsed::OrHash
5795
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::ResourcesUsed::OrHash
4382
5796
  ],
5797
+ target_content_id: String,
5798
+ target_user_id: String,
4383
5799
  type: Symbol
4384
5800
  ).returns(T.attached_class)
4385
5801
  end
@@ -4387,6 +5803,8 @@ module SafetyKit
4387
5803
  # Stable, low-cardinality product action name. Use snake_case and put dynamic
4388
5804
  # values in typed fields, content, resources_used, or metadata.
4389
5805
  event_name:,
5806
+ # One or more label categories supplied with the report.
5807
+ labels:,
4390
5808
  # The time the event occurred in your system, as an ISO 8601 datetime string.
4391
5809
  timestamp:,
4392
5810
  # Your stable canonical identifier for the user or account.
@@ -4395,6 +5813,9 @@ module SafetyKit
4395
5813
  # listing text, image URLs, and similar content SafetyKit should compare or
4396
5814
  # analyze.
4397
5815
  content: nil,
5816
+ # Your stable identifier for the content involved in this event, such as a
5817
+ # message, listing, page, post, profile, or uploaded media item.
5818
+ content_id: nil,
4398
5819
  # Non-PII product context for filtering, segmentation, and debugging. Values may
4399
5820
  # be strings, numbers, booleans, or arrays of those scalar values.
4400
5821
  metadata: nil,
@@ -4402,7 +5823,12 @@ module SafetyKit
4402
5823
  # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
4403
5824
  # identifiers.
4404
5825
  resources_used: nil,
4405
- type: :update_account
5826
+ # Your stable identifier for the user-owned content that is the target of a
5827
+ # report.
5828
+ target_content_id: nil,
5829
+ # Your stable canonical identifier for the user being reported.
5830
+ target_user_id: nil,
5831
+ type: :user_report
4406
5832
  )
4407
5833
  end
4408
5834
 
@@ -4410,31 +5836,64 @@ module SafetyKit
4410
5836
  override.returns(
4411
5837
  {
4412
5838
  event_name: String,
5839
+ labels:
5840
+ T::Array[
5841
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Label
5842
+ ],
4413
5843
  timestamp: Time,
4414
5844
  type: Symbol,
4415
5845
  user_id: String,
4416
5846
  content:
4417
5847
  T::Array[
4418
5848
  T.any(
4419
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent,
4420
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent
5849
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent,
5850
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent
4421
5851
  )
4422
5852
  ],
5853
+ content_id: String,
4423
5854
  metadata:
4424
5855
  T::Hash[
4425
5856
  Symbol,
4426
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::Variants
5857
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::Variants
4427
5858
  ],
4428
5859
  resources_used:
4429
5860
  T::Array[
4430
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::ResourcesUsed
4431
- ]
5861
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::ResourcesUsed
5862
+ ],
5863
+ target_content_id: String,
5864
+ target_user_id: String
4432
5865
  }
4433
5866
  )
4434
5867
  end
4435
5868
  def to_hash
4436
5869
  end
4437
5870
 
5871
+ class Label < SafetyKit::Internal::Type::BaseModel
5872
+ OrHash =
5873
+ T.type_alias do
5874
+ T.any(
5875
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Label,
5876
+ SafetyKit::Internal::AnyHash
5877
+ )
5878
+ end
5879
+
5880
+ # Stable snake_case report label category.
5881
+ sig { returns(String) }
5882
+ attr_accessor :label
5883
+
5884
+ # Label category supplied with a user report.
5885
+ sig { params(label: String).returns(T.attached_class) }
5886
+ def self.new(
5887
+ # Stable snake_case report label category.
5888
+ label:
5889
+ )
5890
+ end
5891
+
5892
+ sig { override.returns({ label: String }) }
5893
+ def to_hash
5894
+ end
5895
+ end
5896
+
4438
5897
  # User-authored text content associated with an event.
4439
5898
  module Content
4440
5899
  extend SafetyKit::Internal::Type::Union
@@ -4442,8 +5901,8 @@ module SafetyKit
4442
5901
  Variants =
4443
5902
  T.type_alias do
4444
5903
  T.any(
4445
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent,
4446
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent
5904
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent,
5905
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent
4447
5906
  )
4448
5907
  end
4449
5908
 
@@ -4451,7 +5910,7 @@ module SafetyKit
4451
5910
  OrHash =
4452
5911
  T.type_alias do
4453
5912
  T.any(
4454
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent,
5913
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent,
4455
5914
  SafetyKit::Internal::AnyHash
4456
5915
  )
4457
5916
  end
@@ -4463,7 +5922,7 @@ module SafetyKit
4463
5922
  # Text content part.
4464
5923
  sig do
4465
5924
  returns(
4466
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::Type::OrSymbol
5925
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::Type::OrSymbol
4467
5926
  )
4468
5927
  end
4469
5928
  attr_accessor :type
@@ -4480,7 +5939,7 @@ module SafetyKit
4480
5939
  params(
4481
5940
  text: String,
4482
5941
  type:
4483
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::Type::OrSymbol,
5942
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::Type::OrSymbol,
4484
5943
  key: String
4485
5944
  ).returns(T.attached_class)
4486
5945
  end
@@ -4499,7 +5958,7 @@ module SafetyKit
4499
5958
  {
4500
5959
  text: String,
4501
5960
  type:
4502
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::Type::OrSymbol,
5961
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::Type::OrSymbol,
4503
5962
  key: String
4504
5963
  }
4505
5964
  )
@@ -4515,7 +5974,7 @@ module SafetyKit
4515
5974
  T.type_alias do
4516
5975
  T.all(
4517
5976
  Symbol,
4518
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::Type
5977
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::Type
4519
5978
  )
4520
5979
  end
4521
5980
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -4523,13 +5982,13 @@ module SafetyKit
4523
5982
  TEXT =
4524
5983
  T.let(
4525
5984
  :text,
4526
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::Type::TaggedSymbol
5985
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::Type::TaggedSymbol
4527
5986
  )
4528
5987
 
4529
5988
  sig do
4530
5989
  override.returns(
4531
5990
  T::Array[
4532
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventTextContent::Type::TaggedSymbol
5991
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventTextContent::Type::TaggedSymbol
4533
5992
  ]
4534
5993
  )
4535
5994
  end
@@ -4542,7 +6001,7 @@ module SafetyKit
4542
6001
  OrHash =
4543
6002
  T.type_alias do
4544
6003
  T.any(
4545
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent,
6004
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent,
4546
6005
  SafetyKit::Internal::AnyHash
4547
6006
  )
4548
6007
  end
@@ -4550,7 +6009,7 @@ module SafetyKit
4550
6009
  # Image source information.
4551
6010
  sig do
4552
6011
  returns(
4553
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source
6012
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source
4554
6013
  )
4555
6014
  end
4556
6015
  attr_reader :source
@@ -4558,7 +6017,7 @@ module SafetyKit
4558
6017
  sig do
4559
6018
  params(
4560
6019
  source:
4561
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::OrHash
6020
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::OrHash
4562
6021
  ).void
4563
6022
  end
4564
6023
  attr_writer :source
@@ -4566,7 +6025,7 @@ module SafetyKit
4566
6025
  # Image content part.
4567
6026
  sig do
4568
6027
  returns(
4569
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Type::OrSymbol
6028
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Type::OrSymbol
4570
6029
  )
4571
6030
  end
4572
6031
  attr_accessor :type
@@ -4582,9 +6041,9 @@ module SafetyKit
4582
6041
  sig do
4583
6042
  params(
4584
6043
  source:
4585
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::OrHash,
6044
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::OrHash,
4586
6045
  type:
4587
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Type::OrSymbol,
6046
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Type::OrSymbol,
4588
6047
  key: String
4589
6048
  ).returns(T.attached_class)
4590
6049
  end
@@ -4602,9 +6061,9 @@ module SafetyKit
4602
6061
  override.returns(
4603
6062
  {
4604
6063
  source:
4605
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source,
6064
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source,
4606
6065
  type:
4607
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Type::OrSymbol,
6066
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Type::OrSymbol,
4608
6067
  key: String
4609
6068
  }
4610
6069
  )
@@ -4616,7 +6075,7 @@ module SafetyKit
4616
6075
  OrHash =
4617
6076
  T.type_alias do
4618
6077
  T.any(
4619
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source,
6078
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source,
4620
6079
  SafetyKit::Internal::AnyHash
4621
6080
  )
4622
6081
  end
@@ -4624,7 +6083,7 @@ module SafetyKit
4624
6083
  # URL image source.
4625
6084
  sig do
4626
6085
  returns(
4627
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::Type::OrSymbol
6086
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::Type::OrSymbol
4628
6087
  )
4629
6088
  end
4630
6089
  attr_accessor :type
@@ -4637,7 +6096,7 @@ module SafetyKit
4637
6096
  sig do
4638
6097
  params(
4639
6098
  type:
4640
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::Type::OrSymbol,
6099
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::Type::OrSymbol,
4641
6100
  url: String
4642
6101
  ).returns(T.attached_class)
4643
6102
  end
@@ -4653,7 +6112,7 @@ module SafetyKit
4653
6112
  override.returns(
4654
6113
  {
4655
6114
  type:
4656
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::Type::OrSymbol,
6115
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::Type::OrSymbol,
4657
6116
  url: String
4658
6117
  }
4659
6118
  )
@@ -4669,7 +6128,7 @@ module SafetyKit
4669
6128
  T.type_alias do
4670
6129
  T.all(
4671
6130
  Symbol,
4672
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::Type
6131
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::Type
4673
6132
  )
4674
6133
  end
4675
6134
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -4677,13 +6136,13 @@ module SafetyKit
4677
6136
  URL =
4678
6137
  T.let(
4679
6138
  :url,
4680
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
6139
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::Type::TaggedSymbol
4681
6140
  )
4682
6141
 
4683
6142
  sig do
4684
6143
  override.returns(
4685
6144
  T::Array[
4686
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Source::Type::TaggedSymbol
6145
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Source::Type::TaggedSymbol
4687
6146
  ]
4688
6147
  )
4689
6148
  end
@@ -4700,7 +6159,7 @@ module SafetyKit
4700
6159
  T.type_alias do
4701
6160
  T.all(
4702
6161
  Symbol,
4703
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Type
6162
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Type
4704
6163
  )
4705
6164
  end
4706
6165
  OrSymbol = T.type_alias { T.any(Symbol, String) }
@@ -4708,13 +6167,13 @@ module SafetyKit
4708
6167
  IMAGE =
4709
6168
  T.let(
4710
6169
  :image,
4711
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Type::TaggedSymbol
6170
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Type::TaggedSymbol
4712
6171
  )
4713
6172
 
4714
6173
  sig do
4715
6174
  override.returns(
4716
6175
  T::Array[
4717
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::EventImageContent::Type::TaggedSymbol
6176
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::EventImageContent::Type::TaggedSymbol
4718
6177
  ]
4719
6178
  )
4720
6179
  end
@@ -4726,7 +6185,7 @@ module SafetyKit
4726
6185
  sig do
4727
6186
  override.returns(
4728
6187
  T::Array[
4729
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Content::Variants
6188
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Content::Variants
4730
6189
  ]
4731
6190
  )
4732
6191
  end
@@ -4744,7 +6203,7 @@ module SafetyKit
4744
6203
  Float,
4745
6204
  T::Boolean,
4746
6205
  T::Array[
4747
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::UnionMember3::Variants
6206
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::UnionMember3::Variants
4748
6207
  ]
4749
6208
  )
4750
6209
  end
@@ -4757,7 +6216,7 @@ module SafetyKit
4757
6216
  sig do
4758
6217
  override.returns(
4759
6218
  T::Array[
4760
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::UnionMember3::Variants
6219
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::UnionMember3::Variants
4761
6220
  ]
4762
6221
  )
4763
6222
  end
@@ -4768,7 +6227,7 @@ module SafetyKit
4768
6227
  sig do
4769
6228
  override.returns(
4770
6229
  T::Array[
4771
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::Variants
6230
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::Variants
4772
6231
  ]
4773
6232
  )
4774
6233
  end
@@ -4779,7 +6238,7 @@ module SafetyKit
4779
6238
  T.let(
4780
6239
  SafetyKit::Internal::Type::ArrayOf[
4781
6240
  union:
4782
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::Metadata::UnionMember3
6241
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::Metadata::UnionMember3
4783
6242
  ],
4784
6243
  SafetyKit::Internal::Type::Converter
4785
6244
  )
@@ -4789,7 +6248,7 @@ module SafetyKit
4789
6248
  OrHash =
4790
6249
  T.type_alias do
4791
6250
  T.any(
4792
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::UpdateAccount::ResourcesUsed,
6251
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::UserReport::ResourcesUsed,
4793
6252
  SafetyKit::Internal::AnyHash
4794
6253
  )
4795
6254
  end
@@ -4828,7 +6287,7 @@ module SafetyKit
4828
6287
  sig do
4829
6288
  override.returns(
4830
6289
  T::Array[
4831
- SafetyKit::Beta::EventCreateParams::Body::UnionMember4::Variants
6290
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember5::Variants
4832
6291
  ]
4833
6292
  )
4834
6293
  end
@@ -4844,10 +6303,10 @@ module SafetyKit
4844
6303
  def self.variants
4845
6304
  end
4846
6305
 
4847
- UnionMember4Array =
6306
+ UnionMember5Array =
4848
6307
  T.let(
4849
6308
  SafetyKit::Internal::Type::ArrayOf[
4850
- union: SafetyKit::Beta::EventCreateParams::Body::UnionMember4
6309
+ union: SafetyKit::Beta::EventCreateParams::Body::UnionMember5
4851
6310
  ],
4852
6311
  SafetyKit::Internal::Type::Converter
4853
6312
  )