openai 0.27.1 → 0.28.1

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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/README.md +1 -1
  4. data/lib/openai/internal/transport/pooled_net_requester.rb +7 -10
  5. data/lib/openai/internal/type/base_stream.rb +0 -17
  6. data/lib/openai/models/batch.rb +23 -1
  7. data/lib/openai/models/batch_usage.rb +84 -0
  8. data/lib/openai/models/conversations/conversation_item.rb +37 -1
  9. data/lib/openai/models/responses/response_custom_tool_call_output.rb +47 -4
  10. data/lib/openai/models/responses/response_function_call_arguments_done_event.rb +9 -1
  11. data/lib/openai/models/responses/response_function_call_output_item.rb +26 -0
  12. data/lib/openai/models/responses/response_function_call_output_item_list.rb +11 -0
  13. data/lib/openai/models/responses/response_function_tool_call_output_item.rb +47 -4
  14. data/lib/openai/models/responses/response_input_file_content.rb +52 -0
  15. data/lib/openai/models/responses/response_input_image_content.rb +65 -0
  16. data/lib/openai/models/responses/response_input_item.rb +56 -5
  17. data/lib/openai/models/responses/response_input_text_content.rb +28 -0
  18. data/lib/openai/models/responses/response_item.rb +37 -1
  19. data/lib/openai/models/responses/response_output_item.rb +37 -1
  20. data/lib/openai/models.rb +2 -0
  21. data/lib/openai/version.rb +1 -1
  22. data/lib/openai.rb +6 -0
  23. data/rbi/openai/internal/type/base_stream.rbi +0 -15
  24. data/rbi/openai/models/batch.rbi +35 -1
  25. data/rbi/openai/models/batch_usage.rbi +139 -0
  26. data/rbi/openai/models/conversations/conversation_item.rbi +90 -1
  27. data/rbi/openai/models/responses/response_custom_tool_call_output.rbi +77 -5
  28. data/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi +8 -0
  29. data/rbi/openai/models/responses/response_function_call_output_item.rbi +31 -0
  30. data/rbi/openai/models/responses/response_function_call_output_item_list.rbi +15 -0
  31. data/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +72 -5
  32. data/rbi/openai/models/responses/response_input_file_content.rbi +75 -0
  33. data/rbi/openai/models/responses/response_input_image_content.rbi +125 -0
  34. data/rbi/openai/models/responses/response_input_item.rbi +126 -6
  35. data/rbi/openai/models/responses/response_input_text_content.rbi +39 -0
  36. data/rbi/openai/models/responses/response_item.rbi +86 -1
  37. data/rbi/openai/models/responses/response_output_item.rbi +90 -1
  38. data/rbi/openai/models.rbi +2 -0
  39. data/sig/openai/internal/type/base_stream.rbs +0 -4
  40. data/sig/openai/models/batch.rbs +16 -2
  41. data/sig/openai/models/batch_usage.rbs +60 -0
  42. data/sig/openai/models/conversations/conversation_item.rbs +31 -2
  43. data/sig/openai/models/responses/response_custom_tool_call_output.rbs +27 -4
  44. data/sig/openai/models/responses/response_function_call_arguments_done_event.rbs +5 -0
  45. data/sig/openai/models/responses/response_function_call_output_item.rbs +16 -0
  46. data/sig/openai/models/responses/response_function_call_output_item_list.rbs +10 -0
  47. data/sig/openai/models/responses/response_function_tool_call_output_item.rbs +27 -4
  48. data/sig/openai/models/responses/response_input_file_content.rbs +42 -0
  49. data/sig/openai/models/responses/response_input_image_content.rbs +49 -0
  50. data/sig/openai/models/responses/response_input_item.rbs +45 -6
  51. data/sig/openai/models/responses/response_input_text_content.rbs +17 -0
  52. data/sig/openai/models/responses/response_item.rbs +31 -2
  53. data/sig/openai/models/responses/response_output_item.rbs +31 -2
  54. data/sig/openai/models.rbs +2 -0
  55. metadata +20 -2
@@ -356,8 +356,10 @@ module OpenAI
356
356
  name: String,
