getstream-ruby 5.0.0 → 6.0.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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/lib/getstream_ruby/generated/feeds_client.rb +81 -4
  3. data/lib/getstream_ruby/generated/models/activity_request.rb +1 -1
  4. data/lib/getstream_ruby/generated/models/activity_response.rb +1 -1
  5. data/lib/getstream_ruby/generated/models/add_activity_request.rb +6 -1
  6. data/lib/getstream_ruby/generated/models/add_comment_bookmark_request.rb +51 -0
  7. data/lib/getstream_ruby/generated/models/add_comment_bookmark_response.rb +36 -0
  8. data/lib/getstream_ruby/generated/models/add_comment_request.rb +5 -0
  9. data/lib/getstream_ruby/generated/models/aggregation_config.rb +5 -0
  10. data/lib/getstream_ruby/generated/models/ban_action_request_payload.rb +5 -0
  11. data/lib/getstream_ruby/generated/models/bookmark_response.rb +20 -0
  12. data/lib/getstream_ruby/generated/models/bypass_action_request.rb +31 -0
  13. data/lib/getstream_ruby/generated/models/bypass_request.rb +36 -0
  14. data/lib/getstream_ruby/generated/models/bypass_response.rb +31 -0
  15. data/lib/getstream_ruby/generated/models/call_stats_participant_counts.rb +20 -0
  16. data/lib/getstream_ruby/generated/models/call_stats_participant_session.rb +15 -0
  17. data/lib/getstream_ruby/generated/models/call_stats_report_ready_event.rb +5 -0
  18. data/lib/getstream_ruby/generated/models/call_stats_session_response.rb +61 -0
  19. data/lib/getstream_ruby/generated/models/comment_response.rb +5 -0
  20. data/lib/getstream_ruby/generated/models/delete_comment_bookmark_response.rb +36 -0
  21. data/lib/getstream_ruby/generated/models/emau_stats_response.rb +41 -0
  22. data/lib/getstream_ruby/generated/models/entity_creator_response.rb +5 -0
  23. data/lib/getstream_ruby/generated/models/feed_input.rb +6 -1
  24. data/lib/getstream_ruby/generated/models/feed_request.rb +6 -1
  25. data/lib/getstream_ruby/generated/models/feed_response.rb +5 -0
  26. data/lib/getstream_ruby/generated/models/feed_suggestion_response.rb +5 -0
  27. data/lib/getstream_ruby/generated/models/follow_batch_request.rb +5 -0
  28. data/lib/getstream_ruby/generated/models/follow_request.rb +10 -0
  29. data/lib/getstream_ruby/generated/models/full_user_response.rb +5 -0
  30. data/lib/getstream_ruby/generated/models/get_import_v2_task_response.rb +6 -1
  31. data/lib/getstream_ruby/generated/models/import_v2_task_item.rb +6 -1
  32. data/lib/getstream_ruby/generated/models/import_v2_task_settings.rb +5 -0
  33. data/lib/getstream_ruby/generated/models/location.rb +10 -15
  34. data/lib/getstream_ruby/generated/models/query_activities_request.rb +5 -0
  35. data/lib/getstream_ruby/generated/models/query_call_session_stats_request.rb +51 -0
  36. data/lib/getstream_ruby/generated/models/query_call_session_stats_response.rb +46 -0
  37. data/lib/getstream_ruby/generated/models/query_comments_request.rb +2 -2
  38. data/lib/getstream_ruby/generated/models/query_feeds_usage_stats_response.rb +6 -1
  39. data/lib/getstream_ruby/generated/models/query_reactions_request.rb +2 -2
  40. data/lib/getstream_ruby/generated/models/query_threads_request.rb +2 -2
  41. data/lib/getstream_ruby/generated/models/raw_record_settings.rb +6 -1
  42. data/lib/getstream_ruby/generated/models/raw_recording_settings_request.rb +6 -1
  43. data/lib/getstream_ruby/generated/models/raw_recording_settings_response.rb +6 -1
  44. data/lib/getstream_ruby/generated/models/submit_action_request.rb +5 -0
  45. data/lib/getstream_ruby/generated/models/threaded_comment_response.rb +5 -0
  46. data/lib/getstream_ruby/generated/models/unban_action_request_payload.rb +6 -1
  47. data/lib/getstream_ruby/generated/models/update_activities_partial_batch_request.rb +6 -1
  48. data/lib/getstream_ruby/generated/models/update_activity_partial_request.rb +5 -0
  49. data/lib/getstream_ruby/generated/models/update_activity_request.rb +6 -1
  50. data/lib/getstream_ruby/generated/models/update_bookmark_request.rb +2 -2
  51. data/lib/getstream_ruby/generated/models/update_comment_bookmark_request.rb +56 -0
  52. data/lib/getstream_ruby/generated/models/update_comment_bookmark_response.rb +36 -0
  53. data/lib/getstream_ruby/generated/models/update_comment_partial_request.rb +5 -0
  54. data/lib/getstream_ruby/generated/models/update_comment_request.rb +5 -0
  55. data/lib/getstream_ruby/generated/models/update_feed_request.rb +11 -1
  56. data/lib/getstream_ruby/generated/models/update_follow_request.rb +10 -0
  57. data/lib/getstream_ruby/generated/models/upsert_activities_request.rb +6 -1
  58. data/lib/getstream_ruby/generated/models/upsert_config_request.rb +1 -1
  59. data/lib/getstream_ruby/generated/models/upsert_moderation_rule_request.rb +22 -12
  60. data/lib/getstream_ruby/generated/models/user_response.rb +5 -0
  61. data/lib/getstream_ruby/generated/moderation_client.rb +27 -3
  62. data/lib/getstream_ruby/generated/video_client.rb +17 -0
  63. data/lib/getstream_ruby/version.rb +1 -1
  64. metadata +14 -2
