openai 0.79.0 → 0.80.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 (106) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/bedrock.md +67 -2
  5. data/lib/openai/models/all_models.rb +2 -0
  6. data/lib/openai/models/beta/beta_mcp_tool_call_error.rb +84 -0
  7. data/lib/openai/models/beta/beta_response.rb +18 -0
  8. data/lib/openai/models/beta/beta_response_input_item.rb +3 -3
  9. data/lib/openai/models/beta/beta_response_item.rb +3 -3
  10. data/lib/openai/models/beta/beta_response_output_item.rb +3 -3
  11. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +5 -2
  12. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +201 -4
  13. data/lib/openai/models/beta/beta_response_reasoning_item.rb +5 -0
  14. data/lib/openai/models/beta/beta_responses_client_event.rb +18 -0
  15. data/lib/openai/models/beta/beta_responses_server_event.rb +126 -22
  16. data/lib/openai/models/beta/beta_web_search_tool.rb +11 -1
  17. data/lib/openai/models/beta/response_compact_params.rb +9 -0
  18. data/lib/openai/models/beta/response_create_params.rb +18 -0
  19. data/lib/openai/models/chat_model.rb +1 -0
  20. data/lib/openai/models/completion_usage.rb +26 -2
  21. data/lib/openai/models/conversations/conversation_item.rb +3 -3
  22. data/lib/openai/models/model.rb +9 -1
  23. data/lib/openai/models/responses/mcp_tool_call_error.rb +82 -0
  24. data/lib/openai/models/responses/response.rb +9 -0
  25. data/lib/openai/models/responses/response_compact_params.rb +9 -0
  26. data/lib/openai/models/responses/response_create_params.rb +9 -0
  27. data/lib/openai/models/responses/response_input_item.rb +3 -3
  28. data/lib/openai/models/responses/response_item.rb +3 -3
  29. data/lib/openai/models/responses/response_output_item.rb +3 -3
  30. data/lib/openai/models/responses/response_output_item_added_event.rb +5 -2
  31. data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +201 -4
  32. data/lib/openai/models/responses/response_reasoning_item.rb +5 -0
  33. data/lib/openai/models/responses/responses_client_event.rb +9 -0
  34. data/lib/openai/models/responses/responses_server_event.rb +100 -22
  35. data/lib/openai/models/responses/web_search_tool.rb +11 -1
  36. data/lib/openai/models/responses_model.rb +2 -0
  37. data/lib/openai/providers/bedrock.rb +127 -16
  38. data/lib/openai/resources/files.rb +1 -1
  39. data/lib/openai/version.rb +1 -1
  40. data/lib/openai.rb +4 -2
  41. data/rbi/openai/models/all_models.rbi +10 -0
  42. data/rbi/openai/models/beta/beta_mcp_tool_call_error.rbi +122 -0
  43. data/rbi/openai/models/beta/beta_response.rbi +32 -0
  44. data/rbi/openai/models/beta/beta_response_input_item.rbi +27 -3
  45. data/rbi/openai/models/beta/beta_response_item.rbi +27 -3
  46. data/rbi/openai/models/beta/beta_response_output_item.rbi +27 -3
  47. data/rbi/openai/models/beta/beta_response_output_item_added_event.rbi +8 -2
  48. data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +297 -5
  49. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +10 -0
  50. data/rbi/openai/models/beta/beta_responses_client_event.rbi +32 -0
  51. data/rbi/openai/models/beta/beta_responses_server_event.rbi +221 -67
  52. data/rbi/openai/models/beta/beta_web_search_tool.rbi +15 -0
  53. data/rbi/openai/models/beta/response_compact_params.rbi +15 -0
  54. data/rbi/openai/models/beta/response_create_params.rbi +32 -0
  55. data/rbi/openai/models/chat_model.rbi +2 -0
  56. data/rbi/openai/models/completion_usage.rbi +39 -6
  57. data/rbi/openai/models/conversations/conversation_item.rbi +12 -3
  58. data/rbi/openai/models/model.rbi +14 -1
  59. data/rbi/openai/models/responses/mcp_tool_call_error.rbi +120 -0
  60. data/rbi/openai/models/responses/response.rbi +17 -0
  61. data/rbi/openai/models/responses/response_compact_params.rbi +15 -0
  62. data/rbi/openai/models/responses/response_create_params.rbi +17 -0
  63. data/rbi/openai/models/responses/response_input_item.rbi +27 -3
  64. data/rbi/openai/models/responses/response_item.rbi +27 -3
  65. data/rbi/openai/models/responses/response_output_item.rbi +27 -3
  66. data/rbi/openai/models/responses/response_output_item_added_event.rbi +8 -2
  67. data/rbi/openai/models/responses/response_output_text_annotation_added_event.rbi +297 -5
  68. data/rbi/openai/models/responses/response_reasoning_item.rbi +10 -0
  69. data/rbi/openai/models/responses/responses_client_event.rbi +17 -0
  70. data/rbi/openai/models/responses/responses_server_event.rbi +165 -62
  71. data/rbi/openai/models/responses/web_search_tool.rbi +15 -0
  72. data/rbi/openai/models/responses_model.rbi +10 -0
  73. data/rbi/openai/providers.rbi +2 -0
  74. data/rbi/openai/resources/beta/responses.rbi +8 -0
  75. data/rbi/openai/resources/files.rbi +1 -1
  76. data/rbi/openai/resources/responses.rbi +8 -0
  77. data/sig/openai/models/all_models.rbs +4 -0
  78. data/sig/openai/models/beta/beta_mcp_tool_call_error.rbs +75 -0
  79. data/sig/openai/models/beta/beta_response.rbs +8 -1
  80. data/sig/openai/models/beta/beta_response_input_item.rbs +4 -4
  81. data/sig/openai/models/beta/beta_response_item.rbs +4 -4
  82. data/sig/openai/models/beta/beta_response_output_item.rbs +4 -4
  83. data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +149 -4
  84. data/sig/openai/models/beta/beta_responses_client_event.rbs +8 -1
  85. data/sig/openai/models/beta/beta_responses_server_event.rbs +99 -39
  86. data/sig/openai/models/beta/beta_web_search_tool.rbs +7 -0
  87. data/sig/openai/models/beta/response_compact_params.rbs +6 -0
  88. data/sig/openai/models/beta/response_create_params.rbs +8 -1
  89. data/sig/openai/models/chat_model.rbs +2 -0
  90. data/sig/openai/models/completion_usage.rbs +27 -6
  91. data/sig/openai/models/conversations/conversation_item.rbs +4 -4
  92. data/sig/openai/models/model.rbs +12 -2
  93. data/sig/openai/models/responses/mcp_tool_call_error.rbs +73 -0
  94. data/sig/openai/models/responses/response.rbs +2 -1
  95. data/sig/openai/models/responses/response_compact_params.rbs +6 -0
  96. data/sig/openai/models/responses/response_create_params.rbs +2 -1
  97. data/sig/openai/models/responses/response_input_item.rbs +4 -4
  98. data/sig/openai/models/responses/response_item.rbs +4 -4
  99. data/sig/openai/models/responses/response_output_item.rbs +4 -4
  100. data/sig/openai/models/responses/response_output_text_annotation_added_event.rbs +149 -4
  101. data/sig/openai/models/responses/responses_client_event.rbs +2 -1
  102. data/sig/openai/models/responses/responses_server_event.rbs +84 -36
  103. data/sig/openai/models/responses/web_search_tool.rbs +7 -0
  104. data/sig/openai/models/responses_model.rbs +4 -0
  105. data/sig/openai/providers.rbs +1 -0
  106. metadata +7 -1