357
357
  server_label: String,
358
358
  type: :mcp_call,
359
+ approval_request_id: String?,
359
360
  error: String?,
360
- output: String?
361
+ output: String?,
362
+ status: OpenAI::Models::Conversations::ConversationItem::McpCall::status
361
363
  }
362
364
 
363
365
  class McpCall < OpenAI::Internal::Type::BaseModel
@@ -371,17 +373,27 @@ module OpenAI
371
373
 
372
374
  attr_accessor type: :mcp_call
373
375
 
376
+ attr_accessor approval_request_id: String?
377
+
374
378
  attr_accessor error: String?
375
379
 
376
380
  attr_accessor output: String?
377
381
 
382
+ attr_reader status: OpenAI::Models::Conversations::ConversationItem::McpCall::status?
383
+
384
+ def status=: (
385
+ OpenAI::Models::Conversations::ConversationItem::McpCall::status
386
+ ) -> OpenAI::Models::Conversations::ConversationItem::McpCall::status
387
+
378
388
  def initialize: (
379
389
  id: String,
380
390
  arguments: String,
381
391
  name: String,
382
392
  server_label: String,
393
+ ?approval_request_id: String?,
383
394
  ?error: String?,
384
395
  ?output: String?,
396
+ ?status: OpenAI::Models::Conversations::ConversationItem::McpCall::status,
385
397
  ?type: :mcp_call
386
398
  ) -> void
387
399
 
@@ -391,9 +403,26 @@ module OpenAI
391
403
  name: String,
392
404
  server_label: String,
393
405
  type: :mcp_call,
406
+ approval_request_id: String?,
394
407
  error: String?,
395
- output: String?
408
+ output: String?,
409
+ status: OpenAI::Models::Conversations::ConversationItem::McpCall::status
396
410
  }
411
+
412
+ type status =
413
+ :in_progress | :completed | :incomplete | :calling | :failed
414
+
415
+ module Status
416
+ extend OpenAI::Internal::Type::Enum
417
+
418
+ IN_PROGRESS: :in_progress
419
+ COMPLETED: :completed
420
+ INCOMPLETE: :incomplete
421
+ CALLING: :calling
422
+ FAILED: :failed
423
+
424
+ def self?.values: -> ::Array[OpenAI::Models::Conversations::ConversationItem::McpCall::status]
425
+ end
397
426
  end
398
427
 
399
428
  def self?.variants: -> ::Array[OpenAI::Models::Conversations::conversation_item]
@@ -4,7 +4,7 @@ module OpenAI
4
4
  type response_custom_tool_call_output =
5
5
  {
6
6
  call_id: String,
7
- output: String,
7
+ output: OpenAI::Models::Responses::ResponseCustomToolCallOutput::output,
8
8
  type: :custom_tool_call_output,
9
9
  id: String
10
10
  }
@@ -12,7 +12,7 @@ module OpenAI
12
12
  class ResponseCustomToolCallOutput < OpenAI::Internal::Type::BaseModel
13
13
  attr_accessor call_id: String
14
14
 
15
- attr_accessor output: String
15
+ attr_accessor output: OpenAI::Models::Responses::ResponseCustomToolCallOutput::output
16
16
 
17
17
  attr_accessor type: :custom_tool_call_output
18
18
 
@@ -22,17 +22,40 @@ module OpenAI
22
22
 
23
23
  def initialize: (
24
24
  call_id: String,
25
- output: String,
25
+ output: OpenAI::Models::Responses::ResponseCustomToolCallOutput::output,
26
26
  ?id: String,
27
27
  ?type: :custom_tool_call_output
28
28
  ) -> void
29
29
 
30
30
  def to_hash: -> {
31
31
  call_id: String,
32
- output: String,
32
+ output: OpenAI::Models::Responses::ResponseCustomToolCallOutput::output,
33
33
  type: :custom_tool_call_output,
34
34
  id: String
35
35
  }
