moderation_api 2.27.0 → 2.28.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: 95b95520c51da5cb3f0195033966c1a7f3b855fae6bb15d602a9a903b9bfe2a0
4
- data.tar.gz: 80fd1b6ed741e4a99d97c141f696b2927a534b3756ac5a8139b9e0dbcefa786e
3
+ metadata.gz: 0e4757c252f6790107baecfbb678def0e1f577fd9d0577a81bb0b3328f3d4c0a
4
+ data.tar.gz: 39ee089ed12c8918eb9707bbeb7d0d9f320a687f8a831095112276740f2f003f
5
5
  SHA512:
6
- metadata.gz: 3ac8756e94c8bfaf17969910d5a7266336f3c140dc87003b309e3033827ad65787a264e540efce5c57fffd3fe785a60e4b0963593ebae44254a33ca615219140
7
- data.tar.gz: 6a46cfb0c5d6f588f6f10d625f27c9110bd059a5b8013031c6e3e4f866fd0466848727c79cd9db75fceb7d41f7218d0c41add193b2ec268347166b36aa683e15
6
+ metadata.gz: 4c3a6526c1e64700a4e3575d87a587ab2337e03387f1693429d0dd3f167661009dd42eab2b878681bf3ca60edf2c1580450515e9aaeac153698e689cc40dd712
7
+ data.tar.gz: 29a7af7c2b41ce23a18c8e5beea528808ea5a6ebf22c0710d157b9ba5501734a956d086601b239882618b68c08c2b7bcd7b556e4a185d8d48b8511aef95e6eba
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.28.0 (2026-07-23)
4
+
5
+ Full Changelog: [v2.27.0...v2.28.0](https://github.com/moderation-api/sdk-ruby/compare/v2.27.0...v2.28.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([5db8ada](https://github.com/moderation-api/sdk-ruby/commit/5db8adafdfa072702d7e67b29c7a0f02598703d0))
10
+
3
11
  ## 2.27.0 (2026-07-20)
4
12
 
5
13
  Full Changelog: [v2.26.0...v2.27.0](https://github.com/moderation-api/sdk-ruby/compare/v2.26.0...v2.27.0)
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.27.0"
18
+ gem "moderation_api", "~> 2.28.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -652,10 +652,16 @@ module ModerationAPI
652
652
  # @return [Float]
653
653
  required :probability, Float
654
654
 
655
- # @!method initialize(id:, flagged:, probability:)
655
+ # @!attribute shadow_flagged
656
+ #
657
+ # @return [Boolean, nil]
658
+ optional :shadow_flagged, ModerationAPI::Internal::Type::Boolean, api_name: :shadowFlagged
659
+
660
+ # @!method initialize(id:, flagged:, probability:, shadow_flagged: nil)
656
661
  # @param id [String]
657
662
  # @param flagged [Boolean]
658
663
  # @param probability [Float]
664
+ # @param shadow_flagged [Boolean]
659
665
  end
660
666
  end
661
667
 
@@ -2900,7 +2900,18 @@ module ModerationAPI
2900
2900
  optional :matches,
2901
2901
  -> { ModerationAPI::Internal::Type::ArrayOf[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match] }
2902
2902
 
2903
- # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil)
2903
+ # @!attribute shadow_flagged
2904
+ # Whether this label crossed its threshold under a shadowed policy — reported for
2905
+ # visibility, never counted toward a flagging decision
2906
+ #
2907
+ # @return [Boolean, nil]
2908
+ optional :shadow_flagged, ModerationAPI::Internal::Type::Boolean
2909
+
2910
+ # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil, shadow_flagged: nil)
2911
+ # Some parameter documentations has been truncated, see
2912
+ # {ModerationAPI::Models::WebhookEvent::QueueItemResolved::Data::Object::Item::Label}
2913
+ # for more details.
2914
+ #
2904
2915
  # @param label [String] The label name
2905
2916
  #
2906
2917
  # @param score [Float] Confidence score between 0 and 1
@@ -2910,6 +2921,8 @@ module ModerationAPI
2910
2921
  # @param manual [Boolean] True if the label was applied manually by a moderator
2911
2922
  #
2912
2923
  # @param matches [Array<ModerationAPI::Models::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match>]
2924
+ #
2925
+ # @param shadow_flagged [Boolean] Whether this label crossed its threshold under a shadowed policy — reported for
2913
2926
 
2914
2927
  class Match < ModerationAPI::Internal::Type::BaseModel
2915
2928
  # @!attribute match
@@ -4258,7 +4271,18 @@ module ModerationAPI
4258
4271
  optional :matches,
4259
4272
  -> { ModerationAPI::Internal::Type::ArrayOf[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match] }
4260
4273
 
4261
- # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil)
4274
+ # @!attribute shadow_flagged
4275
+ # Whether this label crossed its threshold under a shadowed policy — reported for
4276
+ # visibility, never counted toward a flagging decision
4277
+ #
4278
+ # @return [Boolean, nil]
4279
+ optional :shadow_flagged, ModerationAPI::Internal::Type::Boolean
4280
+
4281
+ # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil, shadow_flagged: nil)
4282
+ # Some parameter documentations has been truncated, see
4283
+ # {ModerationAPI::Models::WebhookEvent::QueueItemAction::Data::Object::Item::Label}
4284
+ # for more details.
4285
+ #
4262
4286
  # @param label [String] The label name
4263
4287
  #
4264
4288
  # @param score [Float] Confidence score between 0 and 1
@@ -4268,6 +4292,8 @@ module ModerationAPI
4268
4292
  # @param manual [Boolean] True if the label was applied manually by a moderator
4269
4293
  #
4270
4294
  # @param matches [Array<ModerationAPI::Models::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match>]
4295
+ #
4296
+ # @param shadow_flagged [Boolean] Whether this label crossed its threshold under a shadowed policy — reported for
4271
4297
 
4272
4298
  class Match < ModerationAPI::Internal::Type::BaseModel
4273
4299
  # @!attribute match
@@ -5337,7 +5363,18 @@ module ModerationAPI
5337
5363
  optional :matches,
5338
5364
  -> { ModerationAPI::Internal::Type::ArrayOf[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match] }
5339
5365
 
5340
- # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil)
5366
+ # @!attribute shadow_flagged
5367
+ # Whether this label crossed its threshold under a shadowed policy — reported for
5368
+ # visibility, never counted toward a flagging decision
5369
+ #
5370
+ # @return [Boolean, nil]
5371
+ optional :shadow_flagged, ModerationAPI::Internal::Type::Boolean
5372
+
5373
+ # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil, shadow_flagged: nil)
5374
+ # Some parameter documentations has been truncated, see
5375
+ # {ModerationAPI::Models::WebhookEvent::QueueItemRejected::Data::Object::Item::Label}
5376
+ # for more details.
5377
+ #
5341
5378
  # @param label [String] The label name
5342
5379
  #
5343
5380
  # @param score [Float] Confidence score between 0 and 1
@@ -5347,6 +5384,8 @@ module ModerationAPI
5347
5384
  # @param manual [Boolean] True if the label was applied manually by a moderator
5348
5385
  #
5349
5386
  # @param matches [Array<ModerationAPI::Models::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match>]
5387
+ #
5388
+ # @param shadow_flagged [Boolean] Whether this label crossed its threshold under a shadowed policy — reported for
5350
5389
 
5351
5390
  class Match < ModerationAPI::Internal::Type::BaseModel
5352
5391
  # @!attribute match
@@ -6413,7 +6452,18 @@ module ModerationAPI
6413
6452
  optional :matches,
6414
6453
  -> { ModerationAPI::Internal::Type::ArrayOf[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match] }
6415
6454
 
6416
- # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil)
6455
+ # @!attribute shadow_flagged
6456
+ # Whether this label crossed its threshold under a shadowed policy — reported for
6457
+ # visibility, never counted toward a flagging decision
6458
+ #
6459
+ # @return [Boolean, nil]
6460
+ optional :shadow_flagged, ModerationAPI::Internal::Type::Boolean
6461
+
6462
+ # @!method initialize(label:, score:, flagged: nil, manual: nil, matches: nil, shadow_flagged: nil)
6463
+ # Some parameter documentations has been truncated, see
6464
+ # {ModerationAPI::Models::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label}
6465
+ # for more details.
6466
+ #
6417
6467
  # @param label [String] The label name
6418
6468
  #
6419
6469
  # @param score [Float] Confidence score between 0 and 1
@@ -6423,6 +6473,8 @@ module ModerationAPI
6423
6473
  # @param manual [Boolean] True if the label was applied manually by a moderator
6424
6474
  #
6425
6475
  # @param matches [Array<ModerationAPI::Models::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match>]
6476
+ #
6477
+ # @param shadow_flagged [Boolean] Whether this label crossed its threshold under a shadowed policy — reported for
6426
6478
 
6427
6479
  class Match < ModerationAPI::Internal::Type::BaseModel
6428
6480
  # @!attribute match
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ModerationAPI
4
- VERSION = "2.27.0"
4
+ VERSION = "2.28.0"
5
5
  end
@@ -1208,19 +1208,31 @@ module ModerationAPI
1208
1208
  sig { returns(Float) }
1209
1209
  attr_accessor :probability
1210
1210
 
1211
+ sig { returns(T.nilable(T::Boolean)) }
1212
+ attr_reader :shadow_flagged
1213
+
1214
+ sig { params(shadow_flagged: T::Boolean).void }
1215
+ attr_writer :shadow_flagged
1216
+
1211
1217
  sig do
1212
1218
  params(
1213
1219
  id: String,
1214
1220
  flagged: T::Boolean,
1215
- probability: Float
1221
+ probability: Float,
1222
+ shadow_flagged: T::Boolean
1216
1223
  ).returns(T.attached_class)
1217
1224
  end
1218
- def self.new(id:, flagged:, probability:)
1225
+ def self.new(id:, flagged:, probability:, shadow_flagged: nil)
1219
1226
  end
1220
1227
 
1221
1228
  sig do
1222
1229
  override.returns(
1223
- { id: String, flagged: T::Boolean, probability: Float }
1230
+ {
1231
+ id: String,
1232
+ flagged: T::Boolean,
1233
+ probability: Float,
1234
+ shadow_flagged: T::Boolean
1235
+ }
1224
1236
  )
1225
1237
  end
1226
1238
  def to_hash
@@ -5322,6 +5322,14 @@ module ModerationAPI
5322
5322
  end
5323
5323
  attr_writer :matches
5324
5324
 
5325
+ # Whether this label crossed its threshold under a shadowed policy — reported for
5326
+ # visibility, never counted toward a flagging decision
5327
+ sig { returns(T.nilable(T::Boolean)) }
5328
+ attr_reader :shadow_flagged
5329
+
5330
+ sig { params(shadow_flagged: T::Boolean).void }
5331
+ attr_writer :shadow_flagged
5332
+
5325
5333
  sig do
5326
5334
  params(
5327
5335
  label: String,
@@ -5331,7 +5339,8 @@ module ModerationAPI
5331
5339
  matches:
5332
5340
  T::Array[
5333
5341
  ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match::OrHash
5334
- ]
5342
+ ],
5343
+ shadow_flagged: T::Boolean
5335
5344
  ).returns(T.attached_class)
5336
5345
  end
5337
5346
  def self.new(
@@ -5343,7 +5352,10 @@ module ModerationAPI
5343
5352
  flagged: nil,
5344
5353
  # True if the label was applied manually by a moderator
5345
5354
  manual: nil,
5346
- matches: nil
5355
+ matches: nil,
5356
+ # Whether this label crossed its threshold under a shadowed policy — reported for
5357
+ # visibility, never counted toward a flagging decision
5358
+ shadow_flagged: nil
5347
5359
  )
5348
5360
  end
5349
5361
 
@@ -5357,7 +5369,8 @@ module ModerationAPI
5357
5369
  matches:
5358
5370
  T::Array[
5359
5371
  ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match
5360
- ]
5372
+ ],
5373
+ shadow_flagged: T::Boolean
5361
5374
  }
