openai 0.70.0 → 0.72.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 (172) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +51 -1
  4. data/lib/openai/client.rb +62 -8
  5. data/lib/openai/internal/provider.rb +31 -0
  6. data/lib/openai/internal/transport/base_client.rb +65 -21
  7. data/lib/openai/models/admin/organization/audit_log_list_params.rb +84 -0
  8. data/lib/openai/models/admin/organization/audit_log_list_response.rb +84 -0
  9. data/lib/openai/models/admin/organization/organization_spend_limit.rb +151 -0
  10. data/lib/openai/models/admin/organization/organization_spend_limit_deleted.rb +33 -0
  11. data/lib/openai/models/admin/organization/projects/project_service_account.rb +4 -3
  12. data/lib/openai/models/admin/organization/projects/project_spend_limit.rb +155 -0
  13. data/lib/openai/models/admin/organization/projects/project_spend_limit_deleted.rb +35 -0
  14. data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +9 -1
  15. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +26 -6
  16. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rb +54 -0
  17. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rb +57 -0
  18. data/lib/openai/models/admin/organization/projects/spend_limit_delete_params.rb +26 -0
  19. data/lib/openai/models/admin/organization/projects/spend_limit_retrieve_params.rb +26 -0
  20. data/lib/openai/models/admin/organization/projects/spend_limit_update_params.rb +77 -0
  21. data/lib/openai/models/admin/organization/spend_limit_delete_params.rb +18 -0
  22. data/lib/openai/models/admin/organization/spend_limit_retrieve_params.rb +18 -0
  23. data/lib/openai/models/admin/organization/spend_limit_update_params.rb +67 -0
  24. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +88 -13
  25. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +88 -13
  26. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +88 -13
  27. data/lib/openai/models/admin/organization/usage_completions_response.rb +88 -13
  28. data/lib/openai/models/admin/organization/usage_costs_response.rb +88 -13
  29. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +88 -13
  30. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +88 -13
  31. data/lib/openai/models/admin/organization/usage_images_response.rb +88 -13
  32. data/lib/openai/models/admin/organization/usage_moderations_response.rb +88 -13
  33. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +88 -13
  34. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +88 -13
  35. data/lib/openai/models/beta/beta_response.rb +12 -6
  36. data/lib/openai/models/beta/beta_response_error.rb +1 -0
  37. data/lib/openai/models/beta/beta_response_input_item.rb +16 -32
  38. data/lib/openai/models/beta/beta_response_text_config.rb +4 -2
  39. data/lib/openai/models/beta/beta_responses_client_event.rb +12 -6
  40. data/lib/openai/models/beta/response_create_params.rb +12 -6
  41. data/lib/openai/models/beta/responses/input_token_count_params.rb +12 -4
  42. data/lib/openai/models/chat/completion_create_params.rb +8 -6
  43. data/lib/openai/models/reasoning.rb +8 -2
  44. data/lib/openai/models/responses/input_token_count_params.rb +4 -2
  45. data/lib/openai/models/responses/response.rb +4 -4
  46. data/lib/openai/models/responses/response_create_params.rb +4 -4
  47. data/lib/openai/models/responses/response_error.rb +1 -0
  48. data/lib/openai/models/responses/response_text_config.rb +4 -2
  49. data/lib/openai/models/responses/responses_client_event.rb +4 -4
  50. data/lib/openai/provider.rb +18 -0
  51. data/lib/openai/providers/bedrock.rb +489 -0
  52. data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +60 -0
  53. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +10 -3
  54. data/lib/openai/resources/admin/organization/projects/spend_limit.rb +95 -0
  55. data/lib/openai/resources/admin/organization/projects.rb +4 -0
  56. data/lib/openai/resources/admin/organization/spend_limit.rb +86 -0
  57. data/lib/openai/resources/admin/organization.rb +4 -0
  58. data/lib/openai/resources/beta/responses.rb +4 -4
  59. data/lib/openai/resources/chat/completions.rb +4 -4
  60. data/lib/openai/resources/responses.rb +4 -4
  61. data/lib/openai/version.rb +1 -1
  62. data/lib/openai.rb +18 -0
  63. data/rbi/openai/client.rbi +17 -0
  64. data/rbi/openai/internal/provider.rbi +51 -0
  65. data/rbi/openai/internal/transport/base_client.rbi +32 -0
  66. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +420 -0
  67. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +420 -0
  68. data/rbi/openai/models/admin/organization/organization_spend_limit.rbi +278 -0
  69. data/rbi/openai/models/admin/organization/organization_spend_limit_deleted.rbi +48 -0
  70. data/rbi/openai/models/admin/organization/projects/project_service_account.rbi +8 -3
  71. data/rbi/openai/models/admin/organization/projects/project_spend_limit.rbi +280 -0
  72. data/rbi/openai/models/admin/organization/projects/project_spend_limit_deleted.rbi +49 -0
  73. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +8 -0
  74. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +52 -8
  75. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbi +84 -0
  76. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbi +80 -0
  77. data/rbi/openai/models/admin/organization/projects/spend_limit_delete_params.rbi +44 -0
  78. data/rbi/openai/models/admin/organization/projects/spend_limit_retrieve_params.rbi +44 -0
  79. data/rbi/openai/models/admin/organization/projects/spend_limit_update_params.rbi +149 -0
  80. data/rbi/openai/models/admin/organization/spend_limit_delete_params.rbi +34 -0
  81. data/rbi/openai/models/admin/organization/spend_limit_retrieve_params.rbi +34 -0
  82. data/rbi/openai/models/admin/organization/spend_limit_update_params.rbi +141 -0
  83. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +121 -16
  84. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +121 -16
  85. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +121 -16
  86. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +121 -16
  87. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +121 -16
  88. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +121 -16
  89. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +121 -16
  90. data/rbi/openai/models/admin/organization/usage_images_response.rbi +121 -16
  91. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +121 -16
  92. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +121 -16
  93. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +121 -16
  94. data/rbi/openai/models/beta/beta_response.rbi +18 -15
  95. data/rbi/openai/models/beta/beta_response_error.rbi +5 -0
  96. data/rbi/openai/models/beta/beta_response_input_item.rbi +39 -46
  97. data/rbi/openai/models/beta/beta_response_text_config.rbi +6 -3
  98. data/rbi/openai/models/beta/beta_responses_client_event.rbi +18 -15
  99. data/rbi/openai/models/beta/response_create_params.rbi +18 -15
  100. data/rbi/openai/models/beta/responses/input_token_count_params.rbi +18 -6
  101. data/rbi/openai/models/chat/completion_create_params.rbi +12 -15
  102. data/rbi/openai/models/reasoning.rbi +12 -3
  103. data/rbi/openai/models/responses/input_token_count_params.rbi +6 -3
  104. data/rbi/openai/models/responses/response.rbi +6 -12
  105. data/rbi/openai/models/responses/response_create_params.rbi +6 -12
  106. data/rbi/openai/models/responses/response_error.rbi +5 -0
  107. data/rbi/openai/models/responses/response_text_config.rbi +6 -3
  108. data/rbi/openai/models/responses/responses_client_event.rbi +6 -12
  109. data/rbi/openai/provider.rbi +9 -0
  110. data/rbi/openai/providers.rbi +33 -0
  111. data/rbi/openai/resources/admin/organization/projects/service_accounts/api_keys.rbi +45 -0
  112. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +12 -2
  113. data/rbi/openai/resources/admin/organization/projects/spend_limit.rbi +78 -0
  114. data/rbi/openai/resources/admin/organization/projects.rbi +7 -0
  115. data/rbi/openai/resources/admin/organization/spend_limit.rbi +57 -0
  116. data/rbi/openai/resources/admin/organization.rbi +3 -0
  117. data/rbi/openai/resources/beta/responses.rbi +4 -4
  118. data/rbi/openai/resources/chat/completions.rbi +8 -6
  119. data/rbi/openai/resources/responses.rbi +4 -4
  120. data/sig/openai/client.rbs +7 -0
  121. data/sig/openai/internal/provider.rbs +29 -0
  122. data/sig/openai/internal/transport/base_client.rbs +17 -1
  123. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +168 -0
  124. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +168 -0
  125. data/sig/openai/models/admin/organization/organization_spend_limit.rbs +94 -0
  126. data/sig/openai/models/admin/organization/organization_spend_limit_deleted.rbs +28 -0
  127. data/sig/openai/models/admin/organization/projects/project_service_account.rbs +2 -1
  128. data/sig/openai/models/admin/organization/projects/project_spend_limit.rbs +96 -0
  129. data/sig/openai/models/admin/organization/projects/project_spend_limit_deleted.rbs +30 -0
  130. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +9 -1
  131. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +16 -5
  132. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbs +53 -0
  133. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbs +48 -0
  134. data/sig/openai/models/admin/organization/projects/spend_limit_delete_params.rbs +29 -0
  135. data/sig/openai/models/admin/organization/projects/spend_limit_retrieve_params.rbs +29 -0
  136. data/sig/openai/models/admin/organization/projects/spend_limit_update_params.rbs +67 -0
  137. data/sig/openai/models/admin/organization/spend_limit_delete_params.rbs +19 -0
  138. data/sig/openai/models/admin/organization/spend_limit_retrieve_params.rbs +19 -0
  139. data/sig/openai/models/admin/organization/spend_limit_update_params.rbs +60 -0
  140. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +63 -0
  141. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +63 -0
  142. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +63 -0
  143. data/sig/openai/models/admin/organization/usage_completions_response.rbs +63 -0
  144. data/sig/openai/models/admin/organization/usage_costs_response.rbs +63 -0
  145. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +63 -0
  146. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +63 -0
  147. data/sig/openai/models/admin/organization/usage_images_response.rbs +63 -0
  148. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +63 -0
  149. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +63 -0
  150. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +63 -0
  151. data/sig/openai/models/beta/beta_response.rbs +8 -12
  152. data/sig/openai/models/beta/beta_response_error.rbs +2 -0
  153. data/sig/openai/models/beta/beta_response_input_item.rbs +18 -24
  154. data/sig/openai/models/beta/beta_responses_client_event.rbs +8 -12
  155. data/sig/openai/models/beta/response_create_params.rbs +8 -12
  156. data/sig/openai/models/chat/completion_create_params.rbs +8 -12
  157. data/sig/openai/models/responses/response.rbs +8 -12
  158. data/sig/openai/models/responses/response_create_params.rbs +8 -12
  159. data/sig/openai/models/responses/response_error.rbs +2 -0
  160. data/sig/openai/models/responses/responses_client_event.rbs +8 -12
  161. data/sig/openai/provider.rbs +5 -0
  162. data/sig/openai/providers.rbs +15 -0
  163. data/sig/openai/resources/admin/organization/projects/service_accounts/api_keys.rbs +23 -0
  164. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +3 -0
  165. data/sig/openai/resources/admin/organization/projects/spend_limit.rbs +31 -0
  166. data/sig/openai/resources/admin/organization/projects.rbs +2 -0
  167. data/sig/openai/resources/admin/organization/spend_limit.rbs +26 -0
  168. data/sig/openai/resources/admin/organization.rbs +2 -0
  169. data/sig/openai/resources/beta/responses.rbs +4 -4
  170. data/sig/openai/resources/chat/completions.rbs +4 -4
  171. data/sig/openai/resources/responses.rbs +4 -4
  172. metadata +56 -2
