openai 0.63.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 (265) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -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/data_retention_retrieve_params.rb +18 -0
  6. data/lib/openai/models/admin/organization/data_retention_update_params.rb +40 -0
  7. data/lib/openai/models/admin/organization/group.rb +16 -3
  8. data/lib/openai/models/admin/organization/group_retrieve_params.rb +24 -0
  9. data/lib/openai/models/admin/organization/groups/role_list_response.rb +27 -1
  10. data/lib/openai/models/admin/organization/groups/role_retrieve_params.rb +32 -0
  11. data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +134 -0
  12. data/lib/openai/models/admin/organization/groups/user_retrieve_params.rb +32 -0
  13. data/lib/openai/models/admin/organization/groups/user_retrieve_response.rb +79 -0
  14. data/lib/openai/models/admin/organization/invite_create_params.rb +2 -1
  15. data/lib/openai/models/admin/organization/organization_data_retention.rb +48 -0
  16. data/lib/openai/models/admin/organization/organization_spend_alert.rb +120 -0
  17. data/lib/openai/models/admin/organization/organization_spend_alert_deleted.rb +41 -0
  18. data/lib/openai/models/admin/organization/projects/data_retention_retrieve_params.rb +26 -0
  19. data/lib/openai/models/admin/organization/projects/data_retention_update_params.rb +51 -0
  20. data/lib/openai/models/admin/organization/projects/group_retrieve_params.rb +53 -0
  21. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +27 -1
  22. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_params.rb +40 -0
  23. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +136 -0
  24. data/lib/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rb +26 -0
  25. data/lib/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rb +150 -0
  26. data/lib/openai/models/admin/organization/projects/model_permission_delete_params.rb +26 -0
  27. data/lib/openai/models/admin/organization/projects/model_permission_retrieve_params.rb +26 -0
  28. data/lib/openai/models/admin/organization/projects/model_permission_update_params.rb +54 -0
  29. data/lib/openai/models/admin/organization/projects/project_data_retention.rb +52 -0
  30. data/lib/openai/models/admin/organization/projects/project_group.rb +16 -3
  31. data/lib/openai/models/admin/organization/projects/project_hosted_tool_permissions.rb +133 -0
  32. data/lib/openai/models/admin/organization/projects/project_model_permissions.rb +56 -0
  33. data/lib/openai/models/admin/organization/projects/project_model_permissions_deleted.rb +35 -0
  34. data/lib/openai/models/admin/organization/projects/project_spend_alert.rb +122 -0
  35. data/lib/openai/models/admin/organization/projects/project_spend_alert_deleted.rb +43 -0
  36. data/lib/openai/models/admin/organization/projects/role_retrieve_params.rb +32 -0
  37. data/lib/openai/models/admin/organization/projects/service_account_update_params.rb +61 -0
  38. data/lib/openai/models/admin/organization/projects/spend_alert_create_params.rb +109 -0
  39. data/lib/openai/models/admin/organization/projects/spend_alert_delete_params.rb +32 -0
  40. data/lib/openai/models/admin/organization/projects/spend_alert_list_params.rb +76 -0
  41. data/lib/openai/models/admin/organization/projects/spend_alert_update_params.rb +116 -0
  42. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +27 -1
  43. data/lib/openai/models/admin/organization/projects/users/role_retrieve_params.rb +40 -0
  44. data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +136 -0
  45. data/lib/openai/models/admin/organization/role_retrieve_params.rb +24 -0
  46. data/lib/openai/models/admin/organization/spend_alert_create_params.rb +100 -0
  47. data/lib/openai/models/admin/organization/spend_alert_delete_params.rb +24 -0
  48. data/lib/openai/models/admin/organization/spend_alert_list_params.rb +66 -0
  49. data/lib/openai/models/admin/organization/spend_alert_update_params.rb +107 -0
  50. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +148 -3
  51. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +148 -3
  52. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +148 -3
  53. data/lib/openai/models/admin/organization/usage_completions_response.rb +148 -3
  54. data/lib/openai/models/admin/organization/usage_costs_response.rb +148 -3
  55. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +148 -3
  56. data/lib/openai/models/admin/organization/usage_file_search_calls_params.rb +136 -0
  57. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +889 -0
  58. data/lib/openai/models/admin/organization/usage_images_response.rb +148 -3
  59. data/lib/openai/models/admin/organization/usage_moderations_response.rb +148 -3
  60. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +148 -3
  61. data/lib/openai/models/admin/organization/usage_web_search_calls_params.rb +157 -0
  62. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +889 -0
  63. data/lib/openai/models/admin/organization/users/role_list_response.rb +27 -1
  64. data/lib/openai/models/admin/organization/users/role_retrieve_params.rb +32 -0
  65. data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +134 -0
  66. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  67. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  68. data/lib/openai/models/responses/input_token_count_params.rb +3 -3
  69. data/lib/openai/models/responses/response.rb +3 -3
  70. data/lib/openai/models/responses/response_compact_params.rb +3 -3
  71. data/lib/openai/models/responses/response_create_params.rb +3 -3
  72. data/lib/openai/models/responses/response_input_item.rb +17 -1
  73. data/lib/openai/models/responses/responses_client_event.rb +3 -3
  74. data/lib/openai/resources/admin/organization/data_retention.rb +60 -0
  75. data/lib/openai/resources/admin/organization/groups/roles.rb +28 -0
  76. data/lib/openai/resources/admin/organization/groups/users.rb +28 -0
  77. data/lib/openai/resources/admin/organization/groups.rb +21 -0
  78. data/lib/openai/resources/admin/organization/projects/data_retention.rb +66 -0
  79. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +34 -0
  80. data/lib/openai/resources/admin/organization/projects/groups.rb +32 -0
  81. data/lib/openai/resources/admin/organization/projects/hosted_tool_permissions.rb +75 -0
  82. data/lib/openai/resources/admin/organization/projects/model_permissions.rb +89 -0
  83. data/lib/openai/resources/admin/organization/projects/roles.rb +28 -0
  84. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +33 -0
  85. data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +153 -0
  86. data/lib/openai/resources/admin/organization/projects/users/roles.rb +34 -0
  87. data/lib/openai/resources/admin/organization/projects.rb +18 -0
  88. data/lib/openai/resources/admin/organization/roles.rb +21 -0
  89. data/lib/openai/resources/admin/organization/spend_alerts.rb +133 -0
  90. data/lib/openai/resources/admin/organization/usage.rb +94 -0
  91. data/lib/openai/resources/admin/organization/users/roles.rb +28 -0
  92. data/lib/openai/resources/admin/organization.rb +8 -0
  93. data/lib/openai/resources/conversations/items.rb +1 -1
  94. data/lib/openai/resources/conversations.rb +1 -1
  95. data/lib/openai/resources/responses/input_tokens.rb +1 -1
  96. data/lib/openai/resources/responses.rb +3 -3
  97. data/lib/openai/version.rb +1 -1
  98. data/lib/openai.rb +51 -0
  99. data/rbi/openai/models/admin/organization/data_retention_retrieve_params.rbi +34 -0
  100. data/rbi/openai/models/admin/organization/data_retention_update_params.rbi +101 -0
  101. data/rbi/openai/models/admin/organization/group.rbi +39 -3
  102. data/rbi/openai/models/admin/organization/group_retrieve_params.rbi +42 -0
  103. data/rbi/openai/models/admin/organization/groups/role_list_response.rbi +58 -0
  104. data/rbi/openai/models/admin/organization/groups/role_retrieve_params.rbi +52 -0
  105. data/rbi/openai/models/admin/organization/groups/role_retrieve_response.rbi +186 -0
  106. data/rbi/openai/models/admin/organization/groups/user_retrieve_params.rbi +52 -0
  107. data/rbi/openai/models/admin/organization/groups/user_retrieve_response.rbi +128 -0
  108. data/rbi/openai/models/admin/organization/invite_create_params.rbi +4 -2
  109. data/rbi/openai/models/admin/organization/organization_data_retention.rbi +106 -0
  110. data/rbi/openai/models/admin/organization/organization_spend_alert.rbi +225 -0
  111. data/rbi/openai/models/admin/organization/organization_spend_alert_deleted.rbi +58 -0
  112. data/rbi/openai/models/admin/organization/projects/data_retention_retrieve_params.rbi +44 -0
  113. data/rbi/openai/models/admin/organization/projects/data_retention_update_params.rbi +119 -0
  114. data/rbi/openai/models/admin/organization/projects/group_retrieve_params.rbi +115 -0
  115. data/rbi/openai/models/admin/organization/projects/groups/role_list_response.rbi +58 -0
  116. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_params.rbi +64 -0
  117. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_response.rbi +188 -0
  118. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbi +44 -0
  119. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbi +330 -0
  120. data/rbi/openai/models/admin/organization/projects/model_permission_delete_params.rbi +44 -0
  121. data/rbi/openai/models/admin/organization/projects/model_permission_retrieve_params.rbi +44 -0
  122. data/rbi/openai/models/admin/organization/projects/model_permission_update_params.rbi +107 -0
  123. data/rbi/openai/models/admin/organization/projects/project_data_retention.rbi +118 -0
  124. data/rbi/openai/models/admin/organization/projects/project_group.rbi +44 -3
  125. data/rbi/openai/models/admin/organization/projects/project_hosted_tool_permissions.rbi +281 -0
  126. data/rbi/openai/models/admin/organization/projects/project_model_permissions.rbi +106 -0
  127. data/rbi/openai/models/admin/organization/projects/project_model_permissions_deleted.rbi +50 -0
  128. data/rbi/openai/models/admin/organization/projects/project_spend_alert.rbi +227 -0
  129. data/rbi/openai/models/admin/organization/projects/project_spend_alert_deleted.rbi +59 -0
  130. data/rbi/openai/models/admin/organization/projects/role_retrieve_params.rbi +52 -0
  131. data/rbi/openai/models/admin/organization/projects/service_account_update_params.rbi +126 -0
  132. data/rbi/openai/models/admin/organization/projects/spend_alert_create_params.rbi +220 -0
  133. data/rbi/openai/models/admin/organization/projects/spend_alert_delete_params.rbi +52 -0
  134. data/rbi/openai/models/admin/organization/projects/spend_alert_list_params.rbi +146 -0
  135. data/rbi/openai/models/admin/organization/projects/spend_alert_update_params.rbi +226 -0
  136. data/rbi/openai/models/admin/organization/projects/users/role_list_response.rbi +58 -0
  137. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_params.rbi +59 -0
  138. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_response.rbi +188 -0
  139. data/rbi/openai/models/admin/organization/role_retrieve_params.rbi +42 -0
  140. data/rbi/openai/models/admin/organization/spend_alert_create_params.rbi +212 -0
  141. data/rbi/openai/models/admin/organization/spend_alert_delete_params.rbi +42 -0
  142. data/rbi/openai/models/admin/organization/spend_alert_list_params.rbi +138 -0
  143. data/rbi/openai/models/admin/organization/spend_alert_update_params.rbi +218 -0
  144. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +186 -0
  145. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +186 -0
  146. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +186 -0
  147. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +186 -0
  148. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +186 -0
  149. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +186 -0
  150. data/rbi/openai/models/admin/organization/usage_file_search_calls_params.rbi +284 -0
  151. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +1225 -0
  152. data/rbi/openai/models/admin/organization/usage_images_response.rbi +186 -0
  153. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +186 -0
  154. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +186 -0
  155. data/rbi/openai/models/admin/organization/usage_web_search_calls_params.rbi +360 -0
  156. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +1225 -0
  157. data/rbi/openai/models/admin/organization/users/role_list_response.rbi +58 -0
  158. data/rbi/openai/models/admin/organization/users/role_retrieve_params.rbi +52 -0
  159. data/rbi/openai/models/admin/organization/users/role_retrieve_response.rbi +186 -0
  160. data/rbi/openai/models/conversations/conversation_create_params.rbi +3 -0
  161. data/rbi/openai/models/conversations/item_create_params.rbi +3 -0
  162. data/rbi/openai/models/responses/response_input_item.rbi +27 -0
  163. data/rbi/openai/resources/admin/organization/data_retention.rbi +40 -0
  164. data/rbi/openai/resources/admin/organization/groups/roles.rbi +19 -0
  165. data/rbi/openai/resources/admin/organization/groups/users.rbi +19 -0
  166. data/rbi/openai/resources/admin/organization/groups.rbi +14 -0
  167. data/rbi/openai/resources/admin/organization/invites.rbi +2 -1
  168. data/rbi/openai/resources/admin/organization/projects/data_retention.rbi +54 -0
  169. data/rbi/openai/resources/admin/organization/projects/groups/roles.rbi +22 -0
  170. data/rbi/openai/resources/admin/organization/projects/groups.rbi +21 -0
  171. data/rbi/openai/resources/admin/organization/projects/hosted_tool_permissions.rbi +80 -0
  172. data/rbi/openai/resources/admin/organization/projects/model_permissions.rbi +73 -0
  173. data/rbi/openai/resources/admin/organization/projects/roles.rbi +17 -0
  174. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +26 -0
  175. data/rbi/openai/resources/admin/organization/projects/spend_alerts.rbi +135 -0
  176. data/rbi/openai/resources/admin/organization/projects/users/roles.rbi +22 -0
  177. data/rbi/openai/resources/admin/organization/projects.rbi +28 -0
  178. data/rbi/openai/resources/admin/organization/roles.rbi +14 -0
  179. data/rbi/openai/resources/admin/organization/spend_alerts.rbi +117 -0
  180. data/rbi/openai/resources/admin/organization/usage.rbi +116 -0
  181. data/rbi/openai/resources/admin/organization/users/roles.rbi +19 -0
  182. data/rbi/openai/resources/admin/organization.rbi +6 -0
  183. data/rbi/openai/resources/conversations/items.rbi +1 -0
  184. data/rbi/openai/resources/conversations.rbi +1 -0
  185. data/sig/openai/models/admin/organization/data_retention_retrieve_params.rbs +19 -0
  186. data/sig/openai/models/admin/organization/data_retention_update_params.rbs +47 -0
  187. data/sig/openai/models/admin/organization/group.rbs +15 -4
  188. data/sig/openai/models/admin/organization/group_retrieve_params.rbs +27 -0
  189. data/sig/openai/models/admin/organization/groups/role_list_response.rbs +21 -0
  190. data/sig/openai/models/admin/organization/groups/role_retrieve_params.rbs +34 -0
  191. data/sig/openai/models/admin/organization/groups/role_retrieve_response.rbs +97 -0
  192. data/sig/openai/models/admin/organization/groups/user_retrieve_params.rbs +34 -0
  193. data/sig/openai/models/admin/organization/groups/user_retrieve_response.rbs +62 -0
  194. data/sig/openai/models/admin/organization/organization_data_retention.rbs +48 -0
  195. data/sig/openai/models/admin/organization/organization_spend_alert.rbs +98 -0
  196. data/sig/openai/models/admin/organization/organization_spend_alert_deleted.rbs +36 -0
  197. data/sig/openai/models/admin/organization/projects/data_retention_retrieve_params.rbs +29 -0
  198. data/sig/openai/models/admin/organization/projects/data_retention_update_params.rbs +58 -0
  199. data/sig/openai/models/admin/organization/projects/group_retrieve_params.rbs +57 -0
  200. data/sig/openai/models/admin/organization/projects/groups/role_list_response.rbs +21 -0
  201. data/sig/openai/models/admin/organization/projects/groups/role_retrieve_params.rbs +40 -0
  202. data/sig/openai/models/admin/organization/projects/groups/role_retrieve_response.rbs +99 -0
  203. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbs +29 -0
  204. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbs +107 -0
  205. data/sig/openai/models/admin/organization/projects/model_permission_delete_params.rbs +29 -0
  206. data/sig/openai/models/admin/organization/projects/model_permission_retrieve_params.rbs +29 -0
  207. data/sig/openai/models/admin/organization/projects/model_permission_update_params.rbs +53 -0
  208. data/sig/openai/models/admin/organization/projects/project_data_retention.rbs +54 -0
  209. data/sig/openai/models/admin/organization/projects/project_group.rbs +15 -4
  210. data/sig/openai/models/admin/organization/projects/project_hosted_tool_permissions.rbs +98 -0
  211. data/sig/openai/models/admin/organization/projects/project_model_permissions.rbs +49 -0
  212. data/sig/openai/models/admin/organization/projects/project_model_permissions_deleted.rbs +30 -0
  213. data/sig/openai/models/admin/organization/projects/project_spend_alert.rbs +100 -0
  214. data/sig/openai/models/admin/organization/projects/project_spend_alert_deleted.rbs +38 -0
  215. data/sig/openai/models/admin/organization/projects/role_retrieve_params.rbs +34 -0
  216. data/sig/openai/models/admin/organization/projects/service_account_update_params.rbs +64 -0
  217. data/sig/openai/models/admin/organization/projects/spend_alert_create_params.rbs +99 -0
  218. data/sig/openai/models/admin/organization/projects/spend_alert_delete_params.rbs +34 -0
  219. data/sig/openai/models/admin/organization/projects/spend_alert_list_params.rbs +73 -0
  220. data/sig/openai/models/admin/organization/projects/spend_alert_update_params.rbs +104 -0
  221. data/sig/openai/models/admin/organization/projects/users/role_list_response.rbs +21 -0
  222. data/sig/openai/models/admin/organization/projects/users/role_retrieve_params.rbs +40 -0
  223. data/sig/openai/models/admin/organization/projects/users/role_retrieve_response.rbs +99 -0
  224. data/sig/openai/models/admin/organization/role_retrieve_params.rbs +27 -0
  225. data/sig/openai/models/admin/organization/spend_alert_create_params.rbs +92 -0
  226. data/sig/openai/models/admin/organization/spend_alert_delete_params.rbs +27 -0
  227. data/sig/openai/models/admin/organization/spend_alert_list_params.rbs +66 -0
  228. data/sig/openai/models/admin/organization/spend_alert_update_params.rbs +97 -0
  229. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +96 -0
  230. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +96 -0
  231. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +96 -0
  232. data/sig/openai/models/admin/organization/usage_completions_response.rbs +96 -0
  233. data/sig/openai/models/admin/organization/usage_costs_response.rbs +96 -0
  234. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +96 -0
  235. data/sig/openai/models/admin/organization/usage_file_search_calls_params.rbs +123 -0
  236. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +628 -0
  237. data/sig/openai/models/admin/organization/usage_images_response.rbs +96 -0
  238. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +96 -0
  239. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +96 -0
  240. data/sig/openai/models/admin/organization/usage_web_search_calls_params.rbs +145 -0
  241. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +628 -0
  242. data/sig/openai/models/admin/organization/users/role_list_response.rbs +21 -0
  243. data/sig/openai/models/admin/organization/users/role_retrieve_params.rbs +34 -0
  244. data/sig/openai/models/admin/organization/users/role_retrieve_response.rbs +97 -0
  245. data/sig/openai/models/responses/response_input_item.rbs +11 -0
  246. data/sig/openai/resources/admin/organization/data_retention.rbs +20 -0
  247. data/sig/openai/resources/admin/organization/groups/roles.rbs +6 -0
  248. data/sig/openai/resources/admin/organization/groups/users.rbs +6 -0
  249. data/sig/openai/resources/admin/organization/groups.rbs +5 -0
  250. data/sig/openai/resources/admin/organization/projects/data_retention.rbs +24 -0
  251. data/sig/openai/resources/admin/organization/projects/groups/roles.rbs +7 -0
  252. data/sig/openai/resources/admin/organization/projects/groups.rbs +7 -0
  253. data/sig/openai/resources/admin/organization/projects/hosted_tool_permissions.rbs +28 -0
  254. data/sig/openai/resources/admin/organization/projects/model_permissions.rbs +30 -0
  255. data/sig/openai/resources/admin/organization/projects/roles.rbs +6 -0
  256. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +8 -0
  257. data/sig/openai/resources/admin/organization/projects/spend_alerts.rbs +47 -0
  258. data/sig/openai/resources/admin/organization/projects/users/roles.rbs +7 -0
  259. data/sig/openai/resources/admin/organization/projects.rbs +8 -0
  260. data/sig/openai/resources/admin/organization/roles.rbs +5 -0
  261. data/sig/openai/resources/admin/organization/spend_alerts.rbs +41 -0
  262. data/sig/openai/resources/admin/organization/usage.rbs +29 -0
  263. data/sig/openai/resources/admin/organization/users/roles.rbs +6 -0
  264. data/sig/openai/resources/admin/organization.rbs +4 -0
  265. metadata +155 -2
