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
@@ -44,11 +44,14 @@ module GetStream
44
44
  # @return [String] ID of a poll to attach to activity
45
45
  attr_accessor :poll_id
46
46
  # @!attribute restrict_replies
47
- # @return [String] Controls who can add comments/replies to this activity. One of: everyone, people_i_follow, nobody
47
+ # @return [RestrictReplies] Controls who can add comments/replies to this activity. One of: everyone, people_i_follow, nobody
48
48
  attr_accessor :restrict_replies
49
49
  # @!attribute skip_enrich_url
50
50
  # @return [Boolean] Whether to skip URL enrichment for the activity
51
51
  attr_accessor :skip_enrich_url
52
+ # @!attribute skip_existing
53
+ # @return [Boolean]
54
+ attr_accessor :skip_existing
52
55
  # @!attribute skip_push
53
56
  # @return [Boolean] Whether to skip push notifications
54
57
  attr_accessor :skip_push
@@ -59,7 +62,7 @@ module GetStream
59
62
  # @return [String] ID of the user creating the activity
60
63
  attr_accessor :user_id
61
64
  # @!attribute visibility
62
- # @return [String] Visibility setting for the activity. One of: public, private, tag
65
+ # @return [ActivityVisibility] Visibility setting for the activity. One of: public, private, tag
63
66
  attr_accessor :visibility
64
67
  # @!attribute visibility_tag
65
68
  # @return [String] If visibility is 'tag', this is the tag name and is required
@@ -108,6 +111,7 @@ module GetStream
108
111
  @poll_id = attributes[:poll_id] || attributes['poll_id'] || nil
109
112
  @restrict_replies = attributes[:restrict_replies] || attributes['restrict_replies'] || nil
110
113
  @skip_enrich_url = attributes[:skip_enrich_url] || attributes['skip_enrich_url'] || nil
114
+ @skip_existing = attributes[:skip_existing] || attributes['skip_existing'] || nil
111
115
  @skip_push = attributes[:skip_push] || attributes['skip_push'] || nil
112
116
  @text = attributes[:text] || attributes['text'] || nil
113
117
  @user_id = attributes[:user_id] || attributes['user_id'] || nil
@@ -140,6 +144,7 @@ module GetStream
140
144
  poll_id: 'poll_id',
141
145
  restrict_replies: 'restrict_replies',
142
146
  skip_enrich_url: 'skip_enrich_url',
147
+ skip_existing: 'skip_existing',
143
148
  skip_push: 'skip_push',
144
149
  text: 'text',
145
150
  user_id: 'user_id',
@@ -18,6 +18,9 @@ module GetStream
18
18
  # @!attribute mention_notifications_created
19
19
  # @return [Integer] Number of mention notification activities created for mentioned users
20
20
  attr_accessor :mention_notifications_created
21
+ # @!attribute skipped_existing
22
+ # @return [Array<String>] Contains the activity ID when skip_existing is true and the activity already existed, so it was left unchanged.
23
+ attr_accessor :skipped_existing
21
24
 
22
25
  # Initialize with attributes
23
26
  def initialize(attributes = {})
@@ -25,6 +28,7 @@ module GetStream
25
28
  @duration = attributes[:duration] || attributes['duration']
26
29
  @activity = attributes[:activity] || attributes['activity']
27
30
  @mention_notifications_created = attributes[:mention_notifications_created] || attributes['mention_notifications_created'] || nil
31
+ @skipped_existing = attributes[:skipped_existing] || attributes['skipped_existing'] || nil
28
32
  end
29
33
 
30
34
  # Override field mappings for JSON serialization
@@ -32,7 +36,8 @@ module GetStream
32
36
  {
33
37
  duration: 'duration',
34
38
  activity: 'activity',
35
- mention_notifications_created: 'mention_notifications_created'
39
+ mention_notifications_created: 'mention_notifications_created',
40
+ skipped_existing: 'skipped_existing'
36
41
  }