@@ -10,41 +10,47 @@ module GetStream
10
10
 
11
11
  # Model attributes
12
12
  # @!attribute name
13
- # @return [String]
13
+ # @return [String] Unique rule name
14
14
  attr_accessor :name
15
15
  # @!attribute rule_type
16
- # @return [String]
16
+ # @return [String] Type of rule: user, content, or call
17
17
  attr_accessor :rule_type
18
18
  # @!attribute cooldown_period
19
- # @return [String]
19
+ # @return [String] Duration before rule can trigger again (e.g. 24h, 7d)
20
20
  attr_accessor :cooldown_period
21
21
  # @!attribute description
22
- # @return [String]
22
+ # @return [String] Optional description of the rule
23
23
  attr_accessor :description
24
24
  # @!attribute enabled
25
- # @return [Boolean]
25
+ # @return [Boolean] Whether the rule is active
26
26
  attr_accessor :enabled
27
27
  # @!attribute logic
28
- # @return [String]
28
+ # @return [String] Logical operator between conditions/groups: AND or OR
29
29
  attr_accessor :logic
30
30
  # @!attribute team
31
- # @return [String]
31
+ # @return [String] Team scope for the rule
32
32
  attr_accessor :team
33
+ # @!attribute user_id
34
+ # @return [String] Optional user ID to associate with the audit log entry
35
+ attr_accessor :user_id
33
36
  # @!attribute action_sequences
34
- # @return [Array<CallRuleActionSequence>]
37
+ # @return [Array<CallRuleActionSequence>] Escalation sequences for call rules
35
38
  attr_accessor :action_sequences
36
39
  # @!attribute conditions
37
- # @return [Array<RuleBuilderCondition>]
40
+ # @return [Array<RuleBuilderCondition>] Flat list of conditions (legacy)
38
41
  attr_accessor :conditions
39
42
  # @!attribute config_keys
40
- # @return [Array<String>]
43
+ # @return [Array<String>] List of config keys this rule applies to
41
44
  attr_accessor :config_keys
42
45
  # @!attribute groups
