safetykit 0.30.0 → 0.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/safety_kit/client.rb +6 -0
  5. data/lib/safety_kit/models/async_create_async_params.rb +4968 -0
  6. data/lib/safety_kit/models/async_create_async_response.rb +39 -0
  7. data/lib/safety_kit/models.rb +2 -0
  8. data/lib/safety_kit/resources/async.rb +44 -0
  9. data/lib/safety_kit/resources/beta/events.rb +0 -28
  10. data/lib/safety_kit/version.rb +1 -1
  11. data/lib/safety_kit.rb +3 -2
  12. data/rbi/safety_kit/client.rbi +5 -0
  13. data/rbi/safety_kit/models/async_create_async_params.rbi +10349 -0
  14. data/rbi/safety_kit/models/async_create_async_response.rbi +81 -0
  15. data/rbi/safety_kit/models.rbi +2 -0
  16. data/rbi/safety_kit/resources/async.rbi +53 -0
  17. data/rbi/safety_kit/resources/beta/events.rbi +0 -39
  18. data/sig/safety_kit/client.rbs +2 -0
  19. data/sig/safety_kit/models/async_create_async_params.rbs +3892 -0
  20. data/sig/safety_kit/models/async_create_async_response.rbs +35 -0
  21. data/sig/safety_kit/models.rbs +2 -0
  22. data/sig/safety_kit/resources/async.rbs +12 -0
  23. data/sig/safety_kit/resources/beta/events.rbs +0 -5
  24. metadata +11 -8
  25. data/lib/safety_kit/models/beta/event_create_async_params.rb +0 -4981
  26. data/lib/safety_kit/models/beta/event_create_async_response.rb +0 -41
  27. data/rbi/safety_kit/models/beta/event_create_async_params.rbi +0 -10356
  28. data/rbi/safety_kit/models/beta/event_create_async_response.rbi +0 -87
  29. data/sig/safety_kit/models/beta/event_create_async_params.rbs +0 -3897
  30. data/sig/safety_kit/models/beta/event_create_async_response.rbs +0 -37
@@ -0,0 +1,81 @@
1
+ # typed: strong
2
+
3
+ module SafetyKit
4
+ module Models
5
+ class AsyncCreateAsyncResponse < SafetyKit::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ SafetyKit::Models::AsyncCreateAsyncResponse,
10
+ SafetyKit::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Number of events queued from the request.
15
+ sig { returns(Integer) }
16
+ attr_accessor :queued_events
17
+
18
+ # Events were queued for asynchronous ingestion.
19
+ sig do
20
+ returns(
21
+ SafetyKit::Models::AsyncCreateAsyncResponse::Status::TaggedSymbol
22
+ )
23
+ end
24
+ attr_accessor :status
25
+
26
+ # Response returned after SafetyKit queues one event or an ordered event batch.
27
+ sig do
28
+ params(
29
+ queued_events: Integer,
30
+ status: SafetyKit::Models::AsyncCreateAsyncResponse::Status::OrSymbol
31
+ ).returns(T.attached_class)
32
+ end
33
+ def self.new(
34
+ # Number of events queued from the request.
35
+ queued_events:,
36
+ # Events were queued for asynchronous ingestion.
37
+ status:
38
+ )
39
+ end
40
+
41
+ sig do
42
+ override.returns(
43
+ {
44
+ queued_events: Integer,
45
+ status:
46
+ SafetyKit::Models::AsyncCreateAsyncResponse::Status::TaggedSymbol
47
+ }
48
+ )
49
+ end
50
+ def to_hash
51
+ end
52
+
53
+ # Events were queued for asynchronous ingestion.
54
+ module Status
55
+ extend SafetyKit::Internal::Type::Enum
56
+
57
+ TaggedSymbol =
58
+ T.type_alias do
59
+ T.all(Symbol, SafetyKit::Models::AsyncCreateAsyncResponse::Status)
60
+ end
61
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
62
+
63
+ QUEUED =
64
+ T.let(
65
+ :queued,
66
+ SafetyKit::Models::AsyncCreateAsyncResponse::Status::TaggedSymbol
67
+ )
68
+
69
+ sig do
70
+ override.returns(
71
+ T::Array[
72
+ SafetyKit::Models::AsyncCreateAsyncResponse::Status::TaggedSymbol
73
+ ]
74
+ )
75
+ end
76
+ def self.values
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
@@ -4,6 +4,8 @@ module SafetyKit
4
4
  AgentDecisionCreateAgentDecisionParams =
5
5
  SafetyKit::Models::AgentDecisionCreateAgentDecisionParams
6
6
 
7
+ AsyncCreateAsyncParams = SafetyKit::Models::AsyncCreateAsyncParams
8
+
7
9
  Beta = SafetyKit::Models::Beta
8
10
 
9
11
  ClientSessionCreateSessionParams =
