getstream-ruby 12.1.1 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. checksums.yaml +4 -4
  2. data/lib/getstream_ruby/client.rb +2 -3
  3. data/lib/getstream_ruby/generated/chat_client.rb +234 -19
  4. data/lib/getstream_ruby/generated/common_client.rb +43 -4
  5. data/lib/getstream_ruby/generated/feeds_client.rb +200 -12
  6. data/lib/getstream_ruby/generated/models/activity_added_event.rb +1 -1
  7. data/lib/getstream_ruby/generated/models/activity_deleted_event.rb +1 -1
  8. data/lib/getstream_ruby/generated/models/activity_mark_event.rb +1 -1
  9. data/lib/getstream_ruby/generated/models/activity_pinned_event.rb +1 -1
  10. data/lib/getstream_ruby/generated/models/activity_reaction_added_event.rb +1 -1
  11. data/lib/getstream_ruby/generated/models/activity_reaction_deleted_event.rb +1 -1
  12. data/lib/getstream_ruby/generated/models/activity_reaction_updated_event.rb +1 -1
  13. data/lib/getstream_ruby/generated/models/activity_removed_from_feed_event.rb +1 -1
  14. data/lib/getstream_ruby/generated/models/activity_request.rb +2 -2
  15. data/lib/getstream_ruby/generated/models/activity_response.rb +7 -2
  16. data/lib/getstream_ruby/generated/models/activity_restored_event.rb +1 -1
  17. data/lib/getstream_ruby/generated/models/activity_selector_config.rb +16 -1
  18. data/lib/getstream_ruby/generated/models/activity_selector_config_response.rb +16 -1
  19. data/lib/getstream_ruby/generated/models/activity_selector_type.rb +14 -0
  20. data/lib/getstream_ruby/generated/models/activity_unpinned_event.rb +1 -1
  21. data/lib/getstream_ruby/generated/models/activity_updated_event.rb +1 -1
  22. data/lib/getstream_ruby/generated/models/activity_visibility.rb +14 -0
  23. data/lib/getstream_ruby/generated/models/add_activity_request.rb +7 -2
  24. data/lib/getstream_ruby/generated/models/add_activity_response.rb +6 -1
  25. data/lib/getstream_ruby/generated/models/add_comment_reaction_response.rb +15 -0
  26. data/lib/getstream_ruby/generated/models/add_reaction_response.rb +15 -0
  27. data/lib/getstream_ruby/generated/models/aggregation_config.rb +5 -0
  28. data/lib/getstream_ruby/generated/models/ai_audio_config_request.rb +13 -3
  29. data/lib/getstream_ruby/generated/models/ai_audio_config_response.rb +14 -4
  30. data/lib/getstream_ruby/generated/models/ai_video_config.rb +0 -5
  31. data/lib/getstream_ruby/generated/models/analyze_image_field.rb +5 -0
  32. data/lib/getstream_ruby/generated/models/analyze_request.rb +11 -0
  33. data/lib/getstream_ruby/generated/models/analyze_response.rb +10 -0
  34. data/lib/getstream_ruby/generated/models/analyze_text_field.rb +6 -1
  35. data/lib/getstream_ruby/generated/models/api_error.rb +5 -0
  36. data/lib/getstream_ruby/generated/models/app_channel_count_parameters.rb +36 -0
  37. data/lib/getstream_ruby/generated/models/app_count_info.rb +46 -0
  38. data/lib/getstream_ruby/generated/models/app_defaults.rb +36 -0
  39. data/lib/getstream_ruby/generated/models/app_message_count_parameters.rb +36 -0
  40. data/lib/getstream_ruby/generated/models/app_response_fields.rb +19 -4
  41. data/lib/getstream_ruby/generated/models/appeal_item_response.rb +11 -1
  42. data/lib/getstream_ruby/generated/models/appeal_request.rb +5 -0
  43. data/lib/getstream_ruby/generated/models/arrange_config.rb +46 -0
  44. data/lib/getstream_ruby/generated/models/async_export_error_event.rb +1 -1
  45. data/lib/getstream_ruby/generated/models/async_export_feeds_success_event.rb +66 -0
  46. data/lib/getstream_ruby/generated/models/async_export_label_results_event.rb +66 -0
  47. data/lib/getstream_ruby/generated/models/async_import_error_event.rb +81 -0
  48. data/lib/getstream_ruby/generated/models/async_import_success_event.rb +71 -0
  49. data/lib/getstream_ruby/generated/models/audio_default_device.rb +14 -0
  50. data/lib/getstream_ruby/generated/models/audio_settings.rb +1 -1
  51. data/lib/getstream_ruby/generated/models/audio_settings_request.rb +1 -1
  52. data/lib/getstream_ruby/generated/models/audio_settings_response.rb +1 -1
  53. data/lib/getstream_ruby/generated/models/automod_mode.rb +14 -0
  54. data/lib/getstream_ruby/generated/models/automod_rule.rb +1 -1
  55. data/lib/getstream_ruby/generated/models/automod_semantic_filters_rule.rb +1 -1
  56. data/lib/getstream_ruby/generated/models/aws_rekognition_rule.rb +1 -1
  57. data/lib/getstream_ruby/generated/models/ban_action_request_payload.rb +1 -1
  58. data/lib/getstream_ruby/generated/models/ban_options.rb +1 -1
  59. data/lib/getstream_ruby/generated/models/ban_request.rb +11 -1
  60. data/lib/getstream_ruby/generated/models/blend_arrange_config.rb +41 -0
  61. data/lib/getstream_ruby/generated/models/block_list_config.rb +5 -0
  62. data/lib/getstream_ruby/generated/models/block_list_options.rb +1 -1
  63. data/lib/getstream_ruby/generated/models/block_list_response.rb +1 -1
  64. data/lib/getstream_ruby/generated/models/blocklist_behavior.rb +14 -0
  65. data/lib/getstream_ruby/generated/models/bulk_action_appeals_request.rb +2 -1
  66. data/lib/getstream_ruby/generated/models/call_lifecycle_mode.rb +14 -0
  67. data/lib/getstream_ruby/generated/models/call_recording.rb +1 -1
  68. data/lib/getstream_ruby/generated/models/call_recording_failed_event.rb +1 -1
  69. data/lib/getstream_ruby/generated/models/call_recording_ready_event.rb +1 -1
  70. data/lib/getstream_ruby/generated/models/call_recording_started_event.rb +1 -1
  71. data/lib/getstream_ruby/generated/models/call_recording_stopped_event.rb +1 -1
  72. data/lib/getstream_ruby/generated/models/call_ring_event.rb +6 -1
  73. data/lib/getstream_ruby/generated/models/call_ring_settled_event.rb +86 -0
  74. data/lib/getstream_ruby/generated/models/call_settings_request.rb +5 -0
  75. data/lib/getstream_ruby/generated/models/call_settings_response.rb +5 -0
  76. data/lib/getstream_ruby/generated/models/camera_facing.rb +14 -0
  77. data/lib/getstream_ruby/generated/models/campaign_response.rb +10 -10
  78. data/lib/getstream_ruby/generated/models/campaign_sender_mode.rb +14 -0
  79. data/lib/getstream_ruby/generated/models/campaign_sender_visibility.rb +14 -0
  80. data/lib/getstream_ruby/generated/models/cancel_export_feeds_response.rb +31 -0
  81. data/lib/getstream_ruby/generated/models/cast_poll_vote_request.rb +10 -0
  82. data/lib/getstream_ruby/generated/models/change_feed_visibility_request.rb +1 -1
  83. data/lib/getstream_ruby/generated/models/channel_ban_response.rb +51 -0
  84. data/lib/getstream_ruby/generated/models/channel_ban_scope_response.rb +51 -0
  85. data/lib/getstream_ruby/generated/models/channel_bans_scope_totals.rb +36 -0
  86. data/lib/getstream_ruby/generated/models/channel_batch_update_request.rb +5 -0
  87. data/lib/getstream_ruby/generated/models/channel_batch_update_response.rb +8 -3
  88. data/lib/getstream_ruby/generated/models/channel_config.rb +4 -4
  89. data/lib/getstream_ruby/generated/models/channel_config_overrides.rb +2 -2
  90. data/lib/getstream_ruby/generated/models/channel_config_with_info.rb +24 -4
  91. data/lib/getstream_ruby/generated/models/channel_fork_response.rb +81 -0
  92. data/lib/getstream_ruby/generated/models/channel_fork_summary.rb +76 -0
  93. data/lib/getstream_ruby/generated/models/channel_forked_event.rb +96 -0
  94. data/lib/getstream_ruby/generated/models/channel_get_or_create_request.rb +5 -0
  95. data/lib/getstream_ruby/generated/models/channel_member_response.rb +5 -5
  96. data/lib/getstream_ruby/generated/models/channel_metadata.rb +1 -1
  97. data/lib/getstream_ruby/generated/models/channel_moderation_behavior.rb +14 -0
  98. data/lib/getstream_ruby/generated/models/channel_own_capability.rb +1 -1
  99. data/lib/getstream_ruby/generated/models/channel_push_preferences_response.rb +3 -3
  100. data/lib/getstream_ruby/generated/models/channel_response.rb +10 -0
  101. data/lib/getstream_ruby/generated/models/channel_rewind_response.rb +51 -0
  102. data/lib/getstream_ruby/generated/models/channel_rewound_event.rb +96 -0
  103. data/lib/getstream_ruby/generated/models/channel_state_response.rb +21 -11
  104. data/lib/getstream_ruby/generated/models/channel_state_response_fields.rb +11 -1
  105. data/lib/getstream_ruby/generated/models/channel_type_config.rb +4 -4
  106. data/lib/getstream_ruby/generated/models/check_gcp_pub_sub_request.rb +41 -0
  107. data/lib/getstream_ruby/generated/models/check_gcp_pub_sub_response.rb +46 -0
  108. data/lib/getstream_ruby/generated/models/check_push_request.rb +2 -2
  109. data/lib/getstream_ruby/generated/models/check_request.rb +11 -0
  110. data/lib/getstream_ruby/generated/models/check_response.rb +16 -0
  111. data/lib/getstream_ruby/generated/models/claim_guest_user_request.rb +36 -0
  112. data/lib/getstream_ruby/generated/models/claim_guest_user_response.rb +36 -0
  113. data/lib/getstream_ruby/generated/models/client_event.rb +15 -0
  114. data/lib/getstream_ruby/generated/models/collection_status.rb +14 -0
  115. data/lib/getstream_ruby/generated/models/comment_added_event.rb +1 -1
  116. data/lib/getstream_ruby/generated/models/comment_deleted_event.rb +1 -1
  117. data/lib/getstream_ruby/generated/models/comment_feedback_event.rb +56 -0
  118. data/lib/getstream_ruby/generated/models/comment_feedback_event_payload.rb +51 -0
  119. data/lib/getstream_ruby/generated/models/comment_feedback_request.rb +41 -0
  120. data/lib/getstream_ruby/generated/models/comment_feedback_response.rb +41 -0
  121. data/lib/getstream_ruby/generated/models/comment_reaction_added_event.rb +1 -1
  122. data/lib/getstream_ruby/generated/models/comment_reaction_deleted_event.rb +1 -1
  123. data/lib/getstream_ruby/generated/models/comment_reaction_updated_event.rb +1 -1
  124. data/lib/getstream_ruby/generated/models/comment_response.rb +6 -1
  125. data/lib/getstream_ruby/generated/models/comment_restored_event.rb +1 -1
  126. data/lib/getstream_ruby/generated/models/comment_status.rb +14 -0
  127. data/lib/getstream_ruby/generated/models/comment_updated_event.rb +1 -1
  128. data/lib/getstream_ruby/generated/models/config_overrides_request.rb +2 -2
  129. data/lib/getstream_ruby/generated/models/config_response.rb +5 -0
  130. data/lib/getstream_ruby/generated/models/content_country_code_parameters.rb +36 -0
  131. data/lib/getstream_ruby/generated/models/create_block_list_request.rb +1 -1
  132. data/lib/getstream_ruby/generated/models/create_campaign_request.rb +2 -2
  133. data/lib/getstream_ruby/generated/models/create_channel_type_request.rb +19 -4
  134. data/lib/getstream_ruby/generated/models/create_channel_type_response.rb +6 -6
  135. data/lib/getstream_ruby/generated/models/create_device_request.rb +1 -1
  136. data/lib/getstream_ruby/generated/models/create_feed_group_request.rb +1 -1
  137. data/lib/getstream_ruby/generated/models/create_poll_option_request.rb +10 -0
  138. data/lib/getstream_ruby/generated/models/create_poll_request.rb +16 -1
  139. data/lib/getstream_ruby/generated/models/create_reminder_request.rb +5 -0
  140. data/lib/getstream_ruby/generated/models/delete_feeds_retention_policy_request.rb +31 -0
  141. data/lib/getstream_ruby/generated/models/delete_feeds_retention_policy_response.rb +31 -0
  142. data/lib/getstream_ruby/generated/models/delete_history_window_teams_request.rb +31 -0
  143. data/lib/getstream_ruby/generated/models/delete_history_window_teams_response.rb +36 -0
  144. data/lib/getstream_ruby/generated/models/delete_messages.rb +14 -0
  145. data/lib/getstream_ruby/generated/models/delete_poll_answer_request_payload.rb +31 -0
  146. data/lib/getstream_ruby/generated/models/delete_poll_option_request_payload.rb +36 -0
  147. data/lib/getstream_ruby/generated/models/delete_poll_request_payload.rb +31 -0
  148. data/lib/getstream_ruby/generated/models/delete_retention_policy_request.rb +1 -1
  149. data/lib/getstream_ruby/generated/models/delete_scheduled_message_response.rb +36 -0
  150. data/lib/getstream_ruby/generated/models/delete_user_interests_response.rb +36 -0
  151. data/lib/getstream_ruby/generated/models/delete_user_messages_request_payload.rb +1 -1
  152. data/lib/getstream_ruby/generated/models/delete_users_request.rb +2 -2
  153. data/lib/getstream_ruby/generated/models/delivery_receipts_response.rb +1 -1
  154. data/lib/getstream_ruby/generated/models/detected_url_response.rb +36 -0
  155. data/lib/getstream_ruby/generated/models/device_response.rb +4 -4
  156. data/lib/getstream_ruby/generated/models/encryption_settings_request.rb +1 -1
  157. data/lib/getstream_ruby/generated/models/encryption_settings_response.rb +1 -1
  158. data/lib/getstream_ruby/generated/models/enriched_activity.rb +5 -0
  159. data/lib/getstream_ruby/generated/models/enriched_collection_response.rb +1 -1
  160. data/lib/getstream_ruby/generated/models/enriched_reaction.rb +10 -10
  161. data/lib/getstream_ruby/generated/models/enrichment_options.rb +5 -0
  162. data/lib/getstream_ruby/generated/models/entity_creator_response.rb +1 -1
  163. data/lib/getstream_ruby/generated/models/event_hook.rb +25 -0
  164. data/lib/getstream_ruby/generated/models/export_feeds_by_type_request.rb +41 -0
  165. data/lib/getstream_ruby/generated/models/export_feeds_response.rb +36 -0
  166. data/lib/getstream_ruby/generated/models/feature_activation_mode.rb +14 -0
  167. data/lib/getstream_ruby/generated/models/feed_created_event.rb +1 -1
  168. data/lib/getstream_ruby/generated/models/feed_deleted_event.rb +1 -1
  169. data/lib/getstream_ruby/generated/models/feed_group.rb +1 -1
  170. data/lib/getstream_ruby/generated/models/feed_group_changed_event.rb +1 -1
  171. data/lib/getstream_ruby/generated/models/feed_group_deleted_event.rb +1 -1
  172. data/lib/getstream_ruby/generated/models/feed_group_response.rb +1 -1
  173. data/lib/getstream_ruby/generated/models/feed_group_restored_event.rb +1 -1
  174. data/lib/getstream_ruby/generated/models/feed_input.rb +1 -1
  175. data/lib/getstream_ruby/generated/models/feed_member_added_event.rb +1 -1
  176. data/lib/getstream_ruby/generated/models/feed_member_removed_event.rb +1 -1
  177. data/lib/getstream_ruby/generated/models/feed_member_response.rb +1 -1
  178. data/lib/getstream_ruby/generated/models/feed_member_status.rb +14 -0
  179. data/lib/getstream_ruby/generated/models/feed_member_updated_event.rb +1 -1
  180. data/lib/getstream_ruby/generated/models/feed_request.rb +1 -1
  181. data/lib/getstream_ruby/generated/models/feed_response.rb +1 -1
  182. data/lib/getstream_ruby/generated/models/feed_suggestion_response.rb +1 -1
  183. data/lib/getstream_ruby/generated/models/feed_updated_event.rb +1 -1
  184. data/lib/getstream_ruby/generated/models/feed_visibility.rb +14 -0
  185. data/lib/getstream_ruby/generated/models/feeds_enriched_collection_response.rb +1 -1
  186. data/lib/getstream_ruby/generated/models/feeds_feed_response.rb +1 -1
  187. data/lib/getstream_ruby/generated/models/feeds_notification_comment.rb +5 -0
  188. data/lib/getstream_ruby/generated/models/feeds_policy_config.rb +36 -0
  189. data/lib/getstream_ruby/generated/models/feeds_retention_policy.rb +46 -0
  190. data/lib/getstream_ruby/generated/models/feeds_retention_run_response.rb +46 -0
  191. data/lib/getstream_ruby/generated/models/feeds_v3_activity_response.rb +2 -2
  192. data/lib/getstream_ruby/generated/models/feeds_v3_comment_response.rb +6 -1
  193. data/lib/getstream_ruby/generated/models/file_upload_request.rb +1 -0
  194. data/lib/getstream_ruby/generated/models/filter_config_response.rb +10 -0
  195. data/lib/getstream_ruby/generated/models/flood_identical_rule_parameters.rb +10 -0
  196. data/lib/getstream_ruby/generated/models/flood_similar_rule_parameters.rb +5 -0
  197. data/lib/getstream_ruby/generated/models/follow_batch_request.rb +5 -0
  198. data/lib/getstream_ruby/generated/models/follow_batch_response.rb +6 -1
  199. data/lib/getstream_ruby/generated/models/follow_created_event.rb +1 -1
  200. data/lib/getstream_ruby/generated/models/follow_deleted_event.rb +1 -1
  201. data/lib/getstream_ruby/generated/models/follow_push_preference.rb +14 -0
  202. data/lib/getstream_ruby/generated/models/follow_request.rb +2 -2
  203. data/lib/getstream_ruby/generated/models/follow_response.rb +2 -2
  204. data/lib/getstream_ruby/generated/models/follow_status.rb +14 -0
  205. data/lib/getstream_ruby/generated/models/follow_updated_event.rb +1 -1
  206. data/lib/getstream_ruby/generated/models/for_you_config.rb +36 -0
  207. data/lib/getstream_ruby/generated/models/fork_channel_request.rb +51 -0
  208. data/lib/getstream_ruby/generated/models/fork_channel_response.rb +121 -0
  209. data/lib/getstream_ruby/generated/models/fork_channel_target.rb +41 -0
  210. data/lib/getstream_ruby/generated/models/fork_message_i_ds_request.rb +41 -0
  211. data/lib/getstream_ruby/generated/models/fork_message_i_ds_response.rb +36 -0
  212. data/lib/getstream_ruby/generated/models/frame_record_settings.rb +1 -1
  213. data/lib/getstream_ruby/generated/models/frame_recording_settings_request.rb +1 -1
  214. data/lib/getstream_ruby/generated/models/frame_recording_settings_response.rb +1 -1
  215. data/lib/getstream_ruby/generated/models/friend_reaction_type.rb +14 -0
  216. data/lib/getstream_ruby/generated/models/friend_reactions_options.rb +1 -1
  217. data/lib/getstream_ruby/generated/models/full_user_response.rb +3 -2
  218. data/lib/getstream_ruby/generated/models/get_application_response.rb +1 -1
  219. data/lib/getstream_ruby/generated/models/get_channel_type_response.rb +4 -4
  220. data/lib/getstream_ruby/generated/models/get_comments_response.rb +11 -1
  221. data/lib/getstream_ruby/generated/models/get_feeds_retention_policy_response.rb +41 -0
  222. data/lib/getstream_ruby/generated/models/get_feeds_retention_policy_runs_request.rb +51 -0
  223. data/lib/getstream_ruby/generated/models/get_feeds_retention_policy_runs_response.rb +46 -0
  224. data/lib/getstream_ruby/generated/models/get_history_window_teams_response.rb +41 -0
  225. data/lib/getstream_ruby/generated/models/get_or_create_channel_defaults.rb +36 -0
  226. data/lib/getstream_ruby/generated/models/get_or_create_feed_group_request.rb +1 -1
  227. data/lib/getstream_ruby/generated/models/get_or_create_feed_request.rb +12 -2
  228. data/lib/getstream_ruby/generated/models/get_or_create_feed_response.rb +12 -2
  229. data/lib/getstream_ruby/generated/models/get_task_response.rb +2 -2
  230. data/lib/getstream_ruby/generated/models/get_user_interests_response.rb +2 -2
  231. data/lib/getstream_ruby/generated/models/grouped_channels_bucket.rb +1 -1
  232. data/lib/getstream_ruby/generated/models/grouped_channels_group_request.rb +9 -4
  233. data/lib/getstream_ruby/generated/models/grouped_query_channels_request.rb +7 -2
  234. data/lib/getstream_ruby/generated/models/grouped_query_channels_response.rb +1 -1
  235. data/lib/getstream_ruby/generated/models/history_window_team.rb +41 -0
  236. data/lib/getstream_ruby/generated/models/image_upload_request.rb +1 -0
  237. data/lib/getstream_ruby/generated/models/individual_record_settings.rb +1 -1
  238. data/lib/getstream_ruby/generated/models/individual_recording_settings_request.rb +1 -1
  239. data/lib/getstream_ruby/generated/models/individual_recording_settings_response.rb +1 -1
  240. data/lib/getstream_ruby/generated/models/ingress_video_layer.rb +1 -1
  241. data/lib/getstream_ruby/generated/models/ingress_video_layer_request.rb +1 -1
  242. data/lib/getstream_ruby/generated/models/intent_condition_info.rb +46 -0
  243. data/lib/getstream_ruby/generated/models/intent_config_request.rb +31 -0
  244. data/lib/getstream_ruby/generated/models/intent_config_response.rb +31 -0
  245. data/lib/getstream_ruby/generated/models/intent_evaluation_info.rb +51 -0
  246. data/lib/getstream_ruby/generated/models/intent_rule_parameters.rb +36 -0
  247. data/lib/getstream_ruby/generated/models/intent_score_response.rb +36 -0
  248. data/lib/getstream_ruby/generated/models/intent_topic_request.rb +36 -0
  249. data/lib/getstream_ruby/generated/models/intent_topic_response.rb +36 -0
  250. data/lib/getstream_ruby/generated/models/interest_tag_response.rb +13 -3
  251. data/lib/getstream_ruby/generated/models/labels_request.rb +1 -1
  252. data/lib/getstream_ruby/generated/models/layout_name.rb +14 -0
  253. data/lib/getstream_ruby/generated/models/layout_settings.rb +1 -1
  254. data/lib/getstream_ruby/generated/models/layout_settings_request.rb +1 -1
  255. data/lib/getstream_ruby/generated/models/layout_settings_response.rb +1 -1
  256. data/lib/getstream_ruby/generated/models/lifecycle_settings_request.rb +31 -0
  257. data/lib/getstream_ruby/generated/models/lifecycle_settings_response.rb +31 -0
  258. data/lib/getstream_ruby/generated/models/llm_config.rb +10 -0
  259. data/lib/getstream_ruby/generated/models/mark_reviewed_request_payload.rb +6 -1
  260. data/lib/getstream_ruby/generated/models/media_display_response.rb +41 -0
  261. data/lib/getstream_ruby/generated/models/member_user_request.rb +1 -1
  262. data/lib/getstream_ruby/generated/models/message_moderation_result.rb +1 -1
  263. data/lib/getstream_ruby/generated/models/moderation_action.rb +14 -0
  264. data/lib/getstream_ruby/generated/models/moderation_dashboard_preferences.rb +15 -0
  265. data/lib/getstream_ruby/generated/models/moderation_feedback_item_response.rb +131 -0
  266. data/lib/getstream_ruby/generated/models/moderation_feedback_submission_response.rb +81 -0
  267. data/lib/getstream_ruby/generated/models/moderation_flag_response.rb +5 -0
  268. data/lib/getstream_ruby/generated/models/moderation_payload.rb +10 -0
  269. data/lib/getstream_ruby/generated/models/moderation_response.rb +5 -5
  270. data/lib/getstream_ruby/generated/models/moderation_rules_triggered_event.rb +56 -1
  271. data/lib/getstream_ruby/generated/models/noise_cancellation_settings.rb +1 -1
  272. data/lib/getstream_ruby/generated/models/notification_comment.rb +9 -4
  273. data/lib/getstream_ruby/generated/models/notification_feed_updated_event.rb +1 -1
  274. data/lib/getstream_ruby/generated/models/ocr_rule.rb +1 -1
  275. data/lib/getstream_ruby/generated/models/own_user_response.rb +9 -8
  276. data/lib/getstream_ruby/generated/models/pager_defaults.rb +31 -0
  277. data/lib/getstream_ruby/generated/models/poll_closed_event.rb +66 -0
  278. data/lib/getstream_ruby/generated/models/poll_deleted_event.rb +66 -0
  279. data/lib/getstream_ruby/generated/models/poll_option_response_data.rb +6 -1
  280. data/lib/getstream_ruby/generated/models/poll_response_data.rb +12 -2
  281. data/lib/getstream_ruby/generated/models/poll_updated_event.rb +66 -0
  282. data/lib/getstream_ruby/generated/models/poll_vote_casted_event.rb +71 -0
  283. data/lib/getstream_ruby/generated/models/poll_vote_changed_event.rb +71 -0
  284. data/lib/getstream_ruby/generated/models/poll_vote_removed_event.rb +71 -0
  285. data/lib/getstream_ruby/generated/models/poll_vote_response_data.rb +5 -0
  286. data/lib/getstream_ruby/generated/models/privacy_settings_response.rb +4 -4
  287. data/lib/getstream_ruby/generated/models/push_level.rb +14 -0
  288. data/lib/getstream_ruby/generated/models/push_preference_input.rb +11 -1
  289. data/lib/getstream_ruby/generated/models/push_preferences_response.rb +9 -4
  290. data/lib/getstream_ruby/generated/models/push_provider_name.rb +14 -0
  291. data/lib/getstream_ruby/generated/models/push_schedule_input.rb +36 -0
  292. data/lib/getstream_ruby/generated/models/push_schedule_response.rb +36 -0
  293. data/lib/getstream_ruby/generated/models/query_activities_request.rb +6 -1
  294. data/lib/getstream_ruby/generated/models/query_call_ring_attempts_request.rb +41 -0
  295. data/lib/getstream_ruby/generated/models/query_call_ring_attempts_response.rb +56 -0
  296. data/lib/getstream_ruby/generated/models/query_channel_bans_request.rb +66 -0
  297. data/lib/getstream_ruby/generated/models/query_channel_bans_response.rb +56 -0
  298. data/lib/getstream_ruby/generated/models/query_channels_defaults.rb +46 -0
  299. data/lib/getstream_ruby/generated/models/query_channels_request.rb +5 -0
  300. data/lib/getstream_ruby/generated/models/query_comments_request.rb +5 -0
  301. data/lib/getstream_ruby/generated/models/query_deleted_channels_request.rb +51 -0
  302. data/lib/getstream_ruby/generated/models/query_deleted_channels_response.rb +46 -0
  303. data/lib/getstream_ruby/generated/models/query_feeds_usage_stats_response.rb +15 -0
  304. data/lib/getstream_ruby/generated/models/query_follows_request.rb +5 -0
  305. data/lib/getstream_ruby/generated/models/query_follows_response.rb +6 -1
  306. data/lib/getstream_ruby/generated/models/query_moderation_feedback_request.rb +66 -0
  307. data/lib/getstream_ruby/generated/models/query_moderation_feedback_response.rb +51 -0
  308. data/lib/getstream_ruby/generated/models/query_pinned_activities_request.rb +26 -1
  309. data/lib/getstream_ruby/generated/models/query_review_queue_request.rb +1 -1
  310. data/lib/getstream_ruby/generated/models/query_scheduled_messages_request.rb +56 -0
  311. data/lib/getstream_ruby/generated/models/query_scheduled_messages_response.rb +41 -0
  312. data/lib/getstream_ruby/generated/models/quiet_hours_rule_input.rb +41 -0
  313. data/lib/getstream_ruby/generated/models/quiet_hours_rule_response.rb +41 -0
  314. data/lib/getstream_ruby/generated/models/ranking_config.rb +16 -1
  315. data/lib/getstream_ruby/generated/models/raw_record_settings.rb +1 -1
  316. data/lib/getstream_ruby/generated/models/raw_recording_settings_request.rb +1 -1
  317. data/lib/getstream_ruby/generated/models/raw_recording_settings_response.rb +1 -1
  318. data/lib/getstream_ruby/generated/models/read_receipts_response.rb +1 -1
  319. data/lib/getstream_ruby/generated/models/record_settings_request.rb +1 -1
  320. data/lib/getstream_ruby/generated/models/record_settings_response.rb +1 -1
  321. data/lib/getstream_ruby/generated/models/recording_type.rb +14 -0
  322. data/lib/getstream_ruby/generated/models/reminder_response_data.rb +5 -0
  323. data/lib/getstream_ruby/generated/models/restore_action_request_payload.rb +6 -1
  324. data/lib/getstream_ruby/generated/models/restrict_replies.rb +14 -0
  325. data/lib/getstream_ruby/generated/models/retention_policy_type.rb +14 -0
  326. data/lib/getstream_ruby/generated/models/reveal_media_request.rb +41 -0
  327. data/lib/getstream_ruby/generated/models/reveal_media_response.rb +36 -0
  328. data/lib/getstream_ruby/generated/models/review_queue_item_response.rb +25 -0
  329. data/lib/getstream_ruby/generated/models/rewind_channel_request.rb +51 -0
  330. data/lib/getstream_ruby/generated/models/rewind_channel_response.rb +41 -0
  331. data/lib/getstream_ruby/generated/models/ring_attempt_response.rb +101 -0
  332. data/lib/getstream_ruby/generated/models/ring_call_request.rb +6 -1
  333. data/lib/getstream_ruby/generated/models/ring_call_response.rb +6 -1
  334. data/lib/getstream_ruby/generated/models/ring_delivery_response.rb +61 -0
  335. data/lib/getstream_ruby/generated/models/ring_settled_target.rb +41 -0
  336. data/lib/getstream_ruby/generated/models/ring_target_response.rb +46 -0
  337. data/lib/getstream_ruby/generated/models/rule_builder_condition.rb +35 -0
  338. data/lib/getstream_ruby/generated/models/scheduled_message_channel_response.rb +51 -0
  339. data/lib/getstream_ruby/generated/models/scheduled_message_content_response.rb +126 -0
  340. data/lib/getstream_ruby/generated/models/scheduled_message_failed_event.rb +61 -0
  341. data/lib/getstream_ruby/generated/models/scheduled_message_failure_reason.rb +14 -0
  342. data/lib/getstream_ruby/generated/models/scheduled_message_location.rb +46 -0
  343. data/lib/getstream_ruby/generated/models/scheduled_message_query_status.rb +14 -0
  344. data/lib/getstream_ruby/generated/models/scheduled_message_response.rb +76 -0
  345. data/lib/getstream_ruby/generated/models/scheduled_message_sent_event.rb +66 -0
  346. data/lib/getstream_ruby/generated/models/scheduled_message_status.rb +14 -0
  347. data/lib/getstream_ruby/generated/models/scheduled_messages_filter.rb +36 -0
  348. data/lib/getstream_ruby/generated/models/send_message_request.rb +5 -0
  349. data/lib/getstream_ruby/generated/models/send_message_response.rb +6 -1
  350. data/lib/getstream_ruby/generated/models/send_scheduled_message_now_response.rb +36 -0
  351. data/lib/getstream_ruby/generated/models/set_feeds_retention_policy_request.rb +46 -0
  352. data/lib/getstream_ruby/generated/models/set_feeds_retention_policy_response.rb +41 -0
  353. data/lib/getstream_ruby/generated/models/set_history_window_teams_request.rb +31 -0
  354. data/lib/getstream_ruby/generated/models/set_history_window_teams_response.rb +36 -0
  355. data/lib/getstream_ruby/generated/models/set_retention_policy_request.rb +1 -1
  356. data/lib/getstream_ruby/generated/models/setup_session.rb +2 -2
  357. data/lib/getstream_ruby/generated/models/setup_status.rb +14 -0
  358. data/lib/getstream_ruby/generated/models/setup_step.rb +14 -0
  359. data/lib/getstream_ruby/generated/models/shared_location_response_data.rb +9 -9
  360. data/lib/getstream_ruby/generated/models/sort_param_request.rb +1 -1
  361. data/lib/getstream_ruby/generated/models/sort_param_type.rb +14 -0
  362. data/lib/getstream_ruby/generated/models/start_closed_captions_request.rb +1 -1
  363. data/lib/getstream_ruby/generated/models/start_transcription_request.rb +1 -1
  364. data/lib/getstream_ruby/generated/models/stop_campaign_response.rb +36 -0
  365. data/lib/getstream_ruby/generated/models/stories_feed_updated_event.rb +1 -1
  366. data/lib/getstream_ruby/generated/models/submit_action_request.rb +18 -2
  367. data/lib/getstream_ruby/generated/models/submit_moderation_feedback_item.rb +61 -0
  368. data/lib/getstream_ruby/generated/models/submit_moderation_feedback_request.rb +66 -16
  369. data/lib/getstream_ruby/generated/models/submit_moderation_feedback_response.rb +21 -1
  370. data/lib/getstream_ruby/generated/models/threaded_comment_response.rb +6 -1
  371. data/lib/getstream_ruby/generated/models/transcription_language.rb +14 -0
  372. data/lib/getstream_ruby/generated/models/transcription_settings.rb +3 -3
  373. data/lib/getstream_ruby/generated/models/transcription_settings_request.rb +3 -3
  374. data/lib/getstream_ruby/generated/models/transcription_settings_response.rb +3 -3
  375. data/lib/getstream_ruby/generated/models/typing_indicators_response.rb +1 -1
  376. data/lib/getstream_ruby/generated/models/unban_request.rb +1 -0
  377. data/lib/getstream_ruby/generated/models/unblock_action_request_payload.rb +1 -1
  378. data/lib/getstream_ruby/generated/models/unfollow_batch_request.rb +5 -0
  379. data/lib/getstream_ruby/generated/models/unfollow_batch_response.rb +6 -1
  380. data/lib/getstream_ruby/generated/models/unread_counts_channel.rb +9 -4
  381. data/lib/getstream_ruby/generated/models/unread_counts_channel_type.rb +4 -4
  382. data/lib/getstream_ruby/generated/models/unread_counts_thread.rb +5 -5
  383. data/lib/getstream_ruby/generated/models/update_activity_request.rb +2 -2
  384. data/lib/getstream_ruby/generated/models/update_app_request.rb +6 -1
  385. data/lib/getstream_ruby/generated/models/update_campaign_request.rb +2 -2
  386. data/lib/getstream_ruby/generated/models/update_campaign_response.rb +41 -0
  387. data/lib/getstream_ruby/generated/models/update_channel_type_request.rb +11 -11
  388. data/lib/getstream_ruby/generated/models/update_channel_type_response.rb +6 -6
  389. data/lib/getstream_ruby/generated/models/update_feed_group_request.rb +1 -1
  390. data/lib/getstream_ruby/generated/models/update_follow_request.rb +2 -2
  391. data/lib/getstream_ruby/generated/models/update_poll_option_request.rb +10 -0
  392. data/lib/getstream_ruby/generated/models/update_poll_partial_request.rb +10 -0
  393. data/lib/getstream_ruby/generated/models/update_poll_request.rb +11 -1
  394. data/lib/getstream_ruby/generated/models/update_reminder_request.rb +5 -0
  395. data/lib/getstream_ruby/generated/models/update_scheduled_message_request.rb +36 -0
  396. data/lib/getstream_ruby/generated/models/update_scheduled_message_response.rb +36 -0
  397. data/lib/getstream_ruby/generated/models/update_users_response.rb +1 -1
  398. data/lib/getstream_ruby/generated/models/upload_channel_file_request.rb +1 -0
  399. data/lib/getstream_ruby/generated/models/upload_channel_request.rb +1 -0
  400. data/lib/getstream_ruby/generated/models/upsert_activities_request.rb +6 -1
  401. data/lib/getstream_ruby/generated/models/upsert_activities_response.rb +6 -1
  402. data/lib/getstream_ruby/generated/models/upsert_config_request.rb +5 -0
  403. data/lib/getstream_ruby/generated/models/upsert_push_template_request.rb +1 -1
  404. data/lib/getstream_ruby/generated/models/upsert_setup_session_request.rb +2 -2
  405. data/lib/getstream_ruby/generated/models/upsert_user_interests_request.rb +31 -0
  406. data/lib/getstream_ruby/generated/models/upsert_user_interests_response.rb +36 -0
  407. data/lib/getstream_ruby/generated/models/user_channel_ban_count_rule_parameters.rb +41 -0
  408. data/lib/getstream_ruby/generated/models/user_channel_count_rule_parameters.rb +36 -0
  409. data/lib/getstream_ruby/generated/models/user_claimed_event.rb +56 -0
  410. data/lib/getstream_ruby/generated/models/user_identical_image_count_parameters.rb +46 -0
  411. data/lib/getstream_ruby/generated/models/user_interest_request.rb +36 -0
  412. data/lib/getstream_ruby/generated/models/user_reaction_count_rule_parameters.rb +5 -0
  413. data/lib/getstream_ruby/generated/models/user_request.rb +1 -1
  414. data/lib/getstream_ruby/generated/models/user_response.rb +1 -1
  415. data/lib/getstream_ruby/generated/models/user_response_privacy_fields.rb +1 -1
  416. data/lib/getstream_ruby/generated/models/video_codec.rb +14 -0
  417. data/lib/getstream_ruby/generated/models/video_settings.rb +1 -1
  418. data/lib/getstream_ruby/generated/models/video_settings_request.rb +1 -1
  419. data/lib/getstream_ruby/generated/models/video_settings_response.rb +1 -1
  420. data/lib/getstream_ruby/generated/models/voting_visibility.rb +14 -0
  421. data/lib/getstream_ruby/generated/models/wrapped_unread_counts_response.rb +7 -7
  422. data/lib/getstream_ruby/generated/models/ws_event.rb +1 -1
  423. data/lib/getstream_ruby/generated/moderation_client.rb +35 -1
  424. data/lib/getstream_ruby/generated/video_client.rb +19 -2
  425. data/lib/getstream_ruby/generated/webhook.rb +74 -0
  426. data/lib/getstream_ruby/multipart_request.rb +11 -0
  427. data/lib/getstream_ruby/version.rb +1 -1
  428. metadata +162 -3
