moderation_api 2.17.1 → 2.19.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7ee37a4543f7677e008592f1f3057179576b16e8094952e691cb994016c45900
4
- data.tar.gz: ed3ed0f245d52ca87a16a7285f8996b16af07e29ad54e646cf73130082c693a7
3
+ metadata.gz: 4b9c1b6aa5f3251dc19f0426fe165ec8d27a0e843137516bff798dc1b34d9399
4
+ data.tar.gz: dc8cb90638e453b4d4b5176c6e4b5bcdda193aebc2c826c0321e23d807ec6a95
5
5
  SHA512:
6
- metadata.gz: 728e49f20b92bb7be75ca53d6590aafcc035395b168c427ddc930d3c81defaa1e7c467b7bfe07fbdeff890373899dbf66a8cfbd257de23e5f005f4fca6e3e4a2
7
- data.tar.gz: 281558ed8d1dfff1d17827902fe699a61766ab333b1254d763f37c131cd583d81f44705ccf270cb9426cdb42cdf87e575c16595632a9b6e854fbcc6b7f5ff359
6
+ metadata.gz: c304cf809df806749a858df7f27f5bc988c32bd7618f0e3cd77ced5d24ca72e66a988f50f3ba51344a993b86144901875e3f8fd94a152304e5fb3734cfb240c6
7
+ data.tar.gz: a2c82a50b3b79a83611946fbbfa3df1b7e0c831314226456b4f46460886389b15b91febff04a4e369ab20d593fdacfa3385378f938445d32b68635aa57c689ae
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.19.0 (2026-06-01)
4
+
5
+ Full Changelog: [v2.18.0...v2.19.0](https://github.com/moderation-api/sdk-ruby/compare/v2.18.0...v2.19.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([c97f9da](https://github.com/moderation-api/sdk-ruby/commit/c97f9da47da0c1ce96b1ef07836273e1ba398ac8))
10
+
11
+ ## 2.18.0 (2026-05-19)
12
+
13
+ Full Changelog: [v2.17.1...v2.18.0](https://github.com/moderation-api/sdk-ruby/compare/v2.17.1...v2.18.0)
14
+
15
+ ### Features
16
+
17
+ * **api:** api update ([0b267b1](https://github.com/moderation-api/sdk-ruby/commit/0b267b13d3574e2c3b9d88114502d81541f595c1))
18
+
3
19
  ## 2.17.1 (2026-05-14)
4
20
 
5
21
  Full Changelog: [v2.17.0...v2.17.1](https://github.com/moderation-api/sdk-ruby/compare/v2.17.0...v2.17.1)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "moderation_api", "~> 2.17.1"
18
+ gem "moderation_api", "~> 2.19.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -30,7 +30,7 @@ moderation_api = ModerationAPI::Client.new(
30
30
  secret_key: ENV["MODAPI_SECRET_KEY"] # This is the default and can be omitted
31
31
  )
32
32
 
33
- response = moderation_api.content.submit(content: {text: "x", type: "text"})
33
+ response = moderation_api.content.submit(content: {text: "text", type: "text"})
34
34
 
35
35
  puts(response.recommendation)
36
36
  ```
@@ -41,7 +41,7 @@ When the library is unable to connect to the API, or if the API returns a non-su
41
41
 
42
42
  ```ruby
43
43
  begin
44
- content = moderation_api.content.submit(content: {text: "x", type: "text"})
44
+ content = moderation_api.content.submit(content: {text: "text", type: "text"})
45
45
  rescue ModerationAPI::Errors::APIConnectionError => e
46
46
  puts("The server could not be reached")
47
47
  puts(e.cause) # an underlying Exception, likely raised within `net/http`
@@ -84,7 +84,7 @@ moderation_api = ModerationAPI::Client.new(
84
84
  )
85
85
 
86
86
  # Or, configure per-request:
87
- moderation_api.content.submit(content: {text: "x", type: "text"}, request_options: {max_retries: 5})
87
+ moderation_api.content.submit(content: {text: "text", type: "text"}, request_options: {max_retries: 5})
88
88
  ```
89
89
 
90
90
  ### Timeouts
@@ -98,7 +98,7 @@ moderation_api = ModerationAPI::Client.new(
98
98
  )
99
99
 
100
100
  # Or, configure per-request:
101
- moderation_api.content.submit(content: {text: "x", type: "text"}, request_options: {timeout: 5})
101
+ moderation_api.content.submit(content: {text: "text", type: "text"}, request_options: {timeout: 5})
102
102
  ```
103
103
 
104
104
  On timeout, `ModerationAPI::Errors::APITimeoutError` is raised.
@@ -130,7 +130,7 @@ Note: the `extra_` parameters of the same name overrides the documented paramete
130
130
  ```ruby
131
131
  response =
132
132
  moderation_api.content.submit(
133
- content: {text: "x", type: "text"},
133
+ content: {text: "text", type: "text"},
134
134
  request_options: {
135
135
  extra_query: {my_query_parameter: value},
136
136
  extra_body: {my_body_parameter: value},
@@ -176,18 +176,20 @@ This library provides comprehensive [RBI](https://sorbet.org/docs/rbi) definitio
176
176
  You can provide typesafe request parameters like so:
177
177
 
178
178
  ```ruby
179
- moderation_api.content.submit(content: ModerationAPI::ContentSubmitParams::Content::Text.new(text: "x"))
179
+ moderation_api.content.submit(
180
+ content: ModerationAPI::ContentSubmitParams::Content::Text.new(text: "text")
181
+ )
180
182
  ```
181
183
 
182
184
  Or, equivalently:
183
185
 
184
186
  ```ruby
185
187
  # Hashes work, but are not typesafe:
186
- moderation_api.content.submit(content: {text: "x", type: "text"})
188
+ moderation_api.content.submit(content: {text: "text", type: "text"})
187
189
 
188
190
  # You can also splat a full Params class:
189
191
  params = ModerationAPI::ContentSubmitParams.new(
190
- content: ModerationAPI::ContentSubmitParams::Content::Text.new(text: "x")
192
+ content: ModerationAPI::ContentSubmitParams::Content::Text.new(text: "text")
191
193
  )
192
194
  moderation_api.content.submit(**params)
193
195
  ```
@@ -59,7 +59,7 @@ module ModerationAPI
59
59
  # @!attribute policies
60
60
  # (Enterprise) override the channel policies for this moderation request only.
61
61
  #
62
- # @return [Array<ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline>, nil]
62
+ # @return [Array<ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::LowQualityContent, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline>, nil]
63
63
  optional :policies,
64
64
  -> { ModerationAPI::Internal::Type::ArrayOf[union: ModerationAPI::ContentSubmitParams::Policy] }
65
65
 
@@ -90,7 +90,7 @@ module ModerationAPI
90
90
  #
91
91
  # @param meta_type [Symbol, ModerationAPI::Models::ContentSubmitParams::MetaType] The meta type of content being moderated
92
92
  #
93
- # @param policies [Array<ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline>] (Enterprise) override the channel policies for this moderation request only.
93
+ # @param policies [Array<ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::LowQualityContent, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline>] (Enterprise) override the channel policies for this moderation request only.
94
94
  #
95
95
  # @param timestamp [Float] Unix timestamp (in milliseconds) of when the content was created. Use if content
96
96
  #
@@ -403,6 +403,8 @@ module ModerationAPI
403
403
 
404
404
  variant -> { ModerationAPI::ContentSubmitParams::Policy::Spam }
405
405
 
406
+ variant -> { ModerationAPI::ContentSubmitParams::Policy::LowQualityContent }
407
+
406
408
  variant -> { ModerationAPI::ContentSubmitParams::Policy::SelfPromotion }
407
409
 
408
410
  variant -> { ModerationAPI::ContentSubmitParams::Policy::Political }
@@ -837,6 +839,43 @@ module ModerationAPI
837
839
  # @param id [Symbol, :spam]
838
840
  end
839
841
 
842
+ class LowQualityContent < ModerationAPI::Internal::Type::BaseModel
843
+ # @!attribute id
844
+ #
845
+ # @return [Symbol, :low_quality]
846
+ required :id, const: :low_quality
847
+
848
+ # @!attribute flag
849
+ #
850
+ # @return [Boolean]
851
+ required :flag, ModerationAPI::Internal::Type::Boolean
852
+
853
+ # @!attribute min_words
854
+ # Flag content with fewer than this many words as low-effort. Defaults to 3. Set
855
+ # to disable by omitting.
856
+ #
857
+ # @return [Integer, nil]
858
+ optional :min_words, Integer, api_name: :minWords
859
+
860
+ # @!attribute threshold
861
+ #
862
+ # @return [Float, nil]
863
+ optional :threshold, Float
864
+
865
+ # @!method initialize(flag:, min_words: nil, threshold: nil, id: :low_quality)
866
+ # Some parameter documentations has been truncated, see
867
+ # {ModerationAPI::Models::ContentSubmitParams::Policy::LowQualityContent} for more
868
+ # details.
869
+ #
870
+ # @param flag [Boolean]
871
+ #
872
+ # @param min_words [Integer] Flag content with fewer than this many words as low-effort. Defaults to 3. Set t
873
+ #
874
+ # @param threshold [Float]
875
+ #
876
+ # @param id [Symbol, :low_quality]
877
+ end
878
+
840
879
  class SelfPromotion < ModerationAPI::Internal::Type::BaseModel
841
880
  # @!attribute id
842
881
  #
@@ -1111,7 +1150,7 @@ module ModerationAPI
1111
1150
  end
1112
1151
 
1113
1152
  # @!method self.variants
1114
- # @return [Array(ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline)]
1153
+ # @return [Array(ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::LowQualityContent, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline)]
1115
1154
  end
1116
1155
  end
1117
1156
  end
@@ -24,7 +24,7 @@ module ModerationAPI
24
24
  #
25
25
  # @param meta_type [Symbol, ModerationAPI::Models::ContentSubmitParams::MetaType] The meta type of content being moderated
26
26
  #
27
- # @param policies [Array<ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline>] (Enterprise) override the channel policies for this moderation request only.
27
+ # @param policies [Array<ModerationAPI::Models::ContentSubmitParams::Policy::Toxicity, ModerationAPI::Models::ContentSubmitParams::Policy::PersonalInformation, ModerationAPI::Models::ContentSubmitParams::Policy::ToxicitySevere, ModerationAPI::Models::ContentSubmitParams::Policy::Hate, ModerationAPI::Models::ContentSubmitParams::Policy::Illicit, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitDrugs, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitAlcohol, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitFirearms, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitTobacco, ModerationAPI::Models::ContentSubmitParams::Policy::IllicitGambling, ModerationAPI::Models::ContentSubmitParams::Policy::Cannabis, ModerationAPI::Models::ContentSubmitParams::Policy::Adult, ModerationAPI::Models::ContentSubmitParams::Policy::Crypto, ModerationAPI::Models::ContentSubmitParams::Policy::Sexual, ModerationAPI::Models::ContentSubmitParams::Policy::Flirtation, ModerationAPI::Models::ContentSubmitParams::Policy::Profanity, ModerationAPI::Models::ContentSubmitParams::Policy::Violence, ModerationAPI::Models::ContentSubmitParams::Policy::SelfHarm, ModerationAPI::Models::ContentSubmitParams::Policy::Spam, ModerationAPI::Models::ContentSubmitParams::Policy::LowQualityContent, ModerationAPI::Models::ContentSubmitParams::Policy::SelfPromotion, ModerationAPI::Models::ContentSubmitParams::Policy::Political, ModerationAPI::Models::ContentSubmitParams::Policy::Religion, ModerationAPI::Models::ContentSubmitParams::Policy::CodeAbuse, ModerationAPI::Models::ContentSubmitParams::Policy::PiiMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLMasking, ModerationAPI::Models::ContentSubmitParams::Policy::URLRisk, ModerationAPI::Models::ContentSubmitParams::Policy::Guideline>] (Enterprise) override the channel policies for this moderation request only.
28
28
  #
29
29
  # @param timestamp [Float] Unix timestamp (in milliseconds) of when the content was created. Use if content
30
30
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ModerationAPI
4
- VERSION = "2.17.1"
4
+ VERSION = "2.19.0"
5
5
  end
@@ -111,6 +111,7 @@ module ModerationAPI
111
111
  ModerationAPI::ContentSubmitParams::Policy::Violence,
112
112
  ModerationAPI::ContentSubmitParams::Policy::SelfHarm,
113
113
  ModerationAPI::ContentSubmitParams::Policy::Spam,
114
+ ModerationAPI::ContentSubmitParams::Policy::LowQualityContent,
114
115
  ModerationAPI::ContentSubmitParams::Policy::SelfPromotion,
115
116
  ModerationAPI::ContentSubmitParams::Policy::Political,
116
117
  ModerationAPI::ContentSubmitParams::Policy::Religion,
@@ -150,6 +151,7 @@ module ModerationAPI
150
151
  ModerationAPI::ContentSubmitParams::Policy::Violence::OrHash,
151
152
  ModerationAPI::ContentSubmitParams::Policy::SelfHarm::OrHash,
152
153
  ModerationAPI::ContentSubmitParams::Policy::Spam::OrHash,
154
+ ModerationAPI::ContentSubmitParams::Policy::LowQualityContent::OrHash,
153
155
  ModerationAPI::ContentSubmitParams::Policy::SelfPromotion::OrHash,
154
156
  ModerationAPI::ContentSubmitParams::Policy::Political::OrHash,
155
157
  ModerationAPI::ContentSubmitParams::Policy::Religion::OrHash,
@@ -211,6 +213,7 @@ module ModerationAPI
211
213
  ModerationAPI::ContentSubmitParams::Policy::Violence::OrHash,
212
214
  ModerationAPI::ContentSubmitParams::Policy::SelfHarm::OrHash,
213
215
  ModerationAPI::ContentSubmitParams::Policy::Spam::OrHash,
216
+ ModerationAPI::ContentSubmitParams::Policy::LowQualityContent::OrHash,
214
217
  ModerationAPI::ContentSubmitParams::Policy::SelfPromotion::OrHash,
215
218
  ModerationAPI::ContentSubmitParams::Policy::Political::OrHash,
216
219
  ModerationAPI::ContentSubmitParams::Policy::Religion::OrHash,
@@ -292,6 +295,7 @@ module ModerationAPI
292
295
  ModerationAPI::ContentSubmitParams::Policy::Violence,
293
296
  ModerationAPI::ContentSubmitParams::Policy::SelfHarm,
294
297
  ModerationAPI::ContentSubmitParams::Policy::Spam,
298
+ ModerationAPI::ContentSubmitParams::Policy::LowQualityContent,
295
299
  ModerationAPI::ContentSubmitParams::Policy::SelfPromotion,
296
300
  ModerationAPI::ContentSubmitParams::Policy::Political,
297
301
  ModerationAPI::ContentSubmitParams::Policy::Religion,
@@ -800,6 +804,7 @@ module ModerationAPI
800
804
  ModerationAPI::ContentSubmitParams::Policy::Violence,
801
805
  ModerationAPI::ContentSubmitParams::Policy::SelfHarm,
802
806
  ModerationAPI::ContentSubmitParams::Policy::Spam,
807
+ ModerationAPI::ContentSubmitParams::Policy::LowQualityContent,
803
808
  ModerationAPI::ContentSubmitParams::Policy::SelfPromotion,
804
809
  ModerationAPI::ContentSubmitParams::Policy::Political,
805
810
  ModerationAPI::ContentSubmitParams::Policy::Religion,
@@ -1495,6 +1500,67 @@ module ModerationAPI
1495
1500
  end
1496
1501
  end
1497
1502
 
1503
+ class LowQualityContent < ModerationAPI::Internal::Type::BaseModel
1504
+ OrHash =
1505
+ T.type_alias do
1506
+ T.any(
1507
+ ModerationAPI::ContentSubmitParams::Policy::LowQualityContent,
1508
+ ModerationAPI::Internal::AnyHash
1509
+ )
1510
+ end
1511
+
1512
+ sig { returns(Symbol) }
1513
+ attr_accessor :id
1514
+
1515
+ sig { returns(T::Boolean) }
1516
+ attr_accessor :flag
1517
+
1518
+ # Flag content with fewer than this many words as low-effort. Defaults to 3. Set
1519
+ # to disable by omitting.
1520
+ sig { returns(T.nilable(Integer)) }
1521
+ attr_reader :min_words
1522
+
1523
+ sig { params(min_words: Integer).void }
1524
+ attr_writer :min_words
1525
+
1526
+ sig { returns(T.nilable(Float)) }
1527
+ attr_reader :threshold
1528
+
1529
+ sig { params(threshold: Float).void }
1530
+ attr_writer :threshold
1531
+
1532
+ sig do
1533
+ params(
1534
+ flag: T::Boolean,
1535
+ min_words: Integer,
1536
+ threshold: Float,
1537
+ id: Symbol
1538
+ ).returns(T.attached_class)
1539
+ end
1540
+ def self.new(
1541
+ flag:,
1542
+ # Flag content with fewer than this many words as low-effort. Defaults to 3. Set
1543
+ # to disable by omitting.
1544
+ min_words: nil,
1545
+ threshold: nil,
1546
+ id: :low_quality
1547
+ )
1548
+ end
1549
+
1550
+ sig do
1551
+ override.returns(
1552
+ {
1553
+ id: Symbol,
1554
+ flag: T::Boolean,
1555
+ min_words: Integer,
1556
+ threshold: Float
1557
+ }
1558
+ )
1559
+ end
1560
+ def to_hash
1561
+ end
1562
+ end
1563
+
1498
1564
  class SelfPromotion < ModerationAPI::Internal::Type::BaseModel
1499
1565
  OrHash =
1500
1566
  T.type_alias do
@@ -42,6 +42,7 @@ module ModerationAPI
42
42
  ModerationAPI::ContentSubmitParams::Policy::Violence::OrHash,
43
43
  ModerationAPI::ContentSubmitParams::Policy::SelfHarm::OrHash,
44
44
  ModerationAPI::ContentSubmitParams::Policy::Spam::OrHash,
45
+ ModerationAPI::ContentSubmitParams::Policy::LowQualityContent::OrHash,
45
46
  ModerationAPI::ContentSubmitParams::Policy::SelfPromotion::OrHash,
46
47
  ModerationAPI::ContentSubmitParams::Policy::Political::OrHash,
47
48
  ModerationAPI::ContentSubmitParams::Policy::Religion::OrHash,
@@ -293,6 +293,7 @@ module ModerationAPI
293
293
  | ModerationAPI::ContentSubmitParams::Policy::Violence
294
294
  | ModerationAPI::ContentSubmitParams::Policy::SelfHarm
295
295
  | ModerationAPI::ContentSubmitParams::Policy::Spam
296
+ | ModerationAPI::ContentSubmitParams::Policy::LowQualityContent
296
297
  | ModerationAPI::ContentSubmitParams::Policy::SelfPromotion
297
298
  | ModerationAPI::ContentSubmitParams::Policy::Political
298
299
  | ModerationAPI::ContentSubmitParams::Policy::Religion
@@ -680,6 +681,37 @@ module ModerationAPI
680
681
  def to_hash: -> { id: :spam, flag: bool, threshold: Float }
681
682
  end
682
683
 
684
+ type low_quality_content =
685
+ { id: :low_quality, flag: bool, min_words: Integer, threshold: Float }
686
+
687
+ class LowQualityContent < ModerationAPI::Internal::Type::BaseModel
688
+ attr_accessor id: :low_quality
689
+
690
+ attr_accessor flag: bool
691
+
692
+ attr_reader min_words: Integer?
693
+
694
+ def min_words=: (Integer) -> Integer
695
+
696
+ attr_reader threshold: Float?
697
+
698
+ def threshold=: (Float) -> Float
699
+
700
+ def initialize: (
701
+ flag: bool,
702
+ ?min_words: Integer,
703
+ ?threshold: Float,
704
+ ?id: :low_quality
705
+ ) -> void
706
+
707
+ def to_hash: -> {
708
+ id: :low_quality,
709
+ flag: bool,
710
+ min_words: Integer,
711
+ threshold: Float
712
+ }
713
+ end
714
+
683
715
  type self_promotion =
684
716
  { id: :self_promotion, flag: bool, threshold: Float }
685
717
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: moderation_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.17.1
4
+ version: 2.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Moderation API
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-05-14 00:00:00.000000000 Z
11
+ date: 2026-06-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi