openai 0.103.0 → 0.104.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 (395) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +81 -0
  3. data/README.md +23 -1
  4. data/lib/openai/client.rb +3 -386
  5. data/lib/openai/helpers/admin/organization/projects/api_keys.rb +42 -0
  6. data/lib/openai/helpers/agents/session_stream_resource.rb +60 -0
  7. data/lib/openai/helpers/beta/agents/artifacts.rb +18 -0
  8. data/lib/openai/helpers/beta/agents/files.rb +41 -0
  9. data/lib/openai/helpers/client_runtime.rb +391 -0
  10. data/lib/openai/helpers/files.rb +47 -0
  11. data/lib/openai/helpers/live/websocket.rb +8 -57
  12. data/lib/openai/helpers/models/chat/parsed.rb +32 -0
  13. data/lib/openai/helpers/models/responses/parsed.rb +30 -0
  14. data/lib/openai/helpers/models/responses/response.rb +32 -0
  15. data/lib/openai/helpers/models/webhooks/webhook_endpoint_with_secret.rb +20 -0
  16. data/lib/openai/helpers/realtime/client_extension.rb +1 -2
  17. data/lib/openai/helpers/realtime/connection_manager.rb +1 -1
  18. data/lib/openai/helpers/realtime/translation.rb +7 -50
  19. data/lib/openai/helpers/responses_websocket/client_extension.rb +1 -2
  20. data/lib/openai/helpers/streaming/chat_completion_resource.rb +36 -0
  21. data/lib/openai/helpers/streaming/response_stream.rb +1 -16
  22. data/lib/openai/helpers/streaming/response_stream_resource.rb +78 -0
  23. data/lib/openai/helpers/vector_stores/file_batches.rb +188 -0
  24. data/lib/openai/helpers/vector_stores/files.rb +198 -0
  25. data/lib/openai/helpers/websocket/client_request.rb +31 -6
  26. data/lib/openai/helpers/websocket/connection.rb +58 -0
  27. data/lib/openai/helpers/websocket/connection_manager.rb +4 -2
  28. data/lib/openai/helpers/websocket/protocol.rb +2 -1
  29. data/lib/openai/helpers/websocket/resource.rb +54 -0
  30. data/lib/openai/helpers/websocket/typed_connection.rb +95 -0
  31. data/lib/openai/helpers/websocket.rb +4 -0
  32. data/lib/openai/models/admin/organization/audit_log_list_response.rb +5 -3
  33. data/lib/openai/models/admin/organization/external_storage_configuration.rb +5 -3
  34. data/lib/openai/models/admin/organization/external_storage_create_params.rb +33 -3
  35. data/lib/openai/models/admin/organization/oci_external_storage_provider.rb +37 -0
  36. data/lib/openai/models/admin/organization/project_residency.rb +3 -0
  37. data/lib/openai/models/admin/organization/projects/api_key_update_params.rb +64 -0
  38. data/lib/openai/models/admin/organization/projects/api_key_update_scopes_params.rb +34 -0
  39. data/lib/openai/models/admin/organization/usage_decisions_params.rb +177 -0
  40. data/lib/openai/models/admin/organization/usage_decisions_response.rb +351 -0
  41. data/lib/openai/models/audio/speech_create_params.rb +6 -3
  42. data/lib/openai/models/audio/translation_create_response.rb +0 -1
  43. data/lib/openai/models/audio/voice.rb +17 -2
  44. data/lib/openai/models/audio/voice_create_params.rb +100 -3
  45. data/lib/openai/models/beta/agent_create_params.rb +4 -2
  46. data/lib/openai/models/beta/agent_list_params.rb +4 -4
  47. data/lib/openai/models/beta/agent_session.rb +37 -1
  48. data/lib/openai/models/beta/agent_update_params.rb +4 -2
  49. data/lib/openai/models/beta/agents/environment_list_params.rb +7 -7
  50. data/lib/openai/models/beta/agents/session_create_params.rb +39 -3
  51. data/lib/openai/models/beta/agents/session_list_params.rb +7 -10
  52. data/lib/openai/models/beta/agents/session_update_params.rb +33 -1
  53. data/lib/openai/models/beta/agents/sessions/artifact_list_params.rb +11 -11
  54. data/lib/openai/models/beta/agents/vault_list_params.rb +23 -13
  55. data/lib/openai/models/beta/agents/vault_status_filter.rb +1 -3
  56. data/lib/openai/models/beta/agents/vault_update_params.rb +47 -0
  57. data/lib/openai/models/beta/agents/vaults/credential_list_params.rb +23 -13
  58. data/lib/openai/models/beta/beta_response.rb +23 -2
  59. data/lib/openai/models/beta/beta_response_error.rb +19 -1
  60. data/lib/openai/models/beta/beta_response_input_item.rb +107 -1
  61. data/lib/openai/models/beta/beta_response_item.rb +107 -1
  62. data/lib/openai/models/beta/beta_response_output_item.rb +107 -1
  63. data/lib/openai/models/beta/beta_responses_client_event.rb +23 -2
  64. data/lib/openai/models/beta/response_compact_params.rb +21 -0
  65. data/lib/openai/models/beta/response_create_params.rb +23 -2
  66. data/lib/openai/models/beta/session_turn_error.rb +3 -0
  67. data/lib/openai/models/chat/chat_completion_audio_param.rb +3 -3
  68. data/lib/openai/models/chat/chat_completion_message.rb +0 -8
  69. data/lib/openai/models/chat/chat_completion_message_function_tool_call.rb +0 -8
  70. data/lib/openai/models/chat/completion_create_params.rb +5 -12
  71. data/lib/openai/models/chat_model.rb +21 -0
  72. data/lib/openai/models/conversations/conversation_item.rb +107 -1
  73. data/lib/openai/models/decision.rb +17 -2
  74. data/lib/openai/models/decision_create_params.rb +29 -12
  75. data/lib/openai/models/decision_input_image.rb +4 -3
  76. data/lib/openai/models/decision_input_message.rb +4 -4
  77. data/lib/openai/models/decision_input_part.rb +3 -2
  78. data/lib/openai/models/image_edit_completed_event.rb +1 -2
  79. data/lib/openai/models/image_edit_partial_image_event.rb +1 -2
  80. data/lib/openai/models/image_gen_completed_event.rb +1 -2
  81. data/lib/openai/models/image_gen_partial_image_event.rb +1 -2
  82. data/lib/openai/models/images_response.rb +1 -2
  83. data/lib/openai/models/live/built_in_voice.rb +1 -0
  84. data/lib/openai/models/live/client_event.rb +14 -2
  85. data/lib/openai/models/live/decision_create_event.rb +26 -0
  86. data/lib/openai/models/live/decision_event.rb +117 -0
  87. data/lib/openai/models/live/decision_item_create_event.rb +194 -0
  88. data/lib/openai/models/live/decision_item_created_event.rb +202 -0
  89. data/lib/openai/models/live/decision_item_delete_event.rb +38 -0
  90. data/lib/openai/models/live/decision_item_deleted_event.rb +46 -0
  91. data/lib/openai/models/live/decision_trigger.rb +244 -0
  92. data/lib/openai/models/live/decisions_delegation_config.rb +201 -0
  93. data/lib/openai/models/live/decisions_delegation_update_config.rb +208 -0
  94. data/lib/openai/models/live/delegation_created_event.rb +10 -10
  95. data/lib/openai/models/live/fork_client_event.rb +14 -2
  96. data/lib/openai/models/live/fork_server_event.rb +17 -2
  97. data/lib/openai/models/live/media_session_config.rb +47 -11
  98. data/lib/openai/models/live/output_audio_fixture_play_event.rb +48 -0
  99. data/lib/openai/models/live/output_audio_fixture_played_event.rb +42 -0
  100. data/lib/openai/models/live/output_audio_fixture_playing_event.rb +41 -0
  101. data/lib/openai/models/live/server_event.rb +17 -2
  102. data/lib/openai/models/live/session_accept_params.rb +47 -11
  103. data/lib/openai/models/live/session_config.rb +47 -11
  104. data/lib/openai/models/live/session_resource.rb +47 -11
  105. data/lib/openai/models/live/session_update_config.rb +38 -6
  106. data/lib/openai/models/live/session_update_event.rb +8 -8
  107. data/lib/openai/models/live/sideband_client_event.rb +57 -0
  108. data/lib/openai/models/live/sideband_server_event.rb +78 -0
  109. data/lib/openai/models/realtime/realtime_audio_config_output.rb +6 -3
  110. data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +6 -3
  111. data/lib/openai/models/realtime/realtime_response_status.rb +10 -1
  112. data/lib/openai/models/response_format_json_schema.rb +1 -1
  113. data/lib/openai/models/responses/function_tool.rb +8 -6
  114. data/lib/openai/models/responses/response.rb +2 -23
  115. data/lib/openai/models/responses/response_compact_params.rb +21 -0
  116. data/lib/openai/models/responses/response_create_params.rb +3 -6
  117. data/lib/openai/models/responses/response_error.rb +19 -1
  118. data/lib/openai/models/responses/response_format_text_config.rb +0 -4
  119. data/lib/openai/models/responses/response_function_tool_call.rb +0 -8
  120. data/lib/openai/models/responses/response_input_item.rb +107 -1
  121. data/lib/openai/models/responses/response_item.rb +107 -1
  122. data/lib/openai/models/responses/response_output_item.rb +107 -1
  123. data/lib/openai/models/responses/response_output_text.rb +0 -8
  124. data/lib/openai/models/responses/responses_client_event.rb +2 -2
  125. data/lib/openai/models/safety/safety_alert.rb +12 -1
  126. data/lib/openai/models/video_create_error.rb +19 -1
  127. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +4 -4
  128. data/lib/openai/models/webhooks/webhook_endpoint_with_secret.rb +0 -9
  129. data/lib/openai/resources/admin/organization/external_storage.rb +1 -1
  130. data/lib/openai/resources/admin/organization/projects/api_keys.rb +61 -0
  131. data/lib/openai/resources/admin/organization/usage.rb +67 -0
  132. data/lib/openai/resources/audio/speech.rb +2 -1
  133. data/lib/openai/resources/audio/voices.rb +10 -10
  134. data/lib/openai/resources/beta/agents/environments/files.rb +3 -31
  135. data/lib/openai/resources/beta/agents/environments.rb +3 -3
  136. data/lib/openai/resources/beta/agents/sessions/artifacts.rb +5 -11
  137. data/lib/openai/resources/beta/agents/sessions.rb +20 -56
  138. data/lib/openai/resources/beta/agents/vaults/credentials.rb +10 -6
  139. data/lib/openai/resources/beta/agents/vaults.rb +45 -6
  140. data/lib/openai/resources/beta/agents.rb +6 -4
  141. data/lib/openai/resources/beta/responses.rb +2 -2
  142. data/lib/openai/resources/chat/completions.rb +11 -37
  143. data/lib/openai/resources/decisions.rb +9 -15
  144. data/lib/openai/resources/files.rb +0 -39
  145. data/lib/openai/resources/live/forks.rb +19 -0
  146. data/lib/openai/resources/live/sideband.rb +19 -0
  147. data/lib/openai/resources/live.rb +19 -0
  148. data/lib/openai/resources/realtime/translations.rb +19 -0
  149. data/lib/openai/resources/realtime.rb +19 -0
  150. data/lib/openai/resources/responses.rb +44 -95
  151. data/lib/openai/resources/vector_stores/file_batches.rb +0 -178
  152. data/lib/openai/resources/vector_stores/files.rb +0 -188
  153. data/lib/openai/resources/webhooks.rb +13 -29
  154. data/lib/openai/version.rb +1 -1
  155. data/lib/openai.rb +31 -0
  156. data/rbi/openai/client.rbi +0 -103
  157. data/rbi/openai/helpers/admin/organization/projects/api_keys.rbi +25 -0
  158. data/rbi/openai/helpers/beta/agents/artifacts.rbi +25 -0
  159. data/rbi/openai/helpers/beta/agents/files.rbi +48 -0
  160. data/rbi/openai/helpers/client_runtime.rbi +108 -0
  161. data/rbi/openai/helpers/files.rbi +25 -0
  162. data/rbi/openai/helpers/models/chat/parsed.rbi +21 -0
  163. data/rbi/openai/helpers/models/responses/parsed.rbi +19 -0
  164. data/rbi/openai/helpers/models/responses/response.rbi +15 -0
  165. data/rbi/openai/helpers/streaming/response_stream.rbi +301 -0
  166. data/rbi/openai/helpers/vector_stores/file_batches.rbi +102 -0
  167. data/rbi/openai/helpers/vector_stores/files.rbi +122 -0
  168. data/rbi/openai/helpers/websocket.rbi +82 -0
  169. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +6 -3
  170. data/rbi/openai/models/admin/organization/external_storage_configuration.rbi +4 -2
  171. data/rbi/openai/models/admin/organization/external_storage_create_params.rbi +63 -4
  172. data/rbi/openai/models/admin/organization/oci_external_storage_provider.rbi +71 -0
  173. data/rbi/openai/models/admin/organization/project_residency.rbi +12 -0
  174. data/rbi/openai/models/admin/organization/projects/api_key_update_params.rbi +110 -0
  175. data/rbi/openai/models/admin/organization/projects/api_key_update_scopes_params.rbi +72 -0
  176. data/rbi/openai/models/admin/organization/usage_decisions_params.rbi +229 -0
  177. data/rbi/openai/models/admin/organization/usage_decisions_response.rbi +479 -0
  178. data/rbi/openai/models/audio/speech_create_params.rbi +6 -3
  179. data/rbi/openai/models/audio/voice.rbi +21 -2
  180. data/rbi/openai/models/audio/voice_create_params.rbi +149 -4
  181. data/rbi/openai/models/beta/agent_create_params.rbi +4 -2
  182. data/rbi/openai/models/beta/agent_list_params.rbi +8 -5
  183. data/rbi/openai/models/beta/agent_session.rbi +64 -1
  184. data/rbi/openai/models/beta/agent_update_params.rbi +4 -2
  185. data/rbi/openai/models/beta/agents/environment_list_params.rbi +7 -7
  186. data/rbi/openai/models/beta/agents/session_create_params.rbi +62 -2
  187. data/rbi/openai/models/beta/agents/session_list_params.rbi +11 -11
  188. data/rbi/openai/models/beta/agents/session_update_params.rbi +56 -0
  189. data/rbi/openai/models/beta/agents/sessions/artifact_list_params.rbi +19 -13
  190. data/rbi/openai/models/beta/agents/vault_list_params.rbi +30 -13
  191. data/rbi/openai/models/beta/agents/vault_status_filter.rbi +1 -3
  192. data/rbi/openai/models/beta/agents/vault_update_params.rbi +87 -0
  193. data/rbi/openai/models/beta/agents/vaults/credential_list_params.rbi +30 -13
  194. data/rbi/openai/models/beta/beta_response.rbi +2 -2
  195. data/rbi/openai/models/beta/beta_response_error.rbi +24 -3
  196. data/rbi/openai/models/beta/beta_response_input_item.rbi +191 -0
  197. data/rbi/openai/models/beta/beta_response_item.rbi +189 -0
  198. data/rbi/openai/models/beta/beta_response_output_item.rbi +191 -0
  199. data/rbi/openai/models/beta/beta_responses_client_event.rbi +2 -2
  200. data/rbi/openai/models/beta/response_create_params.rbi +2 -2
  201. data/rbi/openai/models/beta/session_turn_error.rbi +3 -0
  202. data/rbi/openai/models/chat/chat_completion_audio_param.rbi +3 -3
  203. data/rbi/openai/models/chat/chat_completion_message.rbi +0 -4
  204. data/rbi/openai/models/chat/chat_completion_message_function_tool_call.rbi +0 -4
  205. data/rbi/openai/models/chat/completion_create_params.rbi +63 -78
  206. data/rbi/openai/models/conversations/conversation_item.rbi +191 -0
  207. data/rbi/openai/models/decision.rbi +14 -1
  208. data/rbi/openai/models/decision_create_params.rbi +23 -12
  209. data/rbi/openai/models/decision_input_image.rbi +4 -3
  210. data/rbi/openai/models/decision_input_message.rbi +4 -4
  211. data/rbi/openai/models/decision_input_part.rbi +2 -1
  212. data/rbi/openai/models/image_edit_completed_event.rbi +1 -0
  213. data/rbi/openai/models/image_edit_partial_image_event.rbi +1 -0
  214. data/rbi/openai/models/image_gen_completed_event.rbi +1 -0
  215. data/rbi/openai/models/image_gen_partial_image_event.rbi +1 -0
  216. data/rbi/openai/models/images_response.rbi +1 -0
  217. data/rbi/openai/models/live/built_in_voice.rbi +1 -0
  218. data/rbi/openai/models/live/client_event.rbi +4 -0
  219. data/rbi/openai/models/live/decision_create_event.rbi +55 -0
  220. data/rbi/openai/models/live/decision_event.rbi +185 -0
  221. data/rbi/openai/models/live/decision_item_create_event.rbi +338 -0
  222. data/rbi/openai/models/live/decision_item_created_event.rbi +354 -0
  223. data/rbi/openai/models/live/decision_item_delete_event.rbi +66 -0
  224. data/rbi/openai/models/live/decision_item_deleted_event.rbi +77 -0
  225. data/rbi/openai/models/live/decision_trigger.rbi +465 -0
  226. data/rbi/openai/models/live/decisions_delegation_config.rbi +393 -0
  227. data/rbi/openai/models/live/decisions_delegation_update_config.rbi +412 -0
  228. data/rbi/openai/models/live/delegation_created_event.rbi +8 -10
  229. data/rbi/openai/models/live/fork_client_event.rbi +4 -0
  230. data/rbi/openai/models/live/fork_server_event.rbi +5 -0
  231. data/rbi/openai/models/live/media_session_config.rbi +95 -14
  232. data/rbi/openai/models/live/output_audio_fixture_play_event.rbi +76 -0
  233. data/rbi/openai/models/live/output_audio_fixture_played_event.rbi +73 -0
  234. data/rbi/openai/models/live/output_audio_fixture_playing_event.rbi +72 -0
  235. data/rbi/openai/models/live/server_event.rbi +5 -0
  236. data/rbi/openai/models/live/session_accept_params.rbi +88 -12
  237. data/rbi/openai/models/live/session_config.rbi +100 -14
  238. data/rbi/openai/models/live/session_resource.rbi +81 -10
  239. data/rbi/openai/models/live/session_update_config.rbi +86 -9
  240. data/rbi/openai/models/live/session_update_event.rbi +8 -8
  241. data/rbi/openai/models/live/sideband_client_event.rbi +40 -0
  242. data/rbi/openai/models/live/sideband_server_event.rbi +47 -0
  243. data/rbi/openai/models/realtime/realtime_audio_config_output.rbi +6 -3
  244. data/rbi/openai/models/realtime/realtime_response_create_audio_output.rbi +6 -3
  245. data/rbi/openai/models/realtime/realtime_response_status.rbi +13 -1
  246. data/rbi/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbi +1 -1
  247. data/rbi/openai/models/realtime/realtime_translation_output_audio_delta_event.rbi +3 -3
  248. data/rbi/openai/models/realtime/realtime_translation_session_close_event.rbi +1 -1
  249. data/rbi/openai/models/realtime/realtime_translation_session_update_event.rbi +5 -1
  250. data/rbi/openai/models/responses/response.rbi +2 -7
  251. data/rbi/openai/models/responses/response_create_params.rbi +5 -9
  252. data/rbi/openai/models/responses/response_error.rbi +24 -3
  253. data/rbi/openai/models/responses/response_function_tool_call.rbi +0 -4
  254. data/rbi/openai/models/responses/response_function_web_search.rbi +21 -17
  255. data/rbi/openai/models/responses/response_input_item.rbi +191 -0
  256. data/rbi/openai/models/responses/response_item.rbi +189 -0
  257. data/rbi/openai/models/responses/response_output_item.rbi +191 -0
  258. data/rbi/openai/models/responses/response_output_text.rbi +0 -4
  259. data/rbi/openai/models/responses/responses_client_event.rbi +2 -2
  260. data/rbi/openai/models/safety/safety_alert.rbi +13 -1
  261. data/rbi/openai/models/video_create_error.rbi +24 -3
  262. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -1
  263. data/rbi/openai/resources/admin/organization/external_storage.rbi +2 -1
  264. data/rbi/openai/resources/admin/organization/projects/api_keys.rbi +48 -0
  265. data/rbi/openai/resources/admin/organization/usage.rbi +56 -0
  266. data/rbi/openai/resources/audio/speech.rbi +2 -1
  267. data/rbi/openai/resources/audio/voices.rbi +13 -10
  268. data/rbi/openai/resources/beta/agents/environments/files.rbi +3 -33
  269. data/rbi/openai/resources/beta/agents/environments.rbi +3 -3
  270. data/rbi/openai/resources/beta/agents/sessions/artifacts.rbi +5 -13
  271. data/rbi/openai/resources/beta/agents/sessions.rbi +15 -4
  272. data/rbi/openai/resources/beta/agents/vaults/credentials.rbi +9 -5
  273. data/rbi/openai/resources/beta/agents/vaults.rbi +34 -5
  274. data/rbi/openai/resources/beta/agents.rbi +6 -4
  275. data/rbi/openai/resources/beta/responses.rbi +2 -2
  276. data/rbi/openai/resources/chat/completions.rbi +26 -29
  277. data/rbi/openai/resources/decisions.rbi +9 -15
  278. data/rbi/openai/resources/files.rbi +0 -18
  279. data/rbi/openai/resources/live/forks.rbi +17 -0
  280. data/rbi/openai/resources/live/sideband.rbi +17 -0
  281. data/rbi/openai/resources/live.rbi +17 -0
  282. data/rbi/openai/resources/realtime/translations.rbi +17 -0
  283. data/rbi/openai/resources/realtime.rbi +17 -0
  284. data/rbi/openai/resources/responses.rbi +41 -333
  285. data/rbi/openai/resources/vector_stores/file_batches.rbi +0 -93
  286. data/rbi/openai/resources/vector_stores/files.rbi +0 -113
  287. data/rbi/openai/resources/webhooks.rbi +1 -1
  288. data/sig/openai/client.rbs +0 -50
  289. data/sig/openai/helpers/admin/organization/projects/api_keys.rbs +18 -0
  290. data/sig/openai/helpers/beta/agents/artifacts.rbs +17 -0
  291. data/sig/openai/helpers/beta/agents/files.rbs +30 -0
  292. data/sig/openai/helpers/client_runtime.rbs +53 -0
  293. data/sig/openai/helpers/files.rbs +12 -0
  294. data/sig/openai/helpers/models/responses/response.rbs +9 -0
  295. data/sig/openai/helpers/streaming/response_stream.rbs +37 -0
  296. data/sig/openai/helpers/vector_stores/file_batches.rbs +38 -0
  297. data/sig/openai/helpers/vector_stores/files.rbs +43 -0
  298. data/sig/openai/helpers/websocket.rbs +40 -0
  299. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +1 -0
  300. data/sig/openai/models/admin/organization/external_storage_configuration.rbs +1 -0
  301. data/sig/openai/models/admin/organization/external_storage_create_params.rbs +33 -0
  302. data/sig/openai/models/admin/organization/oci_external_storage_provider.rbs +34 -0
  303. data/sig/openai/models/admin/organization/project_residency.rbs +6 -0
  304. data/sig/openai/models/admin/organization/projects/api_key_update_params.rbs +77 -0
  305. data/sig/openai/models/admin/organization/projects/api_key_update_scopes_params.rbs +38 -0
  306. data/sig/openai/models/admin/organization/usage_decisions_params.rbs +170 -0
  307. data/sig/openai/models/admin/organization/usage_decisions_response.rbs +319 -0
  308. data/sig/openai/models/audio/speech_create_params.rbs +4 -2
  309. data/sig/openai/models/audio/voice.rbs +21 -3
  310. data/sig/openai/models/audio/voice_create_params.rbs +90 -1
  311. data/sig/openai/models/beta/agent_create_params.rbs +4 -2
  312. data/sig/openai/models/beta/agent_list_params.rbs +9 -6
  313. data/sig/openai/models/beta/agent_session.rbs +36 -2
  314. data/sig/openai/models/beta/agent_update_params.rbs +4 -2
  315. data/sig/openai/models/beta/agents/environment_list_params.rbs +9 -9
  316. data/sig/openai/models/beta/agents/session_create_params.rbs +29 -2
  317. data/sig/openai/models/beta/agents/session_list_params.rbs +12 -12
  318. data/sig/openai/models/beta/agents/session_update_params.rbs +23 -0
  319. data/sig/openai/models/beta/agents/sessions/artifact_list_params.rbs +21 -15
  320. data/sig/openai/models/beta/agents/vault_list_params.rbs +32 -14
  321. data/sig/openai/models/beta/agents/vault_update_params.rbs +54 -0
  322. data/sig/openai/models/beta/agents/vaults/credential_list_params.rbs +32 -14
  323. data/sig/openai/models/beta/beta_response.rbs +2 -2
  324. data/sig/openai/models/beta/beta_response_error.rbs +19 -3
  325. data/sig/openai/models/beta/beta_response_input_item.rbs +110 -0
  326. data/sig/openai/models/beta/beta_response_item.rbs +110 -0
  327. data/sig/openai/models/beta/beta_response_output_item.rbs +110 -0
  328. data/sig/openai/models/beta/beta_responses_client_event.rbs +2 -2
  329. data/sig/openai/models/beta/response_create_params.rbs +2 -2
  330. data/sig/openai/models/beta/session_turn_error.rbs +4 -0
  331. data/sig/openai/models/chat/chat_completion_audio_param.rbs +2 -2
  332. data/sig/openai/models/chat/completion_create_params.rbs +2 -2
  333. data/sig/openai/models/conversations/conversation_item.rbs +110 -0
  334. data/sig/openai/models/decision.rbs +13 -0
  335. data/sig/openai/models/decision_create_params.rbs +19 -8
  336. data/sig/openai/models/decision_input_image.rbs +2 -2
  337. data/sig/openai/models/decision_input_message.rbs +2 -2
  338. data/sig/openai/models/live/built_in_voice.rbs +2 -0
  339. data/sig/openai/models/live/client_event.rbs +4 -0
  340. data/sig/openai/models/live/decision_create_event.rbs +18 -0
  341. data/sig/openai/models/live/decision_event.rbs +102 -0
  342. data/sig/openai/models/live/decision_item_create_event.rbs +183 -0
  343. data/sig/openai/models/live/decision_item_created_event.rbs +195 -0
  344. data/sig/openai/models/live/decision_item_delete_event.rbs +33 -0
  345. data/sig/openai/models/live/decision_item_deleted_event.rbs +49 -0
  346. data/sig/openai/models/live/decision_trigger.rbs +234 -0
  347. data/sig/openai/models/live/decisions_delegation_config.rbs +195 -0
  348. data/sig/openai/models/live/decisions_delegation_update_config.rbs +202 -0
  349. data/sig/openai/models/live/delegation_created_event.rbs +6 -7
  350. data/sig/openai/models/live/fork_client_event.rbs +4 -0
  351. data/sig/openai/models/live/fork_server_event.rbs +5 -0
  352. data/sig/openai/models/live/media_session_config.rbs +58 -11
  353. data/sig/openai/models/live/output_audio_fixture_play_event.rbs +42 -0
  354. data/sig/openai/models/live/output_audio_fixture_played_event.rbs +44 -0
  355. data/sig/openai/models/live/output_audio_fixture_playing_event.rbs +44 -0
  356. data/sig/openai/models/live/server_event.rbs +5 -0
  357. data/sig/openai/models/live/session_accept_params.rbs +57 -10
  358. data/sig/openai/models/live/session_config.rbs +58 -11
  359. data/sig/openai/models/live/session_resource.rbs +57 -10
  360. data/sig/openai/models/live/session_update_config.rbs +54 -3
  361. data/sig/openai/models/live/session_update_event.rbs +6 -6
  362. data/sig/openai/models/live/sideband_client_event.rbs +26 -0
  363. data/sig/openai/models/live/sideband_server_event.rbs +33 -0
  364. data/sig/openai/models/realtime/realtime_audio_config_output.rbs +6 -3
  365. data/sig/openai/models/realtime/realtime_response_create_audio_output.rbs +6 -3
  366. data/sig/openai/models/realtime/realtime_response_status.rbs +15 -3
  367. data/sig/openai/models/responses/response.rbs +2 -4
  368. data/sig/openai/models/responses/response_create_params.rbs +2 -2
  369. data/sig/openai/models/responses/response_error.rbs +19 -3
  370. data/sig/openai/models/responses/response_input_item.rbs +110 -0
  371. data/sig/openai/models/responses/response_item.rbs +110 -0
  372. data/sig/openai/models/responses/response_output_item.rbs +110 -0
  373. data/sig/openai/models/responses/responses_client_event.rbs +2 -2
  374. data/sig/openai/models/safety/safety_alert.rbs +12 -2
  375. data/sig/openai/models/video_create_error.rbs +19 -3
  376. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -1
  377. data/sig/openai/resources/admin/organization/projects/api_keys.rbs +8 -0
  378. data/sig/openai/resources/admin/organization/usage.rbs +15 -0
  379. data/sig/openai/resources/beta/agents/environments/files.rbs +0 -17
  380. data/sig/openai/resources/beta/agents/sessions/artifacts.rbs +2 -6
  381. data/sig/openai/resources/beta/agents/sessions.rbs +4 -1
  382. data/sig/openai/resources/beta/agents/vaults/credentials.rbs +2 -1
  383. data/sig/openai/resources/beta/agents/vaults.rbs +9 -1
  384. data/sig/openai/resources/beta/agents.rbs +1 -1
  385. data/sig/openai/resources/files.rbs +0 -7
  386. data/sig/openai/resources/live/forks.rbs +8 -0
  387. data/sig/openai/resources/live/sideband.rbs +8 -0
  388. data/sig/openai/resources/live.rbs +7 -0
  389. data/sig/openai/resources/realtime/translations.rbs +7 -0
  390. data/sig/openai/resources/realtime.rbs +7 -0
  391. data/sig/openai/resources/responses.rbs +7 -31
  392. data/sig/openai/resources/vector_stores/file_batches.rbs +0 -31
  393. data/sig/openai/resources/vector_stores/files.rbs +0 -36
  394. data/sig/openai/resources/webhooks.rbs +1 -1
  395. metadata +89 -1