@@ -386,11 +386,15 @@ module GetStream
386
386
  # @param _id [String]
387
387
  # @param comment_sort [String]
388
388
  # @param comment_limit [Integer]
389
+ # @param skip_own_followings [Boolean]
389
390
  # @param user_id [String]
390
391
  # @param language [String]
391
392
  # @param translate_text [Boolean]
393
+ # @param include_top_level_comment_count [Boolean]
394
+ # @param include_soft_deleted_activities [Boolean]
395
+ # @param include_moderated_activities [Boolean]
392
396
  # @return [Models::GetActivityResponse]
393
- def get_activity(_id, comment_sort = nil, comment_limit = nil, user_id = nil, language = nil, translate_text = nil)
397
+ def get_activity(_id, comment_sort = nil, comment_limit = nil, skip_own_followings = nil, user_id = nil, language = nil, translate_text = nil, include_top_level_comment_count = nil, include_soft_deleted_activities = nil, include_moderated_activities = nil)
394
398
  path = '/api/v2/feeds/activities/{id}'
395
399
  # Replace path parameters
396
400
  path = path.gsub('{id}', _id.to_s)
@@ -398,9 +402,13 @@ module GetStream
398
402
  query_params = {}
399
403
  query_params['comment_sort'] = comment_sort unless comment_sort.nil?