5362
5375
  )
5363
5376
  end
@@ -7806,6 +7819,14 @@ module ModerationAPI
7806
7819
  end
7807
7820
  attr_writer :matches
7808
7821
 
7822
+ # Whether this label crossed its threshold under a shadowed policy — reported for
7823
+ # visibility, never counted toward a flagging decision
7824
+ sig { returns(T.nilable(T::Boolean)) }
7825
+ attr_reader :shadow_flagged
7826
+
7827
+ sig { params(shadow_flagged: T::Boolean).void }
7828
+ attr_writer :shadow_flagged
7829
+
7809
7830
  sig do
7810
7831
  params(
7811
7832
  label: String,
@@ -7815,7 +7836,8 @@ module ModerationAPI
7815
7836
  matches:
7816
7837
  T::Array[
7817
7838
  ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match::OrHash
7818
- ]
7839
+ ],
7840
+ shadow_flagged: T::Boolean
7819
7841
  ).returns(T.attached_class)
7820
7842
  end
7821
7843
  def self.new(
@@ -7827,7 +7849,10 @@ module ModerationAPI
7827
7849
  flagged: nil,
7828
7850
  # True if the label was applied manually by a moderator
7829
7851
  manual: nil,
7830
- matches: nil
7852
+ matches: nil,
7853
+ # Whether this label crossed its threshold under a shadowed policy — reported for
7854
+ # visibility, never counted toward a flagging decision
7855
+ shadow_flagged: nil
7831
7856
  )