43
- # @return [Array<RuleBuilderConditionGroup>]
46
+ # @return [Array<RuleBuilderConditionGroup>] Nested condition groups
44
47
  attr_accessor :groups
45
48
  # @!attribute action
46
49
  # @return [RuleBuilderAction]
47
50
  attr_accessor :action
51
+ # @!attribute user
52
+ # @return [UserRequest]
53
+ attr_accessor :user
48
54
 
49
55
  # Initialize with attributes
50
56
  def initialize(attributes = {})
@@ -56,11 +62,13 @@ module GetStream
56
62
  @enabled = attributes[:enabled] || attributes['enabled'] || nil
57
63
  @logic = attributes[:logic] || attributes['logic'] || nil
58
64
  @team = attributes[:team] || attributes['team'] || nil
65
+ @user_id = attributes[:user_id] || attributes['user_id'] || nil
59
66
  @action_sequences = attributes[:action_sequences] || attributes['action_sequences'] || nil
60
67
  @conditions = attributes[:conditions] || attributes['conditions'] || nil
61
68
  @config_keys = attributes[:config_keys] || attributes['config_keys'] || nil
62
69
  @groups = attributes[:groups] || attributes['groups'] || nil
63
70
  @action = attributes[:action] || attributes['action'] || nil
71
+ @user = attributes[:user] || attributes['user'] || nil
64
72
  end
65
73
 
66
74
  # Override field mappings for JSON serialization
@@ -73,11 +81,13 @@ module GetStream
73
81
  enabled: 'enabled',
74
82
  logic: 'logic',
75
83
  team: 'team',
84
+ user_id: 'user_id',
76
85
  action_sequences: 'action_sequences',
77
86
  conditions: 'conditions',
78
87
  config_keys: 'config_keys',
79
88
  groups: 'groups',
80
- action: 'action'
89
+ action: 'action',
90
+ user: 'user'
81
91
  }
82
92
  end
83
93
  end
@@ -51,6 +51,9 @@ module GetStream
51
51
  # @!attribute ban_expires
52
52
  # @return [DateTime] Date when ban expires
53
53
  attr_accessor :ban_expires
54
+ # @!attribute bypass_moderation
55
+ # @return [Boolean]
56
+ attr_accessor :bypass_moderation
54
57
  # @!attribute deactivated_at
55
58
  # @return [DateTime] Date of deactivation
56
59
  attr_accessor :deactivated_at
@@ -99,6 +102,7 @@ module GetStream
99
102
  @custom = attributes[:custom] || attributes['custom']
100
103
  @avg_response_time = attributes[:avg_response_time] || attributes['avg_response_time'] || nil
101
104
  @ban_expires = attributes[:ban_expires] || attributes['ban_expires'] || nil
105
+ @bypass_moderation = attributes[:bypass_moderation] || attributes['bypass_moderation'] || nil
102
106
  @deactivated_at = attributes[:deactivated_at] || attributes['deactivated_at'] || nil
103
107
  @deleted_at = attributes[:deleted_at] || attributes['deleted_at'] || nil
104
108
  @image = attributes[:image] || attributes['image'] || nil
@@ -128,6 +132,7 @@ module GetStream
128
132
  custom: 'custom',
129
133
  avg_response_time: 'avg_response_time',
130
134
  ban_expires: 'ban_expires',
135
+ bypass_moderation: 'bypass_moderation',
131
136
  deactivated_at: 'deactivated_at',
132
137
  deleted_at: 'deleted_at',
133
138
  image: 'image',
@@ -113,6 +113,23 @@ module GetStream
113
113
  )
114
114
  end
115
115
 
116
+ # Enable or disable moderation bypass for a user. This endpoint is server-side only.
117
+ #
118
+ # @param bypass_request [BypassRequest]
119
+ # @return [Models::BypassResponse]
120
+ def bypass(bypass_request)
121
+ path = '/api/v2/moderation/bypass'
122
+ # Build request body
123
+ body = bypass_request
124
+
125
+ # Make the API request
126
+ @client.make_request(
127
+ :post,
128
+ path,
129
+ body: body
130
+ )
131
+ end
132
+
116
133
  # Run moderation checks on the provided content