37
42
  end
38
43
  end
@@ -9,9 +9,15 @@ module GetStream
9
9
  class AddCommentReactionResponse < GetStream::BaseModel
10
10
 
11
11
  # Model attributes
12
+ # @!attribute counter_delta
13
+ # @return [Integer] The change this write made to the number of reactions the user holds on this target: 1 when outcome is 'created', 0 when it is 'replaced' or 'unchanged'. These endpoints never return -1; a successful delete-reaction call is what decrements the count. With enforce_unique this is the delta of the user's reaction on the target; without it, the delta of reactions of this type.
14
+ attr_accessor :counter_delta
12
15
  # @!attribute duration
13
16
  # @return [String] Duration of the request
14
17
  attr_accessor :duration
18
+ # @!attribute outcome
19
+ # @return [String] What this write did to the user's reaction on this target. One of: created, replaced, unchanged. 'created' means a new reaction was written and nothing was replaced; 'replaced' means enforce_unique removed one or more of the user's other reaction types; 'unchanged' means the user already held this reaction type (its custom data may still have been updated). Without enforce_unique a user can hold several reaction types on one target, so 'created' then means 'this reaction type was newly added', not 'the user's first reaction on this target'.
20
+ attr_accessor :outcome
15
21
  # @!attribute comment
16
22
  # @return [CommentResponse]
17
23
  attr_accessor :comment
@@ -28,6 +34,9 @@ module GetStream
28
34
  # @!attribute notification_task_id
29
35
  # @return [String] ID of the async notification-creation task; poll GET /tasks/{id} for its status
30
36
  attr_accessor :notification_task_id
37
+ # @!attribute previous_reaction_type
38
+ # @return [String] The reaction type this write replaced, or null when nothing was replaced. Non-null exactly when outcome is 'replaced'. If enforce_unique removed several reactions — possible only for data created before enforce_unique was adopted — this is the most recently created one.
39
+ attr_accessor :previous_reaction_type
31
40
  # @!attribute reference_activity
32
41
  # @return [ActivityResponse]
33
42
  attr_accessor :reference_activity
@@ -35,24 +44,30 @@ module GetStream
35
44
  # Initialize with attributes
36
45
  def initialize(attributes = {})
37
46
  super(attributes)
47
+ @counter_delta = attributes[:counter_delta] || attributes['counter_delta']
38
48
  @duration = attributes[:duration] || attributes['duration']
49
+ @outcome = attributes[:outcome] || attributes['outcome']
39
50
  @comment = attributes[:comment] || attributes['comment']
40
51
  @reaction = attributes[:reaction] || attributes['reaction']
41
52
  @notification_accepted = attributes[:notification_accepted] || attributes['notification_accepted'] || nil
42
53
  @notification_created = attributes[:notification_created] || attributes['notification_created'] || nil
43
54
  @notification_task_id = attributes[:notification_task_id] || attributes['notification_task_id'] || nil
55
+ @previous_reaction_type = attributes[:previous_reaction_type] || attributes['previous_reaction_type'] || nil
44
56
  @reference_activity = attributes[:reference_activity] || attributes['reference_activity'] || nil
45
57
  end
46
58
 
47
59
  # Override field mappings for JSON serialization
48
60
  def self.json_field_mappings
49
61
  {
62
+ counter_delta: 'counter_delta',
50
63
  duration: 'duration',
64
+ outcome: 'outcome',
51
65
  comment: 'comment',
52
66
  reaction: 'reaction',
53
67
  notification_accepted: 'notification_accepted',
54
68
  notification_created: 'notification_created',
55
69
  notification_task_id: 'notification_task_id',
70
+ previous_reaction_type: 'previous_reaction_type',
56
71
  reference_activity: 'reference_activity'
57
72
  }
58
73
  end
@@ -9,9 +9,15 @@ module GetStream
9
9
  class AddReactionResponse < GetStream::BaseModel
