openai 0.99.0 → 0.101.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 (195) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +1 -1
  4. data/bedrock.md +17 -1
  5. data/lib/openai/client.rb +13 -0
  6. data/lib/openai/helpers/agents/session_stream.rb +11 -36
  7. data/lib/openai/helpers/agents/tools.rb +34 -4
  8. data/lib/openai/helpers/beta/agents/creation_stream.rb +26 -0
  9. data/lib/openai/helpers/beta/agents/function_tool.rb +11 -4
  10. data/lib/openai/helpers/beta/agents/tool_dispatcher.rb +74 -0
  11. data/lib/openai/helpers/beta/agents/tool_error.rb +28 -0
  12. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +125 -3
  13. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +125 -3
  14. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +125 -3
  15. data/lib/openai/models/admin/organization/usage_completions_params.rb +9 -4
  16. data/lib/openai/models/admin/organization/usage_completions_response.rb +125 -3
  17. data/lib/openai/models/admin/organization/usage_costs_params.rb +16 -4
  18. data/lib/openai/models/admin/organization/usage_costs_response.rb +125 -3
  19. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +125 -3
  20. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +125 -3
  21. data/lib/openai/models/admin/organization/usage_images_response.rb +125 -3
  22. data/lib/openai/models/admin/organization/usage_moderations_response.rb +125 -3
  23. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +125 -3
  24. data/lib/openai/models/admin/organization/usage_web_search_calls_params.rb +9 -4
  25. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +125 -3
  26. data/lib/openai/models/beta/agents/environments/template_create_params.rb +6 -6
  27. data/lib/openai/models/beta/agents/environments/template_update_params.rb +3 -6
  28. data/lib/openai/models/beta/agents/sessions/turns/item_list_params.rb +79 -0
  29. data/lib/openai/models/beta/beta_response_computer_tool_call_output_item.rb +2 -2
  30. data/lib/openai/models/beta/beta_response_error.rb +12 -1
  31. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +1166 -3
  32. data/lib/openai/models/beta/beta_responses_server_event.rb +12 -1
  33. data/lib/openai/models/beta/beta_tool.rb +12 -9
  34. data/lib/openai/models/beta/beta_tool_search_output_namespace_tool.rb +176 -0
  35. data/lib/openai/models/beta/environment_param.rb +6 -6
  36. data/lib/openai/models/beta/session_turn_error.rb +9 -0
  37. data/lib/openai/models/chat/chat_completion_chunk.rb +85 -18
  38. data/lib/openai/models/decision.rb +313 -0
  39. data/lib/openai/models/decision_create_params.rb +233 -0
  40. data/lib/openai/models/decision_input_image.rb +53 -0
  41. data/lib/openai/models/decision_input_message.rb +60 -0
  42. data/lib/openai/models/decision_input_part.rb +20 -0
  43. data/lib/openai/models/decision_input_text.rb +21 -0
  44. data/lib/openai/models/error_object.rb +12 -1
  45. data/lib/openai/models/eval_create_params.rb +1 -1
  46. data/lib/openai/models/eval_create_response.rb +1 -1
  47. data/lib/openai/models/eval_list_response.rb +1 -1
  48. data/lib/openai/models/eval_retrieve_response.rb +1 -1
  49. data/lib/openai/models/eval_update_response.rb +1 -1
  50. data/lib/openai/models/fine_tuning/job_list_params.rb +14 -4
  51. data/lib/openai/models/graders/score_model_grader.rb +2 -2
  52. data/lib/openai/models/image_edit_params.rb +12 -9
  53. data/lib/openai/models/realtime/realtime_client_event.rb +9 -0
  54. data/lib/openai/models/realtime/session_update_event.rb +16 -0
  55. data/lib/openai/models/responses/response_computer_tool_call_output_item.rb +2 -2
  56. data/lib/openai/models/responses/response_error.rb +12 -1
  57. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +1166 -3
  58. data/lib/openai/models/responses/responses_server_event.rb +12 -1
  59. data/lib/openai/models/responses/tool.rb +12 -9
  60. data/lib/openai/models/responses/tool_search_output_namespace_tool.rb +174 -0
  61. data/lib/openai/models/video_create_error.rb +12 -1
  62. data/lib/openai/models.rb +12 -0
  63. data/lib/openai/providers/bedrock.rb +20 -1
  64. data/lib/openai/resources/admin/organization/usage.rb +15 -6
  65. data/lib/openai/resources/beta/agents/environments/templates.rb +3 -4
  66. data/lib/openai/resources/beta/agents/sessions/turns/items.rb +68 -0
  67. data/lib/openai/resources/beta/agents/sessions/turns.rb +4 -0
  68. data/lib/openai/resources/beta/agents/sessions.rb +22 -2
  69. data/lib/openai/resources/decisions.rb +59 -0
  70. data/lib/openai/resources/fine_tuning/jobs.rb +7 -2
  71. data/lib/openai/resources/images.rb +8 -6
  72. data/lib/openai/version.rb +1 -1
  73. data/lib/openai.rb +11 -0
  74. data/rbi/openai/client.rbi +3 -0
  75. data/rbi/openai/helpers/agents.rbi +2 -0
  76. data/rbi/openai/helpers/beta/agents/function_tool.rbi +8 -3
  77. data/rbi/openai/helpers/beta/agents/tool_error.rbi +19 -0
  78. data/rbi/openai/helpers/beta/agents.rbi +12 -0
  79. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +194 -1
  80. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +194 -1
  81. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +194 -1
  82. data/rbi/openai/models/admin/organization/usage_completions_params.rbi +9 -4
  83. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +194 -1
  84. data/rbi/openai/models/admin/organization/usage_costs_params.rbi +16 -4
  85. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +194 -1
  86. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +194 -1
  87. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +194 -1
  88. data/rbi/openai/models/admin/organization/usage_images_response.rbi +194 -1
  89. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +194 -1
  90. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +194 -1
  91. data/rbi/openai/models/admin/organization/usage_web_search_calls_params.rbi +12 -4
  92. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +194 -1
  93. data/rbi/openai/models/beta/agents/environments/template_create_params.rbi +6 -6
  94. data/rbi/openai/models/beta/agents/environments/template_update_params.rbi +3 -6
  95. data/rbi/openai/models/beta/agents/sessions/turns/item_list_params.rbi +139 -0
  96. data/rbi/openai/models/beta/beta_response_computer_tool_call_output_item.rbi +2 -2
  97. data/rbi/openai/models/beta/beta_response_error.rbi +12 -0
  98. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +1893 -18
  99. data/rbi/openai/models/beta/beta_responses_server_event.rbi +12 -0
  100. data/rbi/openai/models/beta/beta_tool.rbi +12 -9
  101. data/rbi/openai/models/beta/beta_tool_search_output_namespace_tool.rbi +272 -0
  102. data/rbi/openai/models/beta/environment_param.rbi +6 -6
  103. data/rbi/openai/models/beta/session_turn_error.rbi +18 -0
  104. data/rbi/openai/models/chat/chat_completion_chunk.rbi +123 -17
  105. data/rbi/openai/models/decision.rbi +586 -0
  106. data/rbi/openai/models/decision_create_params.rbi +435 -0
  107. data/rbi/openai/models/decision_input_image.rbi +81 -0
  108. data/rbi/openai/models/decision_input_message.rbi +96 -0
  109. data/rbi/openai/models/decision_input_part.rbi +24 -0
  110. data/rbi/openai/models/decision_input_text.rbi +49 -0
  111. data/rbi/openai/models/error_object.rbi +12 -0
  112. data/rbi/openai/models/eval_create_params.rbi +1 -1
  113. data/rbi/openai/models/eval_create_response.rbi +1 -1
  114. data/rbi/openai/models/eval_list_response.rbi +1 -1
  115. data/rbi/openai/models/eval_retrieve_response.rbi +1 -1
  116. data/rbi/openai/models/eval_update_response.rbi +1 -1
  117. data/rbi/openai/models/fine_tuning/job_list_params.rbi +14 -4
  118. data/rbi/openai/models/graders/score_model_grader.rbi +2 -2
  119. data/rbi/openai/models/image_edit_params.rbi +12 -9
  120. data/rbi/openai/models/realtime/session_update_event.rbi +16 -0
  121. data/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi +2 -2
  122. data/rbi/openai/models/responses/response_error.rbi +12 -0
  123. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +1901 -18
  124. data/rbi/openai/models/responses/responses_server_event.rbi +12 -0
  125. data/rbi/openai/models/responses/tool.rbi +12 -9
  126. data/rbi/openai/models/responses/tool_search_output_namespace_tool.rbi +272 -0
  127. data/rbi/openai/models/video_create_error.rbi +12 -0
  128. data/rbi/openai/models.rbi +12 -0
  129. data/rbi/openai/resources/admin/organization/usage.rbi +15 -6
  130. data/rbi/openai/resources/beta/agents/environments/templates.rbi +3 -4
  131. data/rbi/openai/resources/beta/agents/sessions/turns/items.rbi +62 -0
  132. data/rbi/openai/resources/beta/agents/sessions/turns.rbi +3 -0
  133. data/rbi/openai/resources/beta/agents/sessions.rbi +2 -0
  134. data/rbi/openai/resources/decisions.rbi +57 -0
  135. data/rbi/openai/resources/fine_tuning/jobs.rbi +7 -2
  136. data/rbi/openai/resources/images.rbi +8 -6
  137. data/sig/openai/client.rbs +2 -0
  138. data/sig/openai/helpers/agents.rbs +3 -0
  139. data/sig/openai/helpers/beta/agents/function_tool.rbs +5 -2
  140. data/sig/openai/helpers/beta/agents/tool_error.rbs +17 -0
  141. data/sig/openai/helpers/beta/agents.rbs +5 -0
  142. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +87 -2
  143. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +87 -2
  144. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +87 -2
  145. data/sig/openai/models/admin/organization/usage_completions_params.rbs +14 -6
  146. data/sig/openai/models/admin/organization/usage_completions_response.rbs +87 -2
  147. data/sig/openai/models/admin/organization/usage_costs_params.rbs +25 -7
  148. data/sig/openai/models/admin/organization/usage_costs_response.rbs +87 -2
  149. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +87 -2
  150. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +87 -2
  151. data/sig/openai/models/admin/organization/usage_images_response.rbs +87 -2
  152. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +87 -2
  153. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +87 -2
  154. data/sig/openai/models/admin/organization/usage_web_search_calls_params.rbs +19 -7
  155. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +87 -2
  156. data/sig/openai/models/beta/agents/environments/template_create_params.rbs +4 -4
  157. data/sig/openai/models/beta/agents/environments/template_update_params.rbs +2 -4
  158. data/sig/openai/models/beta/agents/sessions/turns/item_list_params.rbs +91 -0
  159. data/sig/openai/models/beta/beta_response_computer_tool_call_output_item.rbs +2 -2
  160. data/sig/openai/models/beta/beta_response_error.rbs +10 -0
  161. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +993 -4
  162. data/sig/openai/models/beta/beta_responses_server_event.rbs +10 -0
  163. data/sig/openai/models/beta/beta_tool.rbs +8 -6
  164. data/sig/openai/models/beta/beta_tool_search_output_namespace_tool.rbs +162 -0
  165. data/sig/openai/models/beta/environment_param.rbs +4 -4
  166. data/sig/openai/models/beta/session_turn_error.rbs +12 -0
  167. data/sig/openai/models/chat/chat_completion_chunk.rbs +96 -12
  168. data/sig/openai/models/decision.rbs +296 -0
  169. data/sig/openai/models/decision_create_params.rbs +227 -0
  170. data/sig/openai/models/decision_input_image.rbs +51 -0
  171. data/sig/openai/models/decision_input_message.rbs +57 -0
  172. data/sig/openai/models/decision_input_part.rbs +12 -0
  173. data/sig/openai/models/decision_input_text.rbs +15 -0
  174. data/sig/openai/models/error_object.rbs +10 -0
  175. data/sig/openai/models/eval_create_params.rbs +1 -1
  176. data/sig/openai/models/eval_create_response.rbs +1 -1
  177. data/sig/openai/models/eval_list_response.rbs +1 -1
  178. data/sig/openai/models/eval_retrieve_response.rbs +1 -1
  179. data/sig/openai/models/eval_update_response.rbs +1 -1
  180. data/sig/openai/models/fine_tuning/job_list_params.rbs +14 -4
  181. data/sig/openai/models/graders/score_model_grader.rbs +3 -3
  182. data/sig/openai/models/image_edit_params.rbs +8 -6
  183. data/sig/openai/models/responses/response_computer_tool_call_output_item.rbs +2 -2
  184. data/sig/openai/models/responses/response_error.rbs +10 -0
  185. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +993 -4
  186. data/sig/openai/models/responses/responses_server_event.rbs +10 -0
  187. data/sig/openai/models/responses/tool.rbs +8 -6
  188. data/sig/openai/models/responses/tool_search_output_namespace_tool.rbs +160 -0
  189. data/sig/openai/models/video_create_error.rbs +10 -0
  190. data/sig/openai/models.rbs +12 -0
  191. data/sig/openai/resources/beta/agents/sessions/turns/items.rbs +24 -0
  192. data/sig/openai/resources/beta/agents/sessions/turns.rbs +2 -0
  193. data/sig/openai/resources/beta/agents/sessions.rbs +1 -0
  194. data/sig/openai/resources/decisions.rbs +15 -0
  195. metadata +38 -1