@@ -238,6 +238,10 @@ module OpenAI
238
238
  # Responses or Chat Completions. The response will show `service_tier=priority`
239
239
  # regardless of if you specify `service_tier=fast` or `priority` in your
240
240
  # request.
241
+ # - If set to 'ultrafast', then the request will be processed with the
242
+ # access-controlled Ultrafast Processing service tier. This tier is currently
243
+ # available for `gpt-5.6-sol`; a response served through it will show
244
+ # `service_tier=ultrafast`.
241
245
  # - When not set, the default behavior is 'auto'.
242
246
  #
243
247
  # When the `service_tier` parameter is set, the response body will include the
@@ -705,6 +709,10 @@ module OpenAI
705
709
  # Responses or Chat Completions. The response will show `service_tier=priority`
706
710
  # regardless of if you specify `service_tier=fast` or `priority` in your
707
711
  # request.
712
+ # - If set to 'ultrafast', then the request will be processed with the
713
+ # access-controlled Ultrafast Processing service tier. This tier is currently
714
+ # available for `gpt-5.6-sol`; a response served through it will show
715
+ # `service_tier=ultrafast`.
708
716
  # - When not set, the default behavior is 'auto'.
709
717
  #
710
718
  # When the `service_tier` parameter is set, the response body will include the
@@ -720,6 +728,7 @@ module OpenAI
720
728
  SCALE = :scale
721
729
  PRIORITY = :priority
722
730
  FAST = :fast
731
+ ULTRAFAST = :ultrafast
723
732
 
724
733
  # @!method self.values
725
734
  # @return [Array<Symbol>]
@@ -1706,8 +1706,8 @@ module OpenAI
1706
1706
  # @!attribute error
1707
1707
  # The error from the tool call, if any.
1708
1708
  #
1709
- # @return [String, nil]
1710
- optional :error, String, nil?: true
1709
+ # @return [OpenAI::Models::Responses::McpToolCallError::McpProtocolError, OpenAI::Models::Responses::McpToolCallError::McpToolExecutionError, OpenAI::Models::Responses::McpToolCallError::HTTPError, nil]
1710
+ optional :error, union: -> { OpenAI::Responses::McpToolCallError }, nil?: true
1711
1711
 
1712
1712
  # @!attribute output
1713
1713
  # The output from the tool call.
@@ -1738,7 +1738,7 @@ module OpenAI
1738
1738
  #
1739
1739
  # @param approval_request_id [String, nil] Unique identifier for the MCP tool call approval request.
1740
1740
  #
1741
- # @param error [String, nil] The error from the tool call, if any.
1741
+ # @param error [OpenAI::Models::Responses::McpToolCallError::McpProtocolError, OpenAI::Models::Responses::McpToolCallError::McpToolExecutionError, OpenAI::Models::Responses::McpToolCallError::HTTPError, nil] The error from the tool call, if any.
1742
1742
  #
1743
1743
  # @param output [String, nil] The output from the tool call.
1744
1744
  #
@@ -705,8 +705,8 @@ module OpenAI
705
705
  # @!attribute error
706
706
  # The error from the tool call, if any.
707
707
  #
708
- # @return [String, nil]
709
- optional :error, String, nil?: true
708
+ # @return [OpenAI::Models::Responses::McpToolCallError::McpProtocolError, OpenAI::Models::Responses::McpToolCallError::McpToolExecutionError, OpenAI::Models::Responses::McpToolCallError::HTTPError, nil]
709
+ optional :error, union: -> { OpenAI::Responses::McpToolCallError }, nil?: true
710
710
 
711
711
  # @!attribute output
712
712
  # The output from the tool call.
@@ -737,7 +737,7 @@ module OpenAI
737
737
  #
738
738
  # @param approval_request_id [String, nil] Unique identifier for the MCP tool call approval request.
739
739
  #
740
- # @param error [String, nil] The error from the tool call, if any.
740
+ # @param error [OpenAI::Models::Responses::McpToolCallError::McpProtocolError, OpenAI::Models::Responses::McpToolCallError::McpToolExecutionError, OpenAI::Models::Responses::McpToolCallError::HTTPError, nil] The error from the tool call, if any.
741
741
  #
742
742
  # @param output [String, nil] The output from the tool call.
743
743
  #
@@ -518,8 +518,8 @@ module OpenAI
518
518
  # @!attribute error
519
519
  # The error from the tool call, if any.
520
520
  #
521
- # @return [String, nil]
522
- optional :error, String, nil?: true
521
+ # @return [OpenAI::Models::Responses::McpToolCallError::McpProtocolError, OpenAI::Models::Responses::McpToolCallError::McpToolExecutionError, OpenAI::Models::Responses::McpToolCallError::HTTPError, nil]
522
+ optional :error, union: -> { OpenAI::Responses::McpToolCallError }, nil?: true
523
523
 
524
524
  # @!attribute output
525
525
  # The output from the tool call.
@@ -550,7 +550,7 @@ module OpenAI
550
550
  #
551
551
  # @param approval_request_id [String, nil] Unique identifier for the MCP tool call approval request.
552
552
  #
553
- # @param error [String, nil] The error from the tool call, if any.
553
+ # @param error [OpenAI::Models::Responses::McpToolCallError::McpProtocolError, OpenAI::Models::Responses::McpToolCallError::McpToolExecutionError, OpenAI::Models::Responses::McpToolCallError::HTTPError, nil] The error from the tool call, if any.
554
554
  #
555
555
  # @param output [String, nil] The output from the tool call.