7832
7857
  end
7833
7858
 
@@ -7841,7 +7866,8 @@ module ModerationAPI
7841
7866
  matches:
7842
7867
  T::Array[
7843
7868
  ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match
7844
- ]
7869
+ ],
7870
+ shadow_flagged: T::Boolean
7845
7871
  }
7846
7872
  )
7847
7873
  end
@@ -9790,6 +9816,14 @@ module ModerationAPI
9790
9816
  end
9791
9817
  attr_writer :matches
9792
9818
 
9819
+ # Whether this label crossed its threshold under a shadowed policy — reported for
9820
+ # visibility, never counted toward a flagging decision
9821
+ sig { returns(T.nilable(T::Boolean)) }
9822
+ attr_reader :shadow_flagged
9823
+
9824
+ sig { params(shadow_flagged: T::Boolean).void }
9825
+ attr_writer :shadow_flagged
9826
+
9793
9827
  sig do
9794
9828
  params(
9795
9829
  label: String,
@@ -9799,7 +9833,8 @@ module ModerationAPI
9799
9833
  matches:
9800
9834
  T::Array[
9801
9835
  ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match::OrHash
9802
- ]
9836
+ ],
9837
+ shadow_flagged: T::Boolean
9803
9838
  ).returns(T.attached_class)
9804
9839
  end