10
10
 
11
11
  # Model attributes
12
+ # @!attribute counter_delta
13
+ # @return [Integer] The change this write made to the number of reactions the user holds on this target: 1 when outcome is 'created', 0 when it is 'replaced' or 'unchanged'. These endpoints never return -1; a successful delete-reaction call is what decrements the count. With enforce_unique this is the delta of the user's reaction on the target; without it, the delta of reactions of this type.
14
+ attr_accessor :counter_delta
12
15
  # @!attribute duration
13
16
  # @return [String]
14
17
  attr_accessor :duration
18
+ # @!attribute outcome
19
+ # @return [String] What this write did to the user's reaction on this target. One of: created, replaced, unchanged. 'created' means a new reaction was written and nothing was replaced; 'replaced' means enforce_unique removed one or more of the user's other reaction types; 'unchanged' means the user already held this reaction type (its custom data may still have been updated). Without enforce_unique a user can hold several reaction types on one target, so 'created' then means 'this reaction type was newly added', not 'the user's first reaction on this target'.
20
+ attr_accessor :outcome
15
21
  # @!attribute activity
16
22
  # @return [ActivityResponse]
17
23
  attr_accessor :activity
@@ -28,6 +34,9 @@ module GetStream
28
34
  # @!attribute notification_task_id
29
35
  # @return [String] ID of the async notification-creation task; poll GET /tasks/{id} for its status
30
36
  attr_accessor :notification_task_id
37
+ # @!attribute previous_reaction_type
38
+ # @return [String] The reaction type this write replaced, or null when nothing was replaced. Non-null exactly when outcome is 'replaced'. If enforce_unique removed several reactions — possible only for data created before enforce_unique was adopted — this is the most recently created one.
39
+ attr_accessor :previous_reaction_type
31
40
  # @!attribute reference_activity
32
41
  # @return [ActivityResponse]
33
42
  attr_accessor :reference_activity
@@ -35,24 +44,30 @@ module GetStream
35
44
  # Initialize with attributes
36
45
  def initialize(attributes = {})
37
46
  super(attributes)
47
+ @counter_delta = attributes[:counter_delta] || attributes['counter_delta']
38
48
  @duration = attributes[:duration] || attributes['duration']
49
+ @outcome = attributes[:outcome] || attributes['outcome']
39
50
  @activity = attributes[:activity] || attributes['activity']
40
51
  @reaction = attributes[:reaction] || attributes['reaction']
41
52
  @notification_accepted = attributes[:notification_accepted] || attributes['notification_accepted'] || nil
42
53
  @notification_created = attributes[:notification_created] || attributes['notification_created'] || nil
43
54
  @notification_task_id = attributes[:notification_task_id] || attributes['notification_task_id'] || nil
55
+ @previous_reaction_type = attributes[:previous_reaction_type] || attributes['previous_reaction_type'] || nil
44
56
  @reference_activity = attributes[:reference_activity] || attributes['reference_activity'] || nil
45
57
  end
46
58
 
47
59
  # Override field mappings for JSON serialization
48
60
  def self.json_field_mappings
49
61
  {
62
+ counter_delta: 'counter_delta',
50
63
  duration: 'duration',
64
+ outcome: 'outcome',
51
65
  activity: 'activity',
52
66
  reaction: 'reaction',
53
67
  notification_accepted: 'notification_accepted',
54
68
  notification_created: 'notification_created',
55
69
  notification_task_id: 'notification_task_id',
70
+ previous_reaction_type: 'previous_reaction_type',
56
71
  reference_activity: 'reference_activity'
57
72
  }
58
73
  end
@@ -15,6 +15,9 @@ module GetStream
15
15
  # @!attribute format
16
16
  # @return [String] Format for activity aggregation
17
17
  attr_accessor :format
