openai 0.88.0 → 0.89.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 +12 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +4 -0
  5. data/lib/openai/models/beta/beta_response_input_item.rb +91 -1
  6. data/lib/openai/models/beta/beta_response_item.rb +93 -1
  7. data/lib/openai/models/beta/beta_response_output_item.rb +91 -1
  8. data/lib/openai/models/conversations/conversation_item.rb +91 -1
  9. data/lib/openai/models/live/audio_format.rb +109 -0
  10. data/lib/openai/models/live/built_in_voice.rb +38 -0
  11. data/lib/openai/models/live/client_config.rb +22 -0
  12. data/lib/openai/models/live/client_delegation.rb +22 -0
  13. data/lib/openai/models/live/client_event.rb +54 -0
  14. data/lib/openai/models/live/commentary_append_event.rb +59 -0
  15. data/lib/openai/models/live/commentary_appended_event.rb +65 -0
  16. data/lib/openai/models/live/custom_voice.rb +17 -0
  17. data/lib/openai/models/live/data_channel_config.rb +81 -0
  18. data/lib/openai/models/live/delegation_created_event.rb +140 -0
  19. data/lib/openai/models/live/error.rb +60 -0
  20. data/lib/openai/models/live/error_event.rb +52 -0
  21. data/lib/openai/models/live/fork_client_event.rb +53 -0
  22. data/lib/openai/models/live/fork_server_event.rb +295 -0
  23. data/lib/openai/models/live/fork_session_config.rb +107 -0
  24. data/lib/openai/models/live/fork_session_start_event.rb +48 -0
  25. data/lib/openai/models/live/function_tool.rb +60 -0
  26. data/lib/openai/models/live/info_event.rb +60 -0
  27. data/lib/openai/models/live/initial_item.rb +419 -0
  28. data/lib/openai/models/live/input_audio_append_event.rb +50 -0
  29. data/lib/openai/models/live/input_audio_mute_event.rb +33 -0
  30. data/lib/openai/models/live/input_audio_muted_event.rb +42 -0
  31. data/lib/openai/models/live/input_audio_unmute_event.rb +33 -0
  32. data/lib/openai/models/live/input_audio_unmuted_event.rb +42 -0
  33. data/lib/openai/models/live/input_transcript_delta_event.rb +76 -0
  34. data/lib/openai/models/live/instructions_append_event.rb +57 -0
  35. data/lib/openai/models/live/instructions_appended_event.rb +65 -0
  36. data/lib/openai/models/live/live_create_params.rb +57 -0
  37. data/lib/openai/models/live/live_create_response.rb +77 -0
  38. data/lib/openai/models/live/media_session_config.rb +227 -0
  39. data/lib/openai/models/live/media_session_fork_config.rb +75 -0
  40. data/lib/openai/models/live/output_audio_delta_event.rb +58 -0
  41. data/lib/openai/models/live/output_transcript_delta_event.rb +76 -0
  42. data/lib/openai/models/live/response_create_event.rb +33 -0
  43. data/lib/openai/models/live/response_event.rb +67 -0
  44. data/lib/openai/models/live/response_item_create_event.rb +44 -0
  45. data/lib/openai/models/live/responses_delegation_config.rb +332 -0
  46. data/lib/openai/models/live/responses_delegation_update_config.rb +332 -0
  47. data/lib/openai/models/live/server_event.rb +295 -0
  48. data/lib/openai/models/live/server_event_selector.rb +32 -0
  49. data/lib/openai/models/live/session_accept_params.rb +257 -0
  50. data/lib/openai/models/live/session_close_event.rb +33 -0
  51. data/lib/openai/models/live/session_closed_event.rb +113 -0
  52. data/lib/openai/models/live/session_config.rb +236 -0
  53. data/lib/openai/models/live/session_download_recording_params.rb +27 -0
  54. data/lib/openai/models/live/session_fork_params.rb +66 -0
  55. data/lib/openai/models/live/session_fork_response.rb +77 -0
  56. data/lib/openai/models/live/session_hangup_params.rb +22 -0
  57. data/lib/openai/models/live/session_refer_params.rb +34 -0
  58. data/lib/openai/models/live/session_reject_params.rb +32 -0
  59. data/lib/openai/models/live/session_resource.rb +268 -0
  60. data/lib/openai/models/live/session_start_event.rb +46 -0
  61. data/lib/openai/models/live/session_started_event.rb +51 -0
  62. data/lib/openai/models/live/session_update_config.rb +69 -0
  63. data/lib/openai/models/live/session_update_event.rb +46 -0
  64. data/lib/openai/models/live/session_updated_event.rb +51 -0
  65. data/lib/openai/models/live/session_usage.rb +24 -0
  66. data/lib/openai/models/live/session_usage_updated_event.rb +81 -0
  67. data/lib/openai/models/live/thinking_append_event.rb +59 -0
  68. data/lib/openai/models/live/thinking_appended_event.rb +65 -0
  69. data/lib/openai/models/responses/response_input_item.rb +91 -1
  70. data/lib/openai/models/responses/response_item.rb +93 -1
  71. data/lib/openai/models/responses/response_output_item.rb +91 -1
  72. data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +12 -7
  73. data/lib/openai/models/webhooks/live_transport_incoming_webhook_event.rb +137 -0
  74. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +4 -4
  75. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +9 -2
  76. data/lib/openai/models.rb +2 -0
  77. data/lib/openai/resources/live/forks.rb +16 -0
  78. data/lib/openai/resources/live/sessions.rb +180 -0
  79. data/lib/openai/resources/live/sideband.rb +16 -0
  80. data/lib/openai/resources/live.rb +54 -0
  81. data/lib/openai/resources/webhooks.rb +1 -1
  82. data/lib/openai/version.rb +1 -1
  83. data/lib/openai.rb +65 -0
  84. data/rbi/openai/client.rbi +3 -0
  85. data/rbi/openai/models/beta/beta_response_input_item.rbi +109 -0
  86. data/rbi/openai/models/beta/beta_response_item.rbi +105 -0
  87. data/rbi/openai/models/beta/beta_response_output_item.rbi +119 -0
  88. data/rbi/openai/models/conversations/conversation_item.rbi +133 -0
  89. data/rbi/openai/models/live/audio_format.rbi +185 -0
  90. data/rbi/openai/models/live/built_in_voice.rbi +46 -0
  91. data/rbi/openai/models/live/client_config.rbi +54 -0
  92. data/rbi/openai/models/live/client_delegation.rbi +51 -0
  93. data/rbi/openai/models/live/client_event.rbi +41 -0
  94. data/rbi/openai/models/live/commentary_append_event.rbi +88 -0
  95. data/rbi/openai/models/live/commentary_appended_event.rbi +97 -0
  96. data/rbi/openai/models/live/custom_voice.rbi +46 -0
  97. data/rbi/openai/models/live/data_channel_config.rbi +119 -0
  98. data/rbi/openai/models/live/delegation_created_event.rbi +207 -0
  99. data/rbi/openai/models/live/error.rbi +95 -0
  100. data/rbi/openai/models/live/error_event.rbi +87 -0
  101. data/rbi/openai/models/live/fork_client_event.rbi +40 -0
  102. data/rbi/openai/models/live/fork_server_event.rbi +436 -0
  103. data/rbi/openai/models/live/fork_session_config.rbi +234 -0
  104. data/rbi/openai/models/live/fork_session_start_event.rbi +80 -0
  105. data/rbi/openai/models/live/function_tool.rbi +95 -0
  106. data/rbi/openai/models/live/info_event.rbi +92 -0
  107. data/rbi/openai/models/live/initial_item.rbi +661 -0
  108. data/rbi/openai/models/live/input_audio_append_event.rbi +79 -0
  109. data/rbi/openai/models/live/input_audio_mute_event.rbi +62 -0
  110. data/rbi/openai/models/live/input_audio_muted_event.rbi +74 -0
  111. data/rbi/openai/models/live/input_audio_unmute_event.rbi +62 -0
  112. data/rbi/openai/models/live/input_audio_unmuted_event.rbi +74 -0
  113. data/rbi/openai/models/live/input_transcript_delta_event.rbi +115 -0
  114. data/rbi/openai/models/live/instructions_append_event.rbi +86 -0
  115. data/rbi/openai/models/live/instructions_appended_event.rbi +97 -0
  116. data/rbi/openai/models/live/live_create_params.rbi +121 -0
  117. data/rbi/openai/models/live/live_create_response.rbi +160 -0
  118. data/rbi/openai/models/live/media_session_config.rbi +390 -0
  119. data/rbi/openai/models/live/media_session_fork_config.rbi +143 -0
  120. data/rbi/openai/models/live/output_audio_delta_event.rbi +93 -0
  121. data/rbi/openai/models/live/output_transcript_delta_event.rbi +115 -0
  122. data/rbi/openai/models/live/response_create_event.rbi +62 -0
  123. data/rbi/openai/models/live/response_event.rbi +105 -0
  124. data/rbi/openai/models/live/response_item_create_event.rbi +183 -0
  125. data/rbi/openai/models/live/responses_delegation_config.rbi +562 -0
  126. data/rbi/openai/models/live/responses_delegation_update_config.rbi +585 -0
  127. data/rbi/openai/models/live/server_event.rbi +436 -0
  128. data/rbi/openai/models/live/server_event_selector.rbi +64 -0
  129. data/rbi/openai/models/live/session_accept_params.rbi +451 -0
  130. data/rbi/openai/models/live/session_close_event.rbi +62 -0
  131. data/rbi/openai/models/live/session_closed_event.rbi +148 -0
  132. data/rbi/openai/models/live/session_config.rbi +427 -0
  133. data/rbi/openai/models/live/session_download_recording_params.rbi +57 -0
  134. data/rbi/openai/models/live/session_fork_params.rbi +131 -0
  135. data/rbi/openai/models/live/session_fork_response.rbi +160 -0
  136. data/rbi/openai/models/live/session_hangup_params.rbi +53 -0
  137. data/rbi/openai/models/live/session_refer_params.rbi +64 -0
  138. data/rbi/openai/models/live/session_reject_params.rbi +62 -0
  139. data/rbi/openai/models/live/session_resource.rbi +461 -0
  140. data/rbi/openai/models/live/session_start_event.rbi +78 -0
  141. data/rbi/openai/models/live/session_started_event.rbi +86 -0
  142. data/rbi/openai/models/live/session_update_config.rbi +134 -0
  143. data/rbi/openai/models/live/session_update_event.rbi +78 -0
  144. data/rbi/openai/models/live/session_updated_event.rbi +86 -0
  145. data/rbi/openai/models/live/session_usage.rbi +53 -0
  146. data/rbi/openai/models/live/session_usage_updated_event.rbi +148 -0
  147. data/rbi/openai/models/live/thinking_append_event.rbi +88 -0
  148. data/rbi/openai/models/live/thinking_appended_event.rbi +97 -0
  149. data/rbi/openai/models/responses/response_input_item.rbi +113 -0
  150. data/rbi/openai/models/responses/response_item.rbi +105 -0
  151. data/rbi/openai/models/responses/response_output_item.rbi +125 -0
  152. data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +11 -7
  153. data/rbi/openai/models/webhooks/live_transport_incoming_webhook_event.rbi +226 -0
  154. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +4 -4
  155. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -0
  156. data/rbi/openai/models.rbi +2 -0
  157. data/rbi/openai/resources/live/forks.rbi +19 -0
  158. data/rbi/openai/resources/live/sessions.rbi +110 -0
  159. data/rbi/openai/resources/live/sideband.rbi +19 -0
  160. data/rbi/openai/resources/live.rbi +43 -0
  161. data/rbi/openai/resources/responses.rbi +75 -38
  162. data/rbi/openai/resources/webhooks.rbi +1 -0
  163. data/sig/openai/client.rbs +2 -0
  164. data/sig/openai/models/beta/beta_response_input_item.rbs +56 -0
  165. data/sig/openai/models/beta/beta_response_item.rbs +56 -0
  166. data/sig/openai/models/beta/beta_response_output_item.rbs +56 -0
  167. data/sig/openai/models/conversations/conversation_item.rbs +56 -0
  168. data/sig/openai/models/live/audio_format.rbs +73 -0
  169. data/sig/openai/models/live/built_in_voice.rbs +58 -0
  170. data/sig/openai/models/live/client_config.rbs +15 -0
  171. data/sig/openai/models/live/client_delegation.rbs +15 -0
  172. data/sig/openai/models/live/client_event.rbs +24 -0
  173. data/sig/openai/models/live/commentary_append_event.rbs +37 -0
  174. data/sig/openai/models/live/commentary_appended_event.rbs +44 -0
  175. data/sig/openai/models/live/custom_voice.rbs +15 -0
  176. data/sig/openai/models/live/data_channel_config.rbs +56 -0
  177. data/sig/openai/models/live/delegation_created_event.rbs +89 -0
  178. data/sig/openai/models/live/error.rbs +46 -0
  179. data/sig/openai/models/live/error_event.rbs +39 -0
  180. data/sig/openai/models/live/fork_client_event.rbs +24 -0
  181. data/sig/openai/models/live/fork_server_event.rbs +212 -0
  182. data/sig/openai/models/live/fork_session_config.rbs +89 -0
  183. data/sig/openai/models/live/fork_session_start_event.rbs +32 -0
  184. data/sig/openai/models/live/function_tool.rbs +42 -0
  185. data/sig/openai/models/live/info_event.rbs +44 -0
  186. data/sig/openai/models/live/initial_item.rbs +332 -0
  187. data/sig/openai/models/live/input_audio_append_event.rbs +32 -0
  188. data/sig/openai/models/live/input_audio_mute_event.rbs +24 -0
  189. data/sig/openai/models/live/input_audio_muted_event.rbs +34 -0
  190. data/sig/openai/models/live/input_audio_unmute_event.rbs +24 -0
  191. data/sig/openai/models/live/input_audio_unmuted_event.rbs +34 -0
  192. data/sig/openai/models/live/input_transcript_delta_event.rbs +49 -0
  193. data/sig/openai/models/live/instructions_append_event.rbs +37 -0
  194. data/sig/openai/models/live/instructions_appended_event.rbs +44 -0
  195. data/sig/openai/models/live/live_create_params.rbs +45 -0
  196. data/sig/openai/models/live/live_create_response.rbs +49 -0
  197. data/sig/openai/models/live/media_session_config.rbs +157 -0
  198. data/sig/openai/models/live/media_session_fork_config.rbs +66 -0
  199. data/sig/openai/models/live/output_audio_delta_event.rbs +41 -0
  200. data/sig/openai/models/live/output_transcript_delta_event.rbs +49 -0
  201. data/sig/openai/models/live/response_create_event.rbs +18 -0
  202. data/sig/openai/models/live/response_event.rbs +44 -0
  203. data/sig/openai/models/live/response_item_create_event.rbs +32 -0
  204. data/sig/openai/models/live/responses_delegation_config.rbs +244 -0
  205. data/sig/openai/models/live/responses_delegation_update_config.rbs +246 -0
  206. data/sig/openai/models/live/server_event.rbs +212 -0
  207. data/sig/openai/models/live/server_event_selector.rbs +19 -0
  208. data/sig/openai/models/live/session_accept_params.rbs +185 -0
  209. data/sig/openai/models/live/session_close_event.rbs +17 -0
  210. data/sig/openai/models/live/session_closed_event.rbs +68 -0
  211. data/sig/openai/models/live/session_config.rbs +168 -0
  212. data/sig/openai/models/live/session_download_recording_params.rbs +25 -0
  213. data/sig/openai/models/live/session_fork_params.rbs +54 -0
  214. data/sig/openai/models/live/session_fork_response.rbs +49 -0
  215. data/sig/openai/models/live/session_hangup_params.rbs +25 -0
  216. data/sig/openai/models/live/session_refer_params.rbs +33 -0
  217. data/sig/openai/models/live/session_reject_params.rbs +33 -0
  218. data/sig/openai/models/live/session_resource.rbs +183 -0
  219. data/sig/openai/models/live/session_start_event.rbs +32 -0
  220. data/sig/openai/models/live/session_started_event.rbs +39 -0
  221. data/sig/openai/models/live/session_update_config.rbs +56 -0
  222. data/sig/openai/models/live/session_update_event.rbs +32 -0
  223. data/sig/openai/models/live/session_updated_event.rbs +39 -0
  224. data/sig/openai/models/live/session_usage.rbs +15 -0
  225. data/sig/openai/models/live/session_usage_updated_event.rbs +58 -0
  226. data/sig/openai/models/live/thinking_append_event.rbs +37 -0
  227. data/sig/openai/models/live/thinking_appended_event.rbs +44 -0
  228. data/sig/openai/models/responses/response_input_item.rbs +56 -0
  229. data/sig/openai/models/responses/response_item.rbs +56 -0
  230. data/sig/openai/models/responses/response_output_item.rbs +56 -0
  231. data/sig/openai/models/webhooks/live_transport_incoming_webhook_event.rbs +95 -0
  232. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
  233. data/sig/openai/models.rbs +2 -0
  234. data/sig/openai/resources/live/forks.rbs +9 -0
  235. data/sig/openai/resources/live/sessions.rbs +44 -0
  236. data/sig/openai/resources/live/sideband.rbs +9 -0
  237. data/sig/openai/resources/live.rbs +19 -0
  238. data/sig/openai/resources/webhooks.rbs +1 -0
  239. metadata +196 -1