556
556
  #
@@ -5,7 +5,10 @@ module OpenAI
5
5
  module Responses
6
6
  class ResponseOutputItemAddedEvent < OpenAI::Internal::Type::BaseModel
7
7
  # @!attribute item
8
- # The output item that was added.
8
+ # The output item that was added. For reasoning items, `encrypted_content` may be
9
+ # incomplete while the item is in progress. Use the reasoning item from the
10
+ # corresponding `response.output_item.done` event when passing it as input to a
11
+ # subsequent request.
9
12
  #
10
13
  # @return [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::Program, OpenAI::Models::Responses::ResponseOutputItem::ProgramOutput, OpenAI::Models::Responses::ResponseToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItem, OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools, OpenAI::Models::Responses::ResponseCompactionItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseFunctionShellToolCall, OpenAI::Models::Responses::ResponseFunctionShellToolCallOutput, OpenAI::Models::Responses::ResponseApplyPatchToolCall, OpenAI::Models::Responses::ResponseApplyPatchToolCallOutput, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseCustomToolCallOutputItem]
11
14
  required :item, union: -> { OpenAI::Responses::ResponseOutputItem }
@@ -34,7 +37,7 @@ module OpenAI
34
37
  #
35
38
  # Emitted when a new output item is added.
36
39
  #
37
- # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::Program, OpenAI::Models::Responses::ResponseOutputItem::ProgramOutput, OpenAI::Models::Responses::ResponseToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItem, OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools, OpenAI::Models::Responses::ResponseCompactionItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseFunctionShellToolCall, OpenAI::Models::Responses::ResponseFunctionShellToolCallOutput, OpenAI::Models::Responses::ResponseApplyPatchToolCall, OpenAI::Models::Responses::ResponseApplyPatchToolCallOutput, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseCustomToolCallOutputItem] The output item that was added.
40
+ # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::Program, OpenAI::Models::Responses::ResponseOutputItem::ProgramOutput, OpenAI::Models::Responses::ResponseToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItem, OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools, OpenAI::Models::Responses::ResponseCompactionItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseFunctionShellToolCall, OpenAI::Models::Responses::ResponseFunctionShellToolCallOutput, OpenAI::Models::Responses::ResponseApplyPatchToolCall, OpenAI::Models::Responses::ResponseApplyPatchToolCallOutput, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseCustomToolCallOutputItem] The output item that was added. For reasoning items, `encrypted_content`
38
41
  #
39
42
  # @param output_index [Integer] The index of the output item that was added.
40
43
  #
@@ -5,10 +5,12 @@ module OpenAI
5
5
  module Responses
6
6
  class ResponseOutputTextAnnotationAddedEvent < OpenAI::Internal::Type::BaseModel
7
7
  # @!attribute annotation
8
- # The annotation object being added. (See annotation schema for details.)
8
+ # An annotation that applies to a span of output text.
9
9
  #
10
- # @return [Object]
11
- required :annotation, OpenAI::Internal::Type::Unknown
10
+ # @return [OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::ContainerFileCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FilePath, nil]
11
+ required :annotation,
12
+ union: -> { OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation },
13
+ nil?: true
12
14
 
13
15
  # @!attribute annotation_index
14
16
  # The index of the annotation within the content part.
@@ -49,7 +51,7 @@ module OpenAI
49
51
  # @!method initialize(annotation:, annotation_index:, content_index:, item_id:, output_index:, sequence_number:, type: :"response.output_text.annotation.added")
50
52
  # Emitted when an annotation is added to output text content.
51
53
  #
52
- # @param annotation [Object] The annotation object being added. (See annotation schema for details.)
54
+ # @param annotation [OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::ContainerFileCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FilePath, nil] An annotation that applies to a span of output text.
53
55
  #
54
56
  # @param annotation_index [Integer] The index of the annotation within the content part.
55
57
  #
@@ -62,6 +64,201 @@ module OpenAI
62
64
  # @param sequence_number [Integer] The sequence number of this event.
63
65
  #
64
66
  # @param type [Symbol, :"response.output_text.annotation.added"] The type of the event. Always 'response.output_text.annotation.added'.
