openai 0.56.0 → 0.58.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 (89) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +60 -0
  3. data/README.md +98 -1
  4. data/lib/openai/auth/subject_token_provider.rb +15 -0
  5. data/lib/openai/auth/subject_token_providers/azure_managed_identity_token_provider.rb +88 -0
  6. data/lib/openai/auth/subject_token_providers/gcp_id_token_provider.rb +66 -0
  7. data/lib/openai/auth/subject_token_providers/k8s_service_account_token_provider.rb +37 -0
  8. data/lib/openai/auth/token_type.rb +10 -0
  9. data/lib/openai/auth/workload_identity.rb +23 -0
  10. data/lib/openai/auth/workload_identity_auth.rb +176 -0
  11. data/lib/openai/client.rb +59 -4
  12. data/lib/openai/errors.rb +39 -0
  13. data/lib/openai/internal/util.rb +22 -7
  14. data/lib/openai/models/conversations/conversation_item.rb +4 -1
  15. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  16. data/lib/openai/models/conversations/message.rb +28 -1
  17. data/lib/openai/models/oauth_error_code.rb +29 -0
  18. data/lib/openai/models/realtime/realtime_session_create_request.rb +4 -3
  19. data/lib/openai/models/realtime/realtime_session_create_response.rb +7 -5
  20. data/lib/openai/models/realtime/realtime_tracing_config.rb +3 -2
  21. data/lib/openai/models/responses/compacted_response.rb +2 -2
  22. data/lib/openai/models/responses/computer_action.rb +45 -5
  23. data/lib/openai/models/responses/response.rb +2 -2
  24. data/lib/openai/models/responses/response_computer_tool_call.rb +45 -5
  25. data/lib/openai/models/responses/response_computer_tool_call_output_item.rb +31 -22
  26. data/lib/openai/models/responses/response_custom_tool_call_item.rb +53 -0
  27. data/lib/openai/models/responses/response_custom_tool_call_output_item.rb +53 -0
  28. data/lib/openai/models/responses/response_function_tool_call_item.rb +31 -1
  29. data/lib/openai/models/responses/response_function_tool_call_output_item.rb +14 -6
  30. data/lib/openai/models/responses/response_input_message_item.rb +8 -20
  31. data/lib/openai/models/responses/response_item.rb +16 -1
  32. data/lib/openai/models/responses/response_item_list.rb +2 -2
  33. data/lib/openai/models/responses/response_output_item.rb +120 -1
  34. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  35. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  36. data/lib/openai/models/vector_stores/file_batch_create_params.rb +9 -5
  37. data/lib/openai/models/vector_stores/file_create_params.rb +3 -1
  38. data/lib/openai/models.rb +2 -0
  39. data/lib/openai/resources/conversations/items.rb +2 -2
  40. data/lib/openai/resources/realtime/calls.rb +1 -1
  41. data/lib/openai/resources/responses/input_items.rb +1 -1
  42. data/lib/openai/version.rb +1 -1
  43. data/lib/openai.rb +12 -2
  44. data/rbi/openai/auth.rbi +55 -0
  45. data/rbi/openai/internal/util.rbi +8 -0
  46. data/rbi/openai/models/conversations/conversation_item.rbi +1 -0
  47. data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
  48. data/rbi/openai/models/conversations/message.rbi +53 -1
  49. data/rbi/openai/models/oauth_error_code.rbi +24 -0
  50. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +6 -4
  51. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +9 -6
  52. data/rbi/openai/models/realtime/realtime_tracing_config.rbi +3 -2
  53. data/rbi/openai/models/responses/compacted_response.rbi +6 -1
  54. data/rbi/openai/models/responses/computer_action.rbi +71 -11
  55. data/rbi/openai/models/responses/response.rbi +6 -1
  56. data/rbi/openai/models/responses/response_computer_tool_call.rbi +71 -11
  57. data/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi +71 -65
  58. data/rbi/openai/models/responses/response_custom_tool_call_item.rbi +111 -0
  59. data/rbi/openai/models/responses/response_custom_tool_call_output_item.rbi +111 -0
  60. data/rbi/openai/models/responses/response_function_tool_call_item.rbi +81 -3
  61. data/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +19 -18
  62. data/rbi/openai/models/responses/response_input_message_item.rbi +8 -49
  63. data/rbi/openai/models/responses/response_item.rbi +5 -1
  64. data/rbi/openai/models/responses/response_item_list.rbi +5 -1
  65. data/rbi/openai/models/responses/response_output_item.rbi +186 -1
  66. data/rbi/openai/models/responses/response_output_item_added_event.rbi +6 -1
  67. data/rbi/openai/models/responses/response_output_item_done_event.rbi +6 -1
  68. data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +18 -10
  69. data/rbi/openai/models/vector_stores/file_create_params.rbi +6 -2
  70. data/rbi/openai/models.rbi +2 -0
  71. data/rbi/openai/resources/realtime/calls.rbi +3 -2
  72. data/rbi/openai/resources/vector_stores/file_batches.rbi +6 -4
  73. data/rbi/openai/resources/vector_stores/files.rbi +3 -1
  74. data/sig/openai/internal/util.rbs +4 -0
  75. data/sig/openai/models/conversations/conversation_item.rbs +1 -0
  76. data/sig/openai/models/conversations/message.rbs +18 -2
  77. data/sig/openai/models/oauth_error_code.rbs +14 -0
  78. data/sig/openai/models/responses/computer_action.rbs +53 -11
  79. data/sig/openai/models/responses/response_computer_tool_call.rbs +53 -11
  80. data/sig/openai/models/responses/response_computer_tool_call_output_item.rbs +23 -19
  81. data/sig/openai/models/responses/response_custom_tool_call_item.rbs +52 -0
  82. data/sig/openai/models/responses/response_custom_tool_call_output_item.rbs +52 -0
  83. data/sig/openai/models/responses/response_function_tool_call_item.rbs +38 -3
  84. data/sig/openai/models/responses/response_function_tool_call_output_item.rbs +10 -7
  85. data/sig/openai/models/responses/response_input_message_item.rbs +7 -21
  86. data/sig/openai/models/responses/response_item.rbs +4 -0
  87. data/sig/openai/models/responses/response_output_item.rbs +86 -0
  88. data/sig/openai/models.rbs +2 -0
  89. metadata +19 -2