@@ -0,0 +1,53 @@
1
+ # typed: strong
2
+
3
+ module SafetyKit
4
+ module Resources
5
+ # Beta. Send backend events for account, content, user interaction, report, and
6
+ # moderation activity.
7
+ class Async
8
+ # Beta. Queue backend events for asynchronous ingestion. This endpoint accepts the
9
+ # same request body as POST /v1/events, writes one SQS message per event, and
10
+ # returns after the events are queued. SafetyKit later processes the queued events
11
+ # through the standard event ingestion path.
12
+ sig do
13
+ params(
14
+ body:
15
+ T.any(
16
+ SafetyKit::AsyncCreateAsyncParams::Body::UserContactEventRequest::OrHash,
17
+ SafetyKit::AsyncCreateAsyncParams::Body::ContentUploadedEventRequest::OrHash,
18
+ SafetyKit::AsyncCreateAsyncParams::Body::ProductChangedEventRequest::OrHash,
19
+ SafetyKit::AsyncCreateAsyncParams::Body::CreateAccountEventRequest::OrHash,
20
+ SafetyKit::AsyncCreateAsyncParams::Body::UpdateAccountEventRequest::OrHash,
21
+ SafetyKit::AsyncCreateAsyncParams::Body::UserReportEventRequest::OrHash,
22
+ SafetyKit::AsyncCreateAsyncParams::Body::ModerationDecisionEventRequest::OrHash,
23
+ T::Array[
24
+ T.any(
25
+ SafetyKit::AsyncCreateAsyncParams::Body::UnionMember7::UserContact::OrHash,
26
+ SafetyKit::AsyncCreateAsyncParams::Body::UnionMember7::ContentUploaded::OrHash,
27
+ SafetyKit::AsyncCreateAsyncParams::Body::UnionMember7::ProductChanged::OrHash,
28
+ SafetyKit::AsyncCreateAsyncParams::Body::UnionMember7::CreateAccount::OrHash,
29
+ SafetyKit::AsyncCreateAsyncParams::Body::UnionMember7::UpdateAccount::OrHash,
30
+ SafetyKit::AsyncCreateAsyncParams::Body::UnionMember7::UserReport::OrHash,
31
+ SafetyKit::AsyncCreateAsyncParams::Body::UnionMember7::ModerationDecision::OrHash
32
+ )
33
+ ]
34
+ ),
35
+ request_options: SafetyKit::RequestOptions::OrHash
36
+ ).returns(SafetyKit::Models::AsyncCreateAsyncResponse)
37
+ end
38
+ def create_async(
39
+ # Backend event or ordered batch of events to send to SafetyKit. Send events from
40
+ # your server after an action has happened in your product. Do not send these
41
+ # events directly from a browser or mobile client.
42
+ body:,
43
+ request_options: {}
44
+ )
45
+ end
46
+
47
+ # @api private
48
+ sig { params(client: SafetyKit::Client).returns(T.attached_class) }
49
+ def self.new(client:)
50
+ end
51
+ end
52
+ end
53
+ end
@@ -46,45 +46,6 @@ module SafetyKit
46
46
  )
47
47
  end
48
48
 
49
- # Beta. Queue backend events for asynchronous ingestion. This endpoint accepts the
50
- # same request body as POST /v1/events, writes one SQS message per event, and
51
- # returns after the events are queued. SafetyKit later processes the queued events
52
- # through the standard event ingestion path.
53
- sig do
54
- params(
55
- body:
56
- T.any(
57
- SafetyKit::Beta::EventCreateAsyncParams::Body::UserContactEventRequest::OrHash,
58
- SafetyKit::Beta::EventCreateAsyncParams::Body::ContentUploadedEventRequest::OrHash,
59
- SafetyKit::Beta::EventCreateAsyncParams::Body::ProductChangedEventRequest::OrHash,
60
- SafetyKit::Beta::EventCreateAsyncParams::Body::CreateAccountEventRequest::OrHash,
61
- SafetyKit::Beta::EventCreateAsyncParams::Body::UpdateAccountEventRequest::OrHash,
62
- SafetyKit::Beta::EventCreateAsyncParams::Body::UserReportEventRequest::OrHash,
63
- SafetyKit::Beta::EventCreateAsyncParams::Body::ModerationDecisionEventRequest::OrHash,
64
- T::Array[
65
- T.any(
66
- SafetyKit::Beta::EventCreateAsyncParams::Body::UnionMember7::UserContact::OrHash,
67
- SafetyKit::Beta::EventCreateAsyncParams::Body::UnionMember7::ContentUploaded::OrHash,
68
- SafetyKit::Beta::EventCreateAsyncParams::Body::UnionMember7::ProductChanged::OrHash,
69
- SafetyKit::Beta::EventCreateAsyncParams::Body::UnionMember7::CreateAccount::OrHash,
70
- SafetyKit::Beta::EventCreateAsyncParams::Body::UnionMember7::UpdateAccount::OrHash,
71
- SafetyKit::Beta::EventCreateAsyncParams::Body::UnionMember7::UserReport::OrHash,
72
- SafetyKit::Beta::EventCreateAsyncParams::Body::UnionMember7::ModerationDecision::OrHash
73
- )
74
- ]
75
- ),
76
- request_options: SafetyKit::RequestOptions::OrHash
77
- ).returns(SafetyKit::Models::Beta::EventCreateAsyncResponse)
78
- end
79
- def create_async(
80
- # Backend event or ordered batch of events to send to SafetyKit. Send events from
81
- # your server after an action has happened in your product. Do not send these
82
- # events directly from a browser or mobile client.
83
- body:,
84
- request_options: {}
85
- )
86
- end
87
-
88
49
  # @api private
89
50
  sig { params(client: SafetyKit::Client).returns(T.attached_class) }
90
51
  def self.new(client:)
@@ -16,6 +16,8 @@ module SafetyKit
16
16
 
17
17
  attr_reader agent_decisions: SafetyKit::Resources::AgentDecisions
18
18
 
19
+ attr_reader async: SafetyKit::Resources::Async
20
+
19
21
  attr_reader client_sessions: SafetyKit::Resources::ClientSessions
20
22
 
21
23
  attr_reader beta: SafetyKit::Resources::Beta