openai 0.62.0 → 0.64.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 (272) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/README.md +2 -5
  4. data/lib/openai/auth/workload_identity.rb +2 -2
  5. data/lib/openai/auth/workload_identity_auth.rb +4 -3
  6. data/lib/openai/internal/transport/base_client.rb +2 -0
  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/conversations/conversation_create_params.rb +2 -2
  69. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  70. data/lib/openai/models/responses/input_token_count_params.rb +3 -3
  71. data/lib/openai/models/responses/response.rb +3 -3
  72. data/lib/openai/models/responses/response_compact_params.rb +25 -4
  73. data/lib/openai/models/responses/response_create_params.rb +3 -3
  74. data/lib/openai/models/responses/response_input_item.rb +17 -1
  75. data/lib/openai/models/responses/responses_client_event.rb +3 -3
  76. data/lib/openai/resources/admin/organization/data_retention.rb +60 -0
  77. data/lib/openai/resources/admin/organization/groups/roles.rb +28 -0
  78. data/lib/openai/resources/admin/organization/groups/users.rb +28 -0
  79. data/lib/openai/resources/admin/organization/groups.rb +21 -0
  80. data/lib/openai/resources/admin/organization/projects/data_retention.rb +66 -0
  81. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +34 -0
  82. data/lib/openai/resources/admin/organization/projects/groups.rb +32 -0
  83. data/lib/openai/resources/admin/organization/projects/hosted_tool_permissions.rb +75 -0
  84. data/lib/openai/resources/admin/organization/projects/model_permissions.rb +89 -0
  85. data/lib/openai/resources/admin/organization/projects/roles.rb +28 -0
  86. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +33 -0
  87. data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +153 -0
  88. data/lib/openai/resources/admin/organization/projects/users/roles.rb +34 -0
  89. data/lib/openai/resources/admin/organization/projects.rb +18 -0
  90. data/lib/openai/resources/admin/organization/roles.rb +21 -0
  91. data/lib/openai/resources/admin/organization/spend_alerts.rb +133 -0
  92. data/lib/openai/resources/admin/organization/usage.rb +94 -0
  93. data/lib/openai/resources/admin/organization/users/roles.rb +28 -0
  94. data/lib/openai/resources/admin/organization.rb +8 -0
  95. data/lib/openai/resources/conversations/items.rb +1 -1
  96. data/lib/openai/resources/conversations.rb +1 -1
  97. data/lib/openai/resources/responses/input_tokens.rb +1 -1
  98. data/lib/openai/resources/responses.rb +6 -4
  99. data/lib/openai/version.rb +1 -1
  100. data/lib/openai.rb +51 -0
  101. data/rbi/openai/auth.rbi +3 -3
  102. data/rbi/openai/models/admin/organization/data_retention_retrieve_params.rbi +34 -0
  103. data/rbi/openai/models/admin/organization/data_retention_update_params.rbi +101 -0
  104. data/rbi/openai/models/admin/organization/group.rbi +39 -3
  105. data/rbi/openai/models/admin/organization/group_retrieve_params.rbi +42 -0
  106. data/rbi/openai/models/admin/organization/groups/role_list_response.rbi +58 -0
  107. data/rbi/openai/models/admin/organization/groups/role_retrieve_params.rbi +52 -0
  108. data/rbi/openai/models/admin/organization/groups/role_retrieve_response.rbi +186 -0
  109. data/rbi/openai/models/admin/organization/groups/user_retrieve_params.rbi +52 -0
  110. data/rbi/openai/models/admin/organization/groups/user_retrieve_response.rbi +128 -0
  111. data/rbi/openai/models/admin/organization/invite_create_params.rbi +4 -2
  112. data/rbi/openai/models/admin/organization/organization_data_retention.rbi +106 -0
  113. data/rbi/openai/models/admin/organization/organization_spend_alert.rbi +225 -0
  114. data/rbi/openai/models/admin/organization/organization_spend_alert_deleted.rbi +58 -0
  115. data/rbi/openai/models/admin/organization/projects/data_retention_retrieve_params.rbi +44 -0
  116. data/rbi/openai/models/admin/organization/projects/data_retention_update_params.rbi +119 -0
  117. data/rbi/openai/models/admin/organization/projects/group_retrieve_params.rbi +115 -0
  118. data/rbi/openai/models/admin/organization/projects/groups/role_list_response.rbi +58 -0
  119. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_params.rbi +64 -0
  120. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_response.rbi +188 -0
  121. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbi +44 -0
  122. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbi +330 -0
  123. data/rbi/openai/models/admin/organization/projects/model_permission_delete_params.rbi +44 -0
  124. data/rbi/openai/models/admin/organization/projects/model_permission_retrieve_params.rbi +44 -0
  125. data/rbi/openai/models/admin/organization/projects/model_permission_update_params.rbi +107 -0
  126. data/rbi/openai/models/admin/organization/projects/project_data_retention.rbi +118 -0
  127. data/rbi/openai/models/admin/organization/projects/project_group.rbi +44 -3
  128. data/rbi/openai/models/admin/organization/projects/project_hosted_tool_permissions.rbi +281 -0
  129. data/rbi/openai/models/admin/organization/projects/project_model_permissions.rbi +106 -0
  130. data/rbi/openai/models/admin/organization/projects/project_model_permissions_deleted.rbi +50 -0
  131. data/rbi/openai/models/admin/organization/projects/project_spend_alert.rbi +227 -0
  132. data/rbi/openai/models/admin/organization/projects/project_spend_alert_deleted.rbi +59 -0
  133. data/rbi/openai/models/admin/organization/projects/role_retrieve_params.rbi +52 -0
  134. data/rbi/openai/models/admin/organization/projects/service_account_update_params.rbi +126 -0
  135. data/rbi/openai/models/admin/organization/projects/spend_alert_create_params.rbi +220 -0
  136. data/rbi/openai/models/admin/organization/projects/spend_alert_delete_params.rbi +52 -0
  137. data/rbi/openai/models/admin/organization/projects/spend_alert_list_params.rbi +146 -0
  138. data/rbi/openai/models/admin/organization/projects/spend_alert_update_params.rbi +226 -0
  139. data/rbi/openai/models/admin/organization/projects/users/role_list_response.rbi +58 -0
  140. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_params.rbi +59 -0
  141. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_response.rbi +188 -0
  142. data/rbi/openai/models/admin/organization/role_retrieve_params.rbi +42 -0
  143. data/rbi/openai/models/admin/organization/spend_alert_create_params.rbi +212 -0
  144. data/rbi/openai/models/admin/organization/spend_alert_delete_params.rbi +42 -0
  145. data/rbi/openai/models/admin/organization/spend_alert_list_params.rbi +138 -0
  146. data/rbi/openai/models/admin/organization/spend_alert_update_params.rbi +218 -0
  147. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +186 -0
  148. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +186 -0
  149. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +186 -0
  150. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +186 -0
  151. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +186 -0
  152. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +186 -0
  153. data/rbi/openai/models/admin/organization/usage_file_search_calls_params.rbi +284 -0
  154. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +1225 -0
  155. data/rbi/openai/models/admin/organization/usage_images_response.rbi +186 -0
  156. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +186 -0
  157. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +186 -0
  158. data/rbi/openai/models/admin/organization/usage_web_search_calls_params.rbi +360 -0
  159. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +1225 -0
  160. data/rbi/openai/models/admin/organization/users/role_list_response.rbi +58 -0
  161. data/rbi/openai/models/admin/organization/users/role_retrieve_params.rbi +52 -0
  162. data/rbi/openai/models/admin/organization/users/role_retrieve_response.rbi +186 -0
  163. data/rbi/openai/models/conversations/conversation_create_params.rbi +3 -0
  164. data/rbi/openai/models/conversations/item_create_params.rbi +3 -0
  165. data/rbi/openai/models/responses/response_compact_params.rbi +65 -0
  166. data/rbi/openai/models/responses/response_input_item.rbi +27 -0
  167. data/rbi/openai/resources/admin/organization/data_retention.rbi +40 -0
  168. data/rbi/openai/resources/admin/organization/groups/roles.rbi +19 -0
  169. data/rbi/openai/resources/admin/organization/groups/users.rbi +19 -0
  170. data/rbi/openai/resources/admin/organization/groups.rbi +14 -0
  171. data/rbi/openai/resources/admin/organization/invites.rbi +2 -1
  172. data/rbi/openai/resources/admin/organization/projects/data_retention.rbi +54 -0
  173. data/rbi/openai/resources/admin/organization/projects/groups/roles.rbi +22 -0
  174. data/rbi/openai/resources/admin/organization/projects/groups.rbi +21 -0
  175. data/rbi/openai/resources/admin/organization/projects/hosted_tool_permissions.rbi +80 -0
  176. data/rbi/openai/resources/admin/organization/projects/model_permissions.rbi +73 -0
  177. data/rbi/openai/resources/admin/organization/projects/roles.rbi +17 -0
  178. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +26 -0
  179. data/rbi/openai/resources/admin/organization/projects/spend_alerts.rbi +135 -0
  180. data/rbi/openai/resources/admin/organization/projects/users/roles.rbi +22 -0
  181. data/rbi/openai/resources/admin/organization/projects.rbi +28 -0
  182. data/rbi/openai/resources/admin/organization/roles.rbi +14 -0
  183. data/rbi/openai/resources/admin/organization/spend_alerts.rbi +117 -0
  184. data/rbi/openai/resources/admin/organization/usage.rbi +116 -0
  185. data/rbi/openai/resources/admin/organization/users/roles.rbi +19 -0
  186. data/rbi/openai/resources/admin/organization.rbi +6 -0
  187. data/rbi/openai/resources/conversations/items.rbi +1 -0
  188. data/rbi/openai/resources/conversations.rbi +1 -0
  189. data/rbi/openai/resources/responses.rbi +6 -0
  190. data/sig/openai/models/admin/organization/data_retention_retrieve_params.rbs +19 -0
  191. data/sig/openai/models/admin/organization/data_retention_update_params.rbs +47 -0
  192. data/sig/openai/models/admin/organization/group.rbs +15 -4
  193. data/sig/openai/models/admin/organization/group_retrieve_params.rbs +27 -0
  194. data/sig/openai/models/admin/organization/groups/role_list_response.rbs +21 -0
  195. data/sig/openai/models/admin/organization/groups/role_retrieve_params.rbs +34 -0
  196. data/sig/openai/models/admin/organization/groups/role_retrieve_response.rbs +97 -0
  197. data/sig/openai/models/admin/organization/groups/user_retrieve_params.rbs +34 -0
  198. data/sig/openai/models/admin/organization/groups/user_retrieve_response.rbs +62 -0
  199. data/sig/openai/models/admin/organization/organization_data_retention.rbs +48 -0
  200. data/sig/openai/models/admin/organization/organization_spend_alert.rbs +98 -0
  201. data/sig/openai/models/admin/organization/organization_spend_alert_deleted.rbs +36 -0
  202. data/sig/openai/models/admin/organization/projects/data_retention_retrieve_params.rbs +29 -0
  203. data/sig/openai/models/admin/organization/projects/data_retention_update_params.rbs +58 -0
  204. data/sig/openai/models/admin/organization/projects/group_retrieve_params.rbs +57 -0
  205. data/sig/openai/models/admin/organization/projects/groups/role_list_response.rbs +21 -0
  206. data/sig/openai/models/admin/organization/projects/groups/role_retrieve_params.rbs +40 -0
  207. data/sig/openai/models/admin/organization/projects/groups/role_retrieve_response.rbs +99 -0
  208. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbs +29 -0
  209. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbs +107 -0
  210. data/sig/openai/models/admin/organization/projects/model_permission_delete_params.rbs +29 -0
  211. data/sig/openai/models/admin/organization/projects/model_permission_retrieve_params.rbs +29 -0
  212. data/sig/openai/models/admin/organization/projects/model_permission_update_params.rbs +53 -0
  213. data/sig/openai/models/admin/organization/projects/project_data_retention.rbs +54 -0
  214. data/sig/openai/models/admin/organization/projects/project_group.rbs +15 -4
  215. data/sig/openai/models/admin/organization/projects/project_hosted_tool_permissions.rbs +98 -0
  216. data/sig/openai/models/admin/organization/projects/project_model_permissions.rbs +49 -0
  217. data/sig/openai/models/admin/organization/projects/project_model_permissions_deleted.rbs +30 -0
  218. data/sig/openai/models/admin/organization/projects/project_spend_alert.rbs +100 -0
  219. data/sig/openai/models/admin/organization/projects/project_spend_alert_deleted.rbs +38 -0
  220. data/sig/openai/models/admin/organization/projects/role_retrieve_params.rbs +34 -0
  221. data/sig/openai/models/admin/organization/projects/service_account_update_params.rbs +64 -0
  222. data/sig/openai/models/admin/organization/projects/spend_alert_create_params.rbs +99 -0
  223. data/sig/openai/models/admin/organization/projects/spend_alert_delete_params.rbs +34 -0
  224. data/sig/openai/models/admin/organization/projects/spend_alert_list_params.rbs +73 -0
  225. data/sig/openai/models/admin/organization/projects/spend_alert_update_params.rbs +104 -0
  226. data/sig/openai/models/admin/organization/projects/users/role_list_response.rbs +21 -0
  227. data/sig/openai/models/admin/organization/projects/users/role_retrieve_params.rbs +40 -0
  228. data/sig/openai/models/admin/organization/projects/users/role_retrieve_response.rbs +99 -0
  229. data/sig/openai/models/admin/organization/role_retrieve_params.rbs +27 -0
  230. data/sig/openai/models/admin/organization/spend_alert_create_params.rbs +92 -0
  231. data/sig/openai/models/admin/organization/spend_alert_delete_params.rbs +27 -0
  232. data/sig/openai/models/admin/organization/spend_alert_list_params.rbs +66 -0
  233. data/sig/openai/models/admin/organization/spend_alert_update_params.rbs +97 -0
  234. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +96 -0
  235. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +96 -0
  236. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +96 -0
  237. data/sig/openai/models/admin/organization/usage_completions_response.rbs +96 -0
  238. data/sig/openai/models/admin/organization/usage_costs_response.rbs +96 -0
  239. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +96 -0
  240. data/sig/openai/models/admin/organization/usage_file_search_calls_params.rbs +123 -0
  241. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +628 -0
  242. data/sig/openai/models/admin/organization/usage_images_response.rbs +96 -0
  243. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +96 -0
  244. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +96 -0
  245. data/sig/openai/models/admin/organization/usage_web_search_calls_params.rbs +145 -0
  246. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +628 -0
  247. data/sig/openai/models/admin/organization/users/role_list_response.rbs +21 -0
  248. data/sig/openai/models/admin/organization/users/role_retrieve_params.rbs +34 -0
  249. data/sig/openai/models/admin/organization/users/role_retrieve_response.rbs +97 -0
  250. data/sig/openai/models/responses/response_compact_params.rbs +19 -1
  251. data/sig/openai/models/responses/response_input_item.rbs +11 -0
  252. data/sig/openai/resources/admin/organization/data_retention.rbs +20 -0
  253. data/sig/openai/resources/admin/organization/groups/roles.rbs +6 -0
  254. data/sig/openai/resources/admin/organization/groups/users.rbs +6 -0
  255. data/sig/openai/resources/admin/organization/groups.rbs +5 -0
  256. data/sig/openai/resources/admin/organization/projects/data_retention.rbs +24 -0
  257. data/sig/openai/resources/admin/organization/projects/groups/roles.rbs +7 -0
  258. data/sig/openai/resources/admin/organization/projects/groups.rbs +7 -0
  259. data/sig/openai/resources/admin/organization/projects/hosted_tool_permissions.rbs +28 -0
  260. data/sig/openai/resources/admin/organization/projects/model_permissions.rbs +30 -0
  261. data/sig/openai/resources/admin/organization/projects/roles.rbs +6 -0
  262. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +8 -0
  263. data/sig/openai/resources/admin/organization/projects/spend_alerts.rbs +47 -0
  264. data/sig/openai/resources/admin/organization/projects/users/roles.rbs +7 -0
  265. data/sig/openai/resources/admin/organization/projects.rbs +8 -0
  266. data/sig/openai/resources/admin/organization/roles.rbs +5 -0
  267. data/sig/openai/resources/admin/organization/spend_alerts.rbs +41 -0
  268. data/sig/openai/resources/admin/organization/usage.rbs +29 -0
  269. data/sig/openai/resources/admin/organization/users/roles.rbs +6 -0
  270. data/sig/openai/resources/admin/organization.rbs +4 -0
  271. data/sig/openai/resources/responses.rbs +1 -0
  272. metadata +155 -2
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Resources
5
+ class Admin
6
+ class Organization
7
+ class DataRetention
8
+ # Retrieves organization data retention controls.
9
+ #
10
+ # @overload retrieve(request_options: {})
11
+ #
12
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
13
+ #
14
+ # @return [OpenAI::Models::Admin::Organization::OrganizationDataRetention]
15
+ #
16
+ # @see OpenAI::Models::Admin::Organization::DataRetentionRetrieveParams
17
+ def retrieve(params = {})
18
+ @client.request(
19
+ method: :get,
20
+ path: "organization/data_retention",
21
+ model: OpenAI::Admin::Organization::OrganizationDataRetention,
22
+ security: {admin_api_key_auth: true},
23
+ options: params[:request_options]
24
+ )
25
+ end
26
+
27
+ # Updates organization data retention controls.
28
+ #
29
+ # @overload update(retention_type:, request_options: {})
30
+ #
31
+ # @param retention_type [Symbol, OpenAI::Models::Admin::Organization::DataRetentionUpdateParams::RetentionType] The desired organization data retention type.
32
+ #
33
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
34
+ #
35
+ # @return [OpenAI::Models::Admin::Organization::OrganizationDataRetention]
36
+ #
37
+ # @see OpenAI::Models::Admin::Organization::DataRetentionUpdateParams
38
+ def update(params)
39
+ parsed, options = OpenAI::Admin::Organization::DataRetentionUpdateParams.dump_request(params)
40
+ @client.request(
41
+ method: :post,
42
+ path: "organization/data_retention",
43
+ body: parsed,
44
+ model: OpenAI::Admin::Organization::OrganizationDataRetention,
45
+ security: {admin_api_key_auth: true},
46
+ options: options
47
+ )
48
+ end
49
+
50
+ # @api private
51
+ #
52
+ # @param client [OpenAI::Client]
53
+ def initialize(client:)
54
+ @client = client
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -31,6 +31,34 @@ module OpenAI
31
31
  )