@@ -18,6 +18,18 @@ module OpenAI
18
18
  sig { returns(String) }
19
19
  attr_accessor :id
20
20
 
21
+ # Principals from which the role assignment is inherited, when available.
22
+ sig do
23
+ returns(
24
+ T.nilable(
25
+ T::Array[
26
+ OpenAI::Models::Admin::Organization::Users::RoleListResponse::AssignmentSource
27
+ ]
28
+ )
29
+ )
30
+ end
31
+ attr_accessor :assignment_sources
32
+
21
33
  # When the role was created.
22
34
  sig { returns(T.nilable(Integer)) }
23
35
  attr_accessor :created_at
@@ -63,6 +75,12 @@ module OpenAI
63
75
  sig do
64
76
  params(
65
77
  id: String,
78
+ assignment_sources:
79
+ T.nilable(
80
+ T::Array[
81
+ OpenAI::Models::Admin::Organization::Users::RoleListResponse::AssignmentSource::OrHash
82
+ ]
83
+ ),
66
84
  created_at: T.nilable(Integer),
67
85
  created_by: T.nilable(String),
68
86
  created_by_user_obj: T.nilable(T::Hash[Symbol, T.anything]),
@@ -78,6 +96,8 @@ module OpenAI
78
96
  def self.new(
79
97
  # Identifier for the role.
80
98
  id:,
99
+ # Principals from which the role assignment is inherited, when available.
100
+ assignment_sources:,
81
101
  # When the role was created.
82
102
  created_at:,
83
103
  # Identifier of the actor who created the role.
@@ -105,6 +125,12 @@ module OpenAI
105
125
  override.returns(
106
126
  {
107
127
  id: String,
128
+ assignment_sources:
129
+ T.nilable(
130
+ T::Array[
131
+ OpenAI::Models::Admin::Organization::Users::RoleListResponse::AssignmentSource
132
+ ]
133
+ ),
108
134
  created_at: T.nilable(Integer),
109
135
  created_by: T.nilable(String),
110
136
  created_by_user_obj: T.nilable(T::Hash[Symbol, T.anything]),
@@ -120,6 +146,38 @@ module OpenAI
120
146
  end
121
147
  def to_hash
122
148
  end
149
+
150
+ class AssignmentSource < OpenAI::Internal::Type::BaseModel
151
+ OrHash =
152
+ T.type_alias do
153
+ T.any(
154
+ OpenAI::Models::Admin::Organization::Users::RoleListResponse::AssignmentSource,
155
+ OpenAI::Internal::AnyHash
156
+ )
157
+ end
158
+
159
+ sig { returns(String) }
160
+ attr_accessor :principal_id
161
+
162
+ sig { returns(String) }
163
+ attr_accessor :principal_type
164
+
165
+ sig do
166
+ params(principal_id: String, principal_type: String).returns(
167
+ T.attached_class
168
+ )
169
+ end
170
+ def self.new(principal_id:, principal_type:)
171
+ end
172
+
173
+ sig do
174
+ override.returns(
175
+ { principal_id: String, principal_type: String }
176
+ )
177
+ end
178
+ def to_hash
179
+ end
180
+ end
123
181
  end
124
182
  end
125
183
  end
@@ -0,0 +1,52 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module Users
8
+ class RoleRetrieveParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ OrHash =
13
+ T.type_alias do
14
+ T.any(
15
+ OpenAI::Admin::Organization::Users::RoleRetrieveParams,
16
+ OpenAI::Internal::AnyHash
17
+ )
18
+ end
19
+
20
+ sig { returns(String) }
21
+ attr_accessor :user_id
22
+
23
+ sig { returns(String) }
24
+ attr_accessor :role_id
25
+
26
+ sig do
27
+ params(
28
+ user_id: String,
29
+ role_id: String,
30
+ request_options: OpenAI::RequestOptions::OrHash
31
+ ).returns(T.attached_class)
32
+ end
33
+ def self.new(user_id:, role_id:, request_options: {})
34
+ end
35
+
36
+ sig do
37
+ override.returns(
38
+ {
39
+ user_id: String,
40
+ role_id: String,
41
+ request_options: OpenAI::RequestOptions
42
+ }
43
+ )
44
+ end
45
+ def to_hash
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,186 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module Users
8
+ class RoleRetrieveResponse < OpenAI::Internal::Type::BaseModel
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ OpenAI::Models::Admin::Organization::Users::RoleRetrieveResponse,
13
+ OpenAI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Identifier for the role.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
21
+ # Principals from which the role assignment is inherited, when available.
22
+ sig do
23
+ returns(
24
+ T.nilable(
25
+ T::Array[
26
+ OpenAI::Models::Admin::Organization::Users::RoleRetrieveResponse::AssignmentSource
27
+ ]
28
+ )
29
+ )
30
+ end
31
+ attr_accessor :assignment_sources
32
+
33
+ # When the role was created.
34
+ sig { returns(T.nilable(Integer)) }
35
+ attr_accessor :created_at
36
+
37
+ # Identifier of the actor who created the role.
38
+ sig { returns(T.nilable(String)) }
39
+ attr_accessor :created_by
40
+
41
+ # User details for the actor that created the role, when available.
42
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
43
+ attr_accessor :created_by_user_obj
44
+
45
+ # Description of the role.
46
+ sig { returns(T.nilable(String)) }
47
+ attr_accessor :description
48
+
49
+ # Arbitrary metadata stored on the role.
50
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
51
+ attr_accessor :metadata
52
+
53
+ # Name of the role.
54
+ sig { returns(String) }
55
+ attr_accessor :name
56
+
57
+ # Permissions associated with the role.
58
+ sig { returns(T::Array[String]) }
59
+ attr_accessor :permissions
60
+
61
+ # Whether the role is predefined by OpenAI.
62
+ sig { returns(T::Boolean) }
63
+ attr_accessor :predefined_role
64
+
65
+ # Resource type the role applies to.
66
+ sig { returns(String) }
67
+ attr_accessor :resource_type
68
+
69
+ # When the role was last updated.
70
+ sig { returns(T.nilable(Integer)) }
71
+ attr_accessor :updated_at
72
+
73
+ # Detailed information about a role assignment entry returned when listing
74
+ # assignments.
75
+ sig do
76
+ params(
77
+ id: String,
78
+ assignment_sources:
79
+ T.nilable(
80
+ T::Array[
81
+ OpenAI::Models::Admin::Organization::Users::RoleRetrieveResponse::AssignmentSource::OrHash
82
+ ]
83
+ ),
84
+ created_at: T.nilable(Integer),
85
+ created_by: T.nilable(String),
86
+ created_by_user_obj: T.nilable(T::Hash[Symbol, T.anything]),
87
+ description: T.nilable(String),
88
+ metadata: T.nilable(T::Hash[Symbol, T.anything]),
89
+ name: String,
90
+ permissions: T::Array[String],
91
+ predefined_role: T::Boolean,
92
+ resource_type: String,
93
+ updated_at: T.nilable(Integer)
94
+ ).returns(T.attached_class)
95
+ end
96
+ def self.new(
97
+ # Identifier for the role.
98
+ id:,
99
+ # Principals from which the role assignment is inherited, when available.
100
+ assignment_sources:,
101
+ # When the role was created.
102
+ created_at:,
103
+ # Identifier of the actor who created the role.
104
+ created_by:,
105
+ # User details for the actor that created the role, when available.
106
+ created_by_user_obj:,
107
+ # Description of the role.
108
+ description:,
109
+ # Arbitrary metadata stored on the role.
110
+ metadata:,
111
+ # Name of the role.
112
+ name:,
113
+ # Permissions associated with the role.
114
+ permissions:,
115
+ # Whether the role is predefined by OpenAI.
116
+ predefined_role:,
117
+ # Resource type the role applies to.
118
+ resource_type:,
119
+ # When the role was last updated.
120
+ updated_at:
121
+ )
122
+ end
123
+
124
+ sig do
125
+ override.returns(
126
+ {
127
+ id: String,
128
+ assignment_sources:
129
+ T.nilable(
130
+ T::Array[
131
+ OpenAI::Models::Admin::Organization::Users::RoleRetrieveResponse::AssignmentSource
132
+ ]
133
+ ),
134
+ created_at: T.nilable(Integer),
135
+ created_by: T.nilable(String),
136
+ created_by_user_obj: T.nilable(T::Hash[Symbol, T.anything]),
137
+ description: T.nilable(String),
138
+ metadata: T.nilable(T::Hash[Symbol, T.anything]),
139
+ name: String,
140
+ permissions: T::Array[String],
141
+ predefined_role: T::Boolean,
142
+ resource_type: String,
143
+ updated_at: T.nilable(Integer)
144
+ }
145
+ )
146
+ end
147
+ def to_hash
148
+ end
149
+
150
+ class AssignmentSource < OpenAI::Internal::Type::BaseModel
151
+ OrHash =
152
+ T.type_alias do
153
+ T.any(
154
+ OpenAI::Models::Admin::Organization::Users::RoleRetrieveResponse::AssignmentSource,
155
+ OpenAI::Internal::AnyHash
156
+ )
157
+ end
158
+
159
+ sig { returns(String) }
160
+ attr_accessor :principal_id
161
+
162
+ sig { returns(String) }
163
+ attr_accessor :principal_type
164
+
165
+ sig do
166
+ params(principal_id: String, principal_type: String).returns(
167
+ T.attached_class
168
+ )
169
+ end
170
+ def self.new(principal_id:, principal_type:)
171
+ end
172
+
173
+ sig do
174
+ override.returns(
175
+ { principal_id: String, principal_type: String }
176
+ )
177
+ end
178
+ def to_hash
179
+ end
180
+ end
181
+ end
182
+ end
183
+ end
184
+ end
185
+ end
186
+ end
@@ -49,6 +49,7 @@ module OpenAI
49
49
  OpenAI::Responses::ResponseInputItem::McpCall,
50
50
  OpenAI::Responses::ResponseCustomToolCallOutput,
51
51
  OpenAI::Responses::ResponseCustomToolCall,
52
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger,
52
53
  OpenAI::Responses::ResponseInputItem::ItemReference
53
54
  )
54
55
  ]
@@ -99,6 +100,7 @@ module OpenAI
99
100
  OpenAI::Responses::ResponseInputItem::McpCall::OrHash,
100
101
  OpenAI::Responses::ResponseCustomToolCallOutput::OrHash,
101
102
  OpenAI::Responses::ResponseCustomToolCall::OrHash,
103
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger::OrHash,
102
104
  OpenAI::Responses::ResponseInputItem::ItemReference::OrHash
103
105
  )
104
106
  ]
