moderation_api 2.9.0 → 2.10.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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/moderation_api/internal/util.rb +31 -0
  5. data/lib/moderation_api/models/action_delete_params.rb +9 -1
  6. data/lib/moderation_api/models/action_retrieve_params.rb +9 -1
  7. data/lib/moderation_api/models/action_update_params.rb +9 -1
  8. data/lib/moderation_api/models/actions/execute_execute_by_id_params.rb +9 -1
  9. data/lib/moderation_api/models/author_delete_params.rb +7 -1
  10. data/lib/moderation_api/models/author_retrieve_params.rb +9 -1
  11. data/lib/moderation_api/models/author_update_params.rb +9 -1
  12. data/lib/moderation_api/models/content_submit_params.rb +27 -3
  13. data/lib/moderation_api/models/queue/item_list_params.rb +9 -1
  14. data/lib/moderation_api/models/queue/item_resolve_params.rb +9 -1
  15. data/lib/moderation_api/models/queue/item_unresolve_params.rb +9 -1
  16. data/lib/moderation_api/models/queue_get_stats_params.rb +9 -1
  17. data/lib/moderation_api/models/queue_retrieve_params.rb +9 -1
  18. data/lib/moderation_api/models/wordlist/word_add_params.rb +9 -1
  19. data/lib/moderation_api/models/wordlist/word_remove_params.rb +9 -1
  20. data/lib/moderation_api/models/wordlist_get_embedding_status_params.rb +9 -1
  21. data/lib/moderation_api/models/wordlist_retrieve_params.rb +9 -1
  22. data/lib/moderation_api/models/wordlist_update_params.rb +9 -1
  23. data/lib/moderation_api/resources/actions.rb +2 -1
  24. data/lib/moderation_api/resources/authors.rb +2 -1
  25. data/lib/moderation_api/resources/content.rb +1 -1
  26. data/lib/moderation_api/resources/queue/items.rb +2 -1
  27. data/lib/moderation_api/resources/queue.rb +2 -1
  28. data/lib/moderation_api/resources/wordlist/words.rb +2 -1
  29. data/lib/moderation_api/version.rb +1 -1
  30. data/rbi/moderation_api/internal/util.rbi +20 -0
  31. data/rbi/moderation_api/models/action_delete_params.rbi +16 -5
  32. data/rbi/moderation_api/models/action_retrieve_params.rbi +16 -5
  33. data/rbi/moderation_api/models/action_update_params.rbi +8 -0
  34. data/rbi/moderation_api/models/actions/execute_execute_by_id_params.rbi +8 -0
  35. data/rbi/moderation_api/models/author_delete_params.rbi +11 -5
  36. data/rbi/moderation_api/models/author_retrieve_params.rbi +16 -5
  37. data/rbi/moderation_api/models/author_update_params.rbi +8 -0
  38. data/rbi/moderation_api/models/content_submit_params.rbi +41 -0
  39. data/rbi/moderation_api/models/queue/item_list_params.rbi +8 -0
  40. data/rbi/moderation_api/models/queue/item_resolve_params.rbi +8 -0
  41. data/rbi/moderation_api/models/queue/item_unresolve_params.rbi +8 -0
  42. data/rbi/moderation_api/models/queue_get_stats_params.rbi +8 -0
  43. data/rbi/moderation_api/models/queue_retrieve_params.rbi +16 -5
  44. data/rbi/moderation_api/models/wordlist/word_add_params.rbi +8 -0
  45. data/rbi/moderation_api/models/wordlist/word_remove_params.rbi +8 -0
  46. data/rbi/moderation_api/models/wordlist_get_embedding_status_params.rbi +16 -5
  47. data/rbi/moderation_api/models/wordlist_retrieve_params.rbi +16 -5
  48. data/rbi/moderation_api/models/wordlist_update_params.rbi +8 -0
  49. data/rbi/moderation_api/resources/content.rbi +1 -0
  50. data/sig/moderation_api/internal/util.rbs +10 -0
  51. data/sig/moderation_api/models/action_delete_params.rbs +11 -3
  52. data/sig/moderation_api/models/action_retrieve_params.rbs +11 -3
  53. data/sig/moderation_api/models/action_update_params.rbs +5 -0
  54. data/sig/moderation_api/models/actions/execute_execute_by_id_params.rbs +5 -0
  55. data/sig/moderation_api/models/author_delete_params.rbs +11 -3
  56. data/sig/moderation_api/models/author_retrieve_params.rbs +11 -3
  57. data/sig/moderation_api/models/author_update_params.rbs +5 -0
  58. data/sig/moderation_api/models/content_submit_params.rbs +21 -0
  59. data/sig/moderation_api/models/queue/item_list_params.rbs +5 -0
  60. data/sig/moderation_api/models/queue/item_resolve_params.rbs +5 -1
  61. data/sig/moderation_api/models/queue/item_unresolve_params.rbs +5 -1
  62. data/sig/moderation_api/models/queue_get_stats_params.rbs +5 -1
  63. data/sig/moderation_api/models/queue_retrieve_params.rbs +11 -3
  64. data/sig/moderation_api/models/wordlist/word_add_params.rbs +5 -1
  65. data/sig/moderation_api/models/wordlist/word_remove_params.rbs +5 -1
  66. data/sig/moderation_api/models/wordlist_get_embedding_status_params.rbs +11 -3
  67. data/sig/moderation_api/models/wordlist_retrieve_params.rbs +11 -3
  68. data/sig/moderation_api/models/wordlist_update_params.rbs +5 -0
  69. metadata +2 -2