36
+
37
+ type output =
38
+ String
39
+ | ::Array[OpenAI::Models::Responses::ResponseCustomToolCallOutput::Output::output_content_list]
40
+
41
+ module Output
42
+ extend OpenAI::Internal::Type::Union
43
+
44
+ type output_content_list =
45
+ OpenAI::Responses::ResponseInputText
46
+ | OpenAI::Responses::ResponseInputImage
47
+ | OpenAI::Responses::ResponseInputFile
48
+
49
+ module OutputContentList
50
+ extend OpenAI::Internal::Type::Union
51
+
52
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseCustomToolCallOutput::Output::output_content_list]
53
+ end
54
+
55
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseCustomToolCallOutput::output]
56
+
57
+ OutputContentListArray: OpenAI::Internal::Type::Converter
58
+ end
36
59
  end
37
60
  end
38
61
  end
@@ -5,6 +5,7 @@ module OpenAI
5
5
  {
6
6
  arguments: String,
7
7
  item_id: String,
8
+ name: String,
8
9
  output_index: Integer,
9
10
  sequence_number: Integer,
10
11
  type: :"response.function_call_arguments.done"
@@ -15,6 +16,8 @@ module OpenAI
15
16
 
16
17
  attr_accessor item_id: String
17
18
 
19
+ attr_accessor name: String
20
+
18
21
  attr_accessor output_index: Integer
19
22
 
20
23
  attr_accessor sequence_number: Integer
@@ -24,6 +27,7 @@ module OpenAI
24
27
  def initialize: (
25
28
  arguments: String,
26
29
  item_id: String,
30
+ name: String,
27
31
  output_index: Integer,
28
32
  sequence_number: Integer,
29
33
  ?type: :"response.function_call_arguments.done"
@@ -32,6 +36,7 @@ module OpenAI
32
36
  def to_hash: -> {
33
37
  arguments: String,
34
38
  item_id: String,
39
+ name: String,
35
40
  output_index: Integer,
36
41
  sequence_number: Integer,
37
42
  type: :"response.function_call_arguments.done"
@@ -0,0 +1,16 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_function_call_output_item =
5
+ OpenAI::Responses::ResponseInputTextContent
6
+ | OpenAI::Responses::ResponseInputImageContent
7
+ | OpenAI::Responses::ResponseInputFileContent
8
+
9
+ module ResponseFunctionCallOutputItem
10
+ extend OpenAI::Internal::Type::Union
11
+
12
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::response_function_call_output_item]
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,10 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_function_call_output_item_list =
5
+ ::Array[OpenAI::Models::Responses::response_function_call_output_item]
6
+
7
+ ResponseFunctionCallOutputItemList: OpenAI::Internal::Type::Converter
8
+ end
9
+ end
10
+ end
@@ -5,7 +5,7 @@ module OpenAI
5
5
  {
6
6
  id: String,
7
7
  call_id: String,
8
- output: String,
8
+ output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output,
9
9
  type: :function_call_output,
10
10
  status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status
11
11
  }
@@ -15,7 +15,7 @@ module OpenAI
15
15
 
16
16
  attr_accessor call_id: String
17
17
 
18
- attr_accessor output: String
18
+ attr_accessor output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output
19
19
 
20
20
  attr_accessor type: :function_call_output
21
21
 
@@ -28,7 +28,7 @@ module OpenAI
28
28
  def initialize: (
29
29
  id: String,
30
30
  call_id: String,
31
- output: String,
31
+ output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output,
32
32
  ?status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status,
33
33
  ?type: :function_call_output
34
34
  ) -> void
@@ -36,11 +36,34 @@ module OpenAI
36
36
  def to_hash: -> {
37
37
  id: String,
38
38
  call_id: String,
39
- output: String,
39
+ output: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output,
40
40
  type: :function_call_output,
41
41
  status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status
42
42
  }
43
43
 
44
+ type output =
45
+ String
46
+ | ::Array[OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Output::output_content_list]
47
+
48
+ module Output
49
+ extend OpenAI::Internal::Type::Union
50
+
51
+ type output_content_list =
52
+ OpenAI::Responses::ResponseInputText
53
+ | OpenAI::Responses::ResponseInputImage
54
+ | OpenAI::Responses::ResponseInputFile
55
+
56
+ module OutputContentList
57
+ extend OpenAI::Internal::Type::Union
58
+
59
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Output::output_content_list]
60
+ end
61
+
62
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::output]
63
+
64
+ OutputContentListArray: OpenAI::Internal::Type::Converter
65
+ end
66
+
44
67
  type status = :in_progress | :completed | :incomplete
