openai 0.9.0 → 0.11.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 (164) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +40 -0
  3. data/README.md +79 -1
  4. data/lib/openai/client.rb +11 -0
  5. data/lib/openai/errors.rb +25 -0
  6. data/lib/openai/internal/type/array_of.rb +6 -1
  7. data/lib/openai/internal/type/base_model.rb +76 -24
  8. data/lib/openai/internal/type/boolean.rb +7 -1
  9. data/lib/openai/internal/type/converter.rb +42 -34
  10. data/lib/openai/internal/type/enum.rb +10 -2
  11. data/lib/openai/internal/type/file_input.rb +6 -1
  12. data/lib/openai/internal/type/hash_of.rb +6 -1
  13. data/lib/openai/internal/type/union.rb +12 -7
  14. data/lib/openai/internal/type/unknown.rb +7 -1
  15. data/lib/openai/models/all_models.rb +4 -0
  16. data/lib/openai/models/audio/speech_create_params.rb +23 -2
  17. data/lib/openai/models/audio/transcription.rb +118 -1
  18. data/lib/openai/models/audio/transcription_text_done_event.rb +80 -1
  19. data/lib/openai/models/audio/transcription_verbose.rb +31 -1
  20. data/lib/openai/models/chat/chat_completion.rb +32 -31
  21. data/lib/openai/models/chat/chat_completion_chunk.rb +30 -29
  22. data/lib/openai/models/chat/completion_create_params.rb +34 -31
  23. data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb +60 -25
  24. data/lib/openai/models/images_response.rb +92 -1
  25. data/lib/openai/models/responses/response.rb +59 -35
  26. data/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb +17 -8
  27. data/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb +14 -10
  28. data/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb +11 -10
  29. data/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb +11 -10
  30. data/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb +11 -10
  31. data/lib/openai/models/responses/response_code_interpreter_tool_call.rb +49 -78
  32. data/lib/openai/models/responses/response_create_params.rb +92 -67
  33. data/lib/openai/models/responses/response_function_web_search.rb +115 -1
  34. data/lib/openai/models/responses/response_includable.rb +8 -6
  35. data/lib/openai/models/responses/response_output_text.rb +18 -2
  36. data/lib/openai/models/responses/response_stream_event.rb +2 -2
  37. data/lib/openai/models/responses/tool_choice_mcp.rb +40 -0
  38. data/lib/openai/models/responses/tool_choice_types.rb +0 -3
  39. data/lib/openai/models/responses_model.rb +4 -0
  40. data/lib/openai/models/webhooks/batch_cancelled_webhook_event.rb +84 -0
  41. data/lib/openai/models/webhooks/batch_completed_webhook_event.rb +84 -0
  42. data/lib/openai/models/webhooks/batch_expired_webhook_event.rb +84 -0
  43. data/lib/openai/models/webhooks/batch_failed_webhook_event.rb +84 -0
  44. data/lib/openai/models/webhooks/eval_run_canceled_webhook_event.rb +84 -0
  45. data/lib/openai/models/webhooks/eval_run_failed_webhook_event.rb +84 -0
  46. data/lib/openai/models/webhooks/eval_run_succeeded_webhook_event.rb +84 -0
  47. data/lib/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rb +85 -0
  48. data/lib/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rb +85 -0
  49. data/lib/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rb +85 -0
  50. data/lib/openai/models/webhooks/response_cancelled_webhook_event.rb +85 -0
  51. data/lib/openai/models/webhooks/response_completed_webhook_event.rb +85 -0
  52. data/lib/openai/models/webhooks/response_failed_webhook_event.rb +84 -0
  53. data/lib/openai/models/webhooks/response_incomplete_webhook_event.rb +85 -0
  54. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +59 -0
  55. data/lib/openai/models/webhooks/webhook_unwrap_params.rb +16 -0
  56. data/lib/openai/models.rb +2 -0
  57. data/lib/openai/resources/audio/speech.rb +3 -1
  58. data/lib/openai/resources/chat/completions.rb +10 -2
  59. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +1 -2
  60. data/lib/openai/resources/responses.rb +24 -16
  61. data/lib/openai/resources/webhooks.rb +124 -0
  62. data/lib/openai/version.rb +1 -1
  63. data/lib/openai.rb +18 -0
  64. data/rbi/openai/client.rbi +3 -0
  65. data/rbi/openai/errors.rbi +16 -0
  66. data/rbi/openai/internal/type/boolean.rbi +2 -0
  67. data/rbi/openai/internal/type/converter.rbi +15 -15
  68. data/rbi/openai/internal/type/union.rbi +5 -0
  69. data/rbi/openai/internal/type/unknown.rbi +2 -0
  70. data/rbi/openai/models/all_models.rbi +20 -0
  71. data/rbi/openai/models/audio/speech_create_params.rbi +59 -2
  72. data/rbi/openai/models/audio/transcription.rbi +213 -3
  73. data/rbi/openai/models/audio/transcription_text_done_event.rbi +146 -1
  74. data/rbi/openai/models/audio/transcription_verbose.rbi +47 -0
  75. data/rbi/openai/models/chat/chat_completion.rbi +47 -42
  76. data/rbi/openai/models/chat/chat_completion_chunk.rbi +47 -42
  77. data/rbi/openai/models/chat/completion_create_params.rbi +51 -42
  78. data/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi +95 -26
  79. data/rbi/openai/models/images_response.rbi +146 -0
  80. data/rbi/openai/models/responses/response.rbi +75 -44
  81. data/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi +17 -7
  82. data/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi +13 -5
  83. data/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi +13 -21
  84. data/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi +13 -21
  85. data/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi +13 -21
  86. data/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi +83 -125
  87. data/rbi/openai/models/responses/response_create_params.rbi +174 -115
  88. data/rbi/openai/models/responses/response_function_web_search.rbi +163 -0
  89. data/rbi/openai/models/responses/response_includable.rbi +17 -11
  90. data/rbi/openai/models/responses/response_output_text.rbi +26 -4
  91. data/rbi/openai/models/responses/tool_choice_mcp.rbi +53 -0
  92. data/rbi/openai/models/responses/tool_choice_types.rbi +0 -5
  93. data/rbi/openai/models/responses_model.rbi +20 -0
  94. data/rbi/openai/models/webhooks/batch_cancelled_webhook_event.rbi +154 -0
  95. data/rbi/openai/models/webhooks/batch_completed_webhook_event.rbi +154 -0
  96. data/rbi/openai/models/webhooks/batch_expired_webhook_event.rbi +150 -0
  97. data/rbi/openai/models/webhooks/batch_failed_webhook_event.rbi +149 -0
  98. data/rbi/openai/models/webhooks/eval_run_canceled_webhook_event.rbi +154 -0
  99. data/rbi/openai/models/webhooks/eval_run_failed_webhook_event.rbi +151 -0
  100. data/rbi/openai/models/webhooks/eval_run_succeeded_webhook_event.rbi +154 -0
  101. data/rbi/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbi +158 -0
  102. data/rbi/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbi +156 -0
  103. data/rbi/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbi +158 -0
  104. data/rbi/openai/models/webhooks/response_cancelled_webhook_event.rbi +154 -0
  105. data/rbi/openai/models/webhooks/response_completed_webhook_event.rbi +154 -0
  106. data/rbi/openai/models/webhooks/response_failed_webhook_event.rbi +154 -0
  107. data/rbi/openai/models/webhooks/response_incomplete_webhook_event.rbi +155 -0
  108. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +40 -0
  109. data/rbi/openai/models/webhooks/webhook_unwrap_params.rbi +32 -0
  110. data/rbi/openai/models.rbi +2 -0
  111. data/rbi/openai/resources/audio/speech.rbi +6 -1
  112. data/rbi/openai/resources/chat/completions.rbi +34 -30
  113. data/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +1 -3
  114. data/rbi/openai/resources/responses.rbi +108 -84
  115. data/rbi/openai/resources/webhooks.rbi +68 -0
  116. data/sig/openai/client.rbs +2 -0
  117. data/sig/openai/errors.rbs +9 -0
  118. data/sig/openai/internal/type/converter.rbs +7 -1
  119. data/sig/openai/models/all_models.rbs +8 -0
  120. data/sig/openai/models/audio/speech_create_params.rbs +21 -1
  121. data/sig/openai/models/audio/transcription.rbs +95 -3
  122. data/sig/openai/models/audio/transcription_text_done_event.rbs +72 -2
  123. data/sig/openai/models/audio/transcription_verbose.rbs +21 -0
  124. data/sig/openai/models/chat/chat_completion.rbs +2 -1
  125. data/sig/openai/models/chat/chat_completion_chunk.rbs +2 -1
  126. data/sig/openai/models/chat/completion_create_params.rbs +2 -1
  127. data/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbs +53 -16
  128. data/sig/openai/models/images_response.rbs +83 -0
  129. data/sig/openai/models/responses/response.rbs +13 -1
  130. data/sig/openai/models/responses/response_code_interpreter_call_code_delta_event.rbs +5 -0
  131. data/sig/openai/models/responses/response_code_interpreter_call_code_done_event.rbs +5 -0
  132. data/sig/openai/models/responses/response_code_interpreter_call_completed_event.rbs +4 -4
  133. data/sig/openai/models/responses/response_code_interpreter_call_in_progress_event.rbs +4 -4
  134. data/sig/openai/models/responses/response_code_interpreter_call_interpreting_event.rbs +4 -4
  135. data/sig/openai/models/responses/response_code_interpreter_tool_call.rbs +31 -52
  136. data/sig/openai/models/responses/response_create_params.rbs +31 -11
  137. data/sig/openai/models/responses/response_function_web_search.rbs +54 -0
  138. data/sig/openai/models/responses/response_includable.rbs +7 -5
  139. data/sig/openai/models/responses/response_output_text.rbs +15 -1
  140. data/sig/openai/models/responses/tool_choice_mcp.rbs +23 -0
  141. data/sig/openai/models/responses/tool_choice_types.rbs +0 -2
  142. data/sig/openai/models/responses_model.rbs +8 -0
  143. data/sig/openai/models/webhooks/batch_cancelled_webhook_event.rbs +66 -0
  144. data/sig/openai/models/webhooks/batch_completed_webhook_event.rbs +66 -0
  145. data/sig/openai/models/webhooks/batch_expired_webhook_event.rbs +66 -0
  146. data/sig/openai/models/webhooks/batch_failed_webhook_event.rbs +66 -0
  147. data/sig/openai/models/webhooks/eval_run_canceled_webhook_event.rbs +66 -0
  148. data/sig/openai/models/webhooks/eval_run_failed_webhook_event.rbs +66 -0
  149. data/sig/openai/models/webhooks/eval_run_succeeded_webhook_event.rbs +66 -0
  150. data/sig/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbs +66 -0
  151. data/sig/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbs +66 -0
  152. data/sig/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbs +66 -0
  153. data/sig/openai/models/webhooks/response_cancelled_webhook_event.rbs +66 -0
  154. data/sig/openai/models/webhooks/response_completed_webhook_event.rbs +66 -0
  155. data/sig/openai/models/webhooks/response_failed_webhook_event.rbs +66 -0
  156. data/sig/openai/models/webhooks/response_incomplete_webhook_event.rbs +66 -0
  157. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +27 -0
  158. data/sig/openai/models/webhooks/webhook_unwrap_params.rbs +17 -0
  159. data/sig/openai/models.rbs +2 -0
  160. data/sig/openai/resources/audio/speech.rbs +1 -0
  161. data/sig/openai/resources/fine_tuning/checkpoints/permissions.rbs +1 -1
  162. data/sig/openai/resources/responses.rbs +8 -4
  163. data/sig/openai/resources/webhooks.rbs +33 -0
  164. metadata +56 -2