400
404
  query_params['comment_limit'] = comment_limit unless comment_limit.nil?
405
+ query_params['skip_own_followings'] = skip_own_followings unless skip_own_followings.nil?
401
406
  query_params['user_id'] = user_id unless user_id.nil?
402
407
  query_params['language'] = language unless language.nil?
403
408
  query_params['translate_text'] = translate_text unless translate_text.nil?
409
+ query_params['include_top_level_comment_count'] = include_top_level_comment_count unless include_top_level_comment_count.nil?
410
+ query_params['include_soft_deleted_activities'] = include_soft_deleted_activities unless include_soft_deleted_activities.nil?
411
+ query_params['include_moderated_activities'] = include_moderated_activities unless include_moderated_activities.nil?
404
412
 
405
413
  # Make the API request
406
414
  @client.make_request(
@@ -410,7 +418,7 @@ module GetStream
410
418
  )
411
419
  end
412
420
 
413
- # Updates certain fields of the activity. Use 'set' to update specific fields and 'unset' to remove fields. This allows you to update only the fields you need without replacing the entire activity. Useful for updating reply restrictions ('restrict_replies'), mentioned users, or custom data.Sends events:- feeds.activity.updated
421
+ # Updates certain fields of the activity. Use 'set' to update specific fields and 'unset' to remove fields. This allows you to update only the fields you need without replacing the entire activity. Useful for updating reply restrictions ('restrict_replies'), mentioned users, or custom data. Changing `feeds` is a placement change (add/delete on those feeds), not an activity content update.Sends events:- feeds.activity.updated
414
422
  #
