getstream-ruby 2.0.0 → 3.0.0.beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -0
  3. data/lib/getstream_ruby/client.rb +1 -0
  4. data/lib/getstream_ruby/extensions/moderation_extensions.rb +52 -0
  5. data/lib/getstream_ruby/generated/common_client.rb +169 -0
  6. data/lib/getstream_ruby/generated/feed.rb +10 -0
  7. data/lib/getstream_ruby/generated/feeds_client.rb +58 -3
  8. data/lib/getstream_ruby/generated/models/activity_feedback_event_payload.rb +1 -1
  9. data/lib/getstream_ruby/generated/models/activity_request.rb +7 -2
  10. data/lib/getstream_ruby/generated/models/activity_response.rb +13 -3
  11. data/lib/getstream_ruby/generated/models/activity_restored_event.rb +66 -0
  12. data/lib/getstream_ruby/generated/models/activity_selector_config.rb +1 -1
  13. data/lib/getstream_ruby/generated/models/add_activity_request.rb +7 -2
  14. data/lib/getstream_ruby/generated/models/add_comment_reaction_request.rb +5 -0
  15. data/lib/getstream_ruby/generated/models/add_comment_request.rb +5 -0
  16. data/lib/getstream_ruby/generated/models/add_reaction_request.rb +5 -0
  17. data/lib/getstream_ruby/generated/models/add_user_group_members_request.rb +36 -0
  18. data/lib/getstream_ruby/generated/models/add_user_group_members_response.rb +36 -0
  19. data/lib/getstream_ruby/generated/models/api_error.rb +5 -5
  20. data/lib/getstream_ruby/generated/models/apn_config.rb +5 -5
  21. data/lib/getstream_ruby/generated/models/apns_payload.rb +56 -0
  22. data/lib/getstream_ruby/generated/models/app_response_fields.rb +9 -4
  23. data/lib/getstream_ruby/generated/models/async_export_error_event.rb +1 -1
  24. data/lib/getstream_ruby/generated/models/automod_details_response.rb +51 -0
  25. data/lib/getstream_ruby/generated/models/aws_rekognition_rule.rb +6 -1
  26. data/lib/getstream_ruby/generated/models/ban_action_request_payload.rb +61 -0
  27. data/lib/getstream_ruby/generated/models/ban_info_response.rb +56 -0
  28. data/lib/getstream_ruby/generated/models/block_action_request_payload.rb +31 -0
  29. data/lib/getstream_ruby/generated/models/block_list_options.rb +1 -1
  30. data/lib/getstream_ruby/generated/models/block_list_response.rb +1 -1
  31. data/lib/getstream_ruby/generated/models/call_action_options.rb +61 -0
  32. data/lib/getstream_ruby/generated/models/call_custom_property_parameters.rb +36 -0
  33. data/lib/getstream_ruby/generated/models/call_dtmf_event.rb +66 -0
  34. data/lib/getstream_ruby/generated/models/call_reaction_event.rb +1 -1
  35. data/lib/getstream_ruby/generated/models/call_rule_action_sequence.rb +41 -0
  36. data/lib/getstream_ruby/generated/models/call_stats_report_ready_event.rb +11 -1
  37. data/lib/getstream_ruby/generated/models/call_type_response.rb +1 -1
  38. data/lib/getstream_ruby/generated/models/call_type_rule_parameters.rb +31 -0
  39. data/lib/getstream_ruby/generated/models/call_violation_count_parameters.rb +36 -0
  40. data/lib/getstream_ruby/generated/models/channel_config.rb +5 -0
  41. data/lib/getstream_ruby/generated/models/channel_config_with_info.rb +5 -0
  42. data/lib/getstream_ruby/generated/models/channel_created_event.rb +59 -4
  43. data/lib/getstream_ruby/generated/models/channel_deleted_event.rb +47 -22
  44. data/lib/getstream_ruby/generated/models/channel_frozen_event.rb +24 -14
  45. data/lib/getstream_ruby/generated/models/channel_hidden_event.rb +51 -26
  46. data/lib/getstream_ruby/generated/models/channel_input_request.rb +4 -4
  47. data/lib/getstream_ruby/generated/models/channel_member_response.rb +1 -1
  48. data/lib/getstream_ruby/generated/models/channel_messages_response.rb +36 -0
  49. data/lib/getstream_ruby/generated/models/channel_muted_event.rb +29 -4
  50. data/lib/getstream_ruby/generated/models/channel_truncated_event.rb +61 -21
  51. data/lib/getstream_ruby/generated/models/channel_type_config.rb +5 -0
  52. data/lib/getstream_ruby/generated/models/channel_un_frozen_event.rb +24 -14
  53. data/lib/getstream_ruby/generated/models/channel_unmuted_event.rb +29 -4
  54. data/lib/getstream_ruby/generated/models/channel_updated_event.rb +49 -24
  55. data/lib/getstream_ruby/generated/models/channel_visible_event.rb +50 -15
  56. data/lib/getstream_ruby/generated/models/chat_activity_stats_response.rb +4 -4
  57. data/lib/getstream_ruby/generated/models/check_push_request.rb +2 -2
  58. data/lib/getstream_ruby/generated/models/check_sns_response.rb +1 -1
  59. data/lib/getstream_ruby/generated/models/check_sqs_response.rb +1 -1
  60. data/lib/getstream_ruby/generated/models/closed_caption_rule_parameters.rb +41 -0
  61. data/lib/getstream_ruby/generated/models/comment_response.rb +3 -3
  62. data/lib/getstream_ruby/generated/models/config_overrides_request.rb +96 -0
  63. data/lib/getstream_ruby/generated/models/config_response.rb +5 -0
  64. data/lib/getstream_ruby/generated/models/coordinates_response.rb +36 -0
  65. data/lib/getstream_ruby/generated/models/create_block_list_request.rb +1 -1
  66. data/lib/getstream_ruby/generated/models/create_call_type_request.rb +1 -1
  67. data/lib/getstream_ruby/generated/models/create_call_type_response.rb +1 -1
  68. data/lib/getstream_ruby/generated/models/create_channel_type_request.rb +9 -4
  69. data/lib/getstream_ruby/generated/models/create_channel_type_response.rb +5 -0
  70. data/lib/getstream_ruby/generated/models/create_import_request.rb +6 -1
  71. data/lib/getstream_ruby/generated/models/create_poll_option_request.rb +4 -4
  72. data/lib/getstream_ruby/generated/models/create_poll_request.rb +4 -4
  73. data/lib/getstream_ruby/generated/models/create_user_group_request.rb +51 -0
  74. data/lib/getstream_ruby/generated/models/create_user_group_response.rb +36 -0
  75. data/lib/getstream_ruby/generated/models/custom_action_request_payload.rb +36 -0
  76. data/lib/getstream_ruby/generated/models/custom_check_request.rb +1 -1
  77. data/lib/getstream_ruby/generated/models/custom_event.rb +46 -0
  78. data/lib/getstream_ruby/generated/models/daily_value.rb +36 -0
  79. data/lib/getstream_ruby/generated/models/delete_activity_request_payload.rb +46 -0
  80. data/lib/getstream_ruby/generated/models/delete_comment_request_payload.rb +46 -0
  81. data/lib/getstream_ruby/generated/models/delete_message_request_payload.rb +46 -0
  82. data/lib/getstream_ruby/generated/models/delete_reaction_request_payload.rb +46 -0
  83. data/lib/getstream_ruby/generated/models/delete_user_request_payload.rb +61 -0
  84. data/lib/getstream_ruby/generated/models/draft_payload_response.rb +12 -12
  85. data/lib/getstream_ruby/generated/models/enriched_collection_response.rb +1 -1
  86. data/lib/getstream_ruby/generated/models/event_notification_settings_request.rb +41 -0
  87. data/lib/getstream_ruby/generated/models/event_notification_settings_response.rb +41 -0
  88. data/lib/getstream_ruby/generated/models/fcm_payload.rb +31 -0
  89. data/lib/getstream_ruby/generated/models/feed_group_response.rb +1 -1
  90. data/lib/getstream_ruby/generated/models/feed_group_restored_event.rb +61 -0
  91. data/lib/getstream_ruby/generated/models/feed_member_response.rb +1 -1
  92. data/lib/getstream_ruby/generated/models/feed_request.rb +1 -1
  93. data/lib/getstream_ruby/generated/models/feeds_moderation_template_config_payload.rb +36 -0
  94. data/lib/getstream_ruby/generated/models/feeds_preferences.rb +6 -6
  95. data/lib/getstream_ruby/generated/models/feeds_preferences_response.rb +5 -0
  96. data/lib/getstream_ruby/generated/models/feeds_reaction_group_response.rb +41 -0
  97. data/lib/getstream_ruby/generated/models/firebase_config.rb +5 -5
  98. data/lib/getstream_ruby/generated/models/flag_details_response.rb +41 -0
  99. data/lib/getstream_ruby/generated/models/flag_feedback_response.rb +41 -0
  100. data/lib/getstream_ruby/generated/models/flag_message_details_response.rb +46 -0
  101. data/lib/getstream_ruby/generated/models/flag_updated_event.rb +12 -12
  102. data/lib/getstream_ruby/generated/models/follow_request.rb +6 -1
  103. data/lib/getstream_ruby/generated/models/follow_response.rb +2 -2
  104. data/lib/getstream_ruby/generated/models/friend_reactions_options.rb +41 -0
  105. data/lib/getstream_ruby/generated/models/get_call_participant_session_metrics_response.rb +71 -0
  106. data/lib/getstream_ruby/generated/models/get_call_type_response.rb +1 -1
  107. data/lib/getstream_ruby/generated/models/get_channel_type_response.rb +5 -0
  108. data/lib/getstream_ruby/generated/models/get_comment_replies_response.rb +5 -0
  109. data/lib/getstream_ruby/generated/models/get_comments_response.rb +5 -0
  110. data/lib/getstream_ruby/generated/models/get_feeds_rate_limits_response.rb +4 -4
  111. data/lib/getstream_ruby/generated/models/get_or_create_feed_request.rb +5 -0
  112. data/lib/getstream_ruby/generated/models/get_push_templates_response.rb +1 -1
  113. data/lib/getstream_ruby/generated/models/get_rate_limits_response.rb +4 -4
  114. data/lib/getstream_ruby/generated/models/get_user_group_response.rb +36 -0
  115. data/lib/getstream_ruby/generated/models/hls_settings_request.rb +3 -3
  116. data/lib/getstream_ruby/generated/models/huawei_config.rb +4 -4
  117. data/lib/getstream_ruby/generated/models/image_size.rb +2 -2
  118. data/lib/getstream_ruby/generated/models/import_v2_task_settings.rb +5 -0
  119. data/lib/getstream_ruby/generated/models/individual_record_settings.rb +6 -1
  120. data/lib/getstream_ruby/generated/models/individual_recording_settings_request.rb +7 -2
  121. data/lib/getstream_ruby/generated/models/individual_recording_settings_response.rb +6 -1
  122. data/lib/getstream_ruby/generated/models/keyframe_rule_parameters.rb +41 -0
  123. data/lib/getstream_ruby/generated/models/label_response.rb +41 -0
  124. data/lib/getstream_ruby/generated/models/limit_info_response.rb +41 -0
  125. data/lib/getstream_ruby/generated/models/list_user_groups_response.rb +36 -0
  126. data/lib/getstream_ruby/generated/models/location_response.rb +41 -0
  127. data/lib/getstream_ruby/generated/models/mark_read_response.rb +1 -1
  128. data/lib/getstream_ruby/generated/models/mark_read_response_event.rb +81 -0
  129. data/lib/getstream_ruby/generated/models/mark_reviewed_request_payload.rb +41 -0
  130. data/lib/getstream_ruby/generated/models/max_streak_changed_event.rb +46 -0
  131. data/lib/getstream_ruby/generated/models/member_added_event.rb +51 -21
  132. data/lib/getstream_ruby/generated/models/member_removed_event.rb +55 -20
  133. data/lib/getstream_ruby/generated/models/member_updated_event.rb +51 -21
  134. data/lib/getstream_ruby/generated/models/message_action_response.rb +36 -0
  135. data/lib/getstream_ruby/generated/models/message_deleted_event.rb +57 -32
  136. data/lib/getstream_ruby/generated/models/message_flag_response.rb +3 -3
  137. data/lib/getstream_ruby/generated/models/message_flagged_event.rb +75 -20
  138. data/lib/getstream_ruby/generated/models/message_history_entry_response.rb +4 -4
  139. data/lib/getstream_ruby/generated/models/message_new_event.rb +81 -26
  140. data/lib/getstream_ruby/generated/models/message_read_event.rb +42 -22
  141. data/lib/getstream_ruby/generated/models/message_request.rb +31 -16
  142. data/lib/getstream_ruby/generated/models/message_response.rb +16 -1
  143. data/lib/getstream_ruby/generated/models/message_unblocked_event.rb +28 -18
  144. data/lib/getstream_ruby/generated/models/message_undeleted_event.rb +50 -30
  145. data/lib/getstream_ruby/generated/models/message_updated_event.rb +56 -26
  146. data/lib/getstream_ruby/generated/models/message_with_channel_response.rb +16 -1
  147. data/lib/getstream_ruby/generated/models/metric_stats.rb +36 -0
  148. data/lib/getstream_ruby/generated/models/metric_time_series.rb +31 -0
  149. data/lib/getstream_ruby/generated/models/moderation_action_config_response.rb +56 -0
  150. data/lib/getstream_ruby/generated/models/moderation_dashboard_preferences.rb +10 -0
  151. data/lib/getstream_ruby/generated/models/moderation_flag_response.rb +1 -1
  152. data/lib/getstream_ruby/generated/models/moderation_flagged_event.rb +21 -16
  153. data/lib/getstream_ruby/generated/models/moderation_payload_request.rb +46 -0
  154. data/lib/getstream_ruby/generated/models/moderation_payload_response.rb +46 -0
  155. data/lib/getstream_ruby/generated/models/moderation_rule_info.rb +46 -0
  156. data/lib/getstream_ruby/generated/models/moderation_rule_v2_response.rb +11 -6
  157. data/lib/getstream_ruby/generated/models/moderation_rules_triggered_event.rb +81 -0
  158. data/lib/getstream_ruby/generated/models/moderation_v2_response.rb +5 -0
  159. data/lib/getstream_ruby/generated/models/mute_channel_response.rb +1 -1
  160. data/lib/getstream_ruby/generated/models/mute_response.rb +2 -2
  161. data/lib/getstream_ruby/generated/models/notification_mark_unread_event.rb +69 -44
  162. data/lib/getstream_ruby/generated/models/notification_parent_activity.rb +51 -0
  163. data/lib/getstream_ruby/generated/models/notification_settings_request.rb +56 -0
  164. data/lib/getstream_ruby/generated/models/notification_settings_response.rb +56 -0
  165. data/lib/getstream_ruby/generated/models/notification_target.rb +6 -1
  166. data/lib/getstream_ruby/generated/models/notification_thread_message_new_event.rb +126 -0
  167. data/lib/getstream_ruby/generated/models/parsed_predefined_filter_response.rb +41 -0
  168. data/lib/getstream_ruby/generated/models/pending_message_event.rb +4 -4
  169. data/lib/getstream_ruby/generated/models/permission.rb +1 -1
  170. data/lib/getstream_ruby/generated/models/published_track_metrics.rb +61 -0
  171. data/lib/getstream_ruby/generated/models/push_preference_input.rb +3 -3
  172. data/lib/getstream_ruby/generated/models/push_provider_request.rb +146 -0
  173. data/lib/getstream_ruby/generated/models/push_template_response.rb +56 -0
  174. data/lib/getstream_ruby/generated/models/query_activities_request.rb +5 -0
  175. data/lib/getstream_ruby/generated/models/query_comments_request.rb +1 -1
  176. data/lib/getstream_ruby/generated/models/query_feed_moderation_template.rb +1 -1
  177. data/lib/getstream_ruby/generated/models/query_moderation_flags_request.rb +1 -1
  178. data/lib/getstream_ruby/generated/models/query_moderation_rules_response.rb +10 -0
  179. data/lib/getstream_ruby/generated/models/query_pinned_activities_request.rb +51 -0
  180. data/lib/getstream_ruby/generated/models/query_pinned_activities_response.rb +46 -0
  181. data/lib/getstream_ruby/generated/models/query_review_queue_response.rb +1 -1
  182. data/lib/getstream_ruby/generated/models/query_segment_targets_request.rb +8 -8
  183. data/lib/getstream_ruby/generated/models/query_team_usage_stats_request.rb +51 -0
  184. data/lib/getstream_ruby/generated/models/query_team_usage_stats_response.rb +41 -0
  185. data/lib/getstream_ruby/generated/models/query_users_payload.rb +1 -1
  186. data/lib/getstream_ruby/generated/models/ranking_config.rb +1 -1
  187. data/lib/getstream_ruby/generated/models/raw_recording_settings_request.rb +1 -1
  188. data/lib/getstream_ruby/generated/models/reaction.rb +65 -20
  189. data/lib/getstream_ruby/generated/models/reaction_deleted_event.rb +54 -19
  190. data/lib/getstream_ruby/generated/models/reaction_new_event.rb +54 -19
  191. data/lib/getstream_ruby/generated/models/reaction_updated_event.rb +60 -25
  192. data/lib/getstream_ruby/generated/models/read_collections_response.rb +11 -1
  193. data/lib/getstream_ruby/generated/models/record_settings_request.rb +3 -3
  194. data/lib/getstream_ruby/generated/models/reject_appeal_request_payload.rb +31 -0
  195. data/lib/getstream_ruby/generated/models/remove_user_group_members_request.rb +36 -0
  196. data/lib/getstream_ruby/generated/models/remove_user_group_members_response.rb +36 -0
  197. data/lib/getstream_ruby/generated/models/resolution_metrics_time_series.rb +36 -0
  198. data/lib/getstream_ruby/generated/models/resolve_sip_inbound_request.rb +1 -1
  199. data/lib/getstream_ruby/generated/models/restore_action_request_payload.rb +31 -0
  200. data/lib/getstream_ruby/generated/models/restore_activity_request.rb +36 -0
  201. data/lib/getstream_ruby/generated/models/restore_activity_response.rb +36 -0
  202. data/lib/getstream_ruby/generated/models/restore_feed_group_request.rb +14 -0
  203. data/lib/getstream_ruby/generated/models/restore_feed_group_response.rb +36 -0
  204. data/lib/getstream_ruby/generated/models/review_queue_item_response.rb +2 -2
  205. data/lib/getstream_ruby/generated/models/rtmp_broadcast_request.rb +1 -1
  206. data/lib/getstream_ruby/generated/models/rtmp_settings_request.rb +2 -2
  207. data/lib/getstream_ruby/generated/models/rule_builder_action.rb +6 -1
  208. data/lib/getstream_ruby/generated/models/rule_builder_condition.rb +25 -0
  209. data/lib/getstream_ruby/generated/models/rule_builder_rule.rb +11 -6
  210. data/lib/getstream_ruby/generated/models/search_result_message.rb +15 -0
  211. data/lib/getstream_ruby/generated/models/search_user_groups_response.rb +36 -0
  212. data/lib/getstream_ruby/generated/models/session_client.rb +51 -0
  213. data/lib/getstream_ruby/generated/models/session_warning_response.rb +41 -0
  214. data/lib/getstream_ruby/generated/models/sfu_location_response.rb +2 -2
  215. data/lib/getstream_ruby/generated/models/shadow_block_action_request_payload.rb +31 -0
  216. data/lib/getstream_ruby/generated/models/sip_challenge_request.rb +106 -0
  217. data/lib/getstream_ruby/generated/models/sip_inbound_credentials.rb +5 -0
  218. data/lib/getstream_ruby/generated/models/sort_param_request.rb +2 -2
  219. data/lib/getstream_ruby/generated/models/start_closed_captions_request.rb +1 -1
  220. data/lib/getstream_ruby/generated/models/start_transcription_request.rb +1 -1
  221. data/lib/getstream_ruby/generated/models/submit_action_request.rb +20 -15
  222. data/lib/getstream_ruby/generated/models/team_usage_stats.rb +111 -0
  223. data/lib/getstream_ruby/generated/models/thread_updated_event.rb +21 -16
  224. data/lib/getstream_ruby/generated/models/threaded_comment_response.rb +2 -2
  225. data/lib/getstream_ruby/generated/models/transcription_settings.rb +1 -1
  226. data/lib/getstream_ruby/generated/models/unban_action_request_payload.rb +36 -0
  227. data/lib/getstream_ruby/generated/models/unblock_action_request_payload.rb +31 -0
  228. data/lib/getstream_ruby/generated/models/undelete_message_request.rb +31 -0
  229. data/lib/getstream_ruby/generated/models/undelete_message_response.rb +36 -0
  230. data/lib/getstream_ruby/generated/models/unmute_response.rb +3 -3
  231. data/lib/getstream_ruby/generated/models/update_activities_partial_batch_request.rb +31 -0
  232. data/lib/getstream_ruby/generated/models/update_activities_partial_batch_response.rb +36 -0
  233. data/lib/getstream_ruby/generated/models/update_activity_partial_change_request.rb +51 -0
  234. data/lib/getstream_ruby/generated/models/update_activity_partial_request.rb +12 -2
  235. data/lib/getstream_ruby/generated/models/update_activity_request.rb +16 -1
  236. data/lib/getstream_ruby/generated/models/update_app_request.rb +5 -0
  237. data/lib/getstream_ruby/generated/models/update_call_type_request.rb +1 -1
  238. data/lib/getstream_ruby/generated/models/update_call_type_response.rb +1 -1
  239. data/lib/getstream_ruby/generated/models/update_channel_type_request.rb +5 -0
  240. data/lib/getstream_ruby/generated/models/update_channel_type_response.rb +5 -0
  241. data/lib/getstream_ruby/generated/models/update_comment_request.rb +5 -0
  242. data/lib/getstream_ruby/generated/models/update_feed_members_request.rb +1 -1
  243. data/lib/getstream_ruby/generated/models/update_follow_request.rb +6 -1
  244. data/lib/getstream_ruby/generated/models/update_message_partial_request.rb +5 -0
  245. data/lib/getstream_ruby/generated/models/update_poll_option_request.rb +4 -4
  246. data/lib/getstream_ruby/generated/models/update_poll_request.rb +4 -4
  247. data/lib/getstream_ruby/generated/models/update_user_group_request.rb +41 -0
  248. data/lib/getstream_ruby/generated/models/update_user_group_response.rb +36 -0
  249. data/lib/getstream_ruby/generated/models/upsert_moderation_rule_request.rb +11 -6
  250. data/lib/getstream_ruby/generated/models/upsert_moderation_template_request.rb +1 -1
  251. data/lib/getstream_ruby/generated/models/upsert_moderation_template_response.rb +1 -1
  252. data/lib/getstream_ruby/generated/models/upsert_push_preferences_response.rb +2 -2
  253. data/lib/getstream_ruby/generated/models/upsert_push_provider_request.rb +1 -1
  254. data/lib/getstream_ruby/generated/models/upsert_push_template_request.rb +2 -2
  255. data/lib/getstream_ruby/generated/models/upsert_push_template_response.rb +1 -1
  256. data/lib/getstream_ruby/generated/models/user.rb +4 -49
  257. data/lib/getstream_ruby/generated/models/user_banned_event.rb +63 -33
  258. data/lib/getstream_ruby/generated/models/user_deactivated_event.rb +23 -13
  259. data/lib/getstream_ruby/generated/models/user_deleted_event.rb +36 -11
  260. data/lib/getstream_ruby/generated/models/user_flagged_event.rb +30 -15
  261. data/lib/getstream_ruby/generated/models/user_group.rb +71 -0
  262. data/lib/getstream_ruby/generated/models/user_group_created_event.rb +56 -0
  263. data/lib/getstream_ruby/generated/models/user_group_deleted_event.rb +56 -0
  264. data/lib/getstream_ruby/generated/models/user_group_member.rb +51 -0
  265. data/lib/getstream_ruby/generated/models/user_group_member_added_event.rb +61 -0
  266. data/lib/getstream_ruby/generated/models/user_group_member_removed_event.rb +61 -0
  267. data/lib/getstream_ruby/generated/models/user_group_response.rb +66 -0
  268. data/lib/getstream_ruby/generated/models/user_group_updated_event.rb +56 -0
  269. data/lib/getstream_ruby/generated/models/user_muted_event.rb +24 -14
  270. data/lib/getstream_ruby/generated/models/user_reactivated_event.rb +23 -8
  271. data/lib/getstream_ruby/generated/models/user_unbanned_event.rb +52 -22
  272. data/lib/getstream_ruby/generated/models/user_unmuted_event.rb +24 -14
  273. data/lib/getstream_ruby/generated/models/user_unread_reminder_event.rb +19 -9
  274. data/lib/getstream_ruby/generated/models/video_end_call_request_payload.rb +14 -0
  275. data/lib/getstream_ruby/generated/models/video_kick_user_request_payload.rb +14 -0
  276. data/lib/getstream_ruby/generated/models/video_reaction_response.rb +46 -0
  277. data/lib/getstream_ruby/generated/models/wh_event.rb +31 -0
  278. data/lib/getstream_ruby/generated/models/xiaomi_config.rb +4 -4
  279. data/lib/getstream_ruby/generated/webhook.rb +737 -0
  280. data/lib/getstream_ruby/version.rb +1 -1
  281. metadata +110 -4
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class ResolutionMetricsTimeSeries < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute height
13
+ # @return [MetricTimeSeries]
14
+ attr_accessor :height
15
+ # @!attribute width
16
+ # @return [MetricTimeSeries]
17
+ attr_accessor :width
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @height = attributes[:height] || attributes['height'] || nil
23
+ @width = attributes[:width] || attributes['width'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ height: 'height',
30
+ width: 'width'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -16,7 +16,7 @@ module GetStream
16
16
  # @return [String] SIP trunk number to resolve
17
17
  attr_accessor :sip_trunk_number
18
18
  # @!attribute challenge
19
- # @return [SIPChallenge]
19
+ # @return [SIPChallengeRequest]
20
20
  attr_accessor :challenge
21
21
  # @!attribute routing_number
22
22
  # @return [String] Optional routing number for routing number-based call routing (10 digits)
@@ -0,0 +1,31 @@
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
+ # Configuration for restore action
9
+ class RestoreActionRequestPayload < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute decision_reason
13
+ # @return [String] Reason for the appeal decision
14
+ attr_accessor :decision_reason
15
+
16
+ # Initialize with attributes
17
+ def initialize(attributes = {})
18
+ super(attributes)
19
+ @decision_reason = attributes[:decision_reason] || attributes['decision_reason'] || nil
20
+ end
21
+
22
+ # Override field mappings for JSON serialization
23
+ def self.json_field_mappings
24
+ {
25
+ decision_reason: 'decision_reason'
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class RestoreActivityRequest < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute user_id
13
+ # @return [String]
14
+ attr_accessor :user_id
15
+ # @!attribute user
16
+ # @return [UserRequest]
17
+ attr_accessor :user
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @user_id = attributes[:user_id] || attributes['user_id'] || nil
23
+ @user = attributes[:user] || attributes['user'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ user_id: 'user_id',
30
+ user: 'user'
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
+ #
9
+ class RestoreActivityResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String]
14
+ attr_accessor :duration
15
+ # @!attribute activity
16
+ # @return [ActivityResponse]
17
+ attr_accessor :activity
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @duration = attributes[:duration] || attributes['duration']
23
+ @activity = attributes[:activity] || attributes['activity']
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ duration: 'duration',
30
+ activity: 'activity'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -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
+ #
9
+ class RestoreFeedGroupRequest < GetStream::BaseModel
10
+ # Empty model - inherits all functionality from BaseModel
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT.
4
+
5
+ module GetStream
6
+ module Generated
7
+ module Models
8
+ #
9
+ class RestoreFeedGroupResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String]
14
+ attr_accessor :duration
15
+ # @!attribute feed_group
16
+ # @return [FeedGroupResponse]
17
+ attr_accessor :feed_group
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @duration = attributes[:duration] || attributes['duration']
23
+ @feed_group = attributes[:feed_group] || attributes['feed_group']
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ duration: 'duration',
30
+ feed_group: 'feed_group'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -49,7 +49,7 @@ module GetStream
49
49
  # @return [Array<ActionLogResponse>] Moderation actions taken
50
50
  attr_accessor :actions
51
51
  # @!attribute bans
52
- # @return [Array<Ban>] Associated ban records
52
+ # @return [Array<BanInfoResponse>] Associated ban records
53
53
  attr_accessor :bans
54
54
  # @!attribute flags
55
55
  # @return [Array<ModerationFlagResponse>] Associated flag records
@@ -103,7 +103,7 @@ module GetStream
103
103
  # @return [MessageResponse]
104
104
  attr_accessor :message
105
105
  # @!attribute moderation_payload
106
- # @return [ModerationPayload]
106
+ # @return [ModerationPayloadResponse]
107
107
  attr_accessor :moderation_payload
108
108
  # @!attribute reaction
109
109
  # @return [Reaction]
@@ -16,7 +16,7 @@ module GetStream
16
16
  # @return [String] URL for the RTMP server to send the call to
17
17
  attr_accessor :stream_url
18
18
  # @!attribute quality
19
- # @return [String] If provided, will override the call's RTMP settings quality
19
+ # @return [String] If provided, will override the call's RTMP settings quality. One of: 360p, 480p, 720p, 1080p, 1440p, portrait-360x640, portrait-480x854, portrait-720x1280, portrait-1080x1920, portrait-1440x2560
20
20
  attr_accessor :quality
21
21
  # @!attribute stream_key
22
22
  # @return [String] If provided, will be appended at the end of stream_url
@@ -10,10 +10,10 @@ module GetStream
10
10
 
11
11
  # Model attributes
12
12
  # @!attribute enabled
13
- # @return [Boolean]
13
+ # @return [Boolean] Whether RTMP broadcasting is enabled
14
14
  attr_accessor :enabled
15
15
  # @!attribute quality
16
- # @return [String] Resolution to set for the RTMP stream
16
+ # @return [String] Resolution to set for the RTMP stream. One of: 360p, 480p, 720p, 1080p, 1440p, portrait-360x640, portrait-480x854, portrait-720x1280, portrait-1080x1920, portrait-1440x2560
17
17
  attr_accessor :quality
18
18
  # @!attribute layout
19
19
  # @return [LayoutSettingsRequest]
@@ -15,6 +15,9 @@ module GetStream
15
15
  # @!attribute ban_options
16
16
  # @return [BanOptions]
17
17
  attr_accessor :ban_options
18
+ # @!attribute call_options
19
+ # @return [CallActionOptions]
20
+ attr_accessor :call_options
18
21
  # @!attribute flag_user_options
19
22
  # @return [FlagUserOptions]
20
23
  attr_accessor :flag_user_options
@@ -22,8 +25,9 @@ module GetStream
22
25
  # Initialize with attributes
23
26
  def initialize(attributes = {})
24
27
  super(attributes)
25
- @type = attributes[:type] || attributes['type']
28
+ @type = attributes[:type] || attributes['type'] || nil
26
29
  @ban_options = attributes[:ban_options] || attributes['ban_options'] || nil
30
+ @call_options = attributes[:call_options] || attributes['call_options'] || nil
27
31
  @flag_user_options = attributes[:flag_user_options] || attributes['flag_user_options'] || nil
28
32
  end
29
33
 
@@ -32,6 +36,7 @@ module GetStream
32
36
  {
33
37
  type: 'type',
34
38
  ban_options: 'ban_options',
39
+ call_options: 'call_options',
35
40
  flag_user_options: 'flag_user_options'
36
41
  }
37
42
  end
@@ -15,6 +15,18 @@ module GetStream
15
15
  # @!attribute type
16
16
  # @return [String]
17
17
  attr_accessor :type
18
+ # @!attribute call_custom_property_params
19
+ # @return [CallCustomPropertyParameters]
20
+ attr_accessor :call_custom_property_params
21
+ # @!attribute call_type_rule_params
22
+ # @return [CallTypeRuleParameters]
23
+ attr_accessor :call_type_rule_params
24
+ # @!attribute call_violation_count_params
25
+ # @return [CallViolationCountParameters]
26
+ attr_accessor :call_violation_count_params
27
+ # @!attribute closed_caption_rule_params
28
+ # @return [ClosedCaptionRuleParameters]
29
+ attr_accessor :closed_caption_rule_params
18
30
  # @!attribute content_count_rule_params
19
31
  # @return [ContentCountRuleParameters]
20
32
  attr_accessor :content_count_rule_params
@@ -27,6 +39,9 @@ module GetStream
27
39
  # @!attribute image_rule_params
28
40
  # @return [ImageRuleParameters]
29
41
  attr_accessor :image_rule_params
42
+ # @!attribute keyframe_rule_params
43
+ # @return [KeyframeRuleParameters]
44
+ attr_accessor :keyframe_rule_params
30
45
  # @!attribute text_content_params
31
46
  # @return [TextContentParameters]
32
47
  attr_accessor :text_content_params
@@ -63,10 +78,15 @@ module GetStream
63
78
  super(attributes)
64
79
  @confidence = attributes[:confidence] || attributes['confidence'] || nil
65
80
  @type = attributes[:type] || attributes['type'] || nil
81
+ @call_custom_property_params = attributes[:call_custom_property_params] || attributes['call_custom_property_params'] || nil
82
+ @call_type_rule_params = attributes[:call_type_rule_params] || attributes['call_type_rule_params'] || nil
83
+ @call_violation_count_params = attributes[:call_violation_count_params] || attributes['call_violation_count_params'] || nil
84
+ @closed_caption_rule_params = attributes[:closed_caption_rule_params] || attributes['closed_caption_rule_params'] || nil
66
85
  @content_count_rule_params = attributes[:content_count_rule_params] || attributes['content_count_rule_params'] || nil
67
86
  @content_flag_count_rule_params = attributes[:content_flag_count_rule_params] || attributes['content_flag_count_rule_params'] || nil
68
87
  @image_content_params = attributes[:image_content_params] || attributes['image_content_params'] || nil
69
88
  @image_rule_params = attributes[:image_rule_params] || attributes['image_rule_params'] || nil
89
+ @keyframe_rule_params = attributes[:keyframe_rule_params] || attributes['keyframe_rule_params'] || nil
70
90
  @text_content_params = attributes[:text_content_params] || attributes['text_content_params'] || nil
71
91
  @text_rule_params = attributes[:text_rule_params] || attributes['text_rule_params'] || nil
72
92
  @user_created_within_params = attributes[:user_created_within_params] || attributes['user_created_within_params'] || nil
@@ -84,10 +104,15 @@ module GetStream
84
104
  {
85
105
  confidence: 'confidence',
86
106
  type: 'type',
107
+ call_custom_property_params: 'call_custom_property_params',
108
+ call_type_rule_params: 'call_type_rule_params',
109
+ call_violation_count_params: 'call_violation_count_params',
110
+ closed_caption_rule_params: 'closed_caption_rule_params',
87
111
  content_count_rule_params: 'content_count_rule_params',
88
112
  content_flag_count_rule_params: 'content_flag_count_rule_params',
89
113
  image_content_params: 'image_content_params',
90
114
  image_rule_params: 'image_rule_params',
115
+ keyframe_rule_params: 'keyframe_rule_params',
91
116
  text_content_params: 'text_content_params',
92
117
  text_rule_params: 'text_rule_params',
93
118
  user_created_within_params: 'user_created_within_params',
@@ -12,9 +12,6 @@ module GetStream
12
12
  # @!attribute rule_type
13
13
  # @return [String]
14
14
  attr_accessor :rule_type
15
- # @!attribute action
16
- # @return [RuleBuilderAction]
17
- attr_accessor :action
18
15
  # @!attribute cooldown_period
19
16
  # @return [String]
20
17
  attr_accessor :cooldown_period
@@ -24,35 +21,43 @@ module GetStream
24
21
  # @!attribute logic
25
22
  # @return [String]
26
23
  attr_accessor :logic
24
+ # @!attribute action_sequences
25
+ # @return [Array<CallRuleActionSequence>]
26
+ attr_accessor :action_sequences
27
27
  # @!attribute conditions
28
28
  # @return [Array<RuleBuilderCondition>]
29
29
  attr_accessor :conditions
30
30
  # @!attribute groups
31
31
  # @return [Array<RuleBuilderConditionGroup>]
32
32
  attr_accessor :groups
33
+ # @!attribute action
34
+ # @return [RuleBuilderAction]
35
+ attr_accessor :action
33
36
 
34
37
  # Initialize with attributes
35
38
  def initialize(attributes = {})
36
39
  super(attributes)
37
40
  @rule_type = attributes[:rule_type] || attributes['rule_type']
38
- @action = attributes[:action] || attributes['action']
39
41
  @cooldown_period = attributes[:cooldown_period] || attributes['cooldown_period'] || nil
40
42
  @id = attributes[:id] || attributes['id'] || nil
41
43
  @logic = attributes[:logic] || attributes['logic'] || nil
44
+ @action_sequences = attributes[:action_sequences] || attributes['action_sequences'] || nil
42
45
  @conditions = attributes[:conditions] || attributes['conditions'] || nil
43
46
  @groups = attributes[:groups] || attributes['groups'] || nil
47
+ @action = attributes[:action] || attributes['action'] || nil
44
48
  end
45
49
 
46
50
  # Override field mappings for JSON serialization
47
51
  def self.json_field_mappings
48
52
  {
49
53
  rule_type: 'rule_type',
50
- action: 'action',
51
54
  cooldown_period: 'cooldown_period',
52
55
  id: 'id',
53
56
  logic: 'logic',
57
+ action_sequences: 'action_sequences',
54
58
  conditions: 'conditions',
55
- groups: 'groups'
59
+ groups: 'groups',
60
+ action: 'action'
56
61
  }
57
62
  end
58
63
  end
@@ -24,6 +24,12 @@ module GetStream
24
24
  # @!attribute id
25
25
  # @return [String]
26
26
  attr_accessor :id
27
+ # @!attribute mentioned_channel
28
+ # @return [Boolean]
29
+ attr_accessor :mentioned_channel
30
+ # @!attribute mentioned_here
31
+ # @return [Boolean]
32
+ attr_accessor :mentioned_here
27
33
  # @!attribute pinned
28
34
  # @return [Boolean]
29
35
  attr_accessor :pinned
@@ -105,6 +111,9 @@ module GetStream
105
111
  # @!attribute show_in_channel
106
112
  # @return [Boolean]
107
113
  attr_accessor :show_in_channel
114
+ # @!attribute mentioned_roles
115
+ # @return [Array<String>]
116
+ attr_accessor :mentioned_roles
108
117
  # @!attribute thread_participants
109
118
  # @return [Array<UserResponse>]
110
119
  attr_accessor :thread_participants
@@ -153,6 +162,8 @@ module GetStream
153
162
  @deleted_reply_count = attributes[:deleted_reply_count] || attributes['deleted_reply_count']
154
163
  @html = attributes[:html] || attributes['html']
155
164
  @id = attributes[:id] || attributes['id']
165
+ @mentioned_channel = attributes[:mentioned_channel] || attributes['mentioned_channel']
166
+ @mentioned_here = attributes[:mentioned_here] || attributes['mentioned_here']
156
167
  @pinned = attributes[:pinned] || attributes['pinned']
157
168
  @reply_count = attributes[:reply_count] || attributes['reply_count']
158
169
  @shadowed = attributes[:shadowed] || attributes['shadowed']
@@ -180,6 +191,7 @@ module GetStream
180
191
  @poll_id = attributes[:poll_id] || attributes['poll_id'] || nil
181
192
  @quoted_message_id = attributes[:quoted_message_id] || attributes['quoted_message_id'] || nil
182
193
  @show_in_channel = attributes[:show_in_channel] || attributes['show_in_channel'] || nil
194
+ @mentioned_roles = attributes[:mentioned_roles] || attributes['mentioned_roles'] || nil
183
195
  @thread_participants = attributes[:thread_participants] || attributes['thread_participants'] || nil
184
196
  @channel = attributes[:channel] || attributes['channel'] || nil
185
197
  @draft = attributes[:draft] || attributes['draft'] || nil
@@ -203,6 +215,8 @@ module GetStream
203
215
  deleted_reply_count: 'deleted_reply_count',
204
216
  html: 'html',
205
217
  id: 'id',
218
+ mentioned_channel: 'mentioned_channel',
219
+ mentioned_here: 'mentioned_here',
206
220
  pinned: 'pinned',
207
221
  reply_count: 'reply_count',
208
222
  shadowed: 'shadowed',
@@ -230,6 +244,7 @@ module GetStream
230
244
  poll_id: 'poll_id',
231
245
  quoted_message_id: 'quoted_message_id',
232
246
  show_in_channel: 'show_in_channel',
247
+ mentioned_roles: 'mentioned_roles',
233
248
  thread_participants: 'thread_participants',
234
249
  channel: 'channel',
235
250
  draft: 'draft',
@@ -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
+ # Response for searching user groups
9
+ class SearchUserGroupsResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String]
14
+ attr_accessor :duration
15
+ # @!attribute user_groups
16
+ # @return [Array<UserGroupResponse>] List of matching user groups
17
+ attr_accessor :user_groups
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @duration = attributes[:duration] || attributes['duration']
23
+ @user_groups = attributes[:user_groups] || attributes['user_groups']
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ duration: 'duration',
30
+ user_groups: 'user_groups'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,51 @@
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 SessionClient < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute ip
13
+ # @return [String]
14
+ attr_accessor :ip
15
+ # @!attribute name
16
+ # @return [String]
17
+ attr_accessor :name
18
+ # @!attribute network_type
19
+ # @return [String]
20
+ attr_accessor :network_type
21
+ # @!attribute version
22
+ # @return [String]
23
+ attr_accessor :version
24
+ # @!attribute location
25
+ # @return [CallStatsLocation]
26
+ attr_accessor :location
27
+
28
+ # Initialize with attributes
29
+ def initialize(attributes = {})
30
+ super(attributes)
31
+ @ip = attributes[:ip] || attributes['ip'] || nil
32
+ @name = attributes[:name] || attributes['name'] || nil
33
+ @network_type = attributes[:network_type] || attributes['network_type'] || nil
34
+ @version = attributes[:version] || attributes['version'] || nil
35
+ @location = attributes[:location] || attributes['location'] || nil
36
+ end
37
+
38
+ # Override field mappings for JSON serialization
39
+ def self.json_field_mappings
40
+ {
41
+ ip: 'ip',
42
+ name: 'name',
43
+ network_type: 'network_type',
44
+ version: 'version',
45
+ location: 'location'
46
+ }
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,41 @@
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 SessionWarningResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute code
13
+ # @return [String]
14
+ attr_accessor :code
15
+ # @!attribute warning
16
+ # @return [String]
17
+ attr_accessor :warning
18
+ # @!attribute time
19
+ # @return [DateTime]
20
+ attr_accessor :time
21
+
22
+ # Initialize with attributes
23
+ def initialize(attributes = {})
24
+ super(attributes)
25
+ @code = attributes[:code] || attributes['code']
26
+ @warning = attributes[:warning] || attributes['warning']
27
+ @time = attributes[:time] || attributes['time'] || nil
28
+ end
29
+
30
+ # Override field mappings for JSON serialization
31
+ def self.json_field_mappings
32
+ {
33
+ code: 'code',
34
+ warning: 'warning',
35
+ time: 'time'
36
+ }
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -16,10 +16,10 @@ module GetStream
16
16
  # @return [String]
17
17
  attr_accessor :id
18
18
  # @!attribute coordinates
19
- # @return [Coordinates]
19
+ # @return [CoordinatesResponse]
20
20
  attr_accessor :coordinates
21
21
  # @!attribute location
22
- # @return [Location]
22
+ # @return [LocationResponse]
23
23
  attr_accessor :location
24
24
  # @!attribute count
25
25
  # @return [Integer]
@@ -0,0 +1,31 @@
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
+ # Configuration for shadow block action
9
+ class ShadowBlockActionRequestPayload < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute reason
13
+ # @return [String] Reason for shadow blocking
14
+ attr_accessor :reason
15
+
16
+ # Initialize with attributes
17
+ def initialize(attributes = {})
18
+ super(attributes)
19
+ @reason = attributes[:reason] || attributes['reason'] || nil
20
+ end
21
+
22
+ # Override field mappings for JSON serialization
23
+ def self.json_field_mappings
24
+ {
25
+ reason: 'reason'
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end