openai 0.101.1 → 0.102.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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/beta/agents/environment_create_params.rb +300 -0
  5. data/lib/openai/models/beta/agents/environment_info.rb +4 -1
  6. data/lib/openai/models/beta/agents/environment_list_params.rb +78 -0
  7. data/lib/openai/models/beta/environment_param.rb +12 -1
  8. data/lib/openai/models/webhooks/agent_environment_failed_webhook_event.rb +73 -0
  9. data/lib/openai/models/webhooks/agent_environment_ready_webhook_event.rb +73 -0
  10. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +9 -3
  11. data/lib/openai/models/webhooks/webhook_create_params.rb +2 -0
  12. data/lib/openai/models/webhooks/webhook_test_params.rb +2 -0
  13. data/lib/openai/models/webhooks/webhook_update_params.rb +2 -0
  14. data/lib/openai/resources/beta/agents/environments/files.rb +4 -2
  15. data/lib/openai/resources/beta/agents/environments/templates.rb +10 -5
  16. data/lib/openai/resources/beta/agents/environments.rb +80 -1
  17. data/lib/openai/resources/beta/agents/sessions/artifacts.rb +8 -5
  18. data/lib/openai/resources/beta/agents/sessions/events.rb +10 -4
  19. data/lib/openai/resources/beta/agents/sessions/items.rb +2 -1
  20. data/lib/openai/resources/beta/agents/sessions/subagents/items.rb +2 -1
  21. data/lib/openai/resources/beta/agents/sessions/subagents/turns/items.rb +2 -1
  22. data/lib/openai/resources/beta/agents/sessions/subagents/turns.rb +4 -2
  23. data/lib/openai/resources/beta/agents/sessions/subagents.rb +4 -2
  24. data/lib/openai/resources/beta/agents/sessions/traces.rb +2 -1
  25. data/lib/openai/resources/beta/agents/sessions/turns/items.rb +2 -1
  26. data/lib/openai/resources/beta/agents/sessions/turns.rb +4 -2
  27. data/lib/openai/resources/beta/agents/sessions.rb +16 -7
  28. data/lib/openai/resources/beta/agents/vaults/credentials.rb +10 -5
  29. data/lib/openai/resources/beta/agents/vaults.rb +8 -4
  30. data/lib/openai/resources/beta/agents.rb +10 -5
  31. data/lib/openai/resources/beta/assistants.rb +10 -5
  32. data/lib/openai/resources/beta/chatkit/sessions.rb +4 -2
  33. data/lib/openai/resources/beta/chatkit/threads.rb +8 -4
  34. data/lib/openai/resources/beta/threads/messages.rb +10 -5
  35. data/lib/openai/resources/beta/threads/runs/steps.rb +4 -2
  36. data/lib/openai/resources/beta/threads/runs.rb +24 -10
  37. data/lib/openai/resources/beta/threads.rb +16 -7
  38. data/lib/openai/resources/vector_stores/file_batches.rb +8 -10
  39. data/lib/openai/resources/vector_stores/files.rb +12 -12
  40. data/lib/openai/resources/vector_stores.rb +12 -6
  41. data/lib/openai/resources/webhooks.rb +1 -1
  42. data/lib/openai/version.rb +1 -1
  43. data/lib/openai.rb +4 -0
  44. data/rbi/openai/models/beta/agents/environment_create_params.rbi +499 -0
  45. data/rbi/openai/models/beta/agents/environment_info.rbi +3 -0
  46. data/rbi/openai/models/beta/agents/environment_list_params.rbi +136 -0
  47. data/rbi/openai/models/beta/environment_param.rbi +15 -0
  48. data/rbi/openai/models/webhooks/agent_environment_failed_webhook_event.rbi +134 -0
  49. data/rbi/openai/models/webhooks/agent_environment_ready_webhook_event.rbi +134 -0
  50. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +4 -2
  51. data/rbi/openai/models/webhooks/webhook_create_params.rbi +8 -0
  52. data/rbi/openai/models/webhooks/webhook_test_params.rbi +8 -0
  53. data/rbi/openai/models/webhooks/webhook_update_params.rbi +8 -0
  54. data/rbi/openai/resources/beta/agents/environments.rbi +53 -0
  55. data/rbi/openai/resources/webhooks.rbi +2 -0
  56. data/sig/openai/models/beta/agents/environment_create_params.rbs +268 -0
  57. data/sig/openai/models/beta/agents/environment_info.rbs +5 -1
  58. data/sig/openai/models/beta/agents/environment_list_params.rbs +97 -0
  59. data/sig/openai/models/beta/environment_param.rbs +14 -0
  60. data/sig/openai/models/webhooks/agent_environment_failed_webhook_event.rbs +70 -0
  61. data/sig/openai/models/webhooks/agent_environment_ready_webhook_event.rbs +70 -0
  62. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +3 -1
  63. data/sig/openai/models/webhooks/webhook_create_params.rbs +4 -0
  64. data/sig/openai/models/webhooks/webhook_test_params.rbs +4 -0
  65. data/sig/openai/models/webhooks/webhook_update_params.rbs +4 -0
  66. data/sig/openai/resources/beta/agents/environments.rbs +15 -0
  67. data/sig/openai/resources/webhooks.rbs +3 -1
  68. metadata +13 -1
