getstream-ruby 7.1.1 → 8.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 (98) hide show
  1. checksums.yaml +4 -4
  2. data/lib/getstream_ruby/generated/chat_client.rb +57 -0
  3. data/lib/getstream_ruby/generated/common_client.rb +16 -0
  4. data/lib/getstream_ruby/generated/feeds_client.rb +55 -0
  5. data/lib/getstream_ruby/generated/models/add_segment_targets_request.rb +31 -0
  6. data/lib/getstream_ruby/generated/models/analyze_image_field.rb +56 -0
  7. data/lib/getstream_ruby/generated/models/analyze_request.rb +81 -0
  8. data/lib/getstream_ruby/generated/models/analyze_response.rb +46 -0
  9. data/lib/getstream_ruby/generated/models/analyze_text_field.rb +56 -0
  10. data/lib/getstream_ruby/generated/models/app_response_fields.rb +15 -0
  11. data/lib/getstream_ruby/generated/models/appeal_item_response.rb +60 -0
  12. data/lib/getstream_ruby/generated/models/appeal_request.rb +5 -0
  13. data/lib/getstream_ruby/generated/models/block_list_response.rb +10 -0
  14. data/lib/getstream_ruby/generated/models/bulk_action_appeals_request.rb +71 -0
  15. data/lib/getstream_ruby/generated/models/bulk_action_appeals_response.rb +41 -0
  16. data/lib/getstream_ruby/generated/models/bulk_appeal_error.rb +36 -0
  17. data/lib/getstream_ruby/generated/models/bulk_appeal_result.rb +36 -0
  18. data/lib/getstream_ruby/generated/models/call_stats_participant_counts.rb +10 -0
  19. data/lib/getstream_ruby/generated/models/cancel_import_v2_task_request.rb +14 -0
  20. data/lib/getstream_ruby/generated/models/cancel_import_v2_task_response.rb +31 -0
  21. data/lib/getstream_ruby/generated/models/channel_config_overrides.rb +106 -0
  22. data/lib/getstream_ruby/generated/models/channel_data_update.rb +1 -1
  23. data/lib/getstream_ruby/generated/models/channel_input.rb +1 -1
  24. data/lib/getstream_ruby/generated/models/chat_message_response.rb +5 -0
  25. data/lib/getstream_ruby/generated/models/classification.rb +46 -0
  26. data/lib/getstream_ruby/generated/models/client_event.rb +156 -0
  27. data/lib/getstream_ruby/generated/models/closed_caption_rule_parameters.rb +5 -0
  28. data/lib/getstream_ruby/generated/models/config_response.rb +5 -0
  29. data/lib/getstream_ruby/generated/models/content_custom_property_count_parameters.rb +46 -0
  30. data/lib/getstream_ruby/generated/models/content_custom_property_parameters.rb +36 -0
  31. data/lib/getstream_ruby/generated/models/create_block_list_request.rb +10 -0
  32. data/lib/getstream_ruby/generated/models/create_device_request.rb +5 -0
  33. data/lib/getstream_ruby/generated/models/create_segment_request.rb +61 -0
  34. data/lib/getstream_ruby/generated/models/create_segment_response.rb +36 -0
  35. data/lib/getstream_ruby/generated/models/delivery_receipts_response.rb +1 -1
  36. data/lib/getstream_ruby/generated/models/device_response.rb +5 -0
  37. data/lib/getstream_ruby/generated/models/filter_config_response.rb +9 -4
  38. data/lib/getstream_ruby/generated/models/flag_details.rb +36 -0
  39. data/lib/getstream_ruby/generated/models/flag_item_response.rb +36 -0
  40. data/lib/getstream_ruby/generated/models/flag_response.rb +69 -9
  41. data/lib/getstream_ruby/generated/models/flood_config.rb +36 -0
  42. data/lib/getstream_ruby/generated/models/flood_identical_config.rb +46 -0
  43. data/lib/getstream_ruby/generated/models/flood_similar_config.rb +51 -0
  44. data/lib/getstream_ruby/generated/models/follow_request.rb +1 -1
  45. data/lib/getstream_ruby/generated/models/get_or_create_feed_request.rb +5 -0
  46. data/lib/getstream_ruby/generated/models/get_or_create_follow_response.rb +46 -0
  47. data/lib/getstream_ruby/generated/models/get_or_create_unfollow_request.rb +51 -0
  48. data/lib/getstream_ruby/generated/models/get_or_create_unfollow_response.rb +41 -0
  49. data/lib/getstream_ruby/generated/models/get_setup_session_response.rb +36 -0
  50. data/lib/getstream_ruby/generated/models/get_user_interests_response.rb +36 -0
  51. data/lib/getstream_ruby/generated/models/grouped_channels_bucket.rb +10 -0
  52. data/lib/getstream_ruby/generated/models/grouped_channels_group_request.rb +41 -0
  53. data/lib/getstream_ruby/generated/models/grouped_query_channels_request.rb +6 -1
  54. data/lib/getstream_ruby/generated/models/import_v2_task_settings.rb +5 -0
  55. data/lib/getstream_ruby/generated/models/interest_tag_response.rb +36 -0
  56. data/lib/getstream_ruby/generated/models/keyframe_ocr_rule_parameters.rb +41 -0
  57. data/lib/getstream_ruby/generated/models/keyframe_rule_parameters.rb +5 -0
  58. data/lib/getstream_ruby/generated/models/label_result_response.rb +5 -0
  59. data/lib/getstream_ruby/generated/models/labels_request.rb +1 -1
  60. data/lib/getstream_ruby/generated/models/labels_response.rb +5 -0
  61. data/lib/getstream_ruby/generated/models/llm_rule.rb +5 -5
  62. data/lib/getstream_ruby/generated/models/matched_content.rb +61 -0
  63. data/lib/getstream_ruby/generated/models/message_response.rb +5 -0
  64. data/lib/getstream_ruby/generated/models/message_with_channel_response.rb +5 -0
  65. data/lib/getstream_ruby/generated/models/moderation_ban_response.rb +31 -0
  66. data/lib/getstream_ruby/generated/models/moderation_config.rb +5 -0
  67. data/lib/getstream_ruby/generated/models/moderation_dashboard_preferences.rb +15 -0
  68. data/lib/getstream_ruby/generated/models/moderation_image_analysis_complete_event.rb +81 -0
  69. data/lib/getstream_ruby/generated/models/moderation_rules_triggered_event.rb +6 -1
  70. data/lib/getstream_ruby/generated/models/moderation_text_analysis_complete_event.rb +76 -0
  71. data/lib/getstream_ruby/generated/models/query_moderation_rules_response.rb +10 -0
  72. data/lib/getstream_ruby/generated/models/query_review_queue_request.rb +1 -1
  73. data/lib/getstream_ruby/generated/models/read_receipts_response.rb +1 -1
  74. data/lib/getstream_ruby/generated/models/report_client_event_request.rb +31 -0
  75. data/lib/getstream_ruby/generated/models/report_client_event_response.rb +31 -0
  76. data/lib/getstream_ruby/generated/models/rule_builder_action.rb +5 -0
  77. data/lib/getstream_ruby/generated/models/rule_builder_condition.rb +15 -0
  78. data/lib/getstream_ruby/generated/models/search_result_message.rb +5 -0
  79. data/lib/getstream_ruby/generated/models/setup_session.rb +56 -0
  80. data/lib/getstream_ruby/generated/models/submit_action_response.rb +5 -0
  81. data/lib/getstream_ruby/generated/models/target_resolution.rb +6 -6
  82. data/lib/getstream_ruby/generated/models/text_content_parameters.rb +10 -0
  83. data/lib/getstream_ruby/generated/models/translation_settings.rb +2 -2
  84. data/lib/getstream_ruby/generated/models/typing_indicators_response.rb +1 -1
  85. data/lib/getstream_ruby/generated/models/update_app_request.rb +15 -0
  86. data/lib/getstream_ruby/generated/models/update_block_list_request.rb +10 -0
  87. data/lib/getstream_ruby/generated/models/update_follow_request.rb +1 -1
  88. data/lib/getstream_ruby/generated/models/update_segment_request.rb +41 -0
  89. data/lib/getstream_ruby/generated/models/update_segment_response.rb +36 -0
  90. data/lib/getstream_ruby/generated/models/upsert_config_request.rb +5 -0
  91. data/lib/getstream_ruby/generated/models/upsert_setup_session_request.rb +41 -0
  92. data/lib/getstream_ruby/generated/models/upsert_setup_session_response.rb +36 -0
  93. data/lib/getstream_ruby/generated/models/user_banned_event.rb +5 -0
  94. data/lib/getstream_ruby/generated/moderation_client.rb +66 -2
  95. data/lib/getstream_ruby/generated/video_client.rb +17 -0
  96. data/lib/getstream_ruby/generated/webhook.rb +8 -0
  97. data/lib/getstream_ruby/version.rb +1 -1
  98. metadata +44 -2
