getstream-ruby 0.1.5

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 (1009) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +332 -0
  3. data/lib/getstream_ruby/client.rb +164 -0
  4. data/lib/getstream_ruby/configuration.rb +68 -0
  5. data/lib/getstream_ruby/errors.rb +9 -0
  6. data/lib/getstream_ruby/generated/base_model.rb +41 -0
  7. data/lib/getstream_ruby/generated/common_client.rb +1233 -0
  8. data/lib/getstream_ruby/generated/feed.rb +127 -0
  9. data/lib/getstream_ruby/generated/feeds_client.rb +1419 -0
  10. data/lib/getstream_ruby/generated/models/accept_feed_member_invite_request.rb +36 -0
  11. data/lib/getstream_ruby/generated/models/accept_feed_member_invite_response.rb +36 -0
  12. data/lib/getstream_ruby/generated/models/accept_follow_request.rb +41 -0
  13. data/lib/getstream_ruby/generated/models/accept_follow_response.rb +36 -0
  14. data/lib/getstream_ruby/generated/models/action.rb +51 -0
  15. data/lib/getstream_ruby/generated/models/action_log_response.rb +76 -0
  16. data/lib/getstream_ruby/generated/models/action_sequence.rb +61 -0
  17. data/lib/getstream_ruby/generated/models/active_calls_bitrate_stats.rb +36 -0
  18. data/lib/getstream_ruby/generated/models/active_calls_fps_stats.rb +46 -0
  19. data/lib/getstream_ruby/generated/models/active_calls_latency_stats.rb +36 -0
  20. data/lib/getstream_ruby/generated/models/active_calls_metrics.rb +41 -0
  21. data/lib/getstream_ruby/generated/models/active_calls_resolution_stats.rb +36 -0
  22. data/lib/getstream_ruby/generated/models/active_calls_summary.rb +46 -0
  23. data/lib/getstream_ruby/generated/models/activity_added_event.rb +66 -0
  24. data/lib/getstream_ruby/generated/models/activity_deleted_event.rb +66 -0
  25. data/lib/getstream_ruby/generated/models/activity_feedback_request.rb +61 -0
  26. data/lib/getstream_ruby/generated/models/activity_feedback_response.rb +36 -0
  27. data/lib/getstream_ruby/generated/models/activity_location.rb +36 -0
  28. data/lib/getstream_ruby/generated/models/activity_mark_event.rb +86 -0
  29. data/lib/getstream_ruby/generated/models/activity_marked_event.rb +66 -0
  30. data/lib/getstream_ruby/generated/models/activity_pin_response.rb +51 -0
  31. data/lib/getstream_ruby/generated/models/activity_pinned_event.rb +66 -0
  32. data/lib/getstream_ruby/generated/models/activity_processor_config.rb +31 -0
  33. data/lib/getstream_ruby/generated/models/activity_reaction_added_event.rb +71 -0
  34. data/lib/getstream_ruby/generated/models/activity_reaction_deleted_event.rb +71 -0
  35. data/lib/getstream_ruby/generated/models/activity_reaction_updated_event.rb +71 -0
  36. data/lib/getstream_ruby/generated/models/activity_removed_from_feed_event.rb +66 -0
  37. data/lib/getstream_ruby/generated/models/activity_request.rb +111 -0
  38. data/lib/getstream_ruby/generated/models/activity_response.rb +206 -0
  39. data/lib/getstream_ruby/generated/models/activity_selector_config.rb +51 -0
  40. data/lib/getstream_ruby/generated/models/activity_unpinned_event.rb +66 -0
  41. data/lib/getstream_ruby/generated/models/activity_updated_event.rb +66 -0
  42. data/lib/getstream_ruby/generated/models/add_activity_request.rb +111 -0
  43. data/lib/getstream_ruby/generated/models/add_activity_response.rb +36 -0
  44. data/lib/getstream_ruby/generated/models/add_bookmark_request.rb +51 -0
  45. data/lib/getstream_ruby/generated/models/add_bookmark_response.rb +36 -0
  46. data/lib/getstream_ruby/generated/models/add_comment_reaction_request.rb +56 -0
  47. data/lib/getstream_ruby/generated/models/add_comment_reaction_response.rb +41 -0
  48. data/lib/getstream_ruby/generated/models/add_comment_request.rb +81 -0
  49. data/lib/getstream_ruby/generated/models/add_comment_response.rb +36 -0
  50. data/lib/getstream_ruby/generated/models/add_comments_batch_request.rb +31 -0
  51. data/lib/getstream_ruby/generated/models/add_comments_batch_response.rb +36 -0
  52. data/lib/getstream_ruby/generated/models/add_folder_request.rb +36 -0
  53. data/lib/getstream_ruby/generated/models/add_reaction_request.rb +56 -0
  54. data/lib/getstream_ruby/generated/models/add_reaction_response.rb +41 -0
  55. data/lib/getstream_ruby/generated/models/aggregated_activity_response.rb +66 -0
  56. data/lib/getstream_ruby/generated/models/aggregation_config.rb +31 -0
  57. data/lib/getstream_ruby/generated/models/ai_image_config.rb +46 -0
  58. data/lib/getstream_ruby/generated/models/ai_text_config.rb +51 -0
  59. data/lib/getstream_ruby/generated/models/ai_video_config.rb +41 -0
  60. data/lib/getstream_ruby/generated/models/any_event.rb +36 -0
  61. data/lib/getstream_ruby/generated/models/api_error.rb +66 -0
  62. data/lib/getstream_ruby/generated/models/apn_config.rb +76 -0
  63. data/lib/getstream_ruby/generated/models/apn_config_fields.rb +76 -0
  64. data/lib/getstream_ruby/generated/models/apns.rb +56 -0
  65. data/lib/getstream_ruby/generated/models/app_response_fields.rb +266 -0
  66. data/lib/getstream_ruby/generated/models/async_bulk_image_moderation_event.rb +66 -0
  67. data/lib/getstream_ruby/generated/models/async_export_channels_event.rb +66 -0
  68. data/lib/getstream_ruby/generated/models/async_export_error_event.rb +66 -0
  69. data/lib/getstream_ruby/generated/models/async_export_moderation_logs_event.rb +66 -0
  70. data/lib/getstream_ruby/generated/models/async_export_users_event.rb +66 -0
  71. data/lib/getstream_ruby/generated/models/async_moderation_callback_config.rb +36 -0
  72. data/lib/getstream_ruby/generated/models/async_moderation_configuration.rb +36 -0
  73. data/lib/getstream_ruby/generated/models/attachment.rb +136 -0
  74. data/lib/getstream_ruby/generated/models/audio_settings.rb +61 -0
  75. data/lib/getstream_ruby/generated/models/audio_settings_request.rb +61 -0
  76. data/lib/getstream_ruby/generated/models/audio_settings_response.rb +61 -0
  77. data/lib/getstream_ruby/generated/models/automod_details.rb +51 -0
  78. data/lib/getstream_ruby/generated/models/automod_platform_circumvention_config.rb +41 -0
  79. data/lib/getstream_ruby/generated/models/automod_rule.rb +41 -0
  80. data/lib/getstream_ruby/generated/models/automod_semantic_filters_config.rb +41 -0
  81. data/lib/getstream_ruby/generated/models/automod_semantic_filters_rule.rb +41 -0
  82. data/lib/getstream_ruby/generated/models/automod_toxicity_config.rb +41 -0
  83. data/lib/getstream_ruby/generated/models/aws_rekognition_rule.rb +41 -0
  84. data/lib/getstream_ruby/generated/models/azure_request.rb +46 -0
  85. data/lib/getstream_ruby/generated/models/backstage_settings.rb +36 -0
  86. data/lib/getstream_ruby/generated/models/backstage_settings_request.rb +36 -0
  87. data/lib/getstream_ruby/generated/models/backstage_settings_response.rb +36 -0
  88. data/lib/getstream_ruby/generated/models/ban.rb +61 -0
  89. data/lib/getstream_ruby/generated/models/ban_action_request.rb +56 -0
  90. data/lib/getstream_ruby/generated/models/ban_options.rb +51 -0
  91. data/lib/getstream_ruby/generated/models/ban_request.rb +71 -0
  92. data/lib/getstream_ruby/generated/models/ban_response.rb +61 -0
  93. data/lib/getstream_ruby/generated/models/block_list_config.rb +41 -0
  94. data/lib/getstream_ruby/generated/models/block_list_options.rb +36 -0
  95. data/lib/getstream_ruby/generated/models/block_list_response.rb +61 -0
  96. data/lib/getstream_ruby/generated/models/block_list_rule.rb +41 -0
  97. data/lib/getstream_ruby/generated/models/block_user_request.rb +31 -0
  98. data/lib/getstream_ruby/generated/models/block_user_response.rb +31 -0
  99. data/lib/getstream_ruby/generated/models/block_users_request.rb +41 -0
  100. data/lib/getstream_ruby/generated/models/block_users_response.rb +46 -0
  101. data/lib/getstream_ruby/generated/models/blocked_user_event.rb +51 -0
  102. data/lib/getstream_ruby/generated/models/blocked_user_response.rb +51 -0
  103. data/lib/getstream_ruby/generated/models/bodyguard_image_analysis_config.rb +31 -0
  104. data/lib/getstream_ruby/generated/models/bodyguard_rule.rb +41 -0
  105. data/lib/getstream_ruby/generated/models/bodyguard_severity_rule.rb +36 -0
  106. data/lib/getstream_ruby/generated/models/bookmark_added_event.rb +56 -0
  107. data/lib/getstream_ruby/generated/models/bookmark_deleted_event.rb +56 -0
  108. data/lib/getstream_ruby/generated/models/bookmark_folder_deleted_event.rb +56 -0
  109. data/lib/getstream_ruby/generated/models/bookmark_folder_response.rb +51 -0
  110. data/lib/getstream_ruby/generated/models/bookmark_folder_updated_event.rb +56 -0
  111. data/lib/getstream_ruby/generated/models/bookmark_response.rb +56 -0
  112. data/lib/getstream_ruby/generated/models/bookmark_updated_event.rb +56 -0
  113. data/lib/getstream_ruby/generated/models/bound.rb +36 -0
  114. data/lib/getstream_ruby/generated/models/broadcast_settings.rb +41 -0
  115. data/lib/getstream_ruby/generated/models/broadcast_settings_request.rb +41 -0
  116. data/lib/getstream_ruby/generated/models/broadcast_settings_response.rb +41 -0
  117. data/lib/getstream_ruby/generated/models/browser_data_response.rb +36 -0
  118. data/lib/getstream_ruby/generated/models/bulk_image_moderation_request.rb +31 -0
  119. data/lib/getstream_ruby/generated/models/bulk_image_moderation_response.rb +36 -0
  120. data/lib/getstream_ruby/generated/models/call_accepted_event.rb +51 -0
  121. data/lib/getstream_ruby/generated/models/call_closed_caption.rb +71 -0
  122. data/lib/getstream_ruby/generated/models/call_closed_captions_failed_event.rb +41 -0
  123. data/lib/getstream_ruby/generated/models/call_closed_captions_started_event.rb +41 -0
  124. data/lib/getstream_ruby/generated/models/call_closed_captions_stopped_event.rb +41 -0
  125. data/lib/getstream_ruby/generated/models/call_created_event.rb +51 -0
  126. data/lib/getstream_ruby/generated/models/call_deleted_event.rb +46 -0
  127. data/lib/getstream_ruby/generated/models/call_duration_report.rb +31 -0
  128. data/lib/getstream_ruby/generated/models/call_duration_report_response.rb +31 -0
  129. data/lib/getstream_ruby/generated/models/call_ended_event.rb +56 -0
  130. data/lib/getstream_ruby/generated/models/call_frame_recording_failed_event.rb +51 -0
  131. data/lib/getstream_ruby/generated/models/call_frame_recording_frame_ready_event.rb +71 -0
  132. data/lib/getstream_ruby/generated/models/call_frame_recording_started_event.rb +51 -0
  133. data/lib/getstream_ruby/generated/models/call_frame_recording_stopped_event.rb +51 -0
  134. data/lib/getstream_ruby/generated/models/call_hls_broadcasting_failed_event.rb +41 -0
  135. data/lib/getstream_ruby/generated/models/call_hls_broadcasting_started_event.rb +51 -0
  136. data/lib/getstream_ruby/generated/models/call_hls_broadcasting_stopped_event.rb +41 -0
  137. data/lib/getstream_ruby/generated/models/call_ingress_response.rb +41 -0
  138. data/lib/getstream_ruby/generated/models/call_live_started_event.rb +46 -0
  139. data/lib/getstream_ruby/generated/models/call_member_added_event.rb +51 -0
  140. data/lib/getstream_ruby/generated/models/call_member_removed_event.rb +51 -0
  141. data/lib/getstream_ruby/generated/models/call_member_updated_event.rb +51 -0
  142. data/lib/getstream_ruby/generated/models/call_member_updated_permission_event.rb +56 -0
  143. data/lib/getstream_ruby/generated/models/call_missed_event.rb +66 -0
  144. data/lib/getstream_ruby/generated/models/call_moderation_blur_event.rb +51 -0
  145. data/lib/getstream_ruby/generated/models/call_moderation_warning_event.rb +56 -0
  146. data/lib/getstream_ruby/generated/models/call_notification_event.rb +61 -0
  147. data/lib/getstream_ruby/generated/models/call_participant_count_report.rb +31 -0
  148. data/lib/getstream_ruby/generated/models/call_participant_count_report_response.rb +31 -0
  149. data/lib/getstream_ruby/generated/models/call_participant_response.rb +46 -0
  150. data/lib/getstream_ruby/generated/models/call_reaction_event.rb +46 -0
  151. data/lib/getstream_ruby/generated/models/call_recording.rb +51 -0
  152. data/lib/getstream_ruby/generated/models/call_recording_failed_event.rb +46 -0
  153. data/lib/getstream_ruby/generated/models/call_recording_ready_event.rb +51 -0
  154. data/lib/getstream_ruby/generated/models/call_recording_started_event.rb +46 -0
  155. data/lib/getstream_ruby/generated/models/call_recording_stopped_event.rb +46 -0
  156. data/lib/getstream_ruby/generated/models/call_rejected_event.rb +56 -0
  157. data/lib/getstream_ruby/generated/models/call_report_response.rb +41 -0
  158. data/lib/getstream_ruby/generated/models/call_request.rb +71 -0
  159. data/lib/getstream_ruby/generated/models/call_response.rb +146 -0
  160. data/lib/getstream_ruby/generated/models/call_ring_event.rb +66 -0
  161. data/lib/getstream_ruby/generated/models/call_rtmp_broadcast_failed_event.rb +46 -0
  162. data/lib/getstream_ruby/generated/models/call_rtmp_broadcast_started_event.rb +46 -0
  163. data/lib/getstream_ruby/generated/models/call_rtmp_broadcast_stopped_event.rb +46 -0
  164. data/lib/getstream_ruby/generated/models/call_session_ended_event.rb +51 -0
  165. data/lib/getstream_ruby/generated/models/call_session_participant_counts_updated_event.rb +56 -0
  166. data/lib/getstream_ruby/generated/models/call_session_participant_joined_event.rb +51 -0
  167. data/lib/getstream_ruby/generated/models/call_session_participant_left_event.rb +61 -0
  168. data/lib/getstream_ruby/generated/models/call_session_response.rb +86 -0
  169. data/lib/getstream_ruby/generated/models/call_session_started_event.rb +51 -0
  170. data/lib/getstream_ruby/generated/models/call_settings.rb +96 -0
  171. data/lib/getstream_ruby/generated/models/call_settings_request.rb +96 -0
  172. data/lib/getstream_ruby/generated/models/call_settings_response.rb +96 -0
  173. data/lib/getstream_ruby/generated/models/call_state_response_fields.rb +41 -0
  174. data/lib/getstream_ruby/generated/models/call_stats_report_ready_event.rb +46 -0
  175. data/lib/getstream_ruby/generated/models/call_stats_report_summary_response.rb +66 -0
  176. data/lib/getstream_ruby/generated/models/call_transcription.rb +51 -0
  177. data/lib/getstream_ruby/generated/models/call_transcription_failed_event.rb +51 -0
  178. data/lib/getstream_ruby/generated/models/call_transcription_ready_event.rb +51 -0
  179. data/lib/getstream_ruby/generated/models/call_transcription_started_event.rb +46 -0
  180. data/lib/getstream_ruby/generated/models/call_transcription_stopped_event.rb +46 -0
  181. data/lib/getstream_ruby/generated/models/call_type.rb +66 -0
  182. data/lib/getstream_ruby/generated/models/call_type_response.rb +61 -0
  183. data/lib/getstream_ruby/generated/models/call_updated_event.rb +51 -0
  184. data/lib/getstream_ruby/generated/models/call_user_feedback_submitted_event.rb +76 -0
  185. data/lib/getstream_ruby/generated/models/call_user_muted_event.rb +56 -0
  186. data/lib/getstream_ruby/generated/models/calls_per_day_report.rb +31 -0
  187. data/lib/getstream_ruby/generated/models/calls_per_day_report_response.rb +31 -0
  188. data/lib/getstream_ruby/generated/models/campaign_channel_template.rb +51 -0
  189. data/lib/getstream_ruby/generated/models/campaign_completed_event.rb +51 -0
  190. data/lib/getstream_ruby/generated/models/campaign_message_template.rb +46 -0
  191. data/lib/getstream_ruby/generated/models/campaign_response.rb +136 -0
  192. data/lib/getstream_ruby/generated/models/campaign_started_event.rb +51 -0
  193. data/lib/getstream_ruby/generated/models/campaign_stats_response.rb +61 -0
  194. data/lib/getstream_ruby/generated/models/cast_poll_vote_request.rb +41 -0
  195. data/lib/getstream_ruby/generated/models/channel.rb +156 -0
  196. data/lib/getstream_ruby/generated/models/channel_config.rb +191 -0
  197. data/lib/getstream_ruby/generated/models/channel_config_with_info.rb +196 -0
  198. data/lib/getstream_ruby/generated/models/channel_created_event.rb +36 -0
  199. data/lib/getstream_ruby/generated/models/channel_deleted_event.rb +66 -0
  200. data/lib/getstream_ruby/generated/models/channel_export.rb +51 -0
  201. data/lib/getstream_ruby/generated/models/channel_frozen_event.rb +51 -0
  202. data/lib/getstream_ruby/generated/models/channel_get_or_create_request.rb +61 -0
  203. data/lib/getstream_ruby/generated/models/channel_hidden_event.rb +71 -0
  204. data/lib/getstream_ruby/generated/models/channel_input.rb +86 -0
  205. data/lib/getstream_ruby/generated/models/channel_member.rb +126 -0
  206. data/lib/getstream_ruby/generated/models/channel_member_lookup.rb +61 -0
  207. data/lib/getstream_ruby/generated/models/channel_member_response.rb +31 -0
  208. data/lib/getstream_ruby/generated/models/channel_messages.rb +36 -0
  209. data/lib/getstream_ruby/generated/models/channel_mute.rb +51 -0
  210. data/lib/getstream_ruby/generated/models/channel_muted_event.rb +36 -0
  211. data/lib/getstream_ruby/generated/models/channel_own_capability.rb +14 -0
  212. data/lib/getstream_ruby/generated/models/channel_push_preferences.rb +36 -0
  213. data/lib/getstream_ruby/generated/models/channel_response.rb +161 -0
  214. data/lib/getstream_ruby/generated/models/channel_state_response.rb +111 -0
  215. data/lib/getstream_ruby/generated/models/channel_state_response_fields.rb +106 -0
  216. data/lib/getstream_ruby/generated/models/channel_truncated_event.rb +61 -0
  217. data/lib/getstream_ruby/generated/models/channel_type_config.rb +201 -0
  218. data/lib/getstream_ruby/generated/models/channel_un_frozen_event.rb +51 -0
  219. data/lib/getstream_ruby/generated/models/channel_unmuted_event.rb +36 -0
  220. data/lib/getstream_ruby/generated/models/channel_updated_event.rb +76 -0
  221. data/lib/getstream_ruby/generated/models/channel_visible_event.rb +56 -0
  222. data/lib/getstream_ruby/generated/models/chat_activity_stats_response.rb +31 -0
  223. data/lib/getstream_ruby/generated/models/check_external_storage_response.rb +36 -0
  224. data/lib/getstream_ruby/generated/models/check_push_request.rb +76 -0
  225. data/lib/getstream_ruby/generated/models/check_push_response.rb +66 -0
  226. data/lib/getstream_ruby/generated/models/check_request.rb +81 -0
  227. data/lib/getstream_ruby/generated/models/check_response.rb +51 -0
  228. data/lib/getstream_ruby/generated/models/check_sns_request.rb +41 -0
  229. data/lib/getstream_ruby/generated/models/check_sns_response.rb +46 -0
  230. data/lib/getstream_ruby/generated/models/check_sqs_request.rb +41 -0
  231. data/lib/getstream_ruby/generated/models/check_sqs_response.rb +46 -0
  232. data/lib/getstream_ruby/generated/models/client_os_data_response.rb +41 -0
  233. data/lib/getstream_ruby/generated/models/closed_caption_event.rb +46 -0
  234. data/lib/getstream_ruby/generated/models/collect_user_feedback_request.rb +56 -0
  235. data/lib/getstream_ruby/generated/models/collect_user_feedback_response.rb +31 -0
  236. data/lib/getstream_ruby/generated/models/command.rb +56 -0
  237. data/lib/getstream_ruby/generated/models/comment_added_event.rb +71 -0
  238. data/lib/getstream_ruby/generated/models/comment_deleted_event.rb +66 -0
  239. data/lib/getstream_ruby/generated/models/comment_reaction_added_event.rb +76 -0
  240. data/lib/getstream_ruby/generated/models/comment_reaction_deleted_event.rb +66 -0
  241. data/lib/getstream_ruby/generated/models/comment_reaction_updated_event.rb +76 -0
  242. data/lib/getstream_ruby/generated/models/comment_response.rb +146 -0
  243. data/lib/getstream_ruby/generated/models/comment_updated_event.rb +66 -0
  244. data/lib/getstream_ruby/generated/models/commit_message_request.rb +14 -0
  245. data/lib/getstream_ruby/generated/models/config_overrides.rb +96 -0
  246. data/lib/getstream_ruby/generated/models/config_response.rb +106 -0
  247. data/lib/getstream_ruby/generated/models/content_count_rule_parameters.rb +36 -0
  248. data/lib/getstream_ruby/generated/models/count_by_minute_response.rb +36 -0
  249. data/lib/getstream_ruby/generated/models/create_block_list_request.rb +46 -0
  250. data/lib/getstream_ruby/generated/models/create_block_list_response.rb +36 -0
  251. data/lib/getstream_ruby/generated/models/create_call_type_request.rb +51 -0
  252. data/lib/getstream_ruby/generated/models/create_call_type_response.rb +66 -0
  253. data/lib/getstream_ruby/generated/models/create_channel_type_request.rb +171 -0
  254. data/lib/getstream_ruby/generated/models/create_channel_type_response.rb +206 -0
  255. data/lib/getstream_ruby/generated/models/create_command_request.rb +46 -0
  256. data/lib/getstream_ruby/generated/models/create_command_response.rb +36 -0
  257. data/lib/getstream_ruby/generated/models/create_device_request.rb +56 -0
  258. data/lib/getstream_ruby/generated/models/create_external_storage_request.rb +61 -0
  259. data/lib/getstream_ruby/generated/models/create_external_storage_response.rb +31 -0
  260. data/lib/getstream_ruby/generated/models/create_feed_group_request.rb +71 -0
  261. data/lib/getstream_ruby/generated/models/create_feed_group_response.rb +36 -0
  262. data/lib/getstream_ruby/generated/models/create_feed_view_request.rb +51 -0
  263. data/lib/getstream_ruby/generated/models/create_feed_view_response.rb +36 -0
  264. data/lib/getstream_ruby/generated/models/create_feeds_batch_request.rb +31 -0
  265. data/lib/getstream_ruby/generated/models/create_feeds_batch_response.rb +36 -0
  266. data/lib/getstream_ruby/generated/models/create_guest_request.rb +31 -0
  267. data/lib/getstream_ruby/generated/models/create_guest_response.rb +41 -0
  268. data/lib/getstream_ruby/generated/models/create_import_request.rb +36 -0
  269. data/lib/getstream_ruby/generated/models/create_import_response.rb +36 -0
  270. data/lib/getstream_ruby/generated/models/create_import_url_request.rb +31 -0
  271. data/lib/getstream_ruby/generated/models/create_import_url_response.rb +41 -0
  272. data/lib/getstream_ruby/generated/models/create_membership_level_request.rb +56 -0
  273. data/lib/getstream_ruby/generated/models/create_membership_level_response.rb +36 -0
  274. data/lib/getstream_ruby/generated/models/create_poll_option_request.rb +46 -0
  275. data/lib/getstream_ruby/generated/models/create_poll_request.rb +91 -0
  276. data/lib/getstream_ruby/generated/models/create_reminder_request.rb +41 -0
  277. data/lib/getstream_ruby/generated/models/create_role_request.rb +31 -0
  278. data/lib/getstream_ruby/generated/models/create_role_response.rb +36 -0
  279. data/lib/getstream_ruby/generated/models/custom_action_request.rb +36 -0
  280. data/lib/getstream_ruby/generated/models/custom_check_flag.rb +46 -0
  281. data/lib/getstream_ruby/generated/models/custom_check_request.rb +61 -0
  282. data/lib/getstream_ruby/generated/models/custom_check_response.rb +46 -0
  283. data/lib/getstream_ruby/generated/models/custom_video_event.rb +51 -0
  284. data/lib/getstream_ruby/generated/models/daily_aggregate_call_duration_report_response.rb +36 -0
  285. data/lib/getstream_ruby/generated/models/daily_aggregate_call_participant_count_report_response.rb +36 -0
  286. data/lib/getstream_ruby/generated/models/daily_aggregate_calls_per_day_report_response.rb +36 -0
  287. data/lib/getstream_ruby/generated/models/daily_aggregate_quality_score_report_response.rb +36 -0
  288. data/lib/getstream_ruby/generated/models/daily_aggregate_sdk_usage_report_response.rb +36 -0
  289. data/lib/getstream_ruby/generated/models/daily_aggregate_user_feedback_report_response.rb +36 -0
  290. data/lib/getstream_ruby/generated/models/data.rb +31 -0
  291. data/lib/getstream_ruby/generated/models/data_dog_info.rb +41 -0
  292. data/lib/getstream_ruby/generated/models/deactivate_user_request.rb +36 -0
  293. data/lib/getstream_ruby/generated/models/deactivate_user_response.rb +36 -0
  294. data/lib/getstream_ruby/generated/models/deactivate_users_request.rb +46 -0
  295. data/lib/getstream_ruby/generated/models/deactivate_users_response.rb +36 -0
  296. data/lib/getstream_ruby/generated/models/decay_function_config.rb +56 -0
  297. data/lib/getstream_ruby/generated/models/delete_activities_request.rb +46 -0
  298. data/lib/getstream_ruby/generated/models/delete_activities_response.rb +36 -0
  299. data/lib/getstream_ruby/generated/models/delete_activity_reaction_response.rb +41 -0
  300. data/lib/getstream_ruby/generated/models/delete_activity_request.rb +31 -0
  301. data/lib/getstream_ruby/generated/models/delete_activity_response.rb +31 -0
  302. data/lib/getstream_ruby/generated/models/delete_bookmark_folder_response.rb +31 -0
  303. data/lib/getstream_ruby/generated/models/delete_bookmark_response.rb +36 -0
  304. data/lib/getstream_ruby/generated/models/delete_call_request.rb +31 -0
  305. data/lib/getstream_ruby/generated/models/delete_call_response.rb +41 -0
  306. data/lib/getstream_ruby/generated/models/delete_channel_response.rb +36 -0
  307. data/lib/getstream_ruby/generated/models/delete_channels_request.rb +36 -0
  308. data/lib/getstream_ruby/generated/models/delete_channels_response.rb +41 -0
  309. data/lib/getstream_ruby/generated/models/delete_channels_result_response.rb +36 -0
  310. data/lib/getstream_ruby/generated/models/delete_command_response.rb +36 -0
  311. data/lib/getstream_ruby/generated/models/delete_comment_reaction_response.rb +41 -0
  312. data/lib/getstream_ruby/generated/models/delete_comment_response.rb +41 -0
  313. data/lib/getstream_ruby/generated/models/delete_external_storage_response.rb +31 -0
  314. data/lib/getstream_ruby/generated/models/delete_feed_group_response.rb +31 -0
  315. data/lib/getstream_ruby/generated/models/delete_feed_response.rb +36 -0
  316. data/lib/getstream_ruby/generated/models/delete_feed_user_data_response.rb +51 -0
  317. data/lib/getstream_ruby/generated/models/delete_feed_view_response.rb +31 -0
  318. data/lib/getstream_ruby/generated/models/delete_message_request.rb +31 -0
  319. data/lib/getstream_ruby/generated/models/delete_message_response.rb +36 -0
  320. data/lib/getstream_ruby/generated/models/delete_moderation_config_response.rb +31 -0
  321. data/lib/getstream_ruby/generated/models/delete_moderation_rule_response.rb +31 -0
  322. data/lib/getstream_ruby/generated/models/delete_moderation_template_response.rb +31 -0
  323. data/lib/getstream_ruby/generated/models/delete_reaction_request.rb +31 -0
  324. data/lib/getstream_ruby/generated/models/delete_reaction_response.rb +41 -0
  325. data/lib/getstream_ruby/generated/models/delete_recording_response.rb +31 -0
  326. data/lib/getstream_ruby/generated/models/delete_reminder_response.rb +31 -0
  327. data/lib/getstream_ruby/generated/models/delete_segment_targets_request.rb +31 -0
  328. data/lib/getstream_ruby/generated/models/delete_transcription_response.rb +31 -0
  329. data/lib/getstream_ruby/generated/models/delete_user_request.rb +46 -0
  330. data/lib/getstream_ruby/generated/models/delete_users_request.rb +66 -0
  331. data/lib/getstream_ruby/generated/models/delete_users_response.rb +36 -0
  332. data/lib/getstream_ruby/generated/models/device.rb +66 -0
  333. data/lib/getstream_ruby/generated/models/device_data_response.rb +36 -0
  334. data/lib/getstream_ruby/generated/models/device_error_info.rb +41 -0
  335. data/lib/getstream_ruby/generated/models/device_response.rb +66 -0
  336. data/lib/getstream_ruby/generated/models/draft_payload_response.rb +91 -0
  337. data/lib/getstream_ruby/generated/models/draft_response.rb +61 -0
  338. data/lib/getstream_ruby/generated/models/edge_response.rb +76 -0
  339. data/lib/getstream_ruby/generated/models/egress_hls_response.rb +36 -0
  340. data/lib/getstream_ruby/generated/models/egress_response.rb +46 -0
  341. data/lib/getstream_ruby/generated/models/egress_rtmp_response.rb +46 -0
  342. data/lib/getstream_ruby/generated/models/end_call_request.rb +14 -0
  343. data/lib/getstream_ruby/generated/models/end_call_response.rb +31 -0
  344. data/lib/getstream_ruby/generated/models/enriched_activity.rb +86 -0
  345. data/lib/getstream_ruby/generated/models/enriched_reaction.rb +91 -0
  346. data/lib/getstream_ruby/generated/models/entity_creator_response.rb +161 -0
  347. data/lib/getstream_ruby/generated/models/error_result.rb +41 -0
  348. data/lib/getstream_ruby/generated/models/event_hook.rb +136 -0
  349. data/lib/getstream_ruby/generated/models/event_notification_settings.rb +41 -0
  350. data/lib/getstream_ruby/generated/models/event_request.rb +51 -0
  351. data/lib/getstream_ruby/generated/models/event_response.rb +36 -0
  352. data/lib/getstream_ruby/generated/models/export_channels_request.rb +56 -0
  353. data/lib/getstream_ruby/generated/models/export_channels_response.rb +36 -0
  354. data/lib/getstream_ruby/generated/models/export_feed_user_data_request.rb +14 -0
  355. data/lib/getstream_ruby/generated/models/export_feed_user_data_response.rb +36 -0
  356. data/lib/getstream_ruby/generated/models/export_user_response.rb +46 -0
  357. data/lib/getstream_ruby/generated/models/export_users_request.rb +31 -0
  358. data/lib/getstream_ruby/generated/models/export_users_response.rb +36 -0
  359. data/lib/getstream_ruby/generated/models/external_storage_response.rb +46 -0
  360. data/lib/getstream_ruby/generated/models/fcm.rb +31 -0
  361. data/lib/getstream_ruby/generated/models/feed_created_event.rb +71 -0
  362. data/lib/getstream_ruby/generated/models/feed_deleted_event.rb +61 -0
  363. data/lib/getstream_ruby/generated/models/feed_group.rb +106 -0
  364. data/lib/getstream_ruby/generated/models/feed_group_changed_event.rb +66 -0
  365. data/lib/getstream_ruby/generated/models/feed_group_deleted_event.rb +61 -0
  366. data/lib/getstream_ruby/generated/models/feed_group_response.rb +86 -0
  367. data/lib/getstream_ruby/generated/models/feed_input.rb +56 -0
  368. data/lib/getstream_ruby/generated/models/feed_member_added_event.rb +66 -0
  369. data/lib/getstream_ruby/generated/models/feed_member_removed_event.rb +66 -0
  370. data/lib/getstream_ruby/generated/models/feed_member_request.rb +51 -0
  371. data/lib/getstream_ruby/generated/models/feed_member_response.rb +71 -0
  372. data/lib/getstream_ruby/generated/models/feed_member_updated_event.rb +66 -0
  373. data/lib/getstream_ruby/generated/models/feed_own_capability.rb +14 -0
  374. data/lib/getstream_ruby/generated/models/feed_request.rb +71 -0
  375. data/lib/getstream_ruby/generated/models/feed_response.rb +111 -0
  376. data/lib/getstream_ruby/generated/models/feed_updated_event.rb +66 -0
  377. data/lib/getstream_ruby/generated/models/feed_view_response.rb +56 -0
  378. data/lib/getstream_ruby/generated/models/feed_visibility_response.rb +41 -0
  379. data/lib/getstream_ruby/generated/models/feeds_moderation_template_config.rb +36 -0
  380. data/lib/getstream_ruby/generated/models/feeds_preferences.rb +56 -0
  381. data/lib/getstream_ruby/generated/models/feeds_reaction_response.rb +61 -0
  382. data/lib/getstream_ruby/generated/models/field.rb +41 -0
  383. data/lib/getstream_ruby/generated/models/file_upload_config.rb +51 -0
  384. data/lib/getstream_ruby/generated/models/file_upload_request.rb +36 -0
  385. data/lib/getstream_ruby/generated/models/file_upload_response.rb +41 -0
  386. data/lib/getstream_ruby/generated/models/firebase_config.rb +56 -0
  387. data/lib/getstream_ruby/generated/models/firebase_config_fields.rb +56 -0
  388. data/lib/getstream_ruby/generated/models/flag.rb +96 -0
  389. data/lib/getstream_ruby/generated/models/flag_details.rb +41 -0
  390. data/lib/getstream_ruby/generated/models/flag_feedback.rb +41 -0
  391. data/lib/getstream_ruby/generated/models/flag_message_details.rb +46 -0
  392. data/lib/getstream_ruby/generated/models/flag_request.rb +66 -0
  393. data/lib/getstream_ruby/generated/models/flag_response.rb +36 -0
  394. data/lib/getstream_ruby/generated/models/flag_updated_event.rb +61 -0
  395. data/lib/getstream_ruby/generated/models/flag_user_options.rb +31 -0
  396. data/lib/getstream_ruby/generated/models/follow_batch_request.rb +31 -0
  397. data/lib/getstream_ruby/generated/models/follow_batch_response.rb +36 -0
  398. data/lib/getstream_ruby/generated/models/follow_created_event.rb +61 -0
  399. data/lib/getstream_ruby/generated/models/follow_deleted_event.rb +61 -0
  400. data/lib/getstream_ruby/generated/models/follow_pair.rb +36 -0
  401. data/lib/getstream_ruby/generated/models/follow_request.rb +56 -0
  402. data/lib/getstream_ruby/generated/models/follow_response.rb +76 -0
  403. data/lib/getstream_ruby/generated/models/follow_updated_event.rb +61 -0
  404. data/lib/getstream_ruby/generated/models/frame_record_settings.rb +41 -0
  405. data/lib/getstream_ruby/generated/models/frame_recording_response.rb +31 -0
  406. data/lib/getstream_ruby/generated/models/frame_recording_settings_request.rb +41 -0
  407. data/lib/getstream_ruby/generated/models/frame_recording_settings_response.rb +41 -0
  408. data/lib/getstream_ruby/generated/models/full_user_response.rb +176 -0
  409. data/lib/getstream_ruby/generated/models/geofence_response.rb +46 -0
  410. data/lib/getstream_ruby/generated/models/geofence_settings.rb +31 -0
  411. data/lib/getstream_ruby/generated/models/geofence_settings_request.rb +31 -0
  412. data/lib/getstream_ruby/generated/models/geofence_settings_response.rb +31 -0
  413. data/lib/getstream_ruby/generated/models/get_active_calls_status_response.rb +51 -0
  414. data/lib/getstream_ruby/generated/models/get_activity_response.rb +36 -0
  415. data/lib/getstream_ruby/generated/models/get_application_response.rb +36 -0
  416. data/lib/getstream_ruby/generated/models/get_block_list_response.rb +36 -0
  417. data/lib/getstream_ruby/generated/models/get_blocked_users_response.rb +36 -0
  418. data/lib/getstream_ruby/generated/models/get_call_report_response.rb +56 -0
  419. data/lib/getstream_ruby/generated/models/get_call_response.rb +46 -0
  420. data/lib/getstream_ruby/generated/models/get_call_type_response.rb +66 -0
  421. data/lib/getstream_ruby/generated/models/get_campaign_response.rb +41 -0
  422. data/lib/getstream_ruby/generated/models/get_channel_type_response.rb +206 -0
  423. data/lib/getstream_ruby/generated/models/get_command_response.rb +61 -0
  424. data/lib/getstream_ruby/generated/models/get_comment_replies_response.rb +46 -0
  425. data/lib/getstream_ruby/generated/models/get_comment_response.rb +36 -0
  426. data/lib/getstream_ruby/generated/models/get_comments_response.rb +46 -0
  427. data/lib/getstream_ruby/generated/models/get_config_response.rb +36 -0
  428. data/lib/getstream_ruby/generated/models/get_custom_permission_response.rb +36 -0
  429. data/lib/getstream_ruby/generated/models/get_draft_response.rb +36 -0
  430. data/lib/getstream_ruby/generated/models/get_edges_response.rb +36 -0
  431. data/lib/getstream_ruby/generated/models/get_feed_group_response.rb +36 -0
  432. data/lib/getstream_ruby/generated/models/get_feed_view_response.rb +36 -0
  433. data/lib/getstream_ruby/generated/models/get_feed_visibility_response.rb +36 -0
  434. data/lib/getstream_ruby/generated/models/get_follow_suggestions_response.rb +36 -0
  435. data/lib/getstream_ruby/generated/models/get_import_response.rb +36 -0
  436. data/lib/getstream_ruby/generated/models/get_many_messages_response.rb +36 -0
  437. data/lib/getstream_ruby/generated/models/get_message_response.rb +41 -0
  438. data/lib/getstream_ruby/generated/models/get_moderation_rule_response.rb +36 -0
  439. data/lib/getstream_ruby/generated/models/get_og_response.rb +141 -0
  440. data/lib/getstream_ruby/generated/models/get_or_create_call_request.rb +51 -0
  441. data/lib/getstream_ruby/generated/models/get_or_create_call_response.rb +51 -0
  442. data/lib/getstream_ruby/generated/models/get_or_create_feed_group_request.rb +66 -0
  443. data/lib/getstream_ruby/generated/models/get_or_create_feed_group_response.rb +41 -0
  444. data/lib/getstream_ruby/generated/models/get_or_create_feed_request.rb +101 -0
  445. data/lib/getstream_ruby/generated/models/get_or_create_feed_response.rb +116 -0
  446. data/lib/getstream_ruby/generated/models/get_or_create_feed_view_request.rb +46 -0
  447. data/lib/getstream_ruby/generated/models/get_or_create_feed_view_response.rb +41 -0
  448. data/lib/getstream_ruby/generated/models/get_push_templates_response.rb +36 -0
  449. data/lib/getstream_ruby/generated/models/get_rate_limits_response.rb +51 -0
  450. data/lib/getstream_ruby/generated/models/get_reactions_response.rb +36 -0
  451. data/lib/getstream_ruby/generated/models/get_replies_response.rb +36 -0
  452. data/lib/getstream_ruby/generated/models/get_review_queue_item_response.rb +36 -0
  453. data/lib/getstream_ruby/generated/models/get_segment_response.rb +36 -0
  454. data/lib/getstream_ruby/generated/models/get_task_response.rb +61 -0
  455. data/lib/getstream_ruby/generated/models/get_thread_response.rb +36 -0
  456. data/lib/getstream_ruby/generated/models/go_live_request.rb +56 -0
  457. data/lib/getstream_ruby/generated/models/go_live_response.rb +36 -0
  458. data/lib/getstream_ruby/generated/models/google_vision_config.rb +31 -0
  459. data/lib/getstream_ruby/generated/models/grouped_stats_response.rb +36 -0
  460. data/lib/getstream_ruby/generated/models/harm_config.rb +51 -0
  461. data/lib/getstream_ruby/generated/models/hide_channel_request.rb +41 -0
  462. data/lib/getstream_ruby/generated/models/hide_channel_response.rb +31 -0
  463. data/lib/getstream_ruby/generated/models/hls_settings.rb +46 -0
  464. data/lib/getstream_ruby/generated/models/hls_settings_request.rb +46 -0
  465. data/lib/getstream_ruby/generated/models/hls_settings_response.rb +46 -0
  466. data/lib/getstream_ruby/generated/models/huawei_config.rb +41 -0
  467. data/lib/getstream_ruby/generated/models/huawei_config_fields.rb +41 -0
  468. data/lib/getstream_ruby/generated/models/image_content_parameters.rb +31 -0
  469. data/lib/getstream_ruby/generated/models/image_data.rb +51 -0
  470. data/lib/getstream_ruby/generated/models/image_rule_parameters.rb +41 -0
  471. data/lib/getstream_ruby/generated/models/image_size.rb +46 -0
  472. data/lib/getstream_ruby/generated/models/image_upload_request.rb +41 -0
  473. data/lib/getstream_ruby/generated/models/image_upload_response.rb +46 -0
  474. data/lib/getstream_ruby/generated/models/images.rb +61 -0
  475. data/lib/getstream_ruby/generated/models/import_task.rb +66 -0
  476. data/lib/getstream_ruby/generated/models/import_task_history.rb +41 -0
  477. data/lib/getstream_ruby/generated/models/ingress_audio_encoding_options.rb +41 -0
  478. data/lib/getstream_ruby/generated/models/ingress_audio_encoding_options_request.rb +41 -0
  479. data/lib/getstream_ruby/generated/models/ingress_audio_encoding_response.rb +41 -0
  480. data/lib/getstream_ruby/generated/models/ingress_settings.rb +41 -0
  481. data/lib/getstream_ruby/generated/models/ingress_settings_request.rb +41 -0
  482. data/lib/getstream_ruby/generated/models/ingress_settings_response.rb +41 -0
  483. data/lib/getstream_ruby/generated/models/ingress_video_encoding_options.rb +31 -0
  484. data/lib/getstream_ruby/generated/models/ingress_video_encoding_options_request.rb +31 -0
  485. data/lib/getstream_ruby/generated/models/ingress_video_encoding_response.rb +31 -0
  486. data/lib/getstream_ruby/generated/models/ingress_video_layer.rb +51 -0
  487. data/lib/getstream_ruby/generated/models/ingress_video_layer_request.rb +51 -0
  488. data/lib/getstream_ruby/generated/models/ingress_video_layer_response.rb +51 -0
  489. data/lib/getstream_ruby/generated/models/join_call_api_metrics.rb +41 -0
  490. data/lib/getstream_ruby/generated/models/kick_user_request.rb +46 -0
  491. data/lib/getstream_ruby/generated/models/kick_user_response.rb +31 -0
  492. data/lib/getstream_ruby/generated/models/kicked_user_event.rb +51 -0
  493. data/lib/getstream_ruby/generated/models/label.rb +41 -0
  494. data/lib/getstream_ruby/generated/models/label_thresholds.rb +36 -0
  495. data/lib/getstream_ruby/generated/models/layout_settings.rb +51 -0
  496. data/lib/getstream_ruby/generated/models/layout_settings_request.rb +51 -0
  497. data/lib/getstream_ruby/generated/models/layout_settings_response.rb +51 -0
  498. data/lib/getstream_ruby/generated/models/limit_info.rb +41 -0
  499. data/lib/getstream_ruby/generated/models/limits_settings.rb +46 -0
  500. data/lib/getstream_ruby/generated/models/limits_settings_request.rb +46 -0
  501. data/lib/getstream_ruby/generated/models/limits_settings_response.rb +46 -0
  502. data/lib/getstream_ruby/generated/models/list_block_list_response.rb +36 -0
  503. data/lib/getstream_ruby/generated/models/list_call_type_response.rb +36 -0
  504. data/lib/getstream_ruby/generated/models/list_channel_types_response.rb +36 -0
  505. data/lib/getstream_ruby/generated/models/list_commands_response.rb +36 -0
  506. data/lib/getstream_ruby/generated/models/list_devices_response.rb +36 -0
  507. data/lib/getstream_ruby/generated/models/list_external_storage_response.rb +36 -0
  508. data/lib/getstream_ruby/generated/models/list_feed_groups_response.rb +36 -0
  509. data/lib/getstream_ruby/generated/models/list_feed_views_response.rb +36 -0
  510. data/lib/getstream_ruby/generated/models/list_feed_visibilities_response.rb +36 -0
  511. data/lib/getstream_ruby/generated/models/list_imports_response.rb +36 -0
  512. data/lib/getstream_ruby/generated/models/list_permissions_response.rb +36 -0
  513. data/lib/getstream_ruby/generated/models/list_push_providers_response.rb +36 -0
  514. data/lib/getstream_ruby/generated/models/list_recordings_response.rb +36 -0
  515. data/lib/getstream_ruby/generated/models/list_roles_response.rb +36 -0
  516. data/lib/getstream_ruby/generated/models/list_transcriptions_response.rb +36 -0
  517. data/lib/getstream_ruby/generated/models/llm_config.rb +51 -0
  518. data/lib/getstream_ruby/generated/models/llm_rule.rb +46 -0
  519. data/lib/getstream_ruby/generated/models/mark_activity_request.rb +61 -0
  520. data/lib/getstream_ruby/generated/models/mark_channels_read_request.rb +41 -0
  521. data/lib/getstream_ruby/generated/models/mark_read_request.rb +46 -0
  522. data/lib/getstream_ruby/generated/models/mark_read_response.rb +36 -0
  523. data/lib/getstream_ruby/generated/models/mark_reviewed_request.rb +36 -0
  524. data/lib/getstream_ruby/generated/models/mark_unread_request.rb +46 -0
  525. data/lib/getstream_ruby/generated/models/member_added_event.rb +66 -0
  526. data/lib/getstream_ruby/generated/models/member_removed_event.rb +61 -0
  527. data/lib/getstream_ruby/generated/models/member_request.rb +41 -0
  528. data/lib/getstream_ruby/generated/models/member_response.rb +61 -0
  529. data/lib/getstream_ruby/generated/models/member_updated_event.rb +66 -0
  530. data/lib/getstream_ruby/generated/models/members_response.rb +36 -0
  531. data/lib/getstream_ruby/generated/models/membership_level_response.rb +66 -0
  532. data/lib/getstream_ruby/generated/models/message.rb +246 -0
  533. data/lib/getstream_ruby/generated/models/message_action_request.rb +41 -0
  534. data/lib/getstream_ruby/generated/models/message_change_set.rb +71 -0
  535. data/lib/getstream_ruby/generated/models/message_deleted_event.rb +81 -0
  536. data/lib/getstream_ruby/generated/models/message_flag_response.rb +96 -0
  537. data/lib/getstream_ruby/generated/models/message_flagged_event.rb +61 -0
  538. data/lib/getstream_ruby/generated/models/message_history_entry_response.rb +61 -0
  539. data/lib/getstream_ruby/generated/models/message_moderation_result.rb +81 -0
  540. data/lib/getstream_ruby/generated/models/message_new_event.rb +76 -0
  541. data/lib/getstream_ruby/generated/models/message_options.rb +31 -0
  542. data/lib/getstream_ruby/generated/models/message_pagination_params.rb +14 -0
  543. data/lib/getstream_ruby/generated/models/message_read_event.rb +81 -0
  544. data/lib/getstream_ruby/generated/models/message_reminder.rb +76 -0
  545. data/lib/getstream_ruby/generated/models/message_request.rb +126 -0
  546. data/lib/getstream_ruby/generated/models/message_response.rb +246 -0
  547. data/lib/getstream_ruby/generated/models/message_stats_response.rb +31 -0
  548. data/lib/getstream_ruby/generated/models/message_unblocked_event.rb +56 -0
  549. data/lib/getstream_ruby/generated/models/message_undeleted_event.rb +71 -0
  550. data/lib/getstream_ruby/generated/models/message_update.rb +36 -0
  551. data/lib/getstream_ruby/generated/models/message_updated_event.rb +71 -0
  552. data/lib/getstream_ruby/generated/models/message_with_channel_response.rb +251 -0
  553. data/lib/getstream_ruby/generated/models/moderation_action_config.rb +56 -0
  554. data/lib/getstream_ruby/generated/models/moderation_check_completed_event.rb +66 -0
  555. data/lib/getstream_ruby/generated/models/moderation_config.rb +116 -0
  556. data/lib/getstream_ruby/generated/models/moderation_custom_action_event.rb +66 -0
  557. data/lib/getstream_ruby/generated/models/moderation_dashboard_preferences.rb +41 -0
  558. data/lib/getstream_ruby/generated/models/moderation_flag_response.rb +101 -0
  559. data/lib/getstream_ruby/generated/models/moderation_flagged_event.rb +56 -0
  560. data/lib/getstream_ruby/generated/models/moderation_mark_reviewed_event.rb +56 -0
  561. data/lib/getstream_ruby/generated/models/moderation_payload.rb +46 -0
  562. data/lib/getstream_ruby/generated/models/moderation_response.rb +46 -0
  563. data/lib/getstream_ruby/generated/models/moderation_rule_v2_response.rb +96 -0
  564. data/lib/getstream_ruby/generated/models/moderation_v2_response.rb +61 -0
  565. data/lib/getstream_ruby/generated/models/mute_channel_request.rb +46 -0
  566. data/lib/getstream_ruby/generated/models/mute_channel_response.rb +46 -0
  567. data/lib/getstream_ruby/generated/models/mute_request.rb +46 -0
  568. data/lib/getstream_ruby/generated/models/mute_response.rb +46 -0
  569. data/lib/getstream_ruby/generated/models/mute_users_request.rb +66 -0
  570. data/lib/getstream_ruby/generated/models/mute_users_response.rb +31 -0
  571. data/lib/getstream_ruby/generated/models/network_metrics_report_response.rb +46 -0
  572. data/lib/getstream_ruby/generated/models/noise_cancellation_settings.rb +31 -0
  573. data/lib/getstream_ruby/generated/models/notification_config.rb +36 -0
  574. data/lib/getstream_ruby/generated/models/notification_context.rb +36 -0
  575. data/lib/getstream_ruby/generated/models/notification_feed_updated_event.rb +71 -0
  576. data/lib/getstream_ruby/generated/models/notification_mark_unread_event.rb +116 -0
  577. data/lib/getstream_ruby/generated/models/notification_settings.rb +56 -0
  578. data/lib/getstream_ruby/generated/models/notification_status_response.rb +56 -0
  579. data/lib/getstream_ruby/generated/models/notification_target.rb +56 -0
  580. data/lib/getstream_ruby/generated/models/notification_trigger.rb +36 -0
  581. data/lib/getstream_ruby/generated/models/ocr_rule.rb +36 -0
  582. data/lib/getstream_ruby/generated/models/only_user_id.rb +31 -0
  583. data/lib/getstream_ruby/generated/models/own_capability.rb +14 -0
  584. data/lib/getstream_ruby/generated/models/own_user.rb +166 -0
  585. data/lib/getstream_ruby/generated/models/own_user_response.rb +176 -0
  586. data/lib/getstream_ruby/generated/models/pager_request.rb +41 -0
  587. data/lib/getstream_ruby/generated/models/pager_response.rb +36 -0
  588. data/lib/getstream_ruby/generated/models/pagination_params.rb +36 -0
  589. data/lib/getstream_ruby/generated/models/participant_count_by_minute_response.rb +51 -0
  590. data/lib/getstream_ruby/generated/models/participant_count_over_time_response.rb +31 -0
  591. data/lib/getstream_ruby/generated/models/participant_report_response.rb +76 -0
  592. data/lib/getstream_ruby/generated/models/pending_message_event.rb +71 -0
  593. data/lib/getstream_ruby/generated/models/pending_message_response.rb +46 -0
  594. data/lib/getstream_ruby/generated/models/per_sdk_usage_report.rb +36 -0
  595. data/lib/getstream_ruby/generated/models/permission.rb +76 -0
  596. data/lib/getstream_ruby/generated/models/permission_request_event.rb +51 -0
  597. data/lib/getstream_ruby/generated/models/pin_activity_request.rb +36 -0
  598. data/lib/getstream_ruby/generated/models/pin_activity_response.rb +51 -0
  599. data/lib/getstream_ruby/generated/models/pin_request.rb +36 -0
  600. data/lib/getstream_ruby/generated/models/pin_response.rb +31 -0
  601. data/lib/getstream_ruby/generated/models/platform_data_response.rb +41 -0
  602. data/lib/getstream_ruby/generated/models/policy.rb +66 -0
  603. data/lib/getstream_ruby/generated/models/policy_request.rb +56 -0
  604. data/lib/getstream_ruby/generated/models/poll.rb +131 -0
  605. data/lib/getstream_ruby/generated/models/poll_option.rb +41 -0
  606. data/lib/getstream_ruby/generated/models/poll_option_input.rb +36 -0
  607. data/lib/getstream_ruby/generated/models/poll_option_request.rb +41 -0
  608. data/lib/getstream_ruby/generated/models/poll_option_response.rb +36 -0
  609. data/lib/getstream_ruby/generated/models/poll_option_response_data.rb +41 -0
  610. data/lib/getstream_ruby/generated/models/poll_response.rb +36 -0
  611. data/lib/getstream_ruby/generated/models/poll_response_data.rb +131 -0
  612. data/lib/getstream_ruby/generated/models/poll_vote.rb +71 -0
  613. data/lib/getstream_ruby/generated/models/poll_vote_response.rb +36 -0
  614. data/lib/getstream_ruby/generated/models/poll_vote_response_data.rb +71 -0
  615. data/lib/getstream_ruby/generated/models/poll_votes_response.rb +46 -0
  616. data/lib/getstream_ruby/generated/models/privacy_settings.rb +36 -0
  617. data/lib/getstream_ruby/generated/models/privacy_settings_response.rb +36 -0
  618. data/lib/getstream_ruby/generated/models/publisher_all_metrics.rb +41 -0
  619. data/lib/getstream_ruby/generated/models/publisher_audio_metrics.rb +31 -0
  620. data/lib/getstream_ruby/generated/models/publisher_stats_response.rb +41 -0
  621. data/lib/getstream_ruby/generated/models/publisher_video_metrics.rb +51 -0
  622. data/lib/getstream_ruby/generated/models/publishers_metrics.rb +31 -0
  623. data/lib/getstream_ruby/generated/models/push_config.rb +36 -0
  624. data/lib/getstream_ruby/generated/models/push_notification_config.rb +36 -0
  625. data/lib/getstream_ruby/generated/models/push_notification_fields.rb +61 -0
  626. data/lib/getstream_ruby/generated/models/push_notification_settings_response.rb +36 -0
  627. data/lib/getstream_ruby/generated/models/push_preference_input.rb +66 -0
  628. data/lib/getstream_ruby/generated/models/push_preferences.rb +51 -0
  629. data/lib/getstream_ruby/generated/models/push_provider.rb +161 -0
  630. data/lib/getstream_ruby/generated/models/push_provider_response.rb +166 -0
  631. data/lib/getstream_ruby/generated/models/push_template.rb +51 -0
  632. data/lib/getstream_ruby/generated/models/quality_score_report.rb +31 -0
  633. data/lib/getstream_ruby/generated/models/quality_score_report_response.rb +31 -0
  634. data/lib/getstream_ruby/generated/models/query_activities_request.rb +51 -0
  635. data/lib/getstream_ruby/generated/models/query_activities_response.rb +46 -0
  636. data/lib/getstream_ruby/generated/models/query_activity_reactions_request.rb +51 -0
  637. data/lib/getstream_ruby/generated/models/query_activity_reactions_response.rb +46 -0
  638. data/lib/getstream_ruby/generated/models/query_aggregate_call_stats_request.rb +41 -0
  639. data/lib/getstream_ruby/generated/models/query_aggregate_call_stats_response.rb +66 -0
  640. data/lib/getstream_ruby/generated/models/query_banned_users_payload.rb +61 -0
  641. data/lib/getstream_ruby/generated/models/query_banned_users_response.rb +36 -0
  642. data/lib/getstream_ruby/generated/models/query_bookmark_folders_request.rb +51 -0
  643. data/lib/getstream_ruby/generated/models/query_bookmark_folders_response.rb +46 -0
  644. data/lib/getstream_ruby/generated/models/query_bookmarks_request.rb +51 -0
  645. data/lib/getstream_ruby/generated/models/query_bookmarks_response.rb +46 -0
  646. data/lib/getstream_ruby/generated/models/query_call_members_request.rb +61 -0
  647. data/lib/getstream_ruby/generated/models/query_call_members_response.rb +46 -0
  648. data/lib/getstream_ruby/generated/models/query_call_participants_request.rb +31 -0
  649. data/lib/getstream_ruby/generated/models/query_call_participants_response.rb +56 -0
  650. data/lib/getstream_ruby/generated/models/query_call_stats_request.rb +51 -0
  651. data/lib/getstream_ruby/generated/models/query_call_stats_response.rb +46 -0
  652. data/lib/getstream_ruby/generated/models/query_calls_request.rb +51 -0
  653. data/lib/getstream_ruby/generated/models/query_calls_response.rb +46 -0
  654. data/lib/getstream_ruby/generated/models/query_campaigns_request.rb +56 -0
  655. data/lib/getstream_ruby/generated/models/query_campaigns_response.rb +46 -0
  656. data/lib/getstream_ruby/generated/models/query_channels_request.rb +71 -0
  657. data/lib/getstream_ruby/generated/models/query_channels_response.rb +36 -0
  658. data/lib/getstream_ruby/generated/models/query_comment_reactions_request.rb +51 -0
  659. data/lib/getstream_ruby/generated/models/query_comment_reactions_response.rb +46 -0
  660. data/lib/getstream_ruby/generated/models/query_comments_request.rb +51 -0
  661. data/lib/getstream_ruby/generated/models/query_comments_response.rb +46 -0
  662. data/lib/getstream_ruby/generated/models/query_drafts_request.rb +61 -0
  663. data/lib/getstream_ruby/generated/models/query_drafts_response.rb +46 -0
  664. data/lib/getstream_ruby/generated/models/query_feed_members_request.rb +51 -0
  665. data/lib/getstream_ruby/generated/models/query_feed_members_response.rb +46 -0
  666. data/lib/getstream_ruby/generated/models/query_feed_moderation_template.rb +46 -0
  667. data/lib/getstream_ruby/generated/models/query_feed_moderation_templates_response.rb +36 -0
  668. data/lib/getstream_ruby/generated/models/query_feeds_request.rb +56 -0
  669. data/lib/getstream_ruby/generated/models/query_feeds_response.rb +46 -0
  670. data/lib/getstream_ruby/generated/models/query_follows_request.rb +51 -0
  671. data/lib/getstream_ruby/generated/models/query_follows_response.rb +46 -0
  672. data/lib/getstream_ruby/generated/models/query_members_payload.rb +71 -0
  673. data/lib/getstream_ruby/generated/models/query_membership_levels_request.rb +51 -0
  674. data/lib/getstream_ruby/generated/models/query_membership_levels_response.rb +46 -0
  675. data/lib/getstream_ruby/generated/models/query_message_flags_payload.rb +61 -0
  676. data/lib/getstream_ruby/generated/models/query_message_flags_response.rb +36 -0
  677. data/lib/getstream_ruby/generated/models/query_message_history_request.rb +51 -0
  678. data/lib/getstream_ruby/generated/models/query_message_history_response.rb +46 -0
  679. data/lib/getstream_ruby/generated/models/query_moderation_configs_request.rb +61 -0
  680. data/lib/getstream_ruby/generated/models/query_moderation_configs_response.rb +46 -0
  681. data/lib/getstream_ruby/generated/models/query_moderation_flags_request.rb +51 -0
  682. data/lib/getstream_ruby/generated/models/query_moderation_flags_response.rb +46 -0
  683. data/lib/getstream_ruby/generated/models/query_moderation_logs_request.rb +61 -0
  684. data/lib/getstream_ruby/generated/models/query_moderation_logs_response.rb +46 -0
  685. data/lib/getstream_ruby/generated/models/query_moderation_rules_request.rb +61 -0
  686. data/lib/getstream_ruby/generated/models/query_moderation_rules_response.rb +51 -0
  687. data/lib/getstream_ruby/generated/models/query_poll_votes_request.rb +51 -0
  688. data/lib/getstream_ruby/generated/models/query_polls_request.rb +51 -0
  689. data/lib/getstream_ruby/generated/models/query_polls_response.rb +46 -0
  690. data/lib/getstream_ruby/generated/models/query_reactions_request.rb +61 -0
  691. data/lib/getstream_ruby/generated/models/query_reactions_response.rb +46 -0
  692. data/lib/getstream_ruby/generated/models/query_reminders_request.rb +61 -0
  693. data/lib/getstream_ruby/generated/models/query_reminders_response.rb +46 -0
  694. data/lib/getstream_ruby/generated/models/query_review_queue_request.rb +81 -0
  695. data/lib/getstream_ruby/generated/models/query_review_queue_response.rb +56 -0
  696. data/lib/getstream_ruby/generated/models/query_segment_targets_request.rb +51 -0
  697. data/lib/getstream_ruby/generated/models/query_segment_targets_response.rb +46 -0
  698. data/lib/getstream_ruby/generated/models/query_segments_request.rb +51 -0
  699. data/lib/getstream_ruby/generated/models/query_segments_response.rb +46 -0
  700. data/lib/getstream_ruby/generated/models/query_threads_request.rb +76 -0
  701. data/lib/getstream_ruby/generated/models/query_threads_response.rb +46 -0
  702. data/lib/getstream_ruby/generated/models/query_user_feedback_request.rb +51 -0
  703. data/lib/getstream_ruby/generated/models/query_user_feedback_response.rb +46 -0
  704. data/lib/getstream_ruby/generated/models/query_users_payload.rb +66 -0
  705. data/lib/getstream_ruby/generated/models/query_users_response.rb +36 -0
  706. data/lib/getstream_ruby/generated/models/ranking_config.rb +46 -0
  707. data/lib/getstream_ruby/generated/models/reaction.rb +66 -0
  708. data/lib/getstream_ruby/generated/models/reaction_deleted_event.rb +76 -0
  709. data/lib/getstream_ruby/generated/models/reaction_group_response.rb +46 -0
  710. data/lib/getstream_ruby/generated/models/reaction_new_event.rb +76 -0
  711. data/lib/getstream_ruby/generated/models/reaction_request.rb +61 -0
  712. data/lib/getstream_ruby/generated/models/reaction_response.rb +66 -0
  713. data/lib/getstream_ruby/generated/models/reaction_updated_event.rb +71 -0
  714. data/lib/getstream_ruby/generated/models/reactivate_user_request.rb +41 -0
  715. data/lib/getstream_ruby/generated/models/reactivate_user_response.rb +36 -0
  716. data/lib/getstream_ruby/generated/models/reactivate_users_request.rb +46 -0
  717. data/lib/getstream_ruby/generated/models/reactivate_users_response.rb +36 -0
  718. data/lib/getstream_ruby/generated/models/read_receipts.rb +31 -0
  719. data/lib/getstream_ruby/generated/models/read_receipts_response.rb +31 -0
  720. data/lib/getstream_ruby/generated/models/read_state_response.rb +46 -0
  721. data/lib/getstream_ruby/generated/models/record_settings.rb +46 -0
  722. data/lib/getstream_ruby/generated/models/record_settings_request.rb +46 -0
  723. data/lib/getstream_ruby/generated/models/record_settings_response.rb +46 -0
  724. data/lib/getstream_ruby/generated/models/reject_feed_member_invite_request.rb +36 -0
  725. data/lib/getstream_ruby/generated/models/reject_feed_member_invite_response.rb +36 -0
  726. data/lib/getstream_ruby/generated/models/reject_follow_request.rb +36 -0
  727. data/lib/getstream_ruby/generated/models/reject_follow_response.rb +36 -0
  728. data/lib/getstream_ruby/generated/models/reminder_created_event.rb +71 -0
  729. data/lib/getstream_ruby/generated/models/reminder_deleted_event.rb +71 -0
  730. data/lib/getstream_ruby/generated/models/reminder_notification_event.rb +71 -0
  731. data/lib/getstream_ruby/generated/models/reminder_response_data.rb +71 -0
  732. data/lib/getstream_ruby/generated/models/reminder_updated_event.rb +71 -0
  733. data/lib/getstream_ruby/generated/models/replies_meta.rb +46 -0
  734. data/lib/getstream_ruby/generated/models/report_by_histogram_bucket.rb +51 -0
  735. data/lib/getstream_ruby/generated/models/report_response.rb +41 -0
  736. data/lib/getstream_ruby/generated/models/response.rb +31 -0
  737. data/lib/getstream_ruby/generated/models/restore_action_request.rb +14 -0
  738. data/lib/getstream_ruby/generated/models/restore_users_request.rb +31 -0
  739. data/lib/getstream_ruby/generated/models/review_queue_item_new_event.rb +61 -0
  740. data/lib/getstream_ruby/generated/models/review_queue_item_response.rb +171 -0
  741. data/lib/getstream_ruby/generated/models/review_queue_item_updated_event.rb +61 -0
  742. data/lib/getstream_ruby/generated/models/ring_settings.rb +41 -0
  743. data/lib/getstream_ruby/generated/models/ring_settings_request.rb +41 -0
  744. data/lib/getstream_ruby/generated/models/ring_settings_response.rb +41 -0
  745. data/lib/getstream_ruby/generated/models/role.rb +51 -0
  746. data/lib/getstream_ruby/generated/models/rtmp_broadcast_request.rb +51 -0
  747. data/lib/getstream_ruby/generated/models/rtmp_ingress.rb +31 -0
  748. data/lib/getstream_ruby/generated/models/rtmp_location.rb +41 -0
  749. data/lib/getstream_ruby/generated/models/rtmp_settings.rb +46 -0
  750. data/lib/getstream_ruby/generated/models/rtmp_settings_request.rb +41 -0
  751. data/lib/getstream_ruby/generated/models/rtmp_settings_response.rb +41 -0
  752. data/lib/getstream_ruby/generated/models/rule_builder_action.rb +41 -0
  753. data/lib/getstream_ruby/generated/models/rule_builder_condition.rb +86 -0
  754. data/lib/getstream_ruby/generated/models/rule_builder_condition_group.rb +36 -0
  755. data/lib/getstream_ruby/generated/models/rule_builder_config.rb +36 -0
  756. data/lib/getstream_ruby/generated/models/rule_builder_rule.rb +61 -0
  757. data/lib/getstream_ruby/generated/models/s3_request.rb +46 -0
  758. data/lib/getstream_ruby/generated/models/screensharing_settings.rb +41 -0
  759. data/lib/getstream_ruby/generated/models/screensharing_settings_request.rb +41 -0
  760. data/lib/getstream_ruby/generated/models/screensharing_settings_response.rb +41 -0
  761. data/lib/getstream_ruby/generated/models/sdk_usage_report.rb +31 -0
  762. data/lib/getstream_ruby/generated/models/sdk_usage_report_response.rb +31 -0
  763. data/lib/getstream_ruby/generated/models/search_payload.rb +66 -0
  764. data/lib/getstream_ruby/generated/models/search_response.rb +51 -0
  765. data/lib/getstream_ruby/generated/models/search_result.rb +31 -0
  766. data/lib/getstream_ruby/generated/models/search_result_message.rb +251 -0
  767. data/lib/getstream_ruby/generated/models/search_warning.rb +46 -0
  768. data/lib/getstream_ruby/generated/models/segment.rb +86 -0
  769. data/lib/getstream_ruby/generated/models/segment_response.rb +81 -0
  770. data/lib/getstream_ruby/generated/models/segment_target_response.rb +46 -0
  771. data/lib/getstream_ruby/generated/models/send_call_event_request.rb +41 -0
  772. data/lib/getstream_ruby/generated/models/send_call_event_response.rb +31 -0
  773. data/lib/getstream_ruby/generated/models/send_closed_caption_request.rb +71 -0
  774. data/lib/getstream_ruby/generated/models/send_closed_caption_response.rb +31 -0
  775. data/lib/getstream_ruby/generated/models/send_event_request.rb +31 -0
  776. data/lib/getstream_ruby/generated/models/send_message_request.rb +61 -0
  777. data/lib/getstream_ruby/generated/models/send_message_response.rb +41 -0
  778. data/lib/getstream_ruby/generated/models/send_reaction_request.rb +41 -0
  779. data/lib/getstream_ruby/generated/models/send_reaction_response.rb +41 -0
  780. data/lib/getstream_ruby/generated/models/send_user_custom_event_request.rb +31 -0
  781. data/lib/getstream_ruby/generated/models/session_settings.rb +31 -0
  782. data/lib/getstream_ruby/generated/models/session_settings_request.rb +31 -0
  783. data/lib/getstream_ruby/generated/models/session_settings_response.rb +31 -0
  784. data/lib/getstream_ruby/generated/models/shadow_block_action_request.rb +14 -0
  785. data/lib/getstream_ruby/generated/models/shared_location.rb +81 -0
  786. data/lib/getstream_ruby/generated/models/shared_location_response.rb +86 -0
  787. data/lib/getstream_ruby/generated/models/shared_location_response_data.rb +81 -0
  788. data/lib/getstream_ruby/generated/models/shared_locations_response.rb +36 -0
  789. data/lib/getstream_ruby/generated/models/show_channel_request.rb +36 -0
  790. data/lib/getstream_ruby/generated/models/show_channel_response.rb +31 -0
  791. data/lib/getstream_ruby/generated/models/single_follow_response.rb +36 -0
  792. data/lib/getstream_ruby/generated/models/sort_param.rb +36 -0
  793. data/lib/getstream_ruby/generated/models/sort_param_request.rb +36 -0
  794. data/lib/getstream_ruby/generated/models/speech_segment_config.rb +36 -0
  795. data/lib/getstream_ruby/generated/models/srt_ingress.rb +31 -0
  796. data/lib/getstream_ruby/generated/models/start_campaign_request.rb +36 -0
  797. data/lib/getstream_ruby/generated/models/start_campaign_response.rb +41 -0
  798. data/lib/getstream_ruby/generated/models/start_closed_captions_request.rb +46 -0
  799. data/lib/getstream_ruby/generated/models/start_closed_captions_response.rb +31 -0
  800. data/lib/getstream_ruby/generated/models/start_frame_recording_request.rb +31 -0
  801. data/lib/getstream_ruby/generated/models/start_frame_recording_response.rb +31 -0
  802. data/lib/getstream_ruby/generated/models/start_hls_broadcasting_request.rb +14 -0
  803. data/lib/getstream_ruby/generated/models/start_hls_broadcasting_response.rb +36 -0
  804. data/lib/getstream_ruby/generated/models/start_recording_request.rb +31 -0
  805. data/lib/getstream_ruby/generated/models/start_recording_response.rb +31 -0
  806. data/lib/getstream_ruby/generated/models/start_rtmp_broadcasts_request.rb +31 -0
  807. data/lib/getstream_ruby/generated/models/start_rtmp_broadcasts_response.rb +31 -0
  808. data/lib/getstream_ruby/generated/models/start_transcription_request.rb +41 -0
  809. data/lib/getstream_ruby/generated/models/start_transcription_response.rb +31 -0
  810. data/lib/getstream_ruby/generated/models/stop_all_rtmp_broadcasts_request.rb +14 -0
  811. data/lib/getstream_ruby/generated/models/stop_all_rtmp_broadcasts_response.rb +31 -0
  812. data/lib/getstream_ruby/generated/models/stop_campaign_request.rb +14 -0
  813. data/lib/getstream_ruby/generated/models/stop_closed_captions_request.rb +31 -0
  814. data/lib/getstream_ruby/generated/models/stop_closed_captions_response.rb +31 -0
  815. data/lib/getstream_ruby/generated/models/stop_frame_recording_request.rb +14 -0
  816. data/lib/getstream_ruby/generated/models/stop_frame_recording_response.rb +31 -0
  817. data/lib/getstream_ruby/generated/models/stop_hls_broadcasting_request.rb +14 -0
  818. data/lib/getstream_ruby/generated/models/stop_hls_broadcasting_response.rb +31 -0
  819. data/lib/getstream_ruby/generated/models/stop_live_request.rb +51 -0
  820. data/lib/getstream_ruby/generated/models/stop_live_response.rb +36 -0
  821. data/lib/getstream_ruby/generated/models/stop_recording_request.rb +14 -0
  822. data/lib/getstream_ruby/generated/models/stop_recording_response.rb +31 -0
  823. data/lib/getstream_ruby/generated/models/stop_rtmp_broadcasts_request.rb +14 -0
  824. data/lib/getstream_ruby/generated/models/stop_rtmp_broadcasts_response.rb +31 -0
  825. data/lib/getstream_ruby/generated/models/stop_transcription_request.rb +31 -0
  826. data/lib/getstream_ruby/generated/models/stop_transcription_response.rb +31 -0
  827. data/lib/getstream_ruby/generated/models/stories_config.rb +36 -0
  828. data/lib/getstream_ruby/generated/models/submit_action_request.rb +86 -0
  829. data/lib/getstream_ruby/generated/models/submit_action_response.rb +36 -0
  830. data/lib/getstream_ruby/generated/models/subscriber_all_metrics.rb +41 -0
  831. data/lib/getstream_ruby/generated/models/subscriber_audio_metrics.rb +41 -0
  832. data/lib/getstream_ruby/generated/models/subscriber_stats_response.rb +41 -0
  833. data/lib/getstream_ruby/generated/models/subscriber_video_metrics.rb +41 -0
  834. data/lib/getstream_ruby/generated/models/subscribers_metrics.rb +31 -0
  835. data/lib/getstream_ruby/generated/models/target_resolution.rb +41 -0
  836. data/lib/getstream_ruby/generated/models/text_content_parameters.rb +51 -0
  837. data/lib/getstream_ruby/generated/models/text_rule_parameters.rb +61 -0
  838. data/lib/getstream_ruby/generated/models/thread_participant.rb +76 -0
  839. data/lib/getstream_ruby/generated/models/thread_response.rb +106 -0
  840. data/lib/getstream_ruby/generated/models/thread_state_response.rb +121 -0
  841. data/lib/getstream_ruby/generated/models/thread_updated_event.rb +61 -0
  842. data/lib/getstream_ruby/generated/models/threaded_comment_response.rb +156 -0
  843. data/lib/getstream_ruby/generated/models/thresholds.rb +41 -0
  844. data/lib/getstream_ruby/generated/models/thumbnail_response.rb +31 -0
  845. data/lib/getstream_ruby/generated/models/thumbnails_settings.rb +31 -0
  846. data/lib/getstream_ruby/generated/models/thumbnails_settings_request.rb +31 -0
  847. data/lib/getstream_ruby/generated/models/thumbnails_settings_response.rb +31 -0
  848. data/lib/getstream_ruby/generated/models/time.rb +14 -0
  849. data/lib/getstream_ruby/generated/models/track_stats_response.rb +36 -0
  850. data/lib/getstream_ruby/generated/models/transcription_settings.rb +51 -0
  851. data/lib/getstream_ruby/generated/models/transcription_settings_request.rb +51 -0
  852. data/lib/getstream_ruby/generated/models/transcription_settings_response.rb +51 -0
  853. data/lib/getstream_ruby/generated/models/translate_message_request.rb +31 -0
  854. data/lib/getstream_ruby/generated/models/translation_settings.rb +36 -0
  855. data/lib/getstream_ruby/generated/models/truncate_channel_request.rb +61 -0
  856. data/lib/getstream_ruby/generated/models/truncate_channel_response.rb +41 -0
  857. data/lib/getstream_ruby/generated/models/typing_indicators.rb +31 -0
  858. data/lib/getstream_ruby/generated/models/typing_indicators_response.rb +31 -0
  859. data/lib/getstream_ruby/generated/models/unban_action_request.rb +14 -0
  860. data/lib/getstream_ruby/generated/models/unban_request.rb +36 -0
  861. data/lib/getstream_ruby/generated/models/unban_response.rb +31 -0
  862. data/lib/getstream_ruby/generated/models/unblock_action_request.rb +14 -0
  863. data/lib/getstream_ruby/generated/models/unblock_user_request.rb +31 -0
  864. data/lib/getstream_ruby/generated/models/unblock_user_response.rb +31 -0
  865. data/lib/getstream_ruby/generated/models/unblock_users_request.rb +41 -0
  866. data/lib/getstream_ruby/generated/models/unblock_users_response.rb +31 -0
  867. data/lib/getstream_ruby/generated/models/unblocked_user_event.rb +46 -0
  868. data/lib/getstream_ruby/generated/models/unfollow_batch_request.rb +31 -0
  869. data/lib/getstream_ruby/generated/models/unfollow_batch_response.rb +36 -0
  870. data/lib/getstream_ruby/generated/models/unfollow_response.rb +36 -0
  871. data/lib/getstream_ruby/generated/models/unmute_channel_request.rb +46 -0
  872. data/lib/getstream_ruby/generated/models/unmute_request.rb +41 -0
  873. data/lib/getstream_ruby/generated/models/unmute_response.rb +36 -0
  874. data/lib/getstream_ruby/generated/models/unpin_activity_response.rb +46 -0
  875. data/lib/getstream_ruby/generated/models/unpin_request.rb +36 -0
  876. data/lib/getstream_ruby/generated/models/unpin_response.rb +31 -0
  877. data/lib/getstream_ruby/generated/models/unread_counts_batch_request.rb +31 -0
  878. data/lib/getstream_ruby/generated/models/unread_counts_batch_response.rb +36 -0
  879. data/lib/getstream_ruby/generated/models/unread_counts_channel.rb +41 -0
  880. data/lib/getstream_ruby/generated/models/unread_counts_channel_type.rb +41 -0
  881. data/lib/getstream_ruby/generated/models/unread_counts_response.rb +56 -0
  882. data/lib/getstream_ruby/generated/models/unread_counts_thread.rb +46 -0
  883. data/lib/getstream_ruby/generated/models/update_activity_partial_request.rb +46 -0
  884. data/lib/getstream_ruby/generated/models/update_activity_partial_response.rb +36 -0
  885. data/lib/getstream_ruby/generated/models/update_activity_request.rb +86 -0
  886. data/lib/getstream_ruby/generated/models/update_activity_response.rb +36 -0
  887. data/lib/getstream_ruby/generated/models/update_app_request.rb +261 -0
  888. data/lib/getstream_ruby/generated/models/update_block_list_request.rb +36 -0
  889. data/lib/getstream_ruby/generated/models/update_block_list_response.rb +36 -0
  890. data/lib/getstream_ruby/generated/models/update_bookmark_folder_request.rb +46 -0
  891. data/lib/getstream_ruby/generated/models/update_bookmark_folder_response.rb +36 -0
  892. data/lib/getstream_ruby/generated/models/update_bookmark_request.rb +56 -0
  893. data/lib/getstream_ruby/generated/models/update_bookmark_response.rb +36 -0
  894. data/lib/getstream_ruby/generated/models/update_call_members_request.rb +36 -0
  895. data/lib/getstream_ruby/generated/models/update_call_members_response.rb +36 -0
  896. data/lib/getstream_ruby/generated/models/update_call_request.rb +41 -0
  897. data/lib/getstream_ruby/generated/models/update_call_response.rb +46 -0
  898. data/lib/getstream_ruby/generated/models/update_call_type_request.rb +46 -0
  899. data/lib/getstream_ruby/generated/models/update_call_type_response.rb +66 -0
  900. data/lib/getstream_ruby/generated/models/update_channel_partial_request.rb +46 -0
  901. data/lib/getstream_ruby/generated/models/update_channel_partial_response.rb +41 -0
  902. data/lib/getstream_ruby/generated/models/update_channel_request.rb +101 -0
  903. data/lib/getstream_ruby/generated/models/update_channel_response.rb +46 -0
  904. data/lib/getstream_ruby/generated/models/update_channel_type_request.rb +186 -0
  905. data/lib/getstream_ruby/generated/models/update_channel_type_response.rb +206 -0
  906. data/lib/getstream_ruby/generated/models/update_command_request.rb +41 -0
  907. data/lib/getstream_ruby/generated/models/update_command_response.rb +36 -0
  908. data/lib/getstream_ruby/generated/models/update_comment_request.rb +41 -0
  909. data/lib/getstream_ruby/generated/models/update_comment_response.rb +36 -0
  910. data/lib/getstream_ruby/generated/models/update_external_storage_request.rb +56 -0
  911. data/lib/getstream_ruby/generated/models/update_external_storage_response.rb +51 -0
  912. data/lib/getstream_ruby/generated/models/update_feed_group_request.rb +61 -0
  913. data/lib/getstream_ruby/generated/models/update_feed_group_response.rb +36 -0
  914. data/lib/getstream_ruby/generated/models/update_feed_members_request.rb +51 -0
  915. data/lib/getstream_ruby/generated/models/update_feed_members_response.rb +46 -0
  916. data/lib/getstream_ruby/generated/models/update_feed_request.rb +36 -0
  917. data/lib/getstream_ruby/generated/models/update_feed_response.rb +36 -0
  918. data/lib/getstream_ruby/generated/models/update_feed_view_request.rb +46 -0
  919. data/lib/getstream_ruby/generated/models/update_feed_view_response.rb +36 -0
  920. data/lib/getstream_ruby/generated/models/update_follow_request.rb +61 -0
  921. data/lib/getstream_ruby/generated/models/update_follow_response.rb +36 -0
  922. data/lib/getstream_ruby/generated/models/update_live_location_request.rb +46 -0
  923. data/lib/getstream_ruby/generated/models/update_member_partial_request.rb +36 -0
  924. data/lib/getstream_ruby/generated/models/update_member_partial_response.rb +36 -0
  925. data/lib/getstream_ruby/generated/models/update_membership_level_request.rb +51 -0
  926. data/lib/getstream_ruby/generated/models/update_membership_level_response.rb +36 -0
  927. data/lib/getstream_ruby/generated/models/update_message_partial_request.rb +51 -0
  928. data/lib/getstream_ruby/generated/models/update_message_partial_response.rb +41 -0
  929. data/lib/getstream_ruby/generated/models/update_message_request.rb +41 -0
  930. data/lib/getstream_ruby/generated/models/update_message_response.rb +41 -0
  931. data/lib/getstream_ruby/generated/models/update_poll_option_request.rb +51 -0
  932. data/lib/getstream_ruby/generated/models/update_poll_partial_request.rb +46 -0
  933. data/lib/getstream_ruby/generated/models/update_poll_request.rb +91 -0
  934. data/lib/getstream_ruby/generated/models/update_reminder_request.rb +41 -0
  935. data/lib/getstream_ruby/generated/models/update_reminder_response.rb +36 -0
  936. data/lib/getstream_ruby/generated/models/update_thread_partial_request.rb +46 -0
  937. data/lib/getstream_ruby/generated/models/update_thread_partial_response.rb +36 -0
  938. data/lib/getstream_ruby/generated/models/update_user_partial_request.rb +41 -0
  939. data/lib/getstream_ruby/generated/models/update_user_permissions_request.rb +41 -0
  940. data/lib/getstream_ruby/generated/models/update_user_permissions_response.rb +31 -0
  941. data/lib/getstream_ruby/generated/models/update_users_partial_request.rb +31 -0
  942. data/lib/getstream_ruby/generated/models/update_users_request.rb +31 -0
  943. data/lib/getstream_ruby/generated/models/update_users_response.rb +41 -0
  944. data/lib/getstream_ruby/generated/models/updated_call_permissions_event.rb +51 -0
  945. data/lib/getstream_ruby/generated/models/upsert_activities_request.rb +31 -0
  946. data/lib/getstream_ruby/generated/models/upsert_activities_response.rb +36 -0
  947. data/lib/getstream_ruby/generated/models/upsert_config_request.rb +121 -0
  948. data/lib/getstream_ruby/generated/models/upsert_config_response.rb +36 -0
  949. data/lib/getstream_ruby/generated/models/upsert_moderation_rule_request.rb +81 -0
  950. data/lib/getstream_ruby/generated/models/upsert_moderation_rule_response.rb +36 -0
  951. data/lib/getstream_ruby/generated/models/upsert_moderation_template_request.rb +36 -0
  952. data/lib/getstream_ruby/generated/models/upsert_moderation_template_response.rb +51 -0
  953. data/lib/getstream_ruby/generated/models/upsert_push_preferences_request.rb +31 -0
  954. data/lib/getstream_ruby/generated/models/upsert_push_preferences_response.rb +41 -0
  955. data/lib/getstream_ruby/generated/models/upsert_push_provider_request.rb +31 -0
  956. data/lib/getstream_ruby/generated/models/upsert_push_provider_response.rb +36 -0
  957. data/lib/getstream_ruby/generated/models/upsert_push_template_request.rb +51 -0
  958. data/lib/getstream_ruby/generated/models/upsert_push_template_response.rb +36 -0
  959. data/lib/getstream_ruby/generated/models/user.rb +121 -0
  960. data/lib/getstream_ruby/generated/models/user_banned_event.rb +81 -0
  961. data/lib/getstream_ruby/generated/models/user_created_within_parameters.rb +31 -0
  962. data/lib/getstream_ruby/generated/models/user_custom_event_request.rb +36 -0
  963. data/lib/getstream_ruby/generated/models/user_custom_property_parameters.rb +36 -0
  964. data/lib/getstream_ruby/generated/models/user_deactivated_event.rb +46 -0
  965. data/lib/getstream_ruby/generated/models/user_deleted_event.rb +56 -0
  966. data/lib/getstream_ruby/generated/models/user_feedback_report.rb +36 -0
  967. data/lib/getstream_ruby/generated/models/user_feedback_report_response.rb +31 -0
  968. data/lib/getstream_ruby/generated/models/user_feedback_response.rb +71 -0
  969. data/lib/getstream_ruby/generated/models/user_flagged_event.rb +51 -0
  970. data/lib/getstream_ruby/generated/models/user_messages_deleted_event.rb +91 -0
  971. data/lib/getstream_ruby/generated/models/user_mute.rb +51 -0
  972. data/lib/getstream_ruby/generated/models/user_mute_response.rb +51 -0
  973. data/lib/getstream_ruby/generated/models/user_muted_event.rb +51 -0
  974. data/lib/getstream_ruby/generated/models/user_rating_report_response.rb +36 -0
  975. data/lib/getstream_ruby/generated/models/user_reactivated_event.rb +41 -0
  976. data/lib/getstream_ruby/generated/models/user_request.rb +76 -0
  977. data/lib/getstream_ruby/generated/models/user_response.rb +146 -0
  978. data/lib/getstream_ruby/generated/models/user_response_common_fields.rb +116 -0
  979. data/lib/getstream_ruby/generated/models/user_response_privacy_fields.rb +126 -0
  980. data/lib/getstream_ruby/generated/models/user_rule_parameters.rb +31 -0
  981. data/lib/getstream_ruby/generated/models/user_unbanned_event.rb +66 -0
  982. data/lib/getstream_ruby/generated/models/user_unmuted_event.rb +51 -0
  983. data/lib/getstream_ruby/generated/models/user_unread_reminder_event.rb +46 -0
  984. data/lib/getstream_ruby/generated/models/user_updated_event.rb +51 -0
  985. data/lib/getstream_ruby/generated/models/velocity_filter_config.rb +61 -0
  986. data/lib/getstream_ruby/generated/models/velocity_filter_config_rule.rb +96 -0
  987. data/lib/getstream_ruby/generated/models/video_call_rule_config.rb +41 -0
  988. data/lib/getstream_ruby/generated/models/video_content_parameters.rb +31 -0
  989. data/lib/getstream_ruby/generated/models/video_end_call_request.rb +14 -0
  990. data/lib/getstream_ruby/generated/models/video_kick_user_request.rb +14 -0
  991. data/lib/getstream_ruby/generated/models/video_reaction_over_time_response.rb +31 -0
  992. data/lib/getstream_ruby/generated/models/video_reactions_response.rb +36 -0
  993. data/lib/getstream_ruby/generated/models/video_rule_parameters.rb +41 -0
  994. data/lib/getstream_ruby/generated/models/video_settings.rb +51 -0
  995. data/lib/getstream_ruby/generated/models/video_settings_request.rb +51 -0
  996. data/lib/getstream_ruby/generated/models/video_settings_response.rb +51 -0
  997. data/lib/getstream_ruby/generated/models/vote_data.rb +36 -0
  998. data/lib/getstream_ruby/generated/models/webhook_event.rb +31 -0
  999. data/lib/getstream_ruby/generated/models/whip_ingress.rb +31 -0
  1000. data/lib/getstream_ruby/generated/models/wrapped_unread_counts_response.rb +61 -0
  1001. data/lib/getstream_ruby/generated/models/ws_event.rb +161 -0
  1002. data/lib/getstream_ruby/generated/models/xiaomi_config.rb +41 -0
  1003. data/lib/getstream_ruby/generated/models/xiaomi_config_fields.rb +41 -0
  1004. data/lib/getstream_ruby/generated/moderation_client.rb +425 -0
  1005. data/lib/getstream_ruby/resources/feed.rb +35 -0
  1006. data/lib/getstream_ruby/stream_response.rb +55 -0
  1007. data/lib/getstream_ruby/version.rb +7 -0
  1008. data/lib/getstream_ruby.rb +42 -0
  1009. metadata +1120 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 765739a719bbe2275fb36cde41f1879ccfff08e3d5c74ac5ddcae6b6dc8bfe20