@@ -875,6 +875,12 @@ module OpenAI
875
875
  nil?: true
876
876
  )
877
877
 
878
+ # @!attribute error
879
+ # Details of a moderation failure, when available.
880
+ #
881
+ # @return [OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error, nil]
882
+ optional :error, -> { OpenAI::Beta::BetaResponseOutputItem::ImageGenerationCall::Error }
883
+
878
884
  # @!attribute output_format
879
885
  # The output format used for generation.
880
886
  #
@@ -914,7 +920,7 @@ module OpenAI
914
920
  nil?: true
915
921
  )
916
922
 
917
- # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, type: :image_generation_call)
923
+ # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, type: :image_generation_call)
918
924
  # An image generation request made by the model.
919
925
  #
920
926
  # @param id [String]
@@ -935,6 +941,9 @@ module OpenAI
935
941
  # @param background [Symbol, OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Background, nil]
936
942
  # The background setting used for generation.
937
943
  #
944
+ # @param error [OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error]
945
+ # Details of a moderation failure, when available.
946
+ #
938
947
  # @param output_format [Symbol, OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::OutputFormat, nil]
939
948
  # The output format used for generation.
940
949
  #
@@ -1009,6 +1018,103 @@ module OpenAI
1009
1018
  # @return [Array<Symbol>]