32
32
  end
33
33
 
34
+ # Retrieves an organization role assigned to a group.
35
+ #
36
+ # @overload retrieve(role_id, group_id:, request_options: {})
37
+ #
38
+ # @param role_id [String] The ID of the organization role to retrieve for the group.
39
+ #
40
+ # @param group_id [String] The ID of the group to inspect.
41
+ #
42
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
43
+ #
44
+ # @return [OpenAI::Models::Admin::Organization::Groups::RoleRetrieveResponse]
45
+ #
46
+ # @see OpenAI::Models::Admin::Organization::Groups::RoleRetrieveParams
47
+ def retrieve(role_id, params)
48
+ parsed, options = OpenAI::Admin::Organization::Groups::RoleRetrieveParams.dump_request(params)
49
+ group_id =
50
+ parsed.delete(:group_id) do
51
+ raise ArgumentError.new("missing required path argument #{_1}")
52
+ end
53
+ @client.request(
54
+ method: :get,
55
+ path: ["organization/groups/%1$s/roles/%2$s", group_id, role_id],
56
+ model: OpenAI::Models::Admin::Organization::Groups::RoleRetrieveResponse,
57
+ security: {admin_api_key_auth: true},
58
+ options: options
59
+ )
60
+ end
61
+
34
62
  # Some parameter documentations has been truncated, see