@@ -20,7 +20,8 @@ module OpenAI
20
20
  button: OpenAI::Models::Responses::ComputerAction::Click::button,
21
21
  type: :click,
22
22
  x: Integer,
23
- y_: Integer
23
+ y_: Integer,
24
+ keys: ::Array[String]?
24
25
  }
25
26
 
26
27
  class Click < OpenAI::Internal::Type::BaseModel
@@ -32,10 +33,13 @@ module OpenAI
32
33
 
33
34
  attr_accessor y_: Integer
34
35
 
36
+ attr_accessor keys: ::Array[String]?
37
+
35
38
  def initialize: (
36
39
  button: OpenAI::Models::Responses::ComputerAction::Click::button,
37
40
  x: Integer,
38
41
  y_: Integer,
42
+ ?keys: ::Array[String]?,
39
43
  ?type: :click
40
44
  ) -> void
41
45
 
@@ -43,7 +47,8 @@ module OpenAI
43
47
  button: OpenAI::Models::Responses::ComputerAction::Click::button,
44
48
  type: :click,
45
49
  x: Integer,
46
- y_: Integer
50
+ y_: Integer,
51
+ keys: ::Array[String]?
47
52
  }
48
53
 
49
54
  type button = :left | :right | :wheel | :back | :forward
@@ -61,9 +66,17 @@ module OpenAI
61
66
  end
62
67
  end
63
68
 
64
- type double_click = { type: :double_click, x: Integer, y_: Integer }
69
+ type double_click =
70
+ {
71
+ keys: ::Array[String]?,
72
+ type: :double_click,
73
+ x: Integer,
74
+ y_: Integer
75
+ }
65
76
 
66
77
  class DoubleClick < OpenAI::Internal::Type::BaseModel
78
+ attr_accessor keys: ::Array[String]?
79
+
67
80
  attr_accessor type: :double_click
68
81
 
69
82
  attr_accessor x: Integer
@@ -71,18 +84,25 @@ module OpenAI
71
84
  attr_accessor y_: Integer
72
85
 
73
86
  def initialize: (
87
+ keys: ::Array[String]?,
74
88
  x: Integer,
75
89
  y_: Integer,
76
90
  ?type: :double_click
77
91
  ) -> void
78
92
 