@@ -956,11 +956,27 @@ module OpenAI
956
956
  sig { returns(Symbol) }
957
957
  attr_accessor :type
958
958
 
959
+ # The action used for image generation.
960
+ sig { returns(T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action::OrSymbol)) }
961
+ attr_accessor :action
962
+
963
+ # The background setting used for generation.
964
+ sig { returns(T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background::OrSymbol)) }
965
+ attr_accessor :background
966
+
967
+ # The output format used for generation.
968
+ sig { returns(T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat::OrSymbol)) }
969
+ attr_accessor :output_format
970
+
959
971
  # The quality of the image generated by the image generation tool call. One of
960
972
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
961
973
  sig { returns(T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Quality::OrSymbol)) }
962
974
  attr_accessor :quality
963
975
 
976
+ # The prompt that was used after any model prompt rewriting.
977
+ sig { returns(T.nilable(String)) }
978
+ attr_accessor :revised_prompt
979
+
964
980
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
965
981
  sig {
966
982
  returns(T.nilable(T.any(String, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Size::OrSymbol)))
@@ -977,8 +993,18 @@ module OpenAI
977
993
 
978
994
  status: OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Status::OrSymbol,
979
995
 
996
+ action: T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action::OrSymbol),
997
+
998
+ background: T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background::OrSymbol),
999
+
1000
+ output_format: T.nilable(
1001
+ OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat::OrSymbol
1002
+ ),
1003
+
980
1004
  quality: T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Quality::OrSymbol),