35
63
  # {OpenAI::Models::Admin::Organization::Groups::RoleListParams} for more details.
36
64
  #
@@ -31,6 +31,34 @@ module OpenAI
31
31
  )
32
32
  end
33
33
 
34
+ # Retrieves a user in a group.
35
+ #
36
+ # @overload retrieve(user_id, group_id:, request_options: {})
37
+ #
38
+ # @param user_id [String] The ID of the user to retrieve from the group.
39
+ #
40
+ # @param group_id [String] The ID of the group to inspect.
41
+ #
42
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
43
+ #
44
+ # @return [OpenAI::Models::Admin::Organization::Groups::UserRetrieveResponse]
45
+ #
46
+ # @see OpenAI::Models::Admin::Organization::Groups::UserRetrieveParams
47
+ def retrieve(user_id, params)
48
+ parsed, options = OpenAI::Admin::Organization::Groups::UserRetrieveParams.dump_request(params)
49
+ group_id =
50
+ parsed.delete(:group_id) do
51
+ raise ArgumentError.new("missing required path argument #{_1}")
52
+ end
53
+ @client.request(
54
+ method: :get,
55
+ path: ["organization/groups/%1$s/users/%2$s", group_id, user_id],
56
+ model: OpenAI::Models::Admin::Organization::Groups::UserRetrieveResponse,
57
+ security: {admin_api_key_auth: true},
58
+ options: options
59
+ )
60
+ end
61
+
34
62
  # Some parameter documentations has been truncated, see