@@ -0,0 +1,66 @@
1
+ module OpenAI
2
+ module Models
3
+ module Webhooks
4
+ type response_failed_webhook_event =
5
+ {
6
+ id: String,
7
+ created_at: Integer,
8
+ data: OpenAI::Webhooks::ResponseFailedWebhookEvent::Data,
9
+ type: :"response.failed",
10
+ object: OpenAI::Models::Webhooks::ResponseFailedWebhookEvent::object
11
+ }
12
+
13
+ class ResponseFailedWebhookEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Integer
17
+
18
+ attr_accessor data: OpenAI::Webhooks::ResponseFailedWebhookEvent::Data
19
+
20
+ attr_accessor type: :"response.failed"
21
+
22
+ attr_reader object: OpenAI::Models::Webhooks::ResponseFailedWebhookEvent::object?
23
+
24
+ def object=: (
25
+ OpenAI::Models::Webhooks::ResponseFailedWebhookEvent::object
26
+ ) -> OpenAI::Models::Webhooks::ResponseFailedWebhookEvent::object
27
+
28
+ def initialize: (
29
+ id: String,
30
+ created_at: Integer,
31
+ data: OpenAI::Webhooks::ResponseFailedWebhookEvent::Data,
32
+ ?object: OpenAI::Models::Webhooks::ResponseFailedWebhookEvent::object,
33
+ ?type: :"response.failed"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ id: String,
38
+ created_at: Integer,
39
+ data: OpenAI::Webhooks::ResponseFailedWebhookEvent::Data,
40
+ type: :"response.failed",
41
+ object: OpenAI::Models::Webhooks::ResponseFailedWebhookEvent::object
42
+ }
43
+
44
+ type data = { id: String }
45
+
46
+ class Data < OpenAI::Internal::Type::BaseModel
47
+ attr_accessor id: String
48
+
49
+ def initialize: (id: String) -> void
50
+
51
+ def to_hash: -> { id: String }
52
+ end
53
+
54
+ type object = :event
55
+
56
+ module Object
57
+ extend OpenAI::Internal::Type::Enum
58
+
59
+ EVENT: :event
60
+
61
+ def self?.values: -> ::Array[OpenAI::Models::Webhooks::ResponseFailedWebhookEvent::object]
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,66 @@
1
+ module OpenAI
2
+ module Models
3
+ module Webhooks
4
+ type response_incomplete_webhook_event =
5
+ {
6
+ id: String,
7
+ created_at: Integer,
8
+ data: OpenAI::Webhooks::ResponseIncompleteWebhookEvent::Data,
9
+ type: :"response.incomplete",
10
+ object: OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent::object
11
+ }
12
+
13
+ class ResponseIncompleteWebhookEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Integer
17
+
18
+ attr_accessor data: OpenAI::Webhooks::ResponseIncompleteWebhookEvent::Data
19
+
20
+ attr_accessor type: :"response.incomplete"
21
+
22
+ attr_reader object: OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent::object?
23
+
24
+ def object=: (
25
+ OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent::object
26
+ ) -> OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent::object
27
+
28
+ def initialize: (
29
+ id: String,
30
+ created_at: Integer,
31
+ data: OpenAI::Webhooks::ResponseIncompleteWebhookEvent::Data,
32
+ ?object: OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent::object,
33
+ ?type: :"response.incomplete"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ id: String,
38
+ created_at: Integer,
39
+ data: OpenAI::Webhooks::ResponseIncompleteWebhookEvent::Data,
40
+ type: :"response.incomplete",
41
+ object: OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent::object
42
+ }
43
+
44
+ type data = { id: String }
45
+
46
+ class Data < OpenAI::Internal::Type::BaseModel
47
+ attr_accessor id: String
48
+
49
+ def initialize: (id: String) -> void
50
+
51
+ def to_hash: -> { id: String }
52
+ end
53
+
54
+ type object = :event
55
+
56
+ module Object
57
+ extend OpenAI::Internal::Type::Enum
58
+
59
+ EVENT: :event
60
+
61
+ def self?.values: -> ::Array[OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent::object]
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,27 @@
1
+ module OpenAI
2
+ module Models
3
+ module Webhooks
4
+ type unwrap_webhook_event =
5
+ OpenAI::Webhooks::BatchCancelledWebhookEvent
6
+ | OpenAI::Webhooks::BatchCompletedWebhookEvent
7
+ | OpenAI::Webhooks::BatchExpiredWebhookEvent
8
+ | OpenAI::Webhooks::BatchFailedWebhookEvent
9
+ | OpenAI::Webhooks::EvalRunCanceledWebhookEvent
10
+ | OpenAI::Webhooks::EvalRunFailedWebhookEvent
11
+ | OpenAI::Webhooks::EvalRunSucceededWebhookEvent
12
+ | OpenAI::Webhooks::FineTuningJobCancelledWebhookEvent
13
+ | OpenAI::Webhooks::FineTuningJobFailedWebhookEvent
14
+ | OpenAI::Webhooks::FineTuningJobSucceededWebhookEvent
15
+ | OpenAI::Webhooks::ResponseCancelledWebhookEvent
16
+ | OpenAI::Webhooks::ResponseCompletedWebhookEvent
17
+ | OpenAI::Webhooks::ResponseFailedWebhookEvent
18
+ | OpenAI::Webhooks::ResponseIncompleteWebhookEvent
19
+
20
+ module UnwrapWebhookEvent
21
+ extend OpenAI::Internal::Type::Union
22
+
23
+ def self?.variants: -> ::Array[OpenAI::Models::Webhooks::unwrap_webhook_event]
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,17 @@
1
+ module OpenAI
2
+ module Models
3
+ module Webhooks
4
+ type webhook_unwrap_params =
5
+ { } & OpenAI::Internal::Type::request_parameters
6
+
7
+ class WebhookUnwrapParams < OpenAI::Internal::Type::BaseModel
8
+ extend OpenAI::Internal::Type::RequestParameters::Converter
9
+ include OpenAI::Internal::Type::RequestParameters
10
+
11
+ def initialize: (?request_options: OpenAI::request_opts) -> void
12
+
13
+ def to_hash: -> { request_options: OpenAI::RequestOptions }
14
+ end
15
+ end
16
+ end
17
+ end
@@ -192,4 +192,6 @@ module OpenAI
192
192
  class VectorStoreSearchParams = OpenAI::Models::VectorStoreSearchParams