79
- def to_hash: -> { type: :double_click, x: Integer, y_: Integer }
93
+ def to_hash: -> {
94
+ keys: ::Array[String]?,
95
+ type: :double_click,
96
+ x: Integer,
97
+ y_: Integer
98
+ }
80
99
  end
81
100
 
82
101
  type drag =
83
102
  {
84
103
  path: ::Array[OpenAI::Responses::ComputerAction::Drag::Path],
85
- type: :drag
104
+ type: :drag,
105
+ keys: ::Array[String]?
86
106
  }
87
107
 
88
108
  class Drag < OpenAI::Internal::Type::BaseModel
@@ -90,14 +110,18 @@ module OpenAI
90
110
 
91
111
  attr_accessor type: :drag
92
112
 
113
+ attr_accessor keys: ::Array[String]?
114
+
93
115
  def initialize: (
94
116
  path: ::Array[OpenAI::Responses::ComputerAction::Drag::Path],
117
+ ?keys: ::Array[String]?,
95
118
  ?type: :drag
96
119
  ) -> void
97
120
 
98
121
  def to_hash: -> {
99
122
  path: ::Array[OpenAI::Responses::ComputerAction::Drag::Path],
100
- type: :drag
123
+ type: :drag,
124
+ keys: ::Array[String]?
101
125
  }
102
126
 
103
127
  type path = { x: Integer, y_: Integer }
@@ -125,7 +149,8 @@ module OpenAI
125
149
  def to_hash: -> { keys: ::Array[String], type: :keypress }
126
150
  end
127
151
 
128
- type move = { type: :move, x: Integer, y_: Integer }
152
+ type move =
153
+ { type: :move, x: Integer, y_: Integer, keys: ::Array[String]? }
129
154
 
130
155
  class Move < OpenAI::Internal::Type::BaseModel
131
156
  attr_accessor type: :move
@@ -134,9 +159,21 @@ module OpenAI
134
159
 
135
160
  attr_accessor y_: Integer
136
161
 
137
- def initialize: (x: Integer, y_: Integer, ?type: :move) -> void
162
+ attr_accessor keys: ::Array[String]?
138
163
 
139
- def to_hash: -> { type: :move, x: Integer, y_: Integer }
164
+ def initialize: (
165
+ x: Integer,
166
+ y_: Integer,
167
+ ?keys: ::Array[String]?,
168
+ ?type: :move
169
+ ) -> void
170
+
171
+ def to_hash: -> {
172
+ type: :move,
173
+ x: Integer,
174
+ y_: Integer,
175
+ keys: ::Array[String]?
176
+ }
140
177
  end
141
178
 
142
179
  type screenshot = { type: :screenshot }
@@ -155,7 +192,8 @@ module OpenAI
155
192
  scroll_y: Integer,
156
193
  type: :scroll,
157
194
  x: Integer,
158
- y_: Integer
195
+ y_: Integer,
196
+ keys: ::Array[String]?
159
197
  }
160
198
 
161
199
  class Scroll < OpenAI::Internal::Type::BaseModel
@@ -169,11 +207,14 @@ module OpenAI
169
207
 
170
208
  attr_accessor y_: Integer
171
209
 
210
+ attr_accessor keys: ::Array[String]?
211
+
172
212
  def initialize: (
173
213
  scroll_x: Integer,
174
214
  scroll_y: Integer,
175
215
  x: Integer,
176
216
  y_: Integer,
217
+ ?keys: ::Array[String]?,
177
218
  ?type: :scroll
178
219
  ) -> void
179
220
 
@@ -182,7 +223,8 @@ module OpenAI
182
223
  scroll_y: Integer,
183
224
  type: :scroll,
184
225
  x: Integer,
185
- y_: Integer
226
+ y_: Integer,
227
+ keys: ::Array[String]?
186
228
  }
187
229
  end
188
230
 
@@ -115,7 +115,8 @@ module OpenAI
115
115
  button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::button,
116
116
  type: :click,
117
117
  x: Integer,
118
- y_: Integer
118
+ y_: Integer,
119
+ keys: ::Array[String]?
119
120
  }
120
121
 
121
122
  class Click < OpenAI::Internal::Type::BaseModel
@@ -127,10 +128,13 @@ module OpenAI
127
128
 
128
129
  attr_accessor y_: Integer
129
130
 