@@ -156,6 +158,7 @@ module OpenAI
156
158
  OpenAI::Responses::ResponseInputItem::McpCall,
157
159
  OpenAI::Responses::ResponseCustomToolCallOutput,
158
160
  OpenAI::Responses::ResponseCustomToolCall,
161
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger,
159
162
  OpenAI::Responses::ResponseInputItem::ItemReference
160
163
  )
161
164
  ]
@@ -50,6 +50,7 @@ module OpenAI
50
50
  OpenAI::Responses::ResponseInputItem::McpCall,
51
51
  OpenAI::Responses::ResponseCustomToolCallOutput,
52
52
  OpenAI::Responses::ResponseCustomToolCall,
53
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger,
53
54
  OpenAI::Responses::ResponseInputItem::ItemReference
54
55
  )
55
56
  ]
@@ -107,6 +108,7 @@ module OpenAI
107
108
  OpenAI::Responses::ResponseInputItem::McpCall::OrHash,
108
109
  OpenAI::Responses::ResponseCustomToolCallOutput::OrHash,
109
110
  OpenAI::Responses::ResponseCustomToolCall::OrHash,
111
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger::OrHash,
110
112
  OpenAI::Responses::ResponseInputItem::ItemReference::OrHash
111
113
  )
112
114
  ],
