getstream-ruby 6.0.0 → 6.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +29 -0
  3. data/lib/getstream_ruby/client.rb +16 -5
  4. data/lib/getstream_ruby/configuration.rb +32 -5
  5. data/lib/getstream_ruby/generated/chat_client.rb +70 -0
  6. data/lib/getstream_ruby/generated/feed.rb +10 -0
  7. data/lib/getstream_ruby/generated/feeds_client.rb +41 -2
  8. data/lib/getstream_ruby/generated/models/action_log_response.rb +5 -0
  9. data/lib/getstream_ruby/generated/models/{coordinates.rb → activity_filter_config.rb} +6 -11
  10. data/lib/getstream_ruby/generated/models/activity_selector_config.rb +1 -1
  11. data/lib/getstream_ruby/generated/models/activity_selector_config_response.rb +1 -1
  12. data/lib/getstream_ruby/generated/models/add_activity_request.rb +5 -0
  13. data/lib/getstream_ruby/generated/models/add_reaction_request.rb +5 -0
  14. data/lib/getstream_ruby/generated/models/app_response_fields.rb +5 -0
  15. data/lib/getstream_ruby/generated/models/async_export_error_event.rb +1 -1
  16. data/lib/getstream_ruby/generated/models/{label.rb → bodyguard_profile_summary.rb} +11 -11
  17. data/lib/getstream_ruby/generated/models/{delete_bookmark_folder_request.rb → bulk_delete_action_config_request.rb} +6 -1
  18. data/lib/getstream_ruby/generated/models/bulk_delete_action_config_response.rb +36 -0
  19. data/lib/getstream_ruby/generated/models/bulk_upsert_action_config_request.rb +41 -0
  20. data/lib/getstream_ruby/generated/models/bulk_upsert_action_config_response.rb +36 -0
  21. data/lib/getstream_ruby/generated/models/call_stats_participant_session.rb +5 -0
  22. data/lib/getstream_ruby/generated/models/campaign_channel_template.rb +6 -6
  23. data/lib/getstream_ruby/generated/models/campaign_message_template.rb +8 -8
  24. data/lib/getstream_ruby/generated/models/change_feed_visibility_request.rb +36 -0
  25. data/lib/getstream_ruby/generated/models/{reject_appeal_request.rb → change_feed_visibility_response.rb} +10 -5
  26. data/lib/getstream_ruby/generated/models/{custom_action_request.rb → channel_message_count_rule_parameters.rb} +10 -10
  27. data/lib/getstream_ruby/generated/models/chat_draft_payload_response.rb +91 -0
  28. data/lib/getstream_ruby/generated/models/chat_draft_response.rb +56 -0
  29. data/lib/getstream_ruby/generated/models/{message.rb → chat_message_response.rb} +48 -28
  30. data/lib/getstream_ruby/generated/models/chat_moderation_v2_response.rb +66 -0
  31. data/lib/getstream_ruby/generated/models/chat_reaction_group_response.rb +51 -0
  32. data/lib/getstream_ruby/generated/models/{any_event.rb → chat_reaction_group_user_response.rb} +10 -5
  33. data/lib/getstream_ruby/generated/models/chat_reaction_response.rb +66 -0
  34. data/lib/getstream_ruby/generated/models/{message_reminder.rb → chat_reminder_response_data.rb} +3 -13
  35. data/lib/getstream_ruby/generated/models/chat_shared_location_response_data.rb +76 -0
  36. data/lib/getstream_ruby/generated/models/config_response.rb +5 -0
  37. data/lib/getstream_ruby/generated/models/create_campaign_request.rb +96 -0
  38. data/lib/getstream_ruby/generated/models/create_campaign_response.rb +41 -0
  39. data/lib/getstream_ruby/generated/models/create_feed_group_request.rb +5 -0
  40. data/lib/getstream_ruby/generated/models/delete_action_config_response.rb +36 -0
  41. data/lib/getstream_ruby/generated/models/{delivery_receipts.rb → delete_campaign_response.rb} +7 -7
  42. data/lib/getstream_ruby/generated/models/enrichment_options.rb +5 -0
  43. data/lib/getstream_ruby/generated/models/error_result.rb +5 -0
  44. data/lib/getstream_ruby/generated/models/event_hook.rb +6 -1
  45. data/lib/getstream_ruby/generated/models/feed_group.rb +5 -0
  46. data/lib/getstream_ruby/generated/models/feed_group_response.rb +5 -0
  47. data/lib/getstream_ruby/generated/models/{activity_location.rb → feeds_activity_location.rb} +3 -3
  48. data/lib/getstream_ruby/generated/models/feeds_bookmark_response.rb +61 -0
  49. data/lib/getstream_ruby/generated/models/{poll_vote.rb → feeds_enriched_collection_response.rb} +15 -25
  50. data/lib/getstream_ruby/generated/models/feeds_feed_response.rb +116 -0
  51. data/lib/getstream_ruby/generated/models/feeds_notification_comment.rb +46 -0
  52. data/lib/getstream_ruby/generated/models/{follow_pair.rb → feeds_notification_context.rb} +9 -9
  53. data/lib/getstream_ruby/generated/models/feeds_notification_parent_activity.rb +51 -0
  54. data/lib/getstream_ruby/generated/models/feeds_notification_target.rb +71 -0
  55. data/lib/getstream_ruby/generated/models/{poll_option.rb → feeds_notification_trigger.rb} +12 -7
  56. data/lib/getstream_ruby/generated/models/feeds_reaction_group_response.rb +3 -3
  57. data/lib/getstream_ruby/generated/models/feeds_reaction_response.rb +6 -6
  58. data/lib/getstream_ruby/generated/models/feeds_v3_activity_response.rb +66 -6
  59. data/lib/getstream_ruby/generated/models/feeds_v3_comment_response.rb +17 -2
  60. data/lib/getstream_ruby/generated/models/get_action_config_response.rb +36 -0
  61. data/lib/getstream_ruby/generated/models/get_or_create_feed_group_request.rb +5 -0
  62. data/lib/getstream_ruby/generated/models/grouped_channels_bucket.rb +36 -0
  63. data/lib/getstream_ruby/generated/models/{delete_collections_request.rb → grouped_query_channels_request.rb} +6 -1
  64. data/lib/getstream_ruby/generated/models/grouped_query_channels_response.rb +36 -0
  65. data/lib/getstream_ruby/generated/models/insert_action_log_request.rb +10 -0
  66. data/lib/getstream_ruby/generated/models/label_result_response.rb +101 -0
  67. data/lib/getstream_ruby/generated/models/labels_request.rb +56 -0
  68. data/lib/getstream_ruby/generated/models/labels_response.rb +71 -0
  69. data/lib/getstream_ruby/generated/models/message_new_event.rb +5 -0
  70. data/lib/getstream_ruby/generated/models/moderation_action_config_response.rb +5 -0
  71. data/lib/getstream_ruby/generated/models/moderation_dashboard_preferences.rb +5 -0
  72. data/lib/getstream_ruby/generated/models/notification_mark_unread_event.rb +5 -0
  73. data/lib/getstream_ruby/generated/models/query_label_results_request.rb +61 -0
  74. data/lib/getstream_ruby/generated/models/query_label_results_response.rb +46 -0
  75. data/lib/getstream_ruby/generated/models/query_review_queue_request.rb +5 -0
  76. data/lib/getstream_ruby/generated/models/query_review_queue_response.rb +5 -0
  77. data/lib/getstream_ruby/generated/models/query_revision_history_request.rb +51 -0
  78. data/lib/getstream_ruby/generated/models/query_revision_history_response.rb +46 -0
  79. data/lib/getstream_ruby/generated/models/review_queue_item_response.rb +1 -1
  80. data/lib/getstream_ruby/generated/models/revision_history_response.rb +66 -0
  81. data/lib/getstream_ruby/generated/models/rule_builder_condition.rb +5 -0
  82. data/lib/getstream_ruby/generated/models/submit_moderation_feedback_request.rb +71 -0
  83. data/lib/getstream_ruby/generated/models/{block_action_request.rb → submit_moderation_feedback_response.rb} +5 -5
  84. data/lib/getstream_ruby/generated/models/update_app_request.rb +5 -0
  85. data/lib/getstream_ruby/generated/models/update_campaign_request.rb +96 -0
  86. data/lib/getstream_ruby/generated/models/update_feed_group_request.rb +5 -0
  87. data/lib/getstream_ruby/generated/models/{moderation_action_config.rb → upsert_action_config_item.rb} +22 -12
  88. data/lib/getstream_ruby/generated/models/upsert_action_config_request.rb +76 -0
  89. data/lib/getstream_ruby/generated/models/upsert_action_config_response.rb +36 -0
  90. data/lib/getstream_ruby/generated/models/upsert_activities_request.rb +5 -0
  91. data/lib/getstream_ruby/generated/models/webhook_failover_config.rb +46 -0
  92. data/lib/getstream_ruby/generated/moderation_client.rb +149 -0
  93. data/lib/getstream_ruby/version.rb +1 -1
  94. data/lib/getstream_ruby.rb +2 -3
  95. metadata +52 -94
  96. data/lib/getstream_ruby/generated/models/activity_marked_event.rb +0 -66
  97. data/lib/getstream_ruby/generated/models/automod_details.rb +0 -51
  98. data/lib/getstream_ruby/generated/models/ban.rb +0 -61
  99. data/lib/getstream_ruby/generated/models/ban_action_request.rb +0 -56
  100. data/lib/getstream_ruby/generated/models/channel.rb +0 -161
  101. data/lib/getstream_ruby/generated/models/channel_batch_updated_completed_event.rb +0 -81
  102. data/lib/getstream_ruby/generated/models/channel_batch_updated_started_event.rb +0 -81
  103. data/lib/getstream_ruby/generated/models/channel_member.rb +0 -141
  104. data/lib/getstream_ruby/generated/models/channel_member_lookup.rb +0 -66
  105. data/lib/getstream_ruby/generated/models/channel_messages.rb +0 -36
  106. data/lib/getstream_ruby/generated/models/channel_push_preferences.rb +0 -36
  107. data/lib/getstream_ruby/generated/models/config_overrides.rb +0 -96
  108. data/lib/getstream_ruby/generated/models/delete_activity_reaction_request.rb +0 -14
  109. data/lib/getstream_ruby/generated/models/delete_activity_request.rb +0 -14
  110. data/lib/getstream_ruby/generated/models/delete_block_list_request.rb +0 -14
  111. data/lib/getstream_ruby/generated/models/delete_bookmark_request.rb +0 -14
  112. data/lib/getstream_ruby/generated/models/delete_call_type_request.rb +0 -14
  113. data/lib/getstream_ruby/generated/models/delete_channel_request.rb +0 -14
  114. data/lib/getstream_ruby/generated/models/delete_command_request.rb +0 -14
  115. data/lib/getstream_ruby/generated/models/delete_comment_reaction_request.rb +0 -14
  116. data/lib/getstream_ruby/generated/models/delete_comment_request.rb +0 -14
  117. data/lib/getstream_ruby/generated/models/delete_custom_role_request.rb +0 -14
  118. data/lib/getstream_ruby/generated/models/delete_device_request.rb +0 -14
  119. data/lib/getstream_ruby/generated/models/delete_draft_request.rb +0 -14
  120. data/lib/getstream_ruby/generated/models/delete_external_storage_request.rb +0 -14
  121. data/lib/getstream_ruby/generated/models/delete_feed_group_request.rb +0 -14
  122. data/lib/getstream_ruby/generated/models/delete_feed_request.rb +0 -14
  123. data/lib/getstream_ruby/generated/models/delete_feed_view_request.rb +0 -14
  124. data/lib/getstream_ruby/generated/models/delete_import_v2_task_request.rb +0 -14
  125. data/lib/getstream_ruby/generated/models/delete_membership_level_request.rb +0 -14
  126. data/lib/getstream_ruby/generated/models/delete_message_request.rb +0 -14
  127. data/lib/getstream_ruby/generated/models/delete_moderation_config_request.rb +0 -14
  128. data/lib/getstream_ruby/generated/models/delete_moderation_template_request.rb +0 -31
  129. data/lib/getstream_ruby/generated/models/delete_poll_option_request.rb +0 -14
  130. data/lib/getstream_ruby/generated/models/delete_poll_request.rb +0 -14
  131. data/lib/getstream_ruby/generated/models/delete_poll_vote_request.rb +0 -14
  132. data/lib/getstream_ruby/generated/models/delete_push_provider_request.rb +0 -14
  133. data/lib/getstream_ruby/generated/models/delete_reaction_request.rb +0 -14
  134. data/lib/getstream_ruby/generated/models/delete_recording_request.rb +0 -14
  135. data/lib/getstream_ruby/generated/models/delete_reminder_request.rb +0 -14
  136. data/lib/getstream_ruby/generated/models/delete_segment_request.rb +0 -14
  137. data/lib/getstream_ruby/generated/models/delete_sip_inbound_routing_rule_request.rb +0 -14
  138. data/lib/getstream_ruby/generated/models/delete_sip_trunk_request.rb +0 -14
  139. data/lib/getstream_ruby/generated/models/delete_transcription_request.rb +0 -14
  140. data/lib/getstream_ruby/generated/models/delete_user_group_request.rb +0 -14
  141. data/lib/getstream_ruby/generated/models/delete_user_request.rb +0 -51
  142. data/lib/getstream_ruby/generated/models/denormalized_channel_fields.rb +0 -81
  143. data/lib/getstream_ruby/generated/models/device.rb +0 -66
  144. data/lib/getstream_ruby/generated/models/feeds_moderation_template_config.rb +0 -36
  145. data/lib/getstream_ruby/generated/models/file_delete_request.rb +0 -14
  146. data/lib/getstream_ruby/generated/models/flag.rb +0 -96
  147. data/lib/getstream_ruby/generated/models/flag_details.rb +0 -41
  148. data/lib/getstream_ruby/generated/models/flag_feedback.rb +0 -41
  149. data/lib/getstream_ruby/generated/models/flag_message_details.rb +0 -46
  150. data/lib/getstream_ruby/generated/models/get_channel_type_request.rb +0 -14
  151. data/lib/getstream_ruby/generated/models/limit_info.rb +0 -41
  152. data/lib/getstream_ruby/generated/models/mark_reviewed_request.rb +0 -41
  153. data/lib/getstream_ruby/generated/models/own_user.rb +0 -166
  154. data/lib/getstream_ruby/generated/models/poll.rb +0 -131
  155. data/lib/getstream_ruby/generated/models/privacy_settings.rb +0 -41
  156. data/lib/getstream_ruby/generated/models/push_preferences.rb +0 -51
  157. data/lib/getstream_ruby/generated/models/read_receipts.rb +0 -31
  158. data/lib/getstream_ruby/generated/models/restore_action_request.rb +0 -31
  159. data/lib/getstream_ruby/generated/models/retention_cleanup_run.rb +0 -76
  160. data/lib/getstream_ruby/generated/models/shadow_block_action_request.rb +0 -31
  161. data/lib/getstream_ruby/generated/models/sip_challenge.rb +0 -106
  162. data/lib/getstream_ruby/generated/models/sort_param.rb +0 -41
  163. data/lib/getstream_ruby/generated/models/typing_indicators.rb +0 -31
  164. data/lib/getstream_ruby/generated/models/unban_action_request.rb +0 -31
  165. data/lib/getstream_ruby/generated/models/unblock_action_request.rb +0 -31
  166. data/lib/getstream_ruby/generated/models/unfollow_request.rb +0 -14
  167. data/lib/getstream_ruby/generated/models/unpin_activity_request.rb +0 -14
  168. data/lib/getstream_ruby/generated/models/user_mute.rb +0 -51
  169. data/lib/getstream_ruby/generated/models/video_end_call_request.rb +0 -14
  170. data/lib/getstream_ruby/generated/models/video_kick_user_request.rb +0 -14
  171. data/lib/getstream_ruby/generated/models/webhook_event.rb +0 -31
