openai 0.10.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 (105) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +79 -1
  4. data/lib/openai/client.rb +11 -0
  5. data/lib/openai/errors.rb +3 -0
  6. data/lib/openai/models/all_models.rb +4 -0
  7. data/lib/openai/models/chat/chat_completion.rb +32 -31
  8. data/lib/openai/models/chat/chat_completion_chunk.rb +30 -29
  9. data/lib/openai/models/chat/completion_create_params.rb +34 -31
  10. data/lib/openai/models/images_response.rb +92 -1
  11. data/lib/openai/models/responses/response.rb +59 -35
  12. data/lib/openai/models/responses/response_create_params.rb +64 -39
  13. data/lib/openai/models/responses/response_function_web_search.rb +115 -1
  14. data/lib/openai/models/responses/response_includable.rb +8 -6
  15. data/lib/openai/models/responses/tool_choice_mcp.rb +40 -0
  16. data/lib/openai/models/responses/tool_choice_types.rb +0 -3
  17. data/lib/openai/models/responses_model.rb +4 -0
  18. data/lib/openai/models/webhooks/batch_cancelled_webhook_event.rb +84 -0
  19. data/lib/openai/models/webhooks/batch_completed_webhook_event.rb +84 -0
  20. data/lib/openai/models/webhooks/batch_expired_webhook_event.rb +84 -0
  21. data/lib/openai/models/webhooks/batch_failed_webhook_event.rb +84 -0
  22. data/lib/openai/models/webhooks/eval_run_canceled_webhook_event.rb +84 -0
  23. data/lib/openai/models/webhooks/eval_run_failed_webhook_event.rb +84 -0
  24. data/lib/openai/models/webhooks/eval_run_succeeded_webhook_event.rb +84 -0
  25. data/lib/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rb +85 -0
  26. data/lib/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rb +85 -0
  27. data/lib/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rb +85 -0
  28. data/lib/openai/models/webhooks/response_cancelled_webhook_event.rb +85 -0
  29. data/lib/openai/models/webhooks/response_completed_webhook_event.rb +85 -0
  30. data/lib/openai/models/webhooks/response_failed_webhook_event.rb +84 -0
  31. data/lib/openai/models/webhooks/response_incomplete_webhook_event.rb +85 -0
  32. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +59 -0
  33. data/lib/openai/models/webhooks/webhook_unwrap_params.rb +16 -0
  34. data/lib/openai/models.rb +2 -0
  35. data/lib/openai/resources/chat/completions.rb +2 -2
  36. data/lib/openai/resources/responses.rb +14 -6
  37. data/lib/openai/resources/webhooks.rb +124 -0
  38. data/lib/openai/version.rb +1 -1
  39. data/lib/openai.rb +18 -0
  40. data/rbi/openai/client.rbi +3 -0
  41. data/rbi/openai/models/all_models.rbi +20 -0
  42. data/rbi/openai/models/chat/chat_completion.rbi +47 -42
  43. data/rbi/openai/models/chat/chat_completion_chunk.rbi +47 -42
  44. data/rbi/openai/models/chat/completion_create_params.rbi +51 -42
  45. data/rbi/openai/models/images_response.rbi +146 -0
  46. data/rbi/openai/models/responses/response.rbi +75 -44
  47. data/rbi/openai/models/responses/response_create_params.rbi +91 -55
  48. data/rbi/openai/models/responses/response_function_web_search.rbi +163 -0
  49. data/rbi/openai/models/responses/response_includable.rbi +17 -11
  50. data/rbi/openai/models/responses/tool_choice_mcp.rbi +53 -0
  51. data/rbi/openai/models/responses/tool_choice_types.rbi +0 -5
  52. data/rbi/openai/models/responses_model.rbi +20 -0
  53. data/rbi/openai/models/webhooks/batch_cancelled_webhook_event.rbi +154 -0
  54. data/rbi/openai/models/webhooks/batch_completed_webhook_event.rbi +154 -0
  55. data/rbi/openai/models/webhooks/batch_expired_webhook_event.rbi +150 -0
  56. data/rbi/openai/models/webhooks/batch_failed_webhook_event.rbi +149 -0
  57. data/rbi/openai/models/webhooks/eval_run_canceled_webhook_event.rbi +154 -0
  58. data/rbi/openai/models/webhooks/eval_run_failed_webhook_event.rbi +151 -0
  59. data/rbi/openai/models/webhooks/eval_run_succeeded_webhook_event.rbi +154 -0
  60. data/rbi/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbi +158 -0
  61. data/rbi/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbi +156 -0
  62. data/rbi/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbi +158 -0
  63. data/rbi/openai/models/webhooks/response_cancelled_webhook_event.rbi +154 -0
  64. data/rbi/openai/models/webhooks/response_completed_webhook_event.rbi +154 -0
  65. data/rbi/openai/models/webhooks/response_failed_webhook_event.rbi +154 -0
  66. data/rbi/openai/models/webhooks/response_incomplete_webhook_event.rbi +155 -0
  67. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +40 -0
  68. data/rbi/openai/models/webhooks/webhook_unwrap_params.rbi +32 -0
  69. data/rbi/openai/models.rbi +2 -0
  70. data/rbi/openai/resources/chat/completions.rbi +34 -30
  71. data/rbi/openai/resources/responses.rbi +62 -38
  72. data/rbi/openai/resources/webhooks.rbi +68 -0
  73. data/sig/openai/client.rbs +2 -0
  74. data/sig/openai/models/all_models.rbs +8 -0
  75. data/sig/openai/models/chat/chat_completion.rbs +2 -1
  76. data/sig/openai/models/chat/chat_completion_chunk.rbs +2 -1
  77. data/sig/openai/models/chat/completion_create_params.rbs +2 -1
  78. data/sig/openai/models/images_response.rbs +83 -0
  79. data/sig/openai/models/responses/response.rbs +13 -1
  80. data/sig/openai/models/responses/response_create_params.rbs +13 -1
  81. data/sig/openai/models/responses/response_function_web_search.rbs +54 -0
  82. data/sig/openai/models/responses/response_includable.rbs +7 -5
  83. data/sig/openai/models/responses/tool_choice_mcp.rbs +23 -0
  84. data/sig/openai/models/responses/tool_choice_types.rbs +0 -2
  85. data/sig/openai/models/responses_model.rbs +8 -0
  86. data/sig/openai/models/webhooks/batch_cancelled_webhook_event.rbs +66 -0
  87. data/sig/openai/models/webhooks/batch_completed_webhook_event.rbs +66 -0
  88. data/sig/openai/models/webhooks/batch_expired_webhook_event.rbs +66 -0
  89. data/sig/openai/models/webhooks/batch_failed_webhook_event.rbs +66 -0
  90. data/sig/openai/models/webhooks/eval_run_canceled_webhook_event.rbs +66 -0
  91. data/sig/openai/models/webhooks/eval_run_failed_webhook_event.rbs +66 -0
  92. data/sig/openai/models/webhooks/eval_run_succeeded_webhook_event.rbs +66 -0
  93. data/sig/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbs +66 -0
  94. data/sig/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbs +66 -0
  95. data/sig/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbs +66 -0
  96. data/sig/openai/models/webhooks/response_cancelled_webhook_event.rbs +66 -0
  97. data/sig/openai/models/webhooks/response_completed_webhook_event.rbs +66 -0
  98. data/sig/openai/models/webhooks/response_failed_webhook_event.rbs +66 -0
  99. data/sig/openai/models/webhooks/response_incomplete_webhook_event.rbs +66 -0
  100. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +27 -0
  101. data/sig/openai/models/webhooks/webhook_unwrap_params.rbs +17 -0
  102. data/sig/openai/models.rbs +2 -0
  103. data/sig/openai/resources/responses.rbs +4 -0
  104. data/sig/openai/resources/webhooks.rbs +33 -0
  105. metadata +56 -2