1010
1019
  end
1011
1020
 
1021
+ # @see OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall#error
1022
+ class Error < OpenAI::Internal::Type::BaseModel
1023
+ # @!attribute code
1024
+ # The error code.
1025
+ #
1026
+ # @return [String, nil]
1027
+ required :code, String, nil?: true
1028
+
1029
+ # @!attribute message
1030
+ # A description of the error.
1031
+ #
1032
+ # @return [String]
1033
+ required :message, String
1034
+
1035
+ # @!attribute param
1036
+ # The related request parameter.
1037
+ #
1038
+ # @return [String, nil]
1039
+ required :param, String, nil?: true
1040
+
1041
+ # @!attribute type
1042
+ # The error type.
1043
+ #
1044
+ # @return [String]
1045
+ required :type, String
1046
+
1047
+ # @!attribute moderation_details
1048
+ # Public details for a `moderation_blocked` error, when available.
1049
+ #
1050
+ # @return [OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error::ModerationDetails, nil]
1051
+ optional(
1052
+ :moderation_details,
1053
+ -> { OpenAI::Beta::BetaResponseOutputItem::ImageGenerationCall::Error::ModerationDetails }
1054
+ )
1055
+
1056
+ # @!method initialize(code:, message:, param:, type:, moderation_details: nil)
1057
+ # Details of a moderation failure, when available.
1058
+ #
1059
+ # @param code [String, nil]
1060
+ # The error code.
1061
+ #
1062
+ # @param message [String]
1063
+ # A description of the error.
1064
+ #
1065
+ # @param param [String, nil]
1066
+ # The related request parameter.
1067
+ #
1068
+ # @param type [String]
1069
+ # The error type.
1070
+ #
1071
+ # @param moderation_details [OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error::ModerationDetails]
1072
+ # Public details for a `moderation_blocked` error, when available.
1073
+
1074
+ # @see OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error#moderation_details
1075
+ class ModerationDetails < OpenAI::Internal::Type::BaseModel
1076
+ # @!attribute categories
1077
+ # Public moderation categories. New category values may be added over time.
1078
+ #
1079
+ # @return [Array<String>]
1080
+ required :categories, OpenAI::Internal::Type::ArrayOf[String]
1081
+
1082
+ # @!attribute moderation_stage
1083
+ # The stage where moderation blocked the image generation call.
1084
+ #
1085
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error::ModerationDetails::ModerationStage]
1086
+ required(
1087
+ :moderation_stage,
1088
+ enum: -> {
1089
+ OpenAI::Beta::BetaResponseOutputItem::ImageGenerationCall::Error::ModerationDetails::ModerationStage
1090
+ }
1091
+ )
1092
+
1093
+ # @!method initialize(categories:, moderation_stage:)
1094
+ # Public details for a `moderation_blocked` error, when available.
1095
+ #
1096
+ # @param categories [Array<String>]
1097
+ # Public moderation categories. New category values may be added over time.
1098
+ #
1099
+ # @param moderation_stage [Symbol, OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error::ModerationDetails::ModerationStage]
1100
+ # The stage where moderation blocked the image generation call.
1101
+
1102
+ # The stage where moderation blocked the image generation call.
1103
+ #
1104
+ # @see OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Error::ModerationDetails#moderation_stage
1105
+ module ModerationStage
1106
+ extend OpenAI::Internal::Type::Enum
1107
+
1108
+ INPUT = :input
1109
+ OUTPUT = :output
1110
+ UNKNOWN = :unknown
1111
+
1112
+ # @!method self.values
1113
+ # @return [Array<Symbol>]
1114
+ end
1115
+ end
1116
+ end
1117
+
1012
1118
  # The output format used for generation.