@@ -67,25 +67,25 @@ module GetStream
67
67
  # @return [Array<String>]
68
68
  attr_accessor :interest_tags
69
69
  # @!attribute latest_reactions
70
- # @return [Array]
70
+ # @return [Array<FeedsReactionResponse>]
71
71
  attr_accessor :latest_reactions
72
72
  # @!attribute mentioned_users
73
73
  # @return [Array<UserResponse>]
74
74
  attr_accessor :mentioned_users
75
75
  # @!attribute own_bookmarks
76
- # @return [Array]
76
+ # @return [Array<FeedsBookmarkResponse>]
77
77
  attr_accessor :own_bookmarks
78
78
  # @!attribute own_reactions
79
- # @return [Array]
79
+ # @return [Array<FeedsReactionResponse>]
80
80
  attr_accessor :own_reactions
81
81
  # @!attribute collections
82
- # @return [Hash<String, EnrichedCollection>]
82
+ # @return [Hash<String, FeedsEnrichedCollectionResponse>]
83
83
  attr_accessor :collections
84
84
  # @!attribute custom
85
85
  # @return [Object]
86
86
  attr_accessor :custom
87
87
  # @!attribute reaction_groups
88
- # @return [Hash<String, FeedsReactionGroup>]
88
+ # @return [Hash<String, FeedsReactionGroupResponse>]
89
89
  attr_accessor :reaction_groups