45
68
 
46
69
  module Status
@@ -0,0 +1,42 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_input_file_content =
5
+ {
6
+ type: :input_file,
7
+ file_data: String?,
8
+ file_id: String?,
9
+ file_url: String?,
10
+ filename: String?
11
+ }
12
+
13
+ class ResponseInputFileContent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor type: :input_file
15
+
16
+ attr_accessor file_data: String?
17
+
18
+ attr_accessor file_id: String?
19
+
20
+ attr_accessor file_url: String?
21
+
22
+ attr_accessor filename: String?
23
+
24
+ def initialize: (
25
+ ?file_data: String?,
26
+ ?file_id: String?,
27
+ ?file_url: String?,
28
+ ?filename: String?,
29
+ ?type: :input_file
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ type: :input_file,
34
+ file_data: String?,
35
+ file_id: String?,
36
+ file_url: String?,
37
+ filename: String?
38
+ }
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,49 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_input_image_content =
5
+ {
6
+ type: :input_image,
7
+ detail: OpenAI::Models::Responses::ResponseInputImageContent::detail?,
8
+ file_id: String?,
9
+ image_url: String?
10
+ }
11
+
12
+ class ResponseInputImageContent < OpenAI::Internal::Type::BaseModel
13
+ attr_accessor type: :input_image
14
+
15
+ attr_accessor detail: OpenAI::Models::Responses::ResponseInputImageContent::detail?
16
+
17
+ attr_accessor file_id: String?
18
+
19
+ attr_accessor image_url: String?
20
+
21
+ def initialize: (
22
+ ?detail: OpenAI::Models::Responses::ResponseInputImageContent::detail?,
23
+ ?file_id: String?,
24
+ ?image_url: String?,
25
+ ?type: :input_image
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ type: :input_image,
30
+ detail: OpenAI::Models::Responses::ResponseInputImageContent::detail?,
31
+ file_id: String?,
32
+ image_url: String?
33
+ }
34
+
35
+ type detail = :low | :high | :auto
36
+
37
+ module Detail
38
+ extend OpenAI::Internal::Type::Enum
39
+
40
+ LOW: :low
41
+ HIGH: :high
42
+ AUTO: :auto
43
+
44
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputImageContent::detail]
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -177,7 +177,7 @@ module OpenAI
177
177
  type function_call_output =
178
178
  {
179
179
  call_id: String,
180
- output: String,
180
+ output: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::output,
181
181
  type: :function_call_output,
182
182
  id: String?,
183
183
  status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status?
@@ -186,7 +186,7 @@ module OpenAI
186
186
  class FunctionCallOutput < OpenAI::Internal::Type::BaseModel
187
187
  attr_accessor call_id: String
188
188
 
189
- attr_accessor output: String
189
+ attr_accessor output: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::output
190
190
 
191
191
  attr_accessor type: :function_call_output
192
192
 
@@ -196,7 +196,7 @@ module OpenAI
196
196
 
197
197
  def initialize: (
198
198
  call_id: String,
199
- output: String,
199
+ output: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::output,
200
200
  ?id: String?,
201
201
  ?status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status?,
202
202
  ?type: :function_call_output
@@ -204,12 +204,22 @@ module OpenAI
204
204
 
205
205
  def to_hash: -> {
206
206
  call_id: String,
207
- output: String,
207
+ output: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::output,
208
208
  type: :function_call_output,
209
209
  id: String?,
210
210
  status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status?
211
211
  }
212
212
 
213
+ type output =
214
+ String
215
+ | OpenAI::Models::Responses::response_function_call_output_item_list
216
+
217
+ module Output
218
+ extend OpenAI::Internal::Type::Union
219
+
220
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::output]
221
+ end
222
+
213
223
  type status = :in_progress | :completed | :incomplete
214
224
 
215
225
  module Status
@@ -553,8 +563,10 @@ module OpenAI
553
563
  name: String,
554
564
  server_label: String,
555
565
  type: :mcp_call,
566
+ approval_request_id: String?,
556
567
  error: String?,
557
- output: String?
568
+ output: String?,
569
+ status: OpenAI::Models::Responses::ResponseInputItem::McpCall::status
558
570
  }