117
134
  #
118
135
  # @param check_request [CheckRequest]
@@ -168,14 +185,16 @@ module GetStream
168
185
  #
169
186
  # @param key [String]
170
187
  # @param team [String]
188
+ # @param user_id [String]
171
189
  # @return [Models::DeleteModerationConfigResponse]
172
- def delete_config(key, team = nil)
190
+ def delete_config(key, team = nil, user_id = nil)
173
191
  path = '/api/v2/moderation/config/{key}'
174
192
  # Replace path parameters
175
193
  path = path.gsub('{key}', key.to_s)
176
194
  # Build query parameters
177
195
  query_params = {}
178
196
  query_params['team'] = team unless team.nil?
197
+ query_params['user_id'] = user_id unless user_id.nil?
179
198
 
180
199
  # Make the API request
181
200
  @client.make_request(
@@ -370,14 +389,19 @@ module GetStream
370
389
 
371
390
  # Delete an existing moderation rule
372
391
  #
392
+ # @param user_id [String]
373
393
  # @return [Models::DeleteModerationRuleResponse]
374
- def delete_moderation_rule()
394
+ def delete_moderation_rule(user_id = nil)
375
395
  path = '/api/v2/moderation/moderation_rule/{id}'
396
+ # Build query parameters
397
+ query_params = {}
398
+ query_params['user_id'] = user_id unless user_id.nil?
376
399
 
377
400
  # Make the API request
378
401
  @client.make_request(
379
402
  :delete,
380
- path
403
+ path,
404
+ query_params: query_params
381
405
  )
382
406
  end
383
407
 
@@ -970,6 +970,23 @@ module GetStream
970
970
  )
971
971
  end
972
972
 
973
+ #
974
+ #
975
+ # @param query_call_session_stats_request [QueryCallSessionStatsRequest]
976
+ # @return [Models::QueryCallSessionStatsResponse]
977
+ def query_call_session_stats(query_call_session_stats_request)
978
+ path = '/api/v2/video/call_stats'
979
+ # Build request body
980
+ body = query_call_session_stats_request
981
+
982
+ # Make the API request
983
+ @client.make_request(
984
+ :post,
985
+ path,
986
+ body: body
987
+ )
988
+ end
989
+
973
990
  #
974
991
  #
975
992
  # @param call_type [String]
@@ -2,6 +2,6 @@
2
2
 
3
3
  module GetStreamRuby
4
4
 
5
- VERSION = '5.0.0'
5
+ VERSION = '6.0.0'
6
6
 
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: getstream-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.0
4
+ version: 6.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GetStream
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-03-31 00:00:00.000000000 Z
11
+ date: 2026-04-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dotenv
@@ -152,6 +152,8 @@ files:
152
152
  - lib/getstream_ruby/generated/models/add_activity_response.rb
153
153
  - lib/getstream_ruby/generated/models/add_bookmark_request.rb
154
154
  - lib/getstream_ruby/generated/models/add_bookmark_response.rb
155
+ - lib/getstream_ruby/generated/models/add_comment_bookmark_request.rb
156
+ - lib/getstream_ruby/generated/models/add_comment_bookmark_response.rb
155
157
  - lib/getstream_ruby/generated/models/add_comment_reaction_request.rb
156
158
  - lib/getstream_ruby/generated/models/add_comment_reaction_response.rb
157
159
  - lib/getstream_ruby/generated/models/add_comment_request.rb
@@ -240,6 +242,9 @@ files:
240
242
  - lib/getstream_ruby/generated/models/browser_data_response.rb
241
243
  - lib/getstream_ruby/generated/models/bulk_image_moderation_request.rb
242
244
  - lib/getstream_ruby/generated/models/bulk_image_moderation_response.rb