90
90
  # @!attribute search_data
91
91
  # @return [Object]
@@ -102,21 +102,57 @@ module GetStream
102
102
  # @!attribute expires_at
103
103
  # @return [DateTime]
104
104
  attr_accessor :expires_at
105
+ # @!attribute friend_reaction_count
106
+ # @return [Integer]
107
+ attr_accessor :friend_reaction_count
108
+ # @!attribute is_read
109
+ # @return [Boolean]
110
+ attr_accessor :is_read
111
+ # @!attribute is_seen
112
+ # @return [Boolean]
113
+ attr_accessor :is_seen
114
+ # @!attribute is_watched
115
+ # @return [Boolean]
116
+ attr_accessor :is_watched
105
117
  # @!attribute moderation_action
106
118
  # @return [String]
107
119
  attr_accessor :moderation_action
120
+ # @!attribute selector_source
121
+ # @return [String]
122
+ attr_accessor :selector_source
108
123
  # @!attribute text
109
124
  # @return [String]
110
125
  attr_accessor :text
111
126
  # @!attribute visibility_tag
112
127
  # @return [String]
113
128
  attr_accessor :visibility_tag
129
+ # @!attribute friend_reactions
130
+ # @return [Array<FeedsReactionResponse>]
131
+ attr_accessor :friend_reactions
132
+ # @!attribute current_feed
133
+ # @return [FeedsFeedResponse]
134
+ attr_accessor :current_feed
135
+ # @!attribute location
136
+ # @return [FeedsActivityLocation]
137
+ attr_accessor :location
114
138
  # @!attribute metrics