18
+ # @!attribute group_size
19
+ # @return [Integer] Maximum number of activities kept in each aggregated group. Omit to use the default: 15 for apps migrated from Feeds v2 or created on or after 2026-10-11, 100 otherwise. Must be between 1 and 100 when set.
20
+ attr_accessor :group_size
18
21
  # @!attribute score_strategy
19
22
  # @return [String] Strategy for computing aggregated group scores from member activity scores when ranking is enabled. Valid values: sum, max, avg
20
23
  attr_accessor :score_strategy
@@ -24,6 +27,7 @@ module GetStream
24
27
  super(attributes)
25
28
  @activities_sort = attributes[:activities_sort] || attributes['activities_sort'] || nil
26
29
  @format = attributes[:format] || attributes['format'] || nil
30
+ @group_size = attributes[:group_size] || attributes['group_size'] || nil
27
31
  @score_strategy = attributes[:score_strategy] || attributes['score_strategy'] || nil
28
32
  end
29
33
 
@@ -32,6 +36,7 @@ module GetStream
32
36
  {
33
37
  activities_sort: 'activities_sort',
34
38
  format: 'format',
39
+ group_size: 'group_size',
35
40
  score_strategy: 'score_strategy'
36
41
  }
37
42
  end
@@ -10,24 +10,34 @@ module GetStream
10
10
 
11
11
  # Model attributes
12
12
  # @!attribute profile
13
- # @return [String]
13
+ # @return [String] Bodyguard credentials profile to classify transcripts with. Applies to the NLP engine only; ignored when LLM configurability is enabled. Empty falls back to the app-pinned profile, then the organization's top-level credentials
14
14
  attr_accessor :profile
15
15
  # @!attribute rules
16
- # @return [Array<BodyguardRule>]
16
+ # @return [Array<BodyguardRule>] Deprecated pre-split rule list. Still the live config while no engine config exists; once one does it is kept as a fallback for whichever engine has none of its own
17
17
  attr_accessor :rules
18
+ # @!attribute ai_text_config
19
+ # @return [AITextConfig]
20
+ attr_accessor :ai_text_config
21
+ # @!attribute llm_config
22
+ # @return [LLMConfig]
23
+ attr_accessor :llm_config
18
24
 
19
25
  # Initialize with attributes
20
26
  def initialize(attributes = {})
21
27
  super(attributes)
22
28
  @profile = attributes[:profile] || attributes['profile'] || nil
23
29
  @rules = attributes[:rules] || attributes['rules'] || nil
30
+ @ai_text_config = attributes[:ai_text_config] || attributes['ai_text_config'] || nil
31
+ @llm_config = attributes[:llm_config] || attributes['llm_config'] || nil
24
32
  end
25
33
 
26
34
  # Override field mappings for JSON serialization
27
35
  def self.json_field_mappings
28
36
  {
29
37
  profile: 'profile',
30
- rules: 'rules'
38
+ rules: 'rules',
39
+ ai_text_config: 'ai_text_config',
40
+ llm_config: 'llm_config'
31
41
  }
32
42
  end
33
43
  end
@@ -10,14 +10,20 @@ module GetStream
10
10
 
11
11
  # Model attributes
12
12
  # @!attribute enabled
13
- # @return [Boolean]
13
+ # @return [Boolean] Whether the engine selected by the application's LLM configurability flag has a rule that does something. Derived, not stored
14
14
  attr_accessor :enabled
15
15
  # @!attribute profile
16
- # @return [String]
16
+ # @return [String] Bodyguard credentials profile transcripts are classified with. Applies to the NLP engine only
17
17
  attr_accessor :profile
18
18
  # @!attribute rules
19
- # @return [Array<BodyguardRule>]
19
+ # @return [Array<BodyguardRule>] The active engine's rules, flattened into the pre-split shape for clients that predate the per-engine configs. This is the whole config for a policy that has no per-engine config stored
20
20
  attr_accessor :rules
