openai 0.60.0 → 0.61.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 (547) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +73 -18
  5. data/lib/openai/internal/next_cursor_page.rb +92 -0
  6. data/lib/openai/internal/transport/base_client.rb +25 -3
  7. data/lib/openai/models/admin/organization/admin_api_key.rb +122 -0
  8. data/lib/openai/models/admin/organization/admin_api_key_create_params.rb +24 -0
  9. data/lib/openai/models/admin/organization/admin_api_key_create_response.rb +23 -0
  10. data/lib/openai/models/admin/organization/admin_api_key_delete_params.rb +26 -0
  11. data/lib/openai/models/admin/organization/admin_api_key_delete_response.rb +32 -0
  12. data/lib/openai/models/admin/organization/admin_api_key_list_params.rb +53 -0
  13. data/lib/openai/models/admin/organization/admin_api_key_retrieve_params.rb +26 -0
  14. data/lib/openai/models/admin/organization/audit_log_list_params.rb +209 -0
  15. data/lib/openai/models/admin/organization/audit_log_list_response.rb +2199 -0
  16. data/lib/openai/models/admin/organization/certificate.rb +122 -0
  17. data/lib/openai/models/admin/organization/certificate_activate_params.rb +24 -0
  18. data/lib/openai/models/admin/organization/certificate_activate_response.rb +83 -0
  19. data/lib/openai/models/admin/organization/certificate_create_params.rb +34 -0
  20. data/lib/openai/models/admin/organization/certificate_deactivate_params.rb +24 -0
  21. data/lib/openai/models/admin/organization/certificate_deactivate_response.rb +83 -0
  22. data/lib/openai/models/admin/organization/certificate_delete_params.rb +24 -0
  23. data/lib/openai/models/admin/organization/certificate_delete_response.rb +29 -0
  24. data/lib/openai/models/admin/organization/certificate_list_params.rb +62 -0
  25. data/lib/openai/models/admin/organization/certificate_list_response.rb +83 -0
  26. data/lib/openai/models/admin/organization/certificate_retrieve_params.rb +48 -0
  27. data/lib/openai/models/admin/organization/certificate_update_params.rb +33 -0
  28. data/lib/openai/models/admin/organization/group.rb +59 -0
  29. data/lib/openai/models/admin/organization/group_create_params.rb +26 -0
  30. data/lib/openai/models/admin/organization/group_delete_params.rb +24 -0
  31. data/lib/openai/models/admin/organization/group_delete_response.rb +39 -0
  32. data/lib/openai/models/admin/organization/group_list_params.rb +60 -0
  33. data/lib/openai/models/admin/organization/group_update_params.rb +33 -0
  34. data/lib/openai/models/admin/organization/group_update_response.rb +51 -0
  35. data/lib/openai/models/admin/organization/groups/organization_group_user.rb +41 -0
  36. data/lib/openai/models/admin/organization/groups/role_create_params.rb +35 -0
  37. data/lib/openai/models/admin/organization/groups/role_create_response.rb +87 -0
  38. data/lib/openai/models/admin/organization/groups/role_delete_params.rb +32 -0
  39. data/lib/openai/models/admin/organization/groups/role_delete_response.rb +38 -0
  40. data/lib/openai/models/admin/organization/groups/role_list_params.rb +66 -0
  41. data/lib/openai/models/admin/organization/groups/role_list_response.rb +108 -0
  42. data/lib/openai/models/admin/organization/groups/user_create_params.rb +35 -0
  43. data/lib/openai/models/admin/organization/groups/user_create_response.rb +41 -0
  44. data/lib/openai/models/admin/organization/groups/user_delete_params.rb +32 -0
  45. data/lib/openai/models/admin/organization/groups/user_delete_response.rb +33 -0
  46. data/lib/openai/models/admin/organization/groups/user_list_params.rb +67 -0
  47. data/lib/openai/models/admin/organization/invite.rb +146 -0
  48. data/lib/openai/models/admin/organization/invite_create_params.rb +91 -0
  49. data/lib/openai/models/admin/organization/invite_delete_params.rb +24 -0
  50. data/lib/openai/models/admin/organization/invite_delete_response.rb +35 -0
  51. data/lib/openai/models/admin/organization/invite_list_params.rb +41 -0
  52. data/lib/openai/models/admin/organization/invite_retrieve_params.rb +24 -0
  53. data/lib/openai/models/admin/organization/organization_user.rb +242 -0
  54. data/lib/openai/models/admin/organization/project.rb +71 -0
  55. data/lib/openai/models/admin/organization/project_archive_params.rb +24 -0
  56. data/lib/openai/models/admin/organization/project_create_params.rb +48 -0
  57. data/lib/openai/models/admin/organization/project_list_params.rb +50 -0
  58. data/lib/openai/models/admin/organization/project_retrieve_params.rb +24 -0
  59. data/lib/openai/models/admin/organization/project_update_params.rb +49 -0
  60. data/lib/openai/models/admin/organization/projects/api_key_delete_params.rb +32 -0
  61. data/lib/openai/models/admin/organization/projects/api_key_delete_response.rb +34 -0
  62. data/lib/openai/models/admin/organization/projects/api_key_list_params.rb +51 -0
  63. data/lib/openai/models/admin/organization/projects/api_key_retrieve_params.rb +32 -0
  64. data/lib/openai/models/admin/organization/projects/certificate_activate_params.rb +32 -0
  65. data/lib/openai/models/admin/organization/projects/certificate_activate_response.rb +85 -0
  66. data/lib/openai/models/admin/organization/projects/certificate_deactivate_params.rb +32 -0
  67. data/lib/openai/models/admin/organization/projects/certificate_deactivate_response.rb +85 -0
  68. data/lib/openai/models/admin/organization/projects/certificate_list_params.rb +72 -0
  69. data/lib/openai/models/admin/organization/projects/certificate_list_response.rb +85 -0
  70. data/lib/openai/models/admin/organization/projects/group_create_params.rb +43 -0
  71. data/lib/openai/models/admin/organization/projects/group_delete_params.rb +32 -0
  72. data/lib/openai/models/admin/organization/projects/group_delete_response.rb +33 -0
  73. data/lib/openai/models/admin/organization/projects/group_list_params.rb +67 -0
  74. data/lib/openai/models/admin/organization/projects/groups/role_create_params.rb +44 -0
  75. data/lib/openai/models/admin/organization/projects/groups/role_create_response.rb +89 -0
  76. data/lib/openai/models/admin/organization/projects/groups/role_delete_params.rb +40 -0
  77. data/lib/openai/models/admin/organization/projects/groups/role_delete_response.rb +40 -0
  78. data/lib/openai/models/admin/organization/projects/groups/role_list_params.rb +76 -0
  79. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +110 -0
  80. data/lib/openai/models/admin/organization/projects/project_api_key.rb +200 -0
  81. data/lib/openai/models/admin/organization/projects/project_group.rb +67 -0
  82. data/lib/openai/models/admin/organization/projects/project_rate_limit.rb +91 -0
  83. data/lib/openai/models/admin/organization/projects/project_service_account.rb +72 -0
  84. data/lib/openai/models/admin/organization/projects/project_user.rb +67 -0
  85. data/lib/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rb +61 -0
  86. data/lib/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rb +82 -0
  87. data/lib/openai/models/admin/organization/projects/role_create_params.rb +51 -0
  88. data/lib/openai/models/admin/organization/projects/role_delete_params.rb +32 -0
  89. data/lib/openai/models/admin/organization/projects/role_delete_response.rb +41 -0
  90. data/lib/openai/models/admin/organization/projects/role_list_params.rb +67 -0
  91. data/lib/openai/models/admin/organization/projects/role_update_params.rb +58 -0
  92. data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +35 -0
  93. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +100 -0
  94. data/lib/openai/models/admin/organization/projects/service_account_delete_params.rb +32 -0
  95. data/lib/openai/models/admin/organization/projects/service_account_delete_response.rb +34 -0
  96. data/lib/openai/models/admin/organization/projects/service_account_list_params.rb +51 -0
  97. data/lib/openai/models/admin/organization/projects/service_account_retrieve_params.rb +32 -0
  98. data/lib/openai/models/admin/organization/projects/user_create_params.rb +51 -0
  99. data/lib/openai/models/admin/organization/projects/user_delete_params.rb +32 -0
  100. data/lib/openai/models/admin/organization/projects/user_delete_response.rb +34 -0
  101. data/lib/openai/models/admin/organization/projects/user_list_params.rb +51 -0
  102. data/lib/openai/models/admin/organization/projects/user_retrieve_params.rb +32 -0
  103. data/lib/openai/models/admin/organization/projects/user_update_params.rb +42 -0
  104. data/lib/openai/models/admin/organization/projects/users/role_create_params.rb +44 -0
  105. data/lib/openai/models/admin/organization/projects/users/role_create_response.rb +43 -0
  106. data/lib/openai/models/admin/organization/projects/users/role_delete_params.rb +40 -0
  107. data/lib/openai/models/admin/organization/projects/users/role_delete_response.rb +40 -0
  108. data/lib/openai/models/admin/organization/projects/users/role_list_params.rb +76 -0
  109. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +110 -0
  110. data/lib/openai/models/admin/organization/role.rb +75 -0
  111. data/lib/openai/models/admin/organization/role_create_params.rb +42 -0
  112. data/lib/openai/models/admin/organization/role_delete_params.rb +24 -0
  113. data/lib/openai/models/admin/organization/role_delete_response.rb +39 -0
  114. data/lib/openai/models/admin/organization/role_list_params.rb +57 -0
  115. data/lib/openai/models/admin/organization/role_update_params.rb +49 -0
  116. data/lib/openai/models/admin/organization/usage_audio_speeches_params.rb +135 -0
  117. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +735 -0
  118. data/lib/openai/models/admin/organization/usage_audio_transcriptions_params.rb +136 -0
  119. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +735 -0
  120. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_params.rb +109 -0
  121. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +735 -0
  122. data/lib/openai/models/admin/organization/usage_completions_params.rb +146 -0
  123. data/lib/openai/models/admin/organization/usage_completions_response.rb +735 -0
  124. data/lib/openai/models/admin/organization/usage_costs_params.rb +112 -0
  125. data/lib/openai/models/admin/organization/usage_costs_response.rb +735 -0
  126. data/lib/openai/models/admin/organization/usage_embeddings_params.rb +134 -0
  127. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +735 -0
  128. data/lib/openai/models/admin/organization/usage_images_params.rb +181 -0
  129. data/lib/openai/models/admin/organization/usage_images_response.rb +735 -0
  130. data/lib/openai/models/admin/organization/usage_moderations_params.rb +134 -0
  131. data/lib/openai/models/admin/organization/usage_moderations_response.rb +735 -0
  132. data/lib/openai/models/admin/organization/usage_vector_stores_params.rb +107 -0
  133. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +735 -0
  134. data/lib/openai/models/admin/organization/user_delete_params.rb +24 -0
  135. data/lib/openai/models/admin/organization/user_delete_response.rb +32 -0
  136. data/lib/openai/models/admin/organization/user_list_params.rb +49 -0
  137. data/lib/openai/models/admin/organization/user_retrieve_params.rb +24 -0
  138. data/lib/openai/models/admin/organization/user_update_params.rb +57 -0
  139. data/lib/openai/models/admin/organization/users/role_create_params.rb +35 -0
  140. data/lib/openai/models/admin/organization/users/role_create_response.rb +41 -0
  141. data/lib/openai/models/admin/organization/users/role_delete_params.rb +32 -0
  142. data/lib/openai/models/admin/organization/users/role_delete_response.rb +38 -0
  143. data/lib/openai/models/admin/organization/users/role_list_params.rb +66 -0
  144. data/lib/openai/models/admin/organization/users/role_list_response.rb +108 -0
  145. data/lib/openai/models.rb +2 -0
  146. data/lib/openai/resources/admin/organization/admin_api_keys.rb +111 -0
  147. data/lib/openai/resources/admin/organization/audit_logs.rb +63 -0
  148. data/lib/openai/resources/admin/organization/certificates.rb +208 -0
  149. data/lib/openai/resources/admin/organization/groups/roles.rb +107 -0
  150. data/lib/openai/resources/admin/organization/groups/users.rb +107 -0
  151. data/lib/openai/resources/admin/organization/groups.rb +127 -0
  152. data/lib/openai/resources/admin/organization/invites.rb +121 -0
  153. data/lib/openai/resources/admin/organization/projects/api_keys.rb +112 -0
  154. data/lib/openai/resources/admin/organization/projects/certificates.rb +110 -0
  155. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +128 -0
  156. data/lib/openai/resources/admin/organization/projects/groups.rb +114 -0
  157. data/lib/openai/resources/admin/organization/projects/rate_limits.rb +102 -0
  158. data/lib/openai/resources/admin/organization/projects/roles.rb +147 -0
  159. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +139 -0
  160. data/lib/openai/resources/admin/organization/projects/users/roles.rb +128 -0
  161. data/lib/openai/resources/admin/organization/projects/users.rb +177 -0
  162. data/lib/openai/resources/admin/organization/projects.rb +181 -0
  163. data/lib/openai/resources/admin/organization/roles.rb +127 -0
  164. data/lib/openai/resources/admin/organization/usage.rb +416 -0
  165. data/lib/openai/resources/admin/organization/users/roles.rb +107 -0
  166. data/lib/openai/resources/admin/organization/users.rb +127 -0
  167. data/lib/openai/resources/admin/organization.rb +53 -0
  168. data/lib/openai/resources/admin.rb +18 -0
  169. data/lib/openai/resources/audio/speech.rb +1 -0
  170. data/lib/openai/resources/audio/transcriptions.rb +2 -0
  171. data/lib/openai/resources/audio/translations.rb +1 -0
  172. data/lib/openai/resources/batches.rb +11 -1
  173. data/lib/openai/resources/beta/assistants.rb +5 -0
  174. data/lib/openai/resources/beta/chatkit/sessions.rb +2 -0
  175. data/lib/openai/resources/beta/chatkit/threads.rb +4 -0
  176. data/lib/openai/resources/beta/threads/messages.rb +5 -0
  177. data/lib/openai/resources/beta/threads/runs/steps.rb +2 -0
  178. data/lib/openai/resources/beta/threads/runs.rb +8 -0
  179. data/lib/openai/resources/beta/threads.rb +6 -0
  180. data/lib/openai/resources/chat/completions/messages.rb +1 -0
  181. data/lib/openai/resources/chat/completions.rb +7 -0
  182. data/lib/openai/resources/completions.rb +2 -0
  183. data/lib/openai/resources/containers/files/content.rb +1 -0
  184. data/lib/openai/resources/containers/files.rb +4 -0
  185. data/lib/openai/resources/containers.rb +4 -0
  186. data/lib/openai/resources/conversations/items.rb +4 -0
  187. data/lib/openai/resources/conversations.rb +4 -0
  188. data/lib/openai/resources/embeddings.rb +1 -0
  189. data/lib/openai/resources/evals/runs/output_items.rb +2 -0
  190. data/lib/openai/resources/evals/runs.rb +5 -0
  191. data/lib/openai/resources/evals.rb +5 -0
  192. data/lib/openai/resources/files.rb +5 -0
  193. data/lib/openai/resources/fine_tuning/alpha/graders.rb +2 -0
  194. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +4 -0
  195. data/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +1 -0
  196. data/lib/openai/resources/fine_tuning/jobs.rb +7 -0
  197. data/lib/openai/resources/images.rb +5 -0
  198. data/lib/openai/resources/models.rb +3 -0
  199. data/lib/openai/resources/moderations.rb +1 -0
  200. data/lib/openai/resources/realtime/calls.rb +4 -0
  201. data/lib/openai/resources/realtime/client_secrets.rb +1 -0
  202. data/lib/openai/resources/responses/input_items.rb +1 -0
  203. data/lib/openai/resources/responses/input_tokens.rb +1 -0
  204. data/lib/openai/resources/responses.rb +9 -0
  205. data/lib/openai/resources/skills/content.rb +1 -0
  206. data/lib/openai/resources/skills/versions/content.rb +1 -0
  207. data/lib/openai/resources/skills/versions.rb +4 -0
  208. data/lib/openai/resources/skills.rb +5 -0
  209. data/lib/openai/resources/uploads/parts.rb +1 -0
  210. data/lib/openai/resources/uploads.rb +10 -1
  211. data/lib/openai/resources/vector_stores/file_batches.rb +4 -0
  212. data/lib/openai/resources/vector_stores/files.rb +6 -0
  213. data/lib/openai/resources/vector_stores.rb +6 -0
  214. data/lib/openai/resources/videos.rb +10 -0
  215. data/lib/openai/version.rb +1 -1
  216. data/lib/openai.rb +162 -0
  217. data/rbi/openai/client.rbi +31 -3
  218. data/rbi/openai/internal/next_cursor_page.rbi +25 -0
  219. data/rbi/openai/internal/transport/base_client.rbi +10 -1
  220. data/rbi/openai/models/admin/organization/admin_api_key.rbi +191 -0
  221. data/rbi/openai/models/admin/organization/admin_api_key_create_params.rbi +42 -0
  222. data/rbi/openai/models/admin/organization/admin_api_key_create_response.rbi +35 -0
  223. data/rbi/openai/models/admin/organization/admin_api_key_delete_params.rbi +47 -0
  224. data/rbi/openai/models/admin/organization/admin_api_key_delete_response.rbi +48 -0
  225. data/rbi/openai/models/admin/organization/admin_api_key_list_params.rbi +120 -0
  226. data/rbi/openai/models/admin/organization/admin_api_key_retrieve_params.rbi +47 -0
  227. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +550 -0
  228. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +5102 -0
  229. data/rbi/openai/models/admin/organization/certificate.rbi +222 -0
  230. data/rbi/openai/models/admin/organization/certificate_activate_params.rbi +45 -0
  231. data/rbi/openai/models/admin/organization/certificate_activate_response.rbi +138 -0
  232. data/rbi/openai/models/admin/organization/certificate_create_params.rbi +61 -0
  233. data/rbi/openai/models/admin/organization/certificate_deactivate_params.rbi +45 -0
  234. data/rbi/openai/models/admin/organization/certificate_deactivate_response.rbi +138 -0
  235. data/rbi/openai/models/admin/organization/certificate_delete_params.rbi +45 -0
  236. data/rbi/openai/models/admin/organization/certificate_delete_response.rbi +40 -0
  237. data/rbi/openai/models/admin/organization/certificate_list_params.rbi +134 -0
  238. data/rbi/openai/models/admin/organization/certificate_list_response.rbi +138 -0
  239. data/rbi/openai/models/admin/organization/certificate_retrieve_params.rbi +111 -0
  240. data/rbi/openai/models/admin/organization/certificate_update_params.rbi +59 -0
  241. data/rbi/openai/models/admin/organization/group.rbi +79 -0
  242. data/rbi/openai/models/admin/organization/group_create_params.rbi +47 -0
  243. data/rbi/openai/models/admin/organization/group_delete_params.rbi +42 -0
  244. data/rbi/openai/models/admin/organization/group_delete_response.rbi +55 -0
  245. data/rbi/openai/models/admin/organization/group_list_params.rbi +131 -0
  246. data/rbi/openai/models/admin/organization/group_update_params.rbi +56 -0
  247. data/rbi/openai/models/admin/organization/group_update_response.rbi +71 -0
  248. data/rbi/openai/models/admin/organization/groups/organization_group_user.rbi +59 -0
  249. data/rbi/openai/models/admin/organization/groups/role_create_params.rbi +58 -0
  250. data/rbi/openai/models/admin/organization/groups/role_create_response.rbi +148 -0
  251. data/rbi/openai/models/admin/organization/groups/role_delete_params.rbi +52 -0
  252. data/rbi/openai/models/admin/organization/groups/role_delete_response.rbi +49 -0
  253. data/rbi/openai/models/admin/organization/groups/role_list_params.rbi +133 -0
  254. data/rbi/openai/models/admin/organization/groups/role_list_response.rbi +128 -0
  255. data/rbi/openai/models/admin/organization/groups/user_create_params.rbi +58 -0
  256. data/rbi/openai/models/admin/organization/groups/user_create_response.rbi +57 -0
  257. data/rbi/openai/models/admin/organization/groups/user_delete_params.rbi +52 -0
  258. data/rbi/openai/models/admin/organization/groups/user_delete_response.rbi +47 -0
  259. data/rbi/openai/models/admin/organization/groups/user_list_params.rbi +135 -0
  260. data/rbi/openai/models/admin/organization/invite.rbi +271 -0
  261. data/rbi/openai/models/admin/organization/invite_create_params.rbi +219 -0
  262. data/rbi/openai/models/admin/organization/invite_delete_params.rbi +42 -0
  263. data/rbi/openai/models/admin/organization/invite_delete_response.rbi +50 -0
  264. data/rbi/openai/models/admin/organization/invite_list_params.rbi +72 -0
  265. data/rbi/openai/models/admin/organization/invite_retrieve_params.rbi +42 -0
  266. data/rbi/openai/models/admin/organization/organization_user.rbi +376 -0
  267. data/rbi/openai/models/admin/organization/project.rbi +93 -0
  268. data/rbi/openai/models/admin/organization/project_archive_params.rbi +42 -0
  269. data/rbi/openai/models/admin/organization/project_create_params.rbi +72 -0
  270. data/rbi/openai/models/admin/organization/project_list_params.rbi +85 -0
  271. data/rbi/openai/models/admin/organization/project_retrieve_params.rbi +42 -0
  272. data/rbi/openai/models/admin/organization/project_update_params.rbi +72 -0
  273. data/rbi/openai/models/admin/organization/projects/api_key_delete_params.rbi +52 -0
  274. data/rbi/openai/models/admin/organization/projects/api_key_delete_response.rbi +50 -0
  275. data/rbi/openai/models/admin/organization/projects/api_key_list_params.rbi +80 -0
  276. data/rbi/openai/models/admin/organization/projects/api_key_retrieve_params.rbi +52 -0
  277. data/rbi/openai/models/admin/organization/projects/certificate_activate_params.rbi +52 -0
  278. data/rbi/openai/models/admin/organization/projects/certificate_activate_response.rbi +142 -0
  279. data/rbi/openai/models/admin/organization/projects/certificate_deactivate_params.rbi +52 -0
  280. data/rbi/openai/models/admin/organization/projects/certificate_deactivate_response.rbi +142 -0
  281. data/rbi/openai/models/admin/organization/projects/certificate_list_params.rbi +142 -0
  282. data/rbi/openai/models/admin/organization/projects/certificate_list_response.rbi +142 -0
  283. data/rbi/openai/models/admin/organization/projects/group_create_params.rbi +66 -0
  284. data/rbi/openai/models/admin/organization/projects/group_delete_params.rbi +52 -0
  285. data/rbi/openai/models/admin/organization/projects/group_delete_response.rbi +47 -0
  286. data/rbi/openai/models/admin/organization/projects/group_list_params.rbi +133 -0
  287. data/rbi/openai/models/admin/organization/projects/groups/role_create_params.rbi +66 -0
  288. data/rbi/openai/models/admin/organization/projects/groups/role_create_response.rbi +152 -0
  289. data/rbi/openai/models/admin/organization/projects/groups/role_delete_params.rbi +64 -0
  290. data/rbi/openai/models/admin/organization/projects/groups/role_delete_response.rbi +51 -0
  291. data/rbi/openai/models/admin/organization/projects/groups/role_list_params.rbi +141 -0
  292. data/rbi/openai/models/admin/organization/projects/groups/role_list_response.rbi +130 -0
  293. data/rbi/openai/models/admin/organization/projects/project_api_key.rbi +371 -0
  294. data/rbi/openai/models/admin/organization/projects/project_group.rbi +89 -0
  295. data/rbi/openai/models/admin/organization/projects/project_rate_limit.rbi +125 -0
  296. data/rbi/openai/models/admin/organization/projects/project_service_account.rbi +122 -0
  297. data/rbi/openai/models/admin/organization/projects/project_user.rbi +89 -0
  298. data/rbi/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rbi +95 -0
  299. data/rbi/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rbi +122 -0
  300. data/rbi/openai/models/admin/organization/projects/role_create_params.rbi +74 -0
  301. data/rbi/openai/models/admin/organization/projects/role_delete_params.rbi +52 -0
  302. data/rbi/openai/models/admin/organization/projects/role_delete_response.rbi +57 -0
  303. data/rbi/openai/models/admin/organization/projects/role_list_params.rbi +133 -0
  304. data/rbi/openai/models/admin/organization/projects/role_update_params.rbi +80 -0
  305. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +58 -0
  306. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +157 -0
  307. data/rbi/openai/models/admin/organization/projects/service_account_delete_params.rbi +52 -0
  308. data/rbi/openai/models/admin/organization/projects/service_account_delete_response.rbi +50 -0
  309. data/rbi/openai/models/admin/organization/projects/service_account_list_params.rbi +80 -0
  310. data/rbi/openai/models/admin/organization/projects/service_account_retrieve_params.rbi +52 -0
  311. data/rbi/openai/models/admin/organization/projects/user_create_params.rbi +74 -0
  312. data/rbi/openai/models/admin/organization/projects/user_delete_params.rbi +52 -0
  313. data/rbi/openai/models/admin/organization/projects/user_delete_response.rbi +50 -0
  314. data/rbi/openai/models/admin/organization/projects/user_list_params.rbi +80 -0
  315. data/rbi/openai/models/admin/organization/projects/user_retrieve_params.rbi +52 -0
  316. data/rbi/openai/models/admin/organization/projects/user_update_params.rbi +64 -0
  317. data/rbi/openai/models/admin/organization/projects/users/role_create_params.rbi +66 -0
  318. data/rbi/openai/models/admin/organization/projects/users/role_create_response.rbi +77 -0
  319. data/rbi/openai/models/admin/organization/projects/users/role_delete_params.rbi +59 -0
  320. data/rbi/openai/models/admin/organization/projects/users/role_delete_response.rbi +51 -0
  321. data/rbi/openai/models/admin/organization/projects/users/role_list_params.rbi +141 -0
  322. data/rbi/openai/models/admin/organization/projects/users/role_list_response.rbi +130 -0
  323. data/rbi/openai/models/admin/organization/role.rbi +95 -0
  324. data/rbi/openai/models/admin/organization/role_create_params.rbi +66 -0
  325. data/rbi/openai/models/admin/organization/role_delete_params.rbi +42 -0
  326. data/rbi/openai/models/admin/organization/role_delete_response.rbi +55 -0
  327. data/rbi/openai/models/admin/organization/role_list_params.rbi +125 -0
  328. data/rbi/openai/models/admin/organization/role_update_params.rbi +72 -0
  329. data/rbi/openai/models/admin/organization/usage_audio_speeches_params.rbi +282 -0
  330. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +1029 -0
  331. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_params.rbi +282 -0
  332. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +1029 -0
  333. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_params.rbi +234 -0
  334. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +1029 -0
  335. data/rbi/openai/models/admin/organization/usage_completions_params.rbi +307 -0
  336. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +1029 -0
  337. data/rbi/openai/models/admin/organization/usage_costs_params.rbi +239 -0
  338. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +1029 -0
  339. data/rbi/openai/models/admin/organization/usage_embeddings_params.rbi +282 -0
  340. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +1029 -0
  341. data/rbi/openai/models/admin/organization/usage_images_params.rbi +450 -0
  342. data/rbi/openai/models/admin/organization/usage_images_response.rbi +1029 -0
  343. data/rbi/openai/models/admin/organization/usage_moderations_params.rbi +282 -0
  344. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +1029 -0
  345. data/rbi/openai/models/admin/organization/usage_vector_stores_params.rbi +234 -0
  346. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +1029 -0
  347. data/rbi/openai/models/admin/organization/user_delete_params.rbi +42 -0
  348. data/rbi/openai/models/admin/organization/user_delete_response.rbi +44 -0
  349. data/rbi/openai/models/admin/organization/user_list_params.rbi +83 -0
  350. data/rbi/openai/models/admin/organization/user_retrieve_params.rbi +42 -0
  351. data/rbi/openai/models/admin/organization/user_update_params.rbi +80 -0
  352. data/rbi/openai/models/admin/organization/users/role_create_params.rbi +58 -0
  353. data/rbi/openai/models/admin/organization/users/role_create_response.rbi +73 -0
  354. data/rbi/openai/models/admin/organization/users/role_delete_params.rbi +52 -0
  355. data/rbi/openai/models/admin/organization/users/role_delete_response.rbi +49 -0
  356. data/rbi/openai/models/admin/organization/users/role_list_params.rbi +133 -0
  357. data/rbi/openai/models/admin/organization/users/role_list_response.rbi +128 -0
  358. data/rbi/openai/models.rbi +2 -0
  359. data/rbi/openai/resources/admin/organization/admin_api_keys.rbi +83 -0
  360. data/rbi/openai/resources/admin/organization/audit_logs.rbi +74 -0
  361. data/rbi/openai/resources/admin/organization/certificates.rbi +156 -0
  362. data/rbi/openai/resources/admin/organization/groups/roles.rbi +85 -0
  363. data/rbi/openai/resources/admin/organization/groups/users.rbi +86 -0
  364. data/rbi/openai/resources/admin/organization/groups.rbi +96 -0
  365. data/rbi/openai/resources/admin/organization/invites.rbi +96 -0
  366. data/rbi/openai/resources/admin/organization/projects/api_keys.rbi +85 -0
  367. data/rbi/openai/resources/admin/organization/projects/certificates.rbi +94 -0
  368. data/rbi/openai/resources/admin/organization/projects/groups/roles.rbi +96 -0
  369. data/rbi/openai/resources/admin/organization/projects/groups.rbi +93 -0
  370. data/rbi/openai/resources/admin/organization/projects/rate_limits.rbi +88 -0
  371. data/rbi/openai/resources/admin/organization/projects/roles.rbi +115 -0
  372. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +107 -0
  373. data/rbi/openai/resources/admin/organization/projects/users/roles.rbi +96 -0
  374. data/rbi/openai/resources/admin/organization/projects/users.rbi +136 -0
  375. data/rbi/openai/resources/admin/organization/projects.rbi +162 -0
  376. data/rbi/openai/resources/admin/organization/roles.rbi +99 -0
  377. data/rbi/openai/resources/admin/organization/usage.rbi +491 -0
  378. data/rbi/openai/resources/admin/organization/users/roles.rbi +85 -0
  379. data/rbi/openai/resources/admin/organization/users.rbi +101 -0
  380. data/rbi/openai/resources/admin/organization.rbi +42 -0
  381. data/rbi/openai/resources/admin.rbi +15 -0
  382. data/sig/openai/client.rbs +16 -2
  383. data/sig/openai/internal/next_cursor_page.rbs +15 -0
  384. data/sig/openai/internal/transport/base_client.rbs +2 -0
  385. data/sig/openai/models/admin/organization/admin_api_key.rbs +108 -0
  386. data/sig/openai/models/admin/organization/admin_api_key_create_params.rbs +27 -0
  387. data/sig/openai/models/admin/organization/admin_api_key_create_response.rbs +19 -0
  388. data/sig/openai/models/admin/organization/admin_api_key_delete_params.rbs +27 -0
  389. data/sig/openai/models/admin/organization/admin_api_key_delete_response.rbs +34 -0
  390. data/sig/openai/models/admin/organization/admin_api_key_list_params.rbs +57 -0
  391. data/sig/openai/models/admin/organization/admin_api_key_retrieve_params.rbs +27 -0
  392. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +238 -0
  393. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +2175 -0
  394. data/sig/openai/models/admin/organization/certificate.rbs +95 -0
  395. data/sig/openai/models/admin/organization/certificate_activate_params.rbs +28 -0
  396. data/sig/openai/models/admin/organization/certificate_activate_response.rbs +65 -0
  397. data/sig/openai/models/admin/organization/certificate_create_params.rbs +34 -0
  398. data/sig/openai/models/admin/organization/certificate_deactivate_params.rbs +28 -0
  399. data/sig/openai/models/admin/organization/certificate_deactivate_response.rbs +65 -0
  400. data/sig/openai/models/admin/organization/certificate_delete_params.rbs +28 -0
  401. data/sig/openai/models/admin/organization/certificate_delete_response.rbs +20 -0
  402. data/sig/openai/models/admin/organization/certificate_list_params.rbs +59 -0
  403. data/sig/openai/models/admin/organization/certificate_list_response.rbs +65 -0
  404. data/sig/openai/models/admin/organization/certificate_retrieve_params.rbs +49 -0
  405. data/sig/openai/models/admin/organization/certificate_update_params.rbs +34 -0
  406. data/sig/openai/models/admin/organization/group.rbs +44 -0
  407. data/sig/openai/models/admin/organization/group_create_params.rbs +27 -0
  408. data/sig/openai/models/admin/organization/group_delete_params.rbs +27 -0
  409. data/sig/openai/models/admin/organization/group_delete_response.rbs +30 -0
  410. data/sig/openai/models/admin/organization/group_list_params.rbs +59 -0
  411. data/sig/openai/models/admin/organization/group_update_params.rbs +32 -0
  412. data/sig/openai/models/admin/organization/group_update_response.rbs +39 -0
  413. data/sig/openai/models/admin/organization/groups/organization_group_user.rbs +24 -0
  414. data/sig/openai/models/admin/organization/groups/role_create_params.rbs +34 -0
  415. data/sig/openai/models/admin/organization/groups/role_create_response.rbs +73 -0
  416. data/sig/openai/models/admin/organization/groups/role_delete_params.rbs +34 -0
  417. data/sig/openai/models/admin/organization/groups/role_delete_response.rbs +21 -0
  418. data/sig/openai/models/admin/organization/groups/role_list_params.rbs +66 -0
  419. data/sig/openai/models/admin/organization/groups/role_list_response.rbs +76 -0
  420. data/sig/openai/models/admin/organization/groups/user_create_params.rbs +34 -0
  421. data/sig/openai/models/admin/organization/groups/user_create_response.rbs +32 -0
  422. data/sig/openai/models/admin/organization/groups/user_delete_params.rbs +34 -0
  423. data/sig/openai/models/admin/organization/groups/user_delete_response.rbs +25 -0
  424. data/sig/openai/models/admin/organization/groups/user_list_params.rbs +66 -0
  425. data/sig/openai/models/admin/organization/invite.rbs +120 -0
  426. data/sig/openai/models/admin/organization/invite_create_params.rbs +88 -0
  427. data/sig/openai/models/admin/organization/invite_delete_params.rbs +27 -0
  428. data/sig/openai/models/admin/organization/invite_delete_response.rbs +30 -0
  429. data/sig/openai/models/admin/organization/invite_list_params.rbs +36 -0
  430. data/sig/openai/models/admin/organization/invite_retrieve_params.rbs +27 -0
  431. data/sig/openai/models/admin/organization/organization_user.rbs +205 -0
  432. data/sig/openai/models/admin/organization/project.rbs +54 -0
  433. data/sig/openai/models/admin/organization/project_archive_params.rbs +27 -0
  434. data/sig/openai/models/admin/organization/project_create_params.rbs +36 -0
  435. data/sig/openai/models/admin/organization/project_list_params.rbs +42 -0
  436. data/sig/openai/models/admin/organization/project_retrieve_params.rbs +27 -0
  437. data/sig/openai/models/admin/organization/project_update_params.rbs +45 -0
  438. data/sig/openai/models/admin/organization/projects/api_key_delete_params.rbs +34 -0
  439. data/sig/openai/models/admin/organization/projects/api_key_delete_response.rbs +36 -0
  440. data/sig/openai/models/admin/organization/projects/api_key_list_params.rbs +42 -0
  441. data/sig/openai/models/admin/organization/projects/api_key_retrieve_params.rbs +34 -0
  442. data/sig/openai/models/admin/organization/projects/certificate_activate_params.rbs +34 -0
  443. data/sig/openai/models/admin/organization/projects/certificate_activate_response.rbs +68 -0
  444. data/sig/openai/models/admin/organization/projects/certificate_deactivate_params.rbs +34 -0
  445. data/sig/openai/models/admin/organization/projects/certificate_deactivate_response.rbs +68 -0
  446. data/sig/openai/models/admin/organization/projects/certificate_list_params.rbs +66 -0
  447. data/sig/openai/models/admin/organization/projects/certificate_list_response.rbs +68 -0
  448. data/sig/openai/models/admin/organization/projects/group_create_params.rbs +38 -0
  449. data/sig/openai/models/admin/organization/projects/group_delete_params.rbs +34 -0
  450. data/sig/openai/models/admin/organization/projects/group_delete_response.rbs +25 -0
  451. data/sig/openai/models/admin/organization/projects/group_list_params.rbs +66 -0
  452. data/sig/openai/models/admin/organization/projects/groups/role_create_params.rbs +40 -0
  453. data/sig/openai/models/admin/organization/projects/groups/role_create_response.rbs +75 -0
  454. data/sig/openai/models/admin/organization/projects/groups/role_delete_params.rbs +40 -0
  455. data/sig/openai/models/admin/organization/projects/groups/role_delete_response.rbs +23 -0
  456. data/sig/openai/models/admin/organization/projects/groups/role_list_params.rbs +73 -0
  457. data/sig/openai/models/admin/organization/projects/groups/role_list_response.rbs +78 -0
  458. data/sig/openai/models/admin/organization/projects/project_api_key.rbs +172 -0
  459. data/sig/openai/models/admin/organization/projects/project_group.rbs +53 -0
  460. data/sig/openai/models/admin/organization/projects/project_rate_limit.rbs +76 -0
  461. data/sig/openai/models/admin/organization/projects/project_service_account.rbs +59 -0
  462. data/sig/openai/models/admin/organization/projects/project_user.rbs +53 -0
  463. data/sig/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rbs +53 -0
  464. data/sig/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rbs +79 -0
  465. data/sig/openai/models/admin/organization/projects/role_create_params.rbs +47 -0
  466. data/sig/openai/models/admin/organization/projects/role_delete_params.rbs +34 -0
  467. data/sig/openai/models/admin/organization/projects/role_delete_response.rbs +32 -0
  468. data/sig/openai/models/admin/organization/projects/role_list_params.rbs +66 -0
  469. data/sig/openai/models/admin/organization/projects/role_update_params.rbs +52 -0
  470. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +34 -0
  471. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +88 -0
  472. data/sig/openai/models/admin/organization/projects/service_account_delete_params.rbs +34 -0
  473. data/sig/openai/models/admin/organization/projects/service_account_delete_response.rbs +36 -0
  474. data/sig/openai/models/admin/organization/projects/service_account_list_params.rbs +42 -0
  475. data/sig/openai/models/admin/organization/projects/service_account_retrieve_params.rbs +34 -0
  476. data/sig/openai/models/admin/organization/projects/user_create_params.rbs +47 -0
  477. data/sig/openai/models/admin/organization/projects/user_delete_params.rbs +34 -0
  478. data/sig/openai/models/admin/organization/projects/user_delete_response.rbs +36 -0
  479. data/sig/openai/models/admin/organization/projects/user_list_params.rbs +42 -0
  480. data/sig/openai/models/admin/organization/projects/user_retrieve_params.rbs +34 -0
  481. data/sig/openai/models/admin/organization/projects/user_update_params.rbs +38 -0
  482. data/sig/openai/models/admin/organization/projects/users/role_create_params.rbs +40 -0
  483. data/sig/openai/models/admin/organization/projects/users/role_create_response.rbs +38 -0
  484. data/sig/openai/models/admin/organization/projects/users/role_delete_params.rbs +40 -0
  485. data/sig/openai/models/admin/organization/projects/users/role_delete_response.rbs +23 -0
  486. data/sig/openai/models/admin/organization/projects/users/role_list_params.rbs +73 -0
  487. data/sig/openai/models/admin/organization/projects/users/role_list_response.rbs +78 -0
  488. data/sig/openai/models/admin/organization/role.rbs +54 -0
  489. data/sig/openai/models/admin/organization/role_create_params.rbs +40 -0
  490. data/sig/openai/models/admin/organization/role_delete_params.rbs +27 -0
  491. data/sig/openai/models/admin/organization/role_delete_response.rbs +26 -0
  492. data/sig/openai/models/admin/organization/role_list_params.rbs +59 -0
  493. data/sig/openai/models/admin/organization/role_update_params.rbs +45 -0
  494. data/sig/openai/models/admin/organization/usage_audio_speeches_params.rbs +122 -0
  495. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +527 -0
  496. data/sig/openai/models/admin/organization/usage_audio_transcriptions_params.rbs +122 -0
  497. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +527 -0
  498. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_params.rbs +98 -0
  499. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +527 -0
  500. data/sig/openai/models/admin/organization/usage_completions_params.rbs +137 -0
  501. data/sig/openai/models/admin/organization/usage_completions_response.rbs +527 -0
  502. data/sig/openai/models/admin/organization/usage_costs_params.rbs +105 -0
  503. data/sig/openai/models/admin/organization/usage_costs_response.rbs +527 -0
  504. data/sig/openai/models/admin/organization/usage_embeddings_params.rbs +122 -0
  505. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +527 -0
  506. data/sig/openai/models/admin/organization/usage_images_params.rbs +170 -0
  507. data/sig/openai/models/admin/organization/usage_images_response.rbs +527 -0
  508. data/sig/openai/models/admin/organization/usage_moderations_params.rbs +122 -0
  509. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +527 -0
  510. data/sig/openai/models/admin/organization/usage_vector_stores_params.rbs +98 -0
  511. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +527 -0
  512. data/sig/openai/models/admin/organization/user_delete_params.rbs +27 -0
  513. data/sig/openai/models/admin/organization/user_delete_response.rbs +30 -0
  514. data/sig/openai/models/admin/organization/user_list_params.rbs +42 -0
  515. data/sig/openai/models/admin/organization/user_retrieve_params.rbs +27 -0
  516. data/sig/openai/models/admin/organization/user_update_params.rbs +50 -0
  517. data/sig/openai/models/admin/organization/users/role_create_params.rbs +34 -0
  518. data/sig/openai/models/admin/organization/users/role_create_response.rbs +36 -0
  519. data/sig/openai/models/admin/organization/users/role_delete_params.rbs +34 -0
  520. data/sig/openai/models/admin/organization/users/role_delete_response.rbs +21 -0
  521. data/sig/openai/models/admin/organization/users/role_list_params.rbs +66 -0
  522. data/sig/openai/models/admin/organization/users/role_list_response.rbs +76 -0
  523. data/sig/openai/models.rbs +2 -0
  524. data/sig/openai/resources/admin/organization/admin_api_keys.rbs +33 -0
  525. data/sig/openai/resources/admin/organization/audit_logs.rbs +24 -0
  526. data/sig/openai/resources/admin/organization/certificates.rbs +51 -0
  527. data/sig/openai/resources/admin/organization/groups/roles.rbs +33 -0
  528. data/sig/openai/resources/admin/organization/groups/users.rbs +33 -0
  529. data/sig/openai/resources/admin/organization/groups.rbs +38 -0
  530. data/sig/openai/resources/admin/organization/invites.rbs +34 -0
  531. data/sig/openai/resources/admin/organization/projects/api_keys.rbs +32 -0
  532. data/sig/openai/resources/admin/organization/projects/certificates.rbs +33 -0
  533. data/sig/openai/resources/admin/organization/projects/groups/roles.rbs +38 -0
  534. data/sig/openai/resources/admin/organization/projects/groups.rbs +36 -0
  535. data/sig/openai/resources/admin/organization/projects/rate_limits.rbs +33 -0
  536. data/sig/openai/resources/admin/organization/projects/roles.rbs +44 -0
  537. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +38 -0
  538. data/sig/openai/resources/admin/organization/projects/users/roles.rbs +38 -0
  539. data/sig/openai/resources/admin/organization/projects/users.rbs +49 -0
  540. data/sig/openai/resources/admin/organization/projects.rbs +57 -0
  541. data/sig/openai/resources/admin/organization/roles.rbs +38 -0
  542. data/sig/openai/resources/admin/organization/usage.rbs +132 -0
  543. data/sig/openai/resources/admin/organization/users/roles.rbs +33 -0
  544. data/sig/openai/resources/admin/organization/users.rbs +39 -0
  545. data/sig/openai/resources/admin/organization.rbs +27 -0
  546. data/sig/openai/resources/admin.rbs +9 -0
  547. metadata +488 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8a23e970e2907a5c12466a0fe422f2474e22f139cb1ef3236c28cbd7580b25b4