@@ -28,11 +28,11 @@ module OpenAI
28
28
  parallel_tool_calls: bool?,
29
29
  previous_response_id: String?,
30
30
  prompt: OpenAI::Beta::BetaResponsePrompt?,
31
- prompt_cache_key: String,
31
+ prompt_cache_key: String?,
32
32
  prompt_cache_options: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions,
33
33
  prompt_cache_retention: OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::prompt_cache_retention?,
34
34
  reasoning: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::Reasoning?,
35
- safety_identifier: String,
35
+ safety_identifier: String?,
36
36
  service_tier: OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::service_tier?,
37
37
  store: bool?,
38
38
  stream: bool?,
@@ -88,9 +88,7 @@ module OpenAI
88
88
 
89
89
  attr_accessor prompt: OpenAI::Beta::BetaResponsePrompt?
90
90
 
91
- attr_reader prompt_cache_key: String?
92
-
93
- def prompt_cache_key=: (String) -> String
91
+ attr_accessor prompt_cache_key: String?
94
92
 
95
93
  attr_reader prompt_cache_options: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions?
96
94
 
@@ -102,9 +100,7 @@ module OpenAI
102
100
 
103
101
  attr_accessor reasoning: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::Reasoning?
104
102
 
105
- attr_reader safety_identifier: String?
106
-
107
- def safety_identifier=: (String) -> String
103
+ attr_accessor safety_identifier: String?
108
104
 