@@ -160,6 +162,7 @@ module OpenAI
160
162
  OpenAI::Responses::ResponseInputItem::McpCall,
161
163
  OpenAI::Responses::ResponseCustomToolCallOutput,
162
164
  OpenAI::Responses::ResponseCustomToolCall,
165
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger,
163
166
  OpenAI::Responses::ResponseInputItem::ItemReference
164
167
  )
165
168
  ],
@@ -41,6 +41,7 @@ module OpenAI
41
41
  OpenAI::Responses::ResponseInputItem::McpCall,
42
42
  OpenAI::Responses::ResponseCustomToolCallOutput,
43
43
  OpenAI::Responses::ResponseCustomToolCall,
44
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger,
44
45
  OpenAI::Responses::ResponseInputItem::ItemReference
45
46
  )
46
47
  end
@@ -2487,6 +2488,32 @@ module OpenAI
2487
2488
  end
2488
2489
  end
2489
2490
 
2491
+ class CompactionTrigger < OpenAI::Internal::Type::BaseModel
2492
+ OrHash =
2493
+ T.type_alias do
2494
+ T.any(
2495
+ OpenAI::Responses::ResponseInputItem::CompactionTrigger,
2496
+ OpenAI::Internal::AnyHash
2497
+ )
2498
+ end
2499
+
2500
+ # The type of the item. Always `compaction_trigger`.
2501
+ sig { returns(Symbol) }
2502
+ attr_accessor :type
2503
+
2504
+ # Compacts the current context. Must be the final input item.
2505
+ sig { params(type: Symbol).returns(T.attached_class) }
2506
+ def self.new(
2507
+ # The type of the item. Always `compaction_trigger`.
2508
+ type: :compaction_trigger
2509
+ )
2510
+ end
2511
+
2512
+ sig { override.returns({ type: Symbol }) }
2513
+ def to_hash
2514
+ end
2515
+ end
2516
+
2490
2517
  class ItemReference < OpenAI::Internal::Type::BaseModel