@@ -87,6 +87,7 @@ module OpenAI
87
87
  ?object: :"organization.usage.completions.result",
88
88
  output_tokens: Integer,
89
89
  ?api_key_id: String?,
90
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageCompletionsResult::api_source?,
90
91
  ?batch: bool?,
91
92
  ?input_audio_tokens: Integer,
92
93
  ?:input_cache_write_12h_tokens => Integer,
@@ -127,6 +128,12 @@ module OpenAI
127
128
  # usage result.
128
129
  attr_accessor api_key_id: String?
129
130
 
131
+ # When grouped by `api_source`, `agents_api` identifies attributed Agents API
132
+ # activity and `unlabeled` includes all records without published source
133
+ # attribution, including historical and unknown origins. Unlabeled does not imply
134
+ # direct API usage. Without source grouping, this field is null.
135
+ attr_accessor api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageCompletionsResult::api_source?
136
+
130
137
  # When `group_by=batch`, this field tells whether the grouped usage result is
131
138
  # batch or not.
132
139
  attr_accessor batch: bool?
@@ -248,6 +255,11 @@ module OpenAI
248
255
  # @param api_key_id
249
256
  # When `group_by=api_key_id`, this field provides the API key ID of the grouped
250
257
  # usage result.
258
+ # @param api_source
259
+ # When grouped by `api_source`, `agents_api` identifies attributed Agents API
260
+ # activity and `unlabeled` includes all records without published source
261
+ # attribution, including historical and unknown origins. Unlabeled does not imply
262
+ # direct API usage. Without source grouping, this field is null.
251
263
  # @param batch