109
105
  attr_accessor service_tier: OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::service_tier?
110
106
 
@@ -160,11 +156,11 @@ module OpenAI
160
156
  ?parallel_tool_calls: bool?,
161
157
  ?previous_response_id: String?,
162
158
  ?prompt: OpenAI::Beta::BetaResponsePrompt?,
163
- ?prompt_cache_key: String,
159
+ ?prompt_cache_key: String?,
164
160
  ?prompt_cache_options: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions,
165
161
  ?prompt_cache_retention: OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::prompt_cache_retention?,
166
162
  ?reasoning: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::Reasoning?,
167
- ?safety_identifier: String,
163
+ ?safety_identifier: String?,
168
164
  ?service_tier: OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::service_tier?,
169
165
  ?store: bool?,
170
166
  ?stream: bool?,
@@ -197,11 +193,11 @@ module OpenAI
197
193
  parallel_tool_calls: bool?,
198
194
  previous_response_id: String?,
199
195
  prompt: OpenAI::Beta::BetaResponsePrompt?,
200
- prompt_cache_key: String,
196
+ prompt_cache_key: String?,
201
197
  prompt_cache_options: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions,
202
198
  prompt_cache_retention: OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::prompt_cache_retention?,
203
199
  reasoning: OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::Reasoning?,
204
- safety_identifier: String,
200
+ safety_identifier: String?,
205
201
  service_tier: OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::service_tier?,
206
202
  store: bool?,
207
203
  stream: bool?,
@@ -18,11 +18,11 @@ module OpenAI
18
18
  parallel_tool_calls: bool?,
19
19
  previous_response_id: String?,
20
20
  prompt: OpenAI::Beta::BetaResponsePrompt?,
21
- prompt_cache_key: String,
21
+ prompt_cache_key: String?,
22
22
  prompt_cache_options: OpenAI::Beta::ResponseCreateParams::PromptCacheOptions,
23
23
  prompt_cache_retention: OpenAI::Models::Beta::ResponseCreateParams::prompt_cache_retention?,
24
24
  reasoning: OpenAI::Beta::ResponseCreateParams::Reasoning?,
25
- safety_identifier: String,
25
+ safety_identifier: String?,
26
26
  service_tier: OpenAI::Models::Beta::ResponseCreateParams::service_tier?,
27
27
  store: bool?,
28
28
  stream_options: OpenAI::Beta::ResponseCreateParams::StreamOptions?,
@@ -80,9 +80,7 @@ module OpenAI
80
80
 
81
81
  attr_accessor prompt: OpenAI::Beta::BetaResponsePrompt?
82
82
 
83
- attr_reader prompt_cache_key: String?
84
-
85
- def prompt_cache_key=: (String) -> String
83
+ attr_accessor prompt_cache_key: String?
86
84
 
87
85
  attr_reader prompt_cache_options: OpenAI::Beta::ResponseCreateParams::PromptCacheOptions?
88
86
 
@@ -94,9 +92,7 @@ module OpenAI
94
92
 
95
93
  attr_accessor reasoning: OpenAI::Beta::ResponseCreateParams::Reasoning?
96
94
 
97
- attr_reader safety_identifier: String?
98
-
99
- def safety_identifier=: (String) -> String
95
+ attr_accessor safety_identifier: String?
100
96
 