131
+ attr_accessor keys: ::Array[String]?
132
+
130
133
  def initialize: (
131
134
  button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::button,
132
135
  x: Integer,
133
136
  y_: Integer,
137
+ ?keys: ::Array[String]?,
134
138
  ?type: :click
135
139
  ) -> void
136
140
 
@@ -138,7 +142,8 @@ module OpenAI
138
142
  button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::button,
139
143
  type: :click,
140
144
  x: Integer,
141
- y_: Integer
145
+ y_: Integer,
146
+ keys: ::Array[String]?
142
147
  }
143
148
 
144
149
  type button = :left | :right | :wheel | :back | :forward
@@ -156,9 +161,17 @@ module OpenAI
156
161
  end
157
162
  end
158
163
 
159
- type double_click = { type: :double_click, x: Integer, y_: Integer }
164
+ type double_click =
165
+ {
166
+ keys: ::Array[String]?,
167
+ type: :double_click,
168
+ x: Integer,
169
+ y_: Integer
170
+ }
160
171
 
161
172
  class DoubleClick < OpenAI::Internal::Type::BaseModel
173
+ attr_accessor keys: ::Array[String]?
174
+
162
175
  attr_accessor type: :double_click
163
176
 
164
177
  attr_accessor x: Integer
@@ -166,18 +179,25 @@ module OpenAI
166
179
  attr_accessor y_: Integer
167
180
 
168
181
  def initialize: (
182
+ keys: ::Array[String]?,
169
183
  x: Integer,
170
184
  y_: Integer,
171
185
  ?type: :double_click
172
186
  ) -> void
173
187
 
174
- def to_hash: -> { type: :double_click, x: Integer, y_: Integer }
188
+ def to_hash: -> {
189
+ keys: ::Array[String]?,
190
+ type: :double_click,
191
+ x: Integer,
192
+ y_: Integer
193
+ }
175
194
  end
176
195
 
177
196
  type drag =
178
197
  {
179
198
  path: ::Array[OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path],
180
- type: :drag
199
+ type: :drag,
200
+ keys: ::Array[String]?
181
201
  }
182
202
 
183
203
  class Drag < OpenAI::Internal::Type::BaseModel
@@ -185,14 +205,18 @@ module OpenAI
185
205
 
186
206
  attr_accessor type: :drag
187
207
 
208
+ attr_accessor keys: ::Array[String]?
209
+
188
210
  def initialize: (
189
211
  path: ::Array[OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path],
212
+ ?keys: ::Array[String]?,
190
213
  ?type: :drag
191
214
  ) -> void
192
215
 
193
216
  def to_hash: -> {
194
217
  path: ::Array[OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path],
195
- type: :drag
218
+ type: :drag,
219
+ keys: ::Array[String]?
196
220
  }
197
221
 
198
222
  type path = { x: Integer, y_: Integer }
@@ -220,7 +244,8 @@ module OpenAI
220
244
  def to_hash: -> { keys: ::Array[String], type: :keypress }
221
245
  end
222
246
 
223
- type move = { type: :move, x: Integer, y_: Integer }
247
+ type move =
248
+ { type: :move, x: Integer, y_: Integer, keys: ::Array[String]? }
224
249
 
225
250
  class Move < OpenAI::Internal::Type::BaseModel
226
251
  attr_accessor type: :move
@@ -229,9 +254,21 @@ module OpenAI
229
254
 
230
255
  attr_accessor y_: Integer
231
256
 
232
- def initialize: (x: Integer, y_: Integer, ?type: :move) -> void
257
+ attr_accessor keys: ::Array[String]?
233
258
 
234
- def to_hash: -> { type: :move, x: Integer, y_: Integer }
259
+ def initialize: (
260
+ x: Integer,
261
+ y_: Integer,
262
+ ?keys: ::Array[String]?,
263
+ ?type: :move
264
+ ) -> void
265
+
266
+ def to_hash: -> {
267
+ type: :move,
268
+ x: Integer,
269
+ y_: Integer,
270
+ keys: ::Array[String]?
271
+ }
235
272
  end
236
273
 
237
274
  type screenshot = { type: :screenshot }
@@ -250,7 +287,8 @@ module OpenAI
250
287
  scroll_y: Integer,
251
288
  type: :scroll,
252
289
  x: Integer,
253
- y_: Integer
290
+ y_: Integer,
291
+ keys: ::Array[String]?
254
292
  }