252
264
  # When `group_by=batch`, this field tells whether the grouped usage result is
253
265
  # batch or not.
@@ -299,6 +311,7 @@ module OpenAI
299
311
  num_model_requests: Integer,
300
312
  output_tokens: Integer,
301
313
  ?api_key_id: String?,
314
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageCompletionsResult::api_source?,
302
315
  ?batch: bool?,
303
316
  ?input_audio_tokens: Integer,
304
317
  ?input_cache_write_12h_tokens: Integer,
@@ -326,6 +339,7 @@ module OpenAI
326
339
  ?object: :"organization.usage.completions.result",
327
340
  output_tokens: Integer,
328
341
  ?api_key_id: String?,
342
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageCompletionsResult::api_source?,
329
343
  ?batch: bool?,
330
344
  ?input_audio_tokens: Integer,
331
345
  ?:input_cache_write_12h_tokens => Integer,
@@ -345,6 +359,17 @@ module OpenAI
345
359
  ?service_tier: String?,
346
360
  ?user_id: String?
347
361
  }
362
+
363
+ type api_source = :agents_api | :unlabeled
364
+
365
+ module APISource
366
+ extend OpenAI::Internal::Type::Enum
367
+
368
+ AGENTS_API: :agents_api
369
+ UNLABELED: :unlabeled
370
+
371
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageCompletionsResult::api_source]
372
+ end
348
373
  end
