@@ -34,14 +34,15 @@ export interface InputItemListResponse {
3434 * List of input items
3535 */
3636 data : Array <
37+ | InputItemListResponse . OpenAIResponseMessage
3738 | InputItemListResponse . OpenAIResponseOutputMessageWebSearchToolCall
3839 | InputItemListResponse . OpenAIResponseOutputMessageFileSearchToolCall
3940 | InputItemListResponse . OpenAIResponseOutputMessageFunctionToolCall
40- | InputItemListResponse . OpenAIResponseInputFunctionToolCallOutput
41- | InputItemListResponse . OpenAIResponseMcpApprovalRequest
42- | InputItemListResponse . OpenAIResponseMcpApprovalResponse
4341 | InputItemListResponse . OpenAIResponseOutputMessageMcpCall
4442 | InputItemListResponse . OpenAIResponseOutputMessageMcpListTools
43+ | InputItemListResponse . OpenAIResponseMcpApprovalRequest
44+ | InputItemListResponse . OpenAIResponseInputFunctionToolCallOutput
45+ | InputItemListResponse . OpenAIResponseMcpApprovalResponse
4546 | InputItemListResponse . OpenAIResponseMessage
4647 > ;
4748
@@ -52,6 +53,176 @@ export interface InputItemListResponse {
5253}
5354
5455export namespace InputItemListResponse {
56+ /**
57+ * Corresponds to the various Message types in the Responses API. They are all
58+ * under one type because the Responses API gives them all the same "type" value,
59+ * and there is no way to tell them apart in certain scenarios.
60+ */
61+ export interface OpenAIResponseMessage {
62+ content :
63+ | string
64+ | Array <
65+ | OpenAIResponseMessage . OpenAIResponseInputMessageContentText
66+ | OpenAIResponseMessage . OpenAIResponseInputMessageContentImage
67+ >
68+ | Array <
69+ | OpenAIResponseMessage . OpenAIResponseOutputMessageContentOutputText
70+ | OpenAIResponseMessage . OpenAIResponseContentPartRefusal
71+ > ;
72+
73+ role : 'system' | 'developer' | 'user' | 'assistant' ;
74+
75+ type : 'message' ;
76+
77+ id ?: string ;
78+
79+ status ?: string ;
80+ }
81+
82+ export namespace OpenAIResponseMessage {
83+ /**
84+ * Text content for input messages in OpenAI response format.
85+ */
86+ export interface OpenAIResponseInputMessageContentText {
87+ /**
88+ * The text content of the input message
89+ */
90+ text : string ;
91+
92+ /**
93+ * Content type identifier, always "input_text"
94+ */
95+ type : 'input_text' ;
96+ }
97+
98+ /**
99+ * Image content for input messages in OpenAI response format.
100+ */
101+ export interface OpenAIResponseInputMessageContentImage {
102+ /**
103+ * Level of detail for image processing, can be "low", "high", or "auto"
104+ */
105+ detail : 'low' | 'high' | 'auto' ;
106+
107+ /**
108+ * Content type identifier, always "input_image"
109+ */
110+ type : 'input_image' ;
111+
112+ /**
113+ * (Optional) URL of the image content
114+ */
115+ image_url ?: string ;
116+ }
117+
118+ export interface OpenAIResponseOutputMessageContentOutputText {
119+ annotations : Array <
120+ | OpenAIResponseOutputMessageContentOutputText . OpenAIResponseAnnotationFileCitation
121+ | OpenAIResponseOutputMessageContentOutputText . OpenAIResponseAnnotationCitation
122+ | OpenAIResponseOutputMessageContentOutputText . OpenAIResponseAnnotationContainerFileCitation
123+ | OpenAIResponseOutputMessageContentOutputText . OpenAIResponseAnnotationFilePath
124+ > ;
125+
126+ text : string ;
127+
128+ type : 'output_text' ;
129+ }
130+
131+ export namespace OpenAIResponseOutputMessageContentOutputText {
132+ /**
133+ * File citation annotation for referencing specific files in response content.
134+ */
135+ export interface OpenAIResponseAnnotationFileCitation {
136+ /**
137+ * Unique identifier of the referenced file
138+ */
139+ file_id : string ;
140+
141+ /**
142+ * Name of the referenced file
143+ */
144+ filename : string ;
145+
146+ /**
147+ * Position index of the citation within the content
148+ */
149+ index : number ;
150+
151+ /**
152+ * Annotation type identifier, always "file_citation"
153+ */
154+ type : 'file_citation' ;
155+ }
156+
157+ /**
158+ * URL citation annotation for referencing external web resources.
159+ */
160+ export interface OpenAIResponseAnnotationCitation {
161+ /**
162+ * End position of the citation span in the content
163+ */
164+ end_index : number ;
165+
166+ /**
167+ * Start position of the citation span in the content
168+ */
169+ start_index : number ;
170+
171+ /**
172+ * Title of the referenced web resource
173+ */
174+ title : string ;
175+
176+ /**
177+ * Annotation type identifier, always "url_citation"
178+ */
179+ type : 'url_citation' ;
180+
181+ /**
182+ * URL of the referenced web resource
183+ */
184+ url : string ;
185+ }
186+
187+ export interface OpenAIResponseAnnotationContainerFileCitation {
188+ container_id : string ;
189+
190+ end_index : number ;
191+
192+ file_id : string ;
193+
194+ filename : string ;
195+
196+ start_index : number ;
197+
198+ type : 'container_file_citation' ;
199+ }
200+
201+ export interface OpenAIResponseAnnotationFilePath {
202+ file_id : string ;
203+
204+ index : number ;
205+
206+ type : 'file_path' ;
207+ }
208+ }
209+
210+ /**
211+ * Refusal content within a streamed response part.
212+ */
213+ export interface OpenAIResponseContentPartRefusal {
214+ /**
215+ * Refusal text supplied by the model
216+ */
217+ refusal : string ;
218+
219+ /**
220+ * Content part type identifier, always "refusal"
221+ */
222+ type : 'refusal' ;
223+ }
224+ }
225+
55226 /**
56227 * Web search tool call output message for OpenAI responses.
57228 */
@@ -169,52 +340,6 @@ export namespace InputItemListResponse {
169340 status ?: string ;
170341 }
171342
172- /**
173- * This represents the output of a function call that gets passed back to the
174- * model.
175- */
176- export interface OpenAIResponseInputFunctionToolCallOutput {
177- call_id : string ;
178-
179- output : string ;
180-
181- type : 'function_call_output' ;
182-
183- id ?: string ;
184-
185- status ?: string ;
186- }
187-
188- /**
189- * A request for human approval of a tool invocation.
190- */
191- export interface OpenAIResponseMcpApprovalRequest {
192- id : string ;
193-
194- arguments : string ;
195-
196- name : string ;
197-
198- server_label : string ;
199-
200- type : 'mcp_approval_request' ;
201- }
202-
203- /**
204- * A response to an MCP approval request.
205- */
206- export interface OpenAIResponseMcpApprovalResponse {
207- approval_request_id : string ;
208-
209- approve : boolean ;
210-
211- type : 'mcp_approval_response' ;
212-
213- id ?: string ;
214-
215- reason ?: string ;
216- }
217-
218343 /**
219344 * Model Context Protocol (MCP) call output message for OpenAI responses.
220345 */
@@ -302,6 +427,52 @@ export namespace InputItemListResponse {
302427 }
303428 }
304429
430+ /**
431+ * A request for human approval of a tool invocation.
432+ */
433+ export interface OpenAIResponseMcpApprovalRequest {
434+ id : string ;
435+
436+ arguments : string ;
437+
438+ name : string ;
439+
440+ server_label : string ;
441+
442+ type : 'mcp_approval_request' ;
443+ }
444+
445+ /**
446+ * This represents the output of a function call that gets passed back to the
447+ * model.
448+ */
449+ export interface OpenAIResponseInputFunctionToolCallOutput {
450+ call_id : string ;
451+
452+ output : string ;
453+
454+ type : 'function_call_output' ;
455+
456+ id ?: string ;
457+
458+ status ?: string ;
459+ }
460+
461+ /**
462+ * A response to an MCP approval request.
463+ */
464+ export interface OpenAIResponseMcpApprovalResponse {
465+ approval_request_id : string ;
466+
467+ approve : boolean ;
468+
469+ type : 'mcp_approval_response' ;
470+
471+ id ?: string ;
472+
473+ reason ?: string ;
474+ }
475+
305476 /**
306477 * Corresponds to the various Message types in the Responses API. They are all
307478 * under one type because the Responses API gives them all the same "type" value,
0 commit comments