115
139
  # @return [Hash<String, Integer>]
116
140
  attr_accessor :metrics
117
141
  # @!attribute moderation
118
142
  # @return [ModerationV2Response]
119
143
  attr_accessor :moderation
144
+ # @!attribute notification_context
145
+ # @return [FeedsNotificationContext]
146
+ attr_accessor :notification_context
147
+ # @!attribute parent
148
+ # @return [FeedsV3ActivityResponse]
149
+ attr_accessor :parent
150
+ # @!attribute poll
151
+ # @return [PollResponseData]
152
+ attr_accessor :poll
153
+ # @!attribute score_vars
154
+ # @return [Object]
155
+ attr_accessor :score_vars
120
156
 
121
157
  # Initialize with attributes
122
158
  def initialize(attributes = {})
@@ -152,11 +188,23 @@ module GetStream
152
188
  @deleted_at = attributes[:deleted_at] || attributes['deleted_at'] || nil
153
189
  @edited_at = attributes[:edited_at] || attributes['edited_at'] || nil
154
190
  @expires_at = attributes[:expires_at] || attributes['expires_at'] || nil
191
+ @friend_reaction_count = attributes[:friend_reaction_count] || attributes['friend_reaction_count'] || nil
192
+ @is_read = attributes[:is_read] || attributes['is_read'] || nil
193
+ @is_seen = attributes[:is_seen] || attributes['is_seen'] || nil
194
+ @is_watched = attributes[:is_watched] || attributes['is_watched'] || nil
155
195
  @moderation_action = attributes[:moderation_action] || attributes['moderation_action'] || nil