981
1005
 
1006
+ revised_prompt: T.nilable(String),
1007
+
982
1008
  size: T.nilable(T.any(String, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Size::OrSymbol)),
983
1009
 
984
1010
  type: Symbol
@@ -996,10 +1022,22 @@ module OpenAI
996
1022
  # The status of the image generation call.
997
1023
  status:,
998
1024
 
1025
+ # The action used for image generation.
1026
+ action: nil,
1027
+
1028
+ # The background setting used for generation.
1029
+ background: nil,
1030
+
1031
+ # The output format used for generation.
1032
+ output_format: nil,
1033
+
999
1034
  # The quality of the image generated by the image generation tool call. One of
1000
1035
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
1001
1036
  quality: nil,
1002
1037
 
1038
+ # The prompt that was used after any model prompt rewriting.
1039
+ revised_prompt: nil,
1040
+
1003
1041
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
1004
1042
  size: nil,
1005
1043
 
@@ -1016,7 +1054,13 @@ module OpenAI
1016
1054
  result: T.nilable(String),
1017
1055
  status: OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Status::OrSymbol,
1018
1056
  type: Symbol,
1057
+ action: T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action::OrSymbol),
1058
+ background: T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background::OrSymbol),
1059
+ output_format: T.nilable(
1060
+ OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat::OrSymbol
1061
+ ),
1019
1062
  quality: T.nilable(OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Quality::OrSymbol),