@@ -0,0 +1,66 @@
1
+ module OpenAI
2
+ module Models
3
+ module Webhooks
4
+ type fine_tuning_job_cancelled_webhook_event =
5
+ {
6
+ id: String,
7
+ created_at: Integer,
8
+ data: OpenAI::Webhooks::FineTuningJobCancelledWebhookEvent::Data,
9
+ type: :"fine_tuning.job.cancelled",
10
+ object: OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent::object
11
+ }
12
+
13
+ class FineTuningJobCancelledWebhookEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Integer
17
+
18
+ attr_accessor data: OpenAI::Webhooks::FineTuningJobCancelledWebhookEvent::Data
19
+
20
+ attr_accessor type: :"fine_tuning.job.cancelled"
21
+
22
+ attr_reader object: OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent::object?
23
+
24
+ def object=: (
25
+ OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent::object
26
+ ) -> OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent::object
27
+
28
+ def initialize: (
29
+ id: String,
30
+ created_at: Integer,
31
+ data: OpenAI::Webhooks::FineTuningJobCancelledWebhookEvent::Data,
32
+ ?object: OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent::object,
33
+ ?type: :"fine_tuning.job.cancelled"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ id: String,
38
+ created_at: Integer,
39
+ data: OpenAI::Webhooks::FineTuningJobCancelledWebhookEvent::Data,
40
+ type: :"fine_tuning.job.cancelled",
41
+ object: OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent::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::FineTuningJobCancelledWebhookEvent::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 fine_tuning_job_failed_webhook_event =
5
+ {
6
+ id: String,
7
+ created_at: Integer,
8
+ data: OpenAI::Webhooks::FineTuningJobFailedWebhookEvent::Data,
9
+ type: :"fine_tuning.job.failed",
10
+ object: OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent::object
11
+ }
12
+
13
+ class FineTuningJobFailedWebhookEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Integer
17
+
18
+ attr_accessor data: OpenAI::Webhooks::FineTuningJobFailedWebhookEvent::Data
19
+
20
+ attr_accessor type: :"fine_tuning.job.failed"
21
+
22
+ attr_reader object: OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent::object?
23
+
24
+ def object=: (
25
+ OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent::object
26
+ ) -> OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent::object
27
+
28
+ def initialize: (
29
+ id: String,
30
+ created_at: Integer,
31
+ data: OpenAI::Webhooks::FineTuningJobFailedWebhookEvent::Data,
32
+ ?object: OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent::object,
33
+ ?type: :"fine_tuning.job.failed"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ id: String,
38
+ created_at: Integer,
39
+ data: OpenAI::Webhooks::FineTuningJobFailedWebhookEvent::Data,
40
+ type: :"fine_tuning.job.failed",
41
+ object: OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent::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::FineTuningJobFailedWebhookEvent::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 fine_tuning_job_succeeded_webhook_event =
5
+ {
6
+ id: String,
7
+ created_at: Integer,
8
+ data: OpenAI::Webhooks::FineTuningJobSucceededWebhookEvent::Data,
9
+ type: :"fine_tuning.job.succeeded",
10
+ object: OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent::object
11
+ }
12
+
13
+ class FineTuningJobSucceededWebhookEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Integer
17
+
18
+ attr_accessor data: OpenAI::Webhooks::FineTuningJobSucceededWebhookEvent::Data
19
+
20
+ attr_accessor type: :"fine_tuning.job.succeeded"
21
+
22
+ attr_reader object: OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent::object?
23
+
24
+ def object=: (
25
+ OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent::object
26
+ ) -> OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent::object
27
+
28
+ def initialize: (
29
+ id: String,
30
+ created_at: Integer,
31
+ data: OpenAI::Webhooks::FineTuningJobSucceededWebhookEvent::Data,
32
+ ?object: OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent::object,
33
+ ?type: :"fine_tuning.job.succeeded"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ id: String,
38
+ created_at: Integer,
39
+ data: OpenAI::Webhooks::FineTuningJobSucceededWebhookEvent::Data,
40
+ type: :"fine_tuning.job.succeeded",
41
+ object: OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent::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::FineTuningJobSucceededWebhookEvent::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_cancelled_webhook_event =
5
+ {
6
+ id: String,
7
+ created_at: Integer,
8
+ data: OpenAI::Webhooks::ResponseCancelledWebhookEvent::Data,
9
+ type: :"response.cancelled",
10
+ object: OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent::object
11
+ }
12
+
13
+ class ResponseCancelledWebhookEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Integer
17
+
18
+ attr_accessor data: OpenAI::Webhooks::ResponseCancelledWebhookEvent::Data
19
+
20
+ attr_accessor type: :"response.cancelled"
21
+
22
+ attr_reader object: OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent::object?
23
+
24
+ def object=: (
25
+ OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent::object
26
+ ) -> OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent::object
27
+
28
+ def initialize: (
29
+ id: String,
30
+ created_at: Integer,
31
+ data: OpenAI::Webhooks::ResponseCancelledWebhookEvent::Data,
32
+ ?object: OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent::object,
33
+ ?type: :"response.cancelled"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ id: String,
38
+ created_at: Integer,
39
+ data: OpenAI::Webhooks::ResponseCancelledWebhookEvent::Data,
40
+ type: :"response.cancelled",
41
+ object: OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent::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::ResponseCancelledWebhookEvent::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_completed_webhook_event =
5
+ {
6
+ id: String,
7
+ created_at: Integer,
8
+ data: OpenAI::Webhooks::ResponseCompletedWebhookEvent::Data,
9
+ type: :"response.completed",
10
+ object: OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent::object
11
+ }
12
+
13
+ class ResponseCompletedWebhookEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Integer
17
+
18
+ attr_accessor data: OpenAI::Webhooks::ResponseCompletedWebhookEvent::Data
19
+
20
+ attr_accessor type: :"response.completed"
21
+
22
+ attr_reader object: OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent::object?
23
+
24
+ def object=: (
25
+ OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent::object
26
+ ) -> OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent::object
27
+
28
+ def initialize: (
29
+ id: String,
30
+ created_at: Integer,
31
+ data: OpenAI::Webhooks::ResponseCompletedWebhookEvent::Data,
32
+ ?object: OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent::object,
33
+ ?type: :"response.completed"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ id: String,
38
+ created_at: Integer,
39
+ data: OpenAI::Webhooks::ResponseCompletedWebhookEvent::Data,
40
+ type: :"response.completed",
41
+ object: OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent::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::ResponseCompletedWebhookEvent::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_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
  ?input: OpenAI::Models::Responses::ResponseCreateParams::input,
10
10
  ?instructions: String?,
11
11
  ?max_output_tokens: Integer?,
12
+ ?max_tool_calls: Integer?,
12
13
  ?metadata: OpenAI::Models::metadata?,
13
14
  ?model: OpenAI::Models::responses_model,
14
15
  ?parallel_tool_calls: bool?,
@@ -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,
@@ -33,6 +35,7 @@ module OpenAI
33
35
  ?input: OpenAI::Models::Responses::ResponseCreateParams::input,
34
36
  ?instructions: String?,
35
37
  ?max_output_tokens: Integer?,
38
+ ?max_tool_calls: Integer?,
36
39
  ?metadata: OpenAI::Models::metadata?,
37
40
  ?model: OpenAI::Models::responses_model,
38
41
  ?parallel_tool_calls: bool?,
@@ -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