196
+ @selector_source = attributes[:selector_source] || attributes['selector_source'] || nil
156
197
  @text = attributes[:text] || attributes['text'] || nil
157
198
  @visibility_tag = attributes[:visibility_tag] || attributes['visibility_tag'] || nil
199
+ @friend_reactions = attributes[:friend_reactions] || attributes['friend_reactions'] || nil
200
+ @current_feed = attributes[:current_feed] || attributes['current_feed'] || nil
201
+ @location = attributes[:location] || attributes['location'] || nil
158
202
  @metrics = attributes[:metrics] || attributes['metrics'] || nil
159
203
  @moderation = attributes[:moderation] || attributes['moderation'] || nil
204
+ @notification_context = attributes[:notification_context] || attributes['notification_context'] || nil
205
+ @parent = attributes[:parent] || attributes['parent'] || nil
206
+ @poll = attributes[:poll] || attributes['poll'] || nil
207
+ @score_vars = attributes[:score_vars] || attributes['score_vars'] || nil
160
208
  end
161
209
 
162
210
  # Override field mappings for JSON serialization
@@ -193,11 +241,23 @@ module GetStream
193
241
  deleted_at: 'deleted_at',
194
242
  edited_at: 'edited_at',
195
243
  expires_at: 'expires_at',
244
+ friend_reaction_count: 'friend_reaction_count',
245
+ is_read: 'is_read',
246
+ is_seen: 'is_seen',
247
+ is_watched: 'is_watched',
196
248
  moderation_action: 'moderation_action',
249
+ selector_source: 'selector_source',
197
250
  text: 'text',
198
251
  visibility_tag: 'visibility_tag',
252
+ friend_reactions: 'friend_reactions',
253
+ current_feed: 'current_feed',
254
+ location: 'location',
199
255
  metrics: 'metrics',
200
- moderation: 'moderation'
256
+ moderation: 'moderation',
257
+ notification_context: 'notification_context',
258
+ parent: 'parent',
259
+ poll: 'poll',
260
+ score_vars: 'score_vars'
201
261
  }
202
262
  end
203
263
  end
@@ -12,6 +12,9 @@ module GetStream
12
12
  # @!attribute _object_id
13
13
  # @return [String]
14
14
  attr_accessor :_object_id
15
+ # @!attribute bookmark_count
16
+ # @return [Integer]
17
+ attr_accessor :bookmark_count
15
18
  # @!attribute confidence_score
16
19
  # @return [Float]
17
20
  attr_accessor :confidence_score
@@ -49,7 +52,7 @@ module GetStream
49
52
  # @return [Array<UserResponse>]
50
53
  attr_accessor :mentioned_users
51
54
  # @!attribute own_reactions
52
- # @return [Array]
55
+ # @return [Array<FeedsReactionResponse>]
53
56
  attr_accessor :own_reactions
54
57
  # @!attribute user
55
58
  # @return [UserResponse]
@@ -72,17 +75,24 @@ module GetStream
72
75
  # @!attribute attachments
73
76
  # @return [Array<Attachment>]
74
77
  attr_accessor :attachments
78
+ # @!attribute latest_reactions
79
+ # @return [Array<FeedsReactionResponse>]
80
+ attr_accessor :latest_reactions
75
81
  # @!attribute custom
76
82
  # @return [Object]
77
83
  attr_accessor :custom
78
84
  # @!attribute moderation
79
85
  # @return [ModerationV2Response]
80
86
  attr_accessor :moderation
87
+ # @!attribute reaction_groups
88
+ # @return [Hash<String, FeedsReactionGroupResponse>]
89
+ attr_accessor :reaction_groups
81
90
 
82
91
  # Initialize with attributes
83
92
  def initialize(attributes = {})
84
93
  super(attributes)
85
94
  @_object_id = attributes[:_object_id] || attributes['object_id']
95
+ @bookmark_count = attributes[:bookmark_count] || attributes['bookmark_count']
86
96
  @confidence_score = attributes[:confidence_score] || attributes['confidence_score']
87
97
  @created_at = attributes[:created_at] || attributes['created_at']
88
98
  @downvote_count = attributes[:downvote_count] || attributes['downvote_count']
@@ -103,14 +113,17 @@ module GetStream
103
113
  @parent_id = attributes[:parent_id] || attributes['parent_id'] || nil
104
114
  @text = attributes[:text] || attributes['text'] || nil
105
115
  @attachments = attributes[:attachments] || attributes['attachments'] || nil
116
+ @latest_reactions = attributes[:latest_reactions] || attributes['latest_reactions'] || nil
106
117
  @custom = attributes[:custom] || attributes['custom'] || nil
107
118
  @moderation = attributes[:moderation] || attributes['moderation'] || nil
119
+ @reaction_groups = attributes[:reaction_groups] || attributes['reaction_groups'] || nil
108
120
  end
109
121
 
110
122
  # Override field mappings for JSON serialization
111
123
  def self.json_field_mappings
