openai 0.102.0 → 0.104.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +88 -0
  3. data/README.md +23 -1
  4. data/lib/openai/client.rb +3 -386
  5. data/lib/openai/helpers/admin/organization/projects/api_keys.rb +42 -0
  6. data/lib/openai/helpers/agents/session_stream_resource.rb +60 -0
  7. data/lib/openai/helpers/beta/agents/artifacts.rb +18 -0
  8. data/lib/openai/helpers/beta/agents/files.rb +41 -0
  9. data/lib/openai/helpers/client_runtime.rb +391 -0
  10. data/lib/openai/helpers/files.rb +47 -0
  11. data/lib/openai/helpers/live/websocket.rb +8 -57
  12. data/lib/openai/helpers/models/chat/parsed.rb +32 -0
  13. data/lib/openai/helpers/models/responses/parsed.rb +30 -0
  14. data/lib/openai/helpers/models/responses/response.rb +32 -0
  15. data/lib/openai/helpers/models/webhooks/webhook_endpoint_with_secret.rb +20 -0
  16. data/lib/openai/helpers/realtime/client_extension.rb +1 -2
  17. data/lib/openai/helpers/realtime/connection_manager.rb +1 -1
  18. data/lib/openai/helpers/realtime/translation.rb +7 -50
  19. data/lib/openai/helpers/responses_websocket/client_extension.rb +1 -2
  20. data/lib/openai/helpers/streaming/chat_completion_resource.rb +36 -0
  21. data/lib/openai/helpers/streaming/response_stream.rb +1 -16
  22. data/lib/openai/helpers/streaming/response_stream_resource.rb +78 -0
  23. data/lib/openai/helpers/vector_stores/file_batches.rb +188 -0
  24. data/lib/openai/helpers/vector_stores/files.rb +198 -0
  25. data/lib/openai/helpers/websocket/client_request.rb +31 -6
  26. data/lib/openai/helpers/websocket/connection.rb +58 -0
  27. data/lib/openai/helpers/websocket/connection_manager.rb +4 -2
  28. data/lib/openai/helpers/websocket/protocol.rb +2 -1
  29. data/lib/openai/helpers/websocket/resource.rb +54 -0
  30. data/lib/openai/helpers/websocket/typed_connection.rb +95 -0
  31. data/lib/openai/helpers/websocket.rb +4 -0
  32. data/lib/openai/models/admin/organization/audit_log_list_response.rb +5 -3
  33. data/lib/openai/models/admin/organization/external_storage_configuration.rb +5 -3
  34. data/lib/openai/models/admin/organization/external_storage_create_params.rb +33 -3
  35. data/lib/openai/models/admin/organization/oci_external_storage_provider.rb +37 -0
  36. data/lib/openai/models/admin/organization/project_residency.rb +3 -0
  37. data/lib/openai/models/admin/organization/projects/api_key_update_params.rb +64 -0
  38. data/lib/openai/models/admin/organization/projects/api_key_update_scopes_params.rb +34 -0
  39. data/lib/openai/models/admin/organization/usage_decisions_params.rb +177 -0
  40. data/lib/openai/models/admin/organization/usage_decisions_response.rb +351 -0
  41. data/lib/openai/models/audio/speech_create_params.rb +6 -3
  42. data/lib/openai/models/audio/translation_create_response.rb +0 -1
  43. data/lib/openai/models/audio/voice.rb +17 -2
  44. data/lib/openai/models/audio/voice_create_params.rb +100 -3
  45. data/lib/openai/models/beta/agent_create_params.rb +4 -2
  46. data/lib/openai/models/beta/agent_list_params.rb +4 -4
  47. data/lib/openai/models/beta/agent_session.rb +37 -1
  48. data/lib/openai/models/beta/agent_session_environment_expired_event.rb +57 -0
  49. data/lib/openai/models/beta/agent_session_environment_state.rb +6 -0
  50. data/lib/openai/models/beta/agent_session_environment_suspended_event.rb +57 -0
  51. data/lib/openai/models/beta/agent_session_event.rb +7 -1
  52. data/lib/openai/models/beta/agent_update_params.rb +4 -2
  53. data/lib/openai/models/beta/agents/environment_info.rb +3 -0
  54. data/lib/openai/models/beta/agents/environment_list_params.rb +7 -7
  55. data/lib/openai/models/beta/agents/session_create_params.rb +39 -3
  56. data/lib/openai/models/beta/agents/session_list_params.rb +7 -10
  57. data/lib/openai/models/beta/agents/session_update_params.rb +33 -1
  58. data/lib/openai/models/beta/agents/sessions/artifact_list_params.rb +11 -11
  59. data/lib/openai/models/beta/agents/vault_list_params.rb +23 -13
  60. data/lib/openai/models/beta/agents/vault_status_filter.rb +1 -3
  61. data/lib/openai/models/beta/agents/vault_update_params.rb +47 -0
  62. data/lib/openai/models/beta/agents/vaults/credential_list_params.rb +23 -13
  63. data/lib/openai/models/beta/beta_response.rb +23 -2
  64. data/lib/openai/models/beta/beta_response_error.rb +19 -1
  65. data/lib/openai/models/beta/beta_response_input_item.rb +107 -1
  66. data/lib/openai/models/beta/beta_response_item.rb +107 -1
  67. data/lib/openai/models/beta/beta_response_output_item.rb +107 -1
  68. data/lib/openai/models/beta/beta_responses_client_event.rb +23 -2
  69. data/lib/openai/models/beta/response_compact_params.rb +21 -0
  70. data/lib/openai/models/beta/response_create_params.rb +23 -2
  71. data/lib/openai/models/beta/session_turn_error.rb +3 -0
  72. data/lib/openai/models/chat/chat_completion_audio_param.rb +3 -3
  73. data/lib/openai/models/chat/chat_completion_message.rb +0 -8
  74. data/lib/openai/models/chat/chat_completion_message_function_tool_call.rb +0 -8
  75. data/lib/openai/models/chat/completion_create_params.rb +5 -12
  76. data/lib/openai/models/chat_model.rb +21 -0
  77. data/lib/openai/models/conversations/conversation_item.rb +107 -1
  78. data/lib/openai/models/decision.rb +17 -2
  79. data/lib/openai/models/decision_create_params.rb +29 -12
  80. data/lib/openai/models/decision_input_image.rb +4 -3
  81. data/lib/openai/models/decision_input_message.rb +4 -4
  82. data/lib/openai/models/decision_input_part.rb +3 -2
  83. data/lib/openai/models/image_edit_completed_event.rb +1 -2
  84. data/lib/openai/models/image_edit_partial_image_event.rb +1 -2
  85. data/lib/openai/models/image_gen_completed_event.rb +1 -2
  86. data/lib/openai/models/image_gen_partial_image_event.rb +1 -2
  87. data/lib/openai/models/images_response.rb +1 -2
  88. data/lib/openai/models/live/built_in_voice.rb +1 -0
  89. data/lib/openai/models/live/client_event.rb +14 -2
  90. data/lib/openai/models/live/decision_create_event.rb +26 -0
  91. data/lib/openai/models/live/decision_event.rb +117 -0
  92. data/lib/openai/models/live/decision_item_create_event.rb +194 -0
  93. data/lib/openai/models/live/decision_item_created_event.rb +202 -0
  94. data/lib/openai/models/live/decision_item_delete_event.rb +38 -0
  95. data/lib/openai/models/live/decision_item_deleted_event.rb +46 -0
  96. data/lib/openai/models/live/decision_trigger.rb +244 -0
  97. data/lib/openai/models/live/decisions_delegation_config.rb +201 -0
  98. data/lib/openai/models/live/decisions_delegation_update_config.rb +208 -0
  99. data/lib/openai/models/live/delegation_created_event.rb +10 -10
  100. data/lib/openai/models/live/fork_client_event.rb +14 -2
  101. data/lib/openai/models/live/fork_server_event.rb +17 -2
  102. data/lib/openai/models/live/media_session_config.rb +47 -11
  103. data/lib/openai/models/live/output_audio_fixture_play_event.rb +48 -0
  104. data/lib/openai/models/live/output_audio_fixture_played_event.rb +42 -0
  105. data/lib/openai/models/live/output_audio_fixture_playing_event.rb +41 -0
  106. data/lib/openai/models/live/server_event.rb +17 -2
  107. data/lib/openai/models/live/session_accept_params.rb +47 -11
  108. data/lib/openai/models/live/session_config.rb +47 -11
  109. data/lib/openai/models/live/session_resource.rb +47 -11
  110. data/lib/openai/models/live/session_update_config.rb +38 -6
  111. data/lib/openai/models/live/session_update_event.rb +8 -8
  112. data/lib/openai/models/live/sideband_client_event.rb +57 -0
  113. data/lib/openai/models/live/sideband_server_event.rb +78 -0
  114. data/lib/openai/models/realtime/realtime_audio_config_output.rb +6 -3
  115. data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +6 -3
  116. data/lib/openai/models/realtime/realtime_response_status.rb +10 -1
  117. data/lib/openai/models/response_format_json_schema.rb +1 -1
  118. data/lib/openai/models/responses/function_tool.rb +8 -6
  119. data/lib/openai/models/responses/response.rb +2 -23
  120. data/lib/openai/models/responses/response_compact_params.rb +21 -0
  121. data/lib/openai/models/responses/response_create_params.rb +3 -6
  122. data/lib/openai/models/responses/response_error.rb +19 -1
  123. data/lib/openai/models/responses/response_format_text_config.rb +0 -4
  124. data/lib/openai/models/responses/response_function_tool_call.rb +0 -8
  125. data/lib/openai/models/responses/response_input_item.rb +107 -1
  126. data/lib/openai/models/responses/response_item.rb +107 -1
  127. data/lib/openai/models/responses/response_output_item.rb +107 -1
  128. data/lib/openai/models/responses/response_output_text.rb +0 -8
  129. data/lib/openai/models/responses/responses_client_event.rb +2 -2
  130. data/lib/openai/models/safety/safety_alert.rb +12 -1
  131. data/lib/openai/models/video_create_error.rb +19 -1
  132. data/lib/openai/models/webhooks/agent_environment_expired_webhook_event.rb +72 -0
  133. data/lib/openai/models/webhooks/agent_environment_suspended_webhook_event.rb +72 -0
  134. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +8 -3
  135. data/lib/openai/models/webhooks/webhook_create_params.rb +2 -0
  136. data/lib/openai/models/webhooks/webhook_endpoint_with_secret.rb +0 -9
  137. data/lib/openai/models/webhooks/webhook_test_params.rb +2 -0
  138. data/lib/openai/models/webhooks/webhook_update_params.rb +2 -0
  139. data/lib/openai/resources/admin/organization/external_storage.rb +1 -1
  140. data/lib/openai/resources/admin/organization/projects/api_keys.rb +61 -0
  141. data/lib/openai/resources/admin/organization/usage.rb +67 -0
  142. data/lib/openai/resources/audio/speech.rb +2 -1
  143. data/lib/openai/resources/audio/voices.rb +10 -10
  144. data/lib/openai/resources/beta/agents/environments/files.rb +3 -31
  145. data/lib/openai/resources/beta/agents/environments.rb +3 -3
  146. data/lib/openai/resources/beta/agents/sessions/artifacts.rb +5 -11
  147. data/lib/openai/resources/beta/agents/sessions/events.rb +1 -1
  148. data/lib/openai/resources/beta/agents/sessions.rb +20 -56
  149. data/lib/openai/resources/beta/agents/vaults/credentials.rb +10 -6
  150. data/lib/openai/resources/beta/agents/vaults.rb +45 -6
  151. data/lib/openai/resources/beta/agents.rb +6 -4
  152. data/lib/openai/resources/beta/responses.rb +2 -2
  153. data/lib/openai/resources/chat/completions.rb +11 -37
  154. data/lib/openai/resources/decisions.rb +9 -15
  155. data/lib/openai/resources/files.rb +0 -39
  156. data/lib/openai/resources/live/forks.rb +19 -0
  157. data/lib/openai/resources/live/sideband.rb +19 -0
  158. data/lib/openai/resources/live.rb +19 -0
  159. data/lib/openai/resources/realtime/translations.rb +19 -0
  160. data/lib/openai/resources/realtime.rb +19 -0
  161. data/lib/openai/resources/responses.rb +44 -95
  162. data/lib/openai/resources/vector_stores/file_batches.rb +0 -178
  163. data/lib/openai/resources/vector_stores/files.rb +0 -188
  164. data/lib/openai/resources/webhooks.rb +13 -29
  165. data/lib/openai/version.rb +1 -1
  166. data/lib/openai.rb +35 -0
  167. data/rbi/openai/client.rbi +0 -103
  168. data/rbi/openai/helpers/admin/organization/projects/api_keys.rbi +25 -0
  169. data/rbi/openai/helpers/beta/agents/artifacts.rbi +25 -0
  170. data/rbi/openai/helpers/beta/agents/files.rbi +48 -0
  171. data/rbi/openai/helpers/client_runtime.rbi +108 -0
  172. data/rbi/openai/helpers/files.rbi +25 -0
  173. data/rbi/openai/helpers/models/chat/parsed.rbi +21 -0
  174. data/rbi/openai/helpers/models/responses/parsed.rbi +19 -0
  175. data/rbi/openai/helpers/models/responses/response.rbi +15 -0
  176. data/rbi/openai/helpers/streaming/response_stream.rbi +301 -0
  177. data/rbi/openai/helpers/vector_stores/file_batches.rbi +102 -0
  178. data/rbi/openai/helpers/vector_stores/files.rbi +122 -0
  179. data/rbi/openai/helpers/websocket.rbi +82 -0
  180. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +6 -3
  181. data/rbi/openai/models/admin/organization/external_storage_configuration.rbi +4 -2
  182. data/rbi/openai/models/admin/organization/external_storage_create_params.rbi +63 -4
  183. data/rbi/openai/models/admin/organization/oci_external_storage_provider.rbi +71 -0
  184. data/rbi/openai/models/admin/organization/project_residency.rbi +12 -0
  185. data/rbi/openai/models/admin/organization/projects/api_key_update_params.rbi +110 -0
  186. data/rbi/openai/models/admin/organization/projects/api_key_update_scopes_params.rbi +72 -0
  187. data/rbi/openai/models/admin/organization/usage_decisions_params.rbi +229 -0
  188. data/rbi/openai/models/admin/organization/usage_decisions_response.rbi +479 -0
  189. data/rbi/openai/models/audio/speech_create_params.rbi +6 -3
  190. data/rbi/openai/models/audio/voice.rbi +21 -2
  191. data/rbi/openai/models/audio/voice_create_params.rbi +149 -4
  192. data/rbi/openai/models/beta/agent_create_params.rbi +4 -2
  193. data/rbi/openai/models/beta/agent_list_params.rbi +8 -5
  194. data/rbi/openai/models/beta/agent_session.rbi +64 -1
  195. data/rbi/openai/models/beta/agent_session_environment_expired_event.rbi +95 -0
  196. data/rbi/openai/models/beta/agent_session_environment_state.rbi +6 -0
  197. data/rbi/openai/models/beta/agent_session_environment_suspended_event.rbi +95 -0
  198. data/rbi/openai/models/beta/agent_session_event.rbi +2 -0
  199. data/rbi/openai/models/beta/agent_update_params.rbi +4 -2
  200. data/rbi/openai/models/beta/agents/environment_info.rbi +3 -0
  201. data/rbi/openai/models/beta/agents/environment_list_params.rbi +7 -7
  202. data/rbi/openai/models/beta/agents/session_create_params.rbi +62 -2
  203. data/rbi/openai/models/beta/agents/session_list_params.rbi +11 -11
  204. data/rbi/openai/models/beta/agents/session_update_params.rbi +56 -0
  205. data/rbi/openai/models/beta/agents/sessions/artifact_list_params.rbi +19 -13
  206. data/rbi/openai/models/beta/agents/vault_list_params.rbi +30 -13
  207. data/rbi/openai/models/beta/agents/vault_status_filter.rbi +1 -3
  208. data/rbi/openai/models/beta/agents/vault_update_params.rbi +87 -0
  209. data/rbi/openai/models/beta/agents/vaults/credential_list_params.rbi +30 -13
  210. data/rbi/openai/models/beta/beta_response.rbi +2 -2
  211. data/rbi/openai/models/beta/beta_response_error.rbi +24 -3
  212. data/rbi/openai/models/beta/beta_response_input_item.rbi +191 -0
  213. data/rbi/openai/models/beta/beta_response_item.rbi +189 -0
  214. data/rbi/openai/models/beta/beta_response_output_item.rbi +191 -0
  215. data/rbi/openai/models/beta/beta_responses_client_event.rbi +2 -2
  216. data/rbi/openai/models/beta/response_create_params.rbi +2 -2
  217. data/rbi/openai/models/beta/session_turn_error.rbi +3 -0
  218. data/rbi/openai/models/chat/chat_completion_audio_param.rbi +3 -3
  219. data/rbi/openai/models/chat/chat_completion_message.rbi +0 -4
  220. data/rbi/openai/models/chat/chat_completion_message_function_tool_call.rbi +0 -4
  221. data/rbi/openai/models/chat/completion_create_params.rbi +63 -78
  222. data/rbi/openai/models/conversations/conversation_item.rbi +191 -0
  223. data/rbi/openai/models/decision.rbi +14 -1
  224. data/rbi/openai/models/decision_create_params.rbi +23 -12
  225. data/rbi/openai/models/decision_input_image.rbi +4 -3
  226. data/rbi/openai/models/decision_input_message.rbi +4 -4
  227. data/rbi/openai/models/decision_input_part.rbi +2 -1
  228. data/rbi/openai/models/image_edit_completed_event.rbi +1 -0
  229. data/rbi/openai/models/image_edit_partial_image_event.rbi +1 -0
  230. data/rbi/openai/models/image_gen_completed_event.rbi +1 -0
  231. data/rbi/openai/models/image_gen_partial_image_event.rbi +1 -0
  232. data/rbi/openai/models/images_response.rbi +1 -0
  233. data/rbi/openai/models/live/built_in_voice.rbi +1 -0
  234. data/rbi/openai/models/live/client_event.rbi +4 -0
  235. data/rbi/openai/models/live/decision_create_event.rbi +55 -0
  236. data/rbi/openai/models/live/decision_event.rbi +185 -0
  237. data/rbi/openai/models/live/decision_item_create_event.rbi +338 -0
  238. data/rbi/openai/models/live/decision_item_created_event.rbi +354 -0
  239. data/rbi/openai/models/live/decision_item_delete_event.rbi +66 -0
  240. data/rbi/openai/models/live/decision_item_deleted_event.rbi +77 -0
  241. data/rbi/openai/models/live/decision_trigger.rbi +465 -0
  242. data/rbi/openai/models/live/decisions_delegation_config.rbi +393 -0
  243. data/rbi/openai/models/live/decisions_delegation_update_config.rbi +412 -0
  244. data/rbi/openai/models/live/delegation_created_event.rbi +8 -10
  245. data/rbi/openai/models/live/fork_client_event.rbi +4 -0
  246. data/rbi/openai/models/live/fork_server_event.rbi +5 -0
  247. data/rbi/openai/models/live/media_session_config.rbi +95 -14
  248. data/rbi/openai/models/live/output_audio_fixture_play_event.rbi +76 -0
  249. data/rbi/openai/models/live/output_audio_fixture_played_event.rbi +73 -0
  250. data/rbi/openai/models/live/output_audio_fixture_playing_event.rbi +72 -0
  251. data/rbi/openai/models/live/server_event.rbi +5 -0
  252. data/rbi/openai/models/live/session_accept_params.rbi +88 -12
  253. data/rbi/openai/models/live/session_config.rbi +100 -14
  254. data/rbi/openai/models/live/session_resource.rbi +81 -10
  255. data/rbi/openai/models/live/session_update_config.rbi +86 -9
  256. data/rbi/openai/models/live/session_update_event.rbi +8 -8
  257. data/rbi/openai/models/live/sideband_client_event.rbi +40 -0
  258. data/rbi/openai/models/live/sideband_server_event.rbi +47 -0
  259. data/rbi/openai/models/realtime/realtime_audio_config_output.rbi +6 -3
  260. data/rbi/openai/models/realtime/realtime_response_create_audio_output.rbi +6 -3
  261. data/rbi/openai/models/realtime/realtime_response_status.rbi +13 -1
  262. data/rbi/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbi +1 -1
  263. data/rbi/openai/models/realtime/realtime_translation_output_audio_delta_event.rbi +3 -3
  264. data/rbi/openai/models/realtime/realtime_translation_session_close_event.rbi +1 -1
  265. data/rbi/openai/models/realtime/realtime_translation_session_update_event.rbi +5 -1
  266. data/rbi/openai/models/responses/response.rbi +2 -7
  267. data/rbi/openai/models/responses/response_create_params.rbi +5 -9
  268. data/rbi/openai/models/responses/response_error.rbi +24 -3
  269. data/rbi/openai/models/responses/response_function_tool_call.rbi +0 -4
  270. data/rbi/openai/models/responses/response_function_web_search.rbi +21 -17
  271. data/rbi/openai/models/responses/response_input_item.rbi +191 -0
  272. data/rbi/openai/models/responses/response_item.rbi +189 -0
  273. data/rbi/openai/models/responses/response_output_item.rbi +191 -0
  274. data/rbi/openai/models/responses/response_output_text.rbi +0 -4
  275. data/rbi/openai/models/responses/responses_client_event.rbi +2 -2
  276. data/rbi/openai/models/safety/safety_alert.rbi +13 -1
  277. data/rbi/openai/models/video_create_error.rbi +24 -3
  278. data/rbi/openai/models/webhooks/agent_environment_expired_webhook_event.rbi +133 -0
  279. data/rbi/openai/models/webhooks/agent_environment_suspended_webhook_event.rbi +133 -0
  280. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +3 -2
  281. data/rbi/openai/models/webhooks/webhook_create_params.rbi +8 -0
  282. data/rbi/openai/models/webhooks/webhook_test_params.rbi +8 -0
  283. data/rbi/openai/models/webhooks/webhook_update_params.rbi +8 -0
  284. data/rbi/openai/resources/admin/organization/external_storage.rbi +2 -1
  285. data/rbi/openai/resources/admin/organization/projects/api_keys.rbi +48 -0
  286. data/rbi/openai/resources/admin/organization/usage.rbi +56 -0
  287. data/rbi/openai/resources/audio/speech.rbi +2 -1
  288. data/rbi/openai/resources/audio/voices.rbi +13 -10
  289. data/rbi/openai/resources/beta/agents/environments/files.rbi +3 -33
  290. data/rbi/openai/resources/beta/agents/environments.rbi +3 -3
  291. data/rbi/openai/resources/beta/agents/sessions/artifacts.rbi +5 -13
  292. data/rbi/openai/resources/beta/agents/sessions.rbi +15 -4
  293. data/rbi/openai/resources/beta/agents/vaults/credentials.rbi +9 -5
  294. data/rbi/openai/resources/beta/agents/vaults.rbi +34 -5
  295. data/rbi/openai/resources/beta/agents.rbi +6 -4
  296. data/rbi/openai/resources/beta/responses.rbi +2 -2
  297. data/rbi/openai/resources/chat/completions.rbi +26 -29
  298. data/rbi/openai/resources/decisions.rbi +9 -15
  299. data/rbi/openai/resources/files.rbi +0 -18
  300. data/rbi/openai/resources/live/forks.rbi +17 -0
  301. data/rbi/openai/resources/live/sideband.rbi +17 -0
  302. data/rbi/openai/resources/live.rbi +17 -0
  303. data/rbi/openai/resources/realtime/translations.rbi +17 -0
  304. data/rbi/openai/resources/realtime.rbi +17 -0
  305. data/rbi/openai/resources/responses.rbi +41 -333
  306. data/rbi/openai/resources/vector_stores/file_batches.rbi +0 -93
  307. data/rbi/openai/resources/vector_stores/files.rbi +0 -113
  308. data/rbi/openai/resources/webhooks.rbi +2 -0
  309. data/sig/openai/client.rbs +0 -50
  310. data/sig/openai/helpers/admin/organization/projects/api_keys.rbs +18 -0
  311. data/sig/openai/helpers/beta/agents/artifacts.rbs +17 -0
  312. data/sig/openai/helpers/beta/agents/files.rbs +30 -0
  313. data/sig/openai/helpers/client_runtime.rbs +53 -0
  314. data/sig/openai/helpers/files.rbs +12 -0
  315. data/sig/openai/helpers/models/responses/response.rbs +9 -0
  316. data/sig/openai/helpers/streaming/response_stream.rbs +37 -0
  317. data/sig/openai/helpers/vector_stores/file_batches.rbs +38 -0
  318. data/sig/openai/helpers/vector_stores/files.rbs +43 -0
  319. data/sig/openai/helpers/websocket.rbs +40 -0
  320. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +1 -0
  321. data/sig/openai/models/admin/organization/external_storage_configuration.rbs +1 -0
  322. data/sig/openai/models/admin/organization/external_storage_create_params.rbs +33 -0
  323. data/sig/openai/models/admin/organization/oci_external_storage_provider.rbs +34 -0
  324. data/sig/openai/models/admin/organization/project_residency.rbs +6 -0
  325. data/sig/openai/models/admin/organization/projects/api_key_update_params.rbs +77 -0
  326. data/sig/openai/models/admin/organization/projects/api_key_update_scopes_params.rbs +38 -0
  327. data/sig/openai/models/admin/organization/usage_decisions_params.rbs +170 -0
  328. data/sig/openai/models/admin/organization/usage_decisions_response.rbs +319 -0
  329. data/sig/openai/models/audio/speech_create_params.rbs +4 -2
  330. data/sig/openai/models/audio/voice.rbs +21 -3
  331. data/sig/openai/models/audio/voice_create_params.rbs +90 -1
  332. data/sig/openai/models/beta/agent_create_params.rbs +4 -2
  333. data/sig/openai/models/beta/agent_list_params.rbs +9 -6
  334. data/sig/openai/models/beta/agent_session.rbs +36 -2
  335. data/sig/openai/models/beta/agent_session_environment_expired_event.rbs +57 -0
  336. data/sig/openai/models/beta/agent_session_environment_state.rbs +14 -1
  337. data/sig/openai/models/beta/agent_session_environment_suspended_event.rbs +57 -0
  338. data/sig/openai/models/beta/agent_session_event.rbs +2 -0
  339. data/sig/openai/models/beta/agent_update_params.rbs +4 -2
  340. data/sig/openai/models/beta/agents/environment_info.rbs +11 -1
  341. data/sig/openai/models/beta/agents/environment_list_params.rbs +9 -9
  342. data/sig/openai/models/beta/agents/session_create_params.rbs +29 -2
  343. data/sig/openai/models/beta/agents/session_list_params.rbs +12 -12
  344. data/sig/openai/models/beta/agents/session_update_params.rbs +23 -0
  345. data/sig/openai/models/beta/agents/sessions/artifact_list_params.rbs +21 -15
  346. data/sig/openai/models/beta/agents/vault_list_params.rbs +32 -14
  347. data/sig/openai/models/beta/agents/vault_update_params.rbs +54 -0
  348. data/sig/openai/models/beta/agents/vaults/credential_list_params.rbs +32 -14
  349. data/sig/openai/models/beta/beta_response.rbs +2 -2
  350. data/sig/openai/models/beta/beta_response_error.rbs +19 -3
  351. data/sig/openai/models/beta/beta_response_input_item.rbs +110 -0
  352. data/sig/openai/models/beta/beta_response_item.rbs +110 -0
  353. data/sig/openai/models/beta/beta_response_output_item.rbs +110 -0
  354. data/sig/openai/models/beta/beta_responses_client_event.rbs +2 -2
  355. data/sig/openai/models/beta/response_create_params.rbs +2 -2
  356. data/sig/openai/models/beta/session_turn_error.rbs +4 -0
  357. data/sig/openai/models/chat/chat_completion_audio_param.rbs +2 -2
  358. data/sig/openai/models/chat/completion_create_params.rbs +2 -2
  359. data/sig/openai/models/conversations/conversation_item.rbs +110 -0
  360. data/sig/openai/models/decision.rbs +13 -0
  361. data/sig/openai/models/decision_create_params.rbs +19 -8
  362. data/sig/openai/models/decision_input_image.rbs +2 -2
  363. data/sig/openai/models/decision_input_message.rbs +2 -2
  364. data/sig/openai/models/live/built_in_voice.rbs +2 -0
  365. data/sig/openai/models/live/client_event.rbs +4 -0
  366. data/sig/openai/models/live/decision_create_event.rbs +18 -0
  367. data/sig/openai/models/live/decision_event.rbs +102 -0
  368. data/sig/openai/models/live/decision_item_create_event.rbs +183 -0
  369. data/sig/openai/models/live/decision_item_created_event.rbs +195 -0
  370. data/sig/openai/models/live/decision_item_delete_event.rbs +33 -0
  371. data/sig/openai/models/live/decision_item_deleted_event.rbs +49 -0
  372. data/sig/openai/models/live/decision_trigger.rbs +234 -0
  373. data/sig/openai/models/live/decisions_delegation_config.rbs +195 -0
  374. data/sig/openai/models/live/decisions_delegation_update_config.rbs +202 -0
  375. data/sig/openai/models/live/delegation_created_event.rbs +6 -7
  376. data/sig/openai/models/live/fork_client_event.rbs +4 -0
  377. data/sig/openai/models/live/fork_server_event.rbs +5 -0
  378. data/sig/openai/models/live/media_session_config.rbs +58 -11
  379. data/sig/openai/models/live/output_audio_fixture_play_event.rbs +42 -0
  380. data/sig/openai/models/live/output_audio_fixture_played_event.rbs +44 -0
  381. data/sig/openai/models/live/output_audio_fixture_playing_event.rbs +44 -0
  382. data/sig/openai/models/live/server_event.rbs +5 -0
  383. data/sig/openai/models/live/session_accept_params.rbs +57 -10
  384. data/sig/openai/models/live/session_config.rbs +58 -11
  385. data/sig/openai/models/live/session_resource.rbs +57 -10
  386. data/sig/openai/models/live/session_update_config.rbs +54 -3
  387. data/sig/openai/models/live/session_update_event.rbs +6 -6
  388. data/sig/openai/models/live/sideband_client_event.rbs +26 -0
  389. data/sig/openai/models/live/sideband_server_event.rbs +33 -0
  390. data/sig/openai/models/realtime/realtime_audio_config_output.rbs +6 -3
  391. data/sig/openai/models/realtime/realtime_response_create_audio_output.rbs +6 -3
  392. data/sig/openai/models/realtime/realtime_response_status.rbs +15 -3
  393. data/sig/openai/models/responses/response.rbs +2 -4
  394. data/sig/openai/models/responses/response_create_params.rbs +2 -2
  395. data/sig/openai/models/responses/response_error.rbs +19 -3
  396. data/sig/openai/models/responses/response_input_item.rbs +110 -0
  397. data/sig/openai/models/responses/response_item.rbs +110 -0
  398. data/sig/openai/models/responses/response_output_item.rbs +110 -0
  399. data/sig/openai/models/responses/responses_client_event.rbs +2 -2
  400. data/sig/openai/models/safety/safety_alert.rbs +12 -2
  401. data/sig/openai/models/video_create_error.rbs +19 -3
  402. data/sig/openai/models/webhooks/agent_environment_expired_webhook_event.rbs +70 -0
  403. data/sig/openai/models/webhooks/agent_environment_suspended_webhook_event.rbs +70 -0
  404. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +3 -1
  405. data/sig/openai/models/webhooks/webhook_create_params.rbs +4 -0
  406. data/sig/openai/models/webhooks/webhook_test_params.rbs +4 -0
  407. data/sig/openai/models/webhooks/webhook_update_params.rbs +4 -0
  408. data/sig/openai/resources/admin/organization/projects/api_keys.rbs +8 -0
  409. data/sig/openai/resources/admin/organization/usage.rbs +15 -0
  410. data/sig/openai/resources/beta/agents/environments/files.rbs +0 -17
  411. data/sig/openai/resources/beta/agents/sessions/artifacts.rbs +2 -6
  412. data/sig/openai/resources/beta/agents/sessions.rbs +4 -1
  413. data/sig/openai/resources/beta/agents/vaults/credentials.rbs +2 -1
  414. data/sig/openai/resources/beta/agents/vaults.rbs +9 -1
  415. data/sig/openai/resources/beta/agents.rbs +1 -1
  416. data/sig/openai/resources/files.rbs +0 -7
  417. data/sig/openai/resources/live/forks.rbs +8 -0
  418. data/sig/openai/resources/live/sideband.rbs +8 -0
  419. data/sig/openai/resources/live.rbs +7 -0
  420. data/sig/openai/resources/realtime/translations.rbs +7 -0
  421. data/sig/openai/resources/realtime.rbs +7 -0
  422. data/sig/openai/resources/responses.rbs +7 -31
  423. data/sig/openai/resources/vector_stores/file_batches.rbs +0 -31
  424. data/sig/openai/resources/vector_stores/files.rbs +0 -36
  425. data/sig/openai/resources/webhooks.rbs +3 -1
  426. metadata +101 -1
@@ -59,6 +59,16 @@ module OpenAI
59
59
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
60
60
  attr_accessor :metadata
61
61
 
62
+ # Optional spending limit in USD cents. Omission or null creates an unlimited
63
+ # session.
64
+ sig { returns(T.nilable(OpenAI::Beta::Agents::SessionCreateParams::SpendControl)) }
65
+ attr_reader :spend_control
66
+
67
+ sig {
68
+ params(spend_control: T.nilable(OpenAI::Beta::Agents::SessionCreateParams::SpendControl::OrHash)).void
69
+ }
70
+ attr_writer :spend_control
71
+
62
72
  # The IDs of vaults made available to the session.
63
73
  sig { returns(T.nilable(T::Array[String])) }
64
74
  attr_accessor :vault_ids
@@ -80,6 +90,8 @@ module OpenAI
80
90
 
81
91
  metadata: T.nilable(T::Hash[Symbol, String]),
82
92
 
93
+ spend_control: T.nilable(OpenAI::Beta::Agents::SessionCreateParams::SpendControl::OrHash),
94
+
83
95
  vault_ids: T.nilable(T::Array[String]),
84
96
 
85
97
  request_options: OpenAI::RequestOptions::OrHash
@@ -109,6 +121,10 @@ module OpenAI
109
121
  # characters. Omission or null defaults to an empty map.
110
122
  metadata: nil,
111
123
 
124
+ # Optional spending limit in USD cents. Omission or null creates an unlimited
125
+ # session.
126
+ spend_control: nil,
127
+
112
128
  # The IDs of vaults made available to the session.
113
129
  vault_ids: nil,
114
130
 
@@ -128,6 +144,7 @@ module OpenAI
128
144
  agent_id: String,
129
145
  input: T.nilable(OpenAI::Beta::Agents::SessionCreateParams::Input::Variants),
130
146
  metadata: T.nilable(T::Hash[Symbol, String]),
147
+ spend_control: T.nilable(OpenAI::Beta::Agents::SessionCreateParams::SpendControl),
131
148
  vault_ids: T.nilable(T::Array[String]),
132
149
  request_options: OpenAI::RequestOptions
133
150
  }
@@ -182,7 +199,9 @@ module OpenAI
182
199
  sig { params(text: T.nilable(OpenAI::Beta::AgentTextParam::OrHash)).void }
183
200
  attr_writer :text
184
201
 
185
- # Tools available to the agent. Omit to inherit, or pass null to clear them.
202
+ # Tools available to the agent. Omit to inherit, or pass null to clear them. The
203
+ # resolved tool list must fit within 3 MiB (3,145,728 bytes) of compact UTF-8
204
+ # JSON.
186
205
  sig {
187
206
  returns(
188
207
  T.nilable(
@@ -255,7 +274,9 @@ module OpenAI
255
274
  # Configuration for text generated by the agent.
256
275
  text: nil,
257
276
 
258
- # Tools available to the agent. Omit to inherit, or pass null to clear them.
277
+ # Tools available to the agent. Omit to inherit, or pass null to clear them. The
278
+ # resolved tool list must fit within 3 MiB (3,145,728 bytes) of compact UTF-8
279
+ # JSON.
259
280
 
260
281
  tools: nil
261
282
  )
@@ -340,6 +361,45 @@ module OpenAI
340
361
 
341
362
  end
342
363
 
364
+ class SpendControl < OpenAI::Internal::Type::BaseModel
365
+ OrHash = T.type_alias do
366
+ T.any(
367
+ OpenAI::Beta::Agents::SessionCreateParams::SpendControl,
368
+ OpenAI::Internal::AnyHash
369
+ )
370
+ end
371
+
372
+ # Positive USD cents, or null to remove the limit.
373
+ sig { returns(T.nilable(Integer)) }
374
+ attr_accessor :limit
375
+
376
+ # Optional spending limit in USD cents. Omission or null creates an unlimited
377
+ # session.
378
+ sig do
379
+ params(
380
+
381
+ limit: T.nilable(Integer)
382
+ )
383
+ .returns(T.attached_class)
384
+ end
385
+ def self.new(
386
+
387
+ # Positive USD cents, or null to remove the limit.
388
+
389
+ limit:
390
+ )
391
+ end
392
+
393
+ sig do
394
+ override.returns(
395
+ {limit: T.nilable(Integer)}
396
+ )
397
+ end
398
+ def to_hash
399
+ end
400
+
401
+ end
402
+
343
403
  end
344
404
 
345
405
  end
@@ -34,12 +34,14 @@ module OpenAI
34
34
  sig { params(agent_id: String).void }
35
35
  attr_writer :agent_id
36
36
 
37
- # The maximum number of resources to return.
37
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
38
38
  sig { returns(T.nilable(Integer)) }
39
- attr_accessor :limit
39
+ attr_reader :limit
40
40
 
41
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
42
- # `desc` for descending order. Defaults to `desc`.
41
+ sig { params(limit: Integer).void }
42
+ attr_writer :limit
43
+
44
+ # The order in which resources are returned. Defaults to `desc`.
43
45
  sig { returns(T.nilable(OpenAI::Beta::Agents::SessionListParams::Order::OrSymbol)) }
44
46
  attr_reader :order
45
47
 
@@ -53,7 +55,7 @@ module OpenAI
53
55
 
54
56
  agent_id: String,
55
57
 
56
- limit: T.nilable(Integer),
58
+ limit: Integer,
57
59
 
58
60
  order: OpenAI::Beta::Agents::SessionListParams::Order::OrSymbol,
59
61
 
@@ -70,11 +72,10 @@ module OpenAI
70
72
  # all agents.
71
73
  agent_id: nil,
72
74
 
73
- # The maximum number of resources to return.
75
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
74
76
  limit: nil,
75
77
 
76
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
77
- # `desc` for descending order. Defaults to `desc`.
78
+ # The order in which resources are returned. Defaults to `desc`.
78
79
  order: nil,
79
80
 
80
81
  request_options: {}
@@ -86,7 +87,7 @@ module OpenAI
86
87
  {
87
88
  after: String,
88
89
  agent_id: String,
89
- limit: T.nilable(Integer),
90
+ limit: Integer,
90
91
  order: OpenAI::Beta::Agents::SessionListParams::Order::OrSymbol,
91
92
  request_options: OpenAI::RequestOptions
92
93
  }
@@ -95,8 +96,7 @@ module OpenAI
95
96
  def to_hash
96
97
  end
97
98
 
98
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
99
- # `desc` for descending order. Defaults to `desc`.
99
+ # The order in which resources are returned. Defaults to `desc`.
100
100
  module Order
101
101
  extend OpenAI::Internal::Type::Enum
102
102
 
@@ -35,6 +35,16 @@ module OpenAI
35
35
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
36
36
  attr_accessor :metadata
37
37
 
38
+ # Omit to retain the limit; null or a null limit removes it without resetting
39
+ # spend.
40
+ sig { returns(T.nilable(OpenAI::Beta::Agents::SessionUpdateParams::SpendControl)) }
41
+ attr_reader :spend_control
42
+
43
+ sig {
44
+ params(spend_control: T.nilable(OpenAI::Beta::Agents::SessionUpdateParams::SpendControl::OrHash)).void
45
+ }
46
+ attr_writer :spend_control
47
+
38
48
  sig do
39
49
  params(
40
50
 
@@ -44,6 +54,8 @@ module OpenAI
44
54
 
45
55
  metadata: T.nilable(T::Hash[Symbol, String]),
46
56
 
57
+ spend_control: T.nilable(OpenAI::Beta::Agents::SessionUpdateParams::SpendControl::OrHash),
58
+
47
59
  request_options: OpenAI::RequestOptions::OrHash
48
60
  )
49
61
  .returns(T.attached_class)
@@ -60,6 +72,10 @@ module OpenAI
60
72
  # characters.
61
73
  metadata: nil,
62
74
 
75
+ # Omit to retain the limit; null or a null limit removes it without resetting
76
+ # spend.
77
+ spend_control: nil,
78
+
63
79
  request_options: {}
64
80
  )
65
81
  end
@@ -70,6 +86,7 @@ module OpenAI
70
86
  session_id: String,
71
87
  agent: OpenAI::Beta::Agents::SessionUpdateParams::Agent,
72
88
  metadata: T.nilable(T::Hash[Symbol, String]),
89
+ spend_control: T.nilable(OpenAI::Beta::Agents::SessionUpdateParams::SpendControl),
73
90
  request_options: OpenAI::RequestOptions
74
91
  }
75
92
  )
@@ -242,6 +259,45 @@ module OpenAI
242
259
  end
243
260
  end
244
261
 
262
+ class SpendControl < OpenAI::Internal::Type::BaseModel
263
+ OrHash = T.type_alias do
264
+ T.any(
265
+ OpenAI::Beta::Agents::SessionUpdateParams::SpendControl,
266
+ OpenAI::Internal::AnyHash
267
+ )
268
+ end
269
+
270
+ # Positive USD cents, or null to remove the limit.
271
+ sig { returns(T.nilable(Integer)) }
272
+ attr_accessor :limit
273
+
274
+ # Omit to retain the limit; null or a null limit removes it without resetting
275
+ # spend.
276
+ sig do
277
+ params(
278
+
279
+ limit: T.nilable(Integer)
280
+ )
281
+ .returns(T.attached_class)
282
+ end
283
+ def self.new(
284
+
285
+ # Positive USD cents, or null to remove the limit.
286
+
287
+ limit:
288
+ )
289
+ end
290
+
291
+ sig do
292
+ override.returns(
293
+ {limit: T.nilable(Integer)}
294
+ )
295
+ end
296
+ def to_hash
297
+ end
298
+
299
+ end
300
+
245
301
  end
246
302
 
247
303
  end
@@ -24,19 +24,25 @@ module OpenAI
24
24
  sig { returns(String) }
25
25
  attr_accessor :session_id
26
26
 
27
- # Return artifacts after this immutable artifact ID.
27
+ # Return resources after this resource ID in the selected order.
28
28
  sig { returns(T.nilable(String)) }
29
- attr_accessor :after
29
+ attr_reader :after
30
+
31
+ sig { params(after: String).void }
32
+ attr_writer :after
30
33
 
31
34
  # Restrict the listing to artifacts produced by this environment.
32
35
  sig { returns(T.nilable(String)) }
33
36
  attr_accessor :environment_id
34
37
 
35
- # The maximum number of artifacts to return, between 1 and 100.
38
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
36
39
  sig { returns(T.nilable(Integer)) }
37
- attr_accessor :limit
40
+ attr_reader :limit
41
+
42
+ sig { params(limit: Integer).void }
43
+ attr_writer :limit
38
44
 
39
- # Sort by creation time and ID. Defaults to descending.
45
+ # The order in which resources are returned. Defaults to `desc`.
40
46
  sig { returns(T.nilable(OpenAI::Beta::Agents::Sessions::ArtifactListParams::Order::OrSymbol)) }
41
47
  attr_reader :order
42
48
 
@@ -48,11 +54,11 @@ module OpenAI
48
54
 
49
55
  session_id: String,
50
56
 