1063
+ revised_prompt: T.nilable(String),
1020
1064
  size: T.nilable(
1021
1065
  T.any(String, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Size::OrSymbol)
1022
1066
  )
@@ -1058,6 +1102,75 @@ module OpenAI
1058
1102
  end
1059
1103
  end
1060
1104
 
1105
+ # The action used for image generation.
1106
+ module Action
1107
+ extend OpenAI::Internal::Type::Enum
1108
+
1109
+ TaggedSymbol = T.type_alias {
1110
+ T.all(Symbol, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action)
1111
+ }
1112
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1113
+
1114
+ GENERATE = T.let(:generate, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action::TaggedSymbol)
1115
+ EDIT = T.let(:edit, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action::TaggedSymbol)
1116
+ AUTO = T.let(:auto, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action::TaggedSymbol)
1117
+
1118
+ sig {
1119
+ override.returns(
1120
+ T::Array[OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Action::TaggedSymbol]
1121
+ )
1122
+ }
1123
+ def self.values
1124
+ end
1125
+ end
1126
+
1127
+ # The background setting used for generation.
1128
+ module Background
1129
+ extend OpenAI::Internal::Type::Enum
1130
+
1131
+ TaggedSymbol = T.type_alias {
1132
+ T.all(Symbol, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background)
1133
+ }
1134
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1135
+
1136
+ TRANSPARENT = T.let(
1137
+ :transparent,
1138
+ OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background::TaggedSymbol
1139
+ )
1140
+ OPAQUE = T.let(:opaque, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background::TaggedSymbol)
1141
+ AUTO = T.let(:auto, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background::TaggedSymbol)
1142
+
1143
+ sig {
1144
+ override.returns(
1145
+ T::Array[OpenAI::Responses::ResponseInputItem::ImageGenerationCall::Background::TaggedSymbol]
1146
+ )
1147
+ }
1148
+ def self.values
1149
+ end
1150
+ end
1151
+
1152
+ # The output format used for generation.
1153
+ module OutputFormat
1154
+ extend OpenAI::Internal::Type::Enum
1155
+
1156
+ TaggedSymbol = T.type_alias {
1157
+ T.all(Symbol, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat)
1158
+ }
1159
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1160
+
1161
+ PNG = T.let(:png, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
1162
+ WEBP = T.let(:webp, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
1163
+ JPEG = T.let(:jpeg, OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
1164
+
1165
+ sig {
1166
+ override.returns(
1167
+ T::Array[OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OutputFormat::TaggedSymbol]
1168
+ )
1169
+ }
1170
+ def self.values
1171
+ end
1172
+ end
1173
+
1061
1174
  # The quality of the image generated by the image generation tool call. One of
1062
1175
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
1063
1176
  module Quality
@@ -342,11 +342,27 @@ module OpenAI
342
342
  sig { returns(Symbol) }
343
343
  attr_accessor :type
344
344
 
345
+ # The action used for image generation.
346
+ sig { returns(T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Action::TaggedSymbol)) }
347
+ attr_accessor :action
348
+
349
+ # The background setting used for generation.
350
+ sig { returns(T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Background::TaggedSymbol)) }
351
+ attr_accessor :background
352
+
353
+ # The output format used for generation.
354
+ sig { returns(T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat::TaggedSymbol)) }
355
+ attr_accessor :output_format
356
+
345
357
  # The quality of the image generated by the image generation tool call. One of