255
293
 
256
294
  class Scroll < OpenAI::Internal::Type::BaseModel
@@ -264,11 +302,14 @@ module OpenAI
264
302
 
265
303
  attr_accessor y_: Integer
266
304
 
305
+ attr_accessor keys: ::Array[String]?
306
+
267
307
  def initialize: (
268
308
  scroll_x: Integer,
269
309
  scroll_y: Integer,
270
310
  x: Integer,
271
311
  y_: Integer,
312
+ ?keys: ::Array[String]?,
272
313
  ?type: :scroll
273
314
  ) -> void
274
315
 
@@ -277,7 +318,8 @@ module OpenAI
277
318
  scroll_y: Integer,
278
319
  type: :scroll,
279
320
  x: Integer,
280
- y_: Integer
321
+ y_: Integer,
322
+ keys: ::Array[String]?
281
323
  }
282
324
  end
283
325
 
@@ -6,9 +6,10 @@ module OpenAI
6
6
  id: String,
7
7
  call_id: String,
8
8
  output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot,
9
+ status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status,
9
10
  type: :computer_call_output,
10
11
  acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck],
11
- status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status
12
+ created_by: String
12
13
  }
13
14
 
14
15
  class ResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel
@@ -18,6 +19,8 @@ module OpenAI
18
19
 
19
20
  attr_accessor output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot
20
21
 
22
+ attr_accessor status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status
23
+
21
24
  attr_accessor type: :computer_call_output
22
25
 
23
26
  attr_reader acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck]?
@@ -26,18 +29,17 @@ module OpenAI
26
29
  ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck]
27
30
  ) -> ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck]
28
31
 
29
- attr_reader status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status?
32
+ attr_reader created_by: String?
30
33
 
31
- def status=: (
32
- OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status
33
- ) -> OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status
34
+ def created_by=: (String) -> String
34
35
 
35
36
  def initialize: (
36
37
  id: String,
37
38
  call_id: String,
38
39
  output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot,
40
+ status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status,
39
41
  ?acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck],
40
- ?status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status,
42
+ ?created_by: String,
41
43
  ?type: :computer_call_output
42
44
  ) -> void
43
45
 
@@ -45,11 +47,25 @@ module OpenAI
45
47
  id: String,
46
48
  call_id: String,
47
49
  output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot,
50
+ status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status,
48
51
  type: :computer_call_output,
49
52
  acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck],
50
- status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status
53
+ created_by: String
51
54
  }
52
55
 
56
+ type status = :completed | :incomplete | :failed | :in_progress
57
+
58
+ module Status
59
+ extend OpenAI::Internal::Type::Enum
60
+
61
+ COMPLETED: :completed
62
+ INCOMPLETE: :incomplete
63
+ FAILED: :failed
64
+ IN_PROGRESS: :in_progress
65
+
66
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status]
67
+ end
68
+
53
69
  type acknowledged_safety_check =
54
70
  { id: String, code: String?, message: String? }
55
71
 
@@ -68,18 +84,6 @@ module OpenAI
68
84
 
69
85
  def to_hash: -> { id: String, code: String?, message: String? }
70
86
  end
71
-
72
- type status = :in_progress | :completed | :incomplete
73
-
74
- module Status
75
- extend OpenAI::Internal::Type::Enum
76
-
77
- IN_PROGRESS: :in_progress
78
- COMPLETED: :completed
79
- INCOMPLETE: :incomplete
80
-
81
- def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status]
82
- end
83
87
  end
84
88
  end
85
89
  end