51
- after: T.nilable(String),
57
+ after: String,
52
58
 
53
59
  environment_id: T.nilable(String),
54
60
 
55
- limit: T.nilable(Integer),
61
+ limit: Integer,
56
62
 
57
63
  order: OpenAI::Beta::Agents::Sessions::ArtifactListParams::Order::OrSymbol,
58
64
 
@@ -64,16 +70,16 @@ module OpenAI
64
70
 
65
71
  session_id:,
66
72
 
67
- # Return artifacts after this immutable artifact ID.
73
+ # Return resources after this resource ID in the selected order.
68
74
  after: nil,
69
75
 
70
76
  # Restrict the listing to artifacts produced by this environment.
71
77
  environment_id: nil,
72
78
 
73
- # The maximum number of artifacts to return, between 1 and 100.
79
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
74
80
  limit: nil,
75
81
 
76
- # Sort by creation time and ID. Defaults to descending.
82
+ # The order in which resources are returned. Defaults to `desc`.
77
83
  order: nil,
78
84
 
79
85
  request_options: {}
@@ -84,9 +90,9 @@ module OpenAI
84
90
  override.returns(
85
91
  {
86
92
  session_id: String,
87
- after: T.nilable(String),
93
+ after: String,
88
94
  environment_id: T.nilable(String),
89
- limit: T.nilable(Integer),
95
+ limit: Integer,
90
96
  order: OpenAI::Beta::Agents::Sessions::ArtifactListParams::Order::OrSymbol,
91
97
  request_options: OpenAI::RequestOptions
92
98
  }
@@ -95,7 +101,7 @@ module OpenAI
95
101
  def to_hash
96
102
  end
97
103
 
98
- # Sort by creation time and ID. Defaults to descending.
104
+ # The order in which resources are returned. Defaults to `desc`.
99
105
  module Order
100
106
  extend OpenAI::Internal::Type::Enum
101
107
 
@@ -26,13 +26,24 @@ module OpenAI
26
26
  sig { params(after: String).void }
27
27
  attr_writer :after
28
28
 
29
- # The maximum number of resources to return. Defaults to 20. Values are clamped
30
- # between 1 and 100.
29
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
31
30
  sig { returns(T.nilable(Integer)) }
32
- attr_accessor :limit
31
+ attr_reader :limit
33
32
 
34
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
35
- # `desc` for descending order. Defaults to `desc`.
33
+ sig { params(limit: Integer).void }
34
+ attr_writer :limit
35
+
36
+ # Exact string matches supplied as `metadata[key]=value`. All supplied pairs must
37
+ # match. Up to 16 pairs, with keys from 1 to 64 characters and values up to 512
38
+ # characters. Filtering is eventually consistent; metadata changes may take time
39
+ # to appear.
40
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
41
+ attr_reader :metadata
42
+
43
+ sig { params(metadata: T::Hash[Symbol, String]).void }
44
+ attr_writer :metadata
45
+
46
+ # The order in which resources are returned. Defaults to `desc`.
36
47
  sig { returns(T.nilable(OpenAI::Beta::Agents::VaultListParams::Order::OrSymbol)) }
37
48
  attr_reader :order
38
49
 
@@ -69,7 +80,9 @@ module OpenAI
69
80
 
70
81
  after: String,
71
82
 
72
- limit: T.nilable(Integer),
83
+ limit: Integer,
84
+
85
+ metadata: T::Hash[Symbol, String],
73
86
 
74
87
  order: OpenAI::Beta::Agents::VaultListParams::Order::OrSymbol,
75
88
 
@@ -87,12 +100,16 @@ module OpenAI
87
100
  # Return resources after this resource ID in the selected order.
88
101
  after: nil,
89
102
 
90
- # The maximum number of resources to return. Defaults to 20. Values are clamped
91
- # between 1 and 100.
103
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
92
104
  limit: nil,
93
105
 
94
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
95
- # `desc` for descending order. Defaults to `desc`.
106
+ # Exact string matches supplied as `metadata[key]=value`. All supplied pairs must
107
+ # match. Up to 16 pairs, with keys from 1 to 64 characters and values up to 512
108
+ # characters. Filtering is eventually consistent; metadata changes may take time
109
+ # to appear.
110
+ metadata: nil,
111
+
112
+ # The order in which resources are returned. Defaults to `desc`.
96
113
  order: nil,
97
114
 
98
115
  # Filter by one status or a list, such as `status=active` or
@@ -107,7 +124,8 @@ module OpenAI
107
124
  override.returns(
108
125
  {
109
126
  after: String,
110
- limit: T.nilable(Integer),
127
+ limit: Integer,
128
+ metadata: T::Hash[Symbol, String],
111
129
  order: OpenAI::Beta::Agents::VaultListParams::Order::OrSymbol,
112
130
  status: T.any(
113
131
  OpenAI::Beta::Agents::VaultStatus::OrSymbol,
@@ -120,8 +138,7 @@ module OpenAI
120
138
  def to_hash
121
139
  end
122
140
 
123
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
124
- # `desc` for descending order. Defaults to `desc`.
141
+ # The order in which resources are returned. Defaults to `desc`.
125
142
  module Order
126
143
  extend OpenAI::Internal::Type::Enum
127
144
 
@@ -23,9 +23,7 @@ module OpenAI
23
23
  end
24
24
 
25
25
  VaultStatusArray = T.let(
26
- OpenAI::Internal::Type::ArrayOf[
27
- enum: -> { OpenAI::Models::Beta::Agents::VaultStatus }
28
- ],
26
+ OpenAI::Internal::Type::ArrayOf[enum: -> { OpenAI::Models::Beta::Agents::VaultStatus }],
29
27
  OpenAI::Internal::Type::Converter
30
28
  )
31
29
 
@@ -0,0 +1,87 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+
6
+ module Beta
7
+
8
+ module Agents
9
+
10
+ class VaultUpdateParams < OpenAI::Internal::Type::BaseModel
11
+
12
+ extend OpenAI::Internal::Type::RequestParameters::Converter
13
+ include OpenAI::Internal::Type::RequestParameters
14
+
15
+ OrHash = T.type_alias do
16
+ T.any(
17
+ OpenAI::Beta::Agents::VaultUpdateParams,
18
+ OpenAI::Internal::AnyHash
19
+ )
20
+ end
21
+
22
+ sig { returns(String) }
23
+ attr_accessor :vault_id
24
+
25
+ # Replaces all metadata. Omit to leave unchanged, or pass {} to clear it. Up to 16
26
+ # string key-value pairs, with keys up to 64 and values up to 512 characters.
27
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
28
+ attr_reader :metadata
29
+
30
+ sig { params(metadata: T::Hash[Symbol, String]).void }
31
+ attr_writer :metadata
32
+
33
+ # A replacement name. Omit to leave unchanged, or pass null to clear it. The name
34
+ # is trimmed before storage. It must contain 1 to 256 UTF-8 bytes after trimming.
35
+ sig { returns(T.nilable(String)) }
36
+ attr_accessor :name
37
+
38
+ sig do
39
+ params(
40
+
41
+ vault_id: String,
42
+
43
+ metadata: T::Hash[Symbol, String],
44
+
45
+ name: T.nilable(String),
46
+
47
+ request_options: OpenAI::RequestOptions::OrHash
48
+ )
49
+ .returns(T.attached_class)
50
+ end
51
+ def self.new(
52
+
53
+ vault_id:,
54
+
55
+ # Replaces all metadata. Omit to leave unchanged, or pass {} to clear it. Up to 16
56
+ # string key-value pairs, with keys up to 64 and values up to 512 characters.
57
+ metadata: nil,
58
+
59
+ # A replacement name. Omit to leave unchanged, or pass null to clear it. The name
60
+ # is trimmed before storage. It must contain 1 to 256 UTF-8 bytes after trimming.
61
+ name: nil,
62
+
63
+ request_options: {}
64
+ )
65
+ end
66
+
67
+ sig do
68
+ override.returns(
69
+ {
70
+ vault_id: String,
71
+ metadata: T::Hash[Symbol, String],
72
+ name: T.nilable(String),
73
+ request_options: OpenAI::RequestOptions
74
+ }
75
+ )
76
+ end
77
+ def to_hash
78
+ end
79
+
80
+ end
81
+
82
+ end
83
+
84
+ end
85
+
86
+ end
87
+ end
@@ -31,13 +31,24 @@ module OpenAI
31
31
  sig { params(after: String).void }
32
32
  attr_writer :after
33
33
 
34
- # The maximum number of resources to return. Defaults to 20. Values are clamped
35
- # between 1 and 100.
34
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
36
35
  sig { returns(T.nilable(Integer)) }
37
- attr_accessor :limit
36
+ attr_reader :limit
38
37
 
39
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
40
- # `desc` for descending order. Defaults to `desc`.
38
+ sig { params(limit: Integer).void }
39
+ attr_writer :limit
40
+
41
+ # Exact string matches supplied as `metadata[key]=value`. All supplied pairs must
42
+ # match. Up to 16 pairs, with keys from 1 to 64 characters and values up to 512
43
+ # characters. Filtering is eventually consistent; metadata changes may take time
44
+ # to appear.
45
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
46
+ attr_reader :metadata
47
+
48
+ sig { params(metadata: T::Hash[Symbol, String]).void }
49
+ attr_writer :metadata
50
+
51
+ # The order in which resources are returned. Defaults to `desc`.
41
52
  sig { returns(T.nilable(OpenAI::Beta::Agents::Vaults::CredentialListParams::Order::OrSymbol)) }
42
53
  attr_reader :order
43
54
 
@@ -76,7 +87,9 @@ module OpenAI
76
87
 
77
88
  after: String,
78
89
 
79
- limit: T.nilable(Integer),
90
+ limit: Integer,
91
+
92
+ metadata: T::Hash[Symbol, String],
80
93
 
81
94
  order: OpenAI::Beta::Agents::Vaults::CredentialListParams::Order::OrSymbol,
82
95
 
@@ -96,12 +109,16 @@ module OpenAI
96
109
  # Return resources after this resource ID in the selected order.
97
110
  after: nil,
98
111
 
99
- # The maximum number of resources to return. Defaults to 20. Values are clamped
100
- # between 1 and 100.
112
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
101
113
  limit: nil,
102
114
 
103
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
104
- # `desc` for descending order. Defaults to `desc`.
115
+ # Exact string matches supplied as `metadata[key]=value`. All supplied pairs must
116
+ # match. Up to 16 pairs, with keys from 1 to 64 characters and values up to 512
117
+ # characters. Filtering is eventually consistent; metadata changes may take time
118
+ # to appear.
119
+ metadata: nil,
120
+
121
+ # The order in which resources are returned. Defaults to `desc`.
105
122
  order: nil,
106
123
 
107
124
  # Filter by one status or a list, such as `status=active` or
@@ -117,7 +134,8 @@ module OpenAI
117
134
  {
118
135
  vault_id: String,
119
136
  after: String,
120
- limit: T.nilable(Integer),
137
+ limit: Integer,
138
+ metadata: T::Hash[Symbol, String],
121
139
  order: OpenAI::Beta::Agents::Vaults::CredentialListParams::Order::OrSymbol,
122
140
  status: T.any(
123
141
  OpenAI::Beta::Agents::VaultStatus::OrSymbol,
@@ -130,8 +148,7 @@ module OpenAI
130
148
  def to_hash
131
149
  end
132
150
 
133
- # Sort order by the `created_at` timestamp. Use `asc` for ascending order or
134
- # `desc` for descending order. Defaults to `desc`.
151
+ # The order in which resources are returned. Defaults to `desc`.
135
152
  module Order
136
153
  extend OpenAI::Internal::Type::Enum
137
154
 
@@ -246,7 +246,7 @@ module OpenAI
246
246
 
247
247
  # A stable identifier used to help detect users of your application that may be
248
248
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
249
- # identifies each user, with a maximum length of 64 characters. We recommend
249
+ # identifies each user, with a maximum length of 128 characters. We recommend
250
250
  # hashing their username or email address, in order to avoid sending us any
251
251
  # identifying information.
252
252
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -645,7 +645,7 @@ module OpenAI
645
645
 
646
646
  # A stable identifier used to help detect users of your application that may be
647
647
  # violating OpenAI's usage policies. The IDs should be a string that uniquely
648
- # identifies each user, with a maximum length of 64 characters. We recommend
648
+ # identifies each user, with a maximum length of 128 characters. We recommend
649
649
  # hashing their username or email address, in order to avoid sending us any
650
650
  # identifying information.
651
651
  # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
@@ -30,6 +30,14 @@ module OpenAI
30
30
  sig { params(misalignment: OpenAI::Beta::BetaResponseError::Misalignment::OrHash).void }
31
31
  attr_writer :misalignment
32
32
 
33
+ # The request parameter associated with the error, or null if none was recorded.
34
+ sig { returns(T.nilable(String)) }
35
+ attr_accessor :param
36
+
37
+ # The original error type, or null if it was not recorded.
38
+ sig { returns(T.nilable(String)) }
39
+ attr_accessor :type
40
+
33
41
  # An error object returned when the model fails to generate a Response.
34
42
  sig do
35
43
  params(
@@ -38,7 +46,11 @@ module OpenAI
38
46
 
39
47
  message: String,
40
48
 
41
- misalignment: OpenAI::Beta::BetaResponseError::Misalignment::OrHash
49
+ misalignment: OpenAI::Beta::BetaResponseError::Misalignment::OrHash,
50
+
51
+ param: T.nilable(String),
52
+
53
+ type: T.nilable(String)
42
54
  )
43
55
  .returns(T.attached_class)
44
56
  end
@@ -50,7 +62,14 @@ module OpenAI
50
62
  # A human-readable description of the error.
51
63
  message:,
52
64
 
53
- misalignment: nil
65
+ misalignment: nil,
66
+
67
+ # The request parameter associated with the error, or null if none was recorded.
68
+ param: nil,
69
+
70
+ # The original error type, or null if it was not recorded.
71
+
72
+ type: nil
54
73
  )
55
74
  end
56
75
 
@@ -59,7 +78,9 @@ module OpenAI
59
78
  {
60
79
  code: OpenAI::Beta::BetaResponseError::Code::TaggedSymbol,
61
80
  message: String,
62
- misalignment: OpenAI::Beta::BetaResponseError::Misalignment
81
+ misalignment: OpenAI::Beta::BetaResponseError::Misalignment,
82
+ param: T.nilable(String),
83
+ type: T.nilable(String)
63
84
  }
64
85
  )
65
86
  end