openai 0.78.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 (239) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +99 -0
  3. data/README.md +241 -8
  4. data/SECURITY.md +6 -22
  5. data/azure.md +110 -0
  6. data/bedrock.md +197 -0
  7. data/examples/mtls_custom_http_client.rb +61 -0
  8. data/lib/openai/auth/workload_identity.rb +13 -2
  9. data/lib/openai/auth/workload_identity_auth.rb +2 -1
  10. data/lib/openai/client.rb +29 -6
  11. data/lib/openai/errors.rb +11 -1
  12. data/lib/openai/helpers/streaming/chat_completion_stream.rb +3 -3
  13. data/lib/openai/helpers/streaming/response_stream.rb +5 -6
  14. data/lib/openai/helpers/structured_output/base_model.rb +20 -19
  15. data/lib/openai/helpers/structured_output/json_schema_converter.rb +12 -5
  16. data/lib/openai/http_client.rb +99 -7
  17. data/lib/openai/internal/conversation_cursor_page.rb +5 -6
  18. data/lib/openai/internal/cursor_page.rb +3 -3
  19. data/lib/openai/internal/logging.rb +419 -0
  20. data/lib/openai/internal/next_cursor_page.rb +5 -6
  21. data/lib/openai/internal/page.rb +2 -2
  22. data/lib/openai/internal/provider.rb +7 -1
  23. data/lib/openai/internal/read_io_adapter.rb +42 -18
  24. data/lib/openai/internal/stream.rb +2 -2
  25. data/lib/openai/internal/transport/base_client.rb +137 -37
  26. data/lib/openai/internal/type/array_of.rb +6 -4
  27. data/lib/openai/internal/type/base_model.rb +39 -1
  28. data/lib/openai/internal/type/base_page.rb +19 -2
  29. data/lib/openai/internal/type/base_stream.rb +39 -7
  30. data/lib/openai/internal/type/hash_of.rb +3 -3
  31. data/lib/openai/internal/util.rb +52 -27
  32. data/lib/openai/models/admin/organization/audit_log_list_params.rb +3 -1
  33. data/lib/openai/models/admin/organization/audit_log_list_response.rb +33 -11
  34. data/lib/openai/models/admin/organization/groups/role_list_response.rb +5 -1
  35. data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +5 -1
  36. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +6 -1
  37. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +6 -1
  38. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +3 -1
  39. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +6 -1
  40. data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +6 -1
  41. data/lib/openai/models/admin/organization/users/role_list_response.rb +5 -1
  42. data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +5 -1
  43. data/lib/openai/models/all_models.rb +5 -0
  44. data/lib/openai/models/audio/transcription_create_params.rb +7 -1
  45. data/lib/openai/models/audio/translation_create_params.rb +7 -1
  46. data/lib/openai/models/beta/beta_mcp_tool_call_error.rb +84 -0
  47. data/lib/openai/models/beta/beta_response.rb +27 -0
  48. data/lib/openai/models/beta/beta_response_input_item.rb +3 -3
  49. data/lib/openai/models/beta/beta_response_item.rb +3 -3
  50. data/lib/openai/models/beta/beta_response_output_item.rb +3 -3
  51. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +5 -2
  52. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +201 -4
  53. data/lib/openai/models/beta/beta_response_reasoning_item.rb +5 -0
  54. data/lib/openai/models/beta/beta_response_stream_event.rb +1 -1
  55. data/lib/openai/models/beta/beta_responses_client_event.rb +46 -3
  56. data/lib/openai/models/beta/beta_responses_server_event.rb +1143 -63
  57. data/lib/openai/models/beta/beta_web_search_tool.rb +11 -1
  58. data/lib/openai/models/beta/response_compact_params.rb +18 -0
  59. data/lib/openai/models/beta/response_create_params.rb +27 -0
  60. data/lib/openai/models/chat_model.rb +1 -0
  61. data/lib/openai/models/completion_usage.rb +26 -2
  62. data/lib/openai/models/containers/file_create_params.rb +4 -0
  63. data/lib/openai/models/content_provenance_check_create_params.rb +4 -0
  64. data/lib/openai/models/conversations/conversation_item.rb +3 -3
  65. data/lib/openai/models/file_create_params.rb +4 -0
  66. data/lib/openai/models/image_create_variation_params.rb +4 -0
  67. data/lib/openai/models/image_edit_params.rb +8 -0
  68. data/lib/openai/models/model.rb +9 -1
  69. data/lib/openai/models/responses/mcp_tool_call_error.rb +82 -0
  70. data/lib/openai/models/responses/response.rb +9 -0
  71. data/lib/openai/models/responses/response_compact_params.rb +18 -0
  72. data/lib/openai/models/responses/response_create_params.rb +9 -0
  73. data/lib/openai/models/responses/response_input_item.rb +3 -3
  74. data/lib/openai/models/responses/response_item.rb +3 -3
  75. data/lib/openai/models/responses/response_output_item.rb +3 -3
  76. data/lib/openai/models/responses/response_output_item_added_event.rb +5 -2
  77. data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +201 -4
  78. data/lib/openai/models/responses/response_reasoning_item.rb +5 -0
  79. data/lib/openai/models/responses/response_stream_event.rb +1 -1
  80. data/lib/openai/models/responses/responses_client_event.rb +22 -1
  81. data/lib/openai/models/responses/responses_server_event.rb +1107 -56
  82. data/lib/openai/models/responses/web_search_tool.rb +11 -1
  83. data/lib/openai/models/responses_model.rb +5 -0
  84. data/lib/openai/models/skill_create_params.rb +4 -0
  85. data/lib/openai/models/skills/version_create_params.rb +4 -0
  86. data/lib/openai/models/uploads/part_create_params.rb +4 -0
  87. data/lib/openai/models/vector_store_search_response.rb +3 -1
  88. data/lib/openai/models/video_create_character_params.rb +4 -0
  89. data/lib/openai/models/video_create_params.rb +4 -0
  90. data/lib/openai/models/video_edit_params.rb +4 -0
  91. data/lib/openai/models/video_extend_params.rb +4 -0
  92. data/lib/openai/models.rb +9 -1
  93. data/lib/openai/net_http_client.rb +20 -6
  94. data/lib/openai/providers/azure.rb +216 -0
  95. data/lib/openai/providers/bedrock.rb +130 -17
  96. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +1 -1
  97. data/lib/openai/resources/admin/organization/projects/groups.rb +1 -1
  98. data/lib/openai/resources/admin/organization/projects/users/roles.rb +1 -1
  99. data/lib/openai/resources/admin/organization/projects.rb +4 -2
  100. data/lib/openai/resources/audio/transcriptions.rb +8 -0
  101. data/lib/openai/resources/audio/translations.rb +4 -0
  102. data/lib/openai/resources/beta/responses.rb +1 -1
  103. data/lib/openai/resources/beta/threads/runs/steps.rb +2 -2
  104. data/lib/openai/resources/containers/files.rb +4 -0
  105. data/lib/openai/resources/content_provenance_checks.rb +4 -0
  106. data/lib/openai/resources/conversations/items.rb +1 -1
  107. data/lib/openai/resources/evals/runs/output_items.rb +1 -1
  108. data/lib/openai/resources/files.rb +5 -1
  109. data/lib/openai/resources/images.rb +12 -0
  110. data/lib/openai/resources/responses.rb +3 -2
  111. data/lib/openai/resources/skills/versions.rb +4 -0
  112. data/lib/openai/resources/skills.rb +4 -0
  113. data/lib/openai/resources/uploads/parts.rb +4 -0
  114. data/lib/openai/resources/vector_stores/file_batches.rb +1 -1
  115. data/lib/openai/resources/videos.rb +38 -0
  116. data/lib/openai/resources/webhooks.rb +18 -6
  117. data/lib/openai/version.rb +1 -1
  118. data/lib/openai.rb +111 -105
  119. data/rbi/openai/auth.rbi +4 -4
  120. data/rbi/openai/client.rbi +13 -3
  121. data/rbi/openai/errors.rbi +7 -0
  122. data/rbi/openai/helpers/streaming/events.rbi +12 -0
  123. data/rbi/openai/http_client.rbi +62 -2
  124. data/rbi/openai/internal/logging.rbi +192 -0
  125. data/rbi/openai/internal/provider.rbi +3 -0
  126. data/rbi/openai/internal/read_io_adapter.rbi +6 -1
  127. data/rbi/openai/internal/transport/base_client.rbi +61 -7
  128. data/rbi/openai/internal/type/base_model.rbi +24 -1
  129. data/rbi/openai/internal/type/base_page.rbi +13 -2
  130. data/rbi/openai/internal/type/base_stream.rbi +15 -4
  131. data/rbi/openai/internal/util.rbi +26 -2
  132. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +5 -0
  133. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +5 -0
  134. data/rbi/openai/models/all_models.rbi +25 -0
  135. data/rbi/openai/models/audio/transcription_create_params.rbi +14 -2
  136. data/rbi/openai/models/audio/translation_create_params.rbi +14 -2
  137. data/rbi/openai/models/beta/beta_mcp_tool_call_error.rbi +122 -0
  138. data/rbi/openai/models/beta/beta_response.rbi +47 -0
  139. data/rbi/openai/models/beta/beta_response_input_item.rbi +27 -3
  140. data/rbi/openai/models/beta/beta_response_item.rbi +27 -3
  141. data/rbi/openai/models/beta/beta_response_output_item.rbi +27 -3
  142. data/rbi/openai/models/beta/beta_response_output_item_added_event.rbi +8 -2
  143. data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +297 -5
  144. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +10 -0
  145. data/rbi/openai/models/beta/beta_response_stream_event.rbi +1 -1
  146. data/rbi/openai/models/beta/beta_responses_client_event.rbi +69 -1
  147. data/rbi/openai/models/beta/beta_responses_server_event.rbi +3945 -54
  148. data/rbi/openai/models/beta/beta_web_search_tool.rbi +15 -0
  149. data/rbi/openai/models/beta/response_compact_params.rbi +30 -0
  150. data/rbi/openai/models/beta/response_create_params.rbi +47 -0
  151. data/rbi/openai/models/chat_model.rbi +2 -0
  152. data/rbi/openai/models/completion_usage.rbi +39 -6
  153. data/rbi/openai/models/containers/file_create_params.rbi +8 -0
  154. data/rbi/openai/models/content_provenance_check_create_params.rbi +8 -0
  155. data/rbi/openai/models/conversations/conversation_item.rbi +12 -3
  156. data/rbi/openai/models/file_create_params.rbi +8 -0
  157. data/rbi/openai/models/image_create_variation_params.rbi +8 -0
  158. data/rbi/openai/models/image_edit_params.rbi +16 -0
  159. data/rbi/openai/models/model.rbi +14 -1
  160. data/rbi/openai/models/responses/mcp_tool_call_error.rbi +120 -0
  161. data/rbi/openai/models/responses/response.rbi +17 -0
  162. data/rbi/openai/models/responses/response_compact_params.rbi +30 -0
  163. data/rbi/openai/models/responses/response_create_params.rbi +17 -0
  164. data/rbi/openai/models/responses/response_input_item.rbi +27 -3
  165. data/rbi/openai/models/responses/response_item.rbi +27 -3
  166. data/rbi/openai/models/responses/response_output_item.rbi +27 -3
  167. data/rbi/openai/models/responses/response_output_item_added_event.rbi +8 -2
  168. data/rbi/openai/models/responses/response_output_text_annotation_added_event.rbi +297 -5
  169. data/rbi/openai/models/responses/response_reasoning_item.rbi +10 -0
  170. data/rbi/openai/models/responses/response_stream_event.rbi +1 -1
  171. data/rbi/openai/models/responses/responses_client_event.rbi +36 -0
  172. data/rbi/openai/models/responses/responses_server_event.rbi +3385 -53
  173. data/rbi/openai/models/responses/web_search_tool.rbi +15 -0
  174. data/rbi/openai/models/responses_model.rbi +25 -0
  175. data/rbi/openai/models/skill_create_params.rbi +8 -0
  176. data/rbi/openai/models/skills/version_create_params.rbi +8 -0
  177. data/rbi/openai/models/uploads/part_create_params.rbi +8 -0
  178. data/rbi/openai/models/video_create_character_params.rbi +8 -0
  179. data/rbi/openai/models/video_create_params.rbi +8 -0
  180. data/rbi/openai/models/video_edit_params.rbi +8 -0
  181. data/rbi/openai/models/video_extend_params.rbi +8 -0
  182. data/rbi/openai/net_http_client.rbi +2 -2
  183. data/rbi/openai/providers.rbi +11 -0
  184. data/rbi/openai/resources/audio/transcriptions.rbi +14 -2
  185. data/rbi/openai/resources/audio/translations.rbi +7 -1
  186. data/rbi/openai/resources/beta/responses.rbi +8 -0
  187. data/rbi/openai/resources/containers/files.rbi +4 -0
  188. data/rbi/openai/resources/content_provenance_checks.rbi +4 -0
  189. data/rbi/openai/resources/files.rbi +5 -1
  190. data/rbi/openai/resources/images.rbi +20 -0
  191. data/rbi/openai/resources/responses.rbi +8 -0
  192. data/rbi/openai/resources/skills/versions.rbi +4 -0
  193. data/rbi/openai/resources/skills.rbi +4 -0
  194. data/rbi/openai/resources/uploads/parts.rbi +4 -0
  195. data/rbi/openai/resources/videos.rbi +16 -0
  196. data/sig/openai/client.rbs +6 -2
  197. data/sig/openai/errors.rbs +5 -0
  198. data/sig/openai/http_client.rbs +37 -2
  199. data/sig/openai/internal/logging.rbs +88 -0
  200. data/sig/openai/internal/provider.rbs +3 -1
  201. data/sig/openai/internal/read_io_adapter.rbs +3 -1
  202. data/sig/openai/internal/transport/base_client.rbs +33 -5
  203. data/sig/openai/internal/type/base_model.rbs +13 -0
  204. data/sig/openai/internal/type/base_page.rbs +8 -1
  205. data/sig/openai/internal/type/base_stream.rbs +8 -2
  206. data/sig/openai/internal/util.rbs +12 -0
  207. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +2 -0
  208. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +2 -0
  209. data/sig/openai/models/all_models.rbs +10 -0
  210. data/sig/openai/models/beta/beta_mcp_tool_call_error.rbs +75 -0
  211. data/sig/openai/models/beta/beta_response.rbs +14 -1
  212. data/sig/openai/models/beta/beta_response_input_item.rbs +4 -4
  213. data/sig/openai/models/beta/beta_response_item.rbs +4 -4
  214. data/sig/openai/models/beta/beta_response_output_item.rbs +4 -4
  215. data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +149 -4
  216. data/sig/openai/models/beta/beta_responses_client_event.rbs +21 -1
  217. data/sig/openai/models/beta/beta_responses_server_event.rbs +2005 -53
  218. data/sig/openai/models/beta/beta_web_search_tool.rbs +7 -0
  219. data/sig/openai/models/beta/response_compact_params.rbs +12 -0
  220. data/sig/openai/models/beta/response_create_params.rbs +14 -1
  221. data/sig/openai/models/chat_model.rbs +2 -0
  222. data/sig/openai/models/completion_usage.rbs +27 -6
  223. data/sig/openai/models/conversations/conversation_item.rbs +4 -4
  224. data/sig/openai/models/model.rbs +12 -2
  225. data/sig/openai/models/responses/mcp_tool_call_error.rbs +73 -0
  226. data/sig/openai/models/responses/response.rbs +2 -1
  227. data/sig/openai/models/responses/response_compact_params.rbs +12 -0
  228. data/sig/openai/models/responses/response_create_params.rbs +2 -1
  229. data/sig/openai/models/responses/response_input_item.rbs +4 -4
  230. data/sig/openai/models/responses/response_item.rbs +4 -4
  231. data/sig/openai/models/responses/response_output_item.rbs +4 -4
  232. data/sig/openai/models/responses/response_output_text_annotation_added_event.rbs +149 -4
  233. data/sig/openai/models/responses/responses_client_event.rbs +9 -1
  234. data/sig/openai/models/responses/responses_server_event.rbs +1834 -53
  235. data/sig/openai/models/responses/web_search_tool.rbs +7 -0
  236. data/sig/openai/models/responses_model.rbs +10 -0
  237. data/sig/openai/net_http_client.rbs +2 -2
  238. data/sig/openai/providers.rbs +7 -0
  239. metadata +30 -1