101
97
  attr_accessor service_tier: OpenAI::Models::Beta::ResponseCreateParams::service_tier?
102
98
 
@@ -156,11 +152,11 @@ module OpenAI
156
152
  ?parallel_tool_calls: bool?,
157
153
  ?previous_response_id: String?,
158
154
  ?prompt: OpenAI::Beta::BetaResponsePrompt?,
159
- ?prompt_cache_key: String,
155
+ ?prompt_cache_key: String?,
160
156
  ?prompt_cache_options: OpenAI::Beta::ResponseCreateParams::PromptCacheOptions,
161
157
  ?prompt_cache_retention: OpenAI::Models::Beta::ResponseCreateParams::prompt_cache_retention?,
162
158
  ?reasoning: OpenAI::Beta::ResponseCreateParams::Reasoning?,
163
- ?safety_identifier: String,
159
+ ?safety_identifier: String?,
164
160
  ?service_tier: OpenAI::Models::Beta::ResponseCreateParams::service_tier?,
165
161
  ?store: bool?,
166
162
  ?stream_options: OpenAI::Beta::ResponseCreateParams::StreamOptions?,
@@ -192,11 +188,11 @@ module OpenAI
192
188
  parallel_tool_calls: bool?,
193
189
  previous_response_id: String?,
194
190
  prompt: OpenAI::Beta::BetaResponsePrompt?,
195
- prompt_cache_key: String,
191
+ prompt_cache_key: String?,
196
192
  prompt_cache_options: OpenAI::Beta::ResponseCreateParams::PromptCacheOptions,
197
193
  prompt_cache_retention: OpenAI::Models::Beta::ResponseCreateParams::prompt_cache_retention?,
198
194
  reasoning: OpenAI::Beta::ResponseCreateParams::Reasoning?,
199
- safety_identifier: String,
195
+ safety_identifier: String?,
200
196
  service_tier: OpenAI::Models::Beta::ResponseCreateParams::service_tier?,
201
197
  store: bool?,
202
198
  stream_options: OpenAI::Beta::ResponseCreateParams::StreamOptions?,
@@ -20,12 +20,12 @@ module OpenAI
20
20
  parallel_tool_calls: bool,
21
21
  prediction: OpenAI::Chat::ChatCompletionPredictionContent?,
22
22
  presence_penalty: Float?,
23
- prompt_cache_key: String,
23
+ prompt_cache_key: String?,
24
24
  prompt_cache_options: OpenAI::Chat::CompletionCreateParams::PromptCacheOptions,
25
25
  prompt_cache_retention: OpenAI::Models::Chat::CompletionCreateParams::prompt_cache_retention?,
26
26
  reasoning_effort: OpenAI::Models::reasoning_effort?,
27
27
  response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format,
28
- safety_identifier: String,
28
+ safety_identifier: String?,
29
29
  seed: Integer?,
30
30
  service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?,
31
31
  stop: OpenAI::Models::Chat::CompletionCreateParams::stop?,
@@ -90,9 +90,7 @@ module OpenAI
90
90
 
91
91
  attr_accessor presence_penalty: Float?
92
92
 
93
- attr_reader prompt_cache_key: String?
94
-
95
- def prompt_cache_key=: (String) -> String
93
+ attr_accessor prompt_cache_key: String?
96
94
 
97
95
  attr_reader prompt_cache_options: OpenAI::Chat::CompletionCreateParams::PromptCacheOptions?
98
96
 
@@ -110,9 +108,7 @@ module OpenAI
110
108
  OpenAI::Models::Chat::CompletionCreateParams::response_format
111
109
  ) -> OpenAI::Models::Chat::CompletionCreateParams::response_format
112
110
 
113
- attr_reader safety_identifier: String?
114
-
115
- def safety_identifier=: (String) -> String
111
+ attr_accessor safety_identifier: String?
116
112
 
117
113
  attr_accessor seed: Integer?
118
114
 
@@ -172,12 +168,12 @@ module OpenAI
172
168
  ?parallel_tool_calls: bool,
173
169
  ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?,
174
170
  ?presence_penalty: Float?,
175
- ?prompt_cache_key: String,
171
+ ?prompt_cache_key: String?,
176
172
  ?prompt_cache_options: OpenAI::Chat::CompletionCreateParams::PromptCacheOptions,
177
173
  ?prompt_cache_retention: OpenAI::Models::Chat::CompletionCreateParams::prompt_cache_retention?,
178
174
  ?reasoning_effort: OpenAI::Models::reasoning_effort?,
179
175
  ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format,
180
- ?safety_identifier: String,
176
+ ?safety_identifier: String?,
181
177
  ?seed: Integer?,
182
178
  ?service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?,
183
179
  ?stop: OpenAI::Models::Chat::CompletionCreateParams::stop?,
@@ -212,12 +208,12 @@ module OpenAI
212
208
  parallel_tool_calls: bool,
213
209
  prediction: OpenAI::Chat::ChatCompletionPredictionContent?,
214
210
  presence_penalty: Float?,
215
- prompt_cache_key: String,
211
+ prompt_cache_key: String?,
216
212
  prompt_cache_options: OpenAI::Chat::CompletionCreateParams::PromptCacheOptions,
217
213
  prompt_cache_retention: OpenAI::Models::Chat::CompletionCreateParams::prompt_cache_retention?,
218
214
  reasoning_effort: OpenAI::Models::reasoning_effort?,