346
358
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
347
359
  sig { returns(T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Quality::TaggedSymbol)) }
348
360
  attr_accessor :quality
349
361
 
362
+ # The prompt that was used after any model prompt rewriting.
363
+ sig { returns(T.nilable(String)) }
364
+ attr_accessor :revised_prompt
365
+
350
366
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
351
367
  sig { returns(T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Size::Variants)) }
352
368
  attr_accessor :size
@@ -361,8 +377,16 @@ module OpenAI
361
377
 
362
378
  status: OpenAI::Responses::ResponseItem::ImageGenerationCall::Status::OrSymbol,
363
379
 
380
+ action: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Action::OrSymbol),
381
+
382
+ background: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Background::OrSymbol),
383
+
384
+ output_format: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat::OrSymbol),
385
+
364
386
  quality: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Quality::OrSymbol),
365
387
 
388
+ revised_prompt: T.nilable(String),
389
+
366
390
  size: T.nilable(T.any(String, OpenAI::Responses::ResponseItem::ImageGenerationCall::Size::OrSymbol)),
367
391
 
368
392
  type: Symbol
@@ -380,10 +404,22 @@ module OpenAI
380
404
  # The status of the image generation call.
381
405
  status:,
382
406
 
407
+ # The action used for image generation.
408
+ action: nil,
409
+
410
+ # The background setting used for generation.
411
+ background: nil,
412
+
413
+ # The output format used for generation.
414
+ output_format: nil,
415
+
383
416
  # The quality of the image generated by the image generation tool call. One of