@@ -9,201 +9,1281 @@ 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::Beta::BetaResponsesServerEvent::BetaResponseWsError }
14
+
15
+ # Emitted when all injected input items were validated and committed to the
16
+ # active response.
17
+ variant :"response.inject.created", -> { OpenAI::Beta::BetaResponseInjectCreatedEvent }
18
+
19
+ # Emitted when injected input could not be committed to a response. The event
20
+ # returns the uncommitted raw input so the client can retry it in another
21
+ # response when appropriate.
22
+ variant :"response.inject.failed", -> { OpenAI::Beta::BetaResponseInjectFailedEvent }
23
+
12
24
  # Emitted when there is a partial audio response.
13
- variant :"response.audio.delta", -> { OpenAI::Beta::BetaResponseAudioDeltaEvent }
25
+ variant :"response.audio.delta", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDelta }
14
26
 
15
27
  # Emitted when the audio response is complete.
16
- variant :"response.audio.done", -> { OpenAI::Beta::BetaResponseAudioDoneEvent }
28
+ variant :"response.audio.done", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDone }
17
29
 
18
30
  # Emitted when there is a partial transcript of audio.
19
- variant :"response.audio.transcript.delta", -> { OpenAI::Beta::BetaResponseAudioTranscriptDeltaEvent }
31
+ variant :"response.audio.transcript.delta",
32
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDelta }
20
33
 
21
34
  # Emitted when the full audio transcript is completed.
22
- variant :"response.audio.transcript.done", -> { OpenAI::Beta::BetaResponseAudioTranscriptDoneEvent }
35
+ variant :"response.audio.transcript.done",
36
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDone }
23
37
 
24
38
  # Emitted when a partial code snippet is streamed by the code interpreter.
25
39
  variant :"response.code_interpreter_call_code.delta",
