openai 0.123.0 → 0.124.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 (227) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/admin/organization/audit_log_list_response.rb +10 -1
  5. data/lib/openai/models/admin/organization/external_key.rb +25 -1
  6. data/lib/openai/models/admin/organization/external_key_create_params.rb +78 -3
  7. data/lib/openai/models/beta/agent_output_command_execution_output_delta_event.rb +10 -1
  8. data/lib/openai/models/beta/agent_session.rb +128 -4
  9. data/lib/openai/models/beta/agent_session_created_event.rb +10 -1
  10. data/lib/openai/models/beta/agent_session_environment_connected_event.rb +10 -1
  11. data/lib/openai/models/beta/agent_session_environment_disconnected_event.rb +10 -1
  12. data/lib/openai/models/beta/agent_session_environment_expired_event.rb +10 -1
  13. data/lib/openai/models/beta/agent_session_environment_failed_event.rb +10 -1
  14. data/lib/openai/models/beta/agent_session_environment_pending_event.rb +10 -1
  15. data/lib/openai/models/beta/agent_session_environment_ready_event.rb +10 -1
  16. data/lib/openai/models/beta/agent_session_environment_reset_event.rb +10 -1
  17. data/lib/openai/models/beta/agent_session_environment_suspended_event.rb +10 -1
  18. data/lib/openai/models/beta/agent_session_error_event.rb +10 -1
  19. data/lib/openai/models/beta/agent_session_failed_event.rb +10 -1
  20. data/lib/openai/models/beta/agent_session_idle_event.rb +10 -1
  21. data/lib/openai/models/beta/agent_session_in_progress_event.rb +10 -1
  22. data/lib/openai/models/beta/agent_session_input_param.rb +87 -1
  23. data/lib/openai/models/beta/agent_session_requires_action_event.rb +10 -1
  24. data/lib/openai/models/beta/agent_session_subagent_active_event.rb +10 -1
  25. data/lib/openai/models/beta/agent_session_subagent_closed_event.rb +10 -1
  26. data/lib/openai/models/beta/agent_session_subagent_created_event.rb +10 -1
  27. data/lib/openai/models/beta/agent_session_turn_cancelled_event.rb +10 -1
  28. data/lib/openai/models/beta/agent_session_turn_completed_event.rb +10 -1
  29. data/lib/openai/models/beta/agent_session_turn_content_part_added_event.rb +10 -1
  30. data/lib/openai/models/beta/agent_session_turn_content_part_done_event.rb +10 -1
  31. data/lib/openai/models/beta/agent_session_turn_created_event.rb +10 -1
  32. data/lib/openai/models/beta/agent_session_turn_failed_event.rb +10 -1
  33. data/lib/openai/models/beta/agent_session_turn_in_progress_event.rb +10 -1
  34. data/lib/openai/models/beta/agent_session_turn_item_added_event.rb +10 -1
  35. data/lib/openai/models/beta/agent_session_turn_item_done_event.rb +10 -1
  36. data/lib/openai/models/beta/agent_session_turn_output_text_delta_event.rb +10 -1
  37. data/lib/openai/models/beta/agent_session_turn_output_text_done_event.rb +10 -1
  38. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rb +10 -1
  39. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rb +10 -1
  40. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rb +10 -1
  41. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rb +10 -1
  42. data/lib/openai/models/beta/agents/session_create_params.rb +69 -1
  43. data/lib/openai/models/beta/agents/session_update_params.rb +44 -1
  44. data/lib/openai/models/beta/agents/sessions/event_create_params.rb +2 -2
  45. data/lib/openai/models/beta/agents/sessions/event_stream_params.rb +13 -1
  46. data/lib/openai/models/beta/agents/sessions/turn.rb +41 -1
  47. data/lib/openai/models/beta/beta_response.rb +9 -3
  48. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +6 -3
  49. data/lib/openai/models/beta/beta_responses_client_event.rb +9 -3
  50. data/lib/openai/models/beta/beta_tool.rb +6 -3
  51. data/lib/openai/models/beta/response_compact_params.rb +2 -0
  52. data/lib/openai/models/beta/response_create_params.rb +9 -3
  53. data/lib/openai/models/beta/responses/input_token_count_params.rb +27 -15
  54. data/lib/openai/models/content_provenance_check_create_params.rb +2 -0
  55. data/lib/openai/models/image_edit_params.rb +84 -5
  56. data/lib/openai/models/image_generate_params.rb +4 -4
  57. data/lib/openai/models/images_response.rb +9 -12
  58. data/lib/openai/models/live/media_session_config.rb +12 -1
  59. data/lib/openai/models/live/session_accept_params.rb +12 -1
  60. data/lib/openai/models/responses/input_token_count_params.rb +27 -15
  61. data/lib/openai/models/responses/response.rb +9 -3
  62. data/lib/openai/models/responses/response_compact_params.rb +2 -0
  63. data/lib/openai/models/responses/response_create_params.rb +9 -3
  64. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +6 -3
  65. data/lib/openai/models/responses/responses_client_event.rb +9 -3
  66. data/lib/openai/models/responses/tool.rb +6 -3
  67. data/lib/openai/models/video_create_error.rb +6 -4
  68. data/lib/openai/models/webhooks/agent_session_action_required_webhook_event.rb +1 -0
  69. data/lib/openai/models/webhooks/live_transport_connected_webhook_event.rb +74 -0
  70. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +4 -1
  71. data/lib/openai/resources/admin/organization/external_keys.rb +1 -1
  72. data/lib/openai/resources/beta/agents/sessions/events.rb +10 -3
  73. data/lib/openai/resources/beta/agents/sessions.rb +24 -5
  74. data/lib/openai/resources/beta/responses/input_tokens.rb +9 -6
  75. data/lib/openai/resources/beta/responses.rb +6 -2
  76. data/lib/openai/resources/content_provenance_checks.rb +1 -0
  77. data/lib/openai/resources/images.rb +20 -6
  78. data/lib/openai/resources/responses/input_tokens.rb +9 -5
  79. data/lib/openai/resources/responses.rb +6 -2
  80. data/lib/openai/resources/webhooks.rb +1 -1
  81. data/lib/openai/version.rb +1 -1
  82. data/lib/openai.rb +1 -0
  83. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +13 -1
  84. data/rbi/openai/models/admin/organization/external_key.rbi +44 -0
  85. data/rbi/openai/models/admin/organization/external_key_create_params.rbi +137 -4
  86. data/rbi/openai/models/beta/agent_output_command_execution_output_delta_event.rbi +14 -1
  87. data/rbi/openai/models/beta/agent_session.rbi +207 -0
  88. data/rbi/openai/models/beta/agent_session_created_event.rbi +13 -1
  89. data/rbi/openai/models/beta/agent_session_environment_connected_event.rbi +14 -1
  90. data/rbi/openai/models/beta/agent_session_environment_disconnected_event.rbi +14 -1
  91. data/rbi/openai/models/beta/agent_session_environment_expired_event.rbi +14 -1
  92. data/rbi/openai/models/beta/agent_session_environment_failed_event.rbi +14 -1
  93. data/rbi/openai/models/beta/agent_session_environment_pending_event.rbi +14 -1
  94. data/rbi/openai/models/beta/agent_session_environment_ready_event.rbi +14 -1
  95. data/rbi/openai/models/beta/agent_session_environment_reset_event.rbi +14 -1
  96. data/rbi/openai/models/beta/agent_session_environment_suspended_event.rbi +14 -1
  97. data/rbi/openai/models/beta/agent_session_error_event.rbi +13 -1
  98. data/rbi/openai/models/beta/agent_session_failed_event.rbi +13 -1
  99. data/rbi/openai/models/beta/agent_session_idle_event.rbi +13 -1
  100. data/rbi/openai/models/beta/agent_session_in_progress_event.rbi +13 -1
  101. data/rbi/openai/models/beta/agent_session_input_param.rbi +159 -0
  102. data/rbi/openai/models/beta/agent_session_requires_action_event.rbi +13 -1
  103. data/rbi/openai/models/beta/agent_session_subagent_active_event.rbi +13 -1
  104. data/rbi/openai/models/beta/agent_session_subagent_closed_event.rbi +13 -1
  105. data/rbi/openai/models/beta/agent_session_subagent_created_event.rbi +13 -1
  106. data/rbi/openai/models/beta/agent_session_turn_cancelled_event.rbi +14 -1
  107. data/rbi/openai/models/beta/agent_session_turn_completed_event.rbi +14 -1
  108. data/rbi/openai/models/beta/agent_session_turn_content_part_added_event.rbi +14 -1
  109. data/rbi/openai/models/beta/agent_session_turn_content_part_done_event.rbi +14 -1
  110. data/rbi/openai/models/beta/agent_session_turn_created_event.rbi +14 -1
  111. data/rbi/openai/models/beta/agent_session_turn_failed_event.rbi +14 -1
  112. data/rbi/openai/models/beta/agent_session_turn_in_progress_event.rbi +14 -1
  113. data/rbi/openai/models/beta/agent_session_turn_item_added_event.rbi +14 -1
  114. data/rbi/openai/models/beta/agent_session_turn_item_done_event.rbi +14 -1
  115. data/rbi/openai/models/beta/agent_session_turn_output_text_delta_event.rbi +14 -1
  116. data/rbi/openai/models/beta/agent_session_turn_output_text_done_event.rbi +14 -1
  117. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rbi +14 -1
  118. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rbi +14 -1
  119. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rbi +14 -1
  120. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rbi +14 -1
  121. data/rbi/openai/models/beta/agents/session_create_params.rbi +138 -0
  122. data/rbi/openai/models/beta/agents/session_update_params.rbi +82 -0
  123. data/rbi/openai/models/beta/agents/sessions/event_create_params.rbi +3 -0
  124. data/rbi/openai/models/beta/agents/sessions/event_stream_params.rbi +15 -1
  125. data/rbi/openai/models/beta/agents/sessions/turn.rbi +74 -1
  126. data/rbi/openai/models/beta/beta_response.rbi +9 -3
  127. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +6 -3
  128. data/rbi/openai/models/beta/beta_responses_client_event.rbi +9 -3
  129. data/rbi/openai/models/beta/beta_tool.rbi +6 -3
  130. data/rbi/openai/models/beta/response_create_params.rbi +9 -3
  131. data/rbi/openai/models/beta/responses/input_token_count_params.rbi +27 -15
  132. data/rbi/openai/models/content_provenance_check_create_params.rbi +2 -0
  133. data/rbi/openai/models/image_edit_params.rbi +143 -4
  134. data/rbi/openai/models/image_generate_params.rbi +4 -4
  135. data/rbi/openai/models/images_response.rbi +9 -12
  136. data/rbi/openai/models/live/media_session_config.rbi +12 -0
  137. data/rbi/openai/models/live/session_accept_params.rbi +12 -0
  138. data/rbi/openai/models/responses/input_token_count_params.rbi +27 -15
  139. data/rbi/openai/models/responses/response.rbi +9 -3
  140. data/rbi/openai/models/responses/response_create_params.rbi +9 -3
  141. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +6 -3
  142. data/rbi/openai/models/responses/responses_client_event.rbi +9 -3
  143. data/rbi/openai/models/responses/tool.rbi +6 -3
  144. data/rbi/openai/models/video_create_error.rbi +6 -4
  145. data/rbi/openai/models/webhooks/agent_session_action_required_webhook_event.rbi +4 -0
  146. data/rbi/openai/models/webhooks/live_transport_connected_webhook_event.rbi +135 -0
  147. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -0
  148. data/rbi/openai/resources/admin/organization/external_keys.rbi +2 -1
  149. data/rbi/openai/resources/beta/agents/sessions/events.rbi +9 -2
  150. data/rbi/openai/resources/beta/agents/sessions.rbi +21 -2
  151. data/rbi/openai/resources/beta/responses/input_tokens.rbi +9 -6
  152. data/rbi/openai/resources/beta/responses.rbi +6 -2
  153. data/rbi/openai/resources/content_provenance_checks.rbi +1 -0
  154. data/rbi/openai/resources/images.rbi +18 -4
  155. data/rbi/openai/resources/responses/input_tokens.rbi +9 -5
  156. data/rbi/openai/resources/responses.rbi +6 -2
  157. data/rbi/openai/resources/webhooks.rbi +1 -0
  158. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +18 -3
  159. data/sig/openai/models/admin/organization/external_key.rbs +28 -0
  160. data/sig/openai/models/admin/organization/external_key_create_params.rbs +108 -0
  161. data/sig/openai/models/beta/agent_output_command_execution_output_delta_event.rbs +13 -2
  162. data/sig/openai/models/beta/agent_session.rbs +126 -1
  163. data/sig/openai/models/beta/agent_session_created_event.rbs +13 -2
  164. data/sig/openai/models/beta/agent_session_environment_connected_event.rbs +13 -2
  165. data/sig/openai/models/beta/agent_session_environment_disconnected_event.rbs +13 -2
  166. data/sig/openai/models/beta/agent_session_environment_expired_event.rbs +13 -2
  167. data/sig/openai/models/beta/agent_session_environment_failed_event.rbs +13 -2
  168. data/sig/openai/models/beta/agent_session_environment_pending_event.rbs +13 -2
  169. data/sig/openai/models/beta/agent_session_environment_ready_event.rbs +13 -2
  170. data/sig/openai/models/beta/agent_session_environment_reset_event.rbs +13 -2
  171. data/sig/openai/models/beta/agent_session_environment_suspended_event.rbs +13 -2
  172. data/sig/openai/models/beta/agent_session_error_event.rbs +13 -2
  173. data/sig/openai/models/beta/agent_session_failed_event.rbs +13 -2
  174. data/sig/openai/models/beta/agent_session_idle_event.rbs +13 -2
  175. data/sig/openai/models/beta/agent_session_in_progress_event.rbs +13 -2
  176. data/sig/openai/models/beta/agent_session_input_param.rbs +80 -1
  177. data/sig/openai/models/beta/agent_session_requires_action_event.rbs +13 -2
  178. data/sig/openai/models/beta/agent_session_subagent_active_event.rbs +13 -2
  179. data/sig/openai/models/beta/agent_session_subagent_closed_event.rbs +13 -2
  180. data/sig/openai/models/beta/agent_session_subagent_created_event.rbs +13 -2
  181. data/sig/openai/models/beta/agent_session_turn_cancelled_event.rbs +13 -2
  182. data/sig/openai/models/beta/agent_session_turn_completed_event.rbs +13 -2
  183. data/sig/openai/models/beta/agent_session_turn_content_part_added_event.rbs +13 -2
  184. data/sig/openai/models/beta/agent_session_turn_content_part_done_event.rbs +13 -2
  185. data/sig/openai/models/beta/agent_session_turn_created_event.rbs +13 -2
  186. data/sig/openai/models/beta/agent_session_turn_failed_event.rbs +13 -2
  187. data/sig/openai/models/beta/agent_session_turn_in_progress_event.rbs +13 -2
  188. data/sig/openai/models/beta/agent_session_turn_item_added_event.rbs +13 -2
  189. data/sig/openai/models/beta/agent_session_turn_item_done_event.rbs +13 -2
  190. data/sig/openai/models/beta/agent_session_turn_output_text_delta_event.rbs +13 -2
  191. data/sig/openai/models/beta/agent_session_turn_output_text_done_event.rbs +13 -2
  192. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rbs +13 -2
  193. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rbs +13 -2
  194. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rbs +13 -2
  195. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rbs +13 -2
  196. data/sig/openai/models/beta/agents/session_create_params.rbs +78 -0
  197. data/sig/openai/models/beta/agents/session_update_params.rbs +46 -0
  198. data/sig/openai/models/beta/agents/sessions/event_stream_params.rbs +18 -1
  199. data/sig/openai/models/beta/agents/sessions/turn.rbs +40 -2
  200. data/sig/openai/models/beta/beta_response.rbs +6 -2
  201. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +6 -3
  202. data/sig/openai/models/beta/beta_responses_client_event.rbs +6 -2
  203. data/sig/openai/models/beta/beta_tool.rbs +6 -3
  204. data/sig/openai/models/beta/response_create_params.rbs +6 -2
  205. data/sig/openai/models/beta/responses/input_token_count_params.rbs +27 -15
  206. data/sig/openai/models/content_provenance_check_create_params.rbs +2 -0
  207. data/sig/openai/models/image_edit_params.rbs +87 -4
  208. data/sig/openai/models/image_generate_params.rbs +4 -4
  209. data/sig/openai/models/images_response.rbs +9 -12
  210. data/sig/openai/models/live/media_session_config.rbs +10 -0
  211. data/sig/openai/models/live/session_accept_params.rbs +10 -0
  212. data/sig/openai/models/responses/input_token_count_params.rbs +27 -15
  213. data/sig/openai/models/responses/response.rbs +6 -2
  214. data/sig/openai/models/responses/response_create_params.rbs +6 -2
  215. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +6 -3
  216. data/sig/openai/models/responses/responses_client_event.rbs +6 -2
  217. data/sig/openai/models/responses/tool.rbs +6 -3
  218. data/sig/openai/models/video_create_error.rbs +9 -6
  219. data/sig/openai/models/webhooks/agent_session_action_required_webhook_event.rbs +2 -0
  220. data/sig/openai/models/webhooks/live_transport_connected_webhook_event.rbs +66 -0
  221. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
  222. data/sig/openai/resources/admin/organization/external_keys.rbs +9 -0
  223. data/sig/openai/resources/beta/agents/sessions/events.rbs +1 -0
  224. data/sig/openai/resources/beta/agents/sessions.rbs +5 -0
  225. data/sig/openai/resources/images.rbs +2 -0
  226. data/sig/openai/resources/webhooks.rbs +1 -0
  227. metadata +4 -1
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Webhooks
6
+ class LiveTransportConnectedWebhookEvent < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The webhook event ID.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute created_at
14
+ # Unix time in seconds when the event was created.
15
+ #
16
+ # @return [Integer]
17
+ required :created_at, Integer
18
+
19
+ # @!attribute data
20
+ #
21
+ # @return [OpenAI::Models::Webhooks::LiveTransportConnectedWebhookEvent::Data]
22
+ required :data, -> { OpenAI::Webhooks::LiveTransportConnectedWebhookEvent::Data }
23
+
24
+ # @!attribute object
25
+ #
26
+ # @return [Symbol, :event]
27
+ required :object, const: :event
28
+
29
+ # @!attribute type
30
+ #
31
+ # @return [Symbol, :"live.transport.connected"]
32
+ required :type, const: :"live.transport.connected"
33
+
34
+ # @!method initialize(id:, created_at:, data:, object: :event, type: :"live.transport.connected")
35
+ # Sent when a direct Live WebRTC session is created or an Instant Connect session
36
+ # activates. Use its session ID to attach a sideband observer.
37
+ #
38
+ # @param id [String]
39
+ # The webhook event ID.
40
+ #
41
+ # @param created_at [Integer]
42
+ # Unix time in seconds when the event was created.
43
+ #
44
+ # @param data [OpenAI::Models::Webhooks::LiveTransportConnectedWebhookEvent::Data]
45
+ #
46
+ # @param object [Symbol, :event]
47
+ #
48
+ # @param type [Symbol, :"live.transport.connected"]
49
+
50
+ # @see OpenAI::Models::Webhooks::LiveTransportConnectedWebhookEvent#data
51
+ class Data < OpenAI::Internal::Type::BaseModel
52
+ # @!attribute session_id
53
+ # The Live session ID to use with the sideband attach endpoint.
54
+ #
55
+ # @return [String]
56
+ required :session_id, String
57
+
58
+ # @!attribute type
59
+ # The session transport.
60
+ #
61
+ # @return [Symbol, :webrtc]
62
+ required :type, const: :webrtc
63
+
64
+ # @!method initialize(session_id:, type: :webrtc)
65
+ # @param session_id [String]
66
+ # The Live session ID to use with the sideband attach endpoint.
67
+ #
68
+ # @param type [Symbol, :webrtc]
69
+ # The session transport.
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -73,6 +73,9 @@ module OpenAI
73
73
  # successful Realtime or Live accept endpoint selects the runtime surface.