2491
2518
  OrHash =
2492
2519
  T.type_alias do
@@ -0,0 +1,40 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Resources
5
+ class Admin
6
+ class Organization
7
+ class DataRetention
8
+ # Retrieves organization data retention controls.
9
+ sig do
10
+ params(request_options: OpenAI::RequestOptions::OrHash).returns(
11
+ OpenAI::Admin::Organization::OrganizationDataRetention
12
+ )
13
+ end
14
+ def retrieve(request_options: {})
15
+ end
16
+
17
+ # Updates organization data retention controls.
18
+ sig do
19
+ params(
20
+ retention_type:
21
+ OpenAI::Admin::Organization::DataRetentionUpdateParams::RetentionType::OrSymbol,
22
+ request_options: OpenAI::RequestOptions::OrHash
23
+ ).returns(OpenAI::Admin::Organization::OrganizationDataRetention)
24
+ end
25
+ def update(
26
+ # The desired organization data retention type.
27
+ retention_type:,
28
+ request_options: {}
29
+ )
30
+ end
31
+
32
+ # @api private
33
+ sig { params(client: OpenAI::Client).returns(T.attached_class) }
34
+ def self.new(client:)
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -25,6 +25,25 @@ module OpenAI
25
25
  )
26
26
  end
27
27
 