@@ -301,6 +301,26 @@ module ModerationAPI
301
301
  T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp)
302
302
 
303
303
  class << self
304
+ # @api private
305
+ sig do
306
+ params(query: ModerationAPI::Internal::AnyHash).returns(
307
+ ModerationAPI::Internal::AnyHash
308
+ )
309
+ end
310
+ def encode_query_params(query)
311
+ end
312
+
313
+ # @api private
314
+ sig do
315
+ params(
316
+ collection: ModerationAPI::Internal::AnyHash,
317
+ key: String,
318
+ element: T.anything
319
+ ).void
320
+ end
321
+ private def write_query_param_element!(collection, key, element)
322
+ end
323
+
304
324
  # @api private
305
325
  sig do
306
326
  params(
@@ -14,16 +14,27 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # The ID of the action to delete.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  sig do
18
- params(request_options: ModerationAPI::RequestOptions::OrHash).returns(
19
- T.attached_class
20
- )
22
+ params(
23
+ id: String,
24
+ request_options: ModerationAPI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
21
26
  end
22
- def self.new(request_options: {})
27
+ def self.new(
28
+ # The ID of the action to delete.
29
+ id:,
30
+ request_options: {}
31
+ )
23
32
  end
24
33
 
25
34
  sig do
26
- override.returns({ request_options: ModerationAPI::RequestOptions })
35
+ override.returns(
36
+ { id: String, request_options: ModerationAPI::RequestOptions }
37
+ )
27
38
  end
28
39
  def to_hash
29
40
  end
@@ -14,16 +14,27 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # The ID of the action to get.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  sig do
18
- params(request_options: ModerationAPI::RequestOptions::OrHash).returns(
19
- T.attached_class
20
- )
22
+ params(
23
+ id: String,
24
+ request_options: ModerationAPI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
21
26
  end
22
- def self.new(request_options: {})
27
+ def self.new(
28
+ # The ID of the action to get.
29
+ id:,
30
+ request_options: {}
31
+ )
23
32
  end
24
33
 
25
34
  sig do
26
- override.returns({ request_options: ModerationAPI::RequestOptions })
35
+ override.returns(
36
+ { id: String, request_options: ModerationAPI::RequestOptions }
37
+ )
27
38
  end
28
39
  def to_hash
29
40
  end
@@ -14,6 +14,10 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # The ID of the action to update.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  # Whether the action is a built-in action or a custom one.
18
22
  sig { returns(T.nilable(T::Boolean)) }
19
23
  attr_accessor :built_in
@@ -126,6 +130,7 @@ module ModerationAPI
126
130
 
127
131
  sig do
128
132
  params(
133
+ id: String,
129
134
  built_in: T.nilable(T::Boolean),
130
135
  description: T.nilable(String),
131
136
  filter_in_queue_ids: T::Array[String],
@@ -145,6 +150,8 @@ module ModerationAPI
145
150
  ).returns(T.attached_class)
146
151
  end
147
152
  def self.new(
153
+ # The ID of the action to update.
154
+ id:,
148
155
  # Whether the action is a built-in action or a custom one.
149
156
  built_in: nil,
150
157
  # The description of the action.
@@ -180,6 +187,7 @@ module ModerationAPI
180
187
  sig do
181
188
  override.returns(
182
189
  {
190
+ id: String,
183
191
  built_in: T.nilable(T::Boolean),
184
192
  description: T.nilable(String),
185
193
  filter_in_queue_ids: T::Array[String],
@@ -15,6 +15,10 @@ module ModerationAPI
15
15
  )
16
16
  end
17
17
 
18
+ # The ID or key of the action to execute.
19
+ sig { returns(String) }
20
+ attr_accessor :action_id
21
+
18
22
  # IDs of the authors to apply the action to
19
23
  sig { returns(T.nilable(T::Array[String])) }
20
24
  attr_reader :author_ids
@@ -45,6 +49,7 @@ module ModerationAPI
45
49
 
46
50
  sig do
47
51
  params(
52
+ action_id: String,
48
53
  author_ids: T::Array[String],
49
54
  content_ids: T::Array[String],
50
55
  queue_id: String,
@@ -53,6 +58,8 @@ module ModerationAPI
53
58
  ).returns(T.attached_class)
54
59
  end
55
60
  def self.new(
61
+ # The ID or key of the action to execute.
62
+ action_id:,
56
63
  # IDs of the authors to apply the action to
57
64
  author_ids: nil,
58
65
  # The IDs of the content items to perform the action on.
@@ -68,6 +75,7 @@ module ModerationAPI
68
75
  sig do
69
76
  override.returns(
70
77
  {
78
+ action_id: String,
71
79
  author_ids: T::Array[String],
72
80
  content_ids: T::Array[String],
73
81
  queue_id: String,
@@ -14,16 +14,22 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ sig { returns(String) }
18
+ attr_accessor :id
19
+
17
20
  sig do
18
- params(request_options: ModerationAPI::RequestOptions::OrHash).returns(
19
- T.attached_class
20
- )
21
+ params(
22
+ id: String,
23
+ request_options: ModerationAPI::RequestOptions::OrHash
24
+ ).returns(T.attached_class)
21
25
  end
22
- def self.new(request_options: {})
26
+ def self.new(id:, request_options: {})
23
27
  end
24
28
 
25
29
  sig do
26
- override.returns({ request_options: ModerationAPI::RequestOptions })
30
+ override.returns(
31
+ { id: String, request_options: ModerationAPI::RequestOptions }
32
+ )
27
33
  end
28
34
  def to_hash
29
35
  end
@@ -14,16 +14,27 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # Either external ID or the ID assigned by moderation API.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  sig do
18
- params(request_options: ModerationAPI::RequestOptions::OrHash).returns(
19
- T.attached_class
20
- )
22
+ params(
23
+ id: String,
24
+ request_options: ModerationAPI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
21
26
  end
22
- def self.new(request_options: {})
27
+ def self.new(
28
+ # Either external ID or the ID assigned by moderation API.
29
+ id:,
30
+ request_options: {}
31
+ )
23
32
  end
24
33
 
25
34
  sig do
26
- override.returns({ request_options: ModerationAPI::RequestOptions })
35
+ override.returns(
36
+ { id: String, request_options: ModerationAPI::RequestOptions }
37
+ )
27
38
  end
28
39
  def to_hash
29
40
  end
@@ -14,6 +14,10 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # Either external ID or the ID assigned by moderation API.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  # Author email address
18
22
  sig { returns(T.nilable(String)) }
19
23
  attr_accessor :email
@@ -61,6 +65,7 @@ module ModerationAPI
61
65
 
62
66
  sig do
63
67
  params(
68
+ id: String,
64
69
  email: T.nilable(String),
65
70
  external_link: T.nilable(String),
66
71
  first_seen: Float,
@@ -73,6 +78,8 @@ module ModerationAPI
73
78
  ).returns(T.attached_class)
74
79
  end
75
80
  def self.new(
81
+ # Either external ID or the ID assigned by moderation API.
82
+ id:,
76
83
  # Author email address
77
84
  email: nil,
78
85
  # URL of the author's external profile
@@ -96,6 +103,7 @@ module ModerationAPI
96
103
  sig do
97
104
  override.returns(
98
105
  {
106
+ id: String,
99
107
  email: T.nilable(String),
100
108
  external_link: T.nilable(String),
101
109
  first_seen: Float,
@@ -117,6 +117,7 @@ module ModerationAPI
117
117
  ModerationAPI::ContentSubmitParams::Policy::CodeAbuse,
118
118
  ModerationAPI::ContentSubmitParams::Policy::PiiMasking,
119
119
  ModerationAPI::ContentSubmitParams::Policy::URLMasking,
120
+ ModerationAPI::ContentSubmitParams::Policy::URLRisk,
120
121
  ModerationAPI::ContentSubmitParams::Policy::Guideline
121
122
  )
122
123
  ]
@@ -155,6 +156,7 @@ module ModerationAPI
155
156
  ModerationAPI::ContentSubmitParams::Policy::CodeAbuse::OrHash,
156
157
  ModerationAPI::ContentSubmitParams::Policy::PiiMasking::OrHash,
157
158
  ModerationAPI::ContentSubmitParams::Policy::URLMasking::OrHash,
159
+ ModerationAPI::ContentSubmitParams::Policy::URLRisk::OrHash,
158
160
  ModerationAPI::ContentSubmitParams::Policy::Guideline::OrHash
159
161
  )
160
162
  ]
@@ -215,6 +217,7 @@ module ModerationAPI
215
217
  ModerationAPI::ContentSubmitParams::Policy::CodeAbuse::OrHash,
216
218
  ModerationAPI::ContentSubmitParams::Policy::PiiMasking::OrHash,
217
219
  ModerationAPI::ContentSubmitParams::Policy::URLMasking::OrHash,
220
+ ModerationAPI::ContentSubmitParams::Policy::URLRisk::OrHash,
218
221
  ModerationAPI::ContentSubmitParams::Policy::Guideline::OrHash
219
222
  )
220
223
  ],
@@ -295,6 +298,7 @@ module ModerationAPI
295
298
  ModerationAPI::ContentSubmitParams::Policy::CodeAbuse,
296
299
  ModerationAPI::ContentSubmitParams::Policy::PiiMasking,
297
300
  ModerationAPI::ContentSubmitParams::Policy::URLMasking,
301
+ ModerationAPI::ContentSubmitParams::Policy::URLRisk,
298
302
  ModerationAPI::ContentSubmitParams::Policy::Guideline
299
303
  )
300
304
  ],
@@ -802,6 +806,7 @@ module ModerationAPI
802
806
  ModerationAPI::ContentSubmitParams::Policy::CodeAbuse,
803
807
  ModerationAPI::ContentSubmitParams::Policy::PiiMasking,
804
808
  ModerationAPI::ContentSubmitParams::Policy::URLMasking,
809
+ ModerationAPI::ContentSubmitParams::Policy::URLRisk,
805
810
  ModerationAPI::ContentSubmitParams::Policy::Guideline
806
811
  )
807
812
  end
@@ -1852,6 +1857,42 @@ module ModerationAPI
1852
1857
  end
1853
1858
  end
1854
1859
 
1860
+ class URLRisk < ModerationAPI::Internal::Type::BaseModel
1861
+ OrHash =
1862
+ T.type_alias do
1863
+ T.any(
1864
+ ModerationAPI::ContentSubmitParams::Policy::URLRisk,
1865
+ ModerationAPI::Internal::AnyHash
1866
+ )
1867
+ end
1868
+
1869
+ sig { returns(Symbol) }
1870
+ attr_accessor :id
1871
+
1872
+ sig { returns(T::Boolean) }
1873
+ attr_accessor :flag
1874
+
1875
+ sig { returns(T.nilable(Float)) }
1876
+ attr_reader :threshold
1877
+
1878
+ sig { params(threshold: Float).void }
1879
+ attr_writer :threshold
1880
+
1881
+ sig do
1882
+ params(flag: T::Boolean, threshold: Float, id: Symbol).returns(
1883
+ T.attached_class
1884
+ )
1885
+ end
1886
+ def self.new(flag:, threshold: nil, id: :url_risk)
1887
+ end
1888
+
1889
+ sig do
1890
+ override.returns({ id: Symbol, flag: T::Boolean, threshold: Float })
1891
+ end
1892
+ def to_hash
1893
+ end
1894
+ end
1895
+
1855
1896
  class Guideline < ModerationAPI::Internal::Type::BaseModel
1856
1897
  OrHash =
1857
1898
  T.type_alias do
@@ -15,6 +15,10 @@ module ModerationAPI
15
15
  )
16
16
  end
17
17
 
18
+ # The queue ID
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
18
22
  sig { returns(T.nilable(String)) }
19
23
  attr_reader :after_date
20
24
 
@@ -106,6 +110,7 @@ module ModerationAPI
106
110
 
107
111
  sig do
108
112
  params(
113
+ id: String,
109
114
  after_date: String,
110
115
  author_id: String,
111
116
  before_date: String,
@@ -123,6 +128,8 @@ module ModerationAPI
123
128
  ).returns(T.attached_class)
124
129
  end
125
130
  def self.new(
131
+ # The queue ID
132
+ id:,
126
133
  after_date: nil,
127
134
  author_id: nil,
128
135
  before_date: nil,
@@ -144,6 +151,7 @@ module ModerationAPI
144
151
  sig do
145
152
  override.returns(
146
153
  {
154
+ id: String,
147
155
  after_date: String,
148
156
  author_id: String,
149
157
  before_date: String,
@@ -19,6 +19,10 @@ module ModerationAPI
19
19
  sig { returns(String) }
20
20
  attr_accessor :id
21
21
 
22
+ # The item ID to resolve
23
+ sig { returns(String) }
24
+ attr_accessor :item_id
25
+
22
26
  # Optional comment
23
27
  sig { returns(T.nilable(String)) }
24
28
  attr_reader :comment
@@ -29,6 +33,7 @@ module ModerationAPI
29
33
  sig do
30
34
  params(
31
35
  id: String,
36
+ item_id: String,
32
37
  comment: String,
33
38
  request_options: ModerationAPI::RequestOptions::OrHash
34
39
  ).returns(T.attached_class)
@@ -36,6 +41,8 @@ module ModerationAPI
36
41
  def self.new(
37
42
  # The queue ID
38
43
  id:,
44
+ # The item ID to resolve
45
+ item_id:,
39
46
  # Optional comment
40
47
  comment: nil,
41
48
  request_options: {}
@@ -46,6 +53,7 @@ module ModerationAPI
46
53
  override.returns(
47
54
  {
48
55
  id: String,
56
+ item_id: String,
49
57
  comment: String,
50
58
  request_options: ModerationAPI::RequestOptions
51
59
  }
@@ -19,6 +19,10 @@ module ModerationAPI
19
19
  sig { returns(String) }
20
20
  attr_accessor :id
21
21
 
22
+ # The item ID to unresolve
23
+ sig { returns(String) }
24
+ attr_accessor :item_id
25
+
22
26
  # Optional reason for unresolving the item
23
27
  sig { returns(T.nilable(String)) }
24
28
  attr_reader :comment
@@ -29,6 +33,7 @@ module ModerationAPI
29
33
  sig do
30
34
  params(
31
35
  id: String,
36
+ item_id: String,
32
37
  comment: String,
33
38
  request_options: ModerationAPI::RequestOptions::OrHash
34
39
  ).returns(T.attached_class)
@@ -36,6 +41,8 @@ module ModerationAPI
36
41
  def self.new(
37
42
  # The queue ID
38
43
  id:,
44
+ # The item ID to unresolve
45
+ item_id:,
39
46
  # Optional reason for unresolving the item
40
47
  comment: nil,
41
48
  request_options: {}
@@ -46,6 +53,7 @@ module ModerationAPI
46
53
  override.returns(
47
54
  {
48
55
  id: String,
56
+ item_id: String,
49
57
  comment: String,
50
58
  request_options: ModerationAPI::RequestOptions
51
59
  }
@@ -14,6 +14,10 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # The queue ID
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  # Number of days to analyze statistics for
18
22
  sig { returns(T.nilable(String)) }
19
23
  attr_reader :within_days
@@ -23,11 +27,14 @@ module ModerationAPI
23
27
 
24
28
  sig do
25
29
  params(
30
+ id: String,
26
31
  within_days: String,
27
32
  request_options: ModerationAPI::RequestOptions::OrHash
28
33
  ).returns(T.attached_class)
29
34
  end
30
35
  def self.new(
36
+ # The queue ID
37
+ id:,
31
38
  # Number of days to analyze statistics for
32
39
  within_days: nil,
33
40
  request_options: {}
@@ -37,6 +44,7 @@ module ModerationAPI
37
44
  sig do
38
45
  override.returns(
39
46
  {
47
+ id: String,
40
48
  within_days: String,
41
49
  request_options: ModerationAPI::RequestOptions
42
50
  }
@@ -14,16 +14,27 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # The queue ID
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  sig do
18
- params(request_options: ModerationAPI::RequestOptions::OrHash).returns(
19
- T.attached_class
20
- )
22
+ params(
23
+ id: String,
24
+ request_options: ModerationAPI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
21
26
  end
22
- def self.new(request_options: {})
27
+ def self.new(
28
+ # The queue ID
29
+ id:,
30
+ request_options: {}
31
+ )
23
32
  end
24
33
 
25
34
  sig do
26
- override.returns({ request_options: ModerationAPI::RequestOptions })
35
+ override.returns(
36
+ { id: String, request_options: ModerationAPI::RequestOptions }
37
+ )
27
38
  end
28
39
  def to_hash
29
40
  end
@@ -15,17 +15,24 @@ module ModerationAPI
15
15
  )
16
16
  end
17
17
 
18
+ # ID of the wordlist to add words to
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
18
22
  # Array of words to add to the wordlist. Duplicate words will be ignored.
19
23
  sig { returns(T::Array[String]) }
20
24
  attr_accessor :words
21
25
 
22
26
  sig do
23
27
  params(
28
+ id: String,
24
29
  words: T::Array[String],
25
30
  request_options: ModerationAPI::RequestOptions::OrHash
26
31
  ).returns(T.attached_class)
27
32
  end
28
33
  def self.new(
34
+ # ID of the wordlist to add words to
35
+ id:,
29
36
  # Array of words to add to the wordlist. Duplicate words will be ignored.
30
37
  words:,
31
38
  request_options: {}
@@ -35,6 +42,7 @@ module ModerationAPI
35
42
  sig do
36
43
  override.returns(
37
44
  {
45
+ id: String,
38
46
  words: T::Array[String],
39
47
  request_options: ModerationAPI::RequestOptions
40
48
  }
@@ -15,17 +15,24 @@ module ModerationAPI
15
15
  )
16
16
  end
17
17
 
18
+ # ID of the wordlist to remove words from
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
18
22
  # Array of words to remove from the wordlist
19
23
  sig { returns(T::Array[String]) }
20
24
  attr_accessor :words
21
25
 
22
26
  sig do
23
27
  params(
28
+ id: String,
24
29
  words: T::Array[String],
25
30
  request_options: ModerationAPI::RequestOptions::OrHash
26
31
  ).returns(T.attached_class)
27
32
  end
28
33
  def self.new(
34
+ # ID of the wordlist to remove words from
35
+ id:,
29
36
  # Array of words to remove from the wordlist
30
37
  words:,
31
38
  request_options: {}
@@ -35,6 +42,7 @@ module ModerationAPI
35
42
  sig do
36
43
  override.returns(
37
44
  {
45
+ id: String,
38
46
  words: T::Array[String],
39
47
  request_options: ModerationAPI::RequestOptions
40
48
  }
@@ -14,16 +14,27 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # ID of the wordlist to check embedding status for
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  sig do
18
- params(request_options: ModerationAPI::RequestOptions::OrHash).returns(
19
- T.attached_class
20
- )
22
+ params(
23
+ id: String,
24
+ request_options: ModerationAPI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
21
26
  end
22
- def self.new(request_options: {})
27
+ def self.new(
28
+ # ID of the wordlist to check embedding status for
29
+ id:,
30
+ request_options: {}
31
+ )
23
32
  end
24
33
 
25
34
  sig do
26
- override.returns({ request_options: ModerationAPI::RequestOptions })
35
+ override.returns(
36
+ { id: String, request_options: ModerationAPI::RequestOptions }
37
+ )
27
38
  end
28
39
  def to_hash
29
40
  end
@@ -14,16 +14,27 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # ID of the wordlist to get
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  sig do
18
- params(request_options: ModerationAPI::RequestOptions::OrHash).returns(
19
- T.attached_class
20
- )
22
+ params(
23
+ id: String,
24
+ request_options: ModerationAPI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
21
26
  end
22
- def self.new(request_options: {})
27
+ def self.new(
28
+ # ID of the wordlist to get
29
+ id:,
30
+ request_options: {}
31
+ )
23
32
  end
24
33
 
25
34
  sig do
26
- override.returns({ request_options: ModerationAPI::RequestOptions })
35
+ override.returns(
36
+ { id: String, request_options: ModerationAPI::RequestOptions }
37
+ )
27
38
  end
28
39
  def to_hash
29
40
  end
@@ -14,6 +14,10 @@ module ModerationAPI
14
14
  )
15
15
  end
16
16
 
17
+ # ID of the wordlist to update
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
17
21
  # New description for the wordlist
18
22
  sig { returns(T.nilable(String)) }
19
23
  attr_reader :description
@@ -52,6 +56,7 @@ module ModerationAPI
52
56
 
53
57
  sig do
54
58
  params(
59
+ id: String,
55
60
  description: String,
56
61
  key: String,
57
62
  name: String,
@@ -61,6 +66,8 @@ module ModerationAPI
61
66
  ).returns(T.attached_class)
62
67
  end
63
68
  def self.new(
69
+ # ID of the wordlist to update
70
+ id:,
64
71
  # New description for the wordlist
65
72
  description: nil,
66
73
  # New key for the wordlist
@@ -79,6 +86,7 @@ module ModerationAPI
79
86
  sig do
80
87
  override.returns(
81
88
  {
89
+ id: String,
82
90
  description: String,
83
91
  key: String,
84
92
  name: String,