219
215
  response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format,
220
- safety_identifier: String,
216
+ safety_identifier: String?,
221
217
  seed: Integer?,
222
218
  service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?,
223
219
  stop: OpenAI::Models::Chat::CompletionCreateParams::stop?,
@@ -25,11 +25,11 @@ module OpenAI
25
25
  moderation: OpenAI::Responses::Response::Moderation?,
26
26
  previous_response_id: String?,
27
27
  prompt: OpenAI::Responses::ResponsePrompt?,
28
- prompt_cache_key: String,
28
+ prompt_cache_key: String?,
29
29
  prompt_cache_options: OpenAI::Responses::Response::PromptCacheOptions,
30
30
  prompt_cache_retention: OpenAI::Models::Responses::Response::prompt_cache_retention?,
31
31
  reasoning: OpenAI::Reasoning?,
32
- safety_identifier: String,
32
+ safety_identifier: String?,
33
33
  service_tier: OpenAI::Models::Responses::Response::service_tier?,
34
34
  status: OpenAI::Models::Responses::response_status,
35
35
  text: OpenAI::Responses::ResponseTextConfig,
@@ -84,9 +84,7 @@ module OpenAI
84
84
 
85
85
  attr_accessor prompt: OpenAI::Responses::ResponsePrompt?
86
86
 
87
- attr_reader prompt_cache_key: String?
88
-
89
- def prompt_cache_key=: (String) -> String
87
+ attr_accessor prompt_cache_key: String?
90
88
 
91
89
  attr_reader prompt_cache_options: OpenAI::Responses::Response::PromptCacheOptions?
92
90
 
@@ -98,9 +96,7 @@ module OpenAI
98
96
 
99
97
  attr_accessor reasoning: OpenAI::Reasoning?
100
98
 
101
- attr_reader safety_identifier: String?
102
-
103
- def safety_identifier=: (String) -> String
99
+ attr_accessor safety_identifier: String?
104
100
 
105
101
  attr_accessor service_tier: OpenAI::Models::Responses::Response::service_tier?
106
102
 
@@ -152,11 +148,11 @@ module OpenAI
152
148
  ?moderation: OpenAI::Responses::Response::Moderation?,
153
149
  ?previous_response_id: String?,
154
150
  ?prompt: OpenAI::Responses::ResponsePrompt?,
155
- ?prompt_cache_key: String,
151
+ ?prompt_cache_key: String?,
156
152
  ?prompt_cache_options: OpenAI::Responses::Response::PromptCacheOptions,
157
153
  ?prompt_cache_retention: OpenAI::Models::Responses::Response::prompt_cache_retention?,
158
154
  ?reasoning: OpenAI::Reasoning?,
159
- ?safety_identifier: String,
155
+ ?safety_identifier: String?,
160
156
  ?service_tier: OpenAI::Models::Responses::Response::service_tier?,
161
157
  ?status: OpenAI::Models::Responses::response_status,
162
158
  ?text: OpenAI::Responses::ResponseTextConfig,
@@ -190,11 +186,11 @@ module OpenAI
190
186
  moderation: OpenAI::Responses::Response::Moderation?,
191
187
  previous_response_id: String?,
192
188
  prompt: OpenAI::Responses::ResponsePrompt?,
193
- prompt_cache_key: String,
189
+ prompt_cache_key: String?,
194
190
  prompt_cache_options: OpenAI::Responses::Response::PromptCacheOptions,
195
191
  prompt_cache_retention: OpenAI::Models::Responses::Response::prompt_cache_retention?,
196
192
  reasoning: OpenAI::Reasoning?,
197
- safety_identifier: String,
193
+ safety_identifier: String?,
198
194
  service_tier: OpenAI::Models::Responses::Response::service_tier?,
199
195
  status: OpenAI::Models::Responses::response_status,
200
196
  text: OpenAI::Responses::ResponseTextConfig,
@@ -17,11 +17,11 @@ module OpenAI
17
17
  parallel_tool_calls: bool?,
18
18
  previous_response_id: String?,
19
19
  prompt: OpenAI::Responses::ResponsePrompt?,
20
- prompt_cache_key: String,
20
+ prompt_cache_key: String?,
21
21
  prompt_cache_options: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions,
22
22
  prompt_cache_retention: OpenAI::Models::Responses::ResponseCreateParams::prompt_cache_retention?,
23
23
  reasoning: OpenAI::Reasoning?,
24
- safety_identifier: String,
24
+ safety_identifier: String?,
25
25
  service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?,
26
26
  store: bool?,
27
27
  stream_options: OpenAI::Responses::ResponseCreateParams::StreamOptions?,
@@ -76,9 +76,7 @@ module OpenAI
76
76
 
77
77
  attr_accessor prompt: OpenAI::Responses::ResponsePrompt?
78
78
 
79
- attr_reader prompt_cache_key: String?
80
-
81
- def prompt_cache_key=: (String) -> String
79
+ attr_accessor prompt_cache_key: String?
82
80
 
83
81
  attr_reader prompt_cache_options: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions?
84
82
 
@@ -90,9 +88,7 @@ module OpenAI
90
88
 
91
89
  attr_accessor reasoning: OpenAI::Reasoning?
92
90
 
93
- attr_reader safety_identifier: String?
94
-
95
- def safety_identifier=: (String) -> String
91
+ attr_accessor safety_identifier: String?
96
92
 
97
93
  attr_accessor service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?