9805
9840
  def self.new(
@@ -9811,7 +9846,10 @@ module ModerationAPI
9811
9846
  flagged: nil,
9812
9847
  # True if the label was applied manually by a moderator
9813
9848
  manual: nil,
9814
- matches: nil
9849
+ matches: nil,
9850
+ # Whether this label crossed its threshold under a shadowed policy — reported for
9851
+ # visibility, never counted toward a flagging decision
9852
+ shadow_flagged: nil
9815
9853
  )
9816
9854
  end
9817
9855
 
@@ -9825,7 +9863,8 @@ module ModerationAPI
9825
9863
  matches:
9826
9864
  T::Array[
9827
9865
  ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match
9828
- ]
9866
+ ],
9867
+ shadow_flagged: T::Boolean
9829
9868
  }
9830
9869
  )
9831
9870
  end
@@ -11772,6 +11811,14 @@ module ModerationAPI
11772
11811
  end
11773
11812
  attr_writer :matches
11774
11813
 
11814
+ # Whether this label crossed its threshold under a shadowed policy — reported for
11815
+ # visibility, never counted toward a flagging decision
11816
+ sig { returns(T.nilable(T::Boolean)) }
11817
+ attr_reader :shadow_flagged
11818
+
11819
+ sig { params(shadow_flagged: T::Boolean).void }
11820
+ attr_writer :shadow_flagged
11821
+
11775
11822
  sig do