1013
1119
  #
1014
1120
  # @see OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall#output_format
@@ -299,7 +299,7 @@ module OpenAI
299
299
  # @!attribute safety_identifier
300
300
  # A stable identifier used to help detect users of your application that may be
301
301
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
302
- # identifies each user, with a maximum length of 64 characters. We recommend
302
+ # identifies each user, with a maximum length of 128 characters. We recommend
303
303
  # hashing their username or email address, in order to avoid sending us any
304
304
  # identifying information.
305
305
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -634,7 +634,7 @@ module OpenAI
634
634
  # @param safety_identifier [String, nil]
635
635
  # A stable identifier used to help detect users of your application that may be
636
636
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
637
- # identifies each user, with a maximum length of 64 characters. We recommend
637
+ # identifies each user, with a maximum length of 128 characters. We recommend
638
638
  # hashing their username or email address, in order to avoid sending us any
639
639
  # identifying information.
640
640
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -1321,6 +1321,9 @@ module OpenAI
1321
1321
  GPT_5_5_2026_04_23 = :"gpt-5.5-2026-04-23"
1322
1322
  GPT_5_4 = :"gpt-5.4"
1323
1323
  GPT_5_4_MINI = :"gpt-5.4-mini"
1324
+ # @deprecated Announced shutdown date: 2027-04-01. See
1325
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1326
+ # replacements.
1324
1327
  GPT_5_4_NANO = :"gpt-5.4-nano"