349
374
 
350
375
  type organization_usage_embeddings_result =
@@ -873,6 +898,7 @@ module OpenAI
873
898
  num_requests: Integer,
874
899
  ?object: :"organization.usage.web_searches.result",
875
900
  ?api_key_id: String?,
901
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageWebSearchesResult::api_source?,
876
902
  ?context_level: String?,
877
903
  ?model: String?,
878
904
  ?project_id: String?,
@@ -892,6 +918,12 @@ module OpenAI
892
918
  # usage result.
893
919
  attr_accessor api_key_id: String?
894
920
 
921
+ # When grouped by `api_source`, `agents_api` identifies attributed Agents API
922
+ # activity and `unlabeled` includes all records without published source
923
+ # attribution, including historical and unknown origins. Unlabeled does not imply
924
+ # direct API usage. Without source grouping, this field is null.
925
+ attr_accessor api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageWebSearchesResult::api_source?
926
+
895
927
  # When `group_by=context_level`, this field provides the search context size of
896
928
  # the grouped usage result.
897
929
  attr_accessor context_level: String?
@@ -915,6 +947,11 @@ module OpenAI
915
947
  # @param api_key_id
916
948
  # When `group_by=api_key_id`, this field provides the API key ID of the grouped
917
949
  # usage result.