11776
11823
  params(
11777
11824
  label: String,
@@ -11781,7 +11828,8 @@ module ModerationAPI
11781
11828
  matches:
11782
11829
  T::Array[
11783
11830
  ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match::OrHash
11784
- ]
11831
+ ],
11832
+ shadow_flagged: T::Boolean
11785
11833
  ).returns(T.attached_class)
11786
11834
  end
11787
11835
  def self.new(
@@ -11793,7 +11841,10 @@ module ModerationAPI
11793
11841
  flagged: nil,
11794
11842
  # True if the label was applied manually by a moderator
11795
11843
  manual: nil,
11796
- matches: nil
11844
+ matches: nil,
11845
+ # Whether this label crossed its threshold under a shadowed policy — reported for
11846
+ # visibility, never counted toward a flagging decision
11847
+ shadow_flagged: nil
11797
11848
  )
11798
11849
  end
11799
11850
 
@@ -11807,7 +11858,8 @@ module ModerationAPI
11807
11858
  matches:
11808
11859
  T::Array[
11809
11860
  ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match
11810
- ]
11861
+ ],
11862
+ shadow_flagged: T::Boolean
11811
11863
  }
11812
11864
  )
11813
11865
  end
@@ -483,7 +483,13 @@ module ModerationAPI
483
483
  labels: ::Array[ModerationAPI::Models::ContentSubmitResponse::Policy::ClassifierOutput::Label]
484
484
  }
485
485
 
486
- type label = { id: String, flagged: bool, probability: Float }
486
+ type label =
487
+ {
488
+ id: String,
489
+ flagged: bool,
490
+ probability: Float,
491
+ shadow_flagged: bool
492
+ }
487
493
 
488
494
  class Label < ModerationAPI::Internal::Type::BaseModel
489
495
  attr_accessor id: String
@@ -492,13 +498,23 @@ module ModerationAPI
492
498
 
493
499
  attr_accessor probability: Float
494
500
 
501
+ attr_reader shadow_flagged: bool?
502
+
503
+ def shadow_flagged=: (bool) -> bool
504
+
495
505
  def initialize: (
496
506
  id: String,
497
507
  flagged: bool,
498
- probability: Float
508
+ probability: Float,
509
+ ?shadow_flagged: bool
499
510
  ) -> void
500
511
 
501
- def to_hash: -> { id: String, flagged: bool, probability: Float }
512
+ def to_hash: -> {
513
+ id: String,
514
+ flagged: bool,
515
+ probability: Float,
516
+ shadow_flagged: bool
517
+ }
502
518
  end
503
519
  end
504
520
 
@@ -2153,7 +2153,8 @@ module ModerationAPI
2153
2153
  score: Float,
2154
2154
  flagged: bool,
2155
2155
  manual: bool,
2156
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match]
2156
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match],
2157
+ shadow_flagged: bool
2157
2158
  }
2158
2159
 
2159
2160
  class Label < ModerationAPI::Internal::Type::BaseModel
@@ -2175,12 +2176,17 @@ module ModerationAPI
2175
2176
  ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match]
2176
2177
  ) -> ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match]
2177
2178
 
2179
+ attr_reader shadow_flagged: bool?
2180
+
2181
+ def shadow_flagged=: (bool) -> bool
2182
+
2178
2183
  def initialize: (
2179
2184
  label: String,
2180
2185
  score: Float,
2181
2186
  ?flagged: bool,
2182
2187
  ?manual: bool,
2183
- ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match]
2188
+ ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match],
2189
+ ?shadow_flagged: bool
2184
2190
  ) -> void
2185
2191
 
2186
2192
  def to_hash: -> {
@@ -2188,7 +2194,8 @@ module ModerationAPI
2188
2194
  score: Float,
2189
2195
  flagged: bool,
2190
2196
  manual: bool,
2191
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match]
2197
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemResolved::Data::Object::Item::Label::Match],
2198
+ shadow_flagged: bool
2192
2199
  }
2193
2200
 
2194
2201
  type match =
@@ -3177,7 +3184,8 @@ module ModerationAPI
3177
3184
  score: Float,
3178
3185
  flagged: bool,
3179
3186
  manual: bool,
3180
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match]
3187
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match],
3188
+ shadow_flagged: bool
3181
3189
  }