415
423
  # @param _id [String]
416
424
  # @param update_activity_partial_request [UpdateActivityPartialRequest]
@@ -430,7 +438,7 @@ module GetStream
430
438
  )
431
439
  end
432
440
 
433
- # Replaces an activity with the provided data. Use this to update text, attachments, reply restrictions ('restrict_replies'), mentioned users, and other activity fields. Note: This is a full update - any fields not provided will be cleared.Sends events:- feeds.activity.updated
441
+ # Replaces an activity with the provided data. Use this to update text, attachments, reply restrictions ('restrict_replies'), mentioned users, and other activity fields. Note: This is a full update - any fields not provided will be cleared. Changing `feeds` is a placement change (add/delete on those feeds), not an activity content update.Sends events:- feeds.activity.updated
434
442
  #
435
443
  # @param _id [String]
436
444
  # @param update_activity_request [UpdateActivityRequest]
@@ -575,12 +583,14 @@ module GetStream
575
583
  # Delete collections in a batch operation. Users can only delete their own collections.
576
584
  #
577
585
  # @param collection_refs [Array<String>]
586
+ # @param hard_delete [Boolean]
578
587
  # @return [Models::DeleteCollectionsResponse]
579
- def delete_collections(collection_refs)
588
+ def delete_collections(collection_refs, hard_delete = nil)
580
589
  path = '/api/v2/feeds/collections'
581
590
  # Build query parameters
582
591
  query_params = {}
583
592
  query_params['collection_refs'] = collection_refs unless collection_refs.nil?
593
+ query_params['hard_delete'] = hard_delete unless hard_delete.nil?
584
594
 
585
595
  # Make the API request
586
596
  @client.make_request(
@@ -692,8 +702,9 @@ module GetStream
692
702
  # @param limit [Integer]
693
703
  # @param prev [String]
694
704
  # @param _next [String]
705
+ # @param include_top_level_comment_count [Boolean]
695
706
  # @return [Models::GetCommentsResponse]
696
- def get_comments(object_id, object_type, depth = nil, sort = nil, replies_limit = nil, id_around = nil, language = nil, translate_text = nil, user_id = nil, limit = nil, prev = nil, _next = nil)
707
+ def get_comments(object_id, object_type, depth = nil, sort = nil, replies_limit = nil, id_around = nil, language = nil, translate_text = nil, user_id = nil, limit = nil, prev = nil, _next = nil, include_top_level_comment_count = nil)
697
708
  path = '/api/v2/feeds/comments'
698
709
  # Build query parameters
699
710
  query_params = {}
@@ -709,6 +720,7 @@ module GetStream
709
720
  query_params['limit'] = limit unless limit.nil?
710
721
  query_params['prev'] = prev unless prev.nil?
711
722
  query_params['next'] = _next unless _next.nil?
723
+ query_params['include_top_level_comment_count'] = include_top_level_comment_count unless include_top_level_comment_count.nil?
712
724
 
713
725
  # Make the API request
714
726
  @client.make_request(
@@ -924,6 +936,26 @@ module GetStream
924
936
  )
925
937
  end
926
938
 
939
+ # Hide or unhide a comment for the current user
940
+ #
941
+ # @param _id [String]
942
+ # @param comment_feedback_request [CommentFeedbackRequest]
943
+ # @return [Models::CommentFeedbackResponse]
944
+ def comment_feedback(_id, comment_feedback_request)
945
+ path = '/api/v2/feeds/comments/{id}/feedback'
946
+ # Replace path parameters
947
+ path = path.gsub('{id}', _id.to_s)
948
+ # Build request body
949
+ body = comment_feedback_request
950
+
951
+ # Make the API request
952
+ @client.make_request(
953
+ :post,
954
+ path,
955
+ body: body
956
+ )
957
+ end
958
+
927
959
  # Updates certain fields of the comment. Use 'set' to update specific fields and 'unset' to remove fields.Sends events:- feeds.activity.updated- feeds.comment.updated
928
960
  #
929
961
  # @param _id [String]
@@ -1088,6 +1120,55 @@ module GetStream
1088
1120
  )