21
+ # @!attribute ai_text_config
22
+ # @return [AITextConfig]
23
+ attr_accessor :ai_text_config
24
+ # @!attribute llm_config
25
+ # @return [LLMConfig]
26
+ attr_accessor :llm_config
21
27
 
22
28
  # Initialize with attributes
23
29
  def initialize(attributes = {})
@@ -25,6 +31,8 @@ module GetStream
25
31
  @enabled = attributes[:enabled] || attributes['enabled']
26
32
  @profile = attributes[:profile] || attributes['profile']
27
33
  @rules = attributes[:rules] || attributes['rules']
34
+ @ai_text_config = attributes[:ai_text_config] || attributes['ai_text_config'] || nil
35
+ @llm_config = attributes[:llm_config] || attributes['llm_config'] || nil
28
36
  end
29
37
 
30
38
  # Override field mappings for JSON serialization
@@ -32,7 +40,9 @@ module GetStream
32
40
  {
33
41
  enabled: 'enabled',
34
42
  profile: 'profile',
35
- rules: 'rules'
43
+ rules: 'rules',
44
+ ai_text_config: 'ai_text_config',
45
+ llm_config: 'llm_config'
36
46
  }
37
47
  end
38
48
  end
@@ -15,9 +15,6 @@ module GetStream
15
15
  # @!attribute enabled
16
16
  # @return [Boolean]
17
17
  attr_accessor :enabled
18
- # @!attribute provider
19
- # @return [String]
20
- attr_accessor :provider
21
18
  # @!attribute rules
22
19
  # @return [Array<AWSRekognitionRule>]
23
20
  attr_accessor :rules
@@ -27,7 +24,6 @@ module GetStream
27
24
  super(attributes)
28
25
  @async = attributes[:async] || attributes['async'] || nil
29
26
  @enabled = attributes[:enabled] || attributes['enabled'] || nil
30
- @provider = attributes[:provider] || attributes['provider'] || nil
31
27
  @rules = attributes[:rules] || attributes['rules'] || nil
32
28
  end
33
29
 
@@ -36,7 +32,6 @@ module GetStream
36
32
  {
37
33
  async: 'async',
38
34
  enabled: 'enabled',
39
- provider: 'provider',
40
35
  rules: 'rules'
41
36
  }
42
37
  end
@@ -24,6 +24,9 @@ module GetStream
24
24
  # @!attribute classifications
25
25
  # @return [Array<Classification>] Hierarchical list of L1 (parent) classifications. Each entry: `name`, `confidence` (0–1), and nested `subclassifications` (L2 leaves with their own confidence). Resolved against the app's effective taxonomy (custom taxonomy when configured, otherwise the standard Bodyguard catalogue).
26
26
  attr_accessor :classifications
27
+ # @!attribute detected_urls
28
+ # @return [Array<DetectedURLResponse>] URLs found in the image, as `{url, source}` objects: `source` is `qr` (decoded from a QR code) or `ocr` (in text visible in the image). Independent of the action; omitted when none were found.
29
+ attr_accessor :detected_urls
27
30
  # @!attribute ocr_classifications
28
31
  # @return [Array<Classification>] Flat list of Bodyguard OCR text-moderation labels on the image's extracted text (e.g. VULGARITY, PII). Each entry: `name` + `severity`. Populated when BG's OCR pipeline returned non-empty results for this image.
29
32
  attr_accessor :ocr_classifications
@@ -36,6 +39,7 @@ module GetStream
36
39
  @error = attributes[:error] || attributes['error'] || nil
37
40
  @id = attributes[:id] || attributes['id'] || nil
38
41
  @classifications = attributes[:classifications] || attributes['classifications'] || nil
42
+ @detected_urls = attributes[:detected_urls] || attributes['detected_urls'] || nil
39
43
  @ocr_classifications = attributes[:ocr_classifications] || attributes['ocr_classifications'] || nil
40
44
  end
41
45
 