67
+
68
+ # An annotation that applies to a span of output text.
69
+ #
70
+ # @see OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent#annotation
71
+ module Annotation
72
+ extend OpenAI::Internal::Type::Union
73
+
74
+ discriminator :type
75
+
76
+ # A citation to a file.
77
+ variant :file_citation,
78
+ -> { OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FileCitation }
79
+
80
+ # A citation for a web resource used to generate a model response.
81
+ variant :url_citation,
82
+ -> { OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::URLCitation }
83
+
84
+ # A citation for a container file used to generate a model response.
85
+ variant :container_file_citation,
86
+ -> { OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::ContainerFileCitation }
87
+
88
+ # A path to a file.
89
+ variant :file_path, -> { OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FilePath }
90
+
91
+ class FileCitation < OpenAI::Internal::Type::BaseModel
92
+ # @!attribute file_id
93
+ # The ID of the file.
94
+ #
95
+ # @return [String]
96
+ required :file_id, String
97
+
98
+ # @!attribute filename
99
+ # The filename of the file cited.
100
+ #
101
+ # @return [String]
102
+ required :filename, String
103
+
104
+ # @!attribute index
105
+ # The index of the file in the list of files.
106
+ #
107
+ # @return [Integer]
108
+ required :index, Integer
109
+
110
+ # @!attribute type
111
+ # The type of the file citation. Always `file_citation`.
112
+ #
113
+ # @return [Symbol, :file_citation]
114
+ required :type, const: :file_citation
115
+
116
+ # @!method initialize(file_id:, filename:, index:, type: :file_citation)
117
+ # A citation to a file.
118
+ #
119
+ # @param file_id [String] The ID of the file.
120
+ #
121
+ # @param filename [String] The filename of the file cited.
122
+ #
123
+ # @param index [Integer] The index of the file in the list of files.
124
+ #
125
+ # @param type [Symbol, :file_citation] The type of the file citation. Always `file_citation`.
126
+ end
127
+
128
+ class URLCitation < OpenAI::Internal::Type::BaseModel
129
+ # @!attribute end_index
130
+ # The index of the last character of the URL citation in the message.
131
+ #
132
+ # @return [Integer]
133
+ required :end_index, Integer
134
+
135
+ # @!attribute start_index
136
+ # The index of the first character of the URL citation in the message.
137
+ #
138
+ # @return [Integer]
139
+ required :start_index, Integer
140
+
141
+ # @!attribute title
142
+ # The title of the web resource.
143
+ #
144
+ # @return [String]
145
+ required :title, String
146
+
147
+ # @!attribute type
148
+ # The type of the URL citation. Always `url_citation`.
149
+ #
150
+ # @return [Symbol, :url_citation]
151
+ required :type, const: :url_citation
152
+
153
+ # @!attribute url
154
+ # The URL of the web resource.
155
+ #
156
+ # @return [String]
157
+ required :url, String
158
+
159
+ # @!method initialize(end_index:, start_index:, title:, url:, type: :url_citation)
160
+ # A citation for a web resource used to generate a model response.
161
+ #
162
+ # @param end_index [Integer] The index of the last character of the URL citation in the message.
163
+ #
164
+ # @param start_index [Integer] The index of the first character of the URL citation in the message.
165
+ #
166
+ # @param title [String] The title of the web resource.
167
+ #
168
+ # @param url [String] The URL of the web resource.
169
+ #
170
+ # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`.
171
+ end
172
+
173
+ class ContainerFileCitation < OpenAI::Internal::Type::BaseModel
174
+ # @!attribute container_id
175
+ # The ID of the container file.
176
+ #
177
+ # @return [String]
178
+ required :container_id, String
179
+
180
+ # @!attribute end_index
181
+ # The index of the last character of the container file citation in the message.
182
+ #
183
+ # @return [Integer]
184
+ required :end_index, Integer
185
+
186
+ # @!attribute file_id
187
+ # The ID of the file.
188
+ #
189
+ # @return [String]
190
+ required :file_id, String
191
+
192
+ # @!attribute filename
193
+ # The filename of the container file cited.
194
+ #
195
+ # @return [String]
196
+ required :filename, String
197
+
198
+ # @!attribute start_index
199
+ # The index of the first character of the container file citation in the message.
200
+ #
201
+ # @return [Integer]
202
+ required :start_index, Integer
203
+
204
+ # @!attribute type
205
+ # The type of the container file citation. Always `container_file_citation`.
206
+ #
207
+ # @return [Symbol, :container_file_citation]
208
+ required :type, const: :container_file_citation
209
+
210
+ # @!method initialize(container_id:, end_index:, file_id:, filename:, start_index:, type: :container_file_citation)
211
+ # A citation for a container file used to generate a model response.
212
+ #
213
+ # @param container_id [String] The ID of the container file.
214
+ #
215
+ # @param end_index [Integer] The index of the last character of the container file citation in the message.
216
+ #
217
+ # @param file_id [String] The ID of the file.
218
+ #
219
+ # @param filename [String] The filename of the container file cited.
220
+ #
221
+ # @param start_index [Integer] The index of the first character of the container file citation in the message.
222
+ #
223
+ # @param type [Symbol, :container_file_citation] The type of the container file citation. Always `container_file_citation`.
224
+ end
225
+
226
+ class FilePath < OpenAI::Internal::Type::BaseModel
227
+ # @!attribute file_id
228
+ # The ID of the file.
229
+ #
230
+ # @return [String]
231
+ required :file_id, String
232
+
233
+ # @!attribute index
234
+ # The index of the file in the list of files.
235
+ #
236
+ # @return [Integer]
237
+ required :index, Integer
238
+
239
+ # @!attribute type
240
+ # The type of the file path. Always `file_path`.
241
+ #
242
+ # @return [Symbol, :file_path]
243
+ required :type, const: :file_path
244
+
245
+ # @!method initialize(file_id:, index:, type: :file_path)
246
+ # Some parameter documentations has been truncated, see
247
+ # {OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FilePath}
248
+ # for more details.
249
+ #
250
+ # A path to a file.
251
+ #
252
+ # @param file_id [String] The ID of the file.
253
+ #
254
+ # @param index [Integer] The index of the file in the list of files.
255
+ #
256
+ # @param type [Symbol, :file_path] The type of the file path. Always `file_path`.
257
+ end
258
+
259
+ # @!method self.variants
260
+ # @return [Array(OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::ContainerFileCitation, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FilePath)]
261
+ end
65
262
  end