1089
1121
  end
1090
1122
 
1123
+ # Starts an async task that exports all feeds data of the app in export format v1. Poll the task for the result
1124
+ #
1125
+ # @return [Models::ExportFeedsResponse]
1126
+ def export_feeds_app()
1127
+ path = '/api/v2/feeds/export/app'
1128
+
1129
+ # Make the API request
1130
+ @client.make_request(
1131
+ :post,
1132
+ path
1133
+ )
1134
+ end
1135
+
1136
+ # Cancels a queued or processing feeds export. A queued export is cancelled immediately; a processing one is stopped by the worker, which removes the files it wrote
1137
+ #
1138
+ # @param task_id [String]
1139
+ # @return [Models::CancelExportFeedsResponse]
1140
+ def cancel_export_feeds(task_id)
1141
+ path = '/api/v2/feeds/export/{task_id}/cancel'
1142
+ # Replace path parameters
1143
+ path = path.gsub('{task_id}', task_id.to_s)
1144
+
1145
+ # Make the API request
1146
+ @client.make_request(
1147
+ :post,
1148
+ path
1149
+ )
1150
+ end
1151
+
1152
+ # Starts an async task that exports activities, comments, reactions or follows in export format v1, optionally filtered by user and creation time. Poll the task for the result
1153
+ #
1154
+ # @param _type [String]
1155
+ # @param export_feeds_by_type_request [ExportFeedsByTypeRequest]
1156
+ # @return [Models::ExportFeedsResponse]
1157
+ def export_feeds_by_type(_type, export_feeds_by_type_request)
1158
+ path = '/api/v2/feeds/export/{type}'
1159
+ # Replace path parameters
1160
+ path = path.gsub('{type}', _type.to_s)
1161
+ # Build request body
1162
+ body = export_feeds_by_type_request
1163
+
1164
+ # Make the API request
1165
+ @client.make_request(
1166
+ :post,
1167
+ path,
1168
+ body: body
1169
+ )
1170
+ end
1171
+
1091
1172
  # List all feed groups for the application
1092
1173
  #
1093
1174
  # @param include_soft_deleted [Boolean]
@@ -1667,7 +1748,7 @@ module GetStream
1667
1748
 
1668
1749
  # Gets feed visibility configuration and permissions
1669
1750
  #
1670
- # @param name [String]
1751
+ # @param name [FeedVisibility]
1671
1752
  # @return [Models::GetFeedVisibilityResponse]
1672
1753
  def get_feed_visibility(name)
1673
1754
  path = '/api/v2/feeds/feed_visibilities/{name}'
@@ -1683,7 +1764,7 @@ module GetStream
1683
1764
 
1684
1765
  # Updates an existing predefined feed visibility configuration
1685
1766
  #
1686
- # @param name [String]
1767
+ # @param name [FeedVisibility]
1687
1768
  # @param update_feed_visibility_request [UpdateFeedVisibilityRequest]
1688
1769
  # @return [Models::UpdateFeedVisibilityResponse]
1689
1770
  def update_feed_visibility(name, update_feed_visibility_request)
@@ -1701,7 +1782,7 @@ module GetStream
1701
1782
  )
1702
1783
  end
1703
1784
 
1704
- # Create multiple feeds at once for a given feed group
1785
+ # Create multiple feeds at once for a given feed group. Client-side, feeds that already exist are returned unchanged. Server-side, an existing feed keeps its owner and any fields the request omits. Feeds that have been deleted are rejected.
1705
1786
  #
1706
1787
  # @param create_feeds_batch_request [CreateFeedsBatchRequest]
1707
1788
  # @return [Models::CreateFeedsBatchResponse]
@@ -1852,10 +1933,11 @@ module GetStream
1852
1933
  )
1853
1934
  end
1854
1935
 
1855
- # Creates multiple follows at once and broadcasts FollowAddedEvent for each follow
1936
+ # Creates multiple follows at once and broadcasts FollowAddedEvent for each follow. Deprecated: use GetOrCreateFollows (POST /api/v2/feeds/follows/batch/upsert), which returns existing follows instead of erroring.
1856
1937
  #
1857
1938
  # @param follow_batch_request [FollowBatchRequest]
1858
1939
  # @return [Models::FollowBatchResponse]
1940
+ # @deprecated This endpoint is deprecated.
1859
1941
  def follow_batch(follow_batch_request)
1860
1942
  path = '/api/v2/feeds/follows/batch'
1861
1943
  # Build request body
@@ -1886,7 +1968,7 @@ module GetStream
1886
1968
  )
1887
1969
  end
1888
1970
 
1889
- # Query follows based on filters with pagination and sorting options
1971
+ # Query follows based on filters with pagination and sorting options. Server-side callers may set include_group_counts to also receive accepted following counts keyed by followed feed group. Requires exactly one source_feed / source_fid string equality. HTTP 400 if target_feed appears, if two source FIDs are given, or if $in / $or mentions those keys.
1890
1972
  #
1891
1973
  # @param query_follows_request [QueryFollowsRequest]
1892
1974
  # @return [Models::QueryFollowsResponse]
@@ -2034,6 +2116,70 @@ module GetStream
2034
2116
  )
2035
2117
  end
2036
2118
 
2119
+ # Returns the feeds retention policies configured for the app. Server-side only.
2120
+ #
2121
+ # @return [Models::GetFeedsRetentionPolicyResponse]
2122
+ def feeds_get_retention_policy()
2123
+ path = '/api/v2/feeds/retention_policy'
2124
+
2125
+ # Make the API request
2126
+ @client.make_request(
2127
+ :get,
2128
+ path
2129
+ )
2130
+ end
2131
+
2132
+ # Creates or updates a feeds retention policy for the app (an app may have multiple, each scoped to feed groups). Server-side only.
2133
+ #
2134
+ # @param set_feeds_retention_policy_request [SetFeedsRetentionPolicyRequest]
2135
+ # @return [Models::SetFeedsRetentionPolicyResponse]
2136
+ def feeds_set_retention_policy(set_feeds_retention_policy_request)
2137
+ path = '/api/v2/feeds/retention_policy'
2138
+ # Build request body
2139
+ body = set_feeds_retention_policy_request
2140
+
2141
+ # Make the API request
2142
+ @client.make_request(
2143
+ :post,
2144
+ path,
2145
+ body: body
2146
+ )
2147
+ end
2148
+
2149
+ # Removes the named feeds retention policy for the app (an app may hold several). Server-side only.
2150
+ #
2151
+ # @param delete_feeds_retention_policy_request [DeleteFeedsRetentionPolicyRequest]
2152
+ # @return [Models::DeleteFeedsRetentionPolicyResponse]
2153
+ def feeds_delete_retention_policy(delete_feeds_retention_policy_request)
2154
+ path = '/api/v2/feeds/retention_policy/delete'
2155
+ # Build request body
2156
+ body = delete_feeds_retention_policy_request
2157
+
2158
+ # Make the API request
2159
+ @client.make_request(
2160
+ :post,
2161
+ path,
2162
+ body: body
2163
+ )
2164
+ end
2165
+
2166
+ # Returns filtered and sorted feeds retention cleanup run history for the app. Supports filter_conditions on 'policy' and 'date' fields. Server-side only.
2167
+ #
2168
+ # @param get_feeds_retention_policy_runs_request [GetFeedsRetentionPolicyRunsRequest]
2169
+ # @return [Models::GetFeedsRetentionPolicyRunsResponse]
2170
+ def feeds_get_retention_policy_runs(get_feeds_retention_policy_runs_request)
2171
+ path = '/api/v2/feeds/retention_policy/runs'
2172
+ # Build request body
2173
+ body = get_feeds_retention_policy_runs_request
2174
+
2175
+ # Make the API request
2176
+ @client.make_request(
2177
+ :post,
2178
+ path,
2179
+ body: body
2180
+ )
2181
+ end
2182
+
2037
2183
  # Queries revision history for activities and comments
2038
2184
  #
2039
2185
  # @param query_revision_history_request [QueryRevisionHistoryRequest]
@@ -2068,10 +2214,11 @@ module GetStream
2068
2214
  )
2069
2215
  end
2070
2216
 
2071
- # Removes multiple follows at once and broadcasts FollowRemovedEvent for each one
2217
+ # Removes multiple follows at once and broadcasts FollowRemovedEvent for each one. Deprecated: use GetOrCreateUnfollows (POST /api/v2/feeds/unfollow/batch/upsert).
2072
2218
  #
2073
2219
  # @param unfollow_batch_request [UnfollowBatchRequest]
2074
2220
  # @return [Models::UnfollowBatchResponse]
2221
+ # @deprecated This endpoint is deprecated.
2075
2222
  def unfollow_batch(unfollow_batch_request)
2076
2223
  path = '/api/v2/feeds/unfollow/batch'
2077
2224
  # Build request body
@@ -2155,7 +2302,28 @@ module GetStream
2155
2302
  )