@@ -0,0 +1,136 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+
6
+ module Beta
7
+
8
+ module Agents
9
+
10
+ class EnvironmentListParams < OpenAI::Internal::Type::BaseModel
11
+
12
+ extend OpenAI::Internal::Type::RequestParameters::Converter
13
+ include OpenAI::Internal::Type::RequestParameters
14
+
15
+ OrHash = T.type_alias do
16
+ T.any(
17
+ OpenAI::Beta::Agents::EnvironmentListParams,
18
+ OpenAI::Internal::AnyHash
19
+ )
20
+ end
21
+
22
+ # Return environments after this environment ID in the selected order.
23
+ sig { returns(T.nilable(String)) }
24
+ attr_reader :after
25
+
26
+ sig { params(after: String).void }
27
+ attr_writer :after
28
+
29
+ # The maximum number of environments to return, between 1 and 100. Defaults to 20.
30
+ sig { returns(T.nilable(Integer)) }
31
+ attr_reader :limit
32
+
33
+ sig { params(limit: Integer).void }
34
+ attr_writer :limit
35
+
36
+ # The order in which environments are returned. Defaults to `desc`.
37
+ sig { returns(T.nilable(OpenAI::Beta::Agents::EnvironmentListParams::Order::OrSymbol)) }
38
+ attr_reader :order
39
+
40
+ sig { params(order: OpenAI::Beta::Agents::EnvironmentListParams::Order::OrSymbol).void }
41
+ attr_writer :order
42
+
43
+ # The hosting type to list. Defaults to `openai_hosted`.
44
+ sig { returns(T.nilable(OpenAI::Beta::Agents::EnvironmentListParams::Type::OrSymbol)) }
45
+ attr_reader :type
46
+
47
+ sig { params(type: OpenAI::Beta::Agents::EnvironmentListParams::Type::OrSymbol).void }
48
+ attr_writer :type
49
+
50
+ sig do
51
+ params(
52
+
53
+ after: String,
54
+
55
+ limit: Integer,
56
+
57
+ order: OpenAI::Beta::Agents::EnvironmentListParams::Order::OrSymbol,
58
+
59
+ type: OpenAI::Beta::Agents::EnvironmentListParams::Type::OrSymbol,
60
+
61
+ request_options: OpenAI::RequestOptions::OrHash
62
+ )
63
+ .returns(T.attached_class)
64
+ end
65
+ def self.new(
66
+
67
+ # Return environments after this environment ID in the selected order.
68
+ after: nil,
69
+
70
+ # The maximum number of environments to return, between 1 and 100. Defaults to 20.
71
+ limit: nil,
72
+
73
+ # The order in which environments are returned. Defaults to `desc`.
74
+ order: nil,
75
+
76
+ # The hosting type to list. Defaults to `openai_hosted`.
77
+ type: nil,
78
+
79
+ request_options: {}
80
+ )
81
+ end
82
+
83
+ sig do
84
+ override.returns(
85
+ {
86
+ after: String,
87
+ limit: Integer,
88
+ order: OpenAI::Beta::Agents::EnvironmentListParams::Order::OrSymbol,
89
+ type: OpenAI::Beta::Agents::EnvironmentListParams::Type::OrSymbol,
90
+ request_options: OpenAI::RequestOptions
91
+ }
92
+ )
93
+ end
94
+ def to_hash
95
+ end
96
+
97
+ # The order in which environments are returned. Defaults to `desc`.
98
+ module Order
99
+ extend OpenAI::Internal::Type::Enum
100
+
101
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::Agents::EnvironmentListParams::Order) }
102
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
103
+
104
+ # Returns resources in ascending order.
105
+ ASC = T.let(:asc, OpenAI::Beta::Agents::EnvironmentListParams::Order::TaggedSymbol)
106
+
107
+ # Returns resources in descending order.
108
+ DESC = T.let(:desc, OpenAI::Beta::Agents::EnvironmentListParams::Order::TaggedSymbol)
109
+
110
+ sig { override.returns(T::Array[OpenAI::Beta::Agents::EnvironmentListParams::Order::TaggedSymbol]) }
111
+ def self.values
112
+ end
113
+ end
114
+
115
+ # The hosting type to list. Defaults to `openai_hosted`.
116
+ module Type
117
+ extend OpenAI::Internal::Type::Enum
118
+
119
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::Agents::EnvironmentListParams::Type) }
120
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
121
+
122
+ OPENAI_HOSTED = T.let(:openai_hosted, OpenAI::Beta::Agents::EnvironmentListParams::Type::TaggedSymbol)
123
+
124
+ sig { override.returns(T::Array[OpenAI::Beta::Agents::EnvironmentListParams::Type::TaggedSymbol]) }
125
+ def self.values
126
+ end
127
+ end
128
+
129
+ end
130
+
131
+ end
132
+
133
+ end
134
+
135
+ end
136
+ end
@@ -91,6 +91,14 @@ module OpenAI
91
91
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
92
92
  attr_accessor :env