98
94
 
@@ -145,11 +141,11 @@ module OpenAI
145
141
  ?parallel_tool_calls: bool?,
146
142
  ?previous_response_id: String?,
147
143
  ?prompt: OpenAI::Responses::ResponsePrompt?,
148
- ?prompt_cache_key: String,
144
+ ?prompt_cache_key: String?,
149
145
  ?prompt_cache_options: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions,
150
146
  ?prompt_cache_retention: OpenAI::Models::Responses::ResponseCreateParams::prompt_cache_retention?,
151
147
  ?reasoning: OpenAI::Reasoning?,
152
- ?safety_identifier: String,
148
+ ?safety_identifier: String?,
153
149
  ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?,
154
150
  ?store: bool?,
155
151
  ?stream_options: OpenAI::Responses::ResponseCreateParams::StreamOptions?,
@@ -179,11 +175,11 @@ module OpenAI
179
175
  parallel_tool_calls: bool?,
180
176
  previous_response_id: String?,
181
177
  prompt: OpenAI::Responses::ResponsePrompt?,
182
- prompt_cache_key: String,
178
+ prompt_cache_key: String?,
183
179
  prompt_cache_options: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions,
184
180
  prompt_cache_retention: OpenAI::Models::Responses::ResponseCreateParams::prompt_cache_retention?,
185
181
  reasoning: OpenAI::Reasoning?,
186
- safety_identifier: String,
182
+ safety_identifier: String?,
187
183
  service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?,
188
184
  store: bool?,
189
185
  stream_options: OpenAI::Responses::ResponseCreateParams::StreamOptions?,
@@ -26,6 +26,7 @@ module OpenAI
26
26
  :server_error
27
27
  | :rate_limit_exceeded
28
28
  | :invalid_prompt
29
+ | :data_residency_mismatch
29
30
  | :bio_policy
30
31
  | :vector_store_timeout
31
32
  | :invalid_image
@@ -49,6 +50,7 @@ module OpenAI
49
50
  SERVER_ERROR: :server_error
50
51
  RATE_LIMIT_EXCEEDED: :rate_limit_exceeded
51
52
  INVALID_PROMPT: :invalid_prompt
53
+ DATA_RESIDENCY_MISMATCH: :data_residency_mismatch
52
54
  BIO_POLICY: :bio_policy
53
55
  VECTOR_STORE_TIMEOUT: :vector_store_timeout
54
56
  INVALID_IMAGE: :invalid_image
@@ -18,11 +18,11 @@ module OpenAI
18
18
  parallel_tool_calls: bool?,
19
19
  previous_response_id: String?,
20
20
  prompt: OpenAI::Responses::ResponsePrompt?,
21
- prompt_cache_key: String,
21
+ prompt_cache_key: String?,
22
22
  prompt_cache_options: OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions,
23
23
  prompt_cache_retention: OpenAI::Models::Responses::ResponsesClientEvent::prompt_cache_retention?,
24
24
  reasoning: OpenAI::Reasoning?,
25
- safety_identifier: String,
25
+ safety_identifier: String?,
26
26
  service_tier: OpenAI::Models::Responses::ResponsesClientEvent::service_tier?,
27
27
  store: bool?,
28
28
  stream: bool?,
@@ -76,9 +76,7 @@ module OpenAI
76
76
 
77
77
  attr_accessor prompt: OpenAI::Responses::ResponsePrompt?
78
78
 
79
- attr_reader prompt_cache_key: String?
80
-
81
- def prompt_cache_key=: (String) -> String
79
+ attr_accessor prompt_cache_key: String?
82
80
 
83
81
  attr_reader prompt_cache_options: OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions?
84
82
 
@@ -90,9 +88,7 @@ module OpenAI
90
88
 
91
89
  attr_accessor reasoning: OpenAI::Reasoning?
92
90
 
93
- attr_reader safety_identifier: String?
94
-
95
- def safety_identifier=: (String) -> String
91
+ attr_accessor safety_identifier: String?
96
92
 
97
93
  attr_accessor service_tier: OpenAI::Models::Responses::ResponsesClientEvent::service_tier?
98
94
 
@@ -147,11 +143,11 @@ module OpenAI
147
143
  ?parallel_tool_calls: bool?,
148
144
  ?previous_response_id: String?,
149
145
  ?prompt: OpenAI::Responses::ResponsePrompt?,
150
- ?prompt_cache_key: String,
146
+ ?prompt_cache_key: String?,
151
147
  ?prompt_cache_options: OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions,
152
148
  ?prompt_cache_retention: OpenAI::Models::Responses::ResponsesClientEvent::prompt_cache_retention?,
153
149
  ?reasoning: OpenAI::Reasoning?,
154
- ?safety_identifier: String,
150
+ ?safety_identifier: String?,
155
151
  ?service_tier: OpenAI::Models::Responses::ResponsesClientEvent::service_tier?,
156
152
  ?store: bool?,
157
153
  ?stream: bool?,
@@ -183,11 +179,11 @@ module OpenAI
183
179
  parallel_tool_calls: bool?,
184
180
  previous_response_id: String?,
185
181
  prompt: OpenAI::Responses::ResponsePrompt?,
186
- prompt_cache_key: String,
182
+ prompt_cache_key: String?,
187
183
  prompt_cache_options: OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions,
188
184
  prompt_cache_retention: OpenAI::Models::Responses::ResponsesClientEvent::prompt_cache_retention?,