35
63
  # {OpenAI::Models::Admin::Organization::Groups::UserListParams} for more details.
36
64
  #
@@ -34,6 +34,27 @@ module OpenAI
34
34
  )
35
35
  end
36
36
 
37
+ # Retrieves a group.
38
+ #
39
+ # @overload retrieve(group_id, request_options: {})
40
+ #
41
+ # @param group_id [String] The ID of the group to retrieve.
42
+ #
43
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
44
+ #
45
+ # @return [OpenAI::Models::Admin::Organization::Group]
46
+ #
47
+ # @see OpenAI::Models::Admin::Organization::GroupRetrieveParams
48
+ def retrieve(group_id, params = {})
49
+ @client.request(
50
+ method: :get,
51
+ path: ["organization/groups/%1$s", group_id],
52
+ model: OpenAI::Admin::Organization::Group,
53
+ security: {admin_api_key_auth: true},
54
+ options: params[:request_options]
55
+ )
56
+ end
57
+
37
58
  # Updates a group's information.
38
59
  #
39
60
  # @overload update(group_id, name:, request_options: {})
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Resources
5
+ class Admin
6
+ class Organization
7
+ class Projects
8
+ class DataRetention
9
+ # Retrieves project data retention controls.
10
+ #
11
+ # @overload retrieve(project_id, request_options: {})
12
+ #
13
+ # @param project_id [String] The ID of the project to inspect.
14
+ #
15
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
16
+ #
17
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectDataRetention]
18
+ #
19
+ # @see OpenAI::Models::Admin::Organization::Projects::DataRetentionRetrieveParams
20
+ def retrieve(project_id, params = {})
21
+ @client.request(
22
+ method: :get,
23
+ path: ["organization/projects/%1$s/data_retention", project_id],
24
+ model: OpenAI::Admin::Organization::Projects::ProjectDataRetention,
25
+ security: {admin_api_key_auth: true},
26
+ options: params[:request_options]
27
+ )
28
+ end
29
+
30
+ # Updates project data retention controls.
31
+ #
32
+ # @overload update(project_id, retention_type:, request_options: {})
33
+ #
34
+ # @param project_id [String] The ID of the project to update.
35
+ #
36
+ # @param retention_type [Symbol, OpenAI::Models::Admin::Organization::Projects::DataRetentionUpdateParams::RetentionType] The desired project data retention type.
37
+ #
38
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
39
+ #
40
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectDataRetention]
41
+ #
42
+ # @see OpenAI::Models::Admin::Organization::Projects::DataRetentionUpdateParams
43
+ def update(project_id, params)
44
+ parsed, options = OpenAI::Admin::Organization::Projects::DataRetentionUpdateParams.dump_request(params)
45
+ @client.request(
46
+ method: :post,
47
+ path: ["organization/projects/%1$s/data_retention", project_id],
48
+ body: parsed,
49
+ model: OpenAI::Admin::Organization::Projects::ProjectDataRetention,
50
+ security: {admin_api_key_auth: true},
51
+ options: options
52
+ )
53
+ end
54
+
55
+ # @api private
56
+ #
57
+ # @param client [OpenAI::Client]
58
+ def initialize(client:)
59
+ @client = client
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -38,6 +38,40 @@ module OpenAI
38
38
  )