245
+ - lib/getstream_ruby/generated/models/bypass_action_request.rb
246
+ - lib/getstream_ruby/generated/models/bypass_request.rb
247
+ - lib/getstream_ruby/generated/models/bypass_response.rb
243
248
  - lib/getstream_ruby/generated/models/call_accepted_event.rb
244
249
  - lib/getstream_ruby/generated/models/call_action_options.rb
245
250
  - lib/getstream_ruby/generated/models/call_closed_caption.rb
@@ -312,6 +317,7 @@ files:
312
317
  - lib/getstream_ruby/generated/models/call_stats_participant_session.rb
313
318
  - lib/getstream_ruby/generated/models/call_stats_report_ready_event.rb
314
319
  - lib/getstream_ruby/generated/models/call_stats_report_summary_response.rb
320
+ - lib/getstream_ruby/generated/models/call_stats_session_response.rb
315
321
  - lib/getstream_ruby/generated/models/call_transcription.rb
316
322
  - lib/getstream_ruby/generated/models/call_transcription_failed_event.rb
317
323
  - lib/getstream_ruby/generated/models/call_transcription_ready_event.rb
@@ -498,6 +504,7 @@ files:
498
504
  - lib/getstream_ruby/generated/models/delete_collections_response.rb
499
505
  - lib/getstream_ruby/generated/models/delete_command_request.rb
500
506
  - lib/getstream_ruby/generated/models/delete_command_response.rb
507
+ - lib/getstream_ruby/generated/models/delete_comment_bookmark_response.rb
501
508
  - lib/getstream_ruby/generated/models/delete_comment_reaction_request.rb
502
509
  - lib/getstream_ruby/generated/models/delete_comment_reaction_response.rb
503
510
  - lib/getstream_ruby/generated/models/delete_comment_request.rb
@@ -569,6 +576,7 @@ files:
569
576
  - lib/getstream_ruby/generated/models/egress_hls_response.rb
570
577
  - lib/getstream_ruby/generated/models/egress_response.rb
571
578
  - lib/getstream_ruby/generated/models/egress_rtmp_response.rb
579
+ - lib/getstream_ruby/generated/models/emau_stats_response.rb
572
580
  - lib/getstream_ruby/generated/models/end_call_request.rb
573
581
  - lib/getstream_ruby/generated/models/end_call_response.rb
574
582
  - lib/getstream_ruby/generated/models/enriched_activity.rb
@@ -983,6 +991,8 @@ files:
983
991
  - lib/getstream_ruby/generated/models/query_call_participants_response.rb
984
992
  - lib/getstream_ruby/generated/models/query_call_session_participant_stats_response.rb
985
993
  - lib/getstream_ruby/generated/models/query_call_session_participant_stats_timeline_response.rb
994
+ - lib/getstream_ruby/generated/models/query_call_session_stats_request.rb
995
+ - lib/getstream_ruby/generated/models/query_call_session_stats_response.rb
986
996
  - lib/getstream_ruby/generated/models/query_call_stats_map_response.rb
987
997
  - lib/getstream_ruby/generated/models/query_call_stats_request.rb
988
998
  - lib/getstream_ruby/generated/models/query_call_stats_response.rb
@@ -1323,6 +1333,8 @@ files:
1323
1333
  - lib/getstream_ruby/generated/models/update_collections_response.rb
1324
1334
  - lib/getstream_ruby/generated/models/update_command_request.rb
1325
1335
  - lib/getstream_ruby/generated/models/update_command_response.rb
1336
+ - lib/getstream_ruby/generated/models/update_comment_bookmark_request.rb
1337
+ - lib/getstream_ruby/generated/models/update_comment_bookmark_response.rb
1326
1338
  - lib/getstream_ruby/generated/models/update_comment_partial_request.rb
1327
1339
  - lib/getstream_ruby/generated/models/update_comment_partial_response.rb
1328
1340
  - lib/getstream_ruby/generated/models/update_comment_request.rb