74
74
  variant :"live.call.incoming", -> { OpenAI::Webhooks::LiveCallIncomingWebhookEvent }
75
75
 
76
+ # Sent when a direct Live WebRTC session is created or an Instant Connect session activates. Use its session ID to attach a sideband observer.
77
+ variant :"live.transport.connected", -> { OpenAI::Webhooks::LiveTransportConnectedWebhookEvent }
78
+
76
79
  # Sent when an incoming API SIP session is available for Live acceptance. The
77
80
  # same pending session can also emit `realtime.call.incoming`; the first
78
81
  # successful Realtime or Live accept endpoint selects the runtime surface.
@@ -108,7 +111,7 @@ module OpenAI
108
111
  variant :"safety.warning_issued", -> { OpenAI::Webhooks::SafetyWarningIssuedWebhookEvent }
109
112
 
110
113
  # @!method self.variants
111
- # @return [Array(OpenAI::Models::Webhooks::AgentEnvironmentExpiredWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentFailedWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentReadyWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentSuspendedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionActionRequiredWebhookEvent, OpenAI::Models::Webhooks::AgentSessionCreatedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionFailedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionIdleWebhookEvent, OpenAI::Models::Webhooks::AgentSessionInProgressWebhookEvent, OpenAI::Models::Webhooks::BatchCancelledWebhookEvent, OpenAI::Models::Webhooks::BatchCompletedWebhookEvent, OpenAI::Models::Webhooks::BatchExpiredWebhookEvent, OpenAI::Models::Webhooks::BatchFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunCanceledWebhookEvent, OpenAI::Models::Webhooks::EvalRunFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunSucceededWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent, OpenAI::Models::Webhooks::LiveCallIncomingWebhookEvent, OpenAI::Models::Webhooks::LiveTransportIncomingWebhookEvent, OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent, OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent, OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent, OpenAI::Models::Webhooks::ResponseFailedWebhookEvent, OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent, OpenAI::Models::Webhooks::SafetyAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyDeactivationIssuedWebhookEvent, OpenAI::Models::Webhooks::SafetyOrgAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyWarningIssuedWebhookEvent)]
114
+ # @return [Array(OpenAI::Models::Webhooks::AgentEnvironmentExpiredWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentFailedWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentReadyWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentSuspendedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionActionRequiredWebhookEvent, OpenAI::Models::Webhooks::AgentSessionCreatedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionFailedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionIdleWebhookEvent, OpenAI::Models::Webhooks::AgentSessionInProgressWebhookEvent, OpenAI::Models::Webhooks::BatchCancelledWebhookEvent, OpenAI::Models::Webhooks::BatchCompletedWebhookEvent, OpenAI::Models::Webhooks::BatchExpiredWebhookEvent, OpenAI::Models::Webhooks::BatchFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunCanceledWebhookEvent, OpenAI::Models::Webhooks::EvalRunFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunSucceededWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent, OpenAI::Models::Webhooks::LiveCallIncomingWebhookEvent, OpenAI::Models::Webhooks::LiveTransportConnectedWebhookEvent, OpenAI::Models::Webhooks::LiveTransportIncomingWebhookEvent, OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent, OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent, OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent, OpenAI::Models::Webhooks::ResponseFailedWebhookEvent, OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent, OpenAI::Models::Webhooks::SafetyAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyDeactivationIssuedWebhookEvent, OpenAI::Models::Webhooks::SafetyOrgAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyWarningIssuedWebhookEvent)]
112
115
  end