39
39
  end
40
40
 
41
+ # Retrieves a project role assigned to a group.
42
+ #
43
+ # @overload retrieve(role_id, project_id:, group_id:, request_options: {})
44
+ #
45
+ # @param role_id [String] The ID of the project role to retrieve for the group.
46
+ #
47
+ # @param project_id [String] The ID of the project to inspect.
48
+ #
49
+ # @param group_id [String] The ID of the group to inspect.
50
+ #
51
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
52
+ #
53
+ # @return [OpenAI::Models::Admin::Organization::Projects::Groups::RoleRetrieveResponse]
54
+ #
55
+ # @see OpenAI::Models::Admin::Organization::Projects::Groups::RoleRetrieveParams
56
+ def retrieve(role_id, params)
57
+ parsed, options = OpenAI::Admin::Organization::Projects::Groups::RoleRetrieveParams.dump_request(params)
58
+ project_id =
59
+ parsed.delete(:project_id) do
60
+ raise ArgumentError.new("missing required path argument #{_1}")
61
+ end
62
+ group_id =
63
+ parsed.delete(:group_id) do
64
+ raise ArgumentError.new("missing required path argument #{_1}")
65
+ end
66
+ @client.request(
67
+ method: :get,
68
+ path: ["projects/%1$s/groups/%2$s/roles/%3$s", project_id, group_id, role_id],
69
+ model: OpenAI::Models::Admin::Organization::Projects::Groups::RoleRetrieveResponse,
70
+ security: {admin_api_key_auth: true},
71
+ options: options
72
+ )
73
+ end
74
+
41
75
  # Some parameter documentations has been truncated, see