559
571
 
560
572
  class McpCall < OpenAI::Internal::Type::BaseModel
@@ -568,17 +580,27 @@ module OpenAI
568
580
 
569
581
  attr_accessor type: :mcp_call
570
582
 
583
+ attr_accessor approval_request_id: String?
584
+
571
585
  attr_accessor error: String?
572
586
 
573
587
  attr_accessor output: String?
574
588
 
589
+ attr_reader status: OpenAI::Models::Responses::ResponseInputItem::McpCall::status?
590
+
591
+ def status=: (
592
+ OpenAI::Models::Responses::ResponseInputItem::McpCall::status
593
+ ) -> OpenAI::Models::Responses::ResponseInputItem::McpCall::status
594
+
575
595
  def initialize: (
576
596
  id: String,
577
597
  arguments: String,
578
598
  name: String,
579
599
  server_label: String,
600
+ ?approval_request_id: String?,
580
601
  ?error: String?,
581
602
  ?output: String?,
603
+ ?status: OpenAI::Models::Responses::ResponseInputItem::McpCall::status,
582
604
  ?type: :mcp_call
583
605
  ) -> void
584
606
 
@@ -588,9 +610,26 @@ module OpenAI
588
610
  name: String,
589
611
  server_label: String,
590
612
  type: :mcp_call,
613
+ approval_request_id: String?,
591
614
  error: String?,
592
- output: String?
615
+ output: String?,
616
+ status: OpenAI::Models::Responses::ResponseInputItem::McpCall::status
593
617
  }
618
+
619
+ type status =
620
+ :in_progress | :completed | :incomplete | :calling | :failed
621
+
622
+ module Status
623
+ extend OpenAI::Internal::Type::Enum
624
+
625
+ IN_PROGRESS: :in_progress
626
+ COMPLETED: :completed
627
+ INCOMPLETE: :incomplete
628
+ CALLING: :calling
629
+ FAILED: :failed
630
+
631
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::McpCall::status]
632
+ end
594
633
  end
595
634
 
596
635
  type item_reference =
@@ -0,0 +1,17 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_input_text_content = { text: String, type: :input_text }
5
+
6
+ class ResponseInputTextContent < OpenAI::Internal::Type::BaseModel
7
+ attr_accessor text: String
8
+
9
+ attr_accessor type: :input_text
10
+
11
+ def initialize: (text: String, ?type: :input_text) -> void
12
+
13
+ def to_hash: -> { text: String, type: :input_text }
14
+ end
15
+ end
16
+ end
17
+ end
@@ -352,8 +352,10 @@ module OpenAI
352
352
  name: String,
353
353
  server_label: String,
354
354
  type: :mcp_call,
355
+ approval_request_id: String?,
355
356
  error: String?,
356
- output: String?
357
+ output: String?,
358
+ status: OpenAI::Models::Responses::ResponseItem::McpCall::status
357
359
  }
358
360
 
359
361
  class McpCall < OpenAI::Internal::Type::BaseModel
@@ -367,17 +369,27 @@ module OpenAI
367
369
 
368
370
  attr_accessor type: :mcp_call
369
371
 
372
+ attr_accessor approval_request_id: String?
373
+
370
374
  attr_accessor error: String?
371
375
 
372
376
  attr_accessor output: String?
373
377
 
378
+ attr_reader status: OpenAI::Models::Responses::ResponseItem::McpCall::status?
379
+
380
+ def status=: (
381
+ OpenAI::Models::Responses::ResponseItem::McpCall::status
382
+ ) -> OpenAI::Models::Responses::ResponseItem::McpCall::status
383
+
374
384
  def initialize: (
375
385
  id: String,
376
386
  arguments: String,
377
387
  name: String,
378
388
  server_label: String,
389
+ ?approval_request_id: String?,
379
390
  ?error: String?,
380
391
  ?output: String?,
392
+ ?status: OpenAI::Models::Responses::ResponseItem::McpCall::status,
381
393
  ?type: :mcp_call
382
394
  ) -> void
