getstream-ruby 6.1.0 → 7.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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +22 -6
  3. data/lib/getstream_ruby/client.rb +63 -5
  4. data/lib/getstream_ruby/configuration.rb +32 -5
  5. data/lib/getstream_ruby/generated/common_client.rb +26 -0
  6. data/lib/getstream_ruby/generated/feed.rb +3 -1
  7. data/lib/getstream_ruby/generated/feeds_client.rb +3 -1
  8. data/lib/getstream_ruby/generated/models/add_activity_request.rb +5 -0
  9. data/lib/getstream_ruby/generated/models/add_reaction_request.rb +5 -0
  10. data/lib/getstream_ruby/generated/models/bodyguard_profile_summary.rb +6 -1
  11. data/lib/getstream_ruby/generated/models/chat_draft_payload_response.rb +91 -0
  12. data/lib/getstream_ruby/generated/models/chat_draft_response.rb +56 -0
  13. data/lib/getstream_ruby/generated/models/chat_message_response.rb +59 -4
  14. data/lib/getstream_ruby/generated/models/chat_moderation_v2_response.rb +66 -0
  15. data/lib/getstream_ruby/generated/models/chat_reaction_group_response.rb +51 -0
  16. data/lib/getstream_ruby/generated/models/chat_reaction_group_user_response.rb +41 -0
  17. data/lib/getstream_ruby/generated/models/chat_reaction_response.rb +66 -0
  18. data/lib/getstream_ruby/generated/models/chat_reminder_response_data.rb +66 -0
  19. data/lib/getstream_ruby/generated/models/chat_shared_location_response_data.rb +76 -0
  20. data/lib/getstream_ruby/generated/models/delete_feeds_batch_request.rb +6 -1
  21. data/lib/getstream_ruby/generated/models/feeds_activity_location.rb +36 -0
  22. data/lib/getstream_ruby/generated/models/feeds_bookmark_response.rb +61 -0
  23. data/lib/getstream_ruby/generated/models/feeds_enriched_collection_response.rb +61 -0
  24. data/lib/getstream_ruby/generated/models/feeds_feed_response.rb +116 -0
  25. data/lib/getstream_ruby/generated/models/feeds_notification_comment.rb +46 -0
  26. data/lib/getstream_ruby/generated/models/feeds_notification_context.rb +36 -0
  27. data/lib/getstream_ruby/generated/models/feeds_notification_parent_activity.rb +51 -0
  28. data/lib/getstream_ruby/generated/models/feeds_notification_target.rb +71 -0
  29. data/lib/getstream_ruby/generated/models/feeds_notification_trigger.rb +46 -0
  30. data/lib/getstream_ruby/generated/models/feeds_reaction_group_response.rb +3 -3
  31. data/lib/getstream_ruby/generated/models/feeds_reaction_response.rb +6 -6
  32. data/lib/getstream_ruby/generated/models/feeds_v3_activity_response.rb +66 -6
  33. data/lib/getstream_ruby/generated/models/feeds_v3_comment_response.rb +17 -2
  34. data/lib/getstream_ruby/generated/models/labels_request.rb +5 -0
  35. data/lib/getstream_ruby/generated/models/query_bookmarks_request.rb +11 -1
  36. data/lib/getstream_ruby/generated/models/search_roles_response.rb +36 -0
  37. data/lib/getstream_ruby/generated/models/submit_moderation_feedback_request.rb +71 -0
  38. data/lib/getstream_ruby/generated/models/submit_moderation_feedback_response.rb +31 -0
  39. data/lib/getstream_ruby/generated/models/update_app_request.rb +5 -0
  40. data/lib/getstream_ruby/generated/models/upsert_activities_request.rb +5 -0
  41. data/lib/getstream_ruby/generated/moderation_client.rb +17 -0
  42. data/lib/getstream_ruby/generated/webhook.rb +401 -170
  43. data/lib/getstream_ruby/version.rb +1 -1
  44. data/lib/getstream_ruby.rb +2 -3
  45. metadata +22 -2