42
76
  # {OpenAI::Models::Admin::Organization::Projects::Groups::RoleListParams} for more
43
77
  # details.
@@ -36,6 +36,38 @@ module OpenAI
36
36
  )
37
37
  end
38
38
 
39
+ # Retrieves a project's group.
40
+ #
41
+ # @overload retrieve(group_id, project_id:, group_type: nil, request_options: {})
42
+ #
43
+ # @param group_id [String] Path param: The ID of the group to retrieve.
44
+ #
45
+ # @param project_id [String] Path param: The ID of the project to inspect.
46
+ #
47
+ # @param group_type [Symbol, OpenAI::Models::Admin::Organization::Projects::GroupRetrieveParams::GroupType] Query param: The type of group to retrieve.
48
+ #
49
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
50
+ #
51
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectGroup]
52
+ #
53
+ # @see OpenAI::Models::Admin::Organization::Projects::GroupRetrieveParams
54
+ def retrieve(group_id, params)
55
+ parsed, options = OpenAI::Admin::Organization::Projects::GroupRetrieveParams.dump_request(params)
56
+ query = OpenAI::Internal::Util.encode_query_params(parsed)
57
+ project_id =
58
+ parsed.delete(:project_id) do
59
+ raise ArgumentError.new("missing required path argument #{_1}")
60
+ end
61
+ @client.request(
62
+ method: :get,
63
+ path: ["organization/projects/%1$s/groups/%2$s", project_id, group_id],
64
+ query: query,
65
+ model: OpenAI::Admin::Organization::Projects::ProjectGroup,
66
+ security: {admin_api_key_auth: true},
67
+ options: options
68
+ )
69
+ end
70
+
39
71
  # Some parameter documentations has been truncated, see