@@ -47,6 +51,7 @@ module GetStream
47
51
  error: 'error',
48
52
  id: 'id',
49
53
  classifications: 'classifications',
54
+ detected_urls: 'detected_urls',
50
55
  ocr_classifications: 'ocr_classifications'
51
56
  }
52
57
  end
@@ -18,6 +18,10 @@ module GetStream
18
18
  # @!attribute content_published_at
19
19
  # @return [DateTime] Original timestamp when the content was produced. Used as the `published_at` timestamp on per-content log entries that surface in `matched_contents` on aggregation-rule webhooks.
20
20
  attr_accessor :content_published_at
21
+ # @!attribute country_code
22
+ # @deprecated This field is deprecated.
23
+ # @return [String] ISO 3166-1 alpha-2 country the content is aimed at (e.g. US, DE). Ignored when country_codes is set, but an invalid value is still rejected with 400.
24
+ attr_accessor :country_code
21
25
  # @!attribute entity_creator_id
22
26
  # @return [String] ID of the user who created the content. Required with entity_type + entity_id; omit all three for stateless mode.
23
27
  attr_accessor :entity_creator_id
@@ -30,6 +34,9 @@ module GetStream
30
34
  # @!attribute user_id
31
35
  # @return [String]
32
36
  attr_accessor :user_id
37
+ # @!attribute country_codes
38
+ # @return [Array<String>] ISO 3166-1 alpha-2 countries the content is aimed at (e.g. US, DE), up to 300. The first is the primary country, which AI text providers receive as country context. Takes precedence over country_code.
39
+ attr_accessor :country_codes
33
40
  # @!attribute content_ids
34
41
  # @return [Hash<String, String>] Optional map from a content label (either a `texts` key or an `image:<key>` multipart label) to a caller-supplied per-instance identifier. Echoed on per-field verdicts and surfaced in `matched_contents` when an aggregation rule fires.
35
42
  attr_accessor :content_ids
@@ -49,10 +56,12 @@ module GetStream
49
56
  @async_response = attributes[:async_response] || attributes['async_response'] || nil
50
57
  @config_key = attributes[:config_key] || attributes['config_key'] || nil
51
58
  @content_published_at = attributes[:content_published_at] || attributes['content_published_at'] || nil
59
+ @country_code = attributes[:country_code] || attributes['country_code'] || nil
52
60
  @entity_creator_id = attributes[:entity_creator_id] || attributes['entity_creator_id'] || nil
53
61
  @entity_id = attributes[:entity_id] || attributes['entity_id'] || nil
54
62
  @entity_type = attributes[:entity_type] || attributes['entity_type'] || nil
55
63
  @user_id = attributes[:user_id] || attributes['user_id'] || nil
64
+ @country_codes = attributes[:country_codes] || attributes['country_codes'] || nil
56
65
  @content_ids = attributes[:content_ids] || attributes['content_ids'] || nil
57
66
  @custom = attributes[:custom] || attributes['custom'] || nil
58
67
  @texts = attributes[:texts] || attributes['texts'] || nil
@@ -65,10 +74,12 @@ module GetStream
65
74
  async_response: 'async_response',
66
75
  config_key: 'config_key',
67
76
  content_published_at: 'content_published_at',
77
+ country_code: 'country_code',
68
78
  entity_creator_id: 'entity_creator_id',
69
79
  entity_id: 'entity_id',
70
80
  entity_type: 'entity_type',
71
81
  user_id: 'user_id',
82
+ country_codes: 'country_codes',
72
83
  content_ids: 'content_ids',
73
84
  custom: 'custom',
74
85
  texts: 'texts',
@@ -15,6 +15,12 @@ module GetStream
15
15
  # @!attribute status
16
16
  # @return [String] `complete` (all fields screened), `partial` (mix of verdicts and per-field errors), or `pending` (async).
17
17
  attr_accessor :status