@@ -57,6 +57,9 @@ module GetStream
57
57
  # @!attribute block_list_config
58
58
  # @return [BlockListConfig]
59
59
  attr_accessor :block_list_config
60
+ # @!attribute flood_config
61
+ # @return [FloodConfig]
62
+ attr_accessor :flood_config
60
63
  # @!attribute llm_config
61
64
  # @return [LLMConfig]
62
65
  attr_accessor :llm_config
@@ -86,6 +89,7 @@ module GetStream
86
89
  @automod_semantic_filters_config = attributes[:automod_semantic_filters_config] || attributes['automod_semantic_filters_config'] || nil
87
90
  @automod_toxicity_config = attributes[:automod_toxicity_config] || attributes['automod_toxicity_config'] || nil
88
91
  @block_list_config = attributes[:block_list_config] || attributes['block_list_config'] || nil
92
+ @flood_config = attributes[:flood_config] || attributes['flood_config'] || nil
89
93
  @llm_config = attributes[:llm_config] || attributes['llm_config'] || nil
90
94
  @velocity_filter_config = attributes[:velocity_filter_config] || attributes['velocity_filter_config'] || nil
91
95
  @video_call_rule_config = attributes[:video_call_rule_config] || attributes['video_call_rule_config'] || nil
@@ -110,6 +114,7 @@ module GetStream
110
114
  automod_semantic_filters_config: 'automod_semantic_filters_config',