1325
1328
  GPT_5_4_MINI_2026_03_17 = :"gpt-5.4-mini-2026-03-17"
1326
1329
  GPT_5_4_NANO_2026_03_17 = :"gpt-5.4-nano-2026-03-17"
@@ -1336,6 +1339,9 @@ module OpenAI
1336
1339
  GPT_5_2_CHAT_LATEST = :"gpt-5.2-chat-latest"
1337
1340
  GPT_5_2_PRO = :"gpt-5.2-pro"
1338
1341
  GPT_5_2_PRO_2025_12_11 = :"gpt-5.2-pro-2025-12-11"
1342
+ # @deprecated Announced shutdown date: 2027-04-01. See
1343
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1344
+ # replacements.
1339
1345
  GPT_5_1 = :"gpt-5.1"
1340
1346
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
1341
1347
  # @deprecated Announced shutdown date: 2026-07-23. See
@@ -1382,7 +1388,13 @@ module OpenAI
1382
1388
  # https://developers.openai.com/api/docs/deprecations for details and recommended
1383
1389
  # replacements.
1384
1390
  GPT_4_1_NANO = :"gpt-4.1-nano"
1391
+ # @deprecated Announced shutdown date: 2027-01-14. See
1392
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1393
+ # replacements.
1385
1394
  GPT_4_1_2025_04_14 = :"gpt-4.1-2025-04-14"