189
185
  reasoning: OpenAI::Reasoning?,
190
- safety_identifier: String,
186
+ safety_identifier: String?,
191
187
  service_tier: OpenAI::Models::Responses::ResponsesClientEvent::service_tier?,
192
188
  store: bool?,
193
189
  stream: bool?,
@@ -0,0 +1,5 @@
1
+ module OpenAI
2
+ class Provider
3
+ def inspect: -> String
4
+ end
5
+ end
@@ -0,0 +1,15 @@
1
+ module OpenAI
2
+ module Providers
3
+ def self.bedrock: (
4
+ ?region: String?,
5
+ ?base_url: String?,
6
+ ?api_key: String?,
7
+ ?token_provider: (^-> String)?,
8
+ ?access_key_id: String?,
9
+ ?secret_access_key: String?,
10
+ ?session_token: String?,
11
+ ?profile: String?,
12
+ ?credentials_provider: untyped
13
+ ) -> OpenAI::Provider
14
+ end
15
+ end
@@ -0,0 +1,23 @@
1
+ module OpenAI
2
+ module Resources
3
+ class Admin
4
+ class Organization
5
+ class Projects
6
+ class ServiceAccounts
7
+ class APIKeys
8
+ def create: (
9
+ String service_account_id,
10
+ project_id: String,
11
+ ?name: String,
12
+ ?scopes: ::Array[String],
13
+ ?request_options: OpenAI::request_opts
14
+ ) -> OpenAI::Models::Admin::Organization::Projects::ServiceAccounts::APIKeyCreateResponse
15
+
16
+ def initialize: (client: OpenAI::Client) -> void
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -4,9 +4,12 @@ module OpenAI
4
4
  class Organization
5
5
  class Projects
6
6
  class ServiceAccounts
7
+ attr_reader api_keys: OpenAI::Resources::Admin::Organization::Projects::ServiceAccounts::APIKeys
8
+
7
9
  def create: (
8
10
  String project_id,
9
11
  name: String,
12
+ ?create_service_account_only: bool?,
10
13
  ?request_options: OpenAI::request_opts
11
14
  ) -> OpenAI::Models::Admin::Organization::Projects::ServiceAccountCreateResponse
12
15
 
@@ -0,0 +1,31 @@
1
+ module OpenAI
2
+ module Resources
3
+ class Admin
4
+ class Organization
5
+ class Projects
6
+ class SpendLimit
7
+ def retrieve: (
8
+ String project_id,
9
+ ?request_options: OpenAI::request_opts
10
+ ) -> OpenAI::Admin::Organization::Projects::ProjectSpendLimit
11
+
12
+ def update: (
13
+ String project_id,
14
+ currency: OpenAI::Models::Admin::Organization::Projects::SpendLimitUpdateParams::currency,
15
+ interval: OpenAI::Models::Admin::Organization::Projects::SpendLimitUpdateParams::interval,
16
+ threshold_amount: Integer,
17
+ ?request_options: OpenAI::request_opts
18
+ ) -> OpenAI::Admin::Organization::Projects::ProjectSpendLimit
19
+
20
+ def delete: (
21
+ String project_id,
22
+ ?request_options: OpenAI::request_opts
23
+ ) -> OpenAI::Admin::Organization::Projects::ProjectSpendLimitDeleted
24
+
25
+ def initialize: (client: OpenAI::Client) -> void
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -21,6 +21,8 @@ module OpenAI
21
21
 
22
22
  attr_reader data_retention: OpenAI::Resources::Admin::Organization::Projects::DataRetention
23
23
 
24
+ attr_reader spend_limit: OpenAI::Resources::Admin::Organization::Projects::SpendLimit
25
+
24
26
  attr_reader spend_alerts: OpenAI::Resources::Admin::Organization::Projects::SpendAlerts
25
27
 
26
28
  attr_reader certificates: OpenAI::Resources::Admin::Organization::Projects::Certificates
@@ -0,0 +1,26 @@
1
+ module OpenAI
2
+ module Resources
3
+ class Admin
4
+ class Organization
5
+ class SpendLimit
6
+ def retrieve: (
7
+ ?request_options: OpenAI::request_opts
8
+ ) -> OpenAI::Admin::Organization::OrganizationSpendLimit
9
+
10
+ def update: (
11
+ currency: OpenAI::Models::Admin::Organization::SpendLimitUpdateParams::currency,
12
+ interval: OpenAI::Models::Admin::Organization::SpendLimitUpdateParams::interval,
13
+ threshold_amount: Integer,
14
+ ?request_options: OpenAI::request_opts
15
+ ) -> OpenAI::Admin::Organization::OrganizationSpendLimit
16
+
17
+ def delete: (
18
+ ?request_options: OpenAI::request_opts
19
+ ) -> OpenAI::Admin::Organization::OrganizationSpendLimitDeleted
20
+
21
+ def initialize: (client: OpenAI::Client) -> void
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -18,6 +18,8 @@ module OpenAI
18
18
 
19
19
  attr_reader data_retention: OpenAI::Resources::Admin::Organization::DataRetention
20
20
 
21
+ attr_reader spend_limit: OpenAI::Resources::Admin::Organization::SpendLimit
22
+
21
23
  attr_reader spend_alerts: OpenAI::Resources::Admin::Organization::SpendAlerts
22
24
 
23
25
  attr_reader certificates: OpenAI::Resources::Admin::Organization::Certificates