26
- -> { OpenAI::Beta::BetaResponseCodeInterpreterCallCodeDeltaEvent }
40
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDelta }
27
41
 
28
42
  # Emitted when the code snippet is finalized by the code interpreter.
29
43
  variant :"response.code_interpreter_call_code.done",
30
- -> { OpenAI::Beta::BetaResponseCodeInterpreterCallCodeDoneEvent }
44
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDone }
31
45
 
32
46
  # Emitted when the code interpreter call is completed.
33
47
  variant :"response.code_interpreter_call.completed",
34
- -> { OpenAI::Beta::BetaResponseCodeInterpreterCallCompletedEvent }
48
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsCompleted }
35
49
 
36
50
  # Emitted when a code interpreter call is in progress.
37
51
  variant :"response.code_interpreter_call.in_progress",
38
- -> { OpenAI::Beta::BetaResponseCodeInterpreterCallInProgressEvent }
52
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallInWsProgress }
39
53
 
40
54
  # Emitted when the code interpreter is actively interpreting the code snippet.
41
55
  variant :"response.code_interpreter_call.interpreting",
42
- -> { OpenAI::Beta::BetaResponseCodeInterpreterCallInterpretingEvent }
56
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsInterpreting }
43
57
 
44
58
  # Emitted when the model response is complete.
45
- variant :"response.completed", -> { OpenAI::Beta::BetaResponseCompletedEvent }
59
+ variant :"response.completed", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsCompleted }
46
60
 
47
61
  # Emitted when a new content part is added.
48
- variant :"response.content_part.added", -> { OpenAI::Beta::BetaResponseContentPartAddedEvent }
62
+ variant :"response.content_part.added",
63
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsAdded }
49
64
 
50
65
  # Emitted when a content part is done.
51
- variant :"response.content_part.done", -> { OpenAI::Beta::BetaResponseContentPartDoneEvent }
66
+ variant :"response.content_part.done",
67
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsDone }
52
68
 
53
69
  # An event that is emitted when a response is created.
54
- variant :"response.created", -> { OpenAI::Beta::BetaResponseCreatedEvent }
55
-
56
- # Emitted when an error occurs.
57
- variant :error, -> { OpenAI::Beta::BetaResponseErrorEvent }
70
+ variant :"response.created", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsCreated }
58
71
 
59
72
  # Emitted when a file search call is completed (results found).
60
73
  variant :"response.file_search_call.completed",
61
- -> { OpenAI::Beta::BetaResponseFileSearchCallCompletedEvent }
74
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsCompleted }
62
75
 
63
76
  # Emitted when a file search call is initiated.
64
77
  variant :"response.file_search_call.in_progress",
65
- -> { OpenAI::Beta::BetaResponseFileSearchCallInProgressEvent }
78
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallInWsProgress }
66
79
 
67
80
  # Emitted when a file search is currently searching.
68
81
  variant :"response.file_search_call.searching",
69
- -> { OpenAI::Beta::BetaResponseFileSearchCallSearchingEvent }
82
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsSearching }
70
83
 
71
84
  # Emitted when there is a partial function-call arguments delta.
72
85
  variant :"response.function_call_arguments.delta",
73
- -> { OpenAI::Beta::BetaResponseFunctionCallArgumentsDeltaEvent }
86
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDelta }
74
87
 
75
88
  # Emitted when function-call arguments are finalized.
76
89
  variant :"response.function_call_arguments.done",
77
- -> { OpenAI::Beta::BetaResponseFunctionCallArgumentsDoneEvent }
90
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDone }
78
91
 
79
92
  # Emitted when the response is in progress.
80
- variant :"response.in_progress", -> { OpenAI::Beta::BetaResponseInProgressEvent }
93
+ variant :"response.in_progress", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseInWsProgress }
81
94
 
82
95
  # An event that is emitted when a response fails.
83
- variant :"response.failed", -> { OpenAI::Beta::BetaResponseFailedEvent }
96
+ variant :"response.failed", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsFailed }
84
97
 
85
98
  # An event that is emitted when a response finishes as incomplete.
86
- variant :"response.incomplete", -> { OpenAI::Beta::BetaResponseIncompleteEvent }
99
+ variant :"response.incomplete", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsIncomplete }
87
100
 
88
101
  # Emitted when a new output item is added.
89
- variant :"response.output_item.added", -> { OpenAI::Beta::BetaResponseOutputItemAddedEvent }
102
+ variant :"response.output_item.added",
103
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsAdded }
90
104
 
91
105
  # Emitted when an output item is marked done.
92
- variant :"response.output_item.done", -> { OpenAI::Beta::BetaResponseOutputItemDoneEvent }
106
+ variant :"response.output_item.done",
107
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsDone }
93
108
 
94
109
  # Emitted when a new reasoning summary part is added.
95
110
  variant :"response.reasoning_summary_part.added",
96
- -> { OpenAI::Beta::BetaResponseReasoningSummaryPartAddedEvent }
111
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsAdded }
97
112
 
98
113
  # Emitted when a reasoning summary part is completed.
99
114
  variant :"response.reasoning_summary_part.done",
100
- -> { OpenAI::Beta::BetaResponseReasoningSummaryPartDoneEvent }
115
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsDone }
101
116
 
102
117
  # Emitted when a delta is added to a reasoning summary text.
103
118
  variant :"response.reasoning_summary_text.delta",
104
- -> { OpenAI::Beta::BetaResponseReasoningSummaryTextDeltaEvent }
119
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDelta }
105
120
 
106
121
  # Emitted when a reasoning summary text is completed.
107
122
  variant :"response.reasoning_summary_text.done",
108
- -> { OpenAI::Beta::BetaResponseReasoningSummaryTextDoneEvent }
123
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDone }
109
124
 
110
125
  # Emitted when a delta is added to a reasoning text.
111
- variant :"response.reasoning_text.delta", -> { OpenAI::Beta::BetaResponseReasoningTextDeltaEvent }
126
+ variant :"response.reasoning_text.delta",
127
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDelta }
112
128
 
113
129
  # Emitted when a reasoning text is completed.
114
- variant :"response.reasoning_text.done", -> { OpenAI::Beta::BetaResponseReasoningTextDoneEvent }
130
+ variant :"response.reasoning_text.done",
131
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDone }
115
132
 
116
133
  # Emitted when there is a partial refusal text.
117
- variant :"response.refusal.delta", -> { OpenAI::Beta::BetaResponseRefusalDeltaEvent }
134
+ variant :"response.refusal.delta",
135
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDelta }
118
136
 
119
137
  # Emitted when refusal text is finalized.
120
- variant :"response.refusal.done", -> { OpenAI::Beta::BetaResponseRefusalDoneEvent }
138
+ variant :"response.refusal.done", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDone }
121
139
 
122
140
  # Emitted when there is an additional text delta.
123
- variant :"response.output_text.delta", -> { OpenAI::Beta::BetaResponseTextDeltaEvent }
141
+ variant :"response.output_text.delta",
142
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseTextWsDelta }
124
143
 
125
144
  # Emitted when text content is finalized.
126
- variant :"response.output_text.done", -> { OpenAI::Beta::BetaResponseTextDoneEvent }
145
+ variant :"response.output_text.done",
146
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseTextWsDone }
127
147
 
128
148
  # Emitted when a web search call is completed.
129
149
  variant :"response.web_search_call.completed",
130
- -> { OpenAI::Beta::BetaResponseWebSearchCallCompletedEvent }
150
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsCompleted }
131
151
 
132
152
  # Emitted when a web search call is initiated.
133
153
  variant :"response.web_search_call.in_progress",
134
- -> { OpenAI::Beta::BetaResponseWebSearchCallInProgressEvent }
154
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallInWsProgress }
135
155
 
136
156
  # Emitted when a web search call is executing.
137
157
  variant :"response.web_search_call.searching",
138
- -> { OpenAI::Beta::BetaResponseWebSearchCallSearchingEvent }
158
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsSearching }
139
159
 
140
160
  # Emitted when an image generation tool call has completed and the final image is available.
141
161
  variant :"response.image_generation_call.completed",
142
- -> { OpenAI::Beta::BetaResponseImageGenCallCompletedEvent }
162
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsCompleted }
143
163
 
144
164
  # Emitted when an image generation tool call is actively generating an image (intermediate state).
145
165
  variant :"response.image_generation_call.generating",
146
- -> { OpenAI::Beta::BetaResponseImageGenCallGeneratingEvent }
166
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsGenerating }
147
167
 
148
168
  # Emitted when an image generation tool call is in progress.
149
169
  variant :"response.image_generation_call.in_progress",
150
- -> { OpenAI::Beta::BetaResponseImageGenCallInProgressEvent }
170
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallInWsProgress }
151
171
 
152
172
  # Emitted when a partial image is available during image generation streaming.
153
173
  variant :"response.image_generation_call.partial_image",
154
- -> { OpenAI::Beta::BetaResponseImageGenCallPartialImageEvent }
174
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallPartialWsImage }
155
175
 
156
176
  # Emitted when there is a delta (partial update) to the arguments of an MCP tool call.