28
+ # Retrieves an organization role assigned to a group.
29
+ sig do
30
+ params(
31
+ role_id: String,
32
+ group_id: String,
33
+ request_options: OpenAI::RequestOptions::OrHash
34
+ ).returns(
35
+ OpenAI::Models::Admin::Organization::Groups::RoleRetrieveResponse
36
+ )
37
+ end
38
+ def retrieve(
39
+ # The ID of the organization role to retrieve for the group.
40
+ role_id,
41
+ # The ID of the group to inspect.
42
+ group_id:,
43
+ request_options: {}
44
+ )
45
+ end
46
+
28
47
  # Lists the organization roles assigned to a group within the organization.
29
48
  sig do
30
49
  params(
@@ -25,6 +25,25 @@ module OpenAI
25
25
  )
26
26
  end
27
27
 
28
+ # Retrieves a user in a group.
29
+ sig do
30
+ params(
31
+ user_id: String,
32
+ group_id: String,
33
+ request_options: OpenAI::RequestOptions::OrHash
34
+ ).returns(
35
+ OpenAI::Models::Admin::Organization::Groups::UserRetrieveResponse
36
+ )
37
+ end
38
+ def retrieve(
39
+ # The ID of the user to retrieve from the group.
40
+ user_id,
41
+ # The ID of the group to inspect.
42
+ group_id:,
43
+ request_options: {}
44
+ )
45
+ end
46
+
28
47
  # Lists the users assigned to a group.