113
116
  end
114
117
  end
@@ -9,7 +9,7 @@ module OpenAI
9
9
  #
10
10
  # @overload create(body:, request_options: {})
11
11
  #
12
- # @param body [OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Aws, OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Gcp, OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Azure]
12
+ # @param body [OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Aws, OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Gcp, OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Azure, OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Oci]
13
13
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
14
14
  #
15
15
  # @return [OpenAI::Models::Admin::Organization::ExternalKey]
@@ -19,7 +19,7 @@ module OpenAI
19
19
  # @param session_id [String]
20
20
  # Path param: The ID of the session.
21
21
  #
22
- # @param events [Array<OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputComputerUseApprovalRequestResult, OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputMessage, OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputCancel, OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputToolResult>]
22
+ # @param events [Array<OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputMcpApprovalRequestResult, OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputComputerUseApprovalRequestResult, OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputMessage, OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputCancel, OpenAI::Models::Beta::AgentSessionInputParam::AgentSessionInputToolResult>]
23
23
  # Body param: The input events to submit to the session.
24
24
  #
25
25
  # @param idempotency_key [String]
@@ -50,20 +50,27 @@ module OpenAI
50
50
  # Streams live events for an agent session. See
51
51
  # [session events](https://developers.openai.com/api/docs/guides/agents-api/sessions/events).