157
- variant :"response.mcp_call_arguments.delta", -> { OpenAI::Beta::BetaResponseMcpCallArgumentsDeltaEvent }
177
+ variant :"response.mcp_call_arguments.delta",
178
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDelta }
158
179
 
159
180
  # Emitted when the arguments for an MCP tool call are finalized.
160
- variant :"response.mcp_call_arguments.done", -> { OpenAI::Beta::BetaResponseMcpCallArgumentsDoneEvent }
181
+ variant :"response.mcp_call_arguments.done",
182
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDone }
161
183
 
162
184
  # Emitted when an MCP tool call has completed successfully.
163
- variant :"response.mcp_call.completed", -> { OpenAI::Beta::BetaResponseMcpCallCompletedEvent }
185
+ variant :"response.mcp_call.completed",
186
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsCompleted }
164
187
 
165
188
  # Emitted when an MCP tool call has failed.
166
- variant :"response.mcp_call.failed", -> { OpenAI::Beta::BetaResponseMcpCallFailedEvent }
189
+ variant :"response.mcp_call.failed",
190
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsFailed }
167
191
 
168
192
  # Emitted when an MCP tool call is in progress.
169
- variant :"response.mcp_call.in_progress", -> { OpenAI::Beta::BetaResponseMcpCallInProgressEvent }
193
+ variant :"response.mcp_call.in_progress",
194
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpCallInWsProgress }
170
195
 
171
196
  # Emitted when the list of available MCP tools has been successfully retrieved.
172
- variant :"response.mcp_list_tools.completed", -> { OpenAI::Beta::BetaResponseMcpListToolsCompletedEvent }
197
+ variant :"response.mcp_list_tools.completed",
198
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsCompleted }
173
199
 
174
200
  # Emitted when the attempt to list available MCP tools has failed.
175
- variant :"response.mcp_list_tools.failed", -> { OpenAI::Beta::BetaResponseMcpListToolsFailedEvent }
201
+ variant :"response.mcp_list_tools.failed",
202
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsFailed }
176
203
 
177
204
  # Emitted when the system is in the process of retrieving the list of available MCP tools.
178
205
  variant :"response.mcp_list_tools.in_progress",
179
- -> { OpenAI::Beta::BetaResponseMcpListToolsInProgressEvent }
206
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsInWsProgress }
180
207
 
181
208
  # Emitted when an annotation is added to output text content.
182
209
  variant :"response.output_text.annotation.added",
183
- -> { OpenAI::Beta::BetaResponseOutputTextAnnotationAddedEvent }
210
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseOutputTextAnnotationWsAdded }
184
211
 
185
212
  # Emitted when a response is queued and waiting to be processed.
186
- variant :"response.queued", -> { OpenAI::Beta::BetaResponseQueuedEvent }
213
+ variant :"response.queued", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsQueued }
187
214
 
188
215
  # Event representing a delta (partial update) to the input of a custom tool call.
189
216
  variant :"response.custom_tool_call_input.delta",
190
- -> { OpenAI::Beta::BetaResponseCustomToolCallInputDeltaEvent }
217
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDelta }
191
218
 
192
219
  # Event indicating that input for a custom tool call is complete.
193
220
  variant :"response.custom_tool_call_input.done",
194
- -> { OpenAI::Beta::BetaResponseCustomToolCallInputDoneEvent }
221
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDone }
195
222
 
196
- # Emitted when all injected input items were validated and committed to the
197
- # active response.
198
- variant :"response.inject.created", -> { OpenAI::Beta::BetaResponseInjectCreatedEvent }
223
+ class BetaResponseAudioWsDelta < OpenAI::Models::Beta::BetaResponseAudioDeltaEvent
224
+ # @!attribute stream_id
225
+ # The WebSocket lane that emitted this event. This field is present when the
226
+ # originating `response.create` event supplied a `stream_id`.
227
+ #
228
+ # @return [String, nil]
229
+ optional :stream_id, String
199
230
 