950
+ # @param api_source
951
+ # When grouped by `api_source`, `agents_api` identifies attributed Agents API
952
+ # activity and `unlabeled` includes all records without published source
953
+ # attribution, including historical and unknown origins. Unlabeled does not imply
954
+ # direct API usage. Without source grouping, this field is null.
918
955
  # @param context_level
919
956
  # When `group_by=context_level`, this field provides the search context size of
920
957
  # the grouped usage result.
@@ -931,6 +968,7 @@ module OpenAI
931
968
  num_model_requests: Integer,
932
969
  num_requests: Integer,
933
970
  ?api_key_id: String?,
971
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageWebSearchesResult::api_source?,
934
972
  ?context_level: String?,
935
973
  ?model: String?,
936
974
  ?project_id: String?,
@@ -943,11 +981,23 @@ module OpenAI
943
981
  num_requests: Integer,
944
982
  ?object: :"organization.usage.web_searches.result",
945
983
  ?api_key_id: String?,
984
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageWebSearchesResult::api_source?,
946
985
  ?context_level: String?,
947
986
  ?model: String?,
948
987
  ?project_id: String?,
949
988
  ?user_id: String?
950
989
  }
990
+
991
+ type api_source = :agents_api | :unlabeled
992
+
993
+ module APISource
994
+ extend OpenAI::Internal::Type::Enum
995
+
996
+ AGENTS_API: :agents_api
997
+ UNLABELED: :unlabeled
998
+
999
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationUsageWebSearchesResult::api_source]
1000
+ end
951
1001
  end
952
1002
 
953
1003
  type organization_costs_result =
@@ -955,10 +1005,12 @@ module OpenAI
955
1005
  ?object: :"organization.costs.result",
956
1006
  ?amount: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::Amount,
957
1007
  ?api_key_id: String?,
1008
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::api_source?,
958
1009
  ?line_item: String?,
959
1010
  ?project_id: String?,