52
52
  #
53
- # @overload stream_streaming(session_id, request_options: {})
53
+ # @overload stream_streaming(session_id, include_obfuscation: nil, request_options: {})
54
54
  #
55
55
  # @param session_id [String]
56
56
  # The ID of the session.
57
57
  #
58
+ # @param include_obfuscation [Boolean]
59
+ # Whether to include obfuscation padding in events on this connection. Defaults to
60
+ # `true`.
61
+ #
58
62
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
59
63
  #
60
64
  # @return [OpenAI::Internal::Stream<OpenAI::Models::Beta::AgentSessionErrorEvent, OpenAI::Models::Beta::AgentSessionEnvironmentReadyEvent, OpenAI::Models::Beta::AgentSessionEnvironmentSuspendedEvent, OpenAI::Models::Beta::AgentSessionEnvironmentExpiredEvent, OpenAI::Models::Beta::AgentSessionEnvironmentResetEvent, OpenAI::Models::Beta::AgentOutputCommandExecutionOutputDeltaEvent, OpenAI::Models::Beta::AgentSessionCreatedEvent, OpenAI::Models::Beta::AgentSessionTurnCreatedEvent, OpenAI::Models::Beta::AgentSessionTurnInProgressEvent, OpenAI::Models::Beta::AgentSessionTurnCompletedEvent, OpenAI::Models::Beta::AgentSessionTurnFailedEvent, OpenAI::Models::Beta::AgentSessionTurnCancelledEvent, OpenAI::Models::Beta::AgentSessionTurnItemAddedEvent, OpenAI::Models::Beta::AgentSessionIdleEvent, OpenAI::Models::Beta::AgentSessionInProgressEvent, OpenAI::Models::Beta::AgentSessionRequiresActionEvent, OpenAI::Models::Beta::AgentSessionFailedEvent, OpenAI::Models::Beta::AgentSessionEnvironmentPendingEvent, OpenAI::Models::Beta::AgentSessionEnvironmentConnectedEvent, OpenAI::Models::Beta::AgentSessionEnvironmentDisconnectedEvent, OpenAI::Models::Beta::AgentSessionEnvironmentFailedEvent, OpenAI::Models::Beta::AgentSessionSubagentCreatedEvent, OpenAI::Models::Beta::AgentSessionSubagentActiveEvent, OpenAI::Models::Beta::AgentSessionSubagentClosedEvent, OpenAI::Models::Beta::AgentSessionTurnItemDoneEvent, OpenAI::Models::Beta::AgentSessionTurnContentPartAddedEvent, OpenAI::Models::Beta::AgentSessionTurnContentPartDoneEvent, OpenAI::Models::Beta::AgentSessionTurnOutputTextDeltaEvent, OpenAI::Models::Beta::AgentSessionTurnOutputTextDoneEvent, OpenAI::Models::Beta::AgentSessionTurnReasoningSummaryPartAddedEvent, OpenAI::Models::Beta::AgentSessionTurnReasoningSummaryPartDoneEvent, OpenAI::Models::Beta::AgentSessionTurnReasoningSummaryTextDeltaEvent, OpenAI::Models::Beta::AgentSessionTurnReasoningSummaryTextDoneEvent>]