200
- # Emitted when injected input could not be committed to a response. The event
201
- # returns the uncommitted raw input so the client can retry it in another
202
- # response when appropriate.
203
- variant :"response.inject.failed", -> { OpenAI::Beta::BetaResponseInjectFailedEvent }
231
+ # @!method initialize(stream_id: nil)
232
+ # Some parameter documentations has been truncated, see
233
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDelta} for
234
+ # more details.
235
+ #
236
+ # Emitted when there is a partial audio response.
237
+ #
238
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
239
+ end
240
+
241
+ class BetaResponseAudioWsDone < OpenAI::Models::Beta::BetaResponseAudioDoneEvent
242
+ # @!attribute stream_id
243
+ # The WebSocket lane that emitted this event. This field is present when the
244
+ # originating `response.create` event supplied a `stream_id`.
245
+ #
246
+ # @return [String, nil]
247
+ optional :stream_id, String
248
+
249
+ # @!method initialize(stream_id: nil)
250
+ # Some parameter documentations has been truncated, see
251
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDone} for
252
+ # more details.
253
+ #
254
+ # Emitted when the audio response is complete.
255
+ #
256
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
257
+ end
258
+
259
+ class BetaResponseAudioTranscriptWsDelta < OpenAI::Models::Beta::BetaResponseAudioTranscriptDeltaEvent
260
+ # @!attribute stream_id
261
+ # The WebSocket lane that emitted this event. This field is present when the
262
+ # originating `response.create` event supplied a `stream_id`.
263
+ #
264
+ # @return [String, nil]
265
+ optional :stream_id, String
266
+
267
+ # @!method initialize(stream_id: nil)
268
+ # Some parameter documentations has been truncated, see
269
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDelta}
270
+ # for more details.
271
+ #
272
+ # Emitted when there is a partial transcript of audio.
273
+ #
274
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
275
+ end
276
+
277
+ class BetaResponseAudioTranscriptWsDone < OpenAI::Models::Beta::BetaResponseAudioTranscriptDoneEvent
278
+ # @!attribute stream_id
279
+ # The WebSocket lane that emitted this event. This field is present when the
280
+ # originating `response.create` event supplied a `stream_id`.
281
+ #
282
+ # @return [String, nil]
283
+ optional :stream_id, String
284
+
285
+ # @!method initialize(stream_id: nil)
286
+ # Some parameter documentations has been truncated, see
287
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDone}
288
+ # for more details.
289
+ #
290
+ # Emitted when the full audio transcript is completed.
291
+ #
292
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
293
+ end
294
+
295
+ class BetaResponseCodeInterpreterCallCodeWsDelta < OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDeltaEvent
296
+ # @!attribute stream_id
297
+ # The WebSocket lane that emitted this event. This field is present when the
298
+ # originating `response.create` event supplied a `stream_id`.
299
+ #
300
+ # @return [String, nil]
301
+ optional :stream_id, String
302
+
303
+ # @!method initialize(stream_id: nil)
304
+ # Some parameter documentations has been truncated, see
305
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDelta}
306
+ # for more details.
307
+ #
308
+ # Emitted when a partial code snippet is streamed by the code interpreter.
309
+ #
310
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
311
+ end
312
+
313
+ class BetaResponseCodeInterpreterCallCodeWsDone < OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDoneEvent
314
+ # @!attribute stream_id
315
+ # The WebSocket lane that emitted this event. This field is present when the
316
+ # originating `response.create` event supplied a `stream_id`.
317
+ #
318
+ # @return [String, nil]
319
+ optional :stream_id, String
320
+
321
+ # @!method initialize(stream_id: nil)
322
+ # Some parameter documentations has been truncated, see
323
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDone}
324
+ # for more details.
325
+ #
326
+ # Emitted when the code snippet is finalized by the code interpreter.
327
+ #
328
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
329
+ end
330
+
331
+ class BetaResponseCodeInterpreterCallWsCompleted < OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCompletedEvent
332
+ # @!attribute stream_id
333
+ # The WebSocket lane that emitted this event. This field is present when the
334
+ # originating `response.create` event supplied a `stream_id`.
335
+ #
336
+ # @return [String, nil]
337
+ optional :stream_id, String
338
+
339
+ # @!method initialize(stream_id: nil)
340
+ # Some parameter documentations has been truncated, see
341
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsCompleted}
342
+ # for more details.
343
+ #
344
+ # Emitted when the code interpreter call is completed.
345
+ #
346
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
347
+ end
348
+
349
+ class BetaResponseCodeInterpreterCallInWsProgress < OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInProgressEvent
350
+ # @!attribute stream_id
351
+ # The WebSocket lane that emitted this event. This field is present when the
352
+ # originating `response.create` event supplied a `stream_id`.
353
+ #
354
+ # @return [String, nil]
355
+ optional :stream_id, String
356
+
357
+ # @!method initialize(stream_id: nil)
358
+ # Some parameter documentations has been truncated, see
359
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallInWsProgress}
360
+ # for more details.
361
+ #
362
+ # Emitted when a code interpreter call is in progress.
363
+ #
364
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
365
+ end
366
+
367
+ class BetaResponseCodeInterpreterCallWsInterpreting < OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInterpretingEvent
368
+ # @!attribute stream_id
369
+ # The WebSocket lane that emitted this event. This field is present when the
370
+ # originating `response.create` event supplied a `stream_id`.
371
+ #
372
+ # @return [String, nil]
373
+ optional :stream_id, String
374
+
375
+ # @!method initialize(stream_id: nil)
376
+ # Some parameter documentations has been truncated, see
377
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsInterpreting}
378
+ # for more details.
379
+ #
380
+ # Emitted when the code interpreter is actively interpreting the code snippet.
381
+ #
382
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
383
+ end
384
+
385
+ class BetaResponseWsCompleted < OpenAI::Models::Beta::BetaResponseCompletedEvent
386
+ # @!attribute stream_id
387
+ # The WebSocket lane that emitted this event. This field is present when the
388
+ # originating `response.create` event supplied a `stream_id`.
389
+ #
390
+ # @return [String, nil]
391
+ optional :stream_id, String
392
+
393
+ # @!method initialize(stream_id: nil)
394
+ # Some parameter documentations has been truncated, see
395
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCompleted} for
396
+ # more details.
397
+ #
398
+ # Emitted when the model response is complete.
399
+ #
400
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
401
+ end
402
+
403
+ class BetaResponseContentPartWsAdded < OpenAI::Models::Beta::BetaResponseContentPartAddedEvent
404
+ # @!attribute stream_id
405
+ # The WebSocket lane that emitted this event. This field is present when the
406
+ # originating `response.create` event supplied a `stream_id`.
407
+ #
408
+ # @return [String, nil]
409
+ optional :stream_id, String
410
+
411
+ # @!method initialize(stream_id: nil)
412
+ # Some parameter documentations has been truncated, see
413
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsAdded}
414
+ # for more details.
415
+ #
416
+ # Emitted when a new content part is added.
417
+ #
418
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
419
+ end
420
+
421
+ class BetaResponseContentPartWsDone < OpenAI::Models::Beta::BetaResponseContentPartDoneEvent
422
+ # @!attribute stream_id
423
+ # The WebSocket lane that emitted this event. This field is present when the
424
+ # originating `response.create` event supplied a `stream_id`.
425
+ #
426
+ # @return [String, nil]
427
+ optional :stream_id, String
428
+
429
+ # @!method initialize(stream_id: nil)
430
+ # Some parameter documentations has been truncated, see
431
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsDone}
432
+ # for more details.
433
+ #
434
+ # Emitted when a content part is done.
435
+ #
436
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
437
+ end
438
+
439
+ class BetaResponseWsCreated < OpenAI::Models::Beta::BetaResponseCreatedEvent
440
+ # @!attribute stream_id
441
+ # The WebSocket lane that emitted this event. This field is present when the
442
+ # originating `response.create` event supplied a `stream_id`.
443
+ #
444
+ # @return [String, nil]
445
+ optional :stream_id, String
446
+
447
+ # @!method initialize(stream_id: nil)
448
+ # Some parameter documentations has been truncated, see
449
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCreated} for more
450
+ # details.
451
+ #
452
+ # An event that is emitted when a response is created.
453
+ #
454
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
455
+ end
456
+
457
+ class BetaResponseFileSearchCallWsCompleted < OpenAI::Models::Beta::BetaResponseFileSearchCallCompletedEvent
458
+ # @!attribute stream_id
459
+ # The WebSocket lane that emitted this event. This field is present when the
460
+ # originating `response.create` event supplied a `stream_id`.
461
+ #
462
+ # @return [String, nil]
463
+ optional :stream_id, String
464
+
465
+ # @!method initialize(stream_id: nil)
466
+ # Some parameter documentations has been truncated, see
467
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsCompleted}
468
+ # for more details.
469
+ #
470
+ # Emitted when a file search call is completed (results found).
471
+ #
472
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
473
+ end
474
+
475
+ class BetaResponseFileSearchCallInWsProgress < OpenAI::Models::Beta::BetaResponseFileSearchCallInProgressEvent
476
+ # @!attribute stream_id
477
+ # The WebSocket lane that emitted this event. This field is present when the
478
+ # originating `response.create` event supplied a `stream_id`.
479
+ #
480
+ # @return [String, nil]
481
+ optional :stream_id, String
482
+
483
+ # @!method initialize(stream_id: nil)
484
+ # Some parameter documentations has been truncated, see
485
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallInWsProgress}
486
+ # for more details.
487
+ #
488
+ # Emitted when a file search call is initiated.
489
+ #
490
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
491
+ end
492
+
493
+ class BetaResponseFileSearchCallWsSearching < OpenAI::Models::Beta::BetaResponseFileSearchCallSearchingEvent
494
+ # @!attribute stream_id
495
+ # The WebSocket lane that emitted this event. This field is present when the
496
+ # originating `response.create` event supplied a `stream_id`.
497
+ #
498
+ # @return [String, nil]
499
+ optional :stream_id, String
500
+
501
+ # @!method initialize(stream_id: nil)
502
+ # Some parameter documentations has been truncated, see
503
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsSearching}
504
+ # for more details.
505
+ #
506
+ # Emitted when a file search is currently searching.
507
+ #
508
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
509
+ end
510
+
511
+ class BetaResponseFunctionCallArgumentsWsDelta < OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDeltaEvent
512
+ # @!attribute stream_id
513
+ # The WebSocket lane that emitted this event. This field is present when the
514
+ # originating `response.create` event supplied a `stream_id`.
515
+ #
516
+ # @return [String, nil]
517
+ optional :stream_id, String
518
+
519
+ # @!method initialize(stream_id: nil)
520
+ # Some parameter documentations has been truncated, see
521
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDelta}
522
+ # for more details.
523
+ #
524
+ # Emitted when there is a partial function-call arguments delta.
525
+ #
526
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
527
+ end
528
+
529
+ class BetaResponseFunctionCallArgumentsWsDone < OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDoneEvent
530
+ # @!attribute stream_id
531
+ # The WebSocket lane that emitted this event. This field is present when the
532
+ # originating `response.create` event supplied a `stream_id`.
533
+ #
534
+ # @return [String, nil]
535
+ optional :stream_id, String
536
+
537
+ # @!method initialize(stream_id: nil)
538
+ # Some parameter documentations has been truncated, see
539
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDone}
540
+ # for more details.
541
+ #
542
+ # Emitted when function-call arguments are finalized.
543
+ #
544
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
545
+ end
546
+
547
+ class BetaResponseInWsProgress < OpenAI::Models::Beta::BetaResponseInProgressEvent
548
+ # @!attribute stream_id
549
+ # The WebSocket lane that emitted this event. This field is present when the
550
+ # originating `response.create` event supplied a `stream_id`.
551
+ #
552
+ # @return [String, nil]
553
+ optional :stream_id, String
554
+
555
+ # @!method initialize(stream_id: nil)
556
+ # Some parameter documentations has been truncated, see
557
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseInWsProgress} for
558
+ # more details.
559
+ #
560
+ # Emitted when the response is in progress.
561
+ #
562
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
563
+ end
564
+
565
+ class BetaResponseWsFailed < OpenAI::Models::Beta::BetaResponseFailedEvent
566
+ # @!attribute stream_id
567
+ # The WebSocket lane that emitted this event. This field is present when the
568
+ # originating `response.create` event supplied a `stream_id`.
569
+ #
570
+ # @return [String, nil]
571
+ optional :stream_id, String
572
+
573
+ # @!method initialize(stream_id: nil)
574
+ # Some parameter documentations has been truncated, see
575
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsFailed} for more
576
+ # details.
577
+ #
578
+ # An event that is emitted when a response fails.
579
+ #
580
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
581
+ end
582
+
583
+ class BetaResponseWsIncomplete < OpenAI::Models::Beta::BetaResponseIncompleteEvent
584
+ # @!attribute stream_id
585
+ # The WebSocket lane that emitted this event. This field is present when the
586
+ # originating `response.create` event supplied a `stream_id`.
587
+ #
588
+ # @return [String, nil]
589
+ optional :stream_id, String
590
+
591
+ # @!method initialize(stream_id: nil)
592
+ # Some parameter documentations has been truncated, see
593
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsIncomplete} for
594
+ # more details.
595
+ #
596
+ # An event that is emitted when a response finishes as incomplete.
597
+ #
598
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
599
+ end
600
+
601
+ class BetaResponseOutputItemWsAdded < OpenAI::Models::Beta::BetaResponseOutputItemAddedEvent
602
+ # @!attribute stream_id
603
+ # The WebSocket lane that emitted this event. This field is present when the
604
+ # originating `response.create` event supplied a `stream_id`.
605
+ #
606
+ # @return [String, nil]
607
+ optional :stream_id, String
608
+
609
+ # @!method initialize(stream_id: nil)
610
+ # Some parameter documentations has been truncated, see
611
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsAdded}
612
+ # for more details.
613
+ #
614
+ # Emitted when a new output item is added.
615
+ #
616
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
617
+ end
618
+
619
+ class BetaResponseOutputItemWsDone < OpenAI::Models::Beta::BetaResponseOutputItemDoneEvent
620
+ # @!attribute stream_id
621
+ # The WebSocket lane that emitted this event. This field is present when the
622
+ # originating `response.create` event supplied a `stream_id`.
623
+ #
624
+ # @return [String, nil]
625
+ optional :stream_id, String
626
+
627
+ # @!method initialize(stream_id: nil)
628
+ # Some parameter documentations has been truncated, see
629
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsDone}
630
+ # for more details.
631
+ #
632
+ # Emitted when an output item is marked done.
633
+ #
634
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
635
+ end
636
+
637
+ class BetaResponseReasoningSummaryPartWsAdded < OpenAI::Models::Beta::BetaResponseReasoningSummaryPartAddedEvent
638
+ # @!attribute stream_id
639
+ # The WebSocket lane that emitted this event. This field is present when the
640
+ # originating `response.create` event supplied a `stream_id`.
641
+ #
642
+ # @return [String, nil]
643
+ optional :stream_id, String
644
+
645
+ # @!method initialize(stream_id: nil)
646
+ # Some parameter documentations has been truncated, see
647
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsAdded}
648
+ # for more details.
649
+ #
650
+ # Emitted when a new reasoning summary part is added.
651
+ #
652
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
653
+ end
654
+
655
+ class BetaResponseReasoningSummaryPartWsDone < OpenAI::Models::Beta::BetaResponseReasoningSummaryPartDoneEvent
656
+ # @!attribute stream_id
657
+ # The WebSocket lane that emitted this event. This field is present when the
658
+ # originating `response.create` event supplied a `stream_id`.
659
+ #
660
+ # @return [String, nil]
661
+ optional :stream_id, String
662
+
663
+ # @!method initialize(stream_id: nil)
664
+ # Some parameter documentations has been truncated, see
665
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsDone}
666
+ # for more details.
667
+ #
668
+ # Emitted when a reasoning summary part is completed.
669
+ #
670
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
671
+ end
672
+
673
+ class BetaResponseReasoningSummaryTextWsDelta < OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDeltaEvent
674
+ # @!attribute stream_id
675
+ # The WebSocket lane that emitted this event. This field is present when the
676
+ # originating `response.create` event supplied a `stream_id`.
677
+ #
678
+ # @return [String, nil]
679
+ optional :stream_id, String
680
+
681
+ # @!method initialize(stream_id: nil)
682
+ # Some parameter documentations has been truncated, see
683
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDelta}
684
+ # for more details.
685
+ #
686
+ # Emitted when a delta is added to a reasoning summary text.
687
+ #
688
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
689
+ end
690
+
691
+ class BetaResponseReasoningSummaryTextWsDone < OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDoneEvent
692
+ # @!attribute stream_id
693
+ # The WebSocket lane that emitted this event. This field is present when the
694
+ # originating `response.create` event supplied a `stream_id`.
695
+ #
696
+ # @return [String, nil]
697
+ optional :stream_id, String
698
+
699
+ # @!method initialize(stream_id: nil)
700
+ # Some parameter documentations has been truncated, see
701
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDone}
702
+ # for more details.
703
+ #
704
+ # Emitted when a reasoning summary text is completed.
705
+ #
706
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
707
+ end
708
+
709
+ class BetaResponseReasoningTextWsDelta < OpenAI::Models::Beta::BetaResponseReasoningTextDeltaEvent
710
+ # @!attribute stream_id
711
+ # The WebSocket lane that emitted this event. This field is present when the
712
+ # originating `response.create` event supplied a `stream_id`.
713
+ #
714
+ # @return [String, nil]
715
+ optional :stream_id, String
716
+
717
+ # @!method initialize(stream_id: nil)
718
+ # Some parameter documentations has been truncated, see
719
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDelta}
720
+ # for more details.
721
+ #
722
+ # Emitted when a delta is added to a reasoning text.
723
+ #
724
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
725
+ end
726
+
727
+ class BetaResponseReasoningTextWsDone < OpenAI::Models::Beta::BetaResponseReasoningTextDoneEvent
728
+ # @!attribute stream_id
729
+ # The WebSocket lane that emitted this event. This field is present when the
730
+ # originating `response.create` event supplied a `stream_id`.
731
+ #
732
+ # @return [String, nil]
733
+ optional :stream_id, String
734
+
735
+ # @!method initialize(stream_id: nil)
736
+ # Some parameter documentations has been truncated, see
737
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDone}
738
+ # for more details.
739
+ #
740
+ # Emitted when a reasoning text is completed.
741
+ #
742
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
743
+ end
744
+
745
+ class BetaResponseRefusalWsDelta < OpenAI::Models::Beta::BetaResponseRefusalDeltaEvent
746
+ # @!attribute stream_id
747
+ # The WebSocket lane that emitted this event. This field is present when the
748
+ # originating `response.create` event supplied a `stream_id`.
749
+ #
750
+ # @return [String, nil]
751
+ optional :stream_id, String
752
+
753
+ # @!method initialize(stream_id: nil)
754
+ # Some parameter documentations has been truncated, see
755
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDelta} for
756
+ # more details.
757
+ #
758
+ # Emitted when there is a partial refusal text.
759
+ #
760
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
761
+ end
762
+
763
+ class BetaResponseRefusalWsDone < OpenAI::Models::Beta::BetaResponseRefusalDoneEvent
764
+ # @!attribute stream_id
765
+ # The WebSocket lane that emitted this event. This field is present when the
766
+ # originating `response.create` event supplied a `stream_id`.
767
+ #
768
+ # @return [String, nil]
769
+ optional :stream_id, String
770
+
771
+ # @!method initialize(stream_id: nil)
772
+ # Some parameter documentations has been truncated, see
773
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDone} for
774
+ # more details.
775
+ #
776
+ # Emitted when refusal text is finalized.
777
+ #
778
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
779
+ end
780
+
781
+ class BetaResponseTextWsDelta < OpenAI::Models::Beta::BetaResponseTextDeltaEvent
782
+ # @!attribute stream_id
783
+ # The WebSocket lane that emitted this event. This field is present when the
784
+ # originating `response.create` event supplied a `stream_id`.
785
+ #
786
+ # @return [String, nil]
787
+ optional :stream_id, String
788
+
789
+ # @!method initialize(stream_id: nil)
790
+ # Some parameter documentations has been truncated, see
791
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDelta} for
792
+ # more details.
793
+ #
794
+ # Emitted when there is an additional text delta.
795
+ #
796
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
797
+ end
798
+
799
+ class BetaResponseTextWsDone < OpenAI::Models::Beta::BetaResponseTextDoneEvent
800
+ # @!attribute stream_id
801
+ # The WebSocket lane that emitted this event. This field is present when the
802
+ # originating `response.create` event supplied a `stream_id`.
803
+ #
804
+ # @return [String, nil]
805
+ optional :stream_id, String
806
+
807
+ # @!method initialize(stream_id: nil)
808
+ # Some parameter documentations has been truncated, see
809
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDone} for
810
+ # more details.
811
+ #
812
+ # Emitted when text content is finalized.
813
+ #
814
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
815
+ end
816
+
817
+ class BetaResponseWebSearchCallWsCompleted < OpenAI::Models::Beta::BetaResponseWebSearchCallCompletedEvent
818
+ # @!attribute stream_id
819
+ # The WebSocket lane that emitted this event. This field is present when the
820
+ # originating `response.create` event supplied a `stream_id`.
821
+ #
822
+ # @return [String, nil]
823
+ optional :stream_id, String
824
+
825
+ # @!method initialize(stream_id: nil)
826
+ # Some parameter documentations has been truncated, see
827
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsCompleted}
828
+ # for more details.
829
+ #
830
+ # Emitted when a web search call is completed.
831
+ #
832
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
833
+ end
834
+
835
+ class BetaResponseWebSearchCallInWsProgress < OpenAI::Models::Beta::BetaResponseWebSearchCallInProgressEvent
836
+ # @!attribute stream_id
837
+ # The WebSocket lane that emitted this event. This field is present when the
838
+ # originating `response.create` event supplied a `stream_id`.
839
+ #
840
+ # @return [String, nil]
841
+ optional :stream_id, String
842
+
843
+ # @!method initialize(stream_id: nil)
844
+ # Some parameter documentations has been truncated, see
845
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallInWsProgress}
846
+ # for more details.
847
+ #
848
+ # Emitted when a web search call is initiated.
849
+ #
850
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
851
+ end
852
+
853
+ class BetaResponseWebSearchCallWsSearching < OpenAI::Models::Beta::BetaResponseWebSearchCallSearchingEvent
854
+ # @!attribute stream_id
855
+ # The WebSocket lane that emitted this event. This field is present when the
856
+ # originating `response.create` event supplied a `stream_id`.
857
+ #
858
+ # @return [String, nil]
859
+ optional :stream_id, String
860
+
861
+ # @!method initialize(stream_id: nil)
862
+ # Some parameter documentations has been truncated, see
863
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsSearching}
864
+ # for more details.
865
+ #
866
+ # Emitted when a web search call is executing.
867
+ #
868
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
869
+ end
870
+
871
+ class BetaResponseImageGenCallWsCompleted < OpenAI::Models::Beta::BetaResponseImageGenCallCompletedEvent
872
+ # @!attribute stream_id
873
+ # The WebSocket lane that emitted this event. This field is present when the
874
+ # originating `response.create` event supplied a `stream_id`.
875
+ #
876
+ # @return [String, nil]
877
+ optional :stream_id, String
878
+
879
+ # @!method initialize(stream_id: nil)
880
+ # Some parameter documentations has been truncated, see
881
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsCompleted}
882
+ # for more details.
883
+ #
884
+ # Emitted when an image generation tool call has completed and the final image is
885
+ # available.
886
+ #
887
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
888
+ end
889
+
890
+ class BetaResponseImageGenCallWsGenerating < OpenAI::Models::Beta::BetaResponseImageGenCallGeneratingEvent
891
+ # @!attribute stream_id
892
+ # The WebSocket lane that emitted this event. This field is present when the
893
+ # originating `response.create` event supplied a `stream_id`.
894
+ #
895
+ # @return [String, nil]
896
+ optional :stream_id, String
897
+
898
+ # @!method initialize(stream_id: nil)
899
+ # Some parameter documentations has been truncated, see
900
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsGenerating}
901
+ # for more details.
902
+ #
903
+ # Emitted when an image generation tool call is actively generating an image
904
+ # (intermediate state).
905
+ #
906
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
907
+ end
908
+
909
+ class BetaResponseImageGenCallInWsProgress < OpenAI::Models::Beta::BetaResponseImageGenCallInProgressEvent
910
+ # @!attribute stream_id
911
+ # The WebSocket lane that emitted this event. This field is present when the
912
+ # originating `response.create` event supplied a `stream_id`.
913
+ #
914
+ # @return [String, nil]
915
+ optional :stream_id, String
916
+
917
+ # @!method initialize(stream_id: nil)
918
+ # Some parameter documentations has been truncated, see
919
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallInWsProgress}
920
+ # for more details.
921
+ #
922
+ # Emitted when an image generation tool call is in progress.
923
+ #
924
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
925
+ end
926
+
927
+ class BetaResponseImageGenCallPartialWsImage < OpenAI::Models::Beta::BetaResponseImageGenCallPartialImageEvent
928
+ # @!attribute stream_id
929
+ # The WebSocket lane that emitted this event. This field is present when the
930
+ # originating `response.create` event supplied a `stream_id`.
931
+ #
932
+ # @return [String, nil]
933
+ optional :stream_id, String
934
+
935
+ # @!method initialize(stream_id: nil)
936
+ # Some parameter documentations has been truncated, see
937
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallPartialWsImage}
938
+ # for more details.
939
+ #
940
+ # Emitted when a partial image is available during image generation streaming.
941
+ #
942
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
943
+ end
944
+
945
+ class BetaResponseMcpCallArgumentsWsDelta < OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDeltaEvent
946
+ # @!attribute stream_id
947
+ # The WebSocket lane that emitted this event. This field is present when the
948
+ # originating `response.create` event supplied a `stream_id`.
949
+ #
950
+ # @return [String, nil]
951
+ optional :stream_id, String
952
+
953
+ # @!method initialize(stream_id: nil)
954
+ # Some parameter documentations has been truncated, see
955
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDelta}
956
+ # for more details.
957
+ #
958
+ # Emitted when there is a delta (partial update) to the arguments of an MCP tool
959
+ # call.
960
+ #
961
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
962
+ end
963
+
964
+ class BetaResponseMcpCallArgumentsWsDone < OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDoneEvent
965
+ # @!attribute stream_id
966
+ # The WebSocket lane that emitted this event. This field is present when the
967
+ # originating `response.create` event supplied a `stream_id`.
968
+ #
969
+ # @return [String, nil]
970
+ optional :stream_id, String
971
+
972
+ # @!method initialize(stream_id: nil)
973
+ # Some parameter documentations has been truncated, see
974
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDone}
975
+ # for more details.
976
+ #
977
+ # Emitted when the arguments for an MCP tool call are finalized.
978
+ #
979
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
980
+ end
981
+
982
+ class BetaResponseMcpCallWsCompleted < OpenAI::Models::Beta::BetaResponseMcpCallCompletedEvent
983
+ # @!attribute stream_id
984
+ # The WebSocket lane that emitted this event. This field is present when the
985
+ # originating `response.create` event supplied a `stream_id`.
986
+ #
987
+ # @return [String, nil]
988
+ optional :stream_id, String
989
+
990
+ # @!method initialize(stream_id: nil)
991
+ # Some parameter documentations has been truncated, see
992
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsCompleted}
993
+ # for more details.
994
+ #
995
+ # Emitted when an MCP tool call has completed successfully.
996
+ #
997
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
998
+ end
999
+
1000
+ class BetaResponseMcpCallWsFailed < OpenAI::Models::Beta::BetaResponseMcpCallFailedEvent
1001
+ # @!attribute stream_id
1002
+ # The WebSocket lane that emitted this event. This field is present when the
1003
+ # originating `response.create` event supplied a `stream_id`.
1004
+ #
1005
+ # @return [String, nil]
1006
+ optional :stream_id, String
1007
+
1008
+ # @!method initialize(stream_id: nil)
1009
+ # Some parameter documentations has been truncated, see
1010
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsFailed}
1011
+ # for more details.
1012
+ #
1013
+ # Emitted when an MCP tool call has failed.
1014
+ #
1015
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1016
+ end
1017
+
1018
+ class BetaResponseMcpCallInWsProgress < OpenAI::Models::Beta::BetaResponseMcpCallInProgressEvent
1019
+ # @!attribute stream_id
1020
+ # The WebSocket lane that emitted this event. This field is present when the
1021
+ # originating `response.create` event supplied a `stream_id`.
1022
+ #
1023
+ # @return [String, nil]
1024
+ optional :stream_id, String
1025
+
1026
+ # @!method initialize(stream_id: nil)
1027
+ # Some parameter documentations has been truncated, see
1028
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallInWsProgress}
1029
+ # for more details.
1030
+ #
1031
+ # Emitted when an MCP tool call is in progress.
1032
+ #
1033
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1034
+ end
1035
+
1036
+ class BetaResponseMcpListToolsWsCompleted < OpenAI::Models::Beta::BetaResponseMcpListToolsCompletedEvent
1037
+ # @!attribute stream_id
1038
+ # The WebSocket lane that emitted this event. This field is present when the
1039
+ # originating `response.create` event supplied a `stream_id`.
1040
+ #
1041
+ # @return [String, nil]
1042
+ optional :stream_id, String
1043
+
1044
+ # @!method initialize(stream_id: nil)
1045
+ # Some parameter documentations has been truncated, see
1046
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsCompleted}
1047
+ # for more details.
1048
+ #
1049
+ # Emitted when the list of available MCP tools has been successfully retrieved.
1050
+ #
1051
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1052
+ end
1053
+
1054
+ class BetaResponseMcpListToolsWsFailed < OpenAI::Models::Beta::BetaResponseMcpListToolsFailedEvent
1055
+ # @!attribute stream_id
1056
+ # The WebSocket lane that emitted this event. This field is present when the
1057
+ # originating `response.create` event supplied a `stream_id`.
1058
+ #
1059
+ # @return [String, nil]
1060
+ optional :stream_id, String
1061
+
1062
+ # @!method initialize(stream_id: nil)
1063
+ # Some parameter documentations has been truncated, see
1064
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsFailed}
1065
+ # for more details.
1066
+ #
1067
+ # Emitted when the attempt to list available MCP tools has failed.
1068
+ #
1069
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1070
+ end
1071
+
1072
+ class BetaResponseMcpListToolsInWsProgress < OpenAI::Models::Beta::BetaResponseMcpListToolsInProgressEvent
1073
+ # @!attribute stream_id
1074
+ # The WebSocket lane that emitted this event. This field is present when the
1075
+ # originating `response.create` event supplied a `stream_id`.
1076
+ #
1077
+ # @return [String, nil]
1078
+ optional :stream_id, String
1079
+
1080
+ # @!method initialize(stream_id: nil)
1081
+ # Some parameter documentations has been truncated, see
1082
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsInWsProgress}
1083
+ # for more details.
1084
+ #
1085
+ # Emitted when the system is in the process of retrieving the list of available
1086
+ # MCP tools.
1087
+ #
1088
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1089
+ end
1090
+
1091
+ class BetaResponseOutputTextAnnotationWsAdded < OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent
1092
+ # @!attribute stream_id
1093
+ # The WebSocket lane that emitted this event. This field is present when the
1094
+ # originating `response.create` event supplied a `stream_id`.
1095
+ #
1096
+ # @return [String, nil]
1097
+ optional :stream_id, String
1098
+
1099
+ # @!method initialize(stream_id: nil)
1100
+ # Some parameter documentations has been truncated, see
1101
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputTextAnnotationWsAdded}
1102
+ # for more details.
1103
+ #
1104
+ # Emitted when an annotation is added to output text content.
1105
+ #
1106
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1107
+ end
1108
+
1109
+ class BetaResponseWsQueued < OpenAI::Models::Beta::BetaResponseQueuedEvent
1110
+ # @!attribute stream_id
1111
+ # The WebSocket lane that emitted this event. This field is present when the
1112
+ # originating `response.create` event supplied a `stream_id`.
1113
+ #
1114
+ # @return [String, nil]
1115
+ optional :stream_id, String
1116
+
1117
+ # @!method initialize(stream_id: nil)
1118
+ # Some parameter documentations has been truncated, see
1119
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsQueued} for more
1120
+ # details.
1121
+ #
1122
+ # Emitted when a response is queued and waiting to be processed.
1123
+ #
1124
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1125
+ end
1126
+
1127
+ class BetaResponseCustomToolCallInputWsDelta < OpenAI::Models::Beta::BetaResponseCustomToolCallInputDeltaEvent
1128
+ # @!attribute stream_id
1129
+ # The WebSocket lane that emitted this event. This field is present when the
1130
+ # originating `response.create` event supplied a `stream_id`.
1131
+ #
1132
+ # @return [String, nil]
1133
+ optional :stream_id, String
1134
+
1135
+ # @!method initialize(stream_id: nil)
1136
+ # Some parameter documentations has been truncated, see
1137
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDelta}
1138
+ # for more details.
1139
+ #
1140
+ # Event representing a delta (partial update) to the input of a custom tool call.
1141
+ #
1142
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1143
+ end
1144
+
1145
+ class BetaResponseCustomToolCallInputWsDone < OpenAI::Models::Beta::BetaResponseCustomToolCallInputDoneEvent
1146
+ # @!attribute stream_id
1147
+ # The WebSocket lane that emitted this event. This field is present when the
1148
+ # originating `response.create` event supplied a `stream_id`.
1149
+ #
1150
+ # @return [String, nil]
1151
+ optional :stream_id, String
1152
+
1153
+ # @!method initialize(stream_id: nil)
1154
+ # Some parameter documentations has been truncated, see
1155
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDone}
1156
+ # for more details.
1157
+ #
1158
+ # Event indicating that input for a custom tool call is complete.
1159
+ #
1160
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present
1161
+ end
1162
+
1163
+ class BetaResponseWsError < OpenAI::Internal::Type::BaseModel
1164
+ # @!attribute error
1165
+ # Details about the error.
1166
+ #
1167
+ # @return [OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError::Error]
1168
+ required :error, -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsError::Error }
1169
+
1170
+ # @!attribute type
1171
+ # The type of the event. Always `error`.
1172
+ #
1173
+ # @return [Symbol, :error]
1174
+ required :type, const: :error
1175
+
1176
+ # @!attribute agent
1177
+ # The agent that owns this multi-agent streaming event.
1178
+ #
1179
+ # @return [OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError::Agent, nil]
1180
+ optional :agent,
1181
+ -> {
1182
+ OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsError::Agent
1183
+ },
1184
+ nil?: true
1185
+
1186
+ # @!attribute sequence_number
1187
+ # The sequence number of an error emitted by the response stream.
1188
+ #
1189
+ # @return [Integer, nil]
1190
+ optional :sequence_number, Integer
1191
+
1192
+ # @!attribute status
1193
+ # The HTTP status code associated with a WebSocket protocol error.
1194
+ #
1195
+ # @return [Integer, nil]
1196
+ optional :status, Integer
1197
+
1198
+ # @!attribute stream_id
1199
+ # The WebSocket lane that emitted this event. This field is present when the
1200
+ # originating `response.create` event supplied a `stream_id`.
1201
+ #
1202
+ # @return [String, nil]
1203
+ optional :stream_id, String
1204
+
1205
+ # @!method initialize(error:, agent: nil, sequence_number: nil, status: nil, stream_id: nil, type: :error)
1206
+ # Some parameter documentations has been truncated, see
1207
+ # {OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError} for more
1208
+ # details.
1209
+ #
1210
+ # Emitted when an error occurs while processing a Responses WebSocket request.
1211
+ #
1212
+ # @param error [OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError::Error] Details about the error.
1213
+ #
1214
+ # @param agent [OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError::Agent, nil] The agent that owns this multi-agent streaming event.
1215
+ #
1216
+ # @param sequence_number [Integer] The sequence number of an error emitted by the response stream.
1217
+ #
1218
+ # @param status [Integer] The HTTP status code associated with a WebSocket protocol error.
1219
+ #
1220
+ # @param stream_id [String] The WebSocket lane that emitted this event. This field is present when the
1221
+ #
1222
+ # @param type [Symbol, :error] The type of the event. Always `error`.
1223
+
1224
+ # @see OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError#error
1225
+ class Error < OpenAI::Internal::Type::BaseModel
1226
+ # @!attribute code
1227
+ # The error code that was emitted, if any.
1228
+ #
1229
+ # @return [String, nil]
1230
+ required :code, String, nil?: true
1231
+
1232
+ # @!attribute message
1233
+ # The human-readable error message that was emitted.
1234
+ #
1235
+ # @return [String]
1236
+ required :message, String
1237
+
1238
+ # @!attribute param
1239
+ # The parameter name that was associated with the error, if any.
1240
+ #
1241
+ # @return [String, nil]
1242
+ required :param, String, nil?: true
1243
+
1244
+ # @!attribute type
1245
+ # The error type that was emitted.
1246
+ #
1247
+ # @return [String]
1248
+ required :type, String
1249
+
1250
+ # @!attribute headers
1251
+ # The response headers that were emitted with the error, if any.
1252
+ #
1253
+ # @return [Hash{Symbol=>String}, nil]
1254
+ optional :headers, OpenAI::Internal::Type::HashOf[String]
1255
+
1256
+ # @!method initialize(code:, message:, param:, type:, headers: nil)
1257
+ # Details about the error.
1258
+ #
1259
+ # @param code [String, nil] The error code that was emitted, if any.
1260
+ #
1261
+ # @param message [String] The human-readable error message that was emitted.
1262
+ #
1263
+ # @param param [String, nil] The parameter name that was associated with the error, if any.
1264
+ #
1265
+ # @param type [String] The error type that was emitted.
1266
+ #
1267
+ # @param headers [Hash{Symbol=>String}] The response headers that were emitted with the error, if any.
1268
+ end
1269
+
1270
+ # @see OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError#agent
1271
+ class Agent < OpenAI::Internal::Type::BaseModel
1272
+ # @!attribute agent_name
1273
+ # The canonical name of the agent that produced this item.
1274
+ #
1275
+ # @return [String]
1276
+ required :agent_name, String
1277
+
1278
+ # @!method initialize(agent_name:)
1279
+ # The agent that owns this multi-agent streaming event.
1280
+ #
1281
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1282
+ end
1283
+ end
204
1284
 