18
+ # @!attribute llm_model
19
+ # @return [String] ID of the LLM model that scored the content (e.g. gpt-4o-mini). Omitted when no LLM verdict was used (e.g. Bodyguard-only, or `pending`).
20
+ attr_accessor :llm_model
21
+ # @!attribute llm_reasoning_effort
22
+ # @return [String] reasoning_effort sent with the LLM request. Omitted when the request did not send one.
23
+ attr_accessor :llm_reasoning_effort
18
24
  # @!attribute images
19
25
  # @return [Hash<String, AnalyzeImageField>] Per-image moderation verdicts keyed by caller label.
20
26
  attr_accessor :images
@@ -27,6 +33,8 @@ module GetStream
27
33
  super(attributes)
28
34
  @duration = attributes[:duration] || attributes['duration']
29
35
  @status = attributes[:status] || attributes['status']
36
+ @llm_model = attributes[:llm_model] || attributes['llm_model'] || nil
37
+ @llm_reasoning_effort = attributes[:llm_reasoning_effort] || attributes['llm_reasoning_effort'] || nil
30
38
  @images = attributes[:images] || attributes['images'] || nil
31
39
  @texts = attributes[:texts] || attributes['texts'] || nil
32
40
  end
@@ -36,6 +44,8 @@ module GetStream
36
44
  {
37
45
  duration: 'duration',
38
46
  status: 'status',
47
+ llm_model: 'llm_model',
48
+ llm_reasoning_effort: 'llm_reasoning_effort',
39
49
  images: 'images',
40
50
  texts: 'texts'
41
51
  }
@@ -27,6 +27,9 @@ module GetStream
27
27
  # @!attribute classifications
28
28
  # @return [Array<Classification>] Flat list of detected Bodyguard text labels (e.g. INSULT, VULGARITY). Each entry carries `name` and `severity`.
29
29
  attr_accessor :classifications
30
+ # @!attribute detected_urls
31
+ # @return [Array<DetectedURLResponse>] URLs found in the text, as `{url, source}` objects with `source` = `text`. Independent of the action; omitted when none were found.
32
+ attr_accessor :detected_urls
30
33
 
31
34
  # Initialize with attributes
32
35
  def initialize(attributes = {})
@@ -37,6 +40,7 @@ module GetStream
37
40
  @language = attributes[:language] || attributes['language'] || nil
38
41
  @severity = attributes[:severity] || attributes['severity'] || nil
39
42
  @classifications = attributes[:classifications] || attributes['classifications'] || nil
43
+ @detected_urls = attributes[:detected_urls] || attributes['detected_urls'] || nil
40
44
  end
41
45
 
42
46
  # Override field mappings for JSON serialization
@@ -47,7 +51,8 @@ module GetStream
47
51
  id: 'id',
48
52
  language: 'language',
49
53
  severity: 'severity',
50
- classifications: 'classifications'
54
+ classifications: 'classifications',
55
+ detected_urls: 'detected_urls'
51
56
  }
52
57
  end
53
58
  end
@@ -27,6 +27,9 @@ module GetStream
27
27
  # @!attribute details
28
28
  # @return [Array<Integer>] Additional error-specific information
29
29
  attr_accessor :details
30
+ # @!attribute cooldown_remaining_ms
31
+ # @return [Integer] Milliseconds until the user's slow mode cool down period ends. Only set on code 60 (cool down) errors
32
+ attr_accessor :cooldown_remaining_ms
30
33
  # @!attribute unrecoverable
31
34
  # @return [Boolean] Flag that indicates if the error is unrecoverable, requests that return unrecoverable errors should not be retried, this error only applies to the request that caused it
32
35
  attr_accessor :unrecoverable
@@ -43,6 +46,7 @@ module GetStream
43
46
  @more_info = attributes[:more_info] || attributes['more_info']
44
47
  @status_code = attributes[:status_code] || attributes['StatusCode']