1395
+ # @deprecated Announced shutdown date: 2027-01-14. See
1396
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1397
+ # replacements.
1386
1398
  GPT_4_1_MINI_2025_04_14 = :"gpt-4.1-mini-2025-04-14"
1387
1399
  # @deprecated Announced shutdown date: 2026-10-23. See
1388
1400
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -1437,7 +1449,13 @@ module OpenAI
1437
1449
  # replacements.
1438
1450
  O1_MINI_2024_09_12 = :"o1-mini-2024-09-12"
1439
1451
  GPT_4O = :"gpt-4o"
1452
+ # @deprecated Announced shutdown date: 2027-01-14. See
1453
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1454
+ # replacements.
1440
1455
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
1456
+ # @deprecated Announced shutdown date: 2027-01-14. See
1457
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1458
+ # replacements.
1441
1459
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
1442
1460
  # @deprecated Announced shutdown date: 2026-10-23. See
1443
1461
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -1500,6 +1518,9 @@ module OpenAI
1500
1518
  # replacements.
1501
1519
  CODEX_MINI_LATEST = :"codex-mini-latest"
1502
1520
  GPT_4O_MINI = :"gpt-4o-mini"
1521
+ # @deprecated Announced shutdown date: 2027-01-14. See
1522
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1523
+ # replacements.
1503
1524
  GPT_4O_MINI_2024_07_18 = :"gpt-4o-mini-2024-07-18"
1504
1525
  # @deprecated Announced shutdown date: 2026-10-23. See
1505
1526
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -420,6 +420,9 @@ module OpenAI
420
420
  GPT_5_5_2026_04_23 = :"gpt-5.5-2026-04-23"
421
421
  GPT_5_4 = :"gpt-5.4"
422
422
  GPT_5_4_MINI = :"gpt-5.4-mini"
423
+ # @deprecated Announced shutdown date: 2027-04-01. See
424
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
425
+ # replacements.
423
426
  GPT_5_4_NANO = :"gpt-5.4-nano"
424
427
  GPT_5_4_MINI_2026_03_17 = :"gpt-5.4-mini-2026-03-17"
425
428
  GPT_5_4_NANO_2026_03_17 = :"gpt-5.4-nano-2026-03-17"
@@ -435,6 +438,9 @@ module OpenAI
435
438
  GPT_5_2_CHAT_LATEST = :"gpt-5.2-chat-latest"
436
439
  GPT_5_2_PRO = :"gpt-5.2-pro"
437
440
  GPT_5_2_PRO_2025_12_11 = :"gpt-5.2-pro-2025-12-11"
441
+ # @deprecated Announced shutdown date: 2027-04-01. See
442
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
443
+ # replacements.
438
444
  GPT_5_1 = :"gpt-5.1"
439
445
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
440
446
  # @deprecated Announced shutdown date: 2026-07-23. See
@@ -481,7 +487,13 @@ module OpenAI
481
487
  # https://developers.openai.com/api/docs/deprecations for details and recommended
482
488
  # replacements.
483
489
  GPT_4_1_NANO = :"gpt-4.1-nano"
490
+ # @deprecated Announced shutdown date: 2027-01-14. See
491
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
492
+ # replacements.
484
493
  GPT_4_1_2025_04_14 = :"gpt-4.1-2025-04-14"
494
+ # @deprecated Announced shutdown date: 2027-01-14. See
495
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
496
+ # replacements.
485
497
  GPT_4_1_MINI_2025_04_14 = :"gpt-4.1-mini-2025-04-14"
486
498
  # @deprecated Announced shutdown date: 2026-10-23. See
487
499
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -536,7 +548,13 @@ module OpenAI
536
548
  # replacements.
537
549
  O1_MINI_2024_09_12 = :"o1-mini-2024-09-12"
538
550
  GPT_4O = :"gpt-4o"
551
+ # @deprecated Announced shutdown date: 2027-01-14. See
552
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
553
+ # replacements.
539
554
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
555
+ # @deprecated Announced shutdown date: 2027-01-14. See
556
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
557
+ # replacements.
540
558
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
541
559
  # @deprecated Announced shutdown date: 2026-10-23. See
542
560
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -599,6 +617,9 @@ module OpenAI
599
617
  # replacements.
600
618
  CODEX_MINI_LATEST = :"codex-mini-latest"
601
619
  GPT_4O_MINI = :"gpt-4o-mini"
620
+ # @deprecated Announced shutdown date: 2027-01-14. See
621
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
622
+ # replacements.
602
623
  GPT_4O_MINI_2024_07_18 = :"gpt-4o-mini-2024-07-18"
603
624
  # @deprecated Announced shutdown date: 2026-10-23. See
604
625
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -227,7 +227,7 @@ module OpenAI
227
227
  # @!attribute safety_identifier
228
228
  # A stable identifier used to help detect users of your application that may be
229
229
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
230
- # identifies each user, with a maximum length of 64 characters. We recommend
230
+ # identifies each user, with a maximum length of 128 characters. We recommend
231
231
  # hashing their username or email address, in order to avoid sending us any
232
232
  # identifying information.
233
233
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -524,7 +524,7 @@ module OpenAI
524
524
  # @param safety_identifier [String, nil]
525
525
  # A stable identifier used to help detect users of your application that may be
526
526
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
527
- # identifies each user, with a maximum length of 64 characters. We recommend
527
+ # identifies each user, with a maximum length of 128 characters. We recommend
528
528
  # hashing their username or email address, in order to avoid sending us any
529
529
  # identifying information.
530
530
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -1005,6 +1005,9 @@ module OpenAI
1005
1005
  GPT_5_5_2026_04_23 = :"gpt-5.5-2026-04-23"
1006
1006
  GPT_5_4 = :"gpt-5.4"
1007
1007
  GPT_5_4_MINI = :"gpt-5.4-mini"
1008
+ # @deprecated Announced shutdown date: 2027-04-01. See
1009
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1010
+ # replacements.
1008
1011
  GPT_5_4_NANO = :"gpt-5.4-nano"
1009
1012
  GPT_5_4_MINI_2026_03_17 = :"gpt-5.4-mini-2026-03-17"
1010
1013
  GPT_5_4_NANO_2026_03_17 = :"gpt-5.4-nano-2026-03-17"
@@ -1020,6 +1023,9 @@ module OpenAI
1020
1023
  GPT_5_2_CHAT_LATEST = :"gpt-5.2-chat-latest"
1021
1024
  GPT_5_2_PRO = :"gpt-5.2-pro"
1022
1025
  GPT_5_2_PRO_2025_12_11 = :"gpt-5.2-pro-2025-12-11"
1026
+ # @deprecated Announced shutdown date: 2027-04-01. See
1027
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1028
+ # replacements.
1023
1029
  GPT_5_1 = :"gpt-5.1"
1024
1030
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
1025
1031
  # @deprecated Announced shutdown date: 2026-07-23. See
@@ -1066,7 +1072,13 @@ module OpenAI
1066
1072
  # https://developers.openai.com/api/docs/deprecations for details and recommended
1067
1073
  # replacements.
1068
1074
  GPT_4_1_NANO = :"gpt-4.1-nano"
1075
+ # @deprecated Announced shutdown date: 2027-01-14. See
1076
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1077
+ # replacements.
1069
1078
  GPT_4_1_2025_04_14 = :"gpt-4.1-2025-04-14"
1079
+ # @deprecated Announced shutdown date: 2027-01-14. See
1080
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1081
+ # replacements.
1070
1082
  GPT_4_1_MINI_2025_04_14 = :"gpt-4.1-mini-2025-04-14"
1071
1083
  # @deprecated Announced shutdown date: 2026-10-23. See
1072
1084
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -1121,7 +1133,13 @@ module OpenAI
1121
1133
  # replacements.
1122
1134
  O1_MINI_2024_09_12 = :"o1-mini-2024-09-12"