61
65
  #
62
66
  # @see OpenAI::Models::Beta::Agents::Sessions::EventStreamParams
63
67
  def stream_streaming(session_id, params = {})
68
+ parsed, options = OpenAI::Beta::Agents::Sessions::EventStreamParams.dump_request(params)
69
+ query = OpenAI::Internal::Util.encode_query_params(parsed)
64
70
  @client.request(
65
71
  method: :get,
66
72
  path: ["agents/sessions/%1$s/events", session_id],
73
+ query: query,
67
74
  headers: {
68
75
  "openai-beta" => "agents=v1",
69
76
  "accept" => "text/event-stream",
@@ -72,7 +79,7 @@ module OpenAI
72
79
  stream: OpenAI::Internal::Stream,
73
80
  model: OpenAI::Beta::AgentSessionEvent,
74
81
  security: {bearer_auth: true},
75
- options: params[:request_options]
82
+ options: options
76
83
  )
77
84
  end
78
85
 
@@ -32,7 +32,7 @@ module OpenAI
32
32
  # the session or streams its events when stream is true. See
33
33
  # [running sessions](https://developers.openai.com/api/docs/guides/agents-api/sessions).
34
34
  #
35
- # @overload create(environment:, agent: nil, agent_id: nil, input: nil, metadata: nil, review: nil, spend_control: nil, vault_ids: nil, request_options: {})
35
+ # @overload create(environment:, agent: nil, agent_id: nil, input: nil, metadata: nil, prompt_cache_options: nil, review: nil, spend_control: nil, stream_options: nil, vault_ids: nil, request_options: {})
36
36
  #
37
37
  # @param environment [OpenAI::Models::Beta::EnvironmentParam::None, OpenAI::Models::Beta::EnvironmentParam::OpenAIHosted, OpenAI::Models::Beta::EnvironmentParam::SelfHosted]
38
38
  # An inline execution environment or a reference to an environment template.
@@ -55,6 +55,10 @@ module OpenAI
55
55
  # Up to 16 string key-value pairs, with keys up to 64 and values up to 512
56
56
  # characters. Omission or null defaults to an empty map.
57
57
  #
58
+ # @param prompt_cache_options [OpenAI::Models::Beta::Agents::SessionCreateParams::PromptCacheOptions, nil]
59
+ # Default prompt cache lifetime for turns in this session. Omit to use the model
60
+ # default.
61
+ #
58
62
  # @param review [Symbol, OpenAI::Models::Beta::Agents::SessionCreateParams::Review]
59
63
  # Action review mode. Omit to use none.
60
64
  #
@@ -62,6 +66,9 @@ module OpenAI
62
66
  # Optional spending limit in USD cents. Omission or null creates an unlimited
63
67
  # session.
64
68
  #
69
+ # @param stream_options [OpenAI::Models::Beta::Agents::SessionCreateParams::StreamOptions]
70
+ # Options for the event stream. Only allowed when `stream` is `true`.
71
+ #
65
72
  # @param vault_ids [Array<String>, nil]
66
73
  # The IDs of vaults made available to the session.
67
74
  #
@@ -95,7 +102,7 @@ module OpenAI
95
102
  # the session or streams its events when stream is true. See
96
103
  # [running sessions](https://developers.openai.com/api/docs/guides/agents-api/sessions).
97
104
  #
98
- # @overload create_streaming(environment:, agent: nil, agent_id: nil, input: nil, output_type: nil, tool_handlers: {}, metadata: nil, review: nil, spend_control: nil, vault_ids: nil, request_options: {})
105
+ # @overload create_streaming(environment:, agent: nil, agent_id: nil, input: nil, output_type: nil, tool_handlers: {}, metadata: nil, prompt_cache_options: nil, review: nil, spend_control: nil, stream_options: nil, vault_ids: nil, request_options: {})
99
106
  #
100
107
  # @param environment [OpenAI::Models::Beta::EnvironmentParam::None, OpenAI::Models::Beta::EnvironmentParam::OpenAIHosted, OpenAI::Models::Beta::EnvironmentParam::SelfHosted]
101
108
  # An inline execution environment or a reference to an environment template.
@@ -118,6 +125,10 @@ module OpenAI
118
125
  # Up to 16 string key-value pairs, with keys up to 64 and values up to 512
119
126
  # characters. Omission or null defaults to an empty map.
120
127
  #
128
+ # @param prompt_cache_options [OpenAI::Models::Beta::Agents::SessionCreateParams::PromptCacheOptions, nil]
129
+ # Default prompt cache lifetime for turns in this session. Omit to use the model
130
+ # default.
131
+ #
121
132
  # @param review [Symbol, OpenAI::Models::Beta::Agents::SessionCreateParams::Review]
122
133
  # Action review mode. Omit to use none.
123
134
  #
@@ -125,6 +136,9 @@ module OpenAI
125
136
  # Optional spending limit in USD cents. Omission or null creates an unlimited
126
137
  # session.
127
138
  #
139
+ # @param stream_options [OpenAI::Models::Beta::Agents::SessionCreateParams::StreamOptions]
140
+ # Options for the event stream. Only allowed when `stream` is `true`.
141
+ #
128
142
  # @param vault_ids [Array<String>, nil]
129
143
  # The IDs of vaults made available to the session.
130
144
  #
@@ -194,11 +208,12 @@ module OpenAI
194
208
  )
195
209
  end
196
210
 
197
- # Updates session tools, metadata, model, reasoning effort, or service tier. Model
198
- # settings apply to subsequent turns. Omitted fields are unchanged. See
211
+ # Updates session tools, metadata, model, reasoning effort, service tier, or the
212
+ # default prompt cache lifetime. Model settings apply to subsequent turns. Omitted
213
+ # fields are unchanged. See
199
214
  # [managing sessions](https://developers.openai.com/api/docs/guides/agents-api/sessions/manage).
200
215
  #
201
- # @overload update(session_id, agent: nil, metadata: nil, review: nil, spend_control: nil, request_options: {})
216
+ # @overload update(session_id, agent: nil, metadata: nil, prompt_cache_options: nil, review: nil, spend_control: nil, request_options: {})
202
217
  #
203
218
  # @param session_id [String]
204
219
  # The ID of the session.
@@ -211,6 +226,10 @@ module OpenAI
211
226
  # Up to 16 string key-value pairs, with keys up to 64 and values up to 512
212
227
  # characters.
213
228
  #
229
+ # @param prompt_cache_options [OpenAI::Models::Beta::Agents::SessionUpdateParams::PromptCacheOptions, nil]
230
+ # Default prompt cache lifetime for future turns. Send null to clear the session
231
+ # default.
232
+ #
214
233
  # @param review [Symbol, OpenAI::Models::Beta::Agents::SessionUpdateParams::Review]