@@ -22,11 +22,11 @@ module OpenAI
22
22
  ?parallel_tool_calls: bool?,
23
23
  ?previous_response_id: String?,
24
24
  ?prompt: OpenAI::Beta::BetaResponsePrompt?,
25
- ?prompt_cache_key: String,
25
+ ?prompt_cache_key: String?,
26
26
  ?prompt_cache_options: OpenAI::Beta::ResponseCreateParams::PromptCacheOptions,
27
27
  ?prompt_cache_retention: OpenAI::Models::Beta::ResponseCreateParams::prompt_cache_retention?,
28
28
  ?reasoning: OpenAI::Beta::ResponseCreateParams::Reasoning?,
29
- ?safety_identifier: String,
29
+ ?safety_identifier: String?,
30
30
  ?service_tier: OpenAI::Models::Beta::ResponseCreateParams::service_tier?,
31
31
  ?store: bool?,
32
32
  ?stream_options: OpenAI::Beta::ResponseCreateParams::StreamOptions?,
@@ -58,11 +58,11 @@ module OpenAI
58
58
  ?parallel_tool_calls: bool?,
59
59
  ?previous_response_id: String?,
60
60
  ?prompt: OpenAI::Beta::BetaResponsePrompt?,
61
- ?prompt_cache_key: String,
61
+ ?prompt_cache_key: String?,
62
62
  ?prompt_cache_options: OpenAI::Beta::ResponseCreateParams::PromptCacheOptions,
63
63
  ?prompt_cache_retention: OpenAI::Models::Beta::ResponseCreateParams::prompt_cache_retention?,
64
64
  ?reasoning: OpenAI::Beta::ResponseCreateParams::Reasoning?,
65
- ?safety_identifier: String,
65
+ ?safety_identifier: String?,
66
66
  ?service_tier: OpenAI::Models::Beta::ResponseCreateParams::service_tier?,
67
67
  ?store: bool?,
68
68
  ?stream_options: OpenAI::Beta::ResponseCreateParams::StreamOptions?,
@@ -22,12 +22,12 @@ module OpenAI
22
22
  ?parallel_tool_calls: bool,
23
23
  ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?,
24
24
  ?presence_penalty: Float?,
25
- ?prompt_cache_key: String,
25
+ ?prompt_cache_key: String?,
26
26
  ?prompt_cache_options: OpenAI::Chat::CompletionCreateParams::PromptCacheOptions,
27
27
  ?prompt_cache_retention: OpenAI::Models::Chat::CompletionCreateParams::prompt_cache_retention?,
28
28
  ?reasoning_effort: OpenAI::Models::reasoning_effort?,
29
29
  ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format,
30
- ?safety_identifier: String,
30
+ ?safety_identifier: String?,
31
31
  ?seed: Integer?,
32
32
  ?service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?,
33
33
  ?stop: OpenAI::Models::Chat::CompletionCreateParams::stop?,
@@ -62,12 +62,12 @@ module OpenAI
62
62
  ?parallel_tool_calls: bool,
63
63
  ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?,
64
64
  ?presence_penalty: Float?,
65
- ?prompt_cache_key: String,
65
+ ?prompt_cache_key: String?,
66
66
  ?prompt_cache_options: OpenAI::Chat::CompletionCreateParams::PromptCacheOptions,
67
67
  ?prompt_cache_retention: OpenAI::Models::Chat::CompletionCreateParams::prompt_cache_retention?,
68
68
  ?reasoning_effort: OpenAI::Models::reasoning_effort?,
69
69
  ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format,
70
- ?safety_identifier: String,
70
+ ?safety_identifier: String?,
71
71
  ?seed: Integer?,
72
72
  ?service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?,
73
73
  ?stop: OpenAI::Models::Chat::CompletionCreateParams::stop?,
@@ -20,11 +20,11 @@ module OpenAI
20
20
  ?parallel_tool_calls: bool?,
21
21
  ?previous_response_id: String?,
22
22
  ?prompt: OpenAI::Responses::ResponsePrompt?,
23
- ?prompt_cache_key: String,
23
+ ?prompt_cache_key: String?,
24
24
  ?prompt_cache_options: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions,
25
25
  ?prompt_cache_retention: OpenAI::Models::Responses::ResponseCreateParams::prompt_cache_retention?,
26
26
  ?reasoning: OpenAI::Reasoning?,
27
- ?safety_identifier: String,
27
+ ?safety_identifier: String?,
28
28
  ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?,
29
29
  ?store: bool?,
30
30
  ?stream_options: OpenAI::Responses::ResponseCreateParams::StreamOptions?,
@@ -54,11 +54,11 @@ module OpenAI
54
54
  ?parallel_tool_calls: bool?,
55
55
  ?previous_response_id: String?,
56
56
  ?prompt: OpenAI::Responses::ResponsePrompt?,
57
- ?prompt_cache_key: String,
57
+ ?prompt_cache_key: String?,
58
58
  ?prompt_cache_options: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions,
59
59
  ?prompt_cache_retention: OpenAI::Models::Responses::ResponseCreateParams::prompt_cache_retention?,
60
60
  ?reasoning: OpenAI::Reasoning?,
61
- ?safety_identifier: String,
61
+ ?safety_identifier: String?,
62
62
  ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?,
63
63
  ?store: bool?,
64
64
  ?stream_options: OpenAI::Responses::ResponseCreateParams::StreamOptions?,