1123
1135
  GPT_4O = :"gpt-4o"
1136
+ # @deprecated Announced shutdown date: 2027-01-14. See
1137
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1138
+ # replacements.
1124
1139
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
1140
+ # @deprecated Announced shutdown date: 2027-01-14. See
1141
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1142
+ # replacements.
1125
1143
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
1126
1144
  # @deprecated Announced shutdown date: 2026-10-23. See
1127
1145
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -1184,6 +1202,9 @@ module OpenAI
1184
1202
  # replacements.
1185
1203
  CODEX_MINI_LATEST = :"codex-mini-latest"
1186
1204
  GPT_4O_MINI = :"gpt-4o-mini"
1205
+ # @deprecated Announced shutdown date: 2027-01-14. See
1206
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
1207
+ # replacements.
1187
1208
  GPT_4O_MINI_2024_07_18 = :"gpt-4o-mini-2024-07-18"
1188
1209
  # @deprecated Announced shutdown date: 2026-10-23. See
1189
1210
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -49,6 +49,9 @@ module OpenAI
49
49
  # The organization has reached its OpenAI-assigned usage limit.
50
50
  ORGANIZATION_USAGE_LIMIT_EXCEEDED = :organization_usage_limit_exceeded
51
51
 
52
+ # Billing is not active for the account.
53
+ BILLING_NOT_ACTIVE = :billing_not_active
54
+
52
55
  # The organization has no API credits remaining.
53
56
  CREDIT_BALANCE_EXHAUSTED = :credit_balance_exhausted
54
57
 
@@ -16,7 +16,7 @@ module OpenAI
16
16
  # `ash`, `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, `shimmer`,
17
17
  # `marin`, and `cedar`. You may also provide a custom voice object with an `id`,
18
18
  # for example `{ "id": "voice_1234" }`. Custom voices must be created from audio
19
- # samples.
19
+ # samples. Voices created from text prompts are supported only in Live.
20
20
  #
21
21
  # @return [String, Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::ID, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice]
22
22
  required :voice, union: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice }
@@ -35,7 +35,7 @@ module OpenAI
35
35
  # `ash`, `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, `shimmer`,
36
36
  # `marin`, and `cedar`. You may also provide a custom voice object with an `id`,
37
37
  # for example `{ "id": "voice_1234" }`. Custom voices must be created from audio
38
- # samples.
38
+ # samples. Voices created from text prompts are supported only in Live.
39
39
 
40
40
  # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`,
41
41
  # or `pcm16`.
@@ -59,7 +59,7 @@ module OpenAI
59
59
  # `ash`, `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, `shimmer`,
60
60
  # `marin`, and `cedar`. You may also provide a custom voice object with an `id`,
61
61
  # for example `{ "id": "voice_1234" }`. Custom voices must be created from audio
62
- # samples.
62
+ # samples. Voices created from text prompts are supported only in Live.
63
63
  #
64
64
  # @see OpenAI::Models::Chat::ChatCompletionAudioParam#voice
65
65
  module Voice
@@ -10,14 +10,6 @@ module OpenAI
10
10
  # @return [String, nil]
11
11
  required :content, String, nil?: true
12
12
 
13
- response_only do
14
- # @!attribute parsed
15
- # The parsed contents of the message, if JSON schema is specified.
16
- #
17
- # @return [Object, nil]
18
- optional :parsed, OpenAI::StructuredOutput::ParsedJson
19
- end
20
-
21
13
  # @!attribute refusal
22
14
  # The refusal message generated by the model.
23
15
  #
@@ -45,14 +45,6 @@ module OpenAI
45
45
  # @return [String]
46
46
  required :arguments, String
47
47
 
48
- response_only do
49
- # @!attribute parsed
50
- # The parsed contents of the arguments.
51
- #
52
- # @return [Object, nil]
53
- required :parsed, OpenAI::StructuredOutput::ParsedJson
54
- end
55
-
56
48
  # @!attribute name
57
49
  # The name of the function to call.
58
50
  #
@@ -276,7 +276,7 @@ module OpenAI
276
276
  # @!attribute safety_identifier
277
277
  # A stable identifier used to help detect users of your application that may be
278
278
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
279
- # identifies each user, with a maximum length of 64 characters. We recommend
279
+ # identifies each user, with a maximum length of 128 characters. We recommend
280
280
  # hashing their username or email address, in order to avoid sending us any
281
281
  # identifying information.
282
282
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -378,15 +378,12 @@ module OpenAI
378
378
  # or
379
379
  # [function tools](https://developers.openai.com/api/docs/guides/function-calling).
380
380
  #
381
- # @return [Array<OpenAI::Models::Chat::ChatCompletionTool, OpenAI::StructuredOutput::JsonSchemaConverter>, nil]
381
+ # @return [Array<OpenAI::Models::Chat::ChatCompletionFunctionTool, OpenAI::Models::Chat::ChatCompletionCustomTool, OpenAI::StructuredOutput::JsonSchemaConverter>, nil]
382
382
  optional(
383
383
  :tools,
384
384
  -> {
385
385
  OpenAI::Internal::Type::ArrayOf[
386
- union: OpenAI::UnionOf[
387
- OpenAI::Chat::ChatCompletionTool,
388
- OpenAI::StructuredOutput::JsonSchemaConverter
389
- ]
386
+ OpenAI::UnionOf[OpenAI::Chat::ChatCompletionTool, OpenAI::StructuredOutput::JsonSchemaConverter]
390
387
  ]
391
388
  }
392
389
  )
@@ -618,7 +615,7 @@ module OpenAI
618
615
  # @param safety_identifier [String, nil]
619
616
  # A stable identifier used to help detect users of your application that may be
620
617
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
621
- # identifies each user, with a maximum length of 64 characters. We recommend
618
+ # identifies each user, with a maximum length of 128 characters. We recommend
622
619
  # hashing their username or email address, in order to avoid sending us any
623
620
  # identifying information.
624
621
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -688,7 +685,7 @@ module OpenAI
688
685
  # `none` is the default when no tools are present. `auto` is the default if tools
689
686
  # are present.
690
687
  #
691
- # @param tools [Array<OpenAI::StructuredOutput::JsonSchemaConverter, OpenAI::Models::Chat::ChatCompletionFunctionTool, OpenAI::Models::Chat::ChatCompletionCustomTool>]
688
+ # @param tools [Array<OpenAI::Models::Chat::ChatCompletionFunctionTool, OpenAI::Models::Chat::ChatCompletionCustomTool, OpenAI::StructuredOutput::JsonSchemaConverter>]
692
689
  # A list of tools the model may call. You can provide either
693
690
  # [custom tools](https://developers.openai.com/api/docs/guides/function-calling#custom-tools)
694
691
  # or
@@ -1083,10 +1080,6 @@ module OpenAI
1083
1080
  # Learn more about [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs).
1084
1081
  variant :json_schema, -> { OpenAI::ResponseFormatJSONSchema }
1085
1082
 
1086
- # An {OpenAI::BaseModel} can be provided and implicitly converted into {OpenAI::Models::ResponseFormatJSONSchema}.
1087
- # See examples for more details.
1088
- #
1089
- # Learn more about [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs).
1090
1083
  variant -> { OpenAI::StructuredOutput::JsonSchemaConverter }
1091
1084
 
1092
1085
  # JSON object response format. An older method of generating JSON responses.
@@ -16,6 +16,9 @@ module OpenAI
16
16
  GPT_5_5_2026_04_23 = :"gpt-5.5-2026-04-23"
17
17
  GPT_5_4 = :"gpt-5.4"
18
18
  GPT_5_4_MINI = :"gpt-5.4-mini"
19
+ # @deprecated Announced shutdown date: 2027-04-01. See
20
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
21
+ # replacements.
19
22
  GPT_5_4_NANO = :"gpt-5.4-nano"