215
234
  # Default action review for new root turns. Existing turns and their subagents
216
235
  # keep their review mode.
@@ -69,12 +69,15 @@ module OpenAI
69
69
  # You can specify which tool to use by setting the `tool_choice` parameter.
70
70
  #
71
71
  # @param truncation [Symbol, OpenAI::Models::Beta::Responses::InputTokenCountParams::Truncation]
72
- # Body param: The truncation strategy to use for the model response. - `auto`: If
73
- # the input to this Response exceeds the model's context window size, the model
74
- # will truncate the response to fit the context window by dropping items from the
75
- # beginning of the conversation. - `disabled` (default): If the input size will
76
- # exceed the context window size for a model, the request will fail with a 400
77
- # error.
72
+ # Body param: The truncation strategy to use for the model response.
73
+ #
74
+ # - `auto`: If the input to this Response exceeds the model's context window size,
75
+ # the model will truncate the response to fit the context window by dropping
76
+ # items from the beginning of the conversation. On some models, trimming can
77
+ # begin earlier because the API subtracts the model's maximum output allowance
78
+ # from its input limit before counting tokens.
79
+ # - `disabled` (default): If the input size will exceed the context window size
80
+ # for a model, the request will fail with a 400 error.
78
81
  #
79
82
  # @param betas [Array<Symbol, OpenAI::Models::Beta::Responses::InputTokenCountParams::Beta>]
80
83
  # Header param: Optional beta features to enable for this request.
@@ -297,7 +297,9 @@ module OpenAI
297
297
  #
298
298
  # - `auto`: If the input to this Response exceeds the model's context window size,
299
299
  # the model will truncate the response to fit the context window by dropping
300
- # items from the beginning of the conversation.
300
+ # items from the beginning of the conversation. On some models, trimming can
301
+ # begin earlier because the API subtracts the model's maximum output allowance
302
+ # from its input limit, even if you set a lower `max_output_tokens`.
301
303
  # - `disabled` (default): If the input size will exceed the context window size
302
304
  # for a model, the request will fail with a 400 error.
303
305
  #
@@ -601,7 +603,9 @@ module OpenAI
601
603
  #
602
604
  # - `auto`: If the input to this Response exceeds the model's context window size,
603
605
  # the model will truncate the response to fit the context window by dropping
604
- # items from the beginning of the conversation.
606
+ # items from the beginning of the conversation. On some models, trimming can
607
+ # begin earlier because the API subtracts the model's maximum output allowance
608
+ # from its input limit, even if you set a lower `max_output_tokens`.
605
609
  # - `disabled` (default): If the input size will exceed the context window size
606
610
  # for a model, the request will fail with a 400 error.
607
611
  #
@@ -21,6 +21,7 @@ module OpenAI
21
21
  #
22
22
  # @param file [Pathname, StringIO, IO, String, OpenAI::FilePart]
23
23
  # The image or audio file to check for supported OpenAI provenance signals.
24
+ # Supported image formats are PNG, JPEG, WebP, and GIF (including animated GIFs).
24
25
  #
25
26
  # `String`, `StringIO`, and pathless `IO` inputs are sent with generic upload
26
27
  # metadata. Use `OpenAI::FilePart` when you need to override the filename or
@@ -72,7 +72,7 @@ module OpenAI
72
72
  # metadata. Use `OpenAI::FilePart` when you need to override the filename or
73
73
  # content type.
74
74
  #
75
- # @overload edit(image:, prompt:, background: nil, complexity: nil, frame_count: nil, frame_duration_ms: nil, input_fidelity: nil, markup: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, user: nil, request_options: {})
75
+ # @overload edit(image:, prompt:, background: nil, complexity: nil, frame_count: nil, frame_duration_ms: nil, input_fidelity: nil, markup: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, svg: nil, user: nil, request_options: {})
76
76
  #
77
77
  # @param image [Pathname, StringIO, IO, String, OpenAI::FilePart, Array<Pathname, StringIO, IO, String, OpenAI::FilePart>]
78
78
  # The image(s) to edit. Must be a supported image file or an array of images.
@@ -165,7 +165,8 @@ module OpenAI
165
165
  #
166
166
  # @param output_format [Symbol, OpenAI::Models::ImageEditParams::OutputFormat, nil]
167
167
  # The format in which the generated images are returned. This parameter is only
168
- # supported for the GPT image models. The default value is `png`.
168
+ # supported for the GPT image models. The default value is `png`. SVG output
169
+ # requires a supported image model and project access.
169
170
  #
170
171
  # @param partial_images [Integer, nil]
171
172
  # The number of partial images to generate. This parameter is used for streaming
@@ -206,6 +207,12 @@ module OpenAI
206
207
  # `1024x1536` are supported by the GPT image models; `auto` is supported for
207
208
  # models that allow automatic sizing.
208
209
  #
210
+ # @param svg [OpenAI::Models::ImageEditParams::Svg, nil]
211
+ # Selects the author model and reasoning effort for `output_format=svg`. Supply
212
+ # `svg.model` when SVG model selection is enabled. Otherwise, omit this object.
213
+ # SVG output requires `n=1` and cannot use streaming, partial images, or output
214
+ # compression. Use multipart fields such as `svg[model]`.
215
+ #
209
216
  # @param user [String]
210
217
  # Deprecated: use `safety_identifier` instead. This parameter remains accepted for
211
218
  # backward compatibility and is used when `safety_identifier` is omitted, null, or
@@ -245,7 +252,7 @@ module OpenAI
245
252
  # metadata. Use `OpenAI::FilePart` when you need to override the filename or
246
253
  # content type.
247
254
  #
248
- # @overload edit_stream_raw(image:, prompt:, background: nil, complexity: nil, frame_count: nil, frame_duration_ms: nil, input_fidelity: nil, markup: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, user: nil, request_options: {})
255
+ # @overload edit_stream_raw(image:, prompt:, background: nil, complexity: nil, frame_count: nil, frame_duration_ms: nil, input_fidelity: nil, markup: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, svg: nil, user: nil, request_options: {})
249
256
  #
250
257
  # @param image [Pathname, StringIO, IO, String, OpenAI::FilePart, Array<Pathname, StringIO, IO, String, OpenAI::FilePart>]
251
258
  # The image(s) to edit. Must be a supported image file or an array of images.
@@ -338,7 +345,8 @@ module OpenAI
338
345
  #
339
346
  # @param output_format [Symbol, OpenAI::Models::ImageEditParams::OutputFormat, nil]
340
347
  # The format in which the generated images are returned. This parameter is only
341
- # supported for the GPT image models. The default value is `png`.
348
+ # supported for the GPT image models. The default value is `png`. SVG output
349
+ # requires a supported image model and project access.
342
350
  #
343
351
  # @param partial_images [Integer, nil]
344
352
  # The number of partial images to generate. This parameter is used for streaming