29
48
  sig do
30
49
  params(
@@ -25,6 +25,20 @@ module OpenAI
25
25
  )
26
26
  end
27
27
 
28
+ # Retrieves a group.
29
+ sig do
30
+ params(
31
+ group_id: String,
32
+ request_options: OpenAI::RequestOptions::OrHash
33
+ ).returns(OpenAI::Admin::Organization::Group)
34
+ end
35
+ def retrieve(
36
+ # The ID of the group to retrieve.
37
+ group_id,
38
+ request_options: {}
39
+ )
40
+ end
41
+
28
42
  # Updates a group's information.
29
43
  sig do
30
44
  params(
@@ -26,7 +26,8 @@ module OpenAI
26
26
  role:,
27
27
  # An array of projects to which membership is granted at the same time the org
28
28
  # invite is accepted. If omitted, the user will be invited to the default project
29
- # for compatibility with legacy behavior.
29
+ # for compatibility with legacy behavior. If empty list is passed, the user will
30
+ # not be invited to any projects, including the default one.
30
31
  projects: nil,
31
32
  request_options: {}
32
33
  )
@@ -0,0 +1,54 @@
1
+ # typed: strong
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
+ sig do
11
+ params(
12
+ project_id: String,
13
+ request_options: OpenAI::RequestOptions::OrHash
14
+ ).returns(
15
+ OpenAI::Admin::Organization::Projects::ProjectDataRetention
16
+ )
17
+ end
18
+ def retrieve(
19
+ # The ID of the project to inspect.
20
+ project_id,
21
+ request_options: {}
22
+ )
23
+ end
24
+
25
+ # Updates project data retention controls.
26
+ sig do
27
+ params(
28
+ project_id: String,
29
+ retention_type:
30
+ OpenAI::Admin::Organization::Projects::DataRetentionUpdateParams::RetentionType::OrSymbol,
31
+ request_options: OpenAI::RequestOptions::OrHash
32
+ ).returns(
33
+ OpenAI::Admin::Organization::Projects::ProjectDataRetention
34
+ )
35
+ end
36
+ def update(
37
+ # The ID of the project to update.
38
+ project_id,
39
+ # The desired project data retention type.
40
+ retention_type:,
41
+ request_options: {}
42
+ )
43
+ end
44
+
45
+ # @api private
46
+ sig { params(client: OpenAI::Client).returns(T.attached_class) }
47
+ def self.new(client:)
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -29,6 +29,28 @@ module OpenAI
29
29
  )