66
263
  end
67
264
  end
@@ -35,6 +35,11 @@ module OpenAI
35
35
  # reasoning items returned by `POST /v1/responses` and WebSocket `response.create`
36
36
  # requests.
37
37
  #
38
+ # When streaming, use the completed reasoning item and its `encrypted_content`
39
+ # from the `response.output_item.done` event in subsequent requests. The
40
+ # `encrypted_content` in `response.output_item.added` may be incomplete. This is
41
+ # especially important when `store` is `false` or when using Zero Data Retention.
42
+ #
38
43
  # @return [String, nil]
39
44
  optional :encrypted_content, String, nil?: true
40
45
 
@@ -238,6 +238,10 @@ module OpenAI
238
238
  # Responses or Chat Completions. The response will show `service_tier=priority`
239
239
  # regardless of if you specify `service_tier=fast` or `priority` in your
240
240
  # request.
241
+ # - If set to 'ultrafast', then the request will be processed with the
242
+ # access-controlled Ultrafast Processing service tier. This tier is currently
243
+ # available for `gpt-5.6-sol`; a response served through it will show
244
+ # `service_tier=ultrafast`.
241
245
  # - When not set, the default behavior is 'auto'.
242
246
  #
243
247
  # When the `service_tier` parameter is set, the response body will include the
@@ -732,6 +736,10 @@ module OpenAI
732
736
  # Responses or Chat Completions. The response will show `service_tier=priority`
733
737
  # regardless of if you specify `service_tier=fast` or `priority` in your
734
738
  # request.
739
+ # - If set to 'ultrafast', then the request will be processed with the
740
+ # access-controlled Ultrafast Processing service tier. This tier is currently
741
+ # available for `gpt-5.6-sol`; a response served through it will show
742
+ # `service_tier=ultrafast`.
735
743
  # - When not set, the default behavior is 'auto'.
736
744
  #
737
745
  # When the `service_tier` parameter is set, the response body will include the
@@ -749,6 +757,7 @@ module OpenAI
749
757
  SCALE = :scale
750
758
  PRIORITY = :priority
751
759
  FAST = :fast
760
+ ULTRAFAST = :ultrafast
752
761
 
753
762
  # @!method self.values
754
763
  # @return [Array<Symbol>]
@@ -9,6 +9,9 @@ module OpenAI
9
9
 
10
10
  discriminator :type
11
11
 
12
+ # Emitted when an error occurs while processing a Responses WebSocket request.
13
+ variant :error, -> { OpenAI::Responses::ResponsesServerEvent::ResponseWsError }
14
+
12
15
  # Emitted when there is a partial audio response.