40
72
  # {OpenAI::Models::Admin::Organization::Projects::GroupListParams} for more
41
73
  # details.
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Resources
5
+ class Admin
6
+ class Organization
7
+ class Projects
8
+ class HostedToolPermissions
9
+ # Returns hosted tool permissions for a project.
10
+ #
11
+ # @overload retrieve(project_id, request_options: {})
12
+ #
13
+ # @param project_id [String] The ID of the project.
14
+ #
15
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
16
+ #
17
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectHostedToolPermissions]
18
+ #
19
+ # @see OpenAI::Models::Admin::Organization::Projects::HostedToolPermissionRetrieveParams
20
+ def retrieve(project_id, params = {})
21
+ @client.request(
22
+ method: :get,
23
+ path: ["organization/projects/%1$s/hosted_tool_permissions", project_id],
24
+ model: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions,
25
+ security: {admin_api_key_auth: true},
26
+ options: params[:request_options]
27
+ )
28
+ end
29
+
30
+ # Updates hosted tool permissions for a project.
31
+ #
32
+ # @overload update(project_id, code_interpreter: nil, file_search: nil, image_generation: nil, mcp: nil, web_search: nil, request_options: {})
33
+ #
34
+ # @param project_id [String] The ID of the project.
35
+ #
36
+ # @param code_interpreter [OpenAI::Models::Admin::Organization::Projects::HostedToolPermissionUpdateParams::CodeInterpreter, nil] The code interpreter permission update.
37
+ #
38
+ # @param file_search [OpenAI::Models::Admin::Organization::Projects::HostedToolPermissionUpdateParams::FileSearch, nil] The file search permission update.
39
+ #
40
+ # @param image_generation [OpenAI::Models::Admin::Organization::Projects::HostedToolPermissionUpdateParams::ImageGeneration, nil] The image generation permission update.
41
+ #
42
+ # @param mcp [OpenAI::Models::Admin::Organization::Projects::HostedToolPermissionUpdateParams::Mcp, nil] The MCP permission update.
43
+ #
44
+ # @param web_search [OpenAI::Models::Admin::Organization::Projects::HostedToolPermissionUpdateParams::WebSearch, nil] The web search permission update.
45
+ #
46
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
47
+ #
48
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectHostedToolPermissions]
49
+ #
50
+ # @see OpenAI::Models::Admin::Organization::Projects::HostedToolPermissionUpdateParams
51
+ def update(project_id, params = {})
52
+ parsed, options =
53
+ OpenAI::Admin::Organization::Projects::HostedToolPermissionUpdateParams.dump_request(params)
54
+ @client.request(
55
+ method: :post,
56
+ path: ["organization/projects/%1$s/hosted_tool_permissions", project_id],
57
+ body: parsed,
58
+ model: OpenAI::Admin::Organization::Projects::ProjectHostedToolPermissions,
59
+ security: {admin_api_key_auth: true},
60
+ options: options
61
+ )
62
+ end
63
+
64
+ # @api private
65
+ #
66
+ # @param client [OpenAI::Client]
67
+ def initialize(client:)
68
+ @client = client
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,89 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Resources
5
+ class Admin
6
+ class Organization
7
+ class Projects
8
+ class ModelPermissions
9
+ # Returns model permissions for a project.
10
+ #
11
+ # @overload retrieve(project_id, request_options: {})
12
+ #
13
+ # @param project_id [String] The ID of the project.
14
+ #
15
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
16
+ #
17
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissions]
18
+ #
19
+ # @see OpenAI::Models::Admin::Organization::Projects::ModelPermissionRetrieveParams
20
+ def retrieve(project_id, params = {})
21
+ @client.request(
22
+ method: :get,
23
+ path: ["organization/projects/%1$s/model_permissions", project_id],
24
+ model: OpenAI::Admin::Organization::Projects::ProjectModelPermissions,
25
+ security: {admin_api_key_auth: true},
26
+ options: params[:request_options]
27
+ )
28
+ end
29
+
30
+ # Updates model permissions for a project.
31
+ #
32
+ # @overload update(project_id, mode:, model_ids:, request_options: {})
33
+ #
34
+ # @param project_id [String] The ID of the project.
35
+ #
36
+ # @param mode [Symbol, OpenAI::Models::Admin::Organization::Projects::ModelPermissionUpdateParams::Mode] The model permissions mode to apply.
37
+ #
38
+ # @param model_ids [Array<String>] The model IDs included in this permissions policy.
39
+ #
40
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
41
+ #
42
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissions]
43
+ #
44
+ # @see OpenAI::Models::Admin::Organization::Projects::ModelPermissionUpdateParams
45
+ def update(project_id, params)
46
+ parsed, options = OpenAI::Admin::Organization::Projects::ModelPermissionUpdateParams.dump_request(params)
47
+ @client.request(
48
+ method: :post,
49
+ path: ["organization/projects/%1$s/model_permissions", project_id],
50
+ body: parsed,
51
+ model: OpenAI::Admin::Organization::Projects::ProjectModelPermissions,
52
+ security: {admin_api_key_auth: true},
53
+ options: options
54
+ )
55
+ end
56
+
57
+ # Deletes model permissions for a project.
58
+ #
59
+ # @overload delete(project_id, request_options: {})
60
+ #
61
+ # @param project_id [String] The ID of the project.
62
+ #
63
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
64
+ #
65
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectModelPermissionsDeleted]
66
+ #
67
+ # @see OpenAI::Models::Admin::Organization::Projects::ModelPermissionDeleteParams
68
+ def delete(project_id, params = {})
69
+ @client.request(
70
+ method: :delete,
71
+ path: ["organization/projects/%1$s/model_permissions", project_id],
72
+ model: OpenAI::Admin::Organization::Projects::ProjectModelPermissionsDeleted,
73
+ security: {admin_api_key_auth: true},
74
+ options: params[:request_options]
75
+ )
76
+ end
77
+
78
+ # @api private
79
+ #
80
+ # @param client [OpenAI::Client]
81
+ def initialize(client:)
82
+ @client = client
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
89
+ end
@@ -35,6 +35,34 @@ module OpenAI
35
35
  )