@@ -0,0 +1,52 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_custom_tool_call_item =
5
+ {
6
+ id: String,
7
+ status: OpenAI::Models::Responses::ResponseCustomToolCallItem::status,
8
+ created_by: String
9
+ }
10
+
11
+ class ResponseCustomToolCallItem < OpenAI::Models::Responses::ResponseCustomToolCall
12
+ def id: -> String
13
+
14
+ def id=: (String _) -> String
15
+
16
+ def status: -> OpenAI::Models::Responses::ResponseCustomToolCallItem::status
17
+
18
+ def status=: (
19
+ OpenAI::Models::Responses::ResponseCustomToolCallItem::status _
20
+ ) -> OpenAI::Models::Responses::ResponseCustomToolCallItem::status
21
+
22
+ def created_by: -> String?
23
+
24
+ def created_by=: (String _) -> String
25
+
26
+ def initialize: (
27
+ id: String,
28
+ status: OpenAI::Models::Responses::ResponseCustomToolCallItem::status,
29
+ ?created_by: String
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ id: String,
34
+ status: OpenAI::Models::Responses::ResponseCustomToolCallItem::status,
35
+ created_by: String
36
+ }
37
+
38
+ type status = :in_progress | :completed | :incomplete
39
+
40
+ module Status
41
+ extend OpenAI::Internal::Type::Enum
42
+
43
+ IN_PROGRESS: :in_progress
44
+ COMPLETED: :completed
45
+ INCOMPLETE: :incomplete
46
+
47
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseCustomToolCallItem::status]
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,52 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_custom_tool_call_output_item =
5
+ {
6
+ id: String,
7
+ status: OpenAI::Models::Responses::ResponseCustomToolCallOutputItem::status,
8
+ created_by: String
9
+ }
10
+
11
+ class ResponseCustomToolCallOutputItem < OpenAI::Models::Responses::ResponseCustomToolCallOutput
12
+ def id: -> String
13
+
14
+ def id=: (String _) -> String
15
+
16
+ def status: -> OpenAI::Models::Responses::ResponseCustomToolCallOutputItem::status
17
+
18
+ def status=: (
19
+ OpenAI::Models::Responses::ResponseCustomToolCallOutputItem::status _
20
+ ) -> OpenAI::Models::Responses::ResponseCustomToolCallOutputItem::status
21
+
22
+ def created_by: -> String?
23
+
24
+ def created_by=: (String _) -> String
25
+
26
+ def initialize: (
27
+ id: String,
28
+ status: OpenAI::Models::Responses::ResponseCustomToolCallOutputItem::status,
29
+ ?created_by: String
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ id: String,
34
+ status: OpenAI::Models::Responses::ResponseCustomToolCallOutputItem::status,
35
+ created_by: String
36
+ }
37
+
38
+ type status = :in_progress | :completed | :incomplete
39
+
40
+ module Status
41
+ extend OpenAI::Internal::Type::Enum
42
+
43
+ IN_PROGRESS: :in_progress
44
+ COMPLETED: :completed
45
+ INCOMPLETE: :incomplete
46
+
47
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseCustomToolCallOutputItem::status]
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -1,16 +1,51 @@
1
1
  module OpenAI
2
2
  module Models
3
3
  module Responses
4
- type response_function_tool_call_item = { id: String }
4
+ type response_function_tool_call_item =
5
+ {
6
+ id: String,
7
+ status: OpenAI::Models::Responses::ResponseFunctionToolCallItem::status,
8
+ created_by: String
9
+ }
5
10
 
6
11
  class ResponseFunctionToolCallItem < OpenAI::Models::Responses::ResponseFunctionToolCall
7
12
  def id: -> String
8
13
 
9
14
  def id=: (String _) -> String
10
15
 
11
- def initialize: (id: String) -> void
16
+ def status: -> OpenAI::Models::Responses::ResponseFunctionToolCallItem::status
12
17
 
13
- def to_hash: -> { id: String }
18
+ def status=: (
19
+ OpenAI::Models::Responses::ResponseFunctionToolCallItem::status _
20
+ ) -> OpenAI::Models::Responses::ResponseFunctionToolCallItem::status
21
+
22
+ def created_by: -> String?
23
+
24
+ def created_by=: (String _) -> String
25
+
26
+ def initialize: (
27
+ id: String,
28
+ status: OpenAI::Models::Responses::ResponseFunctionToolCallItem::status,
29
+ ?created_by: String
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ id: String,
34
+ status: OpenAI::Models::Responses::ResponseFunctionToolCallItem::status,
35
+ created_by: String
36
+ }
37
+
38
+ type status = :in_progress | :completed | :incomplete
39
+
40
+ module Status
41
+ extend OpenAI::Internal::Type::Enum
42
+
43
+ IN_PROGRESS: :in_progress
44
+ COMPLETED: :completed
45
+ INCOMPLETE: :incomplete
46
+
47
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseFunctionToolCallItem::status]
48
+ end
14
49
  end
15
50
  end
16
51
  end
@@ -6,8 +6,9 @@ module OpenAI
6
6
  id: String,