383
395
 
@@ -387,9 +399,26 @@ module OpenAI
387
399
  name: String,
388
400
  server_label: String,
389
401
  type: :mcp_call,
402
+ approval_request_id: String?,
390
403
  error: String?,
391
- output: String?
404
+ output: String?,
405
+ status: OpenAI::Models::Responses::ResponseItem::McpCall::status
392
406
  }
407
+
408
+ type status =
409
+ :in_progress | :completed | :incomplete | :calling | :failed
410
+
411
+ module Status
412
+ extend OpenAI::Internal::Type::Enum
413
+
414
+ IN_PROGRESS: :in_progress
415
+ COMPLETED: :completed
416
+ INCOMPLETE: :incomplete
417
+ CALLING: :calling
418
+ FAILED: :failed
419
+
420
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseItem::McpCall::status]
421
+ end
393
422
  end
394
423
 
395
424
  def self?.variants: -> ::Array[OpenAI::Models::Responses::response_item]
@@ -162,8 +162,10 @@ module OpenAI
162
162
  name: String,
163
163
  server_label: String,
164
164
  type: :mcp_call,
165
+ approval_request_id: String?,
165
166
  error: String?,
166
- output: String?
167
+ output: String?,
168
+ status: OpenAI::Models::Responses::ResponseOutputItem::McpCall::status
167
169
  }
168
170
 
169
171
  class McpCall < OpenAI::Internal::Type::BaseModel
@@ -177,17 +179,27 @@ module OpenAI
177
179
 
178
180
  attr_accessor type: :mcp_call
179
181
 
182
+ attr_accessor approval_request_id: String?
183
+
180
184
  attr_accessor error: String?
181
185
 
182
186
  attr_accessor output: String?
183
187
 
188
+ attr_reader status: OpenAI::Models::Responses::ResponseOutputItem::McpCall::status?
189
+
190
+ def status=: (
191
+ OpenAI::Models::Responses::ResponseOutputItem::McpCall::status
192
+ ) -> OpenAI::Models::Responses::ResponseOutputItem::McpCall::status
193
+
184
194
  def initialize: (
185
195
  id: String,
186
196
  arguments: String,
187
197
  name: String,
188
198
  server_label: String,
199
+ ?approval_request_id: String?,
189
200
  ?error: String?,
190
201
  ?output: String?,
202
+ ?status: OpenAI::Models::Responses::ResponseOutputItem::McpCall::status,
191
203
  ?type: :mcp_call
192
204
  ) -> void
193
205
 
@@ -197,9 +209,26 @@ module OpenAI
197
209
  name: String,
198
210
  server_label: String,
199
211
  type: :mcp_call,
212
+ approval_request_id: String?,
200
213
  error: String?,
201
- output: String?
214
+ output: String?,
215
+ status: OpenAI::Models::Responses::ResponseOutputItem::McpCall::status
202
216
  }
217
+
218
+ type status =
219
+ :in_progress | :completed | :incomplete | :calling | :failed
220
+
221
+ module Status
222
+ extend OpenAI::Internal::Type::Enum
223
+
224
+ IN_PROGRESS: :in_progress
225
+ COMPLETED: :completed
226
+ INCOMPLETE: :incomplete
227
+ CALLING: :calling
228
+ FAILED: :failed
229
+
230
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseOutputItem::McpCall::status]
231
+ end
203
232
  end
204
233
 
205
234
  type mcp_list_tools =
@@ -23,6 +23,8 @@ module OpenAI
23
23
 
24
24
  class BatchRetrieveParams = OpenAI::Models::BatchRetrieveParams
25
25
 
26
+ class BatchUsage = OpenAI::Models::BatchUsage
27
+
26
28
  module Beta = OpenAI::Models::Beta
27
29
 
28
30
  module Chat = OpenAI::Models::Chat