45
48
  @details = attributes[:details] || attributes['details']
49
+ @cooldown_remaining_ms = attributes[:cooldown_remaining_ms] || attributes['cooldown_remaining_ms'] || nil
46
50
  @unrecoverable = attributes[:unrecoverable] || attributes['unrecoverable'] || nil
47
51
  @exception_fields = attributes[:exception_fields] || attributes['exception_fields'] || nil
48
52
  end
@@ -56,6 +60,7 @@ module GetStream
56
60
  more_info: 'more_info',
57
61
  status_code: 'StatusCode',
58
62
  details: 'details',
63
+ cooldown_remaining_ms: 'cooldown_remaining_ms',
59
64
  unrecoverable: 'unrecoverable',
60
65
  exception_fields: 'exception_fields'
61
66
  }
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ # app_channel_count params: fires when the app creates at least threshold distinct channels within time_window
9
+ class AppChannelCountParameters < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute threshold
13
+ # @return [Integer]
14
+ attr_accessor :threshold
15
+ # @!attribute time_window
16
+ # @return [String]
17
+ attr_accessor :time_window
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @threshold = attributes[:threshold] || attributes['threshold'] || nil
23
+ @time_window = attributes[:time_window] || attributes['time_window'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ threshold: 'threshold',
30
+ time_window: 'time_window'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class AppCountInfo < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute condition_type
13
+ # @return [String] The app-wide count condition that fired: `app_channel_count` or `app_message_count`.
14
+ attr_accessor :condition_type
15
+ # @!attribute count
16
+ # @return [Integer] Channels created or messages sent in the app within the window when the rule fired, the triggering event included.
17
+ attr_accessor :count
18
+ # @!attribute threshold
19
+ # @return [Integer] The configured threshold. The rule fires when the count reaches it.
20
+ attr_accessor :threshold
21
+ # @!attribute time_window
22
+ # @return [String] The configured time window, e.g. `5m`.
23
+ attr_accessor :time_window
24
+
25
+ # Initialize with attributes
26
+ def initialize(attributes = {})
27
+ super(attributes)
28
+ @condition_type = attributes[:condition_type] || attributes['condition_type']
29
+ @count = attributes[:count] || attributes['count']
30
+ @threshold = attributes[:threshold] || attributes['threshold']
31
+ @time_window = attributes[:time_window] || attributes['time_window']
32
+ end
33
+
34
+ # Override field mappings for JSON serialization
35
+ def self.json_field_mappings
36
+ {
37
+ condition_type: 'condition_type',
38
+ count: 'count',
39
+ threshold: 'threshold',
40
+ time_window: 'time_window'
41
+ }
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ # Request limit defaults applied by the server when the corresponding field is omitted.
9
+ class AppDefaults < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute get_or_create_channel
13
+ # @return [GetOrCreateChannelDefaults] Defaults applied by the get-or-create channel endpoint.
14
+ attr_accessor :get_or_create_channel
15
+ # @!attribute query_channels
16
+ # @return [QueryChannelsDefaults] Defaults applied by the query channels endpoint.
17
+ attr_accessor :query_channels
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @get_or_create_channel = attributes[:get_or_create_channel] || attributes['get_or_create_channel']
23
+ @query_channels = attributes[:query_channels] || attributes['query_channels']
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ get_or_create_channel: 'get_or_create_channel',
30
+ query_channels: 'query_channels'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ # app_message_count params: fires when the app sends at least threshold chat messages within time_window
9
+ class AppMessageCountParameters < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute threshold
13
+ # @return [Integer]
14
+ attr_accessor :threshold
15
+ # @!attribute time_window
16
+ # @return [String]
17
+ attr_accessor :time_window
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @threshold = attributes[:threshold] || attributes['threshold'] || nil
23
+ @time_window = attributes[:time_window] || attributes['time_window'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ threshold: 'threshold',
30
+ time_window: 'time_window'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end