93
93
 
94
+ # An existing prewarmed environment. Cannot be combined with a template or inline
95
+ # configuration.
96
+ sig { returns(T.nilable(String)) }
97
+ attr_reader :environment_id
98
+
99
+ sig { params(environment_id: String).void }
100
+ attr_writer :environment_id
101
+
94
102
  # A reusable hosted template applied before inline session configuration. Omitted
95
103
  # fields inherit the template; network overrides cannot broaden its policy.
96
104
  sig { returns(T.nilable(String)) }
@@ -161,6 +169,8 @@ module OpenAI
161
169
 
162
170
  env: T.nilable(T::Hash[Symbol, String]),
163
171
 
172
+ environment_id: String,
173
+
164
174
  environment_template_id: String,
165
175
 
166
176
  files: T.nilable(
@@ -209,6 +219,10 @@ module OpenAI
209
219
  # Environment variables made available to the agent.
210
220
  env: nil,
211
221
 
222
+ # An existing prewarmed environment. Cannot be combined with a template or inline
223
+ # configuration.
224
+ environment_id: nil,
225
+
212
226
  # A reusable hosted template applied before inline session configuration. Omitted
213
227
  # fields inherit the template; network overrides cannot broaden its policy.
214
228
  environment_template_id: nil,
@@ -247,6 +261,7 @@ module OpenAI
247
261
  container_size: OpenAI::Beta::EnvironmentParam::OpenAIHosted::ContainerSize::OrSymbol,
248
262
  desktop: T.nilable(OpenAI::Beta::EnvironmentParam::OpenAIHosted::Desktop),
249
263
  env: T.nilable(T::Hash[Symbol, String]),
264
+ environment_id: String,
250
265
  environment_template_id: String,
251
266
  files: T.nilable(
252
267
  T::Array[
@@ -0,0 +1,134 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+
6
+ module Webhooks
7
+
8
+ class AgentEnvironmentFailedWebhookEvent < OpenAI::Internal::Type::BaseModel
9
+
10
+ OrHash = T.type_alias do
11
+ T.any(
12
+ OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent,
13
+ OpenAI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # The unique ID of the event.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
21
+ # The Unix timestamp, in seconds, when the event was created.
22
+ sig { returns(Integer) }
23
+ attr_accessor :created_at
24
+
25
+ # Identifies the environment whose lifecycle changed.
26
+ sig { returns(OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent::Data) }
27
+ attr_reader :data
28
+
29
+ sig { params(data: OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent::Data::OrHash).void }
30
+ attr_writer :data
31
+
32
+ # The object type. Always `event`.
33
+ sig { returns(Symbol) }
34
+ attr_accessor :object
35
+
36
+ # The event type. Always `agent.environment.failed`.
37
+ sig { returns(Symbol) }
38
+ attr_accessor :type
39
+
40
+ # Sent when setup fails for a prewarmed OpenAI-hosted environment before it is
41
+ # attached to a session.
42
+ sig do
43
+ params(
44
+
45
+ id: String,
46
+
47
+ created_at: Integer,
48
+
49
+ data: OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent::Data::OrHash,
50
+
51
+ object: Symbol,
52
+
53
+ type: Symbol
54
+ )
55
+ .returns(T.attached_class)
56
+ end
57
+ def self.new(
58
+
59
+ # The unique ID of the event.
60
+ id:,
61
+
62
+ # The Unix timestamp, in seconds, when the event was created.
63
+ created_at:,
64
+
65
+ # Identifies the environment whose lifecycle changed.
66
+ data:,
67
+
68
+ # The object type. Always `event`.
69
+ object: :event,
70
+
71
+ # The event type. Always `agent.environment.failed`.
72
+
73
+ type: :"agent.environment.failed"
74
+ )
75
+ end
76
+
77
+ sig do
78
+ override.returns(
79
+ {
80
+ id: String,
81
+ created_at: Integer,
82
+ data: OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent::Data,
83
+ object: Symbol,
84
+ type: Symbol
85
+ }
86
+ )
87
+ end
88
+ def to_hash
89
+ end
90
+
91
+ class Data < OpenAI::Internal::Type::BaseModel
92
+ OrHash = T.type_alias do
93
+ T.any(
94
+ OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent::Data,
95
+ OpenAI::Internal::AnyHash
96
+ )
97
+ end
98
+
99
+ # The ID of the environment.
100
+ sig { returns(String) }
101
+ attr_accessor :id
102
+
103
+ # Identifies the environment whose lifecycle changed.
104
+ sig do
105
+ params(
106
+
107
+ id: String
108
+ )
109
+ .returns(T.attached_class)
110
+ end
111
+ def self.new(
112
+
113
+ # The ID of the environment.
114
+
115
+ id:
116
+ )
117
+ end
118
+
119
+ sig do
120
+ override.returns(
121
+ {id: String}
122
+ )
123
+ end
124
+ def to_hash
125
+ end
126
+
127
+ end
128
+
129
+ end
130
+
131
+ end
132
+
133
+ end
134
+ end
@@ -0,0 +1,134 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+
6
+ module Webhooks
7
+
8
+ class AgentEnvironmentReadyWebhookEvent < OpenAI::Internal::Type::BaseModel
9
+
10
+ OrHash = T.type_alias do
11
+ T.any(
12
+ OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent,
13
+ OpenAI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # The unique ID of the event.
18
+ sig { returns(String) }
19
+ attr_accessor :id
20
+
21
+ # The Unix timestamp, in seconds, when the event was created.
22
+ sig { returns(Integer) }
23
+ attr_accessor :created_at
24
+
25
+ # Identifies the environment whose lifecycle changed.
26
+ sig { returns(OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent::Data) }
27
+ attr_reader :data
28
+
29
+ sig { params(data: OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent::Data::OrHash).void }
30
+ attr_writer :data
31
+
32
+ # The object type. Always `event`.
33
+ sig { returns(Symbol) }
34
+ attr_accessor :object
35
+
36
+ # The event type. Always `agent.environment.ready`.
37
+ sig { returns(Symbol) }
38
+ attr_accessor :type
39
+
40
+ # Sent when a prewarmed OpenAI-hosted environment finishes setup before being
41
+ # attached to a session.
42
+ sig do
43
+ params(
44
+
45
+ id: String,
46
+
47
+ created_at: Integer,
48
+
49
+ data: OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent::Data::OrHash,
50
+
51
+ object: Symbol,
52
+
53
+ type: Symbol
54
+ )
55
+ .returns(T.attached_class)
56
+ end
57
+ def self.new(
58
+
59
+ # The unique ID of the event.
60
+ id:,
61
+
62
+ # The Unix timestamp, in seconds, when the event was created.
63
+ created_at:,
64
+
65
+ # Identifies the environment whose lifecycle changed.
66
+ data:,
67
+
68
+ # The object type. Always `event`.
69
+ object: :event,
70
+
71
+ # The event type. Always `agent.environment.ready`.
72
+
73
+ type: :"agent.environment.ready"
74
+ )
75
+ end
76
+
77
+ sig do
78
+ override.returns(
79
+ {
80
+ id: String,
81
+ created_at: Integer,
82
+ data: OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent::Data,
83
+ object: Symbol,
84
+ type: Symbol
85
+ }
86
+ )
87
+ end
88
+ def to_hash
89
+ end
90
+
91
+ class Data < OpenAI::Internal::Type::BaseModel
92
+ OrHash = T.type_alias do
93
+ T.any(
94
+ OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent::Data,
95
+ OpenAI::Internal::AnyHash
96
+ )
97
+ end
98
+
99
+ # The ID of the environment.
100
+ sig { returns(String) }
101
+ attr_accessor :id
102
+
103
+ # Identifies the environment whose lifecycle changed.
104
+ sig do
105
+ params(
106
+
107
+ id: String
108
+ )
109
+ .returns(T.attached_class)
110
+ end
111
+ def self.new(
112
+
113
+ # The ID of the environment.
114
+
115
+ id:
116
+ )
117
+ end
118
+
119
+ sig do
120
+ override.returns(
121
+ {id: String}
122
+ )
123
+ end
124
+ def to_hash
125
+ end
126
+
127
+ end
128
+
129
+ end
130
+
131
+ end
132
+
133
+ end
134
+ end
@@ -5,13 +5,15 @@ module OpenAI
5
5
 
6
6
  module Webhooks
7
7
 
8
- # Sent when an agent session requires an action. Retrieve the session for action
9
- # details.
8
+ # Sent when setup fails for a prewarmed OpenAI-hosted environment before it is
9
+ # attached to a session.
10
10
  module UnwrapWebhookEvent
11
11
  extend OpenAI::Internal::Type::Union
12
12
 
13
13
  Variants = T.type_alias do
14
14
  T.any(
15
+ OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent,
16
+ OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent,
15
17
  OpenAI::Webhooks::AgentSessionActionRequiredWebhookEvent,
16
18
  OpenAI::Webhooks::AgentSessionCreatedWebhookEvent,
17
19
  OpenAI::Webhooks::AgentSessionFailedWebhookEvent,
@@ -121,6 +121,14 @@ module OpenAI
121
121
  )
122
122
  VIDEO_COMPLETED = T.let(:"video.completed", OpenAI::Webhooks::WebhookCreateParams::EventType::TaggedSymbol)
123
123
  VIDEO_FAILED = T.let(:"video.failed", OpenAI::Webhooks::WebhookCreateParams::EventType::TaggedSymbol)
124
+ AGENT_ENVIRONMENT_READY = T.let(
125
+ :"agent.environment.ready",
126
+ OpenAI::Webhooks::WebhookCreateParams::EventType::TaggedSymbol
127
+ )
128
+ AGENT_ENVIRONMENT_FAILED = T.let(
129
+ :"agent.environment.failed",
130
+ OpenAI::Webhooks::WebhookCreateParams::EventType::TaggedSymbol
131
+ )
124
132
  AGENT_SESSION_CREATED = T.let(
125
133
  :"agent.session.created",
126
134
  OpenAI::Webhooks::WebhookCreateParams::EventType::TaggedSymbol
@@ -106,6 +106,14 @@ module OpenAI
106
106
  )
107
107
  VIDEO_COMPLETED = T.let(:"video.completed", OpenAI::Webhooks::WebhookTestParams::EventType::TaggedSymbol)
108
108
  VIDEO_FAILED = T.let(:"video.failed", OpenAI::Webhooks::WebhookTestParams::EventType::TaggedSymbol)
109
+ AGENT_ENVIRONMENT_READY = T.let(
110
+ :"agent.environment.ready",
111
+ OpenAI::Webhooks::WebhookTestParams::EventType::TaggedSymbol
112
+ )
113
+ AGENT_ENVIRONMENT_FAILED = T.let(
114
+ :"agent.environment.failed",
115
+ OpenAI::Webhooks::WebhookTestParams::EventType::TaggedSymbol
116
+ )
109
117
  AGENT_SESSION_CREATED = T.let(
110
118
  :"agent.session.created",
111
119
  OpenAI::Webhooks::WebhookTestParams::EventType::TaggedSymbol
@@ -138,6 +138,14 @@ module OpenAI
138
138
  )
139
139
  VIDEO_COMPLETED = T.let(:"video.completed", OpenAI::Webhooks::WebhookUpdateParams::EventType::TaggedSymbol)
140
140
  VIDEO_FAILED = T.let(:"video.failed", OpenAI::Webhooks::WebhookUpdateParams::EventType::TaggedSymbol)
141
+ AGENT_ENVIRONMENT_READY = T.let(
142
+ :"agent.environment.ready",
143
+ OpenAI::Webhooks::WebhookUpdateParams::EventType::TaggedSymbol
144
+ )
145
+ AGENT_ENVIRONMENT_FAILED = T.let(
146
+ :"agent.environment.failed",
147
+ OpenAI::Webhooks::WebhookUpdateParams::EventType::TaggedSymbol
148
+ )
141
149
  AGENT_SESSION_CREATED = T.let(
142
150
  :"agent.session.created",
143
151
  OpenAI::Webhooks::WebhookUpdateParams::EventType::TaggedSymbol
@@ -15,6 +15,34 @@ module OpenAI
15
15
  sig { returns(OpenAI::Resources::Beta::Agents::Environments::Templates) }
16
16
  attr_reader :templates
17
17
 
18
+ # Creates an OpenAI-hosted environment before creating a session. Requires access
19
+ # to the prewarming beta.
20
+ sig {
21
+ params(
22
+ environment: OpenAI::Beta::Agents::EnvironmentCreateParams::Environment::OrHash,
23
+ vault_ids: T.nilable(T::Array[String]),
24
+ idempotency_key: String,
25
+ request_options: OpenAI::RequestOptions::OrHash
26
+ )
27
+ .returns(OpenAI::Beta::Agents::EnvironmentInfo)
28
+ }
29
+ def create(
30
+ # Body param: The required hosting type and its configuration.
31
+ environment:,
32
+ # Body param: The IDs of up to 10 vaults made available to an OpenAI-hosted
33
+ # environment.
34
+ vault_ids: nil,
35
+ # Header param: Deduplicates creation for 24 hours within the authenticated
36
+ # organization, project, and creator. Retry the same JSON parameters with the same
37
+ # key to retrieve the original environment in its current state. Different
38
+ # parameters or an incomplete hosted creation return 409. Deleted environments are
39
+ # not recreated. After retention expires, the key may create a new environment.
40
+ # Without this header, each request creates a new environment.
41
+ idempotency_key: nil,
42
+ request_options: {}
43
+ )
44
+ end
45
+
18
46
  # Retrieves an execution environment's connection status and safe installed
19
47
  # metadata. See
20
48
  # [environment lifecycle](https://developers.openai.com/api/docs/guides/agents-api/environments/lifecycle).
@@ -30,6 +58,31 @@ module OpenAI
30
58
  )
31
59
  end
32
60
 
61
+ # Lists OpenAI-hosted environments owned by the authenticated principal. Requires
62
+ # access to the prewarming beta.
63
+ sig {
64
+ params(
65
+ after: String,
66
+ limit: Integer,
67
+ order: OpenAI::Beta::Agents::EnvironmentListParams::Order::OrSymbol,
68
+ type: OpenAI::Beta::Agents::EnvironmentListParams::Type::OrSymbol,
69
+ request_options: OpenAI::RequestOptions::OrHash
70
+ )
71
+ .returns(OpenAI::Internal::CursorPage[OpenAI::Beta::Agents::EnvironmentInfo])
72
+ }
73
+ def list(
74
+ # Return environments after this environment ID in the selected order.
75
+ after: nil,
76
+ # The maximum number of environments to return, between 1 and 100. Defaults to 20.
77
+ limit: nil,
78
+ # The order in which environments are returned. Defaults to `desc`.
79
+ order: nil,
80
+ # The hosting type to list. Defaults to `openai_hosted`.
81
+ type: nil,
82
+ request_options: {}
83
+ )
84
+ end
85
+
33
86
  # @api private
34
87
  sig { params(client: OpenAI::Client).returns(T.attached_class) }
35
88
  def self.new(client:)
@@ -140,6 +140,8 @@ module OpenAI
140
140
  )
141
141
  .returns(
142
142
  T.any(
143
+ OpenAI::Webhooks::AgentEnvironmentFailedWebhookEvent,
144
+ OpenAI::Webhooks::AgentEnvironmentReadyWebhookEvent,
143
145
  OpenAI::Webhooks::AgentSessionActionRequiredWebhookEvent,
144
146
  OpenAI::Webhooks::AgentSessionCreatedWebhookEvent,
145
147
  OpenAI::Webhooks::AgentSessionFailedWebhookEvent,