112
124
  {
113
125
  _object_id: 'object_id',
126
+ bookmark_count: 'bookmark_count',
114
127
  confidence_score: 'confidence_score',
115
128
  created_at: 'created_at',
116
129
  downvote_count: 'downvote_count',
@@ -131,8 +144,10 @@ module GetStream
131
144
  parent_id: 'parent_id',
132
145
  text: 'text',
133
146
  attachments: 'attachments',
147
+ latest_reactions: 'latest_reactions',
134
148
  custom: 'custom',
135
- moderation: 'moderation'
149
+ moderation: 'moderation',
150
+ reaction_groups: 'reaction_groups'
136
151
  }
137
152
  end
138
153
  end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class GetActionConfigResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String]
14
+ attr_accessor :duration
15
+ # @!attribute action_config
16
+ # @return [Hash<String, Array<ModerationActionConfigResponse>>] Moderation action configs grouped by entity type, sorted by order ascending
17
+ attr_accessor :action_config
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @duration = attributes[:duration] || attributes['duration']
23
+ @action_config = attributes[:action_config] || attributes['action_config']
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ duration: 'duration',
30
+ action_config: 'action_config'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -18,6 +18,9 @@ module GetStream
18
18
  # @!attribute activity_selectors
19
19
  # @return [Array<ActivitySelectorConfig>] Configuration for activity selectors
20
20
  attr_accessor :activity_selectors
21
+ # @!attribute activity_filter
22
+ # @return [ActivityFilterConfig]
23
+ attr_accessor :activity_filter
21
24
  # @!attribute aggregation
22
25
  # @return [AggregationConfig]
23
26
  attr_accessor :aggregation
@@ -43,6 +46,7 @@ module GetStream
43
46
  @default_visibility = attributes[:default_visibility] || attributes['default_visibility'] || nil
44
47
  @activity_processors = attributes[:activity_processors] || attributes['activity_processors'] || nil
45
48
  @activity_selectors = attributes[:activity_selectors] || attributes['activity_selectors'] || nil
49
+ @activity_filter = attributes[:activity_filter] || attributes['activity_filter'] || nil
46
50
  @aggregation = attributes[:aggregation] || attributes['aggregation'] || nil
47
51
  @custom = attributes[:custom] || attributes['custom'] || nil
48
52
  @notification = attributes[:notification] || attributes['notification'] || nil
@@ -57,6 +61,7 @@ module GetStream
57
61
  default_visibility: 'default_visibility',
58
62
  activity_processors: 'activity_processors',
59
63
  activity_selectors: 'activity_selectors',
64
+ activity_filter: 'activity_filter',
60
65
  aggregation: 'aggregation',
61
66
  custom: 'custom',
62
67
  notification: 'notification',
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class GroupedChannelsBucket < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute channels
13
+ # @return [Array<ChannelStateResponseFields>] Channels returned for this bucket
14
+ attr_accessor :channels
15
+ # @!attribute unread_channels
16
+ # @return [Integer] Unread channels currently classified into this bucket
17
+ attr_accessor :unread_channels
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @channels = attributes[:channels] || attributes['channels']
23
+ @unread_channels = attributes[:unread_channels] || attributes['unread_channels'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ channels: 'channels',
30
+ unread_channels: 'unread_channels'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -6,9 +6,12 @@ module GetStream
6
6
  module Generated
7
7
  module Models
8
8
  #
9
- class DeleteCollectionsRequest < GetStream::BaseModel
9
+ class GroupedQueryChannelsRequest < GetStream::BaseModel
10
10
 
11
11
  # Model attributes
12
+ # @!attribute limit
13
+ # @return [Integer] Max channels per bucket (default 10)
14
+ attr_accessor :limit
12
15
  # @!attribute user_id
13
16
  # @return [String]
14
17
  attr_accessor :user_id
@@ -19,6 +22,7 @@ module GetStream
19
22
  # Initialize with attributes
20
23
  def initialize(attributes = {})
21
24
  super(attributes)
25
+ @limit = attributes[:limit] || attributes['limit'] || nil
22
26
  @user_id = attributes[:user_id] || attributes['user_id'] || nil
23
27
  @user = attributes[:user] || attributes['user'] || nil
24
28
  end
@@ -26,6 +30,7 @@ module GetStream
26
30
  # Override field mappings for JSON serialization
27
31
  def self.json_field_mappings
28
32
  {
33
+ limit: 'limit',
29
34
  user_id: 'user_id',
30
35
  user: 'user'
31
36
  }
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class GroupedQueryChannelsResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String] Duration of the request in milliseconds
14
+ attr_accessor :duration
15
+ # @!attribute groups
16
+ # @return [Hash<String, GroupedChannelsBucket>] Predefined channel groups keyed by group name
17
+ attr_accessor :groups
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @duration = attributes[:duration] || attributes['duration']
23
+ @groups = attributes[:groups] || attributes['groups']
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ duration: 'duration',
30
+ groups: 'groups'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -24,6 +24,12 @@ module GetStream
24
24
  # @!attribute reason
25
25
  # @return [String] Reason for the action
26
26
  attr_accessor :reason
27
+ # @!attribute reporter_type
28
+ # @return [String] Type of reporter; 'api_integration' when the action was triggered by an API integration call with no authenticated user
29
+ attr_accessor :reporter_type
30
+ # @!attribute reporter_user_id
31
+ # @return [String] ID of the user who triggered the action; empty for automated actions
32
+ attr_accessor :reporter_user_id
27
33
  # @!attribute custom