960
1011
  ?quantity: Float?,
961
- ?quantity_unit: OpenAI::Models::Admin::Organization::cost_quantity_unit?
1012
+ ?quantity_unit: OpenAI::Models::Admin::Organization::cost_quantity_unit?,
1013
+ ?user_id: String?
962
1014
  }
963
1015
 
964
1016
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -976,6 +1028,12 @@ module OpenAI
976
1028
  # costs result.
977
1029
  attr_accessor api_key_id: String?
978
1030
 
1031
+ # When grouped by `api_source`, `agents_api` identifies attributed Agents API
1032
+ # activity and `unlabeled` includes all records without published source
1033
+ # attribution, including historical and unknown origins. Unlabeled does not imply
1034
+ # direct API usage. Without source grouping, this field is null.
1035
+ attr_accessor api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::api_source?
1036
+
979
1037
  # When `group_by=line_item`, this field provides the line item of the grouped
980
1038
  # costs result.
981
1039
  attr_accessor line_item: String?
@@ -992,11 +1050,20 @@ module OpenAI
992
1050
  # result, this field is `null`.
993
1051
  attr_accessor quantity_unit: OpenAI::Models::Admin::Organization::cost_quantity_unit?
994
1052
 
1053
+ # When `group_by=user_id`, this field provides the user ID of the grouped costs
1054
+ # result.
1055
+ attr_accessor user_id: String?
1056
+
995
1057
  # @param amount
996
1058
  # The monetary value in its associated currency.
997
1059
  # @param api_key_id
998
1060
  # When `group_by=api_key_id`, this field provides the API Key ID of the grouped
999
1061
  # costs result.
1062
+ # @param api_source
1063
+ # When grouped by `api_source`, `agents_api` identifies attributed Agents API
1064
+ # activity and `unlabeled` includes all records without published source
1065
+ # attribution, including historical and unknown origins. Unlabeled does not imply
1066
+ # direct API usage. Without source grouping, this field is null.
1000
1067
  # @param line_item
1001
1068
  # When `group_by=line_item`, this field provides the line item of the grouped
1002
1069
  # costs result.
@@ -1009,13 +1076,18 @@ module OpenAI
1009
1076
  # @param quantity_unit
1010
1077
  # The unit of the `quantity` value. If no single supported unit applies to the
1011
1078
  # result, this field is `null`.
1079
+ # @param user_id
1080
+ # When `group_by=user_id`, this field provides the user ID of the grouped costs
1081
+ # result.
1012
1082
  def initialize: (
1013
1083
  ?amount: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::Amount,
1014
1084
  ?api_key_id: String?,
1085
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::api_source?,
1015
1086
  ?line_item: String?,
1016
1087
  ?project_id: String?,
1017
1088
  ?quantity: Float?,
1018
1089
  ?quantity_unit: OpenAI::Models::Admin::Organization::cost_quantity_unit?,
1090
+ ?user_id: String?,
1019
1091
  ?object: :"organization.costs.result"
1020
1092
  ) -> void
1021
1093
 
@@ -1023,10 +1095,12 @@ module OpenAI
1023
1095
  ?object: :"organization.costs.result",
1024
1096
  ?amount: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::Amount,
1025
1097
  ?api_key_id: String?,
1098
+ ?api_source: OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::api_source?,
1026
1099
  ?line_item: String?,
1027
1100
  ?project_id: String?,
1028
1101
  ?quantity: Float?,
1029
- ?quantity_unit: OpenAI::Models::Admin::Organization::cost_quantity_unit?
1102
+ ?quantity_unit: OpenAI::Models::Admin::Organization::cost_quantity_unit?,
1103
+ ?user_id: String?
1030
1104
  }
1031
1105
 
1032
1106
  type amount = { ?currency: String, ?value: Float }
@@ -1052,6 +1126,17 @@ module OpenAI
1052
1126
 
1053
1127
  def to_hash: -> { ?currency: String, ?value: Float }
1054
1128
  end