30
30
  end
31
31
 
32
+ # Retrieves a project role assigned to a group.
33
+ sig do
34
+ params(
35
+ role_id: String,
36
+ project_id: String,
37
+ group_id: String,
38
+ request_options: OpenAI::RequestOptions::OrHash
39
+ ).returns(
40
+ OpenAI::Models::Admin::Organization::Projects::Groups::RoleRetrieveResponse
41
+ )
42
+ end
43
+ def retrieve(
44
+ # The ID of the project role to retrieve for the group.
45
+ role_id,
46
+ # The ID of the project to inspect.
47
+ project_id:,
48
+ # The ID of the group to inspect.
49
+ group_id:,
50
+ request_options: {}
51
+ )
52
+ end
53
+
32
54
  # Lists the project roles assigned to a group within a project.
33
55
  sig do
34
56
  params(
@@ -33,6 +33,27 @@ module OpenAI
33
33
  )
34
34
  end
35
35
 
36
+ # Retrieves a project's group.
37
+ sig do
38
+ params(
39
+ group_id: String,
40
+ project_id: String,
41
+ group_type:
42
+ OpenAI::Admin::Organization::Projects::GroupRetrieveParams::GroupType::OrSymbol,
43
+ request_options: OpenAI::RequestOptions::OrHash
44
+ ).returns(OpenAI::Admin::Organization::Projects::ProjectGroup)
45
+ end
46
+ def retrieve(
47
+ # Path param: The ID of the group to retrieve.
48
+ group_id,
49
+ # Path param: The ID of the project to inspect.
50
+ project_id:,
51
+ # Query param: The type of group to retrieve.
52
+ group_type: nil,
53
+ request_options: {}
54
+ )
55
+ end
56
+
36
57
  # Lists the groups that have access to a project.
37
58
  sig do
38
59
  params(