13
16
  variant :"response.audio.delta", -> { OpenAI::Responses::ResponsesServerEvent::ResponseAudioWsDelta }
14
17
 
@@ -57,9 +60,6 @@ module OpenAI
57
60
  # An event that is emitted when a response is created.
58
61
  variant :"response.created", -> { OpenAI::Responses::ResponsesServerEvent::ResponseWsCreated }
59
62
 
60
- # Emitted when an error occurs.
61
- variant :error, -> { OpenAI::Responses::ResponsesServerEvent::ResponseWsError }
62
-
63
63
  # Emitted when a file search call is completed (results found).
64
64
  variant :"response.file_search_call.completed",
65
65
  -> { OpenAI::Responses::ResponsesServerEvent::ResponseFileSearchCallWsCompleted }
@@ -442,24 +442,6 @@ module OpenAI
442
442
  # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
443
443
  end
444
444
 
445
- class ResponseWsError < OpenAI::Models::Responses::ResponseErrorEvent
446
- # @!attribute stream_id
447
- # The WebSocket lane that emitted this event. This field is present when the
448
- # originating `response.create` event supplied a `stream_id`.
449
- #
450
- # @return [String, nil]
451
- optional :stream_id, String
452
-
453
- # @!method initialize(stream_id: nil)
454
- # Some parameter documentations has been truncated, see
455
- # {OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError} for more
456
- # details.
457
- #
458
- # Emitted when an error occurs.
459
- #
460
- # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
461
- end
462
-
463
445
  class ResponseFileSearchCallWsCompleted < OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent
464
446
  # @!attribute stream_id
465
447
  # The WebSocket lane that emitted this event. This field is present when the
@@ -1166,8 +1148,104 @@ module OpenAI
1166
1148
  # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1167
1149
  end
1168
1150
 
1151
+ class ResponseWsError < OpenAI::Internal::Type::BaseModel
1152
+ # @!attribute error
1153
+ # Details about the error.
1154
+ #
1155
+ # @return [OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError::Error]
1156
+ required :error, -> { OpenAI::Responses::ResponsesServerEvent::ResponseWsError::Error }
1157
+
1158
+ # @!attribute type
1159
+ # The type of the event. Always `error`.
1160
+ #
1161
+ # @return [Symbol, :error]
1162
+ required :type, const: :error
1163
+
1164
+ # @!attribute sequence_number
1165
+ # The sequence number of an error emitted by the response stream.
1166
+ #
1167
+ # @return [Integer, nil]
1168
+ optional :sequence_number, Integer
1169
+
1170
+ # @!attribute status
1171
+ # The HTTP status code associated with a WebSocket protocol error.
1172
+ #
1173
+ # @return [Integer, nil]
1174
+ optional :status, Integer
1175
+
1176
+ # @!attribute stream_id
1177
+ # The WebSocket lane that emitted this event. This field is present when the
1178
+ # originating `response.create` event supplied a `stream_id`.
1179
+ #
1180
+ # @return [String, nil]
1181
+ optional :stream_id, String
1182
+
1183
+ # @!method initialize(error:, sequence_number: nil, status: nil, stream_id: nil, type: :error)
1184
+ # Some parameter documentations has been truncated, see
1185
+ # {OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError} for more
1186
+ # details.
1187
+ #
1188
+ # Emitted when an error occurs while processing a Responses WebSocket request.
1189
+ #
1190
+ # @param error [OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError::Error] Details about the error.
1191
+ #
1192
+ # @param sequence_number [Integer] The sequence number of an error emitted by the response stream.
1193
+ #
1194
+ # @param status [Integer] The HTTP status code associated with a WebSocket protocol error.
1195
+ #
1196
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present when the
1197
+ #
1198
+ # @param type [Symbol, :error] The type of the event. Always `error`.
1199
+
1200
+ # @see OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError#error
1201
+ class Error < OpenAI::Internal::Type::BaseModel
1202
+ # @!attribute code
1203
+ # The error code that was emitted, if any.
1204
+ #
1205
+ # @return [String, nil]
1206
+ required :code, String, nil?: true
1207
+
1208
+ # @!attribute message
1209
+ # The human-readable error message that was emitted.
1210
+ #
1211
+ # @return [String]
1212
+ required :message, String
1213
+
1214
+ # @!attribute param
1215
+ # The parameter name that was associated with the error, if any.
1216
+ #
1217
+ # @return [String, nil]
1218
+ required :param, String, nil?: true
1219
+
1220
+ # @!attribute type
1221
+ # The error type that was emitted.
1222
+ #
1223
+ # @return [String]
1224
+ required :type, String
1225
+
1226
+ # @!attribute headers
1227
+ # The response headers that were emitted with the error, if any.
1228
+ #
1229
+ # @return [Hash{Symbol=>String}, nil]
1230
+ optional :headers, OpenAI::Internal::Type::HashOf[String]
1231
+
1232
+ # @!method initialize(code:, message:, param:, type:, headers: nil)
1233
+ # Details about the error.
1234
+ #
1235
+ # @param code [String, nil] The error code that was emitted, if any.
1236
+ #
1237
+ # @param message [String] The human-readable error message that was emitted.
1238
+ #
1239
+ # @param param [String, nil] The parameter name that was associated with the error, if any.
1240
+ #
1241
+ # @param type [String] The error type that was emitted.
1242
+ #
1243
+ # @param headers [Hash{Symbol=>String}] The response headers that were emitted with the error, if any.
1244
+ end
1245
+ end
1246
+
1169
1247
  # @!method self.variants