20
23
  GPT_5_4_MINI_2026_03_17 = :"gpt-5.4-mini-2026-03-17"
21
24
  GPT_5_4_NANO_2026_03_17 = :"gpt-5.4-nano-2026-03-17"
@@ -31,6 +34,9 @@ module OpenAI
31
34
  GPT_5_2_CHAT_LATEST = :"gpt-5.2-chat-latest"
32
35
  GPT_5_2_PRO = :"gpt-5.2-pro"
33
36
  GPT_5_2_PRO_2025_12_11 = :"gpt-5.2-pro-2025-12-11"
37
+ # @deprecated Announced shutdown date: 2027-04-01. See
38
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
39
+ # replacements.
34
40
  GPT_5_1 = :"gpt-5.1"
35
41
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
36
42
  # @deprecated Announced shutdown date: 2026-07-23. See
@@ -77,7 +83,13 @@ module OpenAI
77
83
  # https://developers.openai.com/api/docs/deprecations for details and recommended
78
84
  # replacements.
79
85
  GPT_4_1_NANO = :"gpt-4.1-nano"
86
+ # @deprecated Announced shutdown date: 2027-01-14. See
87
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
88
+ # replacements.
80
89
  GPT_4_1_2025_04_14 = :"gpt-4.1-2025-04-14"
90
+ # @deprecated Announced shutdown date: 2027-01-14. See
91
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
92
+ # replacements.
81
93
  GPT_4_1_MINI_2025_04_14 = :"gpt-4.1-mini-2025-04-14"
82
94
  # @deprecated Announced shutdown date: 2026-10-23. See
83
95
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -132,7 +144,13 @@ module OpenAI
132
144
  # replacements.
133
145
  O1_MINI_2024_09_12 = :"o1-mini-2024-09-12"
134
146
  GPT_4O = :"gpt-4o"
147
+ # @deprecated Announced shutdown date: 2027-01-14. See
148
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
149
+ # replacements.
135
150
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
151
+ # @deprecated Announced shutdown date: 2027-01-14. See
152
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
153
+ # replacements.
136
154
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
137
155
  # @deprecated Announced shutdown date: 2026-10-23. See
138
156
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -195,6 +213,9 @@ module OpenAI
195
213
  # replacements.
196
214
  CODEX_MINI_LATEST = :"codex-mini-latest"
197
215
  GPT_4O_MINI = :"gpt-4o-mini"
216
+ # @deprecated Announced shutdown date: 2027-01-14. See
217
+ # https://developers.openai.com/api/docs/deprecations for details and recommended
218
+ # replacements.
198
219
  GPT_4O_MINI_2024_07_18 = :"gpt-4o-mini-2024-07-18"
199
220
  # @deprecated Announced shutdown date: 2026-10-23. See
200
221
  # https://developers.openai.com/api/docs/deprecations for details and recommended
@@ -146,6 +146,12 @@ module OpenAI
146
146
  nil?: true
147
147
  )
148
148
 
149
+ # @!attribute error
150
+ # Details of a moderation failure, when available.
151
+ #
152
+ # @return [OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error, nil]
153
+ optional :error, -> { OpenAI::Conversations::ConversationItem::ImageGenerationCall::Error }
154
+
149
155
  # @!attribute output_format
150
156
  # The output format used for generation.
151
157
  #
@@ -183,7 +189,7 @@ module OpenAI
183
189
  nil?: true
184
190
  )
185
191
 
186
- # @!method initialize(id:, result:, status:, action: nil, background: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, type: :image_generation_call)
192
+ # @!method initialize(id:, result:, status:, action: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, type: :image_generation_call)
187
193
  # An image generation request made by the model.
188
194
  #
189
195
  # @param id [String]
@@ -201,6 +207,9 @@ module OpenAI
201
207
  # @param background [Symbol, OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Background, nil]
202
208
  # The background setting used for generation.
203
209
  #
210
+ # @param error [OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error]
211
+ # Details of a moderation failure, when available.
212
+ #
204
213
  # @param output_format [Symbol, OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::OutputFormat, nil]
205
214
  # The output format used for generation.
206
215
  #
@@ -260,6 +269,103 @@ module OpenAI
260
269
  # @return [Array<Symbol>]
261
270
  end
262
271
 
272
+ # @see OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall#error
273
+ class Error < OpenAI::Internal::Type::BaseModel
274
+ # @!attribute code
275
+ # The error code.
276
+ #
277
+ # @return [String, nil]
278
+ required :code, String, nil?: true
279
+
280
+ # @!attribute message
281
+ # A description of the error.
282
+ #
283
+ # @return [String]
284
+ required :message, String
285
+
286
+ # @!attribute param
287
+ # The related request parameter.
288
+ #
289
+ # @return [String, nil]
290
+ required :param, String, nil?: true
291
+
292
+ # @!attribute type
293
+ # The error type.
294
+ #
295
+ # @return [String]
296
+ required :type, String
297
+
298
+ # @!attribute moderation_details
299
+ # Public details for a `moderation_blocked` error, when available.
300
+ #
301
+ # @return [OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error::ModerationDetails, nil]
302
+ optional(
303
+ :moderation_details,
304
+ -> { OpenAI::Conversations::ConversationItem::ImageGenerationCall::Error::ModerationDetails }
305
+ )
306
+
307
+ # @!method initialize(code:, message:, param:, type:, moderation_details: nil)
308
+ # Details of a moderation failure, when available.
309
+ #
310
+ # @param code [String, nil]
311
+ # The error code.
312
+ #
313
+ # @param message [String]
314
+ # A description of the error.
315
+ #
316
+ # @param param [String, nil]
317
+ # The related request parameter.
318
+ #
319
+ # @param type [String]
320
+ # The error type.
321
+ #
322
+ # @param moderation_details [OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error::ModerationDetails]
323
+ # Public details for a `moderation_blocked` error, when available.
324
+
325
+ # @see OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error#moderation_details
326
+ class ModerationDetails < OpenAI::Internal::Type::BaseModel
327
+ # @!attribute categories
328
+ # Public moderation categories. New category values may be added over time.
329
+ #
330
+ # @return [Array<String>]
331
+ required :categories, OpenAI::Internal::Type::ArrayOf[String]
332
+
333
+ # @!attribute moderation_stage
334
+ # The stage where moderation blocked the image generation call.
335
+ #
336
+ # @return [Symbol, OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error::ModerationDetails::ModerationStage]
337
+ required(
338
+ :moderation_stage,
339
+ enum: -> {
340
+ OpenAI::Conversations::ConversationItem::ImageGenerationCall::Error::ModerationDetails::ModerationStage
341
+ }
342
+ )
343
+
344
+ # @!method initialize(categories:, moderation_stage:)
345
+ # Public details for a `moderation_blocked` error, when available.
346
+ #
347
+ # @param categories [Array<String>]
348
+ # Public moderation categories. New category values may be added over time.
349
+ #
350
+ # @param moderation_stage [Symbol, OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error::ModerationDetails::ModerationStage]
351
+ # The stage where moderation blocked the image generation call.
352
+
353
+ # The stage where moderation blocked the image generation call.
354
+ #
355
+ # @see OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall::Error::ModerationDetails#moderation_stage
356
+ module ModerationStage
357
+ extend OpenAI::Internal::Type::Enum
358
+
359
+ INPUT = :input
360
+ OUTPUT = :output
361
+ UNKNOWN = :unknown
362
+
363
+ # @!method self.values
364
+ # @return [Array<Symbol>]
365
+ end
366
+ end
367
+ end
368
+
263
369
  # The output format used for generation.
264
370
  #
265
371
  # @see OpenAI::Models::Conversations::ConversationItem::ImageGenerationCall#output_format