@@ -379,6 +387,12 @@ module OpenAI
379
387
  # `1024x1536` are supported by the GPT image models; `auto` is supported for
380
388
  # models that allow automatic sizing.
381
389
  #
390
+ # @param svg [OpenAI::Models::ImageEditParams::Svg, nil]
391
+ # Selects the author model and reasoning effort for `output_format=svg`. Supply
392
+ # `svg.model` when SVG model selection is enabled. Otherwise, omit this object.
393
+ # SVG output requires `n=1` and cannot use streaming, partial images, or output
394
+ # compression. Use multipart fields such as `svg[model]`.
395
+ #
382
396
  # @param user [String]
383
397
  # Deprecated: use `safety_identifier` instead. This parameter remains accepted for
384
398
  # backward compatibility and is used when `safety_identifier` is omitted, null, or
@@ -533,7 +547,7 @@ module OpenAI
533
547
  # enabled, supply svg.model. When model selection is disabled, omit this object.
534
548
  # The top-level model selects the image model that creates the reference image.
535
549
  # SVG generation requires n=1 and does not support streaming, partial images,
536
- # prompt_rewriter, or output_compression. SVG edits are not supported.
550
+ # prompt_rewriter, or output_compression.
537
551
  #
538
552
  # @param user [String]
539
553
  # Deprecated: use `safety_identifier` instead. This parameter remains accepted for
@@ -681,7 +695,7 @@ module OpenAI
681
695
  # enabled, supply svg.model. When model selection is disabled, omit this object.
682
696
  # The top-level model selects the image model that creates the reference image.
683
697
  # SVG generation requires n=1 and does not support streaming, partial images,
684
- # prompt_rewriter, or output_compression. SVG edits are not supported.
698
+ # prompt_rewriter, or output_compression.
685
699
  #
686
700
  # @param user [String]
687
701
  # Deprecated: use `safety_identifier` instead. This parameter remains accepted for
@@ -67,11 +67,15 @@ module OpenAI
67
67
  # specify which tool to use by setting the `tool_choice` parameter.
68
68
  #
69
69
  # @param truncation [Symbol, OpenAI::Models::Responses::InputTokenCountParams::Truncation]
70
- # The truncation strategy to use for the model response. - `auto`: If the input to
71
- # this Response exceeds the model's context window size, the model will truncate
72
- # the response to fit the context window by dropping items from the beginning of
73
- # the conversation. - `disabled` (default): If the input size will exceed the
74
- # context window size for a model, the request will fail with a 400 error.
70
+ # The truncation strategy to use for the model response.
71
+ #
72
+ # - `auto`: If the input to this Response exceeds the model's context window size,
73
+ # the model will truncate the response to fit the context window by dropping
74
+ # items from the beginning of the conversation. On some models, trimming can
75
+ # begin earlier because the API subtracts the model's maximum output allowance
76
+ # from its input limit before counting tokens.
77
+ # - `disabled` (default): If the input size will exceed the context window size
78
+ # for a model, the request will fail with a 400 error.
75
79
  #
76
80
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
77
81
  #
@@ -289,7 +289,9 @@ module OpenAI
289
289
  #
290
290
  # - `auto`: If the input to this Response exceeds the model's context window size,
291
291
  # the model will truncate the response to fit the context window by dropping
292
- # items from the beginning of the conversation.
292
+ # items from the beginning of the conversation. On some models, trimming can
293
+ # begin earlier because the API subtracts the model's maximum output allowance
294
+ # from its input limit, even if you set a lower `max_output_tokens`.
293
295
  # - `disabled` (default): If the input size will exceed the context window size
294
296
  # for a model, the request will fail with a 400 error.
295
297
  #
@@ -585,7 +587,9 @@ module OpenAI
585
587
  #
586
588
  # - `auto`: If the input to this Response exceeds the model's context window size,
587
589
  # the model will truncate the response to fit the context window by dropping
588
- # items from the beginning of the conversation.
590
+ # items from the beginning of the conversation. On some models, trimming can
591
+ # begin earlier because the API subtracts the model's maximum output allowance
592
+ # from its input limit, even if you set a lower `max_output_tokens`.
589
593
  # - `disabled` (default): If the input size will exceed the context window size
590
594
  # for a model, the request will fail with a 400 error.
591
595
  #
@@ -205,7 +205,7 @@ module OpenAI
205
205
  #
206
206
  # @param webhook_secret [String, nil] The webhook signing key
207
207
  #
208
- # @return [OpenAI::Models::Webhooks::AgentEnvironmentExpiredWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentFailedWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentReadyWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentSuspendedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionActionRequiredWebhookEvent, OpenAI::Models::Webhooks::AgentSessionCreatedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionFailedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionIdleWebhookEvent, OpenAI::Models::Webhooks::AgentSessionInProgressWebhookEvent, OpenAI::Models::Webhooks::BatchCancelledWebhookEvent, OpenAI::Models::Webhooks::BatchCompletedWebhookEvent, OpenAI::Models::Webhooks::BatchExpiredWebhookEvent, OpenAI::Models::Webhooks::BatchFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunCanceledWebhookEvent, OpenAI::Models::Webhooks::EvalRunFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunSucceededWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent, OpenAI::Models::Webhooks::LiveCallIncomingWebhookEvent, OpenAI::Models::Webhooks::LiveTransportIncomingWebhookEvent, OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent, OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent, OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent, OpenAI::Models::Webhooks::ResponseFailedWebhookEvent, OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent, OpenAI::Models::Webhooks::SafetyAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyDeactivationIssuedWebhookEvent, OpenAI::Models::Webhooks::SafetyOrgAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyWarningIssuedWebhookEvent]
208
+ # @return [OpenAI::Models::Webhooks::AgentEnvironmentExpiredWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentFailedWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentReadyWebhookEvent, OpenAI::Models::Webhooks::AgentEnvironmentSuspendedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionActionRequiredWebhookEvent, OpenAI::Models::Webhooks::AgentSessionCreatedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionFailedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionIdleWebhookEvent, OpenAI::Models::Webhooks::AgentSessionInProgressWebhookEvent, OpenAI::Models::Webhooks::BatchCancelledWebhookEvent, OpenAI::Models::Webhooks::BatchCompletedWebhookEvent, OpenAI::Models::Webhooks::BatchExpiredWebhookEvent, OpenAI::Models::Webhooks::BatchFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunCanceledWebhookEvent, OpenAI::Models::Webhooks::EvalRunFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunSucceededWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent, OpenAI::Models::Webhooks::LiveCallIncomingWebhookEvent, OpenAI::Models::Webhooks::LiveTransportConnectedWebhookEvent, OpenAI::Models::Webhooks::LiveTransportIncomingWebhookEvent, OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent, OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent, OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent, OpenAI::Models::Webhooks::ResponseFailedWebhookEvent, OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent, OpenAI::Models::Webhooks::SafetyAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyDeactivationIssuedWebhookEvent, OpenAI::Models::Webhooks::SafetyOrgAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyWarningIssuedWebhookEvent]
209
209
  def unwrap(
210
210
  payload,
211
211
  headers = {},
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module OpenAI
4
- VERSION = "0.123.0"
4
+ VERSION = "0.124.0"
5
5
  end
data/lib/openai.rb CHANGED
@@ -1568,6 +1568,7 @@ require_relative "openai/models/webhooks/fine_tuning_job_cancelled_webhook_event
1568
1568
  require_relative "openai/models/webhooks/fine_tuning_job_failed_webhook_event"
1569
1569
  require_relative "openai/models/webhooks/fine_tuning_job_succeeded_webhook_event"
1570
1570
  require_relative "openai/models/webhooks/live_call_incoming_webhook_event"
1571
+ require_relative "openai/models/webhooks/live_transport_connected_webhook_event"
1571
1572
  require_relative "openai/models/webhooks/live_transport_incoming_webhook_event"
1572
1573
  require_relative "openai/models/webhooks/realtime_call_incoming_webhook_event"
1573
1574
  require_relative "openai/models/webhooks/response_cancelled_webhook_event"
@@ -2359,6 +2359,13 @@ module OpenAI
2359
2359
  )