1129
+
1130
+ type api_source = :agents_api | :unlabeled
1131
+
1132
+ module APISource
1133
+ extend OpenAI::Internal::Type::Enum
1134
+
1135
+ AGENTS_API: :agents_api
1136
+ UNLABELED: :unlabeled
1137
+
1138
+ def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::Result::OrganizationCostsResult::api_source]
1139
+ end
1055
1140
  end
1056
1141
 
1057
1142
  def self?.variants: -> ::Array[OpenAI::Models::Admin::Organization::UsageWebSearchCallsResponse::Data::result]
@@ -39,8 +39,8 @@ module OpenAI
39
39
  # An optional human-readable display name for the template.
40
40
  attr_accessor name: String?
41
41
 
42
- # Network access policy for the environment. Defaults to disabled for GA requests
43
- # and enabled for beta requests.
42
+ # Network access policy for the environment. If omitted, the API version
43
+ # determines whether network access is enabled or disabled.
44
44
  attr_accessor network: OpenAI::Beta::Agents::Environments::TemplateCreateParams::Network?
45
45
 
46
46
  # Packages to install in the environment. Defaults to empty package lists.
@@ -69,8 +69,8 @@ module OpenAI
69
69
  # @param name
70
70
  # An optional human-readable display name for the template.
71
71
  # @param network
72
- # Network access policy for the environment. Defaults to disabled for GA requests
73
- # and enabled for beta requests.
72
+ # Network access policy for the environment. If omitted, the API version
73
+ # determines whether network access is enabled or disabled.
74
74
  # @param packages
75
75
  # Packages to install in the environment. Defaults to empty package lists.
76
76
  # @param plugins
@@ -41,8 +41,7 @@ module OpenAI
41
41
  attr_accessor name: String?
42
42
 
43
43
  # Network access available after setup completes. Omit to preserve the current
44
- # policy, or pass `null` to reset to disabled for GA requests or enabled for beta
45
- # requests.
44
+ # policy, or pass `null` to reset to the default policy.
46
45
  attr_accessor network: OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Network?
47
46
 
48
47
  # Packages installed before the runtime network policy applies.
@@ -69,8 +68,7 @@ module OpenAI
69
68
  # A replacement human-readable display name, or `null` to clear the name.
70
69
  # @param network
71
70
  # Network access available after setup completes. Omit to preserve the current
72
- # policy, or pass `null` to reset to disabled for GA requests or enabled for beta
73
- # requests.
71
+ # policy, or pass `null` to reset to the default policy.
74
72
  # @param packages
75
73
  # Packages installed before the runtime network policy applies.
76
74
  # @param plugins