36
36
  end
37
37
 
38
+ # Retrieves a project role.
39
+ #
40
+ # @overload retrieve(role_id, project_id:, request_options: {})
41
+ #
42
+ # @param role_id [String] The ID of the role to retrieve.
43
+ #
44
+ # @param project_id [String] The ID of the project.
45
+ #
46
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
47
+ #
48
+ # @return [OpenAI::Models::Admin::Organization::Role]
49
+ #
50
+ # @see OpenAI::Models::Admin::Organization::Projects::RoleRetrieveParams
51
+ def retrieve(role_id, params)
52
+ parsed, options = OpenAI::Admin::Organization::Projects::RoleRetrieveParams.dump_request(params)
53
+ project_id =
54
+ parsed.delete(:project_id) do
55
+ raise ArgumentError.new("missing required path argument #{_1}")
56
+ end
57
+ @client.request(
58
+ method: :get,
59
+ path: ["projects/%1$s/roles/%2$s", project_id, role_id],
60
+ model: OpenAI::Admin::Organization::Role,
61
+ security: {admin_api_key_auth: true},
62
+ options: options
63
+ )
64
+ end
65
+
38
66
  # Updates an existing project role.
39
67
  #
40
68
  # @overload update(role_id, project_id:, description: nil, permissions: nil, role_name: nil, request_options: {})
@@ -61,6 +61,39 @@ module OpenAI
61
61
  )
62
62
  end
63
63
 
64
+ # Updates a service account in the project.
65
+ #
66
+ # @overload update(service_account_id, project_id:, name: nil, role: nil, request_options: {})
67
+ #
68
+ # @param service_account_id [String] Path param: The ID of the service account.
69
+ #
70
+ # @param project_id [String] Path param: The ID of the project.
71
+ #
72
+ # @param name [String] Body param: The updated service account name.
73
+ #
74
+ # @param role [Symbol, OpenAI::Models::Admin::Organization::Projects::ServiceAccountUpdateParams::Role] Body param: The updated service account role.
75
+ #
76
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
77
+ #
78
+ # @return [OpenAI::Models::Admin::Organization::Projects::ProjectServiceAccount]
79
+ #
80
+ # @see OpenAI::Models::Admin::Organization::Projects::ServiceAccountUpdateParams
81
+ def update(service_account_id, params)
82
+ parsed, options = OpenAI::Admin::Organization::Projects::ServiceAccountUpdateParams.dump_request(params)
83
+ project_id =
84
+ parsed.delete(:project_id) do
85
+ raise ArgumentError.new("missing required path argument #{_1}")
86
+ end
87
+ @client.request(
88
+ method: :post,
89
+ path: ["organization/projects/%1$s/service_accounts/%2$s", project_id, service_account_id],
90
+ body: parsed,
91
+ model: OpenAI::Admin::Organization::Projects::ProjectServiceAccount,
92
+ security: {admin_api_key_auth: true},
93
+ options: options
94
+ )
95
+ end
96
+
64
97
  # Some parameter documentations has been truncated, see
65
98
  # {OpenAI::Models::Admin::Organization::Projects::ServiceAccountListParams} for
66
99
  # more details.