1170
- # @return [Array(OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsInterpreting, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCreated, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsIncomplete, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsGenerating, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallPartialWsImage, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputTextAnnotationWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsQueued, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDone)]
1248
+ # @return [Array(OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsInterpreting, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCreated, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsIncomplete, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsGenerating, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallPartialWsImage, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputTextAnnotationWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsQueued, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDone)]
1171
1249
  end
1172
1250
  end
1173
1251
  end
@@ -10,6 +10,14 @@ module OpenAI
10
10
  # @return [Symbol, OpenAI::Models::Responses::WebSearchTool::Type]
11
11
  required :type, enum: -> { OpenAI::Responses::WebSearchTool::Type }
12
12
 
13
+ # @!attribute external_web_access
14
+ # Allow live internet access for web search. Defaults to true when omitted. When
15
+ # false, the web search tool runs in offline/cache-only mode and will not fetch
16
+ # new external content.
17
+ #
18
+ # @return [Boolean, nil]
19
+ optional :external_web_access, OpenAI::Internal::Type::Boolean
20
+
13
21
  # @!attribute filters
14
22
  # Filters for the search.
15
23
  #
@@ -29,7 +37,7 @@ module OpenAI
29
37
  # @return [OpenAI::Models::Responses::WebSearchTool::UserLocation, nil]
30
38
  optional :user_location, -> { OpenAI::Responses::WebSearchTool::UserLocation }, nil?: true
31
39
 
32
- # @!method initialize(type:, filters: nil, search_context_size: nil, user_location: nil)
40
+ # @!method initialize(type:, external_web_access: nil, filters: nil, search_context_size: nil, user_location: nil)
33
41
  # Some parameter documentations has been truncated, see
34
42
  # {OpenAI::Models::Responses::WebSearchTool} for more details.
35
43
  #
@@ -38,6 +46,8 @@ module OpenAI
38
46
  #
39
47
  # @param type [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] The type of the web search tool. One of `web_search` or `web_search_2025_08_26`.
40
48
  #
49
+ # @param external_web_access [Boolean] Allow live internet access for web search. Defaults to true when omitted. When f
50
+ #
41
51
  # @param filters [OpenAI::Models::Responses::WebSearchTool::Filters, nil] Filters for the search.
42
52
  #
43
53
  # @param search_context_size [Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize] High level guidance for the amount of context window space to use for the search
@@ -24,6 +24,8 @@ module OpenAI
24
24
  O4_MINI_DEEP_RESEARCH_2025_06_26 = :"o4-mini-deep-research-2025-06-26"
25
25
  COMPUTER_USE_PREVIEW = :"computer-use-preview"
26
26
  COMPUTER_USE_PREVIEW_2025_03_11 = :"computer-use-preview-2025-03-11"
27
+ GPT_5_5_PRO = :"gpt-5.5-pro"
28
+ GPT_5_5_PRO_2026_04_23 = :"gpt-5.5-pro-2026-04-23"
27
29
  GPT_5_CODEX = :"gpt-5-codex"
28
30
  GPT_5_PRO = :"gpt-5-pro"
29
31
  GPT_5_PRO_2025_10_06 = :"gpt-5-pro-2025-10-06"