111
115
  automod_toxicity_config: 'automod_toxicity_config',
112
116
  block_list_config: 'block_list_config',
117
+ flood_config: 'flood_config',
113
118
  llm_config: 'llm_config',
114
119
  velocity_filter_config: 'velocity_filter_config',
115
120
  video_call_rule_config: 'video_call_rule_config'
@@ -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 ContentCustomPropertyCountParameters < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute operator
13
+ # @return [String]
14
+ attr_accessor :operator
15
+ # @!attribute property_key
16
+ # @return [String]
17
+ attr_accessor :property_key
18
+ # @!attribute threshold
19
+ # @return [Integer]
20
+ attr_accessor :threshold
21
+ # @!attribute time_window
22
+ # @return [String]
23
+ attr_accessor :time_window
24
+
25
+ # Initialize with attributes
26
+ def initialize(attributes = {})
27
+ super(attributes)
28
+ @operator = attributes[:operator] || attributes['operator'] || nil
29
+ @property_key = attributes[:property_key] || attributes['property_key'] || nil
30
+ @threshold = attributes[:threshold] || attributes['threshold'] || nil
31
+ @time_window = attributes[:time_window] || attributes['time_window'] || nil
32
+ end
33
+
34
+ # Override field mappings for JSON serialization
35
+ def self.json_field_mappings
36
+ {
37
+ operator: 'operator',
38
+ property_key: 'property_key',
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
+ #
9
+ class ContentCustomPropertyParameters < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute operator
13
+ # @return [String]
14
+ attr_accessor :operator
15
+ # @!attribute property_key
16
+ # @return [String]
17
+ attr_accessor :property_key
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @operator = attributes[:operator] || attributes['operator'] || nil
23
+ @property_key = attributes[:property_key] || attributes['property_key'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ operator: 'operator',
30
+ property_key: 'property_key'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -15,12 +15,18 @@ module GetStream
15
15
  # @!attribute words
16
16
  # @return [Array<String>] List of words to block
17
17
  attr_accessor :words
18
+ # @!attribute is_confusable_folding_enabled
19
+ # @return [Boolean]
20
+ attr_accessor :is_confusable_folding_enabled
18
21
  # @!attribute is_leet_check_enabled
19
22
  # @return [Boolean]
20
23
  attr_accessor :is_leet_check_enabled
21
24
  # @!attribute is_plural_check_enabled
22
25
  # @return [Boolean]
23
26
  attr_accessor :is_plural_check_enabled
27
+ # @!attribute is_substring_matching_enabled
28
+ # @return [Boolean]
29
+ attr_accessor :is_substring_matching_enabled
24
30
  # @!attribute team
25
31
  # @return [String]
26
32
  attr_accessor :team
@@ -33,8 +39,10 @@ module GetStream
33
39
  super(attributes)
34
40
  @name = attributes[:name] || attributes['name']
35
41
  @words = attributes[:words] || attributes['words']
42
+ @is_confusable_folding_enabled = attributes[:is_confusable_folding_enabled] || attributes['is_confusable_folding_enabled'] || nil
36
43
  @is_leet_check_enabled = attributes[:is_leet_check_enabled] || attributes['is_leet_check_enabled'] || nil
37
44
  @is_plural_check_enabled = attributes[:is_plural_check_enabled] || attributes['is_plural_check_enabled'] || nil
45
+ @is_substring_matching_enabled = attributes[:is_substring_matching_enabled] || attributes['is_substring_matching_enabled'] || nil
38
46
  @team = attributes[:team] || attributes['team'] || nil
39
47
  @type = attributes[:type] || attributes['type'] || nil
40
48
  end
@@ -44,8 +52,10 @@ module GetStream
44
52
  {
45
53
  name: 'name',
46
54
  words: 'words',
55
+ is_confusable_folding_enabled: 'is_confusable_folding_enabled',
47
56
  is_leet_check_enabled: 'is_leet_check_enabled',
48
57
  is_plural_check_enabled: 'is_plural_check_enabled',
58
+ is_substring_matching_enabled: 'is_substring_matching_enabled',
49
59
  team: 'team',
50
60
  type: 'type'
51
61
  }
@@ -15,6 +15,9 @@ module GetStream
15
15
  # @!attribute push_provider
16
16
  # @return [String] Push provider
17
17
  attr_accessor :push_provider
18
+ # @!attribute hardware_id
19
+ # @return [String] Stable physical device identifier used to deduplicate pushes across push providers (e.g. APNs VoIP and Firebase on the same iOS device). Distinct from 'id', which is the push token.
20
+ attr_accessor :hardware_id
18
21
  # @!attribute push_provider_name
19
22
  # @return [String] Push provider name
20
23
  attr_accessor :push_provider_name
@@ -33,6 +36,7 @@ module GetStream
33
36
  super(attributes)
34
37
  @id = attributes[:id] || attributes['id']
35
38
  @push_provider = attributes[:push_provider] || attributes['push_provider']
39
+ @hardware_id = attributes[:hardware_id] || attributes['hardware_id'] || nil
36
40
  @push_provider_name = attributes[:push_provider_name] || attributes['push_provider_name'] || nil
37
41
  @user_id = attributes[:user_id] || attributes['user_id'] || nil
38
42
  @voip_token = attributes[:voip_token] || attributes['voip_token'] || nil
@@ -44,6 +48,7 @@ module GetStream
44
48
  {
45
49
  id: 'id',
46
50
  push_provider: 'push_provider',
51
+ hardware_id: 'hardware_id',
47
52
  push_provider_name: 'push_provider_name',
48
53
  user_id: 'user_id',
49
54
  voip_token: 'voip_token',
@@ -0,0 +1,61 @@
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 CreateSegmentRequest < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute type
13
+ # @return [String] The type of the segment
14
+ attr_accessor :type
15
+ # @!attribute all_sender_channels
16
+ # @return [Boolean] If true, all sender channels are included in the segment
17
+ attr_accessor :all_sender_channels
18
+ # @!attribute all_users
19
+ # @return [Boolean] If true, all users are included in the segment
20
+ attr_accessor :all_users
21
+ # @!attribute description
22
+ # @return [String] The description of the segment (max 256 characters)
23
+ attr_accessor :description
24
+ # @!attribute id
25
+ # @return [String] The ID of the segment
26
+ attr_accessor :id
27
+ # @!attribute name
28
+ # @return [String] The name of the segment (max 128 characters)
29
+ attr_accessor :name
30
+ # @!attribute filter
31
+ # @return [Object] Filter to apply to the query
32
+ attr_accessor :filter
33
+
34
+ # Initialize with attributes
35
+ def initialize(attributes = {})
36
+ super(attributes)
37
+ @type = attributes[:type] || attributes['type']
38
+ @all_sender_channels = attributes[:all_sender_channels] || attributes['all_sender_channels'] || nil
39
+ @all_users = attributes[:all_users] || attributes['all_users'] || nil
40
+ @description = attributes[:description] || attributes['description'] || nil
41
+ @id = attributes[:id] || attributes['id'] || nil
42
+ @name = attributes[:name] || attributes['name'] || nil
43
+ @filter = attributes[:filter] || attributes['filter'] || nil
44
+ end
45
+
46
+ # Override field mappings for JSON serialization
47
+ def self.json_field_mappings
48
+ {
49
+ type: 'type',
50
+ all_sender_channels: 'all_sender_channels',
51
+ all_users: 'all_users',
52
+ description: 'description',
53
+ id: 'id',
54
+ name: 'name',
55
+ filter: 'filter'
56
+ }
57
+ end
58
+ end
59
+ end
60
+ end
61
+ 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
+ # Basic response information
9
+ class CreateSegmentResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String] Duration of the request in milliseconds
14
+ attr_accessor :duration
15
+ # @!attribute segment
16
+ # @return [SegmentResponse]
17
+ attr_accessor :segment
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @duration = attributes[:duration] || attributes['duration']
23
+ @segment = attributes[:segment] || attributes['segment'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ duration: 'duration',
30
+ segment: 'segment'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -16,7 +16,7 @@ module GetStream
16
16
  # Initialize with attributes
17
17
  def initialize(attributes = {})
18
18
  super(attributes)
19
- @enabled = attributes[:enabled] || attributes['enabled'] || nil
19
+ @enabled = attributes[:enabled] || attributes['enabled']
20
20
  end
21
21
 
22
22
  # Override field mappings for JSON serialization
@@ -27,6 +27,9 @@ module GetStream
27
27
  # @!attribute disabled_reason
28
28
  # @return [String] Reason explaining why device had been disabled
29
29
  attr_accessor :disabled_reason
30
+ # @!attribute hardware_id
31
+ # @return [String] Stable physical device identifier used to deduplicate pushes across push providers
32
+ attr_accessor :hardware_id
30
33
  # @!attribute push_provider_name
31
34
  # @return [String] Push provider name
32
35
  attr_accessor :push_provider_name
@@ -43,6 +46,7 @@ module GetStream
43
46
  @user_id = attributes[:user_id] || attributes['user_id']
44
47
  @disabled = attributes[:disabled] || attributes['disabled'] || nil
45
48
  @disabled_reason = attributes[:disabled_reason] || attributes['disabled_reason'] || nil
49
+ @hardware_id = attributes[:hardware_id] || attributes['hardware_id'] || nil
46
50
  @push_provider_name = attributes[:push_provider_name] || attributes['push_provider_name'] || nil
47
51
  @voip = attributes[:voip] || attributes['voip'] || nil
48
52
  end
@@ -56,6 +60,7 @@ module GetStream
56
60
  user_id: 'user_id',
57
61
  disabled: 'disabled',
58
62
  disabled_reason: 'disabled_reason',
63
+ hardware_id: 'hardware_id',
59
64
  push_provider_name: 'push_provider_name',
60
65
  voip: 'voip'
61
66
  }
@@ -10,14 +10,17 @@ module GetStream
10
10
 
11
11
  # Model attributes
12
12
  # @!attribute llm_labels
13
- # @return [Array<String>]
13
+ # @return [Array<String>] LLM moderation labels available as filter values
14
14
  attr_accessor :llm_labels
15
15
  # @!attribute ai_text_labels
16
- # @return [Array<String>]
16
+ # @return [Array<String>] AI text moderation labels available as filter values
17
17
  attr_accessor :ai_text_labels
18
18
  # @!attribute config_keys
19
- # @return [Array<String>]
19
+ # @return [Array<String>] Moderation config keys present in the queue, available as filter values
20
20
  attr_accessor :config_keys
21
+ # @!attribute filterable_custom_keys
22
+ # @return [Array<String>] The moderation_payload.custom keys the app has configured as review-queue filter chips (via moderation_dashboard_preferences.filterable_custom_keys). Discovery hint for the dashboard only — the filter accepts any custom key regardless of this list.
23
+ attr_accessor :filterable_custom_keys
21
24
 
22
25
  # Initialize with attributes
23
26
  def initialize(attributes = {})
@@ -25,6 +28,7 @@ module GetStream
25
28
  @llm_labels = attributes[:llm_labels] || attributes['llm_labels']
26
29
  @ai_text_labels = attributes[:ai_text_labels] || attributes['ai_text_labels'] || nil
27
30
  @config_keys = attributes[:config_keys] || attributes['config_keys'] || nil
31
+ @filterable_custom_keys = attributes[:filterable_custom_keys] || attributes['filterable_custom_keys'] || nil
28
32
  end
29
33
 
30
34
  # Override field mappings for JSON serialization
@@ -32,7 +36,8 @@ module GetStream
32
36
  {
33
37
  llm_labels: 'llm_labels',
34
38
  ai_text_labels: 'ai_text_labels',
35
- config_keys: 'config_keys'
39
+ config_keys: 'config_keys',
40
+ filterable_custom_keys: 'filterable_custom_keys'
36
41
  }
37
42
  end
38
43
  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 FlagDetails < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute original_text
13
+ # @return [String]
14
+ attr_accessor :original_text
15
+ # @!attribute automod
16
+ # @return [AutomodDetailsResponse]
17
+ attr_accessor :automod
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @original_text = attributes[:original_text] || attributes['original_text']
23
+ @automod = attributes[:automod] || attributes['automod'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ original_text: 'original_text',
30
+ automod: 'automod'
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 FlagItemResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String]
14
+ attr_accessor :duration
15
+ # @!attribute item_id
16
+ # @return [String] Unique identifier of the created moderation item
17
+ attr_accessor :item_id
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @duration = attributes[:duration] || attributes['duration']
23
+ @item_id = attributes[:item_id] || attributes['item_id']
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ duration: 'duration',
30
+ item_id: 'item_id'
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -9,25 +9,85 @@ module GetStream
9
9
  class FlagResponse < GetStream::BaseModel
10
10
 
11
11
  # Model attributes
12
- # @!attribute duration
12
+ # @!attribute created_at
13
+ # @return [DateTime]
14
+ attr_accessor :created_at
15
+ # @!attribute created_by_automod
16
+ # @return [Boolean]
17
+ attr_accessor :created_by_automod
18
+ # @!attribute updated_at
19
+ # @return [DateTime]
20
+ attr_accessor :updated_at
21
+ # @!attribute approved_at
22
+ # @return [DateTime]
23
+ attr_accessor :approved_at
24
+ # @!attribute reason
13
25
  # @return [String]
14
- attr_accessor :duration
15
- # @!attribute item_id
16
- # @return [String] Unique identifier of the created moderation item
17
- attr_accessor :item_id
26
+ attr_accessor :reason
27
+ # @!attribute rejected_at
28
+ # @return [DateTime]
29
+ attr_accessor :rejected_at
30
+ # @!attribute reviewed_at
31
+ # @return [DateTime]
32
+ attr_accessor :reviewed_at
33
+ # @!attribute reviewed_by
34
+ # @return [String]
35
+ attr_accessor :reviewed_by
36
+ # @!attribute target_message_id
37
+ # @return [String]
38
+ attr_accessor :target_message_id
39
+ # @!attribute custom
40
+ # @return [Object]
41
+ attr_accessor :custom
42
+ # @!attribute details
43
+ # @return [FlagDetails]
44
+ attr_accessor :details
45
+ # @!attribute target_message
46
+ # @return [MessageResponse]
47
+ attr_accessor :target_message
48
+ # @!attribute target_user
49
+ # @return [UserResponse]
50
+ attr_accessor :target_user
51
+ # @!attribute user
52
+ # @return [UserResponse]
53
+ attr_accessor :user
18
54
 
19
55
  # Initialize with attributes
20
56
  def initialize(attributes = {})
21
57
  super(attributes)
22
- @duration = attributes[:duration] || attributes['duration']
23
- @item_id = attributes[:item_id] || attributes['item_id']
58
+ @created_at = attributes[:created_at] || attributes['created_at']
59
+ @created_by_automod = attributes[:created_by_automod] || attributes['created_by_automod']
60
+ @updated_at = attributes[:updated_at] || attributes['updated_at']
61
+ @approved_at = attributes[:approved_at] || attributes['approved_at'] || nil
62
+ @reason = attributes[:reason] || attributes['reason'] || nil
63
+ @rejected_at = attributes[:rejected_at] || attributes['rejected_at'] || nil
64
+ @reviewed_at = attributes[:reviewed_at] || attributes['reviewed_at'] || nil
65
+ @reviewed_by = attributes[:reviewed_by] || attributes['reviewed_by'] || nil
66
+ @target_message_id = attributes[:target_message_id] || attributes['target_message_id'] || nil
67
+ @custom = attributes[:custom] || attributes['custom'] || nil
68
+ @details = attributes[:details] || attributes['details'] || nil
69
+ @target_message = attributes[:target_message] || attributes['target_message'] || nil
70
+ @target_user = attributes[:target_user] || attributes['target_user'] || nil
71
+ @user = attributes[:user] || attributes['user'] || nil
24
72
  end
25
73
 
26
74
  # Override field mappings for JSON serialization
27
75
  def self.json_field_mappings
28
76
  {
29
- duration: 'duration',
30
- item_id: 'item_id'
77
+ created_at: 'created_at',
78
+ created_by_automod: 'created_by_automod',
79
+ updated_at: 'updated_at',
80
+ approved_at: 'approved_at',
81
+ reason: 'reason',
82
+ rejected_at: 'rejected_at',
83
+ reviewed_at: 'reviewed_at',
84
+ reviewed_by: 'reviewed_by',
85
+ target_message_id: 'target_message_id',
86
+ custom: 'custom',
87
+ details: 'details',
88
+ target_message: 'target_message',
89
+ target_user: 'target_user',
90
+ user: 'user'
31
91
  }
32
92
  end
33
93
  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 FloodConfig < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute identical
13
+ # @return [FloodIdenticalConfig]
14
+ attr_accessor :identical
15
+ # @!attribute similar
16
+ # @return [FloodSimilarConfig]
17
+ attr_accessor :similar
18
+
19
+ # Initialize with attributes
20
+ def initialize(attributes = {})
21
+ super(attributes)
22
+ @identical = attributes[:identical] || attributes['identical'] || nil
23
+ @similar = attributes[:similar] || attributes['similar'] || nil
24
+ end
25
+
26
+ # Override field mappings for JSON serialization
27
+ def self.json_field_mappings
28
+ {
29
+ identical: 'identical',
30
+ similar: 'similar'
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 FloodIdenticalConfig < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute action
13
+ # @return [String]
14
+ attr_accessor :action
15
+ # @!attribute enabled
16
+ # @return [Boolean]
17
+ attr_accessor :enabled
18
+ # @!attribute threshold
19
+ # @return [Integer]
20
+ attr_accessor :threshold
21
+ # @!attribute time_window
22
+ # @return [String]
23
+ attr_accessor :time_window
24
+
25
+ # Initialize with attributes
26
+ def initialize(attributes = {})
27
+ super(attributes)
28
+ @action = attributes[:action] || attributes['action'] || nil
29
+ @enabled = attributes[:enabled] || attributes['enabled'] || nil
30
+ @threshold = attributes[:threshold] || attributes['threshold'] || nil
31
+ @time_window = attributes[:time_window] || attributes['time_window'] || nil
32
+ end
33
+
34
+ # Override field mappings for JSON serialization
35
+ def self.json_field_mappings
36
+ {
37
+ action: 'action',
38
+ enabled: 'enabled',
39
+ threshold: 'threshold',
40
+ time_window: 'time_window'
41
+ }
42
+ end
43
+ end
44
+ end
45
+ end
46
+ 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 FloodSimilarConfig < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute action
13
+ # @return [String]
14
+ attr_accessor :action
15
+ # @!attribute enabled
16
+ # @return [Boolean]
17
+ attr_accessor :enabled
18
+ # @!attribute similarity_distance
19
+ # @return [Integer]
20
+ attr_accessor :similarity_distance
21
+ # @!attribute threshold
22
+ # @return [Integer]
23
+ attr_accessor :threshold
24
+ # @!attribute time_window
25
+ # @return [String]
26
+ attr_accessor :time_window
27
+
28
+ # Initialize with attributes
29
+ def initialize(attributes = {})
30
+ super(attributes)
31
+ @action = attributes[:action] || attributes['action'] || nil
32
+ @enabled = attributes[:enabled] || attributes['enabled'] || nil
33
+ @similarity_distance = attributes[:similarity_distance] || attributes['similarity_distance'] || nil
34
+ @threshold = attributes[:threshold] || attributes['threshold'] || nil
35
+ @time_window = attributes[:time_window] || attributes['time_window'] || nil
36
+ end
37
+
38
+ # Override field mappings for JSON serialization
39
+ def self.json_field_mappings
40
+ {
41
+ action: 'action',
42
+ enabled: 'enabled',
43
+ similarity_distance: 'similarity_distance',
44
+ threshold: 'threshold',
45
+ time_window: 'time_window'
46
+ }
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -26,7 +26,7 @@ module GetStream
26
26
  # @return [Boolean] Whether to create a notification activity for this follow
27
27
  attr_accessor :create_notification_activity
28
28
  # @!attribute create_users
29
- # @return [Boolean] If true, auto-creates users referenced by the source and target FIDs when they don't already exist. Server-side only. Defaults to false. For FollowBatch/GetOrCreateFollows, use the top-level create_users field; per-item follows[i].create_users is rejected.
29
+ # @return [Boolean] If true, auto-creates users referenced by the source and target FIDs when they don't already exist. Server-side only. Defaults to false. Use directly on single follow endpoints (Follow, GetOrCreateFollow). On batch endpoints (FollowBatch, GetOrCreateFollows), use the top-level create_users field; per-item follows[i].create_users is rejected.
30
30
  attr_accessor :create_users
31
31
  # @!attribute enrich_own_fields
32
32
  # @return [Boolean] If true, enriches the follow's source_feed and target_feed with own_* fields (own_follows, own_followings, own_capabilities, own_membership). Defaults to false for performance.