2156
2303
  end
2157
2304
 
2158
- # Returns the user's most common interest tags ranked by the number of distinct activities they reacted to that carried each tag. Client-side callers may only read their own interests; server-side callers may fetch any user. Results are sorted by descending count, then alphabetically by tag.
2305
+ # Removes the given interest tags from a user, whether they were set manually or computed from reactions. A removed computed tag returns on the next recomputation if the user's reactions still support it; to keep a tag out of ranking for good, set it with a weight of 0 or below instead. Client-side callers may only manage their own interests; server-side callers may manage any user. Returns the user's remaining interests.
2306
+ #
2307
+ # @param user_id [String]
2308
+ # @param tags [Array<String>]
2309
+ # @return [Models::DeleteUserInterestsResponse]
2310
+ def delete_user_interests(user_id, tags)
2311
+ path = '/api/v2/feeds/users/{user_id}/interests'
2312
+ # Replace path parameters
2313
+ path = path.gsub('{user_id}', user_id.to_s)
2314
+ # Build query parameters
2315
+ query_params = {}
2316
+ query_params['tags'] = tags unless tags.nil?
2317
+
2318
+ # Make the API request
2319
+ @client.make_request(
2320
+ :delete,
2321
+ path,
2322
+ query_params: query_params
2323
+ )
2324
+ end
2325
+
2326
+ # Returns the user's interest tags with their ranking weights: tags computed from the activities the user reacted to and tags set manually through the API. Client-side callers may only read their own interests; server-side callers may fetch any user. Results are sorted by descending weight, then manually set tags before computed ones, then descending count, then alphabetically by tag.
2159
2327
  #
2160
2328
  # @param user_id [String]
2161
2329
  # @param limit [Integer]
@@ -2176,6 +2344,26 @@ module GetStream
2176
2344
  )
2177
2345
  end
2178
2346
 
2347
+ # Adds or updates interest tags on a user with explicit ranking weights. Tags set this way rank above the tags computed from the user's reactions at equal weight and are never overwritten by them. Client-side callers may only manage their own interests; server-side callers may manage any user. Returns the user's full interest list after the write.
2348
+ #
2349
+ # @param user_id [String]
2350
+ # @param upsert_user_interests_request [UpsertUserInterestsRequest]
2351
+ # @return [Models::UpsertUserInterestsResponse]
2352
+ def upsert_user_interests(user_id, upsert_user_interests_request)
2353
+ path = '/api/v2/feeds/users/{user_id}/interests'
2354
+ # Replace path parameters
2355
+ path = path.gsub('{user_id}', user_id.to_s)
2356
+ # Build request body
2357
+ body = upsert_user_interests_request
2358
+
2359
+ # Make the API request
2360
+ @client.make_request(
2361
+ :put,
2362
+ path,
2363
+ body: body
2364
+ )
2365
+ end
2366
+
2179
2367
  end
2180
2368
  end
2181
2369
  end
@@ -25,7 +25,7 @@ module GetStream
25
25
  # @return [String] The type of event: "feeds.activity.added" in this case
26
26
  attr_accessor :type
27
27
  # @!attribute feed_visibility
28
- # @return [String]
28
+ # @return [FeedVisibility] Who can see and follow a feed.
29
29
  attr_accessor :feed_visibility
30
30
  # @!attribute received_at
31
31
  # @return [DateTime]
@@ -25,7 +25,7 @@ module GetStream
25
25
  # @return [String] The type of event: "feeds.activity.deleted" in this case
26
26
  attr_accessor :type
27
27
  # @!attribute feed_visibility
28
- # @return [String]
28
+ # @return [FeedVisibility] Who can see and follow a feed.
29
29
  attr_accessor :feed_visibility
30
30
  # @!attribute received_at
31
31
  # @return [DateTime]
@@ -22,7 +22,7 @@ module GetStream
22
22
  # @return [String] The type of event: "feeds.activity.marked" in this case
23
23
  attr_accessor :type
24
24
  # @!attribute feed_visibility
25
- # @return [String]
25
+ # @return [FeedVisibility] Who can see and follow a feed.
26
26
  attr_accessor :feed_visibility
27
27
  # @!attribute mark_all_read
28
28
  # @return [Boolean] Whether all activities were marked as read
@@ -25,7 +25,7 @@ module GetStream
25
25
  # @return [String] The type of event: "feeds.activity.pinned" in this case
26
26
  attr_accessor :type
27
27
  # @!attribute feed_visibility
28
- # @return [String]
28
+ # @return [FeedVisibility] Who can see and follow a feed.
29
29
  attr_accessor :feed_visibility
30
30
  # @!attribute received_at
31
31
  # @return [DateTime]
@@ -28,7 +28,7 @@ module GetStream
28
28
  # @return [String] The type of event: "feeds.activity.reaction.added" in this case
29
29
  attr_accessor :type
30
30
  # @!attribute feed_visibility
31
- # @return [String]
31
+ # @return [FeedVisibility] Who can see and follow a feed.
32
32
  attr_accessor :feed_visibility
33
33
  # @!attribute received_at
34
34
  # @return [DateTime]
@@ -28,7 +28,7 @@ module GetStream
28
28
  # @return [String] The type of the reaction that was removed
29
29
  attr_accessor :type
30
30
  # @!attribute feed_visibility
31
- # @return [String]
31
+ # @return [FeedVisibility] Who can see and follow a feed.
32
32
  attr_accessor :feed_visibility
33
33
  # @!attribute received_at
34
34
  # @return [DateTime]
@@ -28,7 +28,7 @@ module GetStream
28
28
  # @return [String] The type of event: "feeds.activity.reaction.updated" in this case
29
29
  attr_accessor :type
30
30
  # @!attribute feed_visibility
31
- # @return [String]
31
+ # @return [FeedVisibility] Who can see and follow a feed.
32
32
  attr_accessor :feed_visibility
33
33
  # @!attribute received_at
34
34
  # @return [DateTime]
@@ -25,7 +25,7 @@ module GetStream
25
25
  # @return [String] The type of event: "feeds.activity.removed_from_feed" in this case
26
26
  attr_accessor :type
27
27
  # @!attribute feed_visibility
28
- # @return [String]
28
+ # @return [FeedVisibility] Who can see and follow a feed.
29
29
  attr_accessor :feed_visibility
30
30
  # @!attribute received_at
31
31
  # @return [DateTime]
@@ -35,7 +35,7 @@ module GetStream
35
35
  # @return [String] ID of a poll to attach to activity
36
36
  attr_accessor :poll_id
37
37
  # @!attribute restrict_replies
38
- # @return [String] Controls who can add comments/replies to this activity. One of: everyone, people_i_follow, nobody
38
+ # @return [RestrictReplies] Controls who can add comments/replies to this activity. One of: everyone, people_i_follow, nobody
39
39
  attr_accessor :restrict_replies
40
40
  # @!attribute skip_enrich_url
41
41
  # @return [Boolean] Whether to skip URL enrichment for the activity
@@ -50,7 +50,7 @@ module GetStream
50
50
  # @return [String] ID of the user creating the activity
51
51
  attr_accessor :user_id
52
52
  # @!attribute visibility
53
- # @return [String] Visibility setting for the activity. One of: public, private, tag
53
+ # @return [ActivityVisibility] Visibility setting for the activity. One of: public, private, tag
54
54
  attr_accessor :visibility
55
55
  # @!attribute visibility_tag
56
56
  # @return [String] If visibility is 'tag', this is the tag name and is required
@@ -34,7 +34,7 @@ module GetStream
34
34
  # @return [Integer] Number of reactions to the activity
35
35
  attr_accessor :reaction_count
36
36
  # @!attribute restrict_replies
37
- # @return [String] Controls who can add comments/replies to this activity. One of: everyone, people_i_follow, nobody
37
+ # @return [RestrictReplies] Controls who can add comments/replies to this activity. One of: everyone, people_i_follow, nobody
38
38
  attr_accessor :restrict_replies
39
39
  # @!attribute score
40
40
  # @return [Float] Ranking score for this activity
@@ -49,7 +49,7 @@ module GetStream
49
49
  # @return [DateTime] When the activity was last updated
50
50
  attr_accessor :updated_at
51
51
  # @!attribute visibility
52
- # @return [String] Visibility setting for the activity. One of: public, private, tag
52
+ # @return [ActivityVisibility] Visibility setting for the activity. One of: public, private, tag
53
53
  attr_accessor :visibility
54
54
  # @!attribute attachments
55
55
  # @return [Array<Attachment>] Media attachments for the activity
@@ -123,6 +123,9 @@ module GetStream
123
123
  # @!attribute text
124
124
  # @return [String] Text content of the activity
125
125
  attr_accessor :text
126
+ # @!attribute top_level_comment_count
127
+ # @return [Integer] Number of top-level comments (comments directly on the activity, excluding replies). Only returned by GetActivity when include_top_level_comment_count=true; never set on feed reads or events. Same status/deletion rules as comment_count; not adjusted per viewer.
128
+ attr_accessor :top_level_comment_count
126
129
  # @!attribute visibility_tag
127
130
  # @return [String] If visibility is 'tag', this is the tag name
128
131
  attr_accessor :visibility_tag