@@ -0,0 +1,91 @@
1
+ module OpenAI
2
+ module Models
3
+ module Beta
4
+ module Agents
5
+ module Sessions
6
+ module Turns
7
+ type item_list_params =
8
+ {
9
+ session_id: String,
10
+ turn_id: String,
11
+ ?after: String,
12
+ ?limit: Integer,
13
+ ?order: OpenAI::Models::Beta::Agents::Sessions::Turns::ItemListParams::order,
14
+ ?request_options: OpenAI::request_opts
15
+ }
16
+
17
+ class ItemListParams < OpenAI::Internal::Type::BaseModel
18
+ extend OpenAI::Internal::Type::RequestParameters::Converter
19
+ include OpenAI::Internal::Type::RequestParameters
20
+
21
+ attr_accessor session_id: String
22
+
23
+ attr_accessor turn_id: String
24
+
25
+ # Return items after this cursor in the selected order. Pass the previous
26
+ # response's last_id, which can differ from the last item's ID.
27
+ attr_reader after: String?
28
+
29
+ # Return items after this cursor in the selected order. Pass the previous
30
+ # response's last_id, which can differ from the last item's ID.
31
+ def after=: (String) -> String
32
+
33
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
34
+ attr_reader limit: Integer?
35
+
36
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
37
+ def limit=: (Integer) -> Integer
38
+
39
+ # The order in which resources are returned. Defaults to `desc`.
40
+ attr_reader order: OpenAI::Models::Beta::Agents::Sessions::Turns::ItemListParams::order?
41
+
42
+ # The order in which resources are returned. Defaults to `desc`.
43
+ def order=: (
44
+ OpenAI::Models::Beta::Agents::Sessions::Turns::ItemListParams::order
45
+ ) -> OpenAI::Models::Beta::Agents::Sessions::Turns::ItemListParams::order
46
+
47
+ # @param after
48
+ # Return items after this cursor in the selected order. Pass the previous
49
+ # response's last_id, which can differ from the last item's ID.
50
+ # @param limit
51
+ # The maximum number of resources to return, between 1 and 100. Defaults to 20.
52
+ # @param order
53
+ # The order in which resources are returned. Defaults to `desc`.
54
+ def initialize: (
55
+ session_id: String,
56
+ turn_id: String,
57
+ ?after: String,
58
+ ?limit: Integer,
59
+ ?order: OpenAI::Models::Beta::Agents::Sessions::Turns::ItemListParams::order,
60
+ ?request_options: OpenAI::request_opts
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ session_id: String,
65
+ turn_id: String,
66
+ ?after: String,
67
+ ?limit: Integer,
68
+ ?order: OpenAI::Models::Beta::Agents::Sessions::Turns::ItemListParams::order,
69
+ ?request_options: OpenAI::RequestOptions
70
+ }
71
+
72
+ type order = :asc | :desc
73
+
74
+ module Order
75
+ extend OpenAI::Internal::Type::Enum
76
+
77
+ # Returns resources in ascending order.
78
+ ASC: :asc
79
+
80
+ # Returns resources in descending order.
81
+ DESC: :desc
82
+
83
+ def self?.values: -> ::Array[OpenAI::Models::Beta::Agents::Sessions::Turns::ItemListParams::order]
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
91
+ end
@@ -16,7 +16,7 @@ module OpenAI
16
16
  }
17
17
 
18
18
  class BetaResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel
19
- # The unique ID of the computer call tool output.
19
+ # The ID of the computer tool call output.
20
20
  attr_accessor id: String
21
21
 
22
22
  # The ID of the computer tool call that produced the output.
@@ -52,7 +52,7 @@ module OpenAI
52
52
  def created_by=: (String) -> String
53
53
 
54
54
  # @param id
55
- # The unique ID of the computer call tool output.
55
+ # The ID of the computer tool call output.
56
56
  # @param call_id
57
57
  # The ID of the computer tool call that produced the output.
58
58
  # @param output
@@ -94,6 +94,7 @@ module OpenAI
94
94
  {
95
95
  ?detailed_explanation: String,
96
96
  ?error_type: OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type,
97
+ ?review_target: String?,
97
98
  ?steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer
98
99
  }
99
100
 
@@ -112,6 +113,10 @@ module OpenAI
112
113
  OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type
113
114
  ) -> OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type
114
115
 
116
+ # An opaque target for explicitly continuing this review, or null when
117
+ # unavailable.
118
+ attr_accessor review_target: String?
119
+
115
120
  # An optional public continuation instruction.
116
121
  attr_reader steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer?
117
122
 
@@ -124,17 +129,22 @@ module OpenAI
124
129
  # The public explanation for this block.
125
130
  # @param error_type
126
131
  # An optional classification; clients must accept additional values.
132
+ # @param review_target
133
+ # An opaque target for explicitly continuing this review, or null when
134
+ # unavailable.
127
135
  # @param steer
128
136
  # An optional public continuation instruction.
129
137
  def initialize: (
130
138
  ?detailed_explanation: String,
131
139
  ?error_type: OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type,
140
+ ?review_target: String?,
132
141
  ?steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer
133
142
  ) -> void
134
143
 
135
144
  def to_hash: -> {
136
145
  ?detailed_explanation: String,
137
146
  ?error_type: OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type,
147
+ ?review_target: String?,
138
148
  ?steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer
139
149
  }
140
150