205
1285
  # @!method self.variants
206
- # @return [Array(OpenAI::Models::Beta::BetaResponseAudioDeltaEvent, OpenAI::Models::Beta::BetaResponseAudioDoneEvent, OpenAI::Models::Beta::BetaResponseAudioTranscriptDeltaEvent, OpenAI::Models::Beta::BetaResponseAudioTranscriptDoneEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Beta::BetaResponseCompletedEvent, OpenAI::Models::Beta::BetaResponseContentPartAddedEvent, OpenAI::Models::Beta::BetaResponseContentPartDoneEvent, OpenAI::Models::Beta::BetaResponseCreatedEvent, OpenAI::Models::Beta::BetaResponseErrorEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallCompletedEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallInProgressEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallSearchingEvent, OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Beta::BetaResponseInProgressEvent, OpenAI::Models::Beta::BetaResponseFailedEvent, OpenAI::Models::Beta::BetaResponseIncompleteEvent, OpenAI::Models::Beta::BetaResponseOutputItemAddedEvent, OpenAI::Models::Beta::BetaResponseOutputItemDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningTextDeltaEvent, OpenAI::Models::Beta::BetaResponseReasoningTextDoneEvent, OpenAI::Models::Beta::BetaResponseRefusalDeltaEvent, OpenAI::Models::Beta::BetaResponseRefusalDoneEvent, OpenAI::Models::Beta::BetaResponseTextDeltaEvent, OpenAI::Models::Beta::BetaResponseTextDoneEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallCompletedEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallInProgressEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallSearchingEvent, OpenAI::Models::Beta::BetaResponseImageGenCallCompletedEvent, OpenAI::Models::Beta::BetaResponseImageGenCallGeneratingEvent, OpenAI::Models::Beta::BetaResponseImageGenCallInProgressEvent, OpenAI::Models::Beta::BetaResponseImageGenCallPartialImageEvent, OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDeltaEvent, OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDoneEvent, OpenAI::Models::Beta::BetaResponseMcpCallCompletedEvent, OpenAI::Models::Beta::BetaResponseMcpCallFailedEvent, OpenAI::Models::Beta::BetaResponseMcpCallInProgressEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsCompletedEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsFailedEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsInProgressEvent, OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent, OpenAI::Models::Beta::BetaResponseQueuedEvent, OpenAI::Models::Beta::BetaResponseCustomToolCallInputDeltaEvent, OpenAI::Models::Beta::BetaResponseCustomToolCallInputDoneEvent, OpenAI::Models::Beta::BetaResponseInjectCreatedEvent, OpenAI::Models::Beta::BetaResponseInjectFailedEvent)]
1286
+ # @return [Array(OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError, OpenAI::Models::Beta::BetaResponseInjectCreatedEvent, OpenAI::Models::Beta::BetaResponseInjectFailedEvent, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsInterpreting, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCreated, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsSearching, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsIncomplete, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsSearching, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsGenerating, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallPartialWsImage, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputTextAnnotationWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsQueued, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDone)]
207
1287
  end
208
1288
  end
209
1289