@@ -201,6 +204,7 @@ module GetStream
201
204
  @moderation_action = attributes[:moderation_action] || attributes['moderation_action'] || nil
202
205
  @selector_source = attributes[:selector_source] || attributes['selector_source'] || nil
203
206
  @text = attributes[:text] || attributes['text'] || nil
207
+ @top_level_comment_count = attributes[:top_level_comment_count] || attributes['top_level_comment_count'] || nil
204
208
  @visibility_tag = attributes[:visibility_tag] || attributes['visibility_tag'] || nil
205
209
  @friend_reactions = attributes[:friend_reactions] || attributes['friend_reactions'] || nil
206
210
  @latest_shares = attributes[:latest_shares] || attributes['latest_shares'] || nil
@@ -256,6 +260,7 @@ module GetStream
256
260
  moderation_action: 'moderation_action',
257
261
  selector_source: 'selector_source',
258
262
  text: 'text',
263
+ top_level_comment_count: 'top_level_comment_count',
259
264
  visibility_tag: 'visibility_tag',
260
265
  friend_reactions: 'friend_reactions',
261
266
  latest_shares: 'latest_shares',
@@ -25,7 +25,7 @@ module GetStream
25
25
  # @return [String] The type of the event
26
26
  attr_accessor :type
27
27
  # @!attribute feed_visibility
28
- # @return [String]
28
+ # @return [FeedVisibility] Who can see and follow a feed.
29
29
  attr_accessor :feed_visibility
30
30
  # @!attribute received_at
31
31
  # @return [DateTime]
@@ -10,7 +10,7 @@ module GetStream
10
10
 
11
11
  # Model attributes
12
12
  # @!attribute type
13
- # @return [String] Type of selector. One of: popular, proximity, following, current_feed, query, interest, follow_suggestion
13
+ # @return [ActivitySelectorType] Type of selector. One of: popular, proximity, following, current_feed, query, interest, follow_suggestion
14
14
  attr_accessor :type
15
15
  # @!attribute cutoff_time
16
16
  # @return [String] Time threshold for activity selection (string). Expected RFC3339 format (e.g., 2006-01-02T15:04:05Z07:00). Cannot be used together with cutoff_window
@@ -21,6 +21,15 @@ module GetStream
21
21
  # @!attribute min_popularity
22
22
  # @return [Integer] Minimum popularity threshold. For the 'popular' selector, omit to use the default (5); values below 1 are rejected
23
23
  attr_accessor :min_popularity
24
+ # @!attribute ranking_candidate_limit
25
+ # @return [Integer] Maximum number of candidate activities this selector contributes to a ranked feed (1-1000). Omit to use the default ranking buffer. Only supported on the popular, proximity, interest and query selectors, and ignored on feeds without ranking
26
+ attr_accessor :ranking_candidate_limit
27
+ # @!attribute time_budget_ms
28
+ # @return [Integer] Maximum time in milliseconds this selector may take (25-5000). A selector that runs over its budget is dropped from that read instead of failing it, and stays out for the rest of that pagination session. The budget can only tighten the default, never extend it. Omit to use the default. Only supported on the popular, proximity, interest, query and follow_suggestion selectors
29
+ attr_accessor :time_budget_ms
30
+ # @!attribute viewer_location_radius_km
31
+ # @return [Float] Radius in kilometers the proximity selector searches around the viewer's location (the request's viewer_location, else the user's custom.location) when its filter has no near or within_bounds. Greater than 0 and at most 250. Omit to use the default (10). Only supported on the proximity selector
32
+ attr_accessor :viewer_location_radius_km
24
33
  # @!attribute sort
25
34
  # @return [Array<SortParamRequest>] Sort parameters for activity selection
26
35
  attr_accessor :sort
@@ -41,6 +50,9 @@ module GetStream
41
50
  @cutoff_time = attributes[:cutoff_time] || attributes['cutoff_time'] || nil
42
51
  @cutoff_window = attributes[:cutoff_window] || attributes['cutoff_window'] || nil
43
52
  @min_popularity = attributes[:min_popularity] || attributes['min_popularity'] || nil
53
+ @ranking_candidate_limit = attributes[:ranking_candidate_limit] || attributes['ranking_candidate_limit'] || nil
54
+ @time_budget_ms = attributes[:time_budget_ms] || attributes['time_budget_ms'] || nil
55
+ @viewer_location_radius_km = attributes[:viewer_location_radius_km] || attributes['viewer_location_radius_km'] || nil
44
56
  @sort = attributes[:sort] || attributes['sort'] || nil
45
57
  @feed_groups = attributes[:feed_groups] || attributes['feed_groups'] || nil
46
58
  @filter = attributes[:filter] || attributes['filter'] || nil
@@ -54,6 +66,9 @@ module GetStream
54
66
  cutoff_time: 'cutoff_time',
55
67
  cutoff_window: 'cutoff_window',
56
68
  min_popularity: 'min_popularity',
69
+ ranking_candidate_limit: 'ranking_candidate_limit',
70
+ time_budget_ms: 'time_budget_ms',
71
+ viewer_location_radius_km: 'viewer_location_radius_km',
57
72
  sort: 'sort',
58
73
  feed_groups: 'feed_groups',
59
74
  filter: 'filter',
@@ -10,7 +10,7 @@ module GetStream
10
10
 
11
11
  # Model attributes
12
12
  # @!attribute type
13
- # @return [String] Type of selector
13
+ # @return [ActivitySelectorType] Type of selector
14
14
  attr_accessor :type
15
15
  # @!attribute cutoff_time
16
16
  # @return [DateTime] Time threshold for activity selection (timestamp)
@@ -21,6 +21,15 @@ module GetStream
21
21
  # @!attribute min_popularity
22
22
  # @return [Integer] Minimum popularity threshold. For the 'popular' selector, values below 1 are normalized to the default (5) at read time.
23
23
  attr_accessor :min_popularity
24
+ # @!attribute ranking_candidate_limit
25
+ # @return [Integer] Maximum number of candidate activities this selector contributes to a ranked feed
26
+ attr_accessor :ranking_candidate_limit
27
+ # @!attribute time_budget_ms
28
+ # @return [Integer] Maximum time in milliseconds this selector may take before it is dropped from the read
29
+ attr_accessor :time_budget_ms
30
+ # @!attribute viewer_location_radius_km
31
+ # @return [Float] Radius in kilometers the proximity selector searches around the viewer's location
32
+ attr_accessor :viewer_location_radius_km
24
33
  # @!attribute sort
25
34
  # @return [Array<SortParamRequest>] Sort parameters for activity selection
26
35
  attr_accessor :sort
@@ -41,6 +50,9 @@ module GetStream
41
50
  @cutoff_time = attributes[:cutoff_time] || attributes['cutoff_time'] || nil
42
51
  @cutoff_window = attributes[:cutoff_window] || attributes['cutoff_window'] || nil
43
52
  @min_popularity = attributes[:min_popularity] || attributes['min_popularity'] || nil
53
+ @ranking_candidate_limit = attributes[:ranking_candidate_limit] || attributes['ranking_candidate_limit'] || nil
54
+ @time_budget_ms = attributes[:time_budget_ms] || attributes['time_budget_ms'] || nil
55
+ @viewer_location_radius_km = attributes[:viewer_location_radius_km] || attributes['viewer_location_radius_km'] || nil
44
56
  @sort = attributes[:sort] || attributes['sort'] || nil
45
57
  @feed_groups = attributes[:feed_groups] || attributes['feed_groups'] || nil
46
58
  @filter = attributes[:filter] || attributes['filter'] || nil
@@ -54,6 +66,9 @@ module GetStream
54
66
  cutoff_time: 'cutoff_time',
55
67
  cutoff_window: 'cutoff_window',
56
68
  min_popularity: 'min_popularity',
69
+ ranking_candidate_limit: 'ranking_candidate_limit',
70
+ time_budget_ms: 'time_budget_ms',
71
+ viewer_location_radius_km: 'viewer_location_radius_km',
57
72
  sort: 'sort',
58
73
  feed_groups: 'feed_groups',
59
74
  filter: 'filter',
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ # How a feed group selects the activities it shows.
9
+ class ActivitySelectorType < GetStream::BaseModel
10
+ # Empty model - inherits all functionality from BaseModel
11
+ end
12
+ end
13
+ end
14
+ end
@@ -25,7 +25,7 @@ module GetStream
25
25
  # @return [String] The type of event: "feeds.activity.unpinned" in this case
26
26
  attr_accessor :type
27
27
  # @!attribute feed_visibility
28
- # @return [String]
28
+ # @return [FeedVisibility] Who can see and follow a feed.
29
29
  attr_accessor :feed_visibility
30
30
  # @!attribute received_at
31
31
  # @return [DateTime]
@@ -25,7 +25,7 @@ module GetStream
25
25
  # @return [String] The type of the event
26
26
  attr_accessor :type
27
27
  # @!attribute feed_visibility
28
- # @return [String]
28
+ # @return [FeedVisibility] Who can see and follow a feed.
29
29
  attr_accessor :feed_visibility
30
30
  # @!attribute received_at
31
31
  # @return [DateTime]
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ # Who can see an activity.
9
+ class ActivityVisibility < GetStream::BaseModel
10
+ # Empty model - inherits all functionality from BaseModel
11
+ end
12
+ end
13
+ end
14
+ end