2360
2360
  end
2361
2361
 
2362
+ # Number of seconds from the update request until the API key expires.
2363
+ sig { returns(T.nilable(Integer)) }
2364
+ attr_reader :expires_in_seconds
2365
+
2366
+ sig { params(expires_in_seconds: Integer).void }
2367
+ attr_writer :expires_in_seconds
2368
+
2362
2369
  # A list of scopes allowed for the API key, e.g. `["api.model.request"]`
2363
2370
  sig { returns(T.nilable(T::Array[String])) }
2364
2371
  attr_reader :scopes
@@ -2370,12 +2377,17 @@ module OpenAI
2370
2377
  sig do
2371
2378
  params(
2372
2379
 
2380
+ expires_in_seconds: Integer,
2381
+
2373
2382
  scopes: T::Array[String]
2374
2383
  )
2375
2384
  .returns(T.attached_class)
2376
2385
  end
2377
2386
  def self.new(
2378
2387
 
2388
+ # Number of seconds from the update request until the API key expires.
2389
+ expires_in_seconds: nil,
2390
+
2379
2391
  # A list of scopes allowed for the API key, e.g. `["api.model.request"]`
2380
2392
 
2381
2393
  scopes: nil
@@ -2384,7 +2396,7 @@ module OpenAI
2384
2396
 
2385
2397
  sig do
2386
2398
  override.returns(
2387
- {scopes: T::Array[String]}
2399
+ {expires_in_seconds: Integer, scopes: T::Array[String]}
2388
2400
  )
2389
2401
  end
2390
2402
  def to_hash
@@ -55,12 +55,24 @@ module OpenAI
55
55
  sig { params(key_name: String).void }
56
56
  attr_writer :key_name
57
57
 
58
+ sig { returns(T.nilable(String)) }
59
+ attr_reader :key_ocid
60
+
61
+ sig { params(key_ocid: String).void }
62
+ attr_writer :key_ocid
63
+
58
64
  sig { returns(T.nilable(String)) }
59
65
  attr_reader :key_version
60
66
 
61
67
  sig { params(key_version: String).void }
62
68
  attr_writer :key_version
63
69
 
70
+ sig { returns(T.nilable(String)) }
71
+ attr_reader :key_version_ocid
72
+
73
+ sig { params(key_version_ocid: String).void }
74
+ attr_writer :key_version_ocid
75
+
64
76
  sig { returns(T.nilable(String)) }
65
77
  attr_reader :kms_arn
66
78
 
@@ -103,6 +115,12 @@ module OpenAI
103
115
  sig { params(purpose: OpenAI::Admin::Organization::ExternalKey::Purpose::OrSymbol).void }
104
116
  attr_writer :purpose
105
117
 
118
+ sig { returns(T.nilable(String)) }
119
+ attr_reader :region
120
+
121
+ sig { params(region: String).void }
122
+ attr_writer :region
123
+
106
124
  sig { returns(T.nilable(String)) }
107
125
  attr_reader :role_arn
108
126
 
@@ -115,6 +133,12 @@ module OpenAI
115
133
  sig { params(tenant_id: String).void }
116
134
  attr_writer :tenant_id
117
135
 
136
+ sig { returns(T.nilable(String)) }
137
+ attr_reader :vault_ocid
138
+
139
+ sig { params(vault_ocid: String).void }
140
+ attr_writer :vault_ocid
141
+
118
142
  sig { returns(T.nilable(String)) }
119
143
  attr_reader :vault_uri
120
144
 
@@ -162,8 +186,12 @@ module OpenAI
162
186
 
163
187
  key_name: String,
164
188
 
189
+ key_ocid: String,
190
+
165
191
  key_version: String,
166
192
 
193
+ key_version_ocid: String,
194
+
167
195
  kms_arn: String,
168
196
 
169
197
  kms_key_location: String,
@@ -178,10 +206,14 @@ module OpenAI
178
206
 
179
207
  purpose: OpenAI::Admin::Organization::ExternalKey::Purpose::OrSymbol,
180
208
 
209
+ region: String,
210
+
181
211
  role_arn: String,
182
212
 
183
213
  tenant_id: String,
184
214
 
215
+ vault_ocid: String,
216
+
185
217
  vault_uri: String,
186
218
 
187
219
  workload_identity_pool_id: String,
@@ -214,8 +246,12 @@ module OpenAI
214
246
 
215
247
  key_name: nil,
216
248
 
249
+ key_ocid: nil,
250
+
217
251
  key_version: nil,
218
252
 
253
+ key_version_ocid: nil,
254
+
219
255
  kms_arn: nil,
220
256
 
221
257
  kms_key_location: nil,
@@ -230,10 +266,14 @@ module OpenAI
230
266
 
231
267
  purpose: nil,
232
268
 
269
+ region: nil,
270
+
233
271
  role_arn: nil,
234
272
 
235
273
  tenant_id: nil,
236
274
 
275
+ vault_ocid: nil,
276
+
237
277
  vault_uri: nil,
238
278
 
239
279
  workload_identity_pool_id: nil,
@@ -257,7 +297,9 @@ module OpenAI
257
297
  audience: String,
258
298
  external_id: String,
259
299
  key_name: String,
300
+ key_ocid: String,
260
301
  key_version: String,
302
+ key_version_ocid: String,
261
303
  kms_arn: String,
262
304
  kms_key_location: String,
263
305
  kms_key_name: String,
@@ -265,8 +307,10 @@ module OpenAI
265
307
  kms_key_version: String,
266
308
  kms_project_id: String,
267
309
  purpose: OpenAI::Admin::Organization::ExternalKey::Purpose::TaggedSymbol,
310
+ region: String,
268
311
  role_arn: String,
269
312
  tenant_id: String,
313
+ vault_ocid: String,
270
314
  vault_uri: String,
271
315
  workload_identity_pool_id: String,
272
316
  workload_identity_project_number: String,