384
417
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
385
418
  quality: nil,
386
419
 
420
+ # The prompt that was used after any model prompt rewriting.
421
+ revised_prompt: nil,
422
+
387
423
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
388
424
  size: nil,
389
425
 
@@ -400,7 +436,13 @@ module OpenAI
400
436
  result: T.nilable(String),
401
437
  status: OpenAI::Responses::ResponseItem::ImageGenerationCall::Status::TaggedSymbol,
402
438
  type: Symbol,
439
+ action: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Action::TaggedSymbol),
440
+ background: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Background::TaggedSymbol),
441
+ output_format: T.nilable(
442
+ OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat::TaggedSymbol
443
+ ),
403
444
  quality: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Quality::TaggedSymbol),
445
+ revised_prompt: T.nilable(String),
404
446
  size: T.nilable(OpenAI::Responses::ResponseItem::ImageGenerationCall::Size::Variants)
405
447
  }
406
448
  )
@@ -430,6 +472,69 @@ module OpenAI
430
472
  end
431
473
  end
432
474
 
475
+ # The action used for image generation.
476
+ module Action
477
+ extend OpenAI::Internal::Type::Enum
478
+
479
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Responses::ResponseItem::ImageGenerationCall::Action) }
480
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
481
+
482
+ GENERATE = T.let(:generate, OpenAI::Responses::ResponseItem::ImageGenerationCall::Action::TaggedSymbol)
483
+ EDIT = T.let(:edit, OpenAI::Responses::ResponseItem::ImageGenerationCall::Action::TaggedSymbol)
484
+ AUTO = T.let(:auto, OpenAI::Responses::ResponseItem::ImageGenerationCall::Action::TaggedSymbol)
485
+
486
+ sig {
487
+ override.returns(T::Array[OpenAI::Responses::ResponseItem::ImageGenerationCall::Action::TaggedSymbol])
488
+ }
489
+ def self.values
490
+ end
491
+ end
492
+
493
+ # The background setting used for generation.
494
+ module Background
495
+ extend OpenAI::Internal::Type::Enum
496
+
497
+ TaggedSymbol = T.type_alias {
498
+ T.all(Symbol, OpenAI::Responses::ResponseItem::ImageGenerationCall::Background)
499
+ }
500
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
501
+
502
+ TRANSPARENT = T.let(
503
+ :transparent,
504
+ OpenAI::Responses::ResponseItem::ImageGenerationCall::Background::TaggedSymbol
505
+ )
506
+ OPAQUE = T.let(:opaque, OpenAI::Responses::ResponseItem::ImageGenerationCall::Background::TaggedSymbol)
507
+ AUTO = T.let(:auto, OpenAI::Responses::ResponseItem::ImageGenerationCall::Background::TaggedSymbol)
508
+
509
+ sig {
510
+ override.returns(T::Array[OpenAI::Responses::ResponseItem::ImageGenerationCall::Background::TaggedSymbol])
511
+ }
512
+ def self.values
513
+ end
514
+ end
515
+
516
+ # The output format used for generation.
517
+ module OutputFormat
518
+ extend OpenAI::Internal::Type::Enum
519
+
520
+ TaggedSymbol = T.type_alias {
521
+ T.all(Symbol, OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat)
522
+ }
523
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
524
+
525
+ PNG = T.let(:png, OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
526
+ WEBP = T.let(:webp, OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
527
+ JPEG = T.let(:jpeg, OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
528
+
529
+ sig {
530
+ override.returns(
531
+ T::Array[OpenAI::Responses::ResponseItem::ImageGenerationCall::OutputFormat::TaggedSymbol]
532
+ )
533
+ }
534
+ def self.values
535
+ end
536
+ end
537
+
433
538
  # The quality of the image generated by the image generation tool call. One of
434
539
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
435
540
  module Quality
@@ -347,11 +347,31 @@ module OpenAI
347
347
  sig { returns(Symbol) }
348
348
  attr_accessor :type
349
349
 
350
+ # The action used for image generation.
351
+ sig { returns(T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action::TaggedSymbol)) }
352
+ attr_accessor :action
353
+
354
+ # The background setting used for generation.
355
+ sig {
356
+ returns(T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background::TaggedSymbol))
357
+ }
358
+ attr_accessor :background
359
+
360
+ # The output format used for generation.
361
+ sig {
362
+ returns(T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat::TaggedSymbol))
363
+ }
364
+ attr_accessor :output_format
365
+
350
366
  # The quality of the image generated by the image generation tool call. One of