4
+ data.tar.gz: 41229097883827200bfa4f61bb21b0b28e947d133a253cd77cb47a38c77fe1a5
5
+ SHA512:
6
+ metadata.gz: fea0955dc3bbe4f3586631be3f0a1525abb76c4dabb76e2110a82af663d79fa250e01662710b03d5894eaf620cc2cf7d2fbcebb11cf4fa9301049d5cc883e846
7
+ data.tar.gz: 2a501dc2e2b76c097cca0cfc520f896f9b0566ff9bc710238d4b85c3b9f97af9dd986f0fe93d466a36930a6c7754156b14b2078de84162f25be93213b9064881
data/README.md ADDED
@@ -0,0 +1,332 @@
1
+ # GetStream Ruby SDK this
2
+
3
+ Official Ruby SDK for GetStream's activity feeds and chat APIs.
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'getstream-ruby'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ ```bash
16
+ $ bundle install
17
+ ```
18
+
19
+ Or install it yourself as:
20
+
21
+ ```bash
22
+ $ gem install getstream-ruby
23
+ ```
24
+
25
+ ## Configuration
26
+
27
+ ### Method 1: Manual (Highest Priority)
28
+
29
+ ```ruby
30
+ require 'getstream_ruby'
31
+
32
+ client = GetStreamRuby.manual(
33
+ api_key: "your_api_key",
34
+ api_secret: "your_api_secret",
35
+ )
36
+ ```
37
+
38
+ ### Method 2: .env File
39
+
40
+ Create a `.env` file in your project root:
41
+
42
+ ```bash
43
+ # Copy the example file
44
+ cp env.example .env
45
+
46
+ # Edit .env with your actual credentials
47
+ STREAM_API_KEY=your_api_key
48
+ STREAM_API_SECRET=your_api_secret
49
+ ```
50
+
51
+ ```ruby
52
+ require 'getstream_ruby'
53
+
54
+ # Uses .env file automatically
55
+ client = GetStreamRuby.env
56
+ # or
57
+ client = GetStreamRuby.client # defaults to .env
58
+ ```
59
+
60
+ ### Method 3: Environment Variables
61
+
62
+ ```bash
63
+ export STREAM_API_KEY=your_api_key
64
+ export STREAM_API_SECRET=your_api_secret
65
+ ```
66
+
67
+ ```ruby
68
+ require 'getstream_ruby'
69
+
70
+ client = GetStreamRuby.env_vars
71
+ ```
72
+
73
+ ## Usage
74
+
75
+ ### Basic Setup
76
+
77
+ ```ruby
78
+ # Create a client instance
79
+ client = GetStreamRuby.client
80
+
81
+ # Or create with custom configuration
82
+ client = GetStreamRuby::Client.new(config)
83
+ ```
84
+
85
+ ### Feed Operations
86
+
87
+ #### Create a Feed
88
+
89
+ ```ruby
90
+ # Create a user feed
91
+ feed_response = client.feed.create("user", "123", {
92
+ name: "John Doe",
93
+ email: "john@example.com"
94
+ })
95
+ ```
96
+
97
+ #### Add Activity to Feed
98
+
99
+ ```ruby
100
+ # Add an activity
101
+ activity_response = client.feed.add_activity("user", "123", {
102
+ actor: "user:123",
103
+ verb: "post",
104
+ object: "post:456",
105
+ message: "Hello, world!",
106
+ published: Time.now.iso8601
107
+ })
108
+ ```
109
+
110
+ #### Get Feed Activities
111
+
112
+ ```ruby
113
+ # Get activities from a feed
114
+ activities = client.feed.get_activities("user", "123", {
115
+ limit: 10,
116
+ offset: 0
117
+ })
118
+ ```
119
+
120
+ #### Follow/Unfollow Feeds
121
+
122
+ ```ruby
123
+ # Follow another user
124
+ follow_response = client.feed.follow("user:123", "user:456", {
125
+ activity_copy_limit: 5
126
+ })
127
+
128
+ # Unfollow a user
129
+ unfollow_response = client.feed.unfollow("user:123", "user:456")
130
+ ```
131
+
132
+ ## Error Handling
133
+
134
+ The SDK provides specific error classes for different types of errors:
135
+
136
+ ```ruby
137
+ begin
138
+ client.feed.create("user", "123")
139
+ rescue GetStreamRuby::AuthenticationError => e
140
+ puts "Authentication failed: #{e.message}"
141
+ rescue GetStreamRuby::ValidationError => e
142
+ puts "Validation error: #{e.message}"
143
+ rescue GetStreamRuby::APIError => e
144
+ puts "API error: #{e.message}"
145
+ end
146
+ ```
147
+
148
+ ## Development
149
+
150
+ ### Quick Start
151
+
152
+ ```bash
153
+ # Clone the repository
154
+ git clone https://github.com/getstream/getstream-ruby.git
155
+ cd getstream-ruby
156
+
157
+ # Setup development environment
158
+ make dev-setup
159
+
160
+ # Run all checks
161
+ make dev-check
162
+ ```
163
+
164
+ ### Project Structure
165
+
166
+ ```
167
+ getstream-ruby/
168
+ ├── lib/getstream_ruby/ # Main SDK code
169
+ ├── spec/ # Test files
170
+ │ ├── integration/ # Integration tests
171
+ │ └── *.rb # Unit tests
172
+ ├── .github/workflows/ # CI/CD workflows
173
+ ├── .rubocop.yml # Code style configuration
174
+ ├── .env.example # Environment template
175
+ ├── Makefile # Development commands
176
+ ├── Rakefile # Ruby task runner
177
+ └── Gemfile # Dependencies
178
+ ```
179
+
180
+ ### Development Commands
181
+
182
+ This project includes a simple Makefile with essential commands:
183
+
184
+ #### Setup & Installation
185
+ ```bash
186
+ make install # Install dependencies
187
+ make setup # Setup development environment
188
+ make dev-setup # Complete development setup
189
+ ```
190
+
191
+ #### Testing
192
+ ```bash
193
+ make test # Run unit tests only
194
+ make test-integration # Run integration tests only
195
+ make test-all # Run all tests (unit + integration)
196
+ ```
197
+
198
+ #### Code Quality
199
+ ```bash
200
+ make format # Auto-format code with RuboCop
201
+ make format-check # Check formatting (CI-friendly)
202
+ make lint # Run RuboCop linter
203
+ make security # Run security audit
204
+ make dev-check # Run all development checks
205
+ ```
206
+
207
+ #### Utilities
208
+ ```bash
209
+ make clean # Clean up generated files
210
+ make console # Start IRB console with SDK loaded
211
+ make version # Show current version
212
+ make help # Show all available commands
213
+ ```
214
+
215
+ ### Environment Setup
216
+
217
+ 1. **Copy environment template:**
218
+ ```bash
219
+ cp .env.example .env
220
+ ```
221
+
222
+ 2. **Edit `.env` with your GetStream credentials:**
223
+ ```bash
224
+ STREAM_API_KEY=your_api_key
225
+ STREAM_API_SECRET=your_api_secret
226
+ ```
227
+
228
+ 3. **Run tests:**
229
+ ```bash
230
+ make test-all
231
+ ```
232
+
233
+ ### Ruby & Bundler Compatibility
234
+
235
+ This project supports Ruby 2.6+ and uses the default bundler version for simplicity.
236
+
237
+ **Requirements:**
238
+ - Ruby 2.6.0+ (see `.ruby-version`)
239
+ - Bundler (latest compatible version)
240
+
241
+ ### Code Style
242
+
243
+ This project uses RuboCop for code style enforcement. The configuration is in `.rubocop.yml`.
244
+
245
+ - **Auto-fix issues:** `make format-fix`
246
+ - **Check style:** `make format-check`
247
+ - **View all issues:** `make lint`
248
+
249
+ ### Development Tools
250
+
251
+ The project includes several development tools configured and ready to use:
252
+
253
+ - **RuboCop** - Code style and quality enforcement
254
+ - **RSpec** - Testing framework
255
+ - **SimpleCov** - Code coverage reporting
256
+ - **YARD** - Documentation generation
257
+ - **Bundler Audit** - Security vulnerability scanning
258
+ - **WebMock** - HTTP request mocking (disabled for integration tests)
259
+
260
+ ### Available Makefile Commands
261
+
262
+ Run `make help` to see all available commands, or check the sections above for categorized commands.
263
+
264
+ ### Integration Tests
265
+
266
+ Integration tests require valid GetStream API credentials. They test real API interactions:
267
+
268
+ ```bash
269
+ # Run integration tests (requires .env file)
270
+ make test-integration
271
+
272
+ # Run specific integration test
273
+ bundle exec rspec spec/integration/feed_integration_spec.rb
274
+ bundle exec rspec spec/integration/moderation_integration_spec.rb
275
+ ```
276
+
277
+ ### CI/CD
278
+
279
+ The project includes simple GitHub Actions workflows:
280
+
281
+ - **CI Pipeline:** Runs on every push and pull request
282
+ - Unit tests
283
+ - Code formatting checks
284
+ - Security audit
285
+ - Integration tests (on master/main branches only)
286
+
287
+ - **Release Pipeline:** Manual releases via git tags
288
+ - Create a tag: `git tag v1.0.0 && git push origin v1.0.0`
289
+ - Automated gem build and release
290
+
291
+ #### GitHub Environment Variables
292
+
293
+ To enable integration tests in CI, configure these GitHub repository settings:
294
+
295
+ 1. **Create a "ci" environment:**
296
+ - Go to Settings → Environments
297
+ - Click "New environment"
298
+ - Name it "ci"
299
+
300
+ 2. **Configure environment variables:**
301
+ - In the "ci" environment, go to Environment variables
302
+ - Add: `STREAM_API_KEY` = your GetStream API key
303
+
304
+ 3. **Configure environment secrets:**
305
+ - In the "ci" environment, go to Environment secrets
306
+ - Add: `STREAM_API_SECRET` = your GetStream API secret
307
+
308
+ ### Contributing
309
+
310
+ 1. Fork the repository
311
+ 2. Create a feature branch: `git checkout -b feature-name`
312
+ 3. Make your changes
313
+ 4. Run tests: `make dev-check`
314
+ 5. Commit with conventional messages: `git commit -m "feat: add new feature"`
315
+ 6. Push and create a pull request
316
+
317
+ **Commit Message Format:**
318
+ - `feat:` - New features
319
+ - `fix:` - Bug fixes
320
+ - `docs:` - Documentation changes
321
+ - `style:` - Code style changes
322
+ - `refactor:` - Code refactoring
323
+ - `test:` - Test changes
324
+ - `chore:` - Maintenance tasks
325
+
326
+ ## Contributing
327
+
328
+ Bug reports and pull requests are welcome on GitHub at https://github.com/getstream/getstream-ruby.
329
+
330
+ ## License
331
+
332
+ The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
@@ -0,0 +1,164 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'faraday'
4
+ require 'faraday/retry'
5
+ require 'json'
6
+ require 'jwt'
7
+ require_relative 'generated/base_model'
8
+ require_relative 'generated/common_client'
9
+ require_relative 'generated/feeds_client'
10
+ require_relative 'generated/moderation_client'
11
+ require_relative 'generated/feed'
12
+ require_relative 'stream_response'
13
+
14
+ module GetStreamRuby
15
+
16
+ class Client
17
+
18
+ attr_reader :configuration
19
+
20
+ def initialize(config = nil, api_key: nil, api_secret: nil, base_url: nil, timeout: nil)
21
+ @configuration = config || GetStreamRuby.configuration
22
+
23
+ # Create new configuration with overrides if any parameters provided
24
+ if api_key || api_secret || base_url || timeout
25
+ @configuration = Configuration.with_overrides(
26
+ api_key: api_key,
27
+ api_secret: api_secret,
28
+ base_url: base_url,
29
+ timeout: timeout,
30
+ )
31
+ end
32
+
33
+ @configuration.validate!
34
+ @connection = build_connection
35
+ end
36
+
37
+ def feed_resource
38
+ @feed_resource ||= Resources::Feed.new(self)
39
+ end
40
+
41
+ # Generated API clients
42
+
43
+ # @return [GetStream::Generated::CommonClient] The common API client
44
+ def common
45
+ @common ||= GetStream::Generated::CommonClient.new(self)
46
+ end
47
+
48
+ # @return [GetStream::Generated::FeedsClient] The feeds API client
49
+ def feeds
50
+ @feeds ||= GetStream::Generated::FeedsClient.new(self)
51
+ end
52
+
53
+ # @return [GetStream::Generated::ModerationClient] The moderation API client
54
+ def moderation
55
+ @moderation ||= GetStream::Generated::ModerationClient.new(self)
56
+ end
57
+
58
+ # Create an individual feed instance
59
+ # @param feed_group_id [String] The feed group ID
60
+ # @param feed_id [String] The feed ID
61
+ # @return [GetStream::Generated::Feed] A feed instance
62
+ def feed(feed_group_id, feed_id)
63
+ GetStream::Generated::Feed.new(self, feed_group_id, feed_id)
64
+ end
65
+
66
+ # @param path [String] The API path
67
+ # @param body [Hash] The request body
68
+ # @return [GetStreamRuby::StreamResponse] The API response
69
+ def post(path, body = {})
70
+ request(:post, path, body)
71
+ end
72
+
73
+ def make_request(method, path, query_params: nil, body: nil)
74
+ # Handle query parameters
75
+ if query_params && !query_params.empty?
76
+ query_string = query_params.map { |k, v| "#{k}=#{v}" }.join('&')
77
+ path = "#{path}?#{query_string}"
78
+ end
79
+
80
+ # Make the request
81
+ request(method, path, body)
82
+ end
83
+
84
+ private
85
+
86
+ def request(method, path, data = {})
87
+ # Add API key to query parameters
88
+ query_params = { api_key: @configuration.api_key }
89
+ response = @connection.send(method) do |req|
90
+
91
+ req.url path, query_params
92
+ req.headers['Authorization'] = generate_auth_header
93
+ req.headers['Content-Type'] = 'application/json'
94
+ req.headers['stream-auth-type'] = 'jwt'
95
+ req.headers['X-Stream-Client'] = user_agent
96
+ req.body = data.to_json
97
+
98
+ end
99
+
100
+ handle_response(response)
101
+ rescue Faraday::Error => e
102
+ raise APIError, "Request failed: #{e.message}"
103
+ end
104
+
105
+ def build_connection
106
+ Faraday.new(url: @configuration.base_url) do |conn|
107
+
108
+ conn.request :retry, {
109
+ max: 3,
110
+ interval: 0.05,
111
+ interval_randomness: 0.5,
112
+ backoff_factor: 2,
113
+ }
114
+ conn.response :json, content_type: /\bjson$/
115
+ conn.adapter Faraday.default_adapter
116
+ conn.options.timeout = @configuration.timeout
117
+
118
+ end
119
+ end
120
+
121
+ def generate_auth_header
122
+ JWT.encode(
123
+ {
124
+ iat: Time.now.to_i,
125
+ server: true,
126
+ },
127
+ @configuration.api_secret,
128
+ 'HS256',
129
+ )
130
+ end
131
+
132
+ def user_agent
133
+ "getstream-ruby-#{GetStreamRuby::VERSION}"
134
+ end
135
+
136
+ def handle_response(response)
137
+ case response.status
138
+ when 200..299
139
+ StreamResponse.new(response.body)
140
+ else
141
+ # Parse JSON response body if it's a string
142
+ parsed_body = if response.body.is_a?(String)
143
+ begin
144
+ JSON.parse(response.body)
145
+ rescue JSON::ParserError
146
+ response.body
147
+ end
148
+ else
149
+ response.body
150
+ end
151
+
152
+ error_message = if parsed_body.is_a?(Hash)
153
+ parsed_body['message'] || parsed_body['detail'] ||
154
+ "Request failed with status #{response.status}"
155
+ else
156
+ "Request failed with status #{response.status}"
157
+ end
158
+ raise APIError, error_message
159
+ end
160
+ end
161
+
162
+ end
163
+
164
+ end
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GetStreamRuby
4
+
5
+ class Configuration
6
+
7
+ attr_accessor :api_key, :api_secret, :base_url, :timeout, :logger
8
+
9
+ def initialize(api_key: nil, api_secret: nil, base_url: nil, timeout: nil, use_env: true)
10
+ if use_env
11
+ @api_key = api_key || ENV.fetch('STREAM_API_KEY', nil)
12
+ @api_secret = api_secret || ENV.fetch('STREAM_API_SECRET', nil)
13
+ @base_url = base_url || ENV['STREAM_BASE_URL'] || 'https://chat.stream-io-api.com'
14
+ @timeout = timeout || (ENV['STREAM_TIMEOUT'] || 30).to_i
15
+ else
16
+ # Manual configuration only - no environment variables
17
+ @api_key = api_key
18
+ @api_secret = api_secret
19
+ @base_url = base_url || 'https://api.getstream.io/api/v1.0'
20
+ @timeout = timeout || 30
21
+ end
22
+
23
+ @logger = nil
24
+ end
25
+
26
+ def valid?
27
+ api_key && api_secret
28
+ end
29
+
30
+ def validate!
31
+ raise ConfigurationError, 'API key is required' unless api_key
32
+ raise ConfigurationError, 'API secret is required' unless api_secret
33
+ end
34
+
35
+ def dup
36
+ Configuration.new(
37
+ api_key: @api_key,
38
+ api_secret: @api_secret,
39
+ base_url: @base_url,
40
+ timeout: @timeout,
41
+ )
42
+ end
43
+
44
+ # Class method to create configuration with overrides
45
+ def self.with_overrides(overrides = {})
46
+ new(**overrides)
47
+ end
48
+
49
+ # Method 1: Manual configuration (no environment variables)
50
+ def self.manual(api_key:, api_secret:, base_url: nil, timeout: nil)
51
+ new(api_key: api_key, api_secret: api_secret,
52
+ base_url: base_url, timeout: timeout, use_env: false)
53
+ end
54
+
55
+ # Method 2: .env file (loads .env file via dotenv gem, falls back to env vars)
56
+ def self.from_env
57
+ require 'dotenv/load' if File.exist?('.env') && !File.empty?('.env') && !defined?(Dotenv)
58
+ new(use_env: true)
59
+ end
60
+
61
+ # Method 3: Environment variables (no .env file, direct system env)
62
+ def self.from_system_env
63
+ new(use_env: true)
64
+ end
65
+
66
+ end
67
+
68
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GetStreamRuby
4
+
5
+ class Error < StandardError; end
6
+ class ConfigurationError < Error; end
7
+ class APIError < Error; end
8
+
9
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GetStream
4
+ # Base model class for all generated models
5
+ class BaseModel
6
+ def initialize(attributes = {})
7
+ # Set attributes from hash
8
+ attributes.each do |key, value|
9
+ method_name = "#{key}="
10
+ if respond_to?(method_name)
11
+ send(method_name, value)
12
+ end
13
+ end
14
+ end
15
+
16
+ # Convert to hash
17
+ def to_h
18
+ instance_variables.each_with_object({}) do |var, hash|
19
+ key = var.to_s.delete('@').to_sym
20
+ value = instance_variable_get(var)
21
+ hash[key] = value
22
+ end
23
+ end
24
+
25
+ # Convert to JSON
26
+ def to_json(*args)
27
+ to_h.to_json(*args)
28
+ end
29
+
30
+ # Equality comparison
31
+ def ==(other)
32
+ return false unless other.is_a?(self.class)
33
+ to_h == other.to_h
34
+ end
35
+
36
+ # String representation
37
+ def inspect
38
+ "#<#{self.class.name} #{to_h.inspect}>"
39
+ end
40
+ end
41
+ end