4
- data.tar.gz: 56cbf7ddbb893e7df07214f85e564f8471c97117f0f0c59664b4970cc0d1177b
3
+ metadata.gz: 05f5bfabea5cbd601fcd33a8ed3e6f8bbf52dde251998c77e16163c10dfb6a65
4
+ data.tar.gz: 0c83764f6e4316cc7bc6fa3d0bfc19f855f144f4964df5c98e3dee4a8a7839d9
5
5
  SHA512:
6
- metadata.gz: 13460eb99f7d27be65434cc9e46d965ee6f2a07f93b970b42eab04c1377e61d042db5efee2ddb55e7b238baf607f4485308defdf96a4301c119b96364809a423
7
- data.tar.gz: 11d8b7275d1beb13c65b30722d55df7aa0c6231cd9edfb74b1d053bdf3604b78157afb713e066bff1cd9a47e1940e95d88471320086a49bc467d2d4067fb345e
6
+ metadata.gz: 01cd6adcb14ef5e12dda7fc68c127bd57dd2a9920b2909dd75f4297943eb701a6dd94f0eda0e7a94541a209deab6e9f0c0f8f584b86f672c7cb6852a918e3374
7
+ data.tar.gz: e3644e138d68134533429bbd705268c3d03514664a7cb9b188d55fa978827fb95ffa7a92d3f361413fce836229cb4f45fa636cb105470f07220a5d3df964c578
data/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.61.0 (2026-05-01)
4
+
5
+ Full Changelog: [v0.60.0...v0.61.0](https://github.com/openai/openai-ruby/compare/v0.60.0...v0.61.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** add org user/project/group fields, remove enums, update role types ([867521b](https://github.com/openai/openai-ruby/commit/867521b925b4bfb44ee66acf7b7fc43907d6a050))
10
+ * **api:** add support for Admin API Keys per endpoint ([0074885](https://github.com/openai/openai-ruby/commit/0074885734380280c790b6fcfdf8aad0639de854))
11
+ * **api:** admin API updates ([dadc042](https://github.com/openai/openai-ruby/commit/dadc0422becbe1b9df587928068d24ba5c69ec8e))
12
+ * **api:** manual updates ([5f9b9a5](https://github.com/openai/openai-ruby/commit/5f9b9a59377d79c7f4de7bc1514cfd934f93989f))
13
+ * **api:** manual updates ([4ebefdc](https://github.com/openai/openai-ruby/commit/4ebefdc5e923124475a2bc2b5fd9364704067301))
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * **api:** preserve selected auth scheme ([2479660](https://github.com/openai/openai-ruby/commit/2479660121cb6ecdb449c1a1e661a77bc93d60b1))
19
+ * **api:** support admin api key auth ([095bf67](https://github.com/openai/openai-ruby/commit/095bf67e2d13483adb7d370761663c0babf862ee))
20
+ * **types:** correct timestamp fields to Float in Response model ([943333d](https://github.com/openai/openai-ruby/commit/943333da4e7931af036c59a7795a53641ae04ec7))
21
+ * **types:** correct timestamp types to Integer in Response model ([d98683c](https://github.com/openai/openai-ruby/commit/d98683cedd697c3f919ec2e3afc9c7d0b69d7ab6))
22
+
3
23
  ## 0.60.0 (2026-04-28)
4
24
 
5
25
  Full Changelog: [v0.59.0...v0.60.0](https://github.com/openai/openai-ruby/compare/v0.59.0...v0.60.0)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "openai", "~> 0.60.0"
18
+ gem "openai", "~> 0.61.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
data/lib/openai/client.rb CHANGED
@@ -17,9 +17,12 @@ module OpenAI
17
17
 
18
18
  WORKLOAD_IDENTITY_API_KEY_PLACEHOLDER = "workload-identity-auth"
19
19
 
20
- # @return [String]
20
+ # @return [String, nil]
21
21
  attr_reader :api_key
22
22
 
23
+ # @return [String, nil]
24
+ attr_reader :admin_api_key
25
+
23
26
  # @return [String, nil]
24
27
  attr_reader :organization
25
28
 
@@ -90,6 +93,9 @@ module OpenAI
90
93
  # @return [OpenAI::Resources::Uploads]
91
94
  attr_reader :uploads
92
95
 
96
+ # @return [OpenAI::Resources::Admin]
97
+ attr_reader :admin
98
+
93
99
  # @return [OpenAI::Resources::Responses]
94
100
  attr_reader :responses
95
101
 
@@ -113,15 +119,45 @@ module OpenAI
113
119
  # @return [OpenAI::Resources::Videos]
114
120
  attr_reader :videos
115
121
 
122
+ # @api private
123
+ #
124
+ # @param security [Hash{Symbol=>Boolean}]
125
+ #
126
+ # @return [Hash{String=>String}]
127
+ private def auth_headers(security:)
128
+ enabled_security = security.select { |_, enabled| enabled }
129
+ headers = {bearer_auth:, admin_api_key_auth:}.slice(*enabled_security.keys).values.reduce({}, :merge)
130
+ if headers.empty? && enabled_security.any?
131
+ raise ArgumentError,
132
+ "Could not resolve authentication method. Expected either api_key or admin_api_key to be set."
133
+ end
134
+ headers
135
+ end
136
+
116
137
  # @api private
117
138
  #
118
139
  # @return [Hash{String=>String}]
119
- private def auth_headers
140
+ private def bearer_auth
120
141
  return {} if @api_key.nil?
121
142
 
122
143
  {"authorization" => "Bearer #{@api_key}"}
123
144
  end
124
145
 
146
+ # @api private
147
+ #
148
+ # @return [Hash{String=>String}]
149
+ private def admin_api_key_auth
150
+ return {} if @admin_api_key.nil?
151
+
152
+ {"authorization" => "Bearer #{@admin_api_key}"}
153
+ end
154
+
155
+ # Creates and returns a new client for interacting with the API.
156
+ #
157
+ # @param api_key [String, nil] Defaults to `ENV["OPENAI_API_KEY"]`.
158
+ # Mutually exclusive with `workload_identity`.
159
+ #
160
+
125
161
  # @api private
126
162
  private def request_replayable?(request)
127
163
  body = request[:body]
@@ -134,12 +170,20 @@ module OpenAI
134
170
  private def send_request(request, redirect_count:, retry_count:, send_retry_header:)
135
171
  return super unless @workload_identity_auth
136
172
 
173
+ workload_identity_auth_header = "Bearer #{WORKLOAD_IDENTITY_API_KEY_PLACEHOLDER}"
174
+ return super unless request[:headers]["authorization"] == workload_identity_auth_header
175
+
137
176
  token = @workload_identity_auth.get_token
138
177
  updated_headers = request[:headers].merge("authorization" => "Bearer #{token}")
139
178
  updated_request = request.merge(headers: updated_headers)
140
179
 
141
180
  begin
142
- super(updated_request, redirect_count: redirect_count, retry_count: retry_count, send_retry_header: send_retry_header)
181
+ super(
182
+ updated_request,
183
+ redirect_count: redirect_count,
184
+ retry_count: retry_count,
185
+ send_retry_header: send_retry_header
186
+ )
143
187
  rescue OpenAI::Errors::AuthenticationError
144
188
  raise unless retry_count.zero? && request_replayable?(request)
145
189
  @workload_identity_auth.invalidate_token
@@ -148,7 +192,12 @@ module OpenAI
148
192
  refreshed_headers = request[:headers].merge("authorization" => "Bearer #{fresh_token}")
149
193
  refreshed_request = request.merge(headers: refreshed_headers)
150
194
 
151
- super(refreshed_request, redirect_count: redirect_count, retry_count: retry_count + 1, send_retry_header: send_retry_header)
195
+ super(
196
+ refreshed_request,
197
+ redirect_count: redirect_count,
198
+ retry_count: retry_count + 1,
199
+ send_retry_header: send_retry_header
200
+ )
152
201
  end
153
202
  end
154
203
 
@@ -157,6 +206,8 @@ module OpenAI
157
206
  # @param api_key [String, nil] Defaults to `ENV["OPENAI_API_KEY"]`.
158
207
  # Mutually exclusive with `workload_identity`.
159
208
  #
209
+ # @param admin_api_key [String, nil] Defaults to `ENV["OPENAI_ADMIN_KEY"]`
210
+ #
160
211
  # @param workload_identity [OpenAI::Auth::WorkloadIdentity, nil]
161
212
  # OAuth2 workload identity configuration for token exchange authentication.
162
213
  # Mutually exclusive with `api_key`.
@@ -179,6 +230,7 @@ module OpenAI
179
230
  # @param max_retry_delay [Float]
180
231
  def initialize(
181
232
  api_key: ENV["OPENAI_API_KEY"],
233
+ admin_api_key: ENV["OPENAI_ADMIN_KEY"],
182
234
  workload_identity: nil,
183
235
  organization: ENV["OPENAI_ORG_ID"],
184
236
  project: ENV["OPENAI_PROJECT_ID"],
@@ -191,21 +243,13 @@ module OpenAI
191
243
  )
192
244
  base_url ||= "https://api.openai.com/v1"
193
245
 
194
- if workload_identity && api_key && api_key != WORKLOAD_IDENTITY_API_KEY_PLACEHOLDER
195
- raise ArgumentError.new(
196
- "The `api_key` and `workload_identity` arguments are mutually exclusive; " \
197
- "only one can be passed at a time."
198
- )
246
+ if !api_key.nil? && !workload_identity.nil?
247
+ raise ArgumentError, "`api_key` and `workload_identity` are mutually exclusive"
199
248
  end
200
249
 
201
- if workload_identity
202
- @workload_identity_auth = OpenAI::Auth::WorkloadIdentityAuth.new(
203
- workload_identity,
204
- organization
205
- )
206
- api_key = WORKLOAD_IDENTITY_API_KEY_PLACEHOLDER
207
- elsif api_key.nil?
208
- raise ArgumentError.new("api_key is required, and can be set via environ: \"OPENAI_API_KEY\"")
250
+ if api_key.nil? && admin_api_key.nil? && workload_identity.nil?
251
+ raise ArgumentError,
252
+ "Missing credentials. Please pass an `api_key`, `workload_identity`, `admin_api_key`, or set the `OPENAI_API_KEY` or `OPENAI_ADMIN_KEY` environment variable."
209
253
  end
210
254
 
211
255
  headers = {
@@ -224,7 +268,17 @@ module OpenAI
224
268
  headers = parsed.merge(headers)
225
269
  end
226
270
 
227
- @api_key = api_key.to_s
271
+ if workload_identity.nil?
272
+ @api_key = api_key&.to_s
273
+ @workload_identity_auth = nil
274
+ else
275
+ @api_key = WORKLOAD_IDENTITY_API_KEY_PLACEHOLDER
276
+ @workload_identity_auth = OpenAI::Auth::WorkloadIdentityAuth.new(
277
+ workload_identity,
278
+ organization&.to_s
279
+ )
280
+ end
281
+ @admin_api_key = admin_api_key&.to_s
228
282
  @webhook_secret = webhook_secret&.to_s
229
283
 
230
284
  super(
@@ -251,6 +305,7 @@ module OpenAI
251
305
  @beta = OpenAI::Resources::Beta.new(client: self)
252
306
  @batches = OpenAI::Resources::Batches.new(client: self)
253
307
  @uploads = OpenAI::Resources::Uploads.new(client: self)
308
+ @admin = OpenAI::Resources::Admin.new(client: self)
254
309
  @responses = OpenAI::Resources::Responses.new(client: self)
255
310
  @realtime = OpenAI::Resources::Realtime.new(client: self)
256
311
  @conversations = OpenAI::Resources::Conversations.new(client: self)
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Internal
5
+ # @generic Elem
6
+ #
7
+ # @example
8
+ # if next_cursor_page.has_next?
9
+ # next_cursor_page = next_cursor_page.next_page
10
+ # end
11
+ #
12
+ # @example
13
+ # next_cursor_page.auto_paging_each do |role|
14
+ # puts(role)
15
+ # end
16
+ class NextCursorPage
17
+ include OpenAI::Internal::Type::BasePage
18
+
19
+ # @return [Array<generic<Elem>>, nil]
20
+ attr_accessor :data
21
+
22
+ # @return [Boolean]
23
+ attr_accessor :has_more
24
+
25
+ # @return [String, nil]
26
+ attr_accessor :next_
27
+
28
+ # @return [Boolean]
29
+ def next_page?
30
+ has_more
31
+ end
32
+
33
+ # @raise [OpenAI::HTTP::Error]
34
+ # @return [self]
35
+ def next_page
36
+ unless next_page?
37
+ message = "No more pages available. Please check #next_page? before calling ##{__method__}"
38
+ raise RuntimeError.new(message)
39
+ end
40
+
41
+ req = OpenAI::Internal::Util.deep_merge(@req, {query: {after: next_}})
42
+ @client.request(req)
43
+ end
44
+
45
+ # @param blk [Proc]
46
+ #
47
+ # @yieldparam [generic<Elem>]
48
+ def auto_paging_each(&blk)
49
+ unless block_given?
50
+ raise ArgumentError.new("A block must be given to ##{__method__}")
51
+ end
52
+
53
+ page = self
54
+ loop do
55
+ page.data&.each(&blk)
56
+
57
+ break unless page.next_page?
58
+ page = page.next_page
59
+ end
60
+ end
61
+
62
+ # @api private
63
+ #
64
+ # @param client [OpenAI::Internal::Transport::BaseClient]
65
+ # @param req [Hash{Symbol=>Object}]
66
+ # @param headers [Hash{String=>String}]
67
+ # @param page_data [Hash{Symbol=>Object}]
68
+ def initialize(client:, req:, headers:, page_data:)
69
+ super
70
+
71
+ case page_data
72
+ in {data: Array => data}
73
+ @data = data.map { OpenAI::Internal::Type::Converter.coerce(@model, _1) }
74
+ else
75
+ end
76
+ @has_more = page_data[:has_more]
77
+ @next_ = page_data[:next]
78
+ end
79
+
80
+ # @api private
81
+ #
82
+ # @return [String]
83
+ def inspect
84
+ # rubocop:disable Layout/LineLength
85
+ model = OpenAI::Internal::Type::Converter.inspect(@model, depth: 1)
86
+
87
+ "#<#{self.class}[#{model}]:0x#{object_id.to_s(16)} has_more=#{has_more.inspect} next_=#{next_.inspect}>"
88
+ # rubocop:enable Layout/LineLength
89
+ end
90
+ end
91
+ end
92
+ end
@@ -31,7 +31,19 @@ module OpenAI
31
31
  #
32
32
  # @raise [ArgumentError]
33
33
  def validate!(req)
34
- keys = [:method, :path, :query, :headers, :body, :unwrap, :page, :stream, :model, :options]
34
+ keys = [
35
+ :method,
36
+ :path,
37
+ :query,
38
+ :headers,
39
+ :body,
40
+ :unwrap,
41
+ :page,
42
+ :stream,
43
+ :model,
44
+ :security,
45
+ :options
46
+ ]
35
47
  case req
36
48
  in Hash
37
49
  req.each_key do |k|
@@ -252,6 +264,8 @@ module OpenAI
252
264
  #
253
265
  # @option req [OpenAI::Internal::Type::Converter, Class, nil] :model
254
266
  #
267
+ # @option req [Hash{Symbol=>Boolean}, nil] :security
268
+ #
255
269
  # @param opts [Hash{Symbol=>Object}] .
256
270
  #
257
271
  # @option opts [String, nil] :idempotency_key
@@ -276,7 +290,12 @@ module OpenAI
276
290
 
277
291
  headers = OpenAI::Internal::Util.normalized_headers(
278
292
  @headers,
279
- auth_headers,
293
+ auth_headers(
294
+ security: req.fetch(
295
+ :security,
296
+ {bearer_auth: true, admin_api_key_auth: true}
297
+ )
298
+ ),
280
299
  req[:headers].to_h,
281
300
  opts[:extra_headers].to_h
282
301
  )
@@ -439,7 +458,7 @@ module OpenAI
439
458
  # Execute the request specified by `req`. This is the method that all resource
440
459
  # methods call into.
441
460
  #
442
- # @overload request(method, path, query: {}, headers: {}, body: nil, unwrap: nil, page: nil, stream: nil, model: OpenAI::Internal::Type::Unknown, options: {})
461
+ # @overload request(method, path, query: {}, headers: {}, body: nil, unwrap: nil, page: nil, stream: nil, model: OpenAI::Internal::Type::Unknown, security: {bearer_auth: true, admin_api_key_auth: true}, options: {})
443
462
  #
444
463
  # @param method [Symbol]
445
464
  #
@@ -459,6 +478,8 @@ module OpenAI
459
478
  #
460
479
  # @param model [OpenAI::Internal::Type::Converter, Class, nil]
461
480
  #
481
+ # @param security [Hash{Symbol=>Boolean}, nil]
482
+ #
462
483
  # @param options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] .
463
484
  #
464
485
  # @option options [String, nil] :idempotency_key
@@ -551,6 +572,7 @@ module OpenAI
551
572
  page: T.nilable(T::Class[OpenAI::Internal::Type::BasePage[OpenAI::Internal::Type::BaseModel]]),
552
573
  stream: T.nilable(T::Class[OpenAI::Internal::Type::BaseStream[T.anything, OpenAI::Internal::Type::BaseModel]]),
553
574
  model: T.nilable(OpenAI::Internal::Type::Converter::Input),
575
+ security: T.nilable({bearer_auth?: T::Boolean, admin_api_key_auth?: T::Boolean}),
554
576
  options: T.nilable(OpenAI::RequestOptions::OrHash)
555
577
  }
556
578
  end
@@ -0,0 +1,122 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::AdminAPIKeys#retrieve
8
+ class AdminAPIKey < OpenAI::Internal::Type::BaseModel
9
+ # @!attribute id
10
+ # The identifier, which can be referenced in API endpoints
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
15
+ # @!attribute created_at
16
+ # The Unix timestamp (in seconds) of when the API key was created
17
+ #
18
+ # @return [Integer]
19
+ required :created_at, Integer
20
+
21
+ # @!attribute object
22
+ # The object type, which is always `organization.admin_api_key`
23
+ #
24
+ # @return [Symbol, :"organization.admin_api_key"]
25
+ required :object, const: :"organization.admin_api_key"
26
+
27
+ # @!attribute owner
28
+ #
29
+ # @return [OpenAI::Models::Admin::Organization::AdminAPIKey::Owner]
30
+ required :owner, -> { OpenAI::Admin::Organization::AdminAPIKey::Owner }
31
+
32
+ # @!attribute redacted_value
33
+ # The redacted value of the API key
34
+ #
35
+ # @return [String]
36
+ required :redacted_value, String
37
+
38
+ # @!attribute last_used_at
39
+ # The Unix timestamp (in seconds) of when the API key was last used
40
+ #
41
+ # @return [Integer, nil]
42
+ optional :last_used_at, Integer, nil?: true
43
+
44
+ # @!attribute name
45
+ # The name of the API key
46
+ #
47
+ # @return [String, nil]
48
+ optional :name, String, nil?: true
49
+
50
+ # @!method initialize(id:, created_at:, owner:, redacted_value:, last_used_at: nil, name: nil, object: :"organization.admin_api_key")
51
+ # Represents an individual Admin API key in an org.
52
+ #
53
+ # @param id [String] The identifier, which can be referenced in API endpoints
54
+ #
55
+ # @param created_at [Integer] The Unix timestamp (in seconds) of when the API key was created
56
+ #
57
+ # @param owner [OpenAI::Models::Admin::Organization::AdminAPIKey::Owner]
58
+ #
59
+ # @param redacted_value [String] The redacted value of the API key
60
+ #
61
+ # @param last_used_at [Integer, nil] The Unix timestamp (in seconds) of when the API key was last used
62
+ #
63
+ # @param name [String, nil] The name of the API key
64
+ #
65
+ # @param object [Symbol, :"organization.admin_api_key"] The object type, which is always `organization.admin_api_key`
66
+
67
+ # @see OpenAI::Models::Admin::Organization::AdminAPIKey#owner
68
+ class Owner < OpenAI::Internal::Type::BaseModel
69
+ # @!attribute id
70
+ # The identifier, which can be referenced in API endpoints
71
+ #
72
+ # @return [String, nil]
73
+ optional :id, String
74
+
75
+ # @!attribute created_at
76
+ # The Unix timestamp (in seconds) of when the user was created
77
+ #
78
+ # @return [Integer, nil]
79
+ optional :created_at, Integer
80
+
81
+ # @!attribute name
82
+ # The name of the user
83
+ #
84
+ # @return [String, nil]
85
+ optional :name, String
86
+
87
+ # @!attribute object
88
+ # The object type, which is always organization.user
89
+ #
90
+ # @return [String, nil]
91
+ optional :object, String
92
+
93
+ # @!attribute role
94
+ # Always `owner`
95
+ #
96
+ # @return [String, nil]
97
+ optional :role, String
98
+
99
+ # @!attribute type
100
+ # Always `user`
101
+ #
102
+ # @return [String, nil]
103
+ optional :type, String
104
+
105
+ # @!method initialize(id: nil, created_at: nil, name: nil, object: nil, role: nil, type: nil)
106
+ # @param id [String] The identifier, which can be referenced in API endpoints
107
+ #
108
+ # @param created_at [Integer] The Unix timestamp (in seconds) of when the user was created
109
+ #
110
+ # @param name [String] The name of the user
111
+ #
112
+ # @param object [String] The object type, which is always organization.user
113
+ #
114
+ # @param role [String] Always `owner`
115
+ #
116
+ # @param type [String] Always `user`
117
+ end
118
+ end
119
+ end
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::AdminAPIKeys#create
8
+ class AdminAPIKeyCreateParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute name
13
+ #
14
+ # @return [String]
15
+ required :name, String
16
+
17
+ # @!method initialize(name:, request_options: {})
18
+ # @param name [String]
19
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::AdminAPIKeys#create
8
+ class AdminAPIKeyCreateResponse < OpenAI::Models::Admin::Organization::AdminAPIKey
9
+ # @!attribute value
10
+ # The value of the API key. Only shown on create.
11
+ #
12
+ # @return [String]
13
+ required :value, String
14
+
15
+ # @!method initialize(value:)
16
+ # Represents an individual Admin API key in an org.
17
+ #
18
+ # @param value [String] The value of the API key. Only shown on create.
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::AdminAPIKeys#delete
8
+ class AdminAPIKeyDeleteParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute key_id
13
+ # The ID of the API key to be deleted.
14
+ #
15
+ # @return [String]
16
+ required :key_id, String
17
+
18
+ # @!method initialize(key_id:, request_options: {})
19
+ # @param key_id [String] The ID of the API key to be deleted.
20
+ #
21
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::AdminAPIKeys#delete
8
+ class AdminAPIKeyDeleteResponse < OpenAI::Internal::Type::BaseModel
9
+ # @!attribute id
10
+ #
11
+ # @return [String]
12
+ required :id, String
13
+
14
+ # @!attribute deleted
15
+ #
16
+ # @return [Boolean]
17
+ required :deleted, OpenAI::Internal::Type::Boolean
18
+
19
+ # @!attribute object
20
+ #
21
+ # @return [Symbol, :"organization.admin_api_key.deleted"]
22
+ required :object, const: :"organization.admin_api_key.deleted"
23
+
24
+ # @!method initialize(id:, deleted:, object: :"organization.admin_api_key.deleted")
25
+ # @param id [String]
26
+ # @param deleted [Boolean]
27
+ # @param object [Symbol, :"organization.admin_api_key.deleted"]
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::AdminAPIKeys#list
8
+ class AdminAPIKeyListParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute after
13
+ # Return keys with IDs that come after this ID in the pagination order.
14
+ #
15
+ # @return [String, nil]
16
+ optional :after, String, nil?: true
17
+
18
+ # @!attribute limit
19
+ # Maximum number of keys to return.
20
+ #
21
+ # @return [Integer, nil]
22
+ optional :limit, Integer
23
+
24
+ # @!attribute order
25
+ # Order results by creation time, ascending or descending.
26
+ #
27
+ # @return [Symbol, OpenAI::Models::Admin::Organization::AdminAPIKeyListParams::Order, nil]
28
+ optional :order, enum: -> { OpenAI::Admin::Organization::AdminAPIKeyListParams::Order }
29
+
30
+ # @!method initialize(after: nil, limit: nil, order: nil, request_options: {})
31
+ # @param after [String, nil] Return keys with IDs that come after this ID in the pagination order.
32
+ #
33
+ # @param limit [Integer] Maximum number of keys to return.
34
+ #
35
+ # @param order [Symbol, OpenAI::Models::Admin::Organization::AdminAPIKeyListParams::Order] Order results by creation time, ascending or descending.
36
+ #
37
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
38
+
39
+ # Order results by creation time, ascending or descending.
40
+ module Order
41
+ extend OpenAI::Internal::Type::Enum
42
+
43
+ ASC = :asc
44
+ DESC = :desc
45
+
46
+ # @!method self.values
47
+ # @return [Array<Symbol>]
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end