3182
3190
 
3183
3191
  class Label < ModerationAPI::Internal::Type::BaseModel
@@ -3199,12 +3207,17 @@ module ModerationAPI
3199
3207
  ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match]
3200
3208
  ) -> ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match]
3201
3209
 
3210
+ attr_reader shadow_flagged: bool?
3211
+
3212
+ def shadow_flagged=: (bool) -> bool
3213
+
3202
3214
  def initialize: (
3203
3215
  label: String,
3204
3216
  score: Float,
3205
3217
  ?flagged: bool,
3206
3218
  ?manual: bool,
3207
- ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match]
3219
+ ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match],
3220
+ ?shadow_flagged: bool
3208
3221
  ) -> void
3209
3222
 
3210
3223
  def to_hash: -> {
@@ -3212,7 +3225,8 @@ module ModerationAPI
3212
3225
  score: Float,
3213
3226
  flagged: bool,
3214
3227
  manual: bool,
3215
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match]
3228
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAction::Data::Object::Item::Label::Match],
3229
+ shadow_flagged: bool
3216
3230
  }
3217
3231
 
3218
3232
  type match =
@@ -4006,7 +4020,8 @@ module ModerationAPI
4006
4020
  score: Float,
4007
4021
  flagged: bool,
4008
4022
  manual: bool,
4009
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match]
4023
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match],
4024
+ shadow_flagged: bool
4010
4025
  }
4011
4026
 
4012
4027
  class Label < ModerationAPI::Internal::Type::BaseModel
@@ -4028,12 +4043,17 @@ module ModerationAPI
4028
4043
  ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match]
4029
4044
  ) -> ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match]
4030
4045
 
4046
+ attr_reader shadow_flagged: bool?
4047
+
4048
+ def shadow_flagged=: (bool) -> bool
4049
+
4031
4050
  def initialize: (
4032
4051
  label: String,
4033
4052
  score: Float,
4034
4053
  ?flagged: bool,
4035
4054
  ?manual: bool,
4036
- ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match]
4055
+ ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match],
4056
+ ?shadow_flagged: bool
4037
4057
  ) -> void
4038
4058
 
4039
4059
  def to_hash: -> {
@@ -4041,7 +4061,8 @@ module ModerationAPI
4041
4061
  score: Float,
4042
4062
  flagged: bool,
4043
4063
  manual: bool,
4044
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match]
4064
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemRejected::Data::Object::Item::Label::Match],
4065
+ shadow_flagged: bool
4045
4066
  }
4046
4067
 
4047
4068
  type match =
@@ -4835,7 +4856,8 @@ module ModerationAPI
4835
4856
  score: Float,
4836
4857
  flagged: bool,
4837
4858
  manual: bool,
4838
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match]
4859
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match],
4860
+ shadow_flagged: bool
4839
4861
  }
4840
4862
 
4841
4863
  class Label < ModerationAPI::Internal::Type::BaseModel
@@ -4857,12 +4879,17 @@ module ModerationAPI
4857
4879
  ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match]
4858
4880
  ) -> ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match]
4859
4881
 
4882
+ attr_reader shadow_flagged: bool?
4883
+
4884
+ def shadow_flagged=: (bool) -> bool
4885
+
4860
4886
  def initialize: (
4861
4887
  label: String,
4862
4888
  score: Float,
4863
4889
  ?flagged: bool,
4864
4890
  ?manual: bool,
4865
- ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match]
4891
+ ?matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match],
4892
+ ?shadow_flagged: bool
4866
4893
  ) -> void
4867
4894
 
4868
4895
  def to_hash: -> {
@@ -4870,7 +4897,8 @@ module ModerationAPI
4870
4897
  score: Float,
4871
4898
  flagged: bool,
4872
4899
  manual: bool,
4873
- matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match]
4900
+ matches: ::Array[ModerationAPI::WebhookEvent::QueueItemAllowed::Data::Object::Item::Label::Match],
4901
+ shadow_flagged: bool
4874
4902
  }
4875
4903
 
4876
4904
  type match =
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.27.0
4
+ version: 2.28.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-07-20 00:00:00.000000000 Z
11
+ date: 2026-07-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi