openai 0.63.0 → 0.65.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 (305) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/README.md +1 -1
  4. data/lib/openai/internal/transport/base_client.rb +2 -0
  5. data/lib/openai/models/admin/organization/audit_log_list_params.rb +6 -0
  6. data/lib/openai/models/admin/organization/audit_log_list_response.rb +231 -1
  7. data/lib/openai/models/admin/organization/data_retention_retrieve_params.rb +18 -0
  8. data/lib/openai/models/admin/organization/data_retention_update_params.rb +40 -0
  9. data/lib/openai/models/admin/organization/group.rb +16 -3
  10. data/lib/openai/models/admin/organization/group_retrieve_params.rb +24 -0
  11. data/lib/openai/models/admin/organization/groups/role_list_response.rb +27 -1
  12. data/lib/openai/models/admin/organization/groups/role_retrieve_params.rb +32 -0
  13. data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +134 -0
  14. data/lib/openai/models/admin/organization/groups/user_retrieve_params.rb +32 -0
  15. data/lib/openai/models/admin/organization/groups/user_retrieve_response.rb +79 -0
  16. data/lib/openai/models/admin/organization/invite_create_params.rb +2 -1
  17. data/lib/openai/models/admin/organization/organization_data_retention.rb +48 -0
  18. data/lib/openai/models/admin/organization/organization_spend_alert.rb +120 -0
  19. data/lib/openai/models/admin/organization/organization_spend_alert_deleted.rb +41 -0
  20. data/lib/openai/models/admin/organization/projects/data_retention_retrieve_params.rb +26 -0
  21. data/lib/openai/models/admin/organization/projects/data_retention_update_params.rb +51 -0
  22. data/lib/openai/models/admin/organization/projects/group_retrieve_params.rb +53 -0
  23. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +27 -1
  24. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_params.rb +40 -0
  25. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +136 -0
  26. data/lib/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rb +26 -0
  27. data/lib/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rb +150 -0
  28. data/lib/openai/models/admin/organization/projects/model_permission_delete_params.rb +26 -0
  29. data/lib/openai/models/admin/organization/projects/model_permission_retrieve_params.rb +26 -0
  30. data/lib/openai/models/admin/organization/projects/model_permission_update_params.rb +54 -0
  31. data/lib/openai/models/admin/organization/projects/project_data_retention.rb +52 -0
  32. data/lib/openai/models/admin/organization/projects/project_group.rb +16 -3
  33. data/lib/openai/models/admin/organization/projects/project_hosted_tool_permissions.rb +133 -0
  34. data/lib/openai/models/admin/organization/projects/project_model_permissions.rb +56 -0
  35. data/lib/openai/models/admin/organization/projects/project_model_permissions_deleted.rb +35 -0
  36. data/lib/openai/models/admin/organization/projects/project_spend_alert.rb +122 -0
  37. data/lib/openai/models/admin/organization/projects/project_spend_alert_deleted.rb +43 -0
  38. data/lib/openai/models/admin/organization/projects/role_retrieve_params.rb +32 -0
  39. data/lib/openai/models/admin/organization/projects/service_account_update_params.rb +61 -0
  40. data/lib/openai/models/admin/organization/projects/spend_alert_create_params.rb +109 -0
  41. data/lib/openai/models/admin/organization/projects/spend_alert_delete_params.rb +32 -0
  42. data/lib/openai/models/admin/organization/projects/spend_alert_list_params.rb +76 -0
  43. data/lib/openai/models/admin/organization/projects/spend_alert_update_params.rb +116 -0
  44. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +27 -1
  45. data/lib/openai/models/admin/organization/projects/users/role_retrieve_params.rb +40 -0
  46. data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +136 -0
  47. data/lib/openai/models/admin/organization/role_retrieve_params.rb +24 -0
  48. data/lib/openai/models/admin/organization/spend_alert_create_params.rb +100 -0
  49. data/lib/openai/models/admin/organization/spend_alert_delete_params.rb +24 -0
  50. data/lib/openai/models/admin/organization/spend_alert_list_params.rb +66 -0
  51. data/lib/openai/models/admin/organization/spend_alert_update_params.rb +107 -0
  52. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +148 -3
  53. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +148 -3
  54. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +148 -3
  55. data/lib/openai/models/admin/organization/usage_completions_response.rb +148 -3
  56. data/lib/openai/models/admin/organization/usage_costs_response.rb +148 -3
  57. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +148 -3
  58. data/lib/openai/models/admin/organization/usage_file_search_calls_params.rb +136 -0
  59. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +889 -0
  60. data/lib/openai/models/admin/organization/usage_images_response.rb +148 -3
  61. data/lib/openai/models/admin/organization/usage_moderations_response.rb +148 -3
  62. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +148 -3
  63. data/lib/openai/models/admin/organization/usage_web_search_calls_params.rb +157 -0
  64. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +889 -0
  65. data/lib/openai/models/admin/organization/users/role_list_response.rb +27 -1
  66. data/lib/openai/models/admin/organization/users/role_retrieve_params.rb +32 -0
  67. data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +134 -0
  68. data/lib/openai/models/chat/completion_create_params.rb +16 -0
  69. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  70. data/lib/openai/models/conversations/conversation_item.rb +57 -1
  71. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  72. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  73. data/lib/openai/models/responses/compacted_response.rb +2 -2
  74. data/lib/openai/models/responses/input_token_count_params.rb +41 -4
  75. data/lib/openai/models/responses/response.rb +21 -5
  76. data/lib/openai/models/responses/response_compact_params.rb +3 -3
  77. data/lib/openai/models/responses/response_create_params.rb +19 -3
  78. data/lib/openai/models/responses/response_function_web_search.rb +11 -9
  79. data/lib/openai/models/responses/response_input_item.rb +54 -1
  80. data/lib/openai/models/responses/response_item.rb +57 -1
  81. data/lib/openai/models/responses/response_item_list.rb +2 -2
  82. data/lib/openai/models/responses/response_output_item.rb +57 -1
  83. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  84. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  85. data/lib/openai/models/responses/responses_client_event.rb +19 -3
  86. data/lib/openai/resources/admin/organization/data_retention.rb +60 -0
  87. data/lib/openai/resources/admin/organization/groups/roles.rb +28 -0
  88. data/lib/openai/resources/admin/organization/groups/users.rb +28 -0
  89. data/lib/openai/resources/admin/organization/groups.rb +21 -0
  90. data/lib/openai/resources/admin/organization/projects/data_retention.rb +66 -0
  91. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +34 -0
  92. data/lib/openai/resources/admin/organization/projects/groups.rb +32 -0
  93. data/lib/openai/resources/admin/organization/projects/hosted_tool_permissions.rb +75 -0
  94. data/lib/openai/resources/admin/organization/projects/model_permissions.rb +89 -0
  95. data/lib/openai/resources/admin/organization/projects/roles.rb +28 -0
  96. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +33 -0
  97. data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +153 -0
  98. data/lib/openai/resources/admin/organization/projects/users/roles.rb +34 -0
  99. data/lib/openai/resources/admin/organization/projects.rb +18 -0
  100. data/lib/openai/resources/admin/organization/roles.rb +21 -0
  101. data/lib/openai/resources/admin/organization/spend_alerts.rb +133 -0
  102. data/lib/openai/resources/admin/organization/usage.rb +94 -0
  103. data/lib/openai/resources/admin/organization/users/roles.rb +28 -0
  104. data/lib/openai/resources/admin/organization.rb +8 -0
  105. data/lib/openai/resources/conversations/items.rb +3 -3
  106. data/lib/openai/resources/conversations.rb +1 -1
  107. data/lib/openai/resources/responses/input_items.rb +1 -1
  108. data/lib/openai/resources/responses/input_tokens.rb +4 -2
  109. data/lib/openai/resources/responses.rb +3 -3
  110. data/lib/openai/version.rb +1 -1
  111. data/lib/openai.rb +51 -0
  112. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +30 -0
  113. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +489 -3
  114. data/rbi/openai/models/admin/organization/data_retention_retrieve_params.rbi +34 -0
  115. data/rbi/openai/models/admin/organization/data_retention_update_params.rbi +101 -0
  116. data/rbi/openai/models/admin/organization/group.rbi +39 -3
  117. data/rbi/openai/models/admin/organization/group_retrieve_params.rbi +42 -0
  118. data/rbi/openai/models/admin/organization/groups/role_list_response.rbi +58 -0
  119. data/rbi/openai/models/admin/organization/groups/role_retrieve_params.rbi +52 -0
  120. data/rbi/openai/models/admin/organization/groups/role_retrieve_response.rbi +186 -0
  121. data/rbi/openai/models/admin/organization/groups/user_retrieve_params.rbi +52 -0
  122. data/rbi/openai/models/admin/organization/groups/user_retrieve_response.rbi +128 -0
  123. data/rbi/openai/models/admin/organization/invite_create_params.rbi +4 -2
  124. data/rbi/openai/models/admin/organization/organization_data_retention.rbi +106 -0
  125. data/rbi/openai/models/admin/organization/organization_spend_alert.rbi +225 -0
  126. data/rbi/openai/models/admin/organization/organization_spend_alert_deleted.rbi +58 -0
  127. data/rbi/openai/models/admin/organization/projects/data_retention_retrieve_params.rbi +44 -0
  128. data/rbi/openai/models/admin/organization/projects/data_retention_update_params.rbi +119 -0
  129. data/rbi/openai/models/admin/organization/projects/group_retrieve_params.rbi +115 -0
  130. data/rbi/openai/models/admin/organization/projects/groups/role_list_response.rbi +58 -0
  131. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_params.rbi +64 -0
  132. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_response.rbi +188 -0
  133. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbi +44 -0
  134. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbi +330 -0
  135. data/rbi/openai/models/admin/organization/projects/model_permission_delete_params.rbi +44 -0
  136. data/rbi/openai/models/admin/organization/projects/model_permission_retrieve_params.rbi +44 -0
  137. data/rbi/openai/models/admin/organization/projects/model_permission_update_params.rbi +107 -0
  138. data/rbi/openai/models/admin/organization/projects/project_data_retention.rbi +118 -0
  139. data/rbi/openai/models/admin/organization/projects/project_group.rbi +44 -3
  140. data/rbi/openai/models/admin/organization/projects/project_hosted_tool_permissions.rbi +281 -0
  141. data/rbi/openai/models/admin/organization/projects/project_model_permissions.rbi +106 -0
  142. data/rbi/openai/models/admin/organization/projects/project_model_permissions_deleted.rbi +50 -0
  143. data/rbi/openai/models/admin/organization/projects/project_spend_alert.rbi +227 -0
  144. data/rbi/openai/models/admin/organization/projects/project_spend_alert_deleted.rbi +59 -0
  145. data/rbi/openai/models/admin/organization/projects/role_retrieve_params.rbi +52 -0
  146. data/rbi/openai/models/admin/organization/projects/service_account_update_params.rbi +126 -0
  147. data/rbi/openai/models/admin/organization/projects/spend_alert_create_params.rbi +220 -0
  148. data/rbi/openai/models/admin/organization/projects/spend_alert_delete_params.rbi +52 -0
  149. data/rbi/openai/models/admin/organization/projects/spend_alert_list_params.rbi +146 -0
  150. data/rbi/openai/models/admin/organization/projects/spend_alert_update_params.rbi +226 -0
  151. data/rbi/openai/models/admin/organization/projects/users/role_list_response.rbi +58 -0
  152. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_params.rbi +59 -0
  153. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_response.rbi +188 -0
  154. data/rbi/openai/models/admin/organization/role_retrieve_params.rbi +42 -0
  155. data/rbi/openai/models/admin/organization/spend_alert_create_params.rbi +212 -0
  156. data/rbi/openai/models/admin/organization/spend_alert_delete_params.rbi +42 -0
  157. data/rbi/openai/models/admin/organization/spend_alert_list_params.rbi +138 -0
  158. data/rbi/openai/models/admin/organization/spend_alert_update_params.rbi +218 -0
  159. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +186 -0
  160. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +186 -0
  161. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +186 -0
  162. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +186 -0
  163. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +186 -0
  164. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +186 -0
  165. data/rbi/openai/models/admin/organization/usage_file_search_calls_params.rbi +284 -0
  166. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +1225 -0
  167. data/rbi/openai/models/admin/organization/usage_images_response.rbi +186 -0
  168. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +186 -0
  169. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +186 -0
  170. data/rbi/openai/models/admin/organization/usage_web_search_calls_params.rbi +360 -0
  171. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +1225 -0
  172. data/rbi/openai/models/admin/organization/users/role_list_response.rbi +58 -0
  173. data/rbi/openai/models/admin/organization/users/role_retrieve_params.rbi +52 -0
  174. data/rbi/openai/models/admin/organization/users/role_retrieve_response.rbi +186 -0
  175. data/rbi/openai/models/chat/completion_create_params.rbi +24 -0
  176. data/rbi/openai/models/conversations/conversation_create_params.rbi +6 -0
  177. data/rbi/openai/models/conversations/conversation_item.rbi +150 -0
  178. data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
  179. data/rbi/openai/models/conversations/item_create_params.rbi +6 -0
  180. data/rbi/openai/models/responses/compacted_response.rbi +1 -0
  181. data/rbi/openai/models/responses/input_token_count_params.rbi +85 -0
  182. data/rbi/openai/models/responses/response.rbi +25 -0
  183. data/rbi/openai/models/responses/response_create_params.rbi +24 -0
  184. data/rbi/openai/models/responses/response_function_web_search.rbi +11 -8
  185. data/rbi/openai/models/responses/response_input_item.rbi +147 -0
  186. data/rbi/openai/models/responses/response_item.rbi +150 -0
  187. data/rbi/openai/models/responses/response_item_list.rbi +1 -0
  188. data/rbi/openai/models/responses/response_output_item.rbi +150 -0
  189. data/rbi/openai/models/responses/response_output_item_added_event.rbi +1 -0
  190. data/rbi/openai/models/responses/response_output_item_done_event.rbi +1 -0
  191. data/rbi/openai/models/responses/responses_client_event.rbi +24 -0
  192. data/rbi/openai/resources/admin/organization/data_retention.rbi +40 -0
  193. data/rbi/openai/resources/admin/organization/groups/roles.rbi +19 -0
  194. data/rbi/openai/resources/admin/organization/groups/users.rbi +19 -0
  195. data/rbi/openai/resources/admin/organization/groups.rbi +14 -0
  196. data/rbi/openai/resources/admin/organization/invites.rbi +2 -1
  197. data/rbi/openai/resources/admin/organization/projects/data_retention.rbi +54 -0
  198. data/rbi/openai/resources/admin/organization/projects/groups/roles.rbi +22 -0
  199. data/rbi/openai/resources/admin/organization/projects/groups.rbi +21 -0
  200. data/rbi/openai/resources/admin/organization/projects/hosted_tool_permissions.rbi +80 -0
  201. data/rbi/openai/resources/admin/organization/projects/model_permissions.rbi +73 -0
  202. data/rbi/openai/resources/admin/organization/projects/roles.rbi +17 -0
  203. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +26 -0
  204. data/rbi/openai/resources/admin/organization/projects/spend_alerts.rbi +135 -0
  205. data/rbi/openai/resources/admin/organization/projects/users/roles.rbi +22 -0
  206. data/rbi/openai/resources/admin/organization/projects.rbi +28 -0
  207. data/rbi/openai/resources/admin/organization/roles.rbi +14 -0
  208. data/rbi/openai/resources/admin/organization/spend_alerts.rbi +117 -0
  209. data/rbi/openai/resources/admin/organization/usage.rbi +116 -0
  210. data/rbi/openai/resources/admin/organization/users/roles.rbi +19 -0
  211. data/rbi/openai/resources/admin/organization.rbi +6 -0
  212. data/rbi/openai/resources/chat/completions.rbi +16 -0
  213. data/rbi/openai/resources/conversations/items.rbi +2 -0
  214. data/rbi/openai/resources/conversations.rbi +2 -0
  215. data/rbi/openai/resources/responses/input_tokens.rbi +9 -0
  216. data/rbi/openai/resources/responses.rbi +16 -0
  217. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +12 -0
  218. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +216 -3
  219. data/sig/openai/models/admin/organization/data_retention_retrieve_params.rbs +19 -0
  220. data/sig/openai/models/admin/organization/data_retention_update_params.rbs +47 -0
  221. data/sig/openai/models/admin/organization/group.rbs +15 -4
  222. data/sig/openai/models/admin/organization/group_retrieve_params.rbs +27 -0
  223. data/sig/openai/models/admin/organization/groups/role_list_response.rbs +21 -0
  224. data/sig/openai/models/admin/organization/groups/role_retrieve_params.rbs +34 -0
  225. data/sig/openai/models/admin/organization/groups/role_retrieve_response.rbs +97 -0
  226. data/sig/openai/models/admin/organization/groups/user_retrieve_params.rbs +34 -0
  227. data/sig/openai/models/admin/organization/groups/user_retrieve_response.rbs +62 -0
  228. data/sig/openai/models/admin/organization/organization_data_retention.rbs +48 -0
  229. data/sig/openai/models/admin/organization/organization_spend_alert.rbs +98 -0
  230. data/sig/openai/models/admin/organization/organization_spend_alert_deleted.rbs +36 -0
  231. data/sig/openai/models/admin/organization/projects/data_retention_retrieve_params.rbs +29 -0
  232. data/sig/openai/models/admin/organization/projects/data_retention_update_params.rbs +58 -0
  233. data/sig/openai/models/admin/organization/projects/group_retrieve_params.rbs +57 -0
  234. data/sig/openai/models/admin/organization/projects/groups/role_list_response.rbs +21 -0
  235. data/sig/openai/models/admin/organization/projects/groups/role_retrieve_params.rbs +40 -0
  236. data/sig/openai/models/admin/organization/projects/groups/role_retrieve_response.rbs +99 -0
  237. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbs +29 -0
  238. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbs +107 -0
  239. data/sig/openai/models/admin/organization/projects/model_permission_delete_params.rbs +29 -0
  240. data/sig/openai/models/admin/organization/projects/model_permission_retrieve_params.rbs +29 -0
  241. data/sig/openai/models/admin/organization/projects/model_permission_update_params.rbs +53 -0
  242. data/sig/openai/models/admin/organization/projects/project_data_retention.rbs +54 -0
  243. data/sig/openai/models/admin/organization/projects/project_group.rbs +15 -4
  244. data/sig/openai/models/admin/organization/projects/project_hosted_tool_permissions.rbs +98 -0
  245. data/sig/openai/models/admin/organization/projects/project_model_permissions.rbs +49 -0
  246. data/sig/openai/models/admin/organization/projects/project_model_permissions_deleted.rbs +30 -0
  247. data/sig/openai/models/admin/organization/projects/project_spend_alert.rbs +100 -0
  248. data/sig/openai/models/admin/organization/projects/project_spend_alert_deleted.rbs +38 -0
  249. data/sig/openai/models/admin/organization/projects/role_retrieve_params.rbs +34 -0
  250. data/sig/openai/models/admin/organization/projects/service_account_update_params.rbs +64 -0
  251. data/sig/openai/models/admin/organization/projects/spend_alert_create_params.rbs +99 -0
  252. data/sig/openai/models/admin/organization/projects/spend_alert_delete_params.rbs +34 -0
  253. data/sig/openai/models/admin/organization/projects/spend_alert_list_params.rbs +73 -0
  254. data/sig/openai/models/admin/organization/projects/spend_alert_update_params.rbs +104 -0
  255. data/sig/openai/models/admin/organization/projects/users/role_list_response.rbs +21 -0
  256. data/sig/openai/models/admin/organization/projects/users/role_retrieve_params.rbs +40 -0
  257. data/sig/openai/models/admin/organization/projects/users/role_retrieve_response.rbs +99 -0
  258. data/sig/openai/models/admin/organization/role_retrieve_params.rbs +27 -0
  259. data/sig/openai/models/admin/organization/spend_alert_create_params.rbs +92 -0
  260. data/sig/openai/models/admin/organization/spend_alert_delete_params.rbs +27 -0
  261. data/sig/openai/models/admin/organization/spend_alert_list_params.rbs +66 -0
  262. data/sig/openai/models/admin/organization/spend_alert_update_params.rbs +97 -0
  263. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +96 -0
  264. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +96 -0
  265. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +96 -0
  266. data/sig/openai/models/admin/organization/usage_completions_response.rbs +96 -0
  267. data/sig/openai/models/admin/organization/usage_costs_response.rbs +96 -0
  268. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +96 -0
  269. data/sig/openai/models/admin/organization/usage_file_search_calls_params.rbs +123 -0
  270. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +628 -0
  271. data/sig/openai/models/admin/organization/usage_images_response.rbs +96 -0
  272. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +96 -0
  273. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +96 -0
  274. data/sig/openai/models/admin/organization/usage_web_search_calls_params.rbs +145 -0
  275. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +628 -0
  276. data/sig/openai/models/admin/organization/users/role_list_response.rbs +21 -0
  277. data/sig/openai/models/admin/organization/users/role_retrieve_params.rbs +34 -0
  278. data/sig/openai/models/admin/organization/users/role_retrieve_response.rbs +97 -0
  279. data/sig/openai/models/conversations/conversation_item.rbs +58 -0
  280. data/sig/openai/models/responses/input_token_count_params.rbs +20 -0
  281. data/sig/openai/models/responses/response_function_web_search.rbs +7 -5
  282. data/sig/openai/models/responses/response_input_item.rbs +44 -0
  283. data/sig/openai/models/responses/response_item.rbs +58 -0
  284. data/sig/openai/models/responses/response_output_item.rbs +58 -0
  285. data/sig/openai/resources/admin/organization/data_retention.rbs +20 -0
  286. data/sig/openai/resources/admin/organization/groups/roles.rbs +6 -0
  287. data/sig/openai/resources/admin/organization/groups/users.rbs +6 -0
  288. data/sig/openai/resources/admin/organization/groups.rbs +5 -0
  289. data/sig/openai/resources/admin/organization/projects/data_retention.rbs +24 -0
  290. data/sig/openai/resources/admin/organization/projects/groups/roles.rbs +7 -0
  291. data/sig/openai/resources/admin/organization/projects/groups.rbs +7 -0
  292. data/sig/openai/resources/admin/organization/projects/hosted_tool_permissions.rbs +28 -0
  293. data/sig/openai/resources/admin/organization/projects/model_permissions.rbs +30 -0
  294. data/sig/openai/resources/admin/organization/projects/roles.rbs +6 -0
  295. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +8 -0
  296. data/sig/openai/resources/admin/organization/projects/spend_alerts.rbs +47 -0
  297. data/sig/openai/resources/admin/organization/projects/users/roles.rbs +7 -0
  298. data/sig/openai/resources/admin/organization/projects.rbs +8 -0
  299. data/sig/openai/resources/admin/organization/roles.rbs +5 -0
  300. data/sig/openai/resources/admin/organization/spend_alerts.rbs +41 -0
  301. data/sig/openai/resources/admin/organization/usage.rbs +29 -0
  302. data/sig/openai/resources/admin/organization/users/roles.rbs +6 -0
  303. data/sig/openai/resources/admin/organization.rbs +4 -0
  304. data/sig/openai/resources/responses/input_tokens.rbs +1 -0
  305. metadata +155 -2
@@ -0,0 +1,107 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module Projects
6
+ type hosted_tool_permission_update_params =
7
+ {
8
+ project_id: String,
9
+ code_interpreter: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::CodeInterpreter?,
10
+ file_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::FileSearch?,
11
+ image_generation: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::ImageGeneration?,
12
+ mcp: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::Mcp?,
13
+ web_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::WebSearch?
14
+ }
15
+ & OpenAI::Internal::Type::request_parameters
16
+
17
+ class HostedToolPermissionUpdateParams < OpenAI::Internal::Type::BaseModel
18
+ extend OpenAI::Internal::Type::RequestParameters::Converter
19
+ include OpenAI::Internal::Type::RequestParameters
20
+
21
+ attr_accessor project_id: String
22
+
23
+ attr_accessor code_interpreter: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::CodeInterpreter?
24
+
25
+ attr_accessor file_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::FileSearch?
26
+
27
+ attr_accessor image_generation: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::ImageGeneration?
28
+
29
+ attr_accessor mcp: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::Mcp?
30
+
31
+ attr_accessor web_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::WebSearch?
32
+
33
+ def initialize: (
34
+ project_id: String,
35
+ ?code_interpreter: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::CodeInterpreter?,
36
+ ?file_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::FileSearch?,
37
+ ?image_generation: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::ImageGeneration?,
38
+ ?mcp: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::Mcp?,
39
+ ?web_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::WebSearch?,
40
+ ?request_options: OpenAI::request_opts
41
+ ) -> void
42
+
43
+ def to_hash: -> {
44
+ project_id: String,
45
+ code_interpreter: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::CodeInterpreter?,
46
+ file_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::FileSearch?,
47
+ image_generation: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::ImageGeneration?,
48
+ mcp: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::Mcp?,
49
+ web_search: OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams::WebSearch?,
50
+ request_options: OpenAI::RequestOptions
51
+ }
52
+
53
+ type code_interpreter = { enabled: bool }
54
+
55
+ class CodeInterpreter < OpenAI::Internal::Type::BaseModel
56
+ attr_accessor enabled: bool
57
+
58
+ def initialize: (enabled: bool) -> void
59
+
60
+ def to_hash: -> { enabled: bool }
61
+ end
62
+
63
+ type file_search = { enabled: bool }
64
+
65
+ class FileSearch < OpenAI::Internal::Type::BaseModel
66
+ attr_accessor enabled: bool
67
+
68
+ def initialize: (enabled: bool) -> void
69
+
70
+ def to_hash: -> { enabled: bool }
71
+ end
72
+
73
+ type image_generation = { enabled: bool }
74
+
75
+ class ImageGeneration < OpenAI::Internal::Type::BaseModel
76
+ attr_accessor enabled: bool
77
+
78
+ def initialize: (enabled: bool) -> void
79
+
80
+ def to_hash: -> { enabled: bool }
81
+ end
82
+
83
+ type mcp = { enabled: bool }
84
+
85
+ class Mcp < OpenAI::Internal::Type::BaseModel
86
+ attr_accessor enabled: bool
87
+
88
+ def initialize: (enabled: bool) -> void
89
+
90
+ def to_hash: -> { enabled: bool }
91
+ end
92
+
93
+ type web_search = { enabled: bool }
94
+
95
+ class WebSearch < OpenAI::Internal::Type::BaseModel
96
+ attr_accessor enabled: bool
97
+
98
+ def initialize: (enabled: bool) -> void
99
+
100
+ def to_hash: -> { enabled: bool }
101
+ end
102
+ end
103
+ end
104
+ end
105
+ end
106
+ end
107
+ end
@@ -0,0 +1,29 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module Projects
6
+ type model_permission_delete_params =
7
+ { project_id: String } & OpenAI::Internal::Type::request_parameters
8
+
9
+ class ModelPermissionDeleteParams < OpenAI::Internal::Type::BaseModel
10
+ extend OpenAI::Internal::Type::RequestParameters::Converter
11
+ include OpenAI::Internal::Type::RequestParameters
12
+
13
+ attr_accessor project_id: String
14
+
15
+ def initialize: (
16
+ project_id: String,
17
+ ?request_options: OpenAI::request_opts
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ project_id: String,
22
+ request_options: OpenAI::RequestOptions
23
+ }
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,29 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module Projects
6
+ type model_permission_retrieve_params =
7
+ { project_id: String } & OpenAI::Internal::Type::request_parameters
8
+
9
+ class ModelPermissionRetrieveParams < OpenAI::Internal::Type::BaseModel
10
+ extend OpenAI::Internal::Type::RequestParameters::Converter
11
+ include OpenAI::Internal::Type::RequestParameters
12
+
13
+ attr_accessor project_id: String
14
+
15
+ def initialize: (
16
+ project_id: String,
17
+ ?request_options: OpenAI::request_opts
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ project_id: String,
22
+ request_options: OpenAI::RequestOptions
23
+ }
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,53 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module Projects
6
+ type model_permission_update_params =
7
+ {
8
+ project_id: String,
9
+ mode: OpenAI::Models::Admin::Organization::Projects::ModelPermissionUpdateParams::mode,
10
+ model_ids: ::Array[String]
11
+ }
12
+ & OpenAI::Internal::Type::request_parameters
13
+
14
+ class ModelPermissionUpdateParams < OpenAI::Internal::Type::BaseModel
15
+ extend OpenAI::Internal::Type::RequestParameters::Converter
16
+ include OpenAI::Internal::Type::RequestParameters
17
+
18
+ attr_accessor project_id: String
19
+
20
+ attr_accessor mode: OpenAI::Models::Admin::Organization::Projects::ModelPermissionUpdateParams::mode
21
+
22
+ attr_accessor model_ids: ::Array[String]
23
+
24
+ def initialize: (
25
+ project_id: String,
26
+ mode: OpenAI::Models::Admin::Organization::Projects::ModelPermissionUpdateParams::mode,
27
+ model_ids: ::Array[String],
28
+ ?request_options: OpenAI::request_opts
29
+ ) -> void
30
+
31
+ def to_hash: -> {
32
+ project_id: String,
33
+ mode: OpenAI::Models::Admin::Organization::Projects::ModelPermissionUpdateParams::mode,
34
+ model_ids: ::Array[String],
35
+ request_options: OpenAI::RequestOptions
36
+ }
37
+
38
+ type mode = :allow_list | :deny_list
39
+
40
+ module Mode
41
+ extend OpenAI::Internal::Type::Enum
42
+
43
+ ALLOW_LIST: :allow_list
44
+ DENY_LIST: :deny_list
45
+
46
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::Projects::ModelPermissionUpdateParams::mode]
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,54 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ class ProjectDataRetention = Projects::ProjectDataRetention
6
+
7
+ module Projects
8
+ type project_data_retention =
9
+ {
10
+ object: :"project.data_retention",
11
+ type: OpenAI::Models::Admin::Organization::Projects::ProjectDataRetention::type_
12
+ }
13
+
14
+ class ProjectDataRetention < OpenAI::Internal::Type::BaseModel
15
+ attr_accessor object: :"project.data_retention"
16
+
17
+ attr_accessor type: OpenAI::Models::Admin::Organization::Projects::ProjectDataRetention::type_
18
+
19
+ def initialize: (
20
+ type: OpenAI::Models::Admin::Organization::Projects::ProjectDataRetention::type_,
21
+ ?object: :"project.data_retention"
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ object: :"project.data_retention",
26
+ type: OpenAI::Models::Admin::Organization::Projects::ProjectDataRetention::type_
27
+ }
28
+
29
+ type type_ =
30
+ :organization_default
31
+ | :none
32
+ | :zero_data_retention
33
+ | :modified_abuse_monitoring
34
+ | :enhanced_zero_data_retention
35
+ | :enhanced_modified_abuse_monitoring
36
+
37
+ module Type
38
+ extend OpenAI::Internal::Type::Enum
39
+
40
+ ORGANIZATION_DEFAULT: :organization_default
41
+ NONE: :none
42
+ ZERO_DATA_RETENTION: :zero_data_retention
43
+ MODIFIED_ABUSE_MONITORING: :modified_abuse_monitoring
44
+ ENHANCED_ZERO_DATA_RETENTION: :enhanced_zero_data_retention
45
+ ENHANCED_MODIFIED_ABUSE_MONITORING: :enhanced_modified_abuse_monitoring
46
+
47
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::Projects::ProjectDataRetention::type_]
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -10,7 +10,7 @@ module OpenAI
10
10
  created_at: Integer,
11
11
  group_id: String,
12
12
  group_name: String,
13
- group_type: String,
13
+ group_type: OpenAI::Models::Admin::Organization::Projects::ProjectGroup::group_type,
14
14
  object: :"project.group",
15
15
  project_id: String
16
16
  }
@@ -22,7 +22,7 @@ module OpenAI
22
22
 
23
23
  attr_accessor group_name: String
24
24
 
25
- attr_accessor group_type: String
25
+ attr_accessor group_type: OpenAI::Models::Admin::Organization::Projects::ProjectGroup::group_type
26
26
 
27
27
  attr_accessor object: :"project.group"
28
28
 
@@ -32,7 +32,7 @@ module OpenAI
32
32
  created_at: Integer,
33
33
  group_id: String,
34
34
  group_name: String,
35
- group_type: String,
35
+ group_type: OpenAI::Models::Admin::Organization::Projects::ProjectGroup::group_type,
36
36
  project_id: String,
37
37
  ?object: :"project.group"
38
38
  ) -> void
@@ -41,10 +41,21 @@ module OpenAI
41
41
  created_at: Integer,
42
42
  group_id: String,
43
43
  group_name: String,
44
- group_type: String,
44
+ group_type: OpenAI::Models::Admin::Organization::Projects::ProjectGroup::group_type,
45
45
  object: :"project.group",