@@ -0,0 +1,71 @@
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 SubmitModerationFeedbackRequest < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute message
13
+ # @return [String] The moderated content the moderator is providing feedback on
14
+ attr_accessor :message
15
+ # @!attribute published_at
16
+ # @return [String] Original publication time of the moderated content (RFC3339)
17
+ attr_accessor :published_at
18
+ # @!attribute reference
19
+ # @return [String] Provider-side reference identifying the moderated content
20
+ attr_accessor :reference
21
+ # @!attribute channel_id
22
+ # @return [String] Optional moderation channel UUID for context
23
+ attr_accessor :channel_id
24
+ # @!attribute current_recommended_action
25
+ # @return [String] Action originally produced by the moderation system
26
+ attr_accessor :current_recommended_action
27
+ # @!attribute description
28
+ # @return [String] Optional free-form note explaining why the classification was wrong
29
+ attr_accessor :description
30
+ # @!attribute expected_recommended_action
31
+ # @return [String] Optional moderator-supplied action
32
+ attr_accessor :expected_recommended_action
33
+ # @!attribute current_labels
34
+ # @return [Array<String>] Classifications originally produced by the moderation system
35
+ attr_accessor :current_labels
36
+ # @!attribute expected_labels
37
+ # @return [Array<String>] Optional moderator-supplied classifications (up to 16 entries)
38
+ attr_accessor :expected_labels
39
+
40
+ # Initialize with attributes
41
+ def initialize(attributes = {})
42
+ super(attributes)
43
+ @message = attributes[:message] || attributes['message']
44
+ @published_at = attributes[:published_at] || attributes['published_at']
45
+ @reference = attributes[:reference] || attributes['reference']
46
+ @channel_id = attributes[:channel_id] || attributes['channel_id'] || nil
47
+ @current_recommended_action = attributes[:current_recommended_action] || attributes['current_recommended_action'] || nil
48
+ @description = attributes[:description] || attributes['description'] || nil
49
+ @expected_recommended_action = attributes[:expected_recommended_action] || attributes['expected_recommended_action'] || nil
50
+ @current_labels = attributes[:current_labels] || attributes['current_labels'] || nil
51
+ @expected_labels = attributes[:expected_labels] || attributes['expected_labels'] || nil
52
+ end
53
+
54
+ # Override field mappings for JSON serialization
55
+ def self.json_field_mappings
56
+ {
57
+ message: 'message',
58
+ published_at: 'published_at',
59
+ reference: 'reference',
60
+ channel_id: 'channel_id',
61
+ current_recommended_action: 'current_recommended_action',
62
+ description: 'description',
63
+ expected_recommended_action: 'expected_recommended_action',
64
+ current_labels: 'current_labels',
65
+ expected_labels: 'expected_labels'
66
+ }
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -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
+ #
9
+ class SubmitModerationFeedbackResponse < GetStream::BaseModel
10
+
11
+ # Model attributes
12
+ # @!attribute duration
13
+ # @return [String]
14
+ attr_accessor :duration
15
+
16
+ # Initialize with attributes
17
+ def initialize(attributes = {})
18
+ super(attributes)
19
+ @duration = attributes[:duration] || attributes['duration']
20
+ end
21
+
22
+ # Override field mappings for JSON serialization
23
+ def self.json_field_mappings
24
+ {
25
+ duration: 'duration'
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -33,6 +33,9 @@ module GetStream
33
33
  # @!attribute disable_permissions_checks
34
34
  # @return [Boolean]
35
35
  attr_accessor :disable_permissions_checks
36
+ # @!attribute enable_hook_payload_compression
37
+ # @return [Boolean]
38
+ attr_accessor :enable_hook_payload_compression
36
39
  # @!attribute enforce_unique_usernames
37
40
  # @return [String]
38
41
  attr_accessor :enforce_unique_usernames
@@ -171,6 +174,7 @@ module GetStream
171
174
  @custom_action_handler_url = attributes[:custom_action_handler_url] || attributes['custom_action_handler_url'] || nil
172
175
  @disable_auth_checks = attributes[:disable_auth_checks] || attributes['disable_auth_checks'] || nil
173
176
  @disable_permissions_checks = attributes[:disable_permissions_checks] || attributes['disable_permissions_checks'] || nil
177
+ @enable_hook_payload_compression = attributes[:enable_hook_payload_compression] || attributes['enable_hook_payload_compression'] || nil
174
178
  @enforce_unique_usernames = attributes[:enforce_unique_usernames] || attributes['enforce_unique_usernames'] || nil
175
179
  @feeds_moderation_enabled = attributes[:feeds_moderation_enabled] || attributes['feeds_moderation_enabled'] || nil
176
180
  @feeds_v2_region = attributes[:feeds_v2_region] || attributes['feeds_v2_region'] || nil
@@ -226,6 +230,7 @@ module GetStream
226
230
  custom_action_handler_url: 'custom_action_handler_url',
227
231
  disable_auth_checks: 'disable_auth_checks',
228
232
  disable_permissions_checks: 'disable_permissions_checks',
233
+ enable_hook_payload_compression: 'enable_hook_payload_compression',
229
234
  enforce_unique_usernames: 'enforce_unique_usernames',
230
235
  feeds_moderation_enabled: 'feeds_moderation_enabled',
231
236
  feeds_v2_region: 'feeds_v2_region',
@@ -12,6 +12,9 @@ module GetStream
12
12
  # @!attribute activities
13
13
  # @return [Array<ActivityRequest>] List of activities to create or update
14
14
  attr_accessor :activities
15
+ # @!attribute create_users
16
+ # @return [Boolean] Server-side only. If true, auto-creates users referenced by activity user_id values that don't already exist. Default: false.
17
+ attr_accessor :create_users
15
18
  # @!attribute enrich_own_fields
16
19
  # @return [Boolean] If true, enriches the activities' current_feed with own_* fields (own_follows, own_followings, own_capabilities, own_membership). Defaults to false for performance.
17
20
  attr_accessor :enrich_own_fields
@@ -23,6 +26,7 @@ module GetStream
23
26
  def initialize(attributes = {})
24
27
  super(attributes)
25
28
  @activities = attributes[:activities] || attributes['activities']
29
+ @create_users = attributes[:create_users] || attributes['create_users'] || nil
26
30
  @enrich_own_fields = attributes[:enrich_own_fields] || attributes['enrich_own_fields'] || nil
27
31
  @force_moderation = attributes[:force_moderation] || attributes['force_moderation'] || nil
28
32
  end
@@ -31,6 +35,7 @@ module GetStream
31
35
  def self.json_field_mappings
32
36
  {
33
37
  activities: 'activities',
38
+ create_users: 'create_users',
34
39
  enrich_own_fields: 'enrich_own_fields',
35
40
  force_moderation: 'force_moderation'
36
41
  }
@@ -634,6 +634,23 @@ module GetStream
634
634
  )
635
635
  end
636
636
 
637
+ # Forward a moderator-supplied correction to the moderation feedback pipeline. Server-side only.
638
+ #
639
+ # @param submit_moderation_feedback_request [SubmitModerationFeedbackRequest]
640
+ # @return [Models::SubmitModerationFeedbackResponse]
641
+ def submit_moderation_feedback(submit_moderation_feedback_request)
642
+ path = '/api/v2/moderation/submit_moderation_feedback'
643
+ # Build request body
644
+ body = submit_moderation_feedback_request
645
+
646
+ # Make the API request
647
+ @client.make_request(
648
+ :post,
649
+ path,
650
+ body: body
651
+ )
652
+ end
653
+
637
654
  # Unban a user from a channel or globally.
638
655
  #
639
656
  # @param unban_request [UnbanRequest]