351
367
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
352
368
  sig { returns(T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Quality::TaggedSymbol)) }
353
369
  attr_accessor :quality
354
370
 
371
+ # The prompt that was used after any model prompt rewriting.
372
+ sig { returns(T.nilable(String)) }
373
+ attr_accessor :revised_prompt
374
+
355
375
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
356
376
  sig { returns(T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Size::Variants)) }
357
377
  attr_accessor :size
@@ -366,8 +386,18 @@ module OpenAI
366
386
 
367
387
  status: OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Status::OrSymbol,
368
388
 
389
+ action: T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action::OrSymbol),
390
+
391
+ background: T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background::OrSymbol),
392
+
393
+ output_format: T.nilable(
394
+ OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat::OrSymbol
395
+ ),
396
+
369
397
  quality: T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Quality::OrSymbol),
370
398
 
399
+ revised_prompt: T.nilable(String),
400
+
371
401
  size: T.nilable(T.any(String, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Size::OrSymbol)),
372
402
 
373
403
  type: Symbol
@@ -385,10 +415,22 @@ module OpenAI
385
415
  # The status of the image generation call.
386
416
  status:,
387
417
 
418
+ # The action used for image generation.
419
+ action: nil,
420
+
421
+ # The background setting used for generation.
422
+ background: nil,
423
+
424
+ # The output format used for generation.
425
+ output_format: nil,
426
+
388
427
  # The quality of the image generated by the image generation tool call. One of
389
428
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
390
429
  quality: nil,
391
430
 
431
+ # The prompt that was used after any model prompt rewriting.
432
+ revised_prompt: nil,
433
+
392
434
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
393
435
  size: nil,
394
436
 
@@ -405,7 +447,15 @@ module OpenAI
405
447
  result: T.nilable(String),
406
448
  status: OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Status::TaggedSymbol,
407
449
  type: Symbol,
450
+ action: T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action::TaggedSymbol),
451
+ background: T.nilable(
452
+ OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background::TaggedSymbol
453
+ ),
454
+ output_format: T.nilable(
455
+ OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat::TaggedSymbol
456
+ ),
408
457
  quality: T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Quality::TaggedSymbol),