28
34
  # @return [Object] Custom metadata for the action log
29
35
  attr_accessor :custom
@@ -36,6 +42,8 @@ module GetStream
36
42
  @entity_id = attributes[:entity_id] || attributes['entity_id']
37
43
  @entity_type = attributes[:entity_type] || attributes['entity_type']
38
44
  @reason = attributes[:reason] || attributes['reason'] || nil
45
+ @reporter_type = attributes[:reporter_type] || attributes['reporter_type'] || nil
46
+ @reporter_user_id = attributes[:reporter_user_id] || attributes['reporter_user_id'] || nil
39
47
  @custom = attributes[:custom] || attributes['custom'] || nil
40
48
  end
41
49
 
@@ -47,6 +55,8 @@ module GetStream
47
55
  entity_id: 'entity_id',
48
56
  entity_type: 'entity_type',
49
57
  reason: 'reason',
58
+ reporter_type: 'reporter_type',
59
+ reporter_user_id: 'reporter_user_id',
50
60
  custom: 'custom'
51
61
  }
52
62
  end
@@ -0,0 +1,101 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class LabelResultResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute category
13
+ # @return [String] Category
14
+ attr_accessor :category
15
+ # @!attribute content
16
+ # @return [String] The moderated content
17
+ attr_accessor :content
18
+ # @!attribute content_type
19
+ # @return [String]
20
+ attr_accessor :content_type
21
+ # @!attribute created_at
22
+ # @return [DateTime] Timestamp
23
+ attr_accessor :created_at
24
+ # @!attribute harm_type
25
+ # @return [String] High-level harm category
26
+ attr_accessor :harm_type
27
+ # @!attribute id
28
+ # @return [String] Unique identifier
29
+ attr_accessor :id
30
+ # @!attribute language
31
+ # @return [String] Detected language
32
+ attr_accessor :language
33
+ # @!attribute recommended_action
34
+ # @return [String] Provider recommended action
35
+ attr_accessor :recommended_action
36
+ # @!attribute severity
37
+ # @return [String] Severity level
38
+ attr_accessor :severity
39
+ # @!attribute labels
40
+ # @return [Array<String>] Moderation labels
41
+ attr_accessor :labels
42
+ # @!attribute content_id
43
+ # @return [String] Customer-supplied identifier for the moderated content
44
+ attr_accessor :content_id
45
+ # @!attribute directed_at
46
+ # @return [String] Who the content is directed at (USER, GROUP, EVERYONE, NONE, etc.)
47
+ attr_accessor :directed_at
48
+ # @!attribute masked_content
49
+ # @return [String] Content with blocklisted tokens masked (when a blocklist rule with action=mask rewrote the original)
50
+ attr_accessor :masked_content
51
+ # @!attribute policy
52
+ # @return [String]
53
+ attr_accessor :policy
54
+ # @!attribute user_id
55
+ # @return [String] Customer-supplied user identifier for the content author
56
+ attr_accessor :user_id
57
+
58
+ # Initialize with attributes
59
+ def initialize(attributes = {})
60
+ super(attributes)
61
+ @category = attributes[:category] || attributes['category']
62
+ @content = attributes[:content] || attributes['content']
63
+ @content_type = attributes[:content_type] || attributes['content_type']
64
+ @created_at = attributes[:created_at] || attributes['created_at']
65
+ @harm_type = attributes[:harm_type] || attributes['harm_type']
66
+ @id = attributes[:id] || attributes['id']
67
+ @language = attributes[:language] || attributes['language']
68
+ @recommended_action = attributes[:recommended_action] || attributes['recommended_action']
69
+ @severity = attributes[:severity] || attributes['severity']
70
+ @labels = attributes[:labels] || attributes['labels']
71
+ @content_id = attributes[:content_id] || attributes['content_id'] || nil
72
+ @directed_at = attributes[:directed_at] || attributes['directed_at'] || nil
73
+ @masked_content = attributes[:masked_content] || attributes['masked_content'] || nil
74
+ @policy = attributes[:policy] || attributes['policy'] || nil
75
+ @user_id = attributes[:user_id] || attributes['user_id'] || nil
76
+ end
77
+
78
+ # Override field mappings for JSON serialization
79
+ def self.json_field_mappings
80
+ {
81
+ category: 'category',
82
+ content: 'content',
83
+ content_type: 'content_type',
84
+ created_at: 'created_at',
85
+ harm_type: 'harm_type',
86
+ id: 'id',
87
+ language: 'language',
88
+ recommended_action: 'recommended_action',
89
+ severity: 'severity',
90
+ labels: 'labels',
91
+ content_id: 'content_id',
92
+ directed_at: 'directed_at',
93
+ masked_content: 'masked_content',
94
+ policy: 'policy',
95
+ user_id: 'user_id'
96
+ }
97
+ end
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class LabelsRequest < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute content
13
+ # @return [String] Content to moderate
14
+ attr_accessor :content
15
+ # @!attribute category
16
+ # @return [String] Optional category for filtering (max 128 chars)
17
+ attr_accessor :category
18
+ # @!attribute content_id
19
+ # @return [String] Customer-supplied identifier for the moderated content, for tracing
20
+ attr_accessor :content_id
21
+ # @!attribute content_type
22
+ # @return [String] Type of content: 'text' (default), 'message', or 'username'. Stored as-sent; only 'username' routes to the username moderation API.
23
+ attr_accessor :content_type
24
+ # @!attribute policy
25
+ # @return [String] Optional moderation policy key (max 128 chars)
26
+ attr_accessor :policy
27
+ # @!attribute user_id
28
+ # @return [String] Optional customer-supplied user identifier for the content author (max 256 chars). Enables filtering stored results by user_id.
29
+ attr_accessor :user_id
30
+
31
+ # Initialize with attributes
32
+ def initialize(attributes = {})
33
+ super(attributes)
34
+ @content = attributes[:content] || attributes['content']
35
+ @category = attributes[:category] || attributes['category'] || nil
36
+ @content_id = attributes[:content_id] || attributes['content_id'] || nil
37
+ @content_type = attributes[:content_type] || attributes['content_type'] || nil
38
+ @policy = attributes[:policy] || attributes['policy'] || nil
39
+ @user_id = attributes[:user_id] || attributes['user_id'] || nil
40
+ end
41
+
42
+ # Override field mappings for JSON serialization
43
+ def self.json_field_mappings
44
+ {
45
+ content: 'content',
46
+ category: 'category',
47
+ content_id: 'content_id',
48
+ content_type: 'content_type',
49
+ policy: 'policy',
50
+ user_id: 'user_id'
51
+ }
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class LabelsResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String]
14
+ attr_accessor :duration
15
+ # @!attribute recommended_action
16
+ # @return [String] Provider recommended action
17
+ attr_accessor :recommended_action
18
+ # @!attribute content_id
19
+ # @return [String] Customer-supplied identifier for the moderated content, for tracing
20
+ attr_accessor :content_id
21
+ # @!attribute directed_at
22
+ # @return [String] Who the content is directed at (USER, GROUP, EVERYONE, NONE, etc.), when the provider exposes it
23
+ attr_accessor :directed_at
24
+ # @!attribute harm_type
25
+ # @return [String] High-level harm category
26
+ attr_accessor :harm_type
27
+ # @!attribute language
28
+ # @return [String] Detected language
29
+ attr_accessor :language
30
+ # @!attribute masked_content
31
+ # @return [String] Content with blocklisted tokens masked or substituted. Present only when a blocklist rewrote the original content.
32
+ attr_accessor :masked_content
33
+ # @!attribute severity
34
+ # @return [String] Severity level
35
+ attr_accessor :severity
36
+ # @!attribute labels
37
+ # @return [Array<String>] Moderation labels detected
38
+ attr_accessor :labels
39
+
40
+ # Initialize with attributes
41
+ def initialize(attributes = {})
42
+ super(attributes)
43
+ @duration = attributes[:duration] || attributes['duration']
44
+ @recommended_action = attributes[:recommended_action] || attributes['recommended_action']
45
+ @content_id = attributes[:content_id] || attributes['content_id'] || nil
46
+ @directed_at = attributes[:directed_at] || attributes['directed_at'] || nil
47
+ @harm_type = attributes[:harm_type] || attributes['harm_type'] || nil
48
+ @language = attributes[:language] || attributes['language'] || nil
49
+ @masked_content = attributes[:masked_content] || attributes['masked_content'] || nil
50
+ @severity = attributes[:severity] || attributes['severity'] || nil
51
+ @labels = attributes[:labels] || attributes['labels'] || nil
52
+ end
53
+
54
+ # Override field mappings for JSON serialization
55
+ def self.json_field_mappings
56
+ {
57
+ duration: 'duration',
58
+ recommended_action: 'recommended_action',
59
+ content_id: 'content_id',
60
+ directed_at: 'directed_at',
61
+ harm_type: 'harm_type',
62
+ language: 'language',
63
+ masked_content: 'masked_content',
64
+ severity: 'severity',
65
+ labels: 'labels'
66
+ }
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -69,6 +69,9 @@ module GetStream
69
69
  # @!attribute channel_custom
70
70
  # @return [Object]
71
71
  attr_accessor :channel_custom
72
+ # @!attribute grouped_unread_channels
73
+ # @return [Hash<String, Integer>]
74
+ attr_accessor :grouped_unread_channels
72
75
  # @!attribute user
73
76
  # @return [UserResponseCommonFields]
74
77
  attr_accessor :user
@@ -96,6 +99,7 @@ module GetStream
96
99
  @thread_participants = attributes[:thread_participants] || attributes['thread_participants'] || nil
97
100
  @channel = attributes[:channel] || attributes['channel'] || nil
98
101
  @channel_custom = attributes[:channel_custom] || attributes['channel_custom'] || nil
102
+ @grouped_unread_channels = attributes[:grouped_unread_channels] || attributes['grouped_unread_channels'] || nil
99
103
  @user = attributes[:user] || attributes['user'] || nil
100
104
  end
101
105
 
@@ -122,6 +126,7 @@ module GetStream
122
126
  thread_participants: 'thread_participants',
123
127
  channel: 'channel',
124
128
  channel_custom: 'channel_custom',
129
+ grouped_unread_channels: 'grouped_unread_channels',
125
130
  user: 'user'
126
131
  }
127
132
  end