193
193
 
194
194
  class VectorStoreUpdateParams = OpenAI::Models::VectorStoreUpdateParams
195
+
196
+ module Webhooks = OpenAI::Models::Webhooks
195
197
  end
@@ -9,6 +9,7 @@ module OpenAI
9
9
  ?instructions: String,
10
10
  ?response_format: OpenAI::Models::Audio::SpeechCreateParams::response_format,
11
11
  ?speed: Float,
12
+ ?stream_format: OpenAI::Models::Audio::SpeechCreateParams::stream_format,
12
13
  ?request_options: OpenAI::request_opts
13
14
  ) -> StringIO
14
15
 
@@ -16,7 +16,7 @@ module OpenAI
16
16
  ?order: OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::order,
17
17
  ?project_id: String,
18
18
  ?request_options: OpenAI::request_opts
19
- ) -> OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse]
19
+ ) -> OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse
20
20
 
21
21
  def delete: (
22
22
  String permission_id,
@@ -4,13 +4,14 @@ module OpenAI
4
4
  attr_reader input_items: OpenAI::Resources::Responses::InputItems
5
5
 
6
6
  def create: (
7
- input: OpenAI::Models::Responses::ResponseCreateParams::input,
8
- model: OpenAI::Models::responses_model,
9
7
  ?background: bool?,
10
8
  ?include: ::Array[OpenAI::Models::Responses::response_includable]?,
9
+ ?input: OpenAI::Models::Responses::ResponseCreateParams::input,
11
10
  ?instructions: String?,
12
11
  ?max_output_tokens: Integer?,
12
+ ?max_tool_calls: Integer?,
13
13
  ?metadata: OpenAI::Models::metadata?,
14
+ ?model: OpenAI::Models::responses_model,
14
15
  ?parallel_tool_calls: bool?,
15
16
  ?previous_response_id: String?,
16
17
  ?prompt: OpenAI::Responses::ResponsePrompt?,
@@ -21,6 +22,7 @@ module OpenAI
21
22
  ?text: OpenAI::Responses::ResponseTextConfig,
22
23
  ?tool_choice: OpenAI::Models::Responses::ResponseCreateParams::tool_choice,
23
24
  ?tools: ::Array[OpenAI::Models::Responses::tool],
25
+ ?top_logprobs: Integer?,
24
26
  ?top_p: Float?,
25
27
  ?truncation: OpenAI::Models::Responses::ResponseCreateParams::truncation?,
26
28
  ?user: String,
@@ -28,13 +30,14 @@ module OpenAI
28
30
  ) -> OpenAI::Responses::Response
29
31
 
30
32
  def stream_raw: (
31
- input: OpenAI::Models::Responses::ResponseCreateParams::input,
32
- model: OpenAI::Models::responses_model,
33
33
  ?background: bool?,
34
34
  ?include: ::Array[OpenAI::Models::Responses::response_includable]?,
35
+ ?input: OpenAI::Models::Responses::ResponseCreateParams::input,
35
36
  ?instructions: String?,
36
37
  ?max_output_tokens: Integer?,
38
+ ?max_tool_calls: Integer?,
37
39
  ?metadata: OpenAI::Models::metadata?,
40
+ ?model: OpenAI::Models::responses_model,
38
41
  ?parallel_tool_calls: bool?,
39
42
  ?previous_response_id: String?,
40
43
  ?prompt: OpenAI::Responses::ResponsePrompt?,
@@ -45,6 +48,7 @@ module OpenAI
45
48
  ?text: OpenAI::Responses::ResponseTextConfig,
46
49
  ?tool_choice: OpenAI::Models::Responses::ResponseCreateParams::tool_choice,
47
50
  ?tools: ::Array[OpenAI::Models::Responses::tool],
51
+ ?top_logprobs: Integer?,
48
52
  ?top_p: Float?,
49
53
  ?truncation: OpenAI::Models::Responses::ResponseCreateParams::truncation?,
50
54
  ?user: String,
@@ -0,0 +1,33 @@
1
+ module OpenAI
2
+ module Resources
3
+ class Webhooks
4
+ def unwrap: (
5
+ String payload,
6
+ ?Hash[String | Symbol, String] headers,
7
+ ?String? webhook_secret
8
+ ) -> (OpenAI::Webhooks::BatchCancelledWebhookEvent
9
+ | OpenAI::Webhooks::BatchCompletedWebhookEvent
10
+ | OpenAI::Webhooks::BatchExpiredWebhookEvent
11
+ | OpenAI::Webhooks::BatchFailedWebhookEvent
12
+ | OpenAI::Webhooks::EvalRunCanceledWebhookEvent
13
+ | OpenAI::Webhooks::EvalRunFailedWebhookEvent
14
+ | OpenAI::Webhooks::EvalRunSucceededWebhookEvent
15
+ | OpenAI::Webhooks::FineTuningJobCancelledWebhookEvent
16
+ | OpenAI::Webhooks::FineTuningJobFailedWebhookEvent
17
+ | OpenAI::Webhooks::FineTuningJobSucceededWebhookEvent
18
+ | OpenAI::Webhooks::ResponseCancelledWebhookEvent
19
+ | OpenAI::Webhooks::ResponseCompletedWebhookEvent
20
+ | OpenAI::Webhooks::ResponseFailedWebhookEvent
21
+ | OpenAI::Webhooks::ResponseIncompleteWebhookEvent)
22
+
23
+ def verify_signature: (
24
+ String payload,
25
+ Hash[String | Symbol, String] headers,
26
+ ?String? webhook_secret,
27
+ ?Integer tolerance
28
+ ) -> void
29
+
30
+ def initialize: (client: OpenAI::Client) -> void
31
+ end
32
+ end
33
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAI
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-06-17 00:00:00.000000000 Z
11
+ date: 2025-06-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool
@@ -449,6 +449,7 @@ files:
449
449
  - lib/openai/models/responses/response_web_search_call_searching_event.rb
450
450
  - lib/openai/models/responses/tool.rb
451
451
  - lib/openai/models/responses/tool_choice_function.rb
452
+ - lib/openai/models/responses/tool_choice_mcp.rb
452
453
  - lib/openai/models/responses/tool_choice_options.rb
453
454
  - lib/openai/models/responses/tool_choice_types.rb
454
455
  - lib/openai/models/responses/web_search_tool.rb
@@ -485,6 +486,22 @@ files:
485
486
  - lib/openai/models/vector_stores/vector_store_file.rb
486
487
  - lib/openai/models/vector_stores/vector_store_file_batch.rb
487
488
  - lib/openai/models/vector_stores/vector_store_file_deleted.rb
489
+ - lib/openai/models/webhooks/batch_cancelled_webhook_event.rb
490
+ - lib/openai/models/webhooks/batch_completed_webhook_event.rb
491
+ - lib/openai/models/webhooks/batch_expired_webhook_event.rb
492
+ - lib/openai/models/webhooks/batch_failed_webhook_event.rb
493
+ - lib/openai/models/webhooks/eval_run_canceled_webhook_event.rb
494
+ - lib/openai/models/webhooks/eval_run_failed_webhook_event.rb
495
+ - lib/openai/models/webhooks/eval_run_succeeded_webhook_event.rb
496
+ - lib/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rb
497
+ - lib/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rb
498
+ - lib/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rb
499
+ - lib/openai/models/webhooks/response_cancelled_webhook_event.rb
500
+ - lib/openai/models/webhooks/response_completed_webhook_event.rb
501
+ - lib/openai/models/webhooks/response_failed_webhook_event.rb
502
+ - lib/openai/models/webhooks/response_incomplete_webhook_event.rb
503
+ - lib/openai/models/webhooks/unwrap_webhook_event.rb
504
+ - lib/openai/models/webhooks/webhook_unwrap_params.rb
488
505
  - lib/openai/request_options.rb
489
506
  - lib/openai/resources/audio.rb
490
507
  - lib/openai/resources/audio/speech.rb
@@ -529,6 +546,7 @@ files:
529
546
  - lib/openai/resources/vector_stores.rb
530
547
  - lib/openai/resources/vector_stores/file_batches.rb
531
548
  - lib/openai/resources/vector_stores/files.rb
549
+ - lib/openai/resources/webhooks.rb
532
550
  - lib/openai/structured_output.rb
533
551
  - lib/openai/version.rb
534
552
  - manifest.yaml
@@ -945,6 +963,7 @@ files:
945
963
  - rbi/openai/models/responses/response_web_search_call_searching_event.rbi
946
964
  - rbi/openai/models/responses/tool.rbi
947
965
  - rbi/openai/models/responses/tool_choice_function.rbi
966
+ - rbi/openai/models/responses/tool_choice_mcp.rbi
948
967
  - rbi/openai/models/responses/tool_choice_options.rbi
949
968
  - rbi/openai/models/responses/tool_choice_types.rbi
950
969
  - rbi/openai/models/responses/web_search_tool.rbi
@@ -981,6 +1000,22 @@ files:
981
1000
  - rbi/openai/models/vector_stores/vector_store_file.rbi
982
1001
  - rbi/openai/models/vector_stores/vector_store_file_batch.rbi
983
1002
  - rbi/openai/models/vector_stores/vector_store_file_deleted.rbi
1003
+ - rbi/openai/models/webhooks/batch_cancelled_webhook_event.rbi
1004
+ - rbi/openai/models/webhooks/batch_completed_webhook_event.rbi
1005
+ - rbi/openai/models/webhooks/batch_expired_webhook_event.rbi
1006
+ - rbi/openai/models/webhooks/batch_failed_webhook_event.rbi
1007
+ - rbi/openai/models/webhooks/eval_run_canceled_webhook_event.rbi
1008
+ - rbi/openai/models/webhooks/eval_run_failed_webhook_event.rbi
1009
+ - rbi/openai/models/webhooks/eval_run_succeeded_webhook_event.rbi
1010
+ - rbi/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbi
1011
+ - rbi/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbi
1012
+ - rbi/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbi
1013
+ - rbi/openai/models/webhooks/response_cancelled_webhook_event.rbi
1014
+ - rbi/openai/models/webhooks/response_completed_webhook_event.rbi
1015
+ - rbi/openai/models/webhooks/response_failed_webhook_event.rbi
1016
+ - rbi/openai/models/webhooks/response_incomplete_webhook_event.rbi
1017
+ - rbi/openai/models/webhooks/unwrap_webhook_event.rbi
1018
+ - rbi/openai/models/webhooks/webhook_unwrap_params.rbi
984
1019
  - rbi/openai/request_options.rbi
985
1020
  - rbi/openai/resources/audio.rbi
986
1021
  - rbi/openai/resources/audio/speech.rbi
@@ -1025,6 +1060,7 @@ files:
1025
1060
  - rbi/openai/resources/vector_stores.rbi
1026
1061
  - rbi/openai/resources/vector_stores/file_batches.rbi
1027
1062
  - rbi/openai/resources/vector_stores/files.rbi
1063
+ - rbi/openai/resources/webhooks.rbi
1028
1064
  - rbi/openai/structured_output.rbi
1029
1065
  - rbi/openai/version.rbi
1030
1066
  - sig/openai/client.rbs
@@ -1433,6 +1469,7 @@ files:
1433
1469
  - sig/openai/models/responses/response_web_search_call_searching_event.rbs
1434
1470
  - sig/openai/models/responses/tool.rbs
1435
1471
  - sig/openai/models/responses/tool_choice_function.rbs
1472
+ - sig/openai/models/responses/tool_choice_mcp.rbs
1436
1473
  - sig/openai/models/responses/tool_choice_options.rbs
1437
1474
  - sig/openai/models/responses/tool_choice_types.rbs
1438
1475
  - sig/openai/models/responses/web_search_tool.rbs
@@ -1469,6 +1506,22 @@ files:
1469
1506
  - sig/openai/models/vector_stores/vector_store_file.rbs
1470
1507
  - sig/openai/models/vector_stores/vector_store_file_batch.rbs
1471
1508
  - sig/openai/models/vector_stores/vector_store_file_deleted.rbs
1509
+ - sig/openai/models/webhooks/batch_cancelled_webhook_event.rbs
1510
+ - sig/openai/models/webhooks/batch_completed_webhook_event.rbs
1511
+ - sig/openai/models/webhooks/batch_expired_webhook_event.rbs
1512
+ - sig/openai/models/webhooks/batch_failed_webhook_event.rbs
1513
+ - sig/openai/models/webhooks/eval_run_canceled_webhook_event.rbs
1514
+ - sig/openai/models/webhooks/eval_run_failed_webhook_event.rbs
1515
+ - sig/openai/models/webhooks/eval_run_succeeded_webhook_event.rbs
1516
+ - sig/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbs
1517
+ - sig/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbs
1518
+ - sig/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbs
1519
+ - sig/openai/models/webhooks/response_cancelled_webhook_event.rbs
1520
+ - sig/openai/models/webhooks/response_completed_webhook_event.rbs
1521
+ - sig/openai/models/webhooks/response_failed_webhook_event.rbs
1522
+ - sig/openai/models/webhooks/response_incomplete_webhook_event.rbs
1523
+ - sig/openai/models/webhooks/unwrap_webhook_event.rbs
1524
+ - sig/openai/models/webhooks/webhook_unwrap_params.rbs
1472
1525
  - sig/openai/request_options.rbs
1473
1526
  - sig/openai/resources/audio.rbs
1474
1527
  - sig/openai/resources/audio/speech.rbs
@@ -1513,6 +1566,7 @@ files:
1513
1566
  - sig/openai/resources/vector_stores.rbs
1514
1567
  - sig/openai/resources/vector_stores/file_batches.rbs
1515
1568
  - sig/openai/resources/vector_stores/files.rbs
1569
+ - sig/openai/resources/webhooks.rbs
1516
1570
  - sig/openai/version.rbs
1517
1571
  homepage: https://gemdocs.org/gems/openai
1518
1572
  licenses: []