458
+ revised_prompt: T.nilable(String),
409
459
  size: T.nilable(OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Size::Variants)
410
460
  }
411
461
  )
@@ -445,6 +495,81 @@ module OpenAI
445
495
  end
446
496
  end
447
497
 
498
+ # The action used for image generation.
499
+ module Action
500
+ extend OpenAI::Internal::Type::Enum
501
+
502
+ TaggedSymbol = T.type_alias {
503
+ T.all(Symbol, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action)
504
+ }
505
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
506
+
507
+ GENERATE = T.let(
508
+ :generate,
509
+ OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action::TaggedSymbol
510
+ )
511
+ EDIT = T.let(:edit, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action::TaggedSymbol)
512
+ AUTO = T.let(:auto, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action::TaggedSymbol)
513
+
514
+ sig {
515
+ override.returns(
516
+ T::Array[OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Action::TaggedSymbol]
517
+ )
518
+ }
519
+ def self.values
520
+ end
521
+ end
522
+
523
+ # The background setting used for generation.
524
+ module Background
525
+ extend OpenAI::Internal::Type::Enum
526
+
527
+ TaggedSymbol = T.type_alias {
528
+ T.all(Symbol, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background)
529
+ }
530
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
531
+
532
+ TRANSPARENT = T.let(
533
+ :transparent,
534
+ OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background::TaggedSymbol
535
+ )
536
+ OPAQUE = T.let(
537
+ :opaque,
538
+ OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background::TaggedSymbol
539
+ )
540
+ AUTO = T.let(:auto, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background::TaggedSymbol)
541
+
542
+ sig {
543
+ override.returns(
544
+ T::Array[OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::Background::TaggedSymbol]
545
+ )
546
+ }
547
+ def self.values
548
+ end
549
+ end
550
+
551
+ # The output format used for generation.
552
+ module OutputFormat
553
+ extend OpenAI::Internal::Type::Enum
554
+
555
+ TaggedSymbol = T.type_alias {
556
+ T.all(Symbol, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat)
557
+ }
558
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
559
+
560
+ PNG = T.let(:png, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
561
+ WEBP = T.let(:webp, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
562
+ JPEG = T.let(:jpeg, OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat::TaggedSymbol)
563
+
564
+ sig {
565
+ override.returns(
566
+ T::Array[OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OutputFormat::TaggedSymbol]
567
+ )
568
+ }
569
+ def self.values
570
+ end
571
+ end
572
+
448
573
  # The quality of the image generated by the image generation tool call. One of
449
574
  # `low`, `medium`, `high`, `xhigh`, `max`, or `auto`.
450
575
  module Quality
@@ -40,9 +40,11 @@ module OpenAI
40
40
  sig { params(object: OpenAI::Webhooks::LiveCallIncomingWebhookEvent::Object::OrSymbol).void }
41
41
  attr_writer :object
42
42
 
43
- # Sent when an incoming API SIP session is available for Live acceptance. The same
44
- # pending session can also emit `realtime.call.incoming`; the first successful
45
- # Realtime or Live accept endpoint selects the runtime surface.
43
+ # Deprecated: use `live.transport.incoming`. Retained for existing subscriptions
44
+ # during migration; new subscriptions to this event are not allowed. Sent when an
45
+ # incoming API SIP session is available for Live acceptance. The same pending
46
+ # session can also emit `realtime.call.incoming`; the first successful Realtime or
47
+ # Live accept endpoint selects the runtime surface.
46
48
  sig do
47
49
  params(
48
50
 
@@ -100,8 +102,9 @@ module OpenAI
100
102
  )
101
103
  end
102
104
 
103
- # The `live_...` ID of the pending SIP session. Forward this value unchanged when
104
- # accepting or rejecting the call through the Live API.
105
+ # The `live_...` ID of the pending SIP session. Pass this value unchanged to Live
106
+ # call controls and sideband connections. The corresponding
107
+ # `realtime.call.incoming` event uses a separate `rtc_...` call ID.
105
108
  sig { returns(String) }
106
109
  attr_accessor :session_id
107
110
 
@@ -123,8 +126,9 @@ module OpenAI
123
126
  end
124
127
  def self.new(
125
128
 
126
- # The `live_...` ID of the pending SIP session. Forward this value unchanged when
127
- # accepting or rejecting the call through the Live API.
129
+ # The `live_...` ID of the pending SIP session. Pass this value unchanged to Live
130
+ # call controls and sideband connections. The corresponding
131
+ # `realtime.call.incoming` event uses a separate `rtc_...` call ID.
128
132
  session_id:,
129
133
 
130
134
  # Headers from the SIP INVITE, excluding SIP authorization headers. Retained