7
7
  call_id: String,
8
8
  output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output,
9
+ status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status,
9
10
  type: :function_call_output,
10
- status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status
11
+ created_by: String
11
12
  }
12
13
 
13
14
  class ResponseFunctionToolCallOutputItem < OpenAI::Internal::Type::BaseModel
@@ -17,19 +18,20 @@ module OpenAI
17
18
 
18
19
  attr_accessor output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output
19
20
 
21
+ attr_accessor status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status
22
+
20
23
  attr_accessor type: :function_call_output
21
24
 
22
- attr_reader status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status?
25
+ attr_reader created_by: String?
23
26
 
24
- def status=: (
25
- OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status
26
- ) -> OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status
27
+ def created_by=: (String) -> String
27
28
 
28
29
  def initialize: (
29
30
  id: String,
30
31
  call_id: String,
31
32
  output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output,
32
- ?status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status,
33
+ status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status,
34
+ ?created_by: String,
33
35
  ?type: :function_call_output
34
36
  ) -> void
35
37
 
@@ -37,8 +39,9 @@ module OpenAI
37
39
  id: String,
38
40
  call_id: String,
39
41
  output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output,
42
+ status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status,
40
43
  type: :function_call_output,
41
- status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status
44
+ created_by: String
42
45
  }
43
46
 
44
47
  type output =
@@ -6,8 +6,8 @@ module OpenAI
6
6
  id: String,
7
7
  content: OpenAI::Models::Responses::response_input_message_content_list,
8
8
  role: OpenAI::Models::Responses::ResponseInputMessageItem::role,
9
- status: OpenAI::Models::Responses::ResponseInputMessageItem::status,
10
- type: OpenAI::Models::Responses::ResponseInputMessageItem::type_
9
+ type: :message,
10
+ status: OpenAI::Models::Responses::ResponseInputMessageItem::status
11
11
  }
12
12
 
13
13
  class ResponseInputMessageItem < OpenAI::Internal::Type::BaseModel
@@ -17,32 +17,28 @@ module OpenAI
17
17
 
18
18
  attr_accessor role: OpenAI::Models::Responses::ResponseInputMessageItem::role
19
19
 
20
+ attr_accessor type: :message
21
+
20
22
  attr_reader status: OpenAI::Models::Responses::ResponseInputMessageItem::status?
21
23
 
22
24
  def status=: (
23
25
  OpenAI::Models::Responses::ResponseInputMessageItem::status
24
26
  ) -> OpenAI::Models::Responses::ResponseInputMessageItem::status
25
27
 
26
- attr_reader type: OpenAI::Models::Responses::ResponseInputMessageItem::type_?
27
-
28
- def type=: (
29
- OpenAI::Models::Responses::ResponseInputMessageItem::type_
30
- ) -> OpenAI::Models::Responses::ResponseInputMessageItem::type_
31
-
32
28
  def initialize: (
33
29
  id: String,
34
30
  content: OpenAI::Models::Responses::response_input_message_content_list,
35
31
  role: OpenAI::Models::Responses::ResponseInputMessageItem::role,
36
32
  ?status: OpenAI::Models::Responses::ResponseInputMessageItem::status,
37
- ?type: OpenAI::Models::Responses::ResponseInputMessageItem::type_
33
+ ?type: :message
38
34
  ) -> void
39
35
 
40
36
  def to_hash: -> {
41
37
  id: String,
42
38
  content: OpenAI::Models::Responses::response_input_message_content_list,
43
39
  role: OpenAI::Models::Responses::ResponseInputMessageItem::role,
44
- status: OpenAI::Models::Responses::ResponseInputMessageItem::status,
45
- type: OpenAI::Models::Responses::ResponseInputMessageItem::type_
40
+ type: :message,
41
+ status: OpenAI::Models::Responses::ResponseInputMessageItem::status
46
42
  }
47
43
 
48
44
  type role = :user | :system | :developer
@@ -68,16 +64,6 @@ module OpenAI
68
64
 
69
65
  def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputMessageItem::status]
70
66
  end
71
-
72
- type type_ = :message
73
-
74
- module Type
75
- extend OpenAI::Internal::Type::Enum
76
-
77
- MESSAGE: :message
78
-
79
- def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputMessageItem::type_]
80
- end
81
67
  end
82
68
  end
83
69
  end