46
46
  project_id: String
47
47
  }
48
+
49
+ type group_type = :group | :tenant_group
50
+
51
+ module GroupType
52
+ extend OpenAI::Internal::Type::Enum
53
+
54
+ GROUP: :group
55
+ TENANT_GROUP: :tenant_group
56
+
57
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::Projects::ProjectGroup::group_type]
58
+ end
48
59
  end
49
60
  end
50
61
  end
@@ -0,0 +1,98 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ class ProjectHostedToolPermissions = Projects::ProjectHostedToolPermissions
6
+
7
+ module Projects
8
+ type project_hosted_tool_permissions =
9
+ {
10
+ code_interpreter: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::CodeInterpreter,
11
+ file_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::FileSearch,
12
+ image_generation: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::ImageGeneration,
13
+ mcp: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::Mcp,
14
+ web_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::WebSearch
15
+ }
16
+
17
+ class ProjectHostedToolPermissions < OpenAI::Internal::Type::BaseModel
18
+ attr_accessor code_interpreter: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::CodeInterpreter
19
+
20
+ attr_accessor file_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::FileSearch
21
+
22
+ attr_accessor image_generation: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::ImageGeneration
23
+
24
+ attr_accessor mcp: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::Mcp
25
+
26
+ attr_accessor web_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::WebSearch
27
+
28
+ def initialize: (
29
+ code_interpreter: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::CodeInterpreter,
30
+ file_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::FileSearch,
31
+ image_generation: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::ImageGeneration,
32
+ mcp: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::Mcp,
33
+ web_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::WebSearch
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ code_interpreter: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::CodeInterpreter,
38
+ file_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::FileSearch,
39
+ image_generation: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::ImageGeneration,
40
+ mcp: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::Mcp,
41
+ web_search: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions::WebSearch
42
+ }
43
+
44
+ type code_interpreter = { enabled: bool }
45
+
46
+ class CodeInterpreter < OpenAI::Internal::Type::BaseModel
47
+ attr_accessor enabled: bool
48
+
49
+ def initialize: (enabled: bool) -> void
50
+
51
+ def to_hash: -> { enabled: bool }
52
+ end
53
+
54
+ type file_search = { enabled: bool }
55
+
56
+ class FileSearch < OpenAI::Internal::Type::BaseModel
57
+ attr_accessor enabled: bool
58
+
59
+ def initialize: (enabled: bool) -> void
60
+
61
+ def to_hash: -> { enabled: bool }
62
+ end
63
+
64
+ type image_generation = { enabled: bool }
65
+
66
+ class ImageGeneration < OpenAI::Internal::Type::BaseModel
67
+ attr_accessor enabled: bool
68
+
69
+ def initialize: (enabled: bool) -> void
70
+
71
+ def to_hash: -> { enabled: bool }
72
+ end
73
+
74
+ type mcp = { enabled: bool }
75
+
76
+ class Mcp < OpenAI::Internal::Type::BaseModel
77
+ attr_accessor enabled: bool
78
+
79
+ def initialize: (enabled: bool) -> void
80
+
81
+ def to_hash: -> { enabled: bool }
82
+ end
83
+
84
+ type web_search = { enabled: bool }
85
+
86
+ class WebSearch < OpenAI::Internal::Type::BaseModel
87
+ attr_accessor enabled: bool
88
+
89
+ def initialize: (enabled: bool) -> void
90
+
91
+ def to_hash: -> { enabled: bool }
92
+ end
93
+ end
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,49 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ class ProjectModelPermissions = Projects::ProjectModelPermissions
6
+
7
+ module Projects
8
+ type project_model_permissions =
9
+ {
10
+ mode: OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissions::mode,
11
+ model_ids: ::Array[String],
12
+ object: :"project.model_permissions"
13
+ }
14
+
15
+ class ProjectModelPermissions < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor mode: OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissions::mode
17
+
18
+ attr_accessor model_ids: ::Array[String]
19
+
20
+ attr_accessor object: :"project.model_permissions"
21
+
22
+ def initialize: (
23
+ mode: OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissions::mode,
24
+ model_ids: ::Array[String],
25
+ ?object: :"project.model_permissions"
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ mode: OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissions::mode,
30
+ model_ids: ::Array[String],
31
+ object: :"project.model_permissions"
32
+ }
33
+
34
+ type mode = :allow_list | :deny_list
35
+
36
+ module Mode
37
+ extend OpenAI::Internal::Type::Enum
38
+
39
+ ALLOW_LIST: :allow_list
40
+ DENY_LIST: :deny_list
41
+
42
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissions::mode]
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,30 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ class ProjectModelPermissionsDeleted = Projects::ProjectModelPermissionsDeleted
6
+
7
+ module Projects
8
+ type project_model_permissions_deleted =
9
+ { deleted: bool, object: :"project.model_permissions.deleted" }
10
+
11
+ class ProjectModelPermissionsDeleted < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor deleted: bool
13
+
14
+ attr_accessor object: :"project.model_permissions.deleted"
15
+
16
+ def initialize: (
17
+ deleted: bool,
18
+ ?object: :"project.model_permissions.deleted"
19
+ ) -> void
20
+
21
+ def to_hash: -> {
22
+ deleted: bool,
23
+ object: :"project.model_permissions.deleted"
24
+ }
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,100 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ class ProjectSpendAlert = Projects::ProjectSpendAlert
6
+
7
+ module Projects
8
+ type project_spend_alert =
9
+ {
10
+ id: String,
11
+ currency: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::currency,
12
+ interval: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::interval,
13
+ notification_channel: OpenAI::Admin::Organization::Projects::ProjectSpendAlert::NotificationChannel,
14
+ object: :"project.spend_alert",
15
+ threshold_amount: Integer
16
+ }
17
+
18
+ class ProjectSpendAlert < OpenAI::Internal::Type::BaseModel
19
+ attr_accessor id: String
20
+
21
+ attr_accessor currency: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::currency
22
+
23
+ attr_accessor interval: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::interval
24
+
25
+ attr_accessor notification_channel: OpenAI::Admin::Organization::Projects::ProjectSpendAlert::NotificationChannel
26
+
27
+ attr_accessor object: :"project.spend_alert"
28
+
29
+ attr_accessor threshold_amount: Integer
30
+
31
+ def initialize: (
32
+ id: String,
33
+ currency: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::currency,
34
+ interval: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::interval,
35
+ notification_channel: OpenAI::Admin::Organization::Projects::ProjectSpendAlert::NotificationChannel,
36
+ threshold_amount: Integer,
37
+ ?object: :"project.spend_alert"
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ id: String,
42
+ currency: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::currency,
43
+ interval: OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::interval,
44
+ notification_channel: OpenAI::Admin::Organization::Projects::ProjectSpendAlert::NotificationChannel,
45
+ object: :"project.spend_alert",
46
+ threshold_amount: Integer
47
+ }
48
+
49
+ type currency = :USD
50
+
51
+ module Currency
52
+ extend OpenAI::Internal::Type::Enum
53
+
54
+ USD: :USD
55
+
56
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::currency]
57
+ end
58
+
59
+ type interval = :month
60
+
61
+ module Interval
62
+ extend OpenAI::Internal::Type::Enum
63
+
64
+ MONTH: :month
65
+
66
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::Projects::ProjectSpendAlert::interval]
67
+ end
68
+
69
+ type notification_channel =
70
+ {
71
+ recipients: ::Array[String],
72
+ type: :email,
73
+ subject_prefix: String?
74
+ }
75
+
76
+ class NotificationChannel < OpenAI::Internal::Type::BaseModel
77
+ attr_accessor recipients: ::Array[String]
78
+
79
+ attr_accessor type: :email
80
+
81
+ attr_accessor subject_prefix: String?
82
+
83
+ def initialize: (
84
+ recipients: ::Array[String],
85
+ ?subject_prefix: String?,
86
+ ?type: :email
87
+ ) -> void
88
+
89
+ def to_hash: -> {
90
+ recipients: ::Array[String],
91
+ type: :email,
92
+ subject_prefix: String?
93
+ }
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,38 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ class ProjectSpendAlertDeleted = Projects::ProjectSpendAlertDeleted
6
+
7
+ module Projects
8
+ type project_spend_alert_deleted =
9
+ {
10
+ id: String,
11
+ deleted: bool,
12
+ object: :"project.spend_alert.deleted"
13
+ }
14
+
15
+ class ProjectSpendAlertDeleted < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor id: String
17
+
18
+ attr_accessor deleted: bool
19
+
20
+ attr_accessor object: :"project.spend_alert.deleted"
21
+
22
+ def initialize: (
23
+ id: String,
24
+ deleted: bool,
25
+ ?object: :"project.spend_alert.deleted"
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ id: String,
30
+ deleted: bool,
31
+ object: :"project.spend_alert.deleted"
32
+ }
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,34 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module Projects
6
+ type role_retrieve_params =
7
+ { project_id: String, role_id: String }
8
+ & OpenAI::Internal::Type::request_parameters
9
+
10
+ class RoleRetrieveParams < OpenAI::Internal::Type::BaseModel
11
+ extend OpenAI::Internal::Type::RequestParameters::Converter
12
+ include OpenAI::Internal::Type::RequestParameters
13
+
14
+ attr_accessor project_id: String
15
+
16
+ attr_accessor role_id: String
17
+
18
+ def initialize: (
19
+ project_id: String,
20
+ role_id: String,
21
+ ?request_options: OpenAI::request_opts
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ project_id: String,
26
+ role_id: String,
27
+ request_options: OpenAI::RequestOptions
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end