openai 0.60.0 → 0.62.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 (667) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +38 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +73 -18
  5. data/lib/openai/internal/next_cursor_page.rb +92 -0
  6. data/lib/openai/internal/transport/base_client.rb +25 -3
  7. data/lib/openai/models/admin/organization/admin_api_key.rb +122 -0
  8. data/lib/openai/models/admin/organization/admin_api_key_create_params.rb +24 -0
  9. data/lib/openai/models/admin/organization/admin_api_key_create_response.rb +23 -0
  10. data/lib/openai/models/admin/organization/admin_api_key_delete_params.rb +26 -0
  11. data/lib/openai/models/admin/organization/admin_api_key_delete_response.rb +32 -0
  12. data/lib/openai/models/admin/organization/admin_api_key_list_params.rb +53 -0
  13. data/lib/openai/models/admin/organization/admin_api_key_retrieve_params.rb +26 -0
  14. data/lib/openai/models/admin/organization/audit_log_list_params.rb +209 -0
  15. data/lib/openai/models/admin/organization/audit_log_list_response.rb +2199 -0
  16. data/lib/openai/models/admin/organization/certificate.rb +122 -0
  17. data/lib/openai/models/admin/organization/certificate_activate_params.rb +24 -0
  18. data/lib/openai/models/admin/organization/certificate_activate_response.rb +83 -0
  19. data/lib/openai/models/admin/organization/certificate_create_params.rb +34 -0
  20. data/lib/openai/models/admin/organization/certificate_deactivate_params.rb +24 -0
  21. data/lib/openai/models/admin/organization/certificate_deactivate_response.rb +83 -0
  22. data/lib/openai/models/admin/organization/certificate_delete_params.rb +24 -0
  23. data/lib/openai/models/admin/organization/certificate_delete_response.rb +29 -0
  24. data/lib/openai/models/admin/organization/certificate_list_params.rb +62 -0
  25. data/lib/openai/models/admin/organization/certificate_list_response.rb +83 -0
  26. data/lib/openai/models/admin/organization/certificate_retrieve_params.rb +48 -0
  27. data/lib/openai/models/admin/organization/certificate_update_params.rb +33 -0
  28. data/lib/openai/models/admin/organization/group.rb +59 -0
  29. data/lib/openai/models/admin/organization/group_create_params.rb +26 -0
  30. data/lib/openai/models/admin/organization/group_delete_params.rb +24 -0
  31. data/lib/openai/models/admin/organization/group_delete_response.rb +39 -0
  32. data/lib/openai/models/admin/organization/group_list_params.rb +60 -0
  33. data/lib/openai/models/admin/organization/group_update_params.rb +33 -0
  34. data/lib/openai/models/admin/organization/group_update_response.rb +51 -0
  35. data/lib/openai/models/admin/organization/groups/organization_group_user.rb +41 -0
  36. data/lib/openai/models/admin/organization/groups/role_create_params.rb +35 -0
  37. data/lib/openai/models/admin/organization/groups/role_create_response.rb +87 -0
  38. data/lib/openai/models/admin/organization/groups/role_delete_params.rb +32 -0
  39. data/lib/openai/models/admin/organization/groups/role_delete_response.rb +38 -0
  40. data/lib/openai/models/admin/organization/groups/role_list_params.rb +66 -0
  41. data/lib/openai/models/admin/organization/groups/role_list_response.rb +108 -0
  42. data/lib/openai/models/admin/organization/groups/user_create_params.rb +35 -0
  43. data/lib/openai/models/admin/organization/groups/user_create_response.rb +41 -0
  44. data/lib/openai/models/admin/organization/groups/user_delete_params.rb +32 -0
  45. data/lib/openai/models/admin/organization/groups/user_delete_response.rb +33 -0
  46. data/lib/openai/models/admin/organization/groups/user_list_params.rb +67 -0
  47. data/lib/openai/models/admin/organization/invite.rb +146 -0
  48. data/lib/openai/models/admin/organization/invite_create_params.rb +91 -0
  49. data/lib/openai/models/admin/organization/invite_delete_params.rb +24 -0
  50. data/lib/openai/models/admin/organization/invite_delete_response.rb +35 -0
  51. data/lib/openai/models/admin/organization/invite_list_params.rb +41 -0
  52. data/lib/openai/models/admin/organization/invite_retrieve_params.rb +24 -0
  53. data/lib/openai/models/admin/organization/organization_user.rb +242 -0
  54. data/lib/openai/models/admin/organization/project.rb +71 -0
  55. data/lib/openai/models/admin/organization/project_archive_params.rb +24 -0
  56. data/lib/openai/models/admin/organization/project_create_params.rb +48 -0
  57. data/lib/openai/models/admin/organization/project_list_params.rb +50 -0
  58. data/lib/openai/models/admin/organization/project_retrieve_params.rb +24 -0
  59. data/lib/openai/models/admin/organization/project_update_params.rb +49 -0
  60. data/lib/openai/models/admin/organization/projects/api_key_delete_params.rb +32 -0
  61. data/lib/openai/models/admin/organization/projects/api_key_delete_response.rb +34 -0
  62. data/lib/openai/models/admin/organization/projects/api_key_list_params.rb +51 -0
  63. data/lib/openai/models/admin/organization/projects/api_key_retrieve_params.rb +32 -0
  64. data/lib/openai/models/admin/organization/projects/certificate_activate_params.rb +32 -0
  65. data/lib/openai/models/admin/organization/projects/certificate_activate_response.rb +85 -0
  66. data/lib/openai/models/admin/organization/projects/certificate_deactivate_params.rb +32 -0
  67. data/lib/openai/models/admin/organization/projects/certificate_deactivate_response.rb +85 -0
  68. data/lib/openai/models/admin/organization/projects/certificate_list_params.rb +72 -0
  69. data/lib/openai/models/admin/organization/projects/certificate_list_response.rb +85 -0
  70. data/lib/openai/models/admin/organization/projects/group_create_params.rb +43 -0
  71. data/lib/openai/models/admin/organization/projects/group_delete_params.rb +32 -0
  72. data/lib/openai/models/admin/organization/projects/group_delete_response.rb +33 -0
  73. data/lib/openai/models/admin/organization/projects/group_list_params.rb +67 -0
  74. data/lib/openai/models/admin/organization/projects/groups/role_create_params.rb +44 -0
  75. data/lib/openai/models/admin/organization/projects/groups/role_create_response.rb +89 -0
  76. data/lib/openai/models/admin/organization/projects/groups/role_delete_params.rb +40 -0
  77. data/lib/openai/models/admin/organization/projects/groups/role_delete_response.rb +40 -0
  78. data/lib/openai/models/admin/organization/projects/groups/role_list_params.rb +76 -0
  79. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +110 -0
  80. data/lib/openai/models/admin/organization/projects/project_api_key.rb +200 -0
  81. data/lib/openai/models/admin/organization/projects/project_group.rb +67 -0
  82. data/lib/openai/models/admin/organization/projects/project_rate_limit.rb +91 -0
  83. data/lib/openai/models/admin/organization/projects/project_service_account.rb +72 -0
  84. data/lib/openai/models/admin/organization/projects/project_user.rb +67 -0
  85. data/lib/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rb +61 -0
  86. data/lib/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rb +82 -0
  87. data/lib/openai/models/admin/organization/projects/role_create_params.rb +51 -0
  88. data/lib/openai/models/admin/organization/projects/role_delete_params.rb +32 -0
  89. data/lib/openai/models/admin/organization/projects/role_delete_response.rb +41 -0
  90. data/lib/openai/models/admin/organization/projects/role_list_params.rb +67 -0
  91. data/lib/openai/models/admin/organization/projects/role_update_params.rb +58 -0
  92. data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +35 -0
  93. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +100 -0
  94. data/lib/openai/models/admin/organization/projects/service_account_delete_params.rb +32 -0
  95. data/lib/openai/models/admin/organization/projects/service_account_delete_response.rb +34 -0
  96. data/lib/openai/models/admin/organization/projects/service_account_list_params.rb +51 -0
  97. data/lib/openai/models/admin/organization/projects/service_account_retrieve_params.rb +32 -0
  98. data/lib/openai/models/admin/organization/projects/user_create_params.rb +51 -0
  99. data/lib/openai/models/admin/organization/projects/user_delete_params.rb +32 -0
  100. data/lib/openai/models/admin/organization/projects/user_delete_response.rb +34 -0
  101. data/lib/openai/models/admin/organization/projects/user_list_params.rb +51 -0
  102. data/lib/openai/models/admin/organization/projects/user_retrieve_params.rb +32 -0
  103. data/lib/openai/models/admin/organization/projects/user_update_params.rb +42 -0
  104. data/lib/openai/models/admin/organization/projects/users/role_create_params.rb +44 -0
  105. data/lib/openai/models/admin/organization/projects/users/role_create_response.rb +43 -0
  106. data/lib/openai/models/admin/organization/projects/users/role_delete_params.rb +40 -0
  107. data/lib/openai/models/admin/organization/projects/users/role_delete_response.rb +40 -0
  108. data/lib/openai/models/admin/organization/projects/users/role_list_params.rb +76 -0
  109. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +110 -0
  110. data/lib/openai/models/admin/organization/role.rb +75 -0
  111. data/lib/openai/models/admin/organization/role_create_params.rb +42 -0
  112. data/lib/openai/models/admin/organization/role_delete_params.rb +24 -0
  113. data/lib/openai/models/admin/organization/role_delete_response.rb +39 -0
  114. data/lib/openai/models/admin/organization/role_list_params.rb +57 -0
  115. data/lib/openai/models/admin/organization/role_update_params.rb +49 -0
  116. data/lib/openai/models/admin/organization/usage_audio_speeches_params.rb +135 -0
  117. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +744 -0
  118. data/lib/openai/models/admin/organization/usage_audio_transcriptions_params.rb +136 -0
  119. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +744 -0
  120. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_params.rb +109 -0
  121. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +744 -0
  122. data/lib/openai/models/admin/organization/usage_completions_params.rb +146 -0
  123. data/lib/openai/models/admin/organization/usage_completions_response.rb +744 -0
  124. data/lib/openai/models/admin/organization/usage_costs_params.rb +112 -0
  125. data/lib/openai/models/admin/organization/usage_costs_response.rb +744 -0
  126. data/lib/openai/models/admin/organization/usage_embeddings_params.rb +134 -0
  127. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +744 -0
  128. data/lib/openai/models/admin/organization/usage_images_params.rb +181 -0
  129. data/lib/openai/models/admin/organization/usage_images_response.rb +744 -0
  130. data/lib/openai/models/admin/organization/usage_moderations_params.rb +134 -0
  131. data/lib/openai/models/admin/organization/usage_moderations_response.rb +744 -0
  132. data/lib/openai/models/admin/organization/usage_vector_stores_params.rb +107 -0
  133. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +744 -0
  134. data/lib/openai/models/admin/organization/user_delete_params.rb +24 -0
  135. data/lib/openai/models/admin/organization/user_delete_response.rb +32 -0
  136. data/lib/openai/models/admin/organization/user_list_params.rb +49 -0
  137. data/lib/openai/models/admin/organization/user_retrieve_params.rb +24 -0
  138. data/lib/openai/models/admin/organization/user_update_params.rb +57 -0
  139. data/lib/openai/models/admin/organization/users/role_create_params.rb +35 -0
  140. data/lib/openai/models/admin/organization/users/role_create_response.rb +41 -0
  141. data/lib/openai/models/admin/organization/users/role_delete_params.rb +32 -0
  142. data/lib/openai/models/admin/organization/users/role_delete_response.rb +38 -0
  143. data/lib/openai/models/admin/organization/users/role_list_params.rb +66 -0
  144. data/lib/openai/models/admin/organization/users/role_list_response.rb +108 -0
  145. data/lib/openai/models/chat/chat_completion_token_logprob.rb +1 -2
  146. data/lib/openai/models/chat/completion_create_params.rb +4 -3
  147. data/lib/openai/models/image_edit_params.rb +85 -31
  148. data/lib/openai/models/image_generate_params.rb +78 -26
  149. data/lib/openai/models/image_model.rb +5 -2
  150. data/lib/openai/models/realtime/audio_transcription.rb +37 -5
  151. data/lib/openai/models/realtime/client_secret_create_response.rb +1 -2
  152. data/lib/openai/models/realtime/realtime_audio_config_input.rb +3 -0
  153. data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +3 -0
  154. data/lib/openai/models/realtime/realtime_reasoning.rb +24 -0
  155. data/lib/openai/models/realtime/realtime_reasoning_effort.rb +22 -0
  156. data/lib/openai/models/realtime/realtime_response_create_params.rb +18 -1
  157. data/lib/openai/models/realtime/realtime_session.rb +6 -0
  158. data/lib/openai/models/realtime/realtime_session_create_request.rb +21 -1
  159. data/lib/openai/models/realtime/realtime_session_create_response.rb +41 -17
  160. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +3 -0
  161. data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +3 -0
  162. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +9 -5
  163. data/lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb +2 -1
  164. data/lib/openai/models/realtime/realtime_translation_client_event.rb +45 -0
  165. data/lib/openai/models/realtime/realtime_translation_client_secret_create_request.rb +85 -0
  166. data/lib/openai/models/realtime/realtime_translation_client_secret_create_response.rb +42 -0
  167. data/lib/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rb +51 -0
  168. data/lib/openai/models/realtime/realtime_translation_input_transcript_delta_event.rb +55 -0
  169. data/lib/openai/models/realtime/realtime_translation_output_audio_delta_event.rb +89 -0
  170. data/lib/openai/models/realtime/realtime_translation_output_transcript_delta_event.rb +54 -0
  171. data/lib/openai/models/realtime/realtime_translation_server_event.rb +53 -0
  172. data/lib/openai/models/realtime/realtime_translation_session.rb +158 -0
  173. data/lib/openai/models/realtime/realtime_translation_session_close_event.rb +30 -0
  174. data/lib/openai/models/realtime/realtime_translation_session_closed_event.rb +28 -0
  175. data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +138 -0
  176. data/lib/openai/models/realtime/realtime_translation_session_created_event.rb +38 -0
  177. data/lib/openai/models/realtime/realtime_translation_session_update_event.rb +43 -0
  178. data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +129 -0
  179. data/lib/openai/models/realtime/realtime_translation_session_updated_event.rb +37 -0
  180. data/lib/openai/models/realtime/transcription_session_updated_event.rb +1 -2
  181. data/lib/openai/models/responses/response.rb +4 -3
  182. data/lib/openai/models/responses/response_create_params.rb +4 -3
  183. data/lib/openai/models/responses/response_includable.rb +2 -0
  184. data/lib/openai/models/responses/response_text_delta_event.rb +2 -2
  185. data/lib/openai/models/responses/response_text_done_event.rb +2 -2
  186. data/lib/openai/models/responses/responses_client_event.rb +4 -3
  187. data/lib/openai/models/responses/tool.rb +81 -16
  188. data/lib/openai/models.rb +2 -0
  189. data/lib/openai/resources/admin/organization/admin_api_keys.rb +111 -0
  190. data/lib/openai/resources/admin/organization/audit_logs.rb +63 -0
  191. data/lib/openai/resources/admin/organization/certificates.rb +208 -0
  192. data/lib/openai/resources/admin/organization/groups/roles.rb +107 -0
  193. data/lib/openai/resources/admin/organization/groups/users.rb +107 -0
  194. data/lib/openai/resources/admin/organization/groups.rb +127 -0
  195. data/lib/openai/resources/admin/organization/invites.rb +121 -0
  196. data/lib/openai/resources/admin/organization/projects/api_keys.rb +112 -0
  197. data/lib/openai/resources/admin/organization/projects/certificates.rb +110 -0
  198. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +128 -0
  199. data/lib/openai/resources/admin/organization/projects/groups.rb +114 -0
  200. data/lib/openai/resources/admin/organization/projects/rate_limits.rb +102 -0
  201. data/lib/openai/resources/admin/organization/projects/roles.rb +147 -0
  202. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +139 -0
  203. data/lib/openai/resources/admin/organization/projects/users/roles.rb +128 -0
  204. data/lib/openai/resources/admin/organization/projects/users.rb +177 -0
  205. data/lib/openai/resources/admin/organization/projects.rb +181 -0
  206. data/lib/openai/resources/admin/organization/roles.rb +127 -0
  207. data/lib/openai/resources/admin/organization/usage.rb +416 -0
  208. data/lib/openai/resources/admin/organization/users/roles.rb +107 -0
  209. data/lib/openai/resources/admin/organization/users.rb +127 -0
  210. data/lib/openai/resources/admin/organization.rb +53 -0
  211. data/lib/openai/resources/admin.rb +18 -0
  212. data/lib/openai/resources/audio/speech.rb +1 -0
  213. data/lib/openai/resources/audio/transcriptions.rb +2 -0
  214. data/lib/openai/resources/audio/translations.rb +1 -0
  215. data/lib/openai/resources/batches.rb +11 -1
  216. data/lib/openai/resources/beta/assistants.rb +5 -0
  217. data/lib/openai/resources/beta/chatkit/sessions.rb +2 -0
  218. data/lib/openai/resources/beta/chatkit/threads.rb +4 -0
  219. data/lib/openai/resources/beta/threads/messages.rb +5 -0
  220. data/lib/openai/resources/beta/threads/runs/steps.rb +2 -0
  221. data/lib/openai/resources/beta/threads/runs.rb +8 -0
  222. data/lib/openai/resources/beta/threads.rb +6 -0
  223. data/lib/openai/resources/chat/completions/messages.rb +1 -0
  224. data/lib/openai/resources/chat/completions.rb +9 -2
  225. data/lib/openai/resources/completions.rb +2 -0
  226. data/lib/openai/resources/containers/files/content.rb +1 -0
  227. data/lib/openai/resources/containers/files.rb +4 -0
  228. data/lib/openai/resources/containers.rb +4 -0
  229. data/lib/openai/resources/conversations/items.rb +4 -0
  230. data/lib/openai/resources/conversations.rb +4 -0
  231. data/lib/openai/resources/embeddings.rb +1 -0
  232. data/lib/openai/resources/evals/runs/output_items.rb +2 -0
  233. data/lib/openai/resources/evals/runs.rb +5 -0
  234. data/lib/openai/resources/evals.rb +5 -0
  235. data/lib/openai/resources/files.rb +5 -0
  236. data/lib/openai/resources/fine_tuning/alpha/graders.rb +2 -0
  237. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +4 -0
  238. data/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +1 -0
  239. data/lib/openai/resources/fine_tuning/jobs.rb +7 -0
  240. data/lib/openai/resources/images.rb +11 -6
  241. data/lib/openai/resources/models.rb +3 -0
  242. data/lib/openai/resources/moderations.rb +1 -0
  243. data/lib/openai/resources/realtime/calls.rb +9 -1
  244. data/lib/openai/resources/realtime/client_secrets.rb +1 -0
  245. data/lib/openai/resources/responses/input_items.rb +1 -0
  246. data/lib/openai/resources/responses/input_tokens.rb +1 -0
  247. data/lib/openai/resources/responses.rb +11 -2
  248. data/lib/openai/resources/skills/content.rb +1 -0
  249. data/lib/openai/resources/skills/versions/content.rb +1 -0
  250. data/lib/openai/resources/skills/versions.rb +4 -0
  251. data/lib/openai/resources/skills.rb +5 -0
  252. data/lib/openai/resources/uploads/parts.rb +1 -0
  253. data/lib/openai/resources/uploads.rb +10 -1
  254. data/lib/openai/resources/vector_stores/file_batches.rb +4 -0
  255. data/lib/openai/resources/vector_stores/files.rb +6 -0
  256. data/lib/openai/resources/vector_stores.rb +6 -0
  257. data/lib/openai/resources/videos.rb +10 -0
  258. data/lib/openai/version.rb +1 -1
  259. data/lib/openai.rb +180 -1
  260. data/rbi/openai/client.rbi +31 -3
  261. data/rbi/openai/internal/next_cursor_page.rbi +25 -0
  262. data/rbi/openai/internal/transport/base_client.rbi +10 -1
  263. data/rbi/openai/models/admin/organization/admin_api_key.rbi +191 -0
  264. data/rbi/openai/models/admin/organization/admin_api_key_create_params.rbi +42 -0
  265. data/rbi/openai/models/admin/organization/admin_api_key_create_response.rbi +35 -0
  266. data/rbi/openai/models/admin/organization/admin_api_key_delete_params.rbi +47 -0
  267. data/rbi/openai/models/admin/organization/admin_api_key_delete_response.rbi +48 -0
  268. data/rbi/openai/models/admin/organization/admin_api_key_list_params.rbi +120 -0
  269. data/rbi/openai/models/admin/organization/admin_api_key_retrieve_params.rbi +47 -0
  270. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +550 -0
  271. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +5102 -0
  272. data/rbi/openai/models/admin/organization/certificate.rbi +222 -0
  273. data/rbi/openai/models/admin/organization/certificate_activate_params.rbi +45 -0
  274. data/rbi/openai/models/admin/organization/certificate_activate_response.rbi +138 -0
  275. data/rbi/openai/models/admin/organization/certificate_create_params.rbi +61 -0
  276. data/rbi/openai/models/admin/organization/certificate_deactivate_params.rbi +45 -0
  277. data/rbi/openai/models/admin/organization/certificate_deactivate_response.rbi +138 -0
  278. data/rbi/openai/models/admin/organization/certificate_delete_params.rbi +45 -0
  279. data/rbi/openai/models/admin/organization/certificate_delete_response.rbi +40 -0
  280. data/rbi/openai/models/admin/organization/certificate_list_params.rbi +134 -0
  281. data/rbi/openai/models/admin/organization/certificate_list_response.rbi +138 -0
  282. data/rbi/openai/models/admin/organization/certificate_retrieve_params.rbi +111 -0
  283. data/rbi/openai/models/admin/organization/certificate_update_params.rbi +59 -0
  284. data/rbi/openai/models/admin/organization/group.rbi +79 -0
  285. data/rbi/openai/models/admin/organization/group_create_params.rbi +47 -0
  286. data/rbi/openai/models/admin/organization/group_delete_params.rbi +42 -0
  287. data/rbi/openai/models/admin/organization/group_delete_response.rbi +55 -0
  288. data/rbi/openai/models/admin/organization/group_list_params.rbi +131 -0
  289. data/rbi/openai/models/admin/organization/group_update_params.rbi +56 -0
  290. data/rbi/openai/models/admin/organization/group_update_response.rbi +71 -0
  291. data/rbi/openai/models/admin/organization/groups/organization_group_user.rbi +59 -0
  292. data/rbi/openai/models/admin/organization/groups/role_create_params.rbi +58 -0
  293. data/rbi/openai/models/admin/organization/groups/role_create_response.rbi +148 -0
  294. data/rbi/openai/models/admin/organization/groups/role_delete_params.rbi +52 -0
  295. data/rbi/openai/models/admin/organization/groups/role_delete_response.rbi +49 -0
  296. data/rbi/openai/models/admin/organization/groups/role_list_params.rbi +133 -0
  297. data/rbi/openai/models/admin/organization/groups/role_list_response.rbi +128 -0
  298. data/rbi/openai/models/admin/organization/groups/user_create_params.rbi +58 -0
  299. data/rbi/openai/models/admin/organization/groups/user_create_response.rbi +57 -0
  300. data/rbi/openai/models/admin/organization/groups/user_delete_params.rbi +52 -0
  301. data/rbi/openai/models/admin/organization/groups/user_delete_response.rbi +47 -0
  302. data/rbi/openai/models/admin/organization/groups/user_list_params.rbi +135 -0
  303. data/rbi/openai/models/admin/organization/invite.rbi +271 -0
  304. data/rbi/openai/models/admin/organization/invite_create_params.rbi +219 -0
  305. data/rbi/openai/models/admin/organization/invite_delete_params.rbi +42 -0
  306. data/rbi/openai/models/admin/organization/invite_delete_response.rbi +50 -0
  307. data/rbi/openai/models/admin/organization/invite_list_params.rbi +72 -0
  308. data/rbi/openai/models/admin/organization/invite_retrieve_params.rbi +42 -0
  309. data/rbi/openai/models/admin/organization/organization_user.rbi +376 -0
  310. data/rbi/openai/models/admin/organization/project.rbi +93 -0
  311. data/rbi/openai/models/admin/organization/project_archive_params.rbi +42 -0
  312. data/rbi/openai/models/admin/organization/project_create_params.rbi +72 -0
  313. data/rbi/openai/models/admin/organization/project_list_params.rbi +85 -0
  314. data/rbi/openai/models/admin/organization/project_retrieve_params.rbi +42 -0
  315. data/rbi/openai/models/admin/organization/project_update_params.rbi +72 -0
  316. data/rbi/openai/models/admin/organization/projects/api_key_delete_params.rbi +52 -0
  317. data/rbi/openai/models/admin/organization/projects/api_key_delete_response.rbi +50 -0
  318. data/rbi/openai/models/admin/organization/projects/api_key_list_params.rbi +80 -0
  319. data/rbi/openai/models/admin/organization/projects/api_key_retrieve_params.rbi +52 -0
  320. data/rbi/openai/models/admin/organization/projects/certificate_activate_params.rbi +52 -0
  321. data/rbi/openai/models/admin/organization/projects/certificate_activate_response.rbi +142 -0
  322. data/rbi/openai/models/admin/organization/projects/certificate_deactivate_params.rbi +52 -0
  323. data/rbi/openai/models/admin/organization/projects/certificate_deactivate_response.rbi +142 -0
  324. data/rbi/openai/models/admin/organization/projects/certificate_list_params.rbi +142 -0
  325. data/rbi/openai/models/admin/organization/projects/certificate_list_response.rbi +142 -0
  326. data/rbi/openai/models/admin/organization/projects/group_create_params.rbi +66 -0
  327. data/rbi/openai/models/admin/organization/projects/group_delete_params.rbi +52 -0
  328. data/rbi/openai/models/admin/organization/projects/group_delete_response.rbi +47 -0
  329. data/rbi/openai/models/admin/organization/projects/group_list_params.rbi +133 -0
  330. data/rbi/openai/models/admin/organization/projects/groups/role_create_params.rbi +66 -0
  331. data/rbi/openai/models/admin/organization/projects/groups/role_create_response.rbi +152 -0
  332. data/rbi/openai/models/admin/organization/projects/groups/role_delete_params.rbi +64 -0
  333. data/rbi/openai/models/admin/organization/projects/groups/role_delete_response.rbi +51 -0
  334. data/rbi/openai/models/admin/organization/projects/groups/role_list_params.rbi +141 -0
  335. data/rbi/openai/models/admin/organization/projects/groups/role_list_response.rbi +130 -0
  336. data/rbi/openai/models/admin/organization/projects/project_api_key.rbi +371 -0
  337. data/rbi/openai/models/admin/organization/projects/project_group.rbi +89 -0
  338. data/rbi/openai/models/admin/organization/projects/project_rate_limit.rbi +125 -0
  339. data/rbi/openai/models/admin/organization/projects/project_service_account.rbi +122 -0
  340. data/rbi/openai/models/admin/organization/projects/project_user.rbi +89 -0
  341. data/rbi/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rbi +95 -0
  342. data/rbi/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rbi +122 -0
  343. data/rbi/openai/models/admin/organization/projects/role_create_params.rbi +74 -0
  344. data/rbi/openai/models/admin/organization/projects/role_delete_params.rbi +52 -0
  345. data/rbi/openai/models/admin/organization/projects/role_delete_response.rbi +57 -0
  346. data/rbi/openai/models/admin/organization/projects/role_list_params.rbi +133 -0
  347. data/rbi/openai/models/admin/organization/projects/role_update_params.rbi +80 -0
  348. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +58 -0
  349. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +157 -0
  350. data/rbi/openai/models/admin/organization/projects/service_account_delete_params.rbi +52 -0
  351. data/rbi/openai/models/admin/organization/projects/service_account_delete_response.rbi +50 -0
  352. data/rbi/openai/models/admin/organization/projects/service_account_list_params.rbi +80 -0
  353. data/rbi/openai/models/admin/organization/projects/service_account_retrieve_params.rbi +52 -0
  354. data/rbi/openai/models/admin/organization/projects/user_create_params.rbi +74 -0
  355. data/rbi/openai/models/admin/organization/projects/user_delete_params.rbi +52 -0
  356. data/rbi/openai/models/admin/organization/projects/user_delete_response.rbi +50 -0
  357. data/rbi/openai/models/admin/organization/projects/user_list_params.rbi +80 -0
  358. data/rbi/openai/models/admin/organization/projects/user_retrieve_params.rbi +52 -0
  359. data/rbi/openai/models/admin/organization/projects/user_update_params.rbi +64 -0
  360. data/rbi/openai/models/admin/organization/projects/users/role_create_params.rbi +66 -0
  361. data/rbi/openai/models/admin/organization/projects/users/role_create_response.rbi +77 -0
  362. data/rbi/openai/models/admin/organization/projects/users/role_delete_params.rbi +59 -0
  363. data/rbi/openai/models/admin/organization/projects/users/role_delete_response.rbi +51 -0
  364. data/rbi/openai/models/admin/organization/projects/users/role_list_params.rbi +141 -0
  365. data/rbi/openai/models/admin/organization/projects/users/role_list_response.rbi +130 -0
  366. data/rbi/openai/models/admin/organization/role.rbi +95 -0
  367. data/rbi/openai/models/admin/organization/role_create_params.rbi +66 -0
  368. data/rbi/openai/models/admin/organization/role_delete_params.rbi +42 -0
  369. data/rbi/openai/models/admin/organization/role_delete_response.rbi +55 -0
  370. data/rbi/openai/models/admin/organization/role_list_params.rbi +125 -0
  371. data/rbi/openai/models/admin/organization/role_update_params.rbi +72 -0
  372. data/rbi/openai/models/admin/organization/usage_audio_speeches_params.rbi +282 -0
  373. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +1039 -0
  374. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_params.rbi +282 -0
  375. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +1039 -0
  376. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_params.rbi +234 -0
  377. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +1039 -0
  378. data/rbi/openai/models/admin/organization/usage_completions_params.rbi +307 -0
  379. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +1039 -0
  380. data/rbi/openai/models/admin/organization/usage_costs_params.rbi +239 -0
  381. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +1039 -0
  382. data/rbi/openai/models/admin/organization/usage_embeddings_params.rbi +282 -0
  383. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +1039 -0
  384. data/rbi/openai/models/admin/organization/usage_images_params.rbi +450 -0
  385. data/rbi/openai/models/admin/organization/usage_images_response.rbi +1039 -0
  386. data/rbi/openai/models/admin/organization/usage_moderations_params.rbi +282 -0
  387. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +1039 -0
  388. data/rbi/openai/models/admin/organization/usage_vector_stores_params.rbi +234 -0
  389. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +1039 -0
  390. data/rbi/openai/models/admin/organization/user_delete_params.rbi +42 -0
  391. data/rbi/openai/models/admin/organization/user_delete_response.rbi +44 -0
  392. data/rbi/openai/models/admin/organization/user_list_params.rbi +83 -0
  393. data/rbi/openai/models/admin/organization/user_retrieve_params.rbi +42 -0
  394. data/rbi/openai/models/admin/organization/user_update_params.rbi +80 -0
  395. data/rbi/openai/models/admin/organization/users/role_create_params.rbi +58 -0
  396. data/rbi/openai/models/admin/organization/users/role_create_response.rbi +73 -0
  397. data/rbi/openai/models/admin/organization/users/role_delete_params.rbi +52 -0
  398. data/rbi/openai/models/admin/organization/users/role_delete_response.rbi +49 -0
  399. data/rbi/openai/models/admin/organization/users/role_list_params.rbi +133 -0
  400. data/rbi/openai/models/admin/organization/users/role_list_response.rbi +128 -0
  401. data/rbi/openai/models/chat/chat_completion_token_logprob.rbi +2 -4
  402. data/rbi/openai/models/chat/completion_create_params.rbi +6 -4
  403. data/rbi/openai/models/image_edit_params.rbi +102 -45
  404. data/rbi/openai/models/image_generate_params.rbi +93 -39
  405. data/rbi/openai/models/image_model.rbi +8 -3
  406. data/rbi/openai/models/realtime/audio_transcription.rbi +85 -6
  407. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +6 -0
  408. data/rbi/openai/models/realtime/realtime_audio_input_turn_detection.rbi +3 -0
  409. data/rbi/openai/models/realtime/realtime_reasoning.rbi +54 -0
  410. data/rbi/openai/models/realtime/realtime_reasoning_effort.rbi +44 -0
  411. data/rbi/openai/models/realtime/realtime_response_create_params.rbi +26 -0
  412. data/rbi/openai/models/realtime/realtime_session.rbi +9 -0
  413. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +31 -0
  414. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +53 -32
  415. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +6 -0
  416. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbi +3 -0
  417. data/rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi +13 -7
  418. data/rbi/openai/models/realtime/realtime_transcription_session_turn_detection.rbi +2 -1
  419. data/rbi/openai/models/realtime/realtime_translation_client_event.rbi +29 -0
  420. data/rbi/openai/models/realtime/realtime_translation_client_secret_create_request.rbi +193 -0
  421. data/rbi/openai/models/realtime/realtime_translation_client_secret_create_response.rbi +69 -0
  422. data/rbi/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbi +69 -0
  423. data/rbi/openai/models/realtime/realtime_translation_input_transcript_delta_event.rbi +77 -0
  424. data/rbi/openai/models/realtime/realtime_translation_output_audio_delta_event.rbi +148 -0
  425. data/rbi/openai/models/realtime/realtime_translation_output_transcript_delta_event.rbi +76 -0
  426. data/rbi/openai/models/realtime/realtime_translation_server_event.rbi +33 -0
  427. data/rbi/openai/models/realtime/realtime_translation_session.rbi +339 -0
  428. data/rbi/openai/models/realtime/realtime_translation_session_close_event.rbi +44 -0
  429. data/rbi/openai/models/realtime/realtime_translation_session_closed_event.rbi +39 -0
  430. data/rbi/openai/models/realtime/realtime_translation_session_create_request.rbi +322 -0
  431. data/rbi/openai/models/realtime/realtime_translation_session_created_event.rbi +68 -0
  432. data/rbi/openai/models/realtime/realtime_translation_session_update_event.rbi +78 -0
  433. data/rbi/openai/models/realtime/realtime_translation_session_update_request.rbi +313 -0
  434. data/rbi/openai/models/realtime/realtime_translation_session_updated_event.rbi +67 -0
  435. data/rbi/openai/models/realtime/transcription_session_updated_event.rbi +0 -2
  436. data/rbi/openai/models/responses/response.rbi +6 -4
  437. data/rbi/openai/models/responses/response_create_params.rbi +6 -4
  438. data/rbi/openai/models/responses/response_includable.rbi +2 -0
  439. data/rbi/openai/models/responses/response_text_delta_event.rbi +2 -2
  440. data/rbi/openai/models/responses/response_text_done_event.rbi +2 -2
  441. data/rbi/openai/models/responses/responses_client_event.rbi +6 -4
  442. data/rbi/openai/models/responses/tool.rbi +122 -27
  443. data/rbi/openai/models.rbi +2 -0
  444. data/rbi/openai/resources/admin/organization/admin_api_keys.rbi +83 -0
  445. data/rbi/openai/resources/admin/organization/audit_logs.rbi +74 -0
  446. data/rbi/openai/resources/admin/organization/certificates.rbi +156 -0
  447. data/rbi/openai/resources/admin/organization/groups/roles.rbi +85 -0
  448. data/rbi/openai/resources/admin/organization/groups/users.rbi +86 -0
  449. data/rbi/openai/resources/admin/organization/groups.rbi +96 -0
  450. data/rbi/openai/resources/admin/organization/invites.rbi +96 -0
  451. data/rbi/openai/resources/admin/organization/projects/api_keys.rbi +85 -0
  452. data/rbi/openai/resources/admin/organization/projects/certificates.rbi +94 -0
  453. data/rbi/openai/resources/admin/organization/projects/groups/roles.rbi +96 -0
  454. data/rbi/openai/resources/admin/organization/projects/groups.rbi +93 -0
  455. data/rbi/openai/resources/admin/organization/projects/rate_limits.rbi +88 -0
  456. data/rbi/openai/resources/admin/organization/projects/roles.rbi +115 -0
  457. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +107 -0
  458. data/rbi/openai/resources/admin/organization/projects/users/roles.rbi +96 -0
  459. data/rbi/openai/resources/admin/organization/projects/users.rbi +136 -0
  460. data/rbi/openai/resources/admin/organization/projects.rbi +162 -0
  461. data/rbi/openai/resources/admin/organization/roles.rbi +99 -0
  462. data/rbi/openai/resources/admin/organization/usage.rbi +491 -0
  463. data/rbi/openai/resources/admin/organization/users/roles.rbi +85 -0
  464. data/rbi/openai/resources/admin/organization/users.rbi +101 -0
  465. data/rbi/openai/resources/admin/organization.rbi +42 -0
  466. data/rbi/openai/resources/admin.rbi +15 -0
  467. data/rbi/openai/resources/chat/completions.rbi +6 -4
  468. data/rbi/openai/resources/images.rbi +110 -44
  469. data/rbi/openai/resources/realtime/calls.rbi +7 -0
  470. data/rbi/openai/resources/responses.rbi +6 -4
  471. data/sig/openai/client.rbs +16 -2
  472. data/sig/openai/internal/next_cursor_page.rbs +15 -0
  473. data/sig/openai/internal/transport/base_client.rbs +2 -0
  474. data/sig/openai/models/admin/organization/admin_api_key.rbs +108 -0
  475. data/sig/openai/models/admin/organization/admin_api_key_create_params.rbs +27 -0
  476. data/sig/openai/models/admin/organization/admin_api_key_create_response.rbs +19 -0
  477. data/sig/openai/models/admin/organization/admin_api_key_delete_params.rbs +27 -0
  478. data/sig/openai/models/admin/organization/admin_api_key_delete_response.rbs +34 -0
  479. data/sig/openai/models/admin/organization/admin_api_key_list_params.rbs +57 -0
  480. data/sig/openai/models/admin/organization/admin_api_key_retrieve_params.rbs +27 -0
  481. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +238 -0
  482. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +2175 -0
  483. data/sig/openai/models/admin/organization/certificate.rbs +95 -0
  484. data/sig/openai/models/admin/organization/certificate_activate_params.rbs +28 -0
  485. data/sig/openai/models/admin/organization/certificate_activate_response.rbs +65 -0
  486. data/sig/openai/models/admin/organization/certificate_create_params.rbs +34 -0
  487. data/sig/openai/models/admin/organization/certificate_deactivate_params.rbs +28 -0
  488. data/sig/openai/models/admin/organization/certificate_deactivate_response.rbs +65 -0
  489. data/sig/openai/models/admin/organization/certificate_delete_params.rbs +28 -0
  490. data/sig/openai/models/admin/organization/certificate_delete_response.rbs +20 -0
  491. data/sig/openai/models/admin/organization/certificate_list_params.rbs +59 -0
  492. data/sig/openai/models/admin/organization/certificate_list_response.rbs +65 -0
  493. data/sig/openai/models/admin/organization/certificate_retrieve_params.rbs +49 -0
  494. data/sig/openai/models/admin/organization/certificate_update_params.rbs +34 -0
  495. data/sig/openai/models/admin/organization/group.rbs +44 -0
  496. data/sig/openai/models/admin/organization/group_create_params.rbs +27 -0
  497. data/sig/openai/models/admin/organization/group_delete_params.rbs +27 -0
  498. data/sig/openai/models/admin/organization/group_delete_response.rbs +30 -0
  499. data/sig/openai/models/admin/organization/group_list_params.rbs +59 -0
  500. data/sig/openai/models/admin/organization/group_update_params.rbs +32 -0
  501. data/sig/openai/models/admin/organization/group_update_response.rbs +39 -0
  502. data/sig/openai/models/admin/organization/groups/organization_group_user.rbs +24 -0
  503. data/sig/openai/models/admin/organization/groups/role_create_params.rbs +34 -0
  504. data/sig/openai/models/admin/organization/groups/role_create_response.rbs +73 -0
  505. data/sig/openai/models/admin/organization/groups/role_delete_params.rbs +34 -0
  506. data/sig/openai/models/admin/organization/groups/role_delete_response.rbs +21 -0
  507. data/sig/openai/models/admin/organization/groups/role_list_params.rbs +66 -0
  508. data/sig/openai/models/admin/organization/groups/role_list_response.rbs +76 -0
  509. data/sig/openai/models/admin/organization/groups/user_create_params.rbs +34 -0
  510. data/sig/openai/models/admin/organization/groups/user_create_response.rbs +32 -0
  511. data/sig/openai/models/admin/organization/groups/user_delete_params.rbs +34 -0
  512. data/sig/openai/models/admin/organization/groups/user_delete_response.rbs +25 -0
  513. data/sig/openai/models/admin/organization/groups/user_list_params.rbs +66 -0
  514. data/sig/openai/models/admin/organization/invite.rbs +120 -0
  515. data/sig/openai/models/admin/organization/invite_create_params.rbs +88 -0
  516. data/sig/openai/models/admin/organization/invite_delete_params.rbs +27 -0
  517. data/sig/openai/models/admin/organization/invite_delete_response.rbs +30 -0
  518. data/sig/openai/models/admin/organization/invite_list_params.rbs +36 -0
  519. data/sig/openai/models/admin/organization/invite_retrieve_params.rbs +27 -0
  520. data/sig/openai/models/admin/organization/organization_user.rbs +205 -0
  521. data/sig/openai/models/admin/organization/project.rbs +54 -0
  522. data/sig/openai/models/admin/organization/project_archive_params.rbs +27 -0
  523. data/sig/openai/models/admin/organization/project_create_params.rbs +36 -0
  524. data/sig/openai/models/admin/organization/project_list_params.rbs +42 -0
  525. data/sig/openai/models/admin/organization/project_retrieve_params.rbs +27 -0
  526. data/sig/openai/models/admin/organization/project_update_params.rbs +45 -0
  527. data/sig/openai/models/admin/organization/projects/api_key_delete_params.rbs +34 -0
  528. data/sig/openai/models/admin/organization/projects/api_key_delete_response.rbs +36 -0
  529. data/sig/openai/models/admin/organization/projects/api_key_list_params.rbs +42 -0
  530. data/sig/openai/models/admin/organization/projects/api_key_retrieve_params.rbs +34 -0
  531. data/sig/openai/models/admin/organization/projects/certificate_activate_params.rbs +34 -0
  532. data/sig/openai/models/admin/organization/projects/certificate_activate_response.rbs +68 -0
  533. data/sig/openai/models/admin/organization/projects/certificate_deactivate_params.rbs +34 -0
  534. data/sig/openai/models/admin/organization/projects/certificate_deactivate_response.rbs +68 -0
  535. data/sig/openai/models/admin/organization/projects/certificate_list_params.rbs +66 -0
  536. data/sig/openai/models/admin/organization/projects/certificate_list_response.rbs +68 -0
  537. data/sig/openai/models/admin/organization/projects/group_create_params.rbs +38 -0
  538. data/sig/openai/models/admin/organization/projects/group_delete_params.rbs +34 -0
  539. data/sig/openai/models/admin/organization/projects/group_delete_response.rbs +25 -0
  540. data/sig/openai/models/admin/organization/projects/group_list_params.rbs +66 -0
  541. data/sig/openai/models/admin/organization/projects/groups/role_create_params.rbs +40 -0
  542. data/sig/openai/models/admin/organization/projects/groups/role_create_response.rbs +75 -0
  543. data/sig/openai/models/admin/organization/projects/groups/role_delete_params.rbs +40 -0
  544. data/sig/openai/models/admin/organization/projects/groups/role_delete_response.rbs +23 -0
  545. data/sig/openai/models/admin/organization/projects/groups/role_list_params.rbs +73 -0
  546. data/sig/openai/models/admin/organization/projects/groups/role_list_response.rbs +78 -0
  547. data/sig/openai/models/admin/organization/projects/project_api_key.rbs +172 -0
  548. data/sig/openai/models/admin/organization/projects/project_group.rbs +53 -0
  549. data/sig/openai/models/admin/organization/projects/project_rate_limit.rbs +76 -0
  550. data/sig/openai/models/admin/organization/projects/project_service_account.rbs +59 -0
  551. data/sig/openai/models/admin/organization/projects/project_user.rbs +53 -0
  552. data/sig/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rbs +53 -0
  553. data/sig/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rbs +79 -0
  554. data/sig/openai/models/admin/organization/projects/role_create_params.rbs +47 -0
  555. data/sig/openai/models/admin/organization/projects/role_delete_params.rbs +34 -0
  556. data/sig/openai/models/admin/organization/projects/role_delete_response.rbs +32 -0
  557. data/sig/openai/models/admin/organization/projects/role_list_params.rbs +66 -0
  558. data/sig/openai/models/admin/organization/projects/role_update_params.rbs +52 -0
  559. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +34 -0
  560. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +88 -0
  561. data/sig/openai/models/admin/organization/projects/service_account_delete_params.rbs +34 -0
  562. data/sig/openai/models/admin/organization/projects/service_account_delete_response.rbs +36 -0
  563. data/sig/openai/models/admin/organization/projects/service_account_list_params.rbs +42 -0
  564. data/sig/openai/models/admin/organization/projects/service_account_retrieve_params.rbs +34 -0
  565. data/sig/openai/models/admin/organization/projects/user_create_params.rbs +47 -0
  566. data/sig/openai/models/admin/organization/projects/user_delete_params.rbs +34 -0
  567. data/sig/openai/models/admin/organization/projects/user_delete_response.rbs +36 -0
  568. data/sig/openai/models/admin/organization/projects/user_list_params.rbs +42 -0
  569. data/sig/openai/models/admin/organization/projects/user_retrieve_params.rbs +34 -0
  570. data/sig/openai/models/admin/organization/projects/user_update_params.rbs +38 -0
  571. data/sig/openai/models/admin/organization/projects/users/role_create_params.rbs +40 -0
  572. data/sig/openai/models/admin/organization/projects/users/role_create_response.rbs +38 -0
  573. data/sig/openai/models/admin/organization/projects/users/role_delete_params.rbs +40 -0
  574. data/sig/openai/models/admin/organization/projects/users/role_delete_response.rbs +23 -0
  575. data/sig/openai/models/admin/organization/projects/users/role_list_params.rbs +73 -0
  576. data/sig/openai/models/admin/organization/projects/users/role_list_response.rbs +78 -0
  577. data/sig/openai/models/admin/organization/role.rbs +54 -0
  578. data/sig/openai/models/admin/organization/role_create_params.rbs +40 -0
  579. data/sig/openai/models/admin/organization/role_delete_params.rbs +27 -0
  580. data/sig/openai/models/admin/organization/role_delete_response.rbs +26 -0
  581. data/sig/openai/models/admin/organization/role_list_params.rbs +59 -0
  582. data/sig/openai/models/admin/organization/role_update_params.rbs +45 -0
  583. data/sig/openai/models/admin/organization/usage_audio_speeches_params.rbs +122 -0
  584. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +532 -0
  585. data/sig/openai/models/admin/organization/usage_audio_transcriptions_params.rbs +122 -0
  586. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +532 -0
  587. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_params.rbs +98 -0
  588. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +532 -0
  589. data/sig/openai/models/admin/organization/usage_completions_params.rbs +137 -0
  590. data/sig/openai/models/admin/organization/usage_completions_response.rbs +532 -0
  591. data/sig/openai/models/admin/organization/usage_costs_params.rbs +105 -0
  592. data/sig/openai/models/admin/organization/usage_costs_response.rbs +532 -0
  593. data/sig/openai/models/admin/organization/usage_embeddings_params.rbs +122 -0
  594. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +532 -0
  595. data/sig/openai/models/admin/organization/usage_images_params.rbs +170 -0
  596. data/sig/openai/models/admin/organization/usage_images_response.rbs +532 -0
  597. data/sig/openai/models/admin/organization/usage_moderations_params.rbs +122 -0
  598. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +532 -0
  599. data/sig/openai/models/admin/organization/usage_vector_stores_params.rbs +98 -0
  600. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +532 -0
  601. data/sig/openai/models/admin/organization/user_delete_params.rbs +27 -0
  602. data/sig/openai/models/admin/organization/user_delete_response.rbs +30 -0
  603. data/sig/openai/models/admin/organization/user_list_params.rbs +42 -0
  604. data/sig/openai/models/admin/organization/user_retrieve_params.rbs +27 -0
  605. data/sig/openai/models/admin/organization/user_update_params.rbs +50 -0
  606. data/sig/openai/models/admin/organization/users/role_create_params.rbs +34 -0
  607. data/sig/openai/models/admin/organization/users/role_create_response.rbs +36 -0
  608. data/sig/openai/models/admin/organization/users/role_delete_params.rbs +34 -0
  609. data/sig/openai/models/admin/organization/users/role_delete_response.rbs +21 -0
  610. data/sig/openai/models/admin/organization/users/role_list_params.rbs +66 -0
  611. data/sig/openai/models/admin/organization/users/role_list_response.rbs +76 -0
  612. data/sig/openai/models/image_edit_params.rbs +5 -4
  613. data/sig/openai/models/image_generate_params.rbs +5 -4
  614. data/sig/openai/models/image_model.rbs +11 -5
  615. data/sig/openai/models/realtime/audio_transcription.rbs +25 -0
  616. data/sig/openai/models/realtime/realtime_reasoning.rbs +24 -0
  617. data/sig/openai/models/realtime/realtime_reasoning_effort.rbs +20 -0
  618. data/sig/openai/models/realtime/realtime_response_create_params.rbs +16 -0
  619. data/sig/openai/models/realtime/realtime_session_create_request.rbs +18 -0
  620. data/sig/openai/models/realtime/realtime_session_create_response.rbs +27 -4
  621. data/sig/openai/models/realtime/realtime_transcription_session_create_response.rbs +4 -8
  622. data/sig/openai/models/realtime/realtime_translation_client_event.rbs +16 -0
  623. data/sig/openai/models/realtime/realtime_translation_client_secret_create_request.rbs +69 -0
  624. data/sig/openai/models/realtime/realtime_translation_client_secret_create_response.rbs +32 -0
  625. data/sig/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbs +34 -0
  626. data/sig/openai/models/realtime/realtime_translation_input_transcript_delta_event.rbs +37 -0
  627. data/sig/openai/models/realtime/realtime_translation_output_audio_delta_event.rbs +70 -0
  628. data/sig/openai/models/realtime/realtime_translation_output_transcript_delta_event.rbs +37 -0
  629. data/sig/openai/models/realtime/realtime_translation_server_event.rbs +20 -0
  630. data/sig/openai/models/realtime/realtime_translation_session.rbs +131 -0
  631. data/sig/openai/models/realtime/realtime_translation_session_close_event.rbs +20 -0
  632. data/sig/openai/models/realtime/realtime_translation_session_closed_event.rbs +18 -0
  633. data/sig/openai/models/realtime/realtime_translation_session_create_request.rbs +120 -0
  634. data/sig/openai/models/realtime/realtime_translation_session_created_event.rbs +32 -0
  635. data/sig/openai/models/realtime/realtime_translation_session_update_event.rbs +34 -0
  636. data/sig/openai/models/realtime/realtime_translation_session_update_request.rbs +115 -0
  637. data/sig/openai/models/realtime/realtime_translation_session_updated_event.rbs +32 -0
  638. data/sig/openai/models/responses/tool.rbs +15 -5
  639. data/sig/openai/models.rbs +2 -0
  640. data/sig/openai/resources/admin/organization/admin_api_keys.rbs +33 -0
  641. data/sig/openai/resources/admin/organization/audit_logs.rbs +24 -0
  642. data/sig/openai/resources/admin/organization/certificates.rbs +51 -0
  643. data/sig/openai/resources/admin/organization/groups/roles.rbs +33 -0
  644. data/sig/openai/resources/admin/organization/groups/users.rbs +33 -0
  645. data/sig/openai/resources/admin/organization/groups.rbs +38 -0
  646. data/sig/openai/resources/admin/organization/invites.rbs +34 -0
  647. data/sig/openai/resources/admin/organization/projects/api_keys.rbs +32 -0
  648. data/sig/openai/resources/admin/organization/projects/certificates.rbs +33 -0
  649. data/sig/openai/resources/admin/organization/projects/groups/roles.rbs +38 -0
  650. data/sig/openai/resources/admin/organization/projects/groups.rbs +36 -0
  651. data/sig/openai/resources/admin/organization/projects/rate_limits.rbs +33 -0
  652. data/sig/openai/resources/admin/organization/projects/roles.rbs +44 -0
  653. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +38 -0
  654. data/sig/openai/resources/admin/organization/projects/users/roles.rbs +38 -0
  655. data/sig/openai/resources/admin/organization/projects/users.rbs +49 -0
  656. data/sig/openai/resources/admin/organization/projects.rbs +57 -0
  657. data/sig/openai/resources/admin/organization/roles.rbs +38 -0
  658. data/sig/openai/resources/admin/organization/usage.rbs +132 -0
  659. data/sig/openai/resources/admin/organization/users/roles.rbs +33 -0
  660. data/sig/openai/resources/admin/organization/users.rbs +39 -0
  661. data/sig/openai/resources/admin/organization.rbs +27 -0
  662. data/sig/openai/resources/admin.rbs +9 -0
  663. data/sig/openai/resources/realtime/calls.rbs +2 -0
  664. metadata +542 -5
  665. data/lib/openai/models/realtime/realtime_session_client_secret.rb +0 -36
  666. data/rbi/openai/models/realtime/realtime_session_client_secret.rbi +0 -49
  667. data/sig/openai/models/realtime/realtime_session_client_secret.rbs +0 -20
@@ -12,6 +12,23 @@ module OpenAI
12
12
  )
13
13
  end
14
14
 
15
+ # Controls how long the model waits before emitting transcription text. Higher
16
+ # values can improve transcription accuracy at the cost of latency. Only supported
17
+ # with `gpt-realtime-whisper` in GA Realtime sessions.
18
+ sig do
19
+ returns(
20
+ T.nilable(OpenAI::Realtime::AudioTranscription::Delay::OrSymbol)
21
+ )
22
+ end
23
+ attr_reader :delay
24
+
25
+ sig do
26
+ params(
27
+ delay: OpenAI::Realtime::AudioTranscription::Delay::OrSymbol
28
+ ).void
29
+ end
30
+ attr_writer :delay
31
+
15
32
  # The language of the input audio. Supplying the input language in
16
33
  # [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) (e.g. `en`)
17
34
  # format will improve accuracy and latency.
@@ -23,8 +40,8 @@ module OpenAI
23
40
 
24
41
  # The model to use for transcription. Current options are `whisper-1`,
25
42
  # `gpt-4o-mini-transcribe`, `gpt-4o-mini-transcribe-2025-12-15`,
26
- # `gpt-4o-transcribe`, and `gpt-4o-transcribe-diarize`. Use
27
- # `gpt-4o-transcribe-diarize` when you need diarization with speaker labels.
43
+ # `gpt-4o-transcribe`, `gpt-4o-transcribe-diarize`, and `gpt-realtime-whisper`.
44
+ # Use `gpt-4o-transcribe-diarize` when you need diarization with speaker labels.
28
45
  sig do
29
46
  returns(
30
47
  T.nilable(
@@ -53,6 +70,7 @@ module OpenAI
53
70
  # [prompt is a list of keywords](https://platform.openai.com/docs/guides/speech-to-text#prompting).
54
71
  # For `gpt-4o-transcribe` models (excluding `gpt-4o-transcribe-diarize`), the
55
72
  # prompt is a free text string, for example "expect words related to technology".
73
+ # Prompt is not supported with `gpt-realtime-whisper` in GA Realtime sessions.
56
74
  sig { returns(T.nilable(String)) }
57
75
  attr_reader :prompt
58
76
 
@@ -61,6 +79,7 @@ module OpenAI
61
79
 
62
80
  sig do
63
81
  params(
82
+ delay: OpenAI::Realtime::AudioTranscription::Delay::OrSymbol,
64
83
  language: String,
65
84
  model:
66
85
  T.any(
@@ -71,20 +90,25 @@ module OpenAI
71
90
  ).returns(T.attached_class)
72
91
  end
73
92
  def self.new(
93
+ # Controls how long the model waits before emitting transcription text. Higher
94
+ # values can improve transcription accuracy at the cost of latency. Only supported
95
+ # with `gpt-realtime-whisper` in GA Realtime sessions.
96
+ delay: nil,
74
97
  # The language of the input audio. Supplying the input language in
75
98
  # [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) (e.g. `en`)
76
99
  # format will improve accuracy and latency.
77
100
  language: nil,
78
101
  # The model to use for transcription. Current options are `whisper-1`,
79
102
  # `gpt-4o-mini-transcribe`, `gpt-4o-mini-transcribe-2025-12-15`,
80
- # `gpt-4o-transcribe`, and `gpt-4o-transcribe-diarize`. Use
81
- # `gpt-4o-transcribe-diarize` when you need diarization with speaker labels.
103
+ # `gpt-4o-transcribe`, `gpt-4o-transcribe-diarize`, and `gpt-realtime-whisper`.
104
+ # Use `gpt-4o-transcribe-diarize` when you need diarization with speaker labels.
82
105
  model: nil,
83
106
  # An optional text to guide the model's style or continue a previous audio
84
107
  # segment. For `whisper-1`, the
85
108
  # [prompt is a list of keywords](https://platform.openai.com/docs/guides/speech-to-text#prompting).
86
109
  # For `gpt-4o-transcribe` models (excluding `gpt-4o-transcribe-diarize`), the
87
110
  # prompt is a free text string, for example "expect words related to technology".
111
+ # Prompt is not supported with `gpt-realtime-whisper` in GA Realtime sessions.
88
112
  prompt: nil
89
113
  )
90
114
  end
@@ -92,6 +116,7 @@ module OpenAI
92
116
  sig do
93
117
  override.returns(
94
118
  {
119
+ delay: OpenAI::Realtime::AudioTranscription::Delay::OrSymbol,
95
120
  language: String,
96
121
  model:
97
122
  T.any(
@@ -105,10 +130,59 @@ module OpenAI
105
130
  def to_hash
106
131
  end
107
132
 
133
+ # Controls how long the model waits before emitting transcription text. Higher
134
+ # values can improve transcription accuracy at the cost of latency. Only supported
135
+ # with `gpt-realtime-whisper` in GA Realtime sessions.
136
+ module Delay
137
+ extend OpenAI::Internal::Type::Enum
138
+
139
+ TaggedSymbol =
140
+ T.type_alias do
141
+ T.all(Symbol, OpenAI::Realtime::AudioTranscription::Delay)
142
+ end
143
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
144
+
145
+ MINIMAL =
146
+ T.let(
147
+ :minimal,
148
+ OpenAI::Realtime::AudioTranscription::Delay::TaggedSymbol
149
+ )
150
+ LOW =
151
+ T.let(
152
+ :low,
153
+ OpenAI::Realtime::AudioTranscription::Delay::TaggedSymbol
154
+ )
155
+ MEDIUM =
156
+ T.let(
157
+ :medium,
158
+ OpenAI::Realtime::AudioTranscription::Delay::TaggedSymbol
159
+ )
160
+ HIGH =
161
+ T.let(
162
+ :high,
163
+ OpenAI::Realtime::AudioTranscription::Delay::TaggedSymbol
164
+ )
165
+ XHIGH =
166
+ T.let(
167
+ :xhigh,
168
+ OpenAI::Realtime::AudioTranscription::Delay::TaggedSymbol
169
+ )
170
+
171
+ sig do
172
+ override.returns(
173
+ T::Array[
174
+ OpenAI::Realtime::AudioTranscription::Delay::TaggedSymbol
175
+ ]
176
+ )
177
+ end
178
+ def self.values
179
+ end
180
+ end
181
+
108
182
  # The model to use for transcription. Current options are `whisper-1`,
109
183
  # `gpt-4o-mini-transcribe`, `gpt-4o-mini-transcribe-2025-12-15`,
110
- # `gpt-4o-transcribe`, and `gpt-4o-transcribe-diarize`. Use
111
- # `gpt-4o-transcribe-diarize` when you need diarization with speaker labels.
184
+ # `gpt-4o-transcribe`, `gpt-4o-transcribe-diarize`, and `gpt-realtime-whisper`.
185
+ # Use `gpt-4o-transcribe-diarize` when you need diarization with speaker labels.
112
186
  module Model
113
187
  extend OpenAI::Internal::Type::Union
114
188
 
@@ -159,6 +233,11 @@ module OpenAI
159
233
  :"gpt-4o-transcribe-diarize",
160
234
  OpenAI::Realtime::AudioTranscription::Model::TaggedSymbol
161
235
  )
236
+ GPT_REALTIME_WHISPER =
237
+ T.let(
238
+ :"gpt-realtime-whisper",
239
+ OpenAI::Realtime::AudioTranscription::Model::TaggedSymbol
240
+ )
162
241
  end
163
242
  end
164
243
  end
@@ -91,6 +91,9 @@ module OpenAI
91
91
  # trails off with "uhhm", the model will score a low probability of turn end and
92
92
  # wait longer for the user to continue speaking. This can be useful for more
93
93
  # natural conversations, but may have a higher latency.
94
+ #
95
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
96
+ # `null`; VAD is not supported.
94
97
  sig do
95
98
  returns(
96
99
  T.nilable(
@@ -154,6 +157,9 @@ module OpenAI
154
157
  # trails off with "uhhm", the model will score a low probability of turn end and
155
158
  # wait longer for the user to continue speaking. This can be useful for more
156
159
  # natural conversations, but may have a higher latency.
160
+ #
161
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
162
+ # `null`; VAD is not supported.
157
163
  turn_detection: nil
158
164
  )
159
165
  end
@@ -16,6 +16,9 @@ module OpenAI
16
16
  # trails off with "uhhm", the model will score a low probability of turn end and
17
17
  # wait longer for the user to continue speaking. This can be useful for more
18
18
  # natural conversations, but may have a higher latency.
19
+ #
20
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
21
+ # `null`; VAD is not supported.
19
22
  module RealtimeAudioInputTurnDetection
20
23
  extend OpenAI::Internal::Type::Union
21
24
 
@@ -0,0 +1,54 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Realtime
6
+ class RealtimeReasoning < OpenAI::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ OpenAI::Realtime::RealtimeReasoning,
11
+ OpenAI::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ # Constrains effort on reasoning for reasoning-capable Realtime models such as
16
+ # `gpt-realtime-2`.
17
+ sig do
18
+ returns(
19
+ T.nilable(OpenAI::Realtime::RealtimeReasoningEffort::OrSymbol)
20
+ )
21
+ end
22
+ attr_reader :effort
23
+
24
+ sig do
25
+ params(
26
+ effort: OpenAI::Realtime::RealtimeReasoningEffort::OrSymbol
27
+ ).void
28
+ end
29
+ attr_writer :effort
30
+
31
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
32
+ sig do
33
+ params(
34
+ effort: OpenAI::Realtime::RealtimeReasoningEffort::OrSymbol
35
+ ).returns(T.attached_class)
36
+ end
37
+ def self.new(
38
+ # Constrains effort on reasoning for reasoning-capable Realtime models such as
39
+ # `gpt-realtime-2`.
40
+ effort: nil
41
+ )
42
+ end
43
+
44
+ sig do
45
+ override.returns(
46
+ { effort: OpenAI::Realtime::RealtimeReasoningEffort::OrSymbol }
47
+ )
48
+ end
49
+ def to_hash
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,44 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Realtime
6
+ # Constrains effort on reasoning for reasoning-capable Realtime models such as
7
+ # `gpt-realtime-2`.
8
+ module RealtimeReasoningEffort
9
+ extend OpenAI::Internal::Type::Enum
10
+
11
+ TaggedSymbol =
12
+ T.type_alias do
13
+ T.all(Symbol, OpenAI::Realtime::RealtimeReasoningEffort)
14
+ end
15
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
16
+
17
+ MINIMAL =
18
+ T.let(
19
+ :minimal,
20
+ OpenAI::Realtime::RealtimeReasoningEffort::TaggedSymbol
21
+ )
22
+ LOW =
23
+ T.let(:low, OpenAI::Realtime::RealtimeReasoningEffort::TaggedSymbol)
24
+ MEDIUM =
25
+ T.let(
26
+ :medium,
27
+ OpenAI::Realtime::RealtimeReasoningEffort::TaggedSymbol
28
+ )
29
+ HIGH =
30
+ T.let(:high, OpenAI::Realtime::RealtimeReasoningEffort::TaggedSymbol)
31
+ XHIGH =
32
+ T.let(:xhigh, OpenAI::Realtime::RealtimeReasoningEffort::TaggedSymbol)
33
+
34
+ sig do
35
+ override.returns(
36
+ T::Array[OpenAI::Realtime::RealtimeReasoningEffort::TaggedSymbol]
37
+ )
38
+ end
39
+ def self.values
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -159,6 +159,14 @@ module OpenAI
159
159
  end
160
160
  attr_writer :output_modalities
161
161
 
162
+ # Whether the model may call multiple tools in parallel. Only supported by
163
+ # reasoning Realtime models such as `gpt-realtime-2`.
164
+ sig { returns(T.nilable(T::Boolean)) }
165
+ attr_reader :parallel_tool_calls
166
+
167
+ sig { params(parallel_tool_calls: T::Boolean).void }
168
+ attr_writer :parallel_tool_calls
169
+
162
170
  # Reference to a prompt template and its variables.
163
171
  # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
164
172
  sig { returns(T.nilable(OpenAI::Responses::ResponsePrompt)) }
@@ -171,6 +179,15 @@ module OpenAI
171
179
  end
172
180
  attr_writer :prompt
173
181
 
182
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
183
+ sig { returns(T.nilable(OpenAI::Realtime::RealtimeReasoning)) }
184
+ attr_reader :reasoning
185
+
186
+ sig do
187
+ params(reasoning: OpenAI::Realtime::RealtimeReasoning::OrHash).void
188
+ end
189
+ attr_writer :reasoning
190
+
174
191
  # How the model chooses tools. Provide one of the string modes or force a specific
175
192
  # function/MCP tool.
176
193
  sig do
@@ -256,7 +273,9 @@ module OpenAI
256
273
  T::Array[
257
274
  OpenAI::Realtime::RealtimeResponseCreateParams::OutputModality::OrSymbol
258
275
  ],
276
+ parallel_tool_calls: T::Boolean,
259
277
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt::OrHash),
278
+ reasoning: OpenAI::Realtime::RealtimeReasoning::OrHash,
260
279
  tool_choice:
261
280
  T.any(
262
281
  OpenAI::Responses::ToolChoiceOptions::OrSymbol,
@@ -313,9 +332,14 @@ module OpenAI
313
332
  # transcript. Setting the output to mode `text` will disable audio output from the
314
333
  # model.
315
334
  output_modalities: nil,
335
+ # Whether the model may call multiple tools in parallel. Only supported by
336
+ # reasoning Realtime models such as `gpt-realtime-2`.
337
+ parallel_tool_calls: nil,
316
338
  # Reference to a prompt template and its variables.
317
339
  # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
318
340
  prompt: nil,
341
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
342
+ reasoning: nil,
319
343
  # How the model chooses tools. Provide one of the string modes or force a specific
320
344
  # function/MCP tool.
321
345
  tool_choice: nil,
@@ -354,7 +378,9 @@ module OpenAI
354
378
  T::Array[
355
379
  OpenAI::Realtime::RealtimeResponseCreateParams::OutputModality::OrSymbol
356
380
  ],
381
+ parallel_tool_calls: T::Boolean,
357
382
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt),
383
+ reasoning: OpenAI::Realtime::RealtimeReasoning,
358
384
  tool_choice:
359
385
  T.any(
360
386
  OpenAI::Responses::ToolChoiceOptions::OrSymbol,
@@ -274,6 +274,9 @@ module OpenAI
274
274
  # trails off with "uhhm", the model will score a low probability of turn end and
275
275
  # wait longer for the user to continue speaking. This can be useful for more
276
276
  # natural conversations, but may have a higher latency.
277
+ #
278
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
279
+ # `null`; VAD is not supported.
277
280
  sig do
278
281
  returns(
279
282
  T.nilable(
@@ -442,6 +445,9 @@ module OpenAI
442
445
  # trails off with "uhhm", the model will score a low probability of turn end and
443
446
  # wait longer for the user to continue speaking. This can be useful for more
444
447
  # natural conversations, but may have a higher latency.
448
+ #
449
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
450
+ # `null`; VAD is not supported.
445
451
  turn_detection: nil,
446
452
  # The voice the model uses to respond. Voice cannot be changed during the session
447
453
  # once the model has responded with audio at least once. Current voice options are
@@ -948,6 +954,9 @@ module OpenAI
948
954
  # trails off with "uhhm", the model will score a low probability of turn end and
949
955
  # wait longer for the user to continue speaking. This can be useful for more
950
956
  # natural conversations, but may have a higher latency.
957
+ #
958
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
959
+ # `null`; VAD is not supported.
951
960
  module TurnDetection
952
961
  extend OpenAI::Internal::Type::Union
953
962
 
@@ -125,6 +125,14 @@ module OpenAI
125
125
  end
126
126
  attr_writer :output_modalities
127
127
 
128
+ # Whether the model may call multiple tools in parallel. Only supported by
129
+ # reasoning Realtime models such as `gpt-realtime-2`.
130
+ sig { returns(T.nilable(T::Boolean)) }
131
+ attr_reader :parallel_tool_calls
132
+
133
+ sig { params(parallel_tool_calls: T::Boolean).void }
134
+ attr_writer :parallel_tool_calls
135
+
128
136
  # Reference to a prompt template and its variables.
129
137
  # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
130
138
  sig { returns(T.nilable(OpenAI::Responses::ResponsePrompt)) }
@@ -137,6 +145,15 @@ module OpenAI
137
145
  end
138
146
  attr_writer :prompt
139
147
 
148
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
149
+ sig { returns(T.nilable(OpenAI::Realtime::RealtimeReasoning)) }
150
+ attr_reader :reasoning
151
+
152
+ sig do
153
+ params(reasoning: OpenAI::Realtime::RealtimeReasoning::OrHash).void
154
+ end
155
+ attr_writer :reasoning
156
+
140
157
  # How the model chooses tools. Provide one of the string modes or force a specific
141
158
  # function/MCP tool.
142
159
  sig do
@@ -271,7 +288,9 @@ module OpenAI
271
288
  T::Array[
272
289
  OpenAI::Realtime::RealtimeSessionCreateRequest::OutputModality::OrSymbol
273
290
  ],
291
+ parallel_tool_calls: T::Boolean,
274
292
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt::OrHash),
293
+ reasoning: OpenAI::Realtime::RealtimeReasoning::OrHash,
275
294
  tool_choice:
276
295
  T.any(
277
296
  OpenAI::Responses::ToolChoiceOptions::OrSymbol,
@@ -331,9 +350,14 @@ module OpenAI
331
350
  # can be used to make the model respond with text only. It is not possible to
332
351
  # request both `text` and `audio` at the same time.
333
352
  output_modalities: nil,
353
+ # Whether the model may call multiple tools in parallel. Only supported by
354
+ # reasoning Realtime models such as `gpt-realtime-2`.
355
+ parallel_tool_calls: nil,
334
356
  # Reference to a prompt template and its variables.
335
357
  # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
336
358
  prompt: nil,
359
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
360
+ reasoning: nil,
337
361
  # How the model chooses tools. Provide one of the string modes or force a specific
338
362
  # function/MCP tool.
339
363
  tool_choice: nil,
@@ -391,7 +415,9 @@ module OpenAI
391
415
  T::Array[
392
416
  OpenAI::Realtime::RealtimeSessionCreateRequest::OutputModality::OrSymbol
393
417
  ],
418
+ parallel_tool_calls: T::Boolean,
394
419
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt),
420
+ reasoning: OpenAI::Realtime::RealtimeReasoning,
395
421
  tool_choice:
396
422
  T.any(
397
423
  OpenAI::Responses::ToolChoiceOptions::OrSymbol,
@@ -512,6 +538,11 @@ module OpenAI
512
538
  :"gpt-realtime-1.5",
513
539
  OpenAI::Realtime::RealtimeSessionCreateRequest::Model::TaggedSymbol
514
540
  )
541
+ GPT_REALTIME_2 =
542
+ T.let(
543
+ :"gpt-realtime-2",
544
+ OpenAI::Realtime::RealtimeSessionCreateRequest::Model::TaggedSymbol
545
+ )
515
546
  GPT_REALTIME_2025_08_28 =
516
547
  T.let(
517
548
  :"gpt-realtime-2025-08-28",
@@ -14,16 +14,13 @@ module OpenAI
14
14
  )
15
15
  end
16
16
 
17
- # Ephemeral key returned by the API.
18
- sig { returns(OpenAI::Realtime::RealtimeSessionClientSecret) }
19
- attr_reader :client_secret
17
+ # Unique identifier for the session that looks like `sess_1234567890abcdef`.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
20
 
21
- sig do
22
- params(
23
- client_secret: OpenAI::Realtime::RealtimeSessionClientSecret::OrHash
24
- ).void
25
- end
26
- attr_writer :client_secret
21
+ # The object type. Always `realtime.session`.
22
+ sig { returns(Symbol) }
23
+ attr_accessor :object
27
24
 
28
25
  # The type of session to create. Always `realtime` for the Realtime API.
29
26
  sig { returns(Symbol) }
@@ -45,6 +42,13 @@ module OpenAI
45
42
  end
46
43
  attr_writer :audio
47
44
 
45
+ # Expiration timestamp for the session, in seconds since epoch.
46
+ sig { returns(T.nilable(Integer)) }
47
+ attr_reader :expires_at
48
+
49
+ sig { params(expires_at: Integer).void }
50
+ attr_writer :expires_at
51
+
48
52
  # Additional fields to include in server outputs.
49
53
  #
50
54
  # `item.input_audio_transcription.logprobs`: Include logprobs for input audio
@@ -160,6 +164,15 @@ module OpenAI
160
164
  end
161
165
  attr_writer :prompt
162
166
 
167
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
168
+ sig { returns(T.nilable(OpenAI::Realtime::RealtimeReasoning)) }
169
+ attr_reader :reasoning
170
+
171
+ sig do
172
+ params(reasoning: OpenAI::Realtime::RealtimeReasoning::OrHash).void
173
+ end
174
+ attr_writer :reasoning
175
+
163
176
  # How the model chooses tools. Provide one of the string modes or force a specific
164
177
  # function/MCP tool.
165
178
  sig do
@@ -258,14 +271,13 @@ module OpenAI
258
271
  end
259
272
  attr_writer :truncation
260
273
 
261
- # A new Realtime session configuration, with an ephemeral key. Default TTL for
262
- # keys is one minute.
274
+ # A Realtime session configuration object.
263
275
  sig do
264
276
  params(
265
- client_secret:
266
- OpenAI::Realtime::RealtimeSessionClientSecret::OrHash,
277
+ id: String,
267
278
  audio:
268
279
  OpenAI::Realtime::RealtimeSessionCreateResponse::Audio::OrHash,
280
+ expires_at: Integer,
269
281
  include:
270
282
  T::Array[
271
283
  OpenAI::Realtime::RealtimeSessionCreateResponse::Include::OrSymbol
@@ -282,6 +294,7 @@ module OpenAI
282
294
  OpenAI::Realtime::RealtimeSessionCreateResponse::OutputModality::OrSymbol
283
295
  ],
284
296
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt::OrHash),
297
+ reasoning: OpenAI::Realtime::RealtimeReasoning::OrHash,
285
298
  tool_choice:
286
299
  T.any(
287
300
  OpenAI::Responses::ToolChoiceOptions::OrSymbol,
@@ -307,14 +320,17 @@ module OpenAI
307
320
  OpenAI::Realtime::RealtimeTruncation::RealtimeTruncationStrategy::OrSymbol,
308
321
  OpenAI::Realtime::RealtimeTruncationRetentionRatio::OrHash
309
322
  ),
323
+ object: Symbol,
310
324
  type: Symbol
311
325
  ).returns(T.attached_class)
312
326
  end
313
327
  def self.new(
314
- # Ephemeral key returned by the API.
315
- client_secret:,
328
+ # Unique identifier for the session that looks like `sess_1234567890abcdef`.
329
+ id:,
316
330
  # Configuration for input and output audio.
317
331
  audio: nil,
332
+ # Expiration timestamp for the session, in seconds since epoch.
333
+ expires_at: nil,
318
334
  # Additional fields to include in server outputs.
319
335
  #
320
336
  # `item.input_audio_transcription.logprobs`: Include logprobs for input audio
@@ -346,6 +362,8 @@ module OpenAI
346
362
  # Reference to a prompt template and its variables.
347
363
  # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
348
364
  prompt: nil,
365
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
366
+ reasoning: nil,
349
367
  # How the model chooses tools. Provide one of the string modes or force a specific
350
368
  # function/MCP tool.
351
369
  tool_choice: nil,
@@ -378,6 +396,8 @@ module OpenAI
378
396
  # but would instead return an error if the conversation exceeds the model's input
379
397
  # token limit.
380
398
  truncation: nil,
399
+ # The object type. Always `realtime.session`.
400
+ object: :"realtime.session",
381
401
  # The type of session to create. Always `realtime` for the Realtime API.
382
402
  type: :realtime
383
403
  )
@@ -386,9 +406,11 @@ module OpenAI
386
406
  sig do
387
407
  override.returns(
388
408
  {
389
- client_secret: OpenAI::Realtime::RealtimeSessionClientSecret,
409
+ id: String,
410
+ object: Symbol,
390
411
  type: Symbol,
391
412
  audio: OpenAI::Realtime::RealtimeSessionCreateResponse::Audio,
413
+ expires_at: Integer,
392
414
  include:
393
415
  T::Array[
394
416
  OpenAI::Realtime::RealtimeSessionCreateResponse::Include::TaggedSymbol
@@ -403,6 +425,7 @@ module OpenAI
403
425
  OpenAI::Realtime::RealtimeSessionCreateResponse::OutputModality::TaggedSymbol
404
426
  ],
405
427
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt),
428
+ reasoning: OpenAI::Realtime::RealtimeReasoning,
406
429
  tool_choice:
407
430
  OpenAI::Realtime::RealtimeSessionCreateResponse::ToolChoice::Variants,
408
431
  tools:
@@ -539,14 +562,6 @@ module OpenAI
539
562
  end
540
563
  attr_writer :noise_reduction
541
564
 
542
- # Configuration for input audio transcription, defaults to off and can be set to
543
- # `null` to turn off once on. Input audio transcription is not native to the
544
- # model, since the model consumes audio directly. Transcription runs
545
- # asynchronously through
546
- # [the /audio/transcriptions endpoint](https://platform.openai.com/docs/api-reference/audio/createTranscription)
547
- # and should be treated as guidance of input audio content rather than precisely
548
- # what the model heard. The client can optionally set the language and prompt for
549
- # transcription, these offer additional guidance to the transcription service.
550
565
  sig { returns(T.nilable(OpenAI::Realtime::AudioTranscription)) }
551
566
  attr_reader :transcription
552
567
 
@@ -570,6 +585,9 @@ module OpenAI
570
585
  # trails off with "uhhm", the model will score a low probability of turn end and
571
586
  # wait longer for the user to continue speaking. This can be useful for more
572
587
  # natural conversations, but may have a higher latency.
588
+ #
589
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
590
+ # `null`; VAD is not supported.
573
591
  sig do
574
592
  returns(
575
593
  T.nilable(
@@ -608,14 +626,6 @@ module OpenAI
608
626
  # detection accuracy (reducing false positives) and model performance by improving
609
627
  # perception of the input audio.
610
628
  noise_reduction: nil,
611
- # Configuration for input audio transcription, defaults to off and can be set to
612
- # `null` to turn off once on. Input audio transcription is not native to the
613
- # model, since the model consumes audio directly. Transcription runs
614
- # asynchronously through
615
- # [the /audio/transcriptions endpoint](https://platform.openai.com/docs/api-reference/audio/createTranscription)
616
- # and should be treated as guidance of input audio content rather than precisely
617
- # what the model heard. The client can optionally set the language and prompt for
618
- # transcription, these offer additional guidance to the transcription service.
619
629
  transcription: nil,
620
630
  # Configuration for turn detection, ether Server VAD or Semantic VAD. This can be
621
631
  # set to `null` to turn off, in which case the client must manually trigger model
@@ -630,6 +640,9 @@ module OpenAI
630
640
  # trails off with "uhhm", the model will score a low probability of turn end and
631
641
  # wait longer for the user to continue speaking. This can be useful for more
632
642
  # natural conversations, but may have a higher latency.
643
+ #
644
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
645
+ # `null`; VAD is not supported.
633
646
  turn_detection: nil
634
647
  )
635
648
  end
@@ -717,6 +730,9 @@ module OpenAI
717
730
  # trails off with "uhhm", the model will score a low probability of turn end and
718
731
  # wait longer for the user to continue speaking. This can be useful for more
719
732
  # natural conversations, but may have a higher latency.
733
+ #
734
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
735
+ # `null`; VAD is not supported.
720
736
  module TurnDetection
721
737
  extend OpenAI::Internal::Type::Union
722
738
 
@@ -1328,6 +1344,11 @@ module OpenAI
1328
1344
  :"gpt-realtime-1.5",
1329
1345
  OpenAI::Realtime::RealtimeSessionCreateResponse::Model::TaggedSymbol
1330
1346
  )
1347
+ GPT_REALTIME_2 =
1348
+ T.let(
1349
+ :"gpt-realtime-2",
1350
+ OpenAI::Realtime::RealtimeSessionCreateResponse::Model::TaggedSymbol
1351
+ )
1331
1352
  GPT_REALTIME_2025_08_28 =
1332
1353
  T.let(
1333
1354
  :"gpt-realtime-2025-08-28",