openai 0.90.0 → 0.92.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +31 -0
- data/README.md +1 -1
- data/examples/realtime/README.md +8 -0
- data/examples/realtime/browser/README.md +167 -0
- data/examples/realtime/browser/index.html +19 -0
- data/examples/realtime/browser/page.js +21 -0
- data/examples/realtime/browser/peer.js +180 -0
- data/examples/realtime/browser/server.rb +281 -0
- data/examples/responses/websocket_workflows.rb +66 -6
- data/lib/openai/auth/workload_identity.rb +5 -1
- data/lib/openai/auth/workload_identity_auth.rb +2 -2
- data/lib/openai/auth/x509_token_exchange.rb +1 -1
- data/lib/openai/helpers/local_audio/process.rb +1 -1
- data/lib/openai/helpers/responses_websocket/connection.rb +2 -1
- data/lib/openai/helpers/responses_websocket/session.rb +551 -0
- data/lib/openai/helpers/responses_websocket.rb +1 -0
- data/lib/openai/helpers/sorbet.rb +1 -1
- data/lib/openai/helpers/websocket/async_websocket_transport.rb +6 -1
- data/lib/openai/internal/poller.rb +2 -2
- data/lib/openai/internal/transport/base_client.rb +1 -1
- data/lib/openai/internal/util.rb +1 -1
- data/lib/openai/models/beta/agents/session_update_params.rb +108 -1
- data/lib/openai/models/beta/beta_response.rb +9 -3
- data/lib/openai/models/beta/beta_response_compaction_compacting_event.rb +75 -0
- data/lib/openai/models/beta/beta_response_stream_event.rb +4 -1
- data/lib/openai/models/beta/beta_responses_client_event.rb +25 -4
- data/lib/openai/models/beta/beta_responses_server_event.rb +39 -1
- data/lib/openai/models/beta/beta_tool.rb +16 -0
- data/lib/openai/models/beta/response_compact_params.rb +9 -3
- data/lib/openai/models/beta/response_create_params.rb +21 -4
- data/lib/openai/models/beta/session_turn_error.rb +3 -0
- data/lib/openai/models/chat_model.rb +3 -1
- data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +16 -0
- data/lib/openai/models/realtime/realtime_session_create_response.rb +16 -0
- data/lib/openai/models/realtime/realtime_tools_config_union.rb +16 -0
- data/lib/openai/models/responses/response_compact_params.rb +9 -3
- data/lib/openai/models/responses/response_compaction_compacting_event.rb +49 -0
- data/lib/openai/models/responses/response_create_params.rb +12 -1
- data/lib/openai/models/responses/response_stream_event.rb +4 -1
- data/lib/openai/models/responses/responses_client_event.rb +12 -1
- data/lib/openai/models/responses/responses_server_event.rb +36 -1
- data/lib/openai/models/responses/tool.rb +16 -0
- data/lib/openai/models/webhooks/deleted_webhook_endpoint.rb +38 -0
- data/lib/openai/models/webhooks/event_type_list_params.rb +16 -0
- data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +6 -8
- data/lib/openai/models/webhooks/webhook_create_params.rb +73 -0
- data/lib/openai/models/webhooks/webhook_delete_params.rb +22 -0
- data/lib/openai/models/webhooks/webhook_endpoint.rb +85 -0
- data/lib/openai/models/webhooks/webhook_endpoint_list.rb +55 -0
- data/lib/openai/models/webhooks/webhook_endpoint_test_result.rb +58 -0
- data/lib/openai/models/webhooks/webhook_endpoint_with_secret.rb +105 -0
- data/lib/openai/models/webhooks/webhook_event_type_list.rb +28 -0
- data/lib/openai/models/webhooks/webhook_list_params.rb +34 -0
- data/lib/openai/models/webhooks/webhook_retrieve_params.rb +22 -0
- data/lib/openai/models/webhooks/webhook_rotate_secret_params.rb +34 -0
- data/lib/openai/models/webhooks/webhook_test_params.rb +59 -0
- data/lib/openai/models/webhooks/webhook_update_params.rb +80 -0
- data/lib/openai/resources/beta/agents/sessions.rb +6 -2
- data/lib/openai/resources/beta/responses.rb +2 -2
- data/lib/openai/resources/responses.rb +2 -2
- data/lib/openai/resources/webhooks/event_types.rb +35 -0
- data/lib/openai/resources/webhooks.rb +195 -0
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +17 -0
- data/rbi/openai/helpers/responses_websocket/connection.rbi +5 -0
- data/rbi/openai/helpers/responses_websocket/session.rbi +206 -0
- data/rbi/openai/models/beta/agents/session_update_params.rbi +178 -0
- data/rbi/openai/models/beta/beta_response.rbi +6 -1
- data/rbi/openai/models/beta/beta_response_compaction_compacting_event.rbi +136 -0
- data/rbi/openai/models/beta/beta_response_stream_event.rbi +1 -0
- data/rbi/openai/models/beta/beta_responses_client_event.rbi +27 -4
- data/rbi/openai/models/beta/beta_responses_server_event.rbi +77 -0
- data/rbi/openai/models/beta/beta_tool.rbi +12 -0
- data/rbi/openai/models/beta/response_compact_params.rbi +6 -1
- data/rbi/openai/models/beta/response_create_params.rbi +21 -1
- data/rbi/openai/models/beta/session_turn_error.rbi +6 -0
- data/rbi/openai/models/chat_model.rbi +3 -1
- data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +12 -0
- data/rbi/openai/models/realtime/realtime_session_create_response.rbi +12 -0
- data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +12 -0
- data/rbi/openai/models/responses/response_compact_params.rbi +6 -1
- data/rbi/openai/models/responses/response_compaction_compacting_event.rbi +78 -0
- data/rbi/openai/models/responses/response_create_params.rbi +15 -0
- data/rbi/openai/models/responses/response_stream_event.rbi +1 -0
- data/rbi/openai/models/responses/responses_client_event.rbi +15 -0
- data/rbi/openai/models/responses/responses_server_event.rbi +71 -0
- data/rbi/openai/models/responses/tool.rbi +12 -0
- data/rbi/openai/models/webhooks/deleted_webhook_endpoint.rbi +67 -0
- data/rbi/openai/models/webhooks/event_type_list_params.rbi +37 -0
- data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +6 -8
- data/rbi/openai/models/webhooks/webhook_create_params.rbi +139 -0
- data/rbi/openai/models/webhooks/webhook_delete_params.rbi +53 -0
- data/rbi/openai/models/webhooks/webhook_endpoint.rbi +126 -0
- data/rbi/openai/models/webhooks/webhook_endpoint_list.rbi +91 -0
- data/rbi/openai/models/webhooks/webhook_endpoint_test_result.rbi +87 -0
- data/rbi/openai/models/webhooks/webhook_endpoint_with_secret.rbi +138 -0
- data/rbi/openai/models/webhooks/webhook_event_type_list.rbi +58 -0
- data/rbi/openai/models/webhooks/webhook_list_params.rbi +67 -0
- data/rbi/openai/models/webhooks/webhook_retrieve_params.rbi +53 -0
- data/rbi/openai/models/webhooks/webhook_rotate_secret_params.rbi +71 -0
- data/rbi/openai/models/webhooks/webhook_test_params.rbi +124 -0
- data/rbi/openai/models/webhooks/webhook_update_params.rbi +156 -0
- data/rbi/openai/resources/beta/agents/sessions.rbi +5 -1
- data/rbi/openai/resources/webhooks/event_types.rbi +24 -0
- data/rbi/openai/resources/webhooks.rbi +126 -0
- data/responses-websocket.md +117 -10
- data/sig/openai/helpers/responses_websocket/connection.rbs +5 -0
- data/sig/openai/helpers/responses_websocket/session.rbs +123 -0
- data/sig/openai/models/beta/agents/session_update_params.rbs +99 -0
- data/sig/openai/models/beta/beta_response.rbs +6 -2
- data/sig/openai/models/beta/beta_response_compaction_compacting_event.rbs +58 -0
- data/sig/openai/models/beta/beta_response_stream_event.rbs +1 -0
- data/sig/openai/models/beta/beta_responses_client_event.rbs +13 -2
- data/sig/openai/models/beta/beta_responses_server_event.rbs +35 -0
- data/sig/openai/models/beta/response_compact_params.rbs +6 -2
- data/sig/openai/models/beta/response_create_params.rbs +13 -2
- data/sig/openai/models/beta/session_turn_error.rbs +4 -0
- data/sig/openai/models/chat_model.rbs +6 -2
- data/sig/openai/models/responses/response_compact_params.rbs +6 -2
- data/sig/openai/models/responses/response_compaction_compacting_event.rbs +37 -0
- data/sig/openai/models/responses/response_create_params.rbs +7 -0
- data/sig/openai/models/responses/response_stream_event.rbs +1 -0
- data/sig/openai/models/responses/responses_client_event.rbs +7 -0
- data/sig/openai/models/responses/responses_server_event.rbs +32 -0
- data/sig/openai/models/webhooks/deleted_webhook_endpoint.rbs +28 -0
- data/sig/openai/models/webhooks/event_type_list_params.rbs +16 -0
- data/sig/openai/models/webhooks/webhook_create_params.rbs +83 -0
- data/sig/openai/models/webhooks/webhook_delete_params.rbs +25 -0
- data/sig/openai/models/webhooks/webhook_endpoint.rbs +59 -0
- data/sig/openai/models/webhooks/webhook_endpoint_list.rbs +42 -0
- data/sig/openai/models/webhooks/webhook_endpoint_test_result.rbs +42 -0
- data/sig/openai/models/webhooks/webhook_endpoint_with_secret.rbs +64 -0
- data/sig/openai/models/webhooks/webhook_event_type_list.rbs +17 -0
- data/sig/openai/models/webhooks/webhook_list_params.rbs +35 -0
- data/sig/openai/models/webhooks/webhook_retrieve_params.rbs +25 -0
- data/sig/openai/models/webhooks/webhook_rotate_secret_params.rbs +35 -0
- data/sig/openai/models/webhooks/webhook_test_params.rbs +78 -0
- data/sig/openai/models/webhooks/webhook_update_params.rbs +96 -0
- data/sig/openai/resources/beta/agents/sessions.rbs +1 -0
- data/sig/openai/resources/webhooks/event_types.rbs +13 -0
- data/sig/openai/resources/webhooks.rbs +45 -0
- metadata +61 -2
|
@@ -67,6 +67,12 @@ module OpenAI
|
|
|
67
67
|
# The organization has reached a usage, plan, or billing limit.
|
|
68
68
|
USAGE_LIMIT_EXCEEDED = T.let(:usage_limit_exceeded, OpenAI::Beta::SessionTurnError::Code::TaggedSymbol)
|
|
69
69
|
|
|
70
|
+
# The organization has no API credits remaining.
|
|
71
|
+
CREDIT_BALANCE_EXHAUSTED = T.let(
|
|
72
|
+
:credit_balance_exhausted,
|
|
73
|
+
OpenAI::Beta::SessionTurnError::Code::TaggedSymbol
|
|
74
|
+
)
|
|
75
|
+
|
|
70
76
|
# The request exceeds the available rate limit.
|
|
71
77
|
RATE_LIMIT_EXCEEDED = T.let(:rate_limit_exceeded, OpenAI::Beta::SessionTurnError::Code::TaggedSymbol)
|
|
72
78
|
|
|
@@ -29,7 +29,6 @@ module OpenAI
|
|
|
29
29
|
GPT_5_1 = T.let(:"gpt-5.1", OpenAI::ChatModel::TaggedSymbol)
|
|
30
30
|
GPT_5_1_2025_11_13 = T.let(:"gpt-5.1-2025-11-13", OpenAI::ChatModel::TaggedSymbol)
|
|
31
31
|
GPT_5_1_CODEX = T.let(:"gpt-5.1-codex", OpenAI::ChatModel::TaggedSymbol)
|
|
32
|
-
GPT_5_1_MINI = T.let(:"gpt-5.1-mini", OpenAI::ChatModel::TaggedSymbol)
|
|
33
32
|
GPT_5_1_CHAT_LATEST = T.let(:"gpt-5.1-chat-latest", OpenAI::ChatModel::TaggedSymbol)
|
|
34
33
|
GPT_5 = T.let(:"gpt-5", OpenAI::ChatModel::TaggedSymbol)
|
|
35
34
|
GPT_5_MINI = T.let(:"gpt-5-mini", OpenAI::ChatModel::TaggedSymbol)
|
|
@@ -60,6 +59,8 @@ module OpenAI
|
|
|
60
59
|
GPT_4O_2024_11_20 = T.let(:"gpt-4o-2024-11-20", OpenAI::ChatModel::TaggedSymbol)
|
|
61
60
|
GPT_4O_2024_08_06 = T.let(:"gpt-4o-2024-08-06", OpenAI::ChatModel::TaggedSymbol)
|
|
62
61
|
GPT_4O_2024_05_13 = T.let(:"gpt-4o-2024-05-13", OpenAI::ChatModel::TaggedSymbol)
|
|
62
|
+
GPT_AUDIO_MINI = T.let(:"gpt-audio-mini", OpenAI::ChatModel::TaggedSymbol)
|
|
63
|
+
GPT_AUDIO_MINI_2025_12_15 = T.let(:"gpt-audio-mini-2025-12-15", OpenAI::ChatModel::TaggedSymbol)
|
|
63
64
|
GPT_4O_AUDIO_PREVIEW = T.let(:"gpt-4o-audio-preview", OpenAI::ChatModel::TaggedSymbol)
|
|
64
65
|
GPT_4O_AUDIO_PREVIEW_2024_10_01 = T.let(:"gpt-4o-audio-preview-2024-10-01", OpenAI::ChatModel::TaggedSymbol)
|
|
65
66
|
GPT_4O_AUDIO_PREVIEW_2024_12_17 = T.let(:"gpt-4o-audio-preview-2024-12-17", OpenAI::ChatModel::TaggedSymbol)
|
|
@@ -99,6 +100,7 @@ module OpenAI
|
|
|
99
100
|
GPT_3_5_TURBO_1106 = T.let(:"gpt-3.5-turbo-1106", OpenAI::ChatModel::TaggedSymbol)
|
|
100
101
|
GPT_3_5_TURBO_0125 = T.let(:"gpt-3.5-turbo-0125", OpenAI::ChatModel::TaggedSymbol)
|
|
101
102
|
GPT_3_5_TURBO_16K_0613 = T.let(:"gpt-3.5-turbo-16k-0613", OpenAI::ChatModel::TaggedSymbol)
|
|
103
|
+
GPT_5_1_MINI = T.let(:"gpt-5.1-mini", OpenAI::ChatModel::TaggedSymbol)
|
|
102
104
|
|
|
103
105
|
sig { override.returns(T::Array[OpenAI::ChatModel::TaggedSymbol]) }
|
|
104
106
|
def self.values
|
|
@@ -50,6 +50,10 @@ module OpenAI
|
|
|
50
50
|
# service connectors
|
|
51
51
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
52
52
|
#
|
|
53
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
54
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
55
|
+
# through a Secure MCP Tunnel.
|
|
56
|
+
#
|
|
53
57
|
# Currently supported `connector_id` values are:
|
|
54
58
|
#
|
|
55
59
|
# - Dropbox: `connector_dropbox`
|
|
@@ -179,6 +183,10 @@ module OpenAI
|
|
|
179
183
|
# service connectors
|
|
180
184
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
181
185
|
#
|
|
186
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
187
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
188
|
+
# through a Secure MCP Tunnel.
|
|
189
|
+
#
|
|
182
190
|
# Currently supported `connector_id` values are:
|
|
183
191
|
#
|
|
184
192
|
# - Dropbox: `connector_dropbox`
|
|
@@ -350,6 +358,10 @@ module OpenAI
|
|
|
350
358
|
# service connectors
|
|
351
359
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
352
360
|
#
|
|
361
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
362
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
363
|
+
# through a Secure MCP Tunnel.
|
|
364
|
+
#
|
|
353
365
|
# Currently supported `connector_id` values are:
|
|
354
366
|
#
|
|
355
367
|
# - Dropbox: `connector_dropbox`
|
|
@@ -1320,6 +1320,10 @@ module OpenAI
|
|
|
1320
1320
|
# service connectors
|
|
1321
1321
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
1322
1322
|
#
|
|
1323
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
1324
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
1325
|
+
# through a Secure MCP Tunnel.
|
|
1326
|
+
#
|
|
1323
1327
|
# Currently supported `connector_id` values are:
|
|
1324
1328
|
#
|
|
1325
1329
|
# - Dropbox: `connector_dropbox`
|
|
@@ -1453,6 +1457,10 @@ module OpenAI
|
|
|
1453
1457
|
# service connectors
|
|
1454
1458
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
1455
1459
|
#
|
|
1460
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
1461
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
1462
|
+
# through a Secure MCP Tunnel.
|
|
1463
|
+
#
|
|
1456
1464
|
# Currently supported `connector_id` values are:
|
|
1457
1465
|
#
|
|
1458
1466
|
# - Dropbox: `connector_dropbox`
|
|
@@ -1637,6 +1645,10 @@ module OpenAI
|
|
|
1637
1645
|
# service connectors
|
|
1638
1646
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
1639
1647
|
#
|
|
1648
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
1649
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
1650
|
+
# through a Secure MCP Tunnel.
|
|
1651
|
+
#
|
|
1640
1652
|
# Currently supported `connector_id` values are:
|
|
1641
1653
|
#
|
|
1642
1654
|
# - Dropbox: `connector_dropbox`
|
|
@@ -64,6 +64,10 @@ module OpenAI
|
|
|
64
64
|
# service connectors
|
|
65
65
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
66
66
|
#
|
|
67
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
68
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
69
|
+
# through a Secure MCP Tunnel.
|
|
70
|
+
#
|
|
67
71
|
# Currently supported `connector_id` values are:
|
|
68
72
|
#
|
|
69
73
|
# - Dropbox: `connector_dropbox`
|
|
@@ -193,6 +197,10 @@ module OpenAI
|
|
|
193
197
|
# service connectors
|
|
194
198
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
195
199
|
#
|
|
200
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
201
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
202
|
+
# through a Secure MCP Tunnel.
|
|
203
|
+
#
|
|
196
204
|
# Currently supported `connector_id` values are:
|
|
197
205
|
#
|
|
198
206
|
# - Dropbox: `connector_dropbox`
|
|
@@ -366,6 +374,10 @@ module OpenAI
|
|
|
366
374
|
# service connectors
|
|
367
375
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
368
376
|
#
|
|
377
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
378
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
379
|
+
# through a Secure MCP Tunnel.
|
|
380
|
+
#
|
|
369
381
|
# Currently supported `connector_id` values are:
|
|
370
382
|
#
|
|
371
383
|
# - Dropbox: `connector_dropbox`
|
|
@@ -258,7 +258,6 @@ module OpenAI
|
|
|
258
258
|
OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol
|
|
259
259
|
)
|
|
260
260
|
GPT_5_1_CODEX = T.let(:"gpt-5.1-codex", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
261
|
-
GPT_5_1_MINI = T.let(:"gpt-5.1-mini", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
262
261
|
GPT_5_1_CHAT_LATEST = T.let(
|
|
263
262
|
:"gpt-5.1-chat-latest",
|
|
264
263
|
OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol
|
|
@@ -319,6 +318,11 @@ module OpenAI
|
|
|
319
318
|
GPT_4O_2024_11_20 = T.let(:"gpt-4o-2024-11-20", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
320
319
|
GPT_4O_2024_08_06 = T.let(:"gpt-4o-2024-08-06", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
321
320
|
GPT_4O_2024_05_13 = T.let(:"gpt-4o-2024-05-13", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
321
|
+
GPT_AUDIO_MINI = T.let(:"gpt-audio-mini", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
322
|
+
GPT_AUDIO_MINI_2025_12_15 = T.let(
|
|
323
|
+
:"gpt-audio-mini-2025-12-15",
|
|
324
|
+
OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol
|
|
325
|
+
)
|
|
322
326
|
GPT_4O_AUDIO_PREVIEW = T.let(
|
|
323
327
|
:"gpt-4o-audio-preview",
|
|
324
328
|
OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol
|
|
@@ -415,6 +419,7 @@ module OpenAI
|
|
|
415
419
|
:"gpt-3.5-turbo-16k-0613",
|
|
416
420
|
OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol
|
|
417
421
|
)
|
|
422
|
+
GPT_5_1_MINI = T.let(:"gpt-5.1-mini", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
418
423
|
O1_PRO = T.let(:"o1-pro", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
419
424
|
O1_PRO_2025_03_19 = T.let(:"o1-pro-2025-03-19", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
420
425
|
O3_PRO = T.let(:"o3-pro", OpenAI::Responses::ResponseCompactParams::Model::TaggedSymbol)
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Responses
|
|
7
|
+
|
|
8
|
+
class ResponseCompactionCompactingEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Responses::ResponseCompactionCompactingEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The ID of the compaction output item.
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :item_id
|
|
20
|
+
|
|
21
|
+
# The index of the compaction output item.
|
|
22
|
+
sig { returns(Integer) }
|
|
23
|
+
attr_accessor :output_index
|
|
24
|
+
|
|
25
|
+
# The sequence number of the event that was emitted.
|
|
26
|
+
sig { returns(Integer) }
|
|
27
|
+
attr_accessor :sequence_number
|
|
28
|
+
|
|
29
|
+
# The type of the event, always `response.compaction.compacting`.
|
|
30
|
+
sig { returns(Symbol) }
|
|
31
|
+
attr_accessor :type
|
|
32
|
+
|
|
33
|
+
# Emitted when new summary content is sampled for a compaction trigger. Contains
|
|
34
|
+
# no summary content.
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
|
|
38
|
+
item_id: String,
|
|
39
|
+
|
|
40
|
+
output_index: Integer,
|
|
41
|
+
|
|
42
|
+
sequence_number: Integer,
|
|
43
|
+
|
|
44
|
+
type: Symbol
|
|
45
|
+
)
|
|
46
|
+
.returns(T.attached_class)
|
|
47
|
+
end
|
|
48
|
+
def self.new(
|
|
49
|
+
|
|
50
|
+
# The ID of the compaction output item.
|
|
51
|
+
item_id:,
|
|
52
|
+
|
|
53
|
+
# The index of the compaction output item.
|
|
54
|
+
output_index:,
|
|
55
|
+
|
|
56
|
+
# The sequence number of the event that was emitted.
|
|
57
|
+
sequence_number:,
|
|
58
|
+
|
|
59
|
+
# The type of the event, always `response.compaction.compacting`.
|
|
60
|
+
|
|
61
|
+
type: :"response.compaction.compacting"
|
|
62
|
+
)
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
sig do
|
|
66
|
+
override.returns(
|
|
67
|
+
{item_id: String, output_index: Integer, sequence_number: Integer, type: Symbol}
|
|
68
|
+
)
|
|
69
|
+
end
|
|
70
|
+
def to_hash
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
end
|
|
78
|
+
end
|
|
@@ -1176,6 +1176,14 @@ module OpenAI
|
|
|
1176
1176
|
sig { params(mode: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions::Mode::OrSymbol).void }
|
|
1177
1177
|
attr_writer :mode
|
|
1178
1178
|
|
|
1179
|
+
# Prepares the prompt cache without generating output. Defaults to `false`. When
|
|
1180
|
+
# set to `true`, overrides the `generate` field to `false`.
|
|
1181
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
1182
|
+
attr_reader :prewarm
|
|
1183
|
+
|
|
1184
|
+
sig { params(prewarm: T::Boolean).void }
|
|
1185
|
+
attr_writer :prewarm
|
|
1186
|
+
|
|
1179
1187
|
# The minimum lifetime applied to every implicit and explicit cache breakpoint
|
|
1180
1188
|
# written by the request. Defaults to `30m`, which is currently the only supported
|
|
1181
1189
|
# value. The backend may retain cache entries for longer.
|
|
@@ -1201,6 +1209,8 @@ module OpenAI
|
|
|
1201
1209
|
|
|
1202
1210
|
mode: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions::Mode::OrSymbol,
|
|
1203
1211
|
|
|
1212
|
+
prewarm: T::Boolean,
|
|
1213
|
+
|
|
1204
1214
|
ttl: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions::Ttl::OrSymbol
|
|
1205
1215
|
)
|
|
1206
1216
|
.returns(T.attached_class)
|
|
@@ -1219,6 +1229,10 @@ module OpenAI
|
|
|
1219
1229
|
# request does not use prompt caching.
|
|
1220
1230
|
mode: nil,
|
|
1221
1231
|
|
|
1232
|
+
# Prepares the prompt cache without generating output. Defaults to `false`. When
|
|
1233
|
+
# set to `true`, overrides the `generate` field to `false`.
|
|
1234
|
+
prewarm: nil,
|
|
1235
|
+
|
|
1222
1236
|
# The minimum lifetime applied to every implicit and explicit cache breakpoint
|
|
1223
1237
|
# written by the request. Defaults to `30m`, which is currently the only supported
|
|
1224
1238
|
# value. The backend may retain cache entries for longer.
|
|
@@ -1232,6 +1246,7 @@ module OpenAI
|
|
|
1232
1246
|
{
|
|
1233
1247
|
comparison_response_id: T.nilable(String),
|
|
1234
1248
|
mode: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions::Mode::OrSymbol,
|
|
1249
|
+
prewarm: T::Boolean,
|
|
1235
1250
|
ttl: OpenAI::Responses::ResponseCreateParams::PromptCacheOptions::Ttl::OrSymbol
|
|
1236
1251
|
}
|
|
1237
1252
|
)
|
|
@@ -20,6 +20,7 @@ module OpenAI
|
|
|
20
20
|
OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent,
|
|
21
21
|
OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent,
|
|
22
22
|
OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent,
|
|
23
|
+
OpenAI::Responses::ResponseCompactionCompactingEvent,
|
|
23
24
|
OpenAI::Responses::ResponseCompletedEvent,
|
|
24
25
|
OpenAI::Responses::ResponseContentPartAddedEvent,
|
|
25
26
|
OpenAI::Responses::ResponseContentPartDoneEvent,
|
|
@@ -1327,6 +1327,14 @@ module OpenAI
|
|
|
1327
1327
|
}
|
|
1328
1328
|
attr_writer :mode
|
|
1329
1329
|
|
|
1330
|
+
# Prepares the prompt cache without generating output. Defaults to `false`. When
|
|
1331
|
+
# set to `true`, overrides the `generate` field to `false`.
|
|
1332
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
1333
|
+
attr_reader :prewarm
|
|
1334
|
+
|
|
1335
|
+
sig { params(prewarm: T::Boolean).void }
|
|
1336
|
+
attr_writer :prewarm
|
|
1337
|
+
|
|
1330
1338
|
# The minimum lifetime applied to every implicit and explicit cache breakpoint
|
|
1331
1339
|
# written by the request. Defaults to `30m`, which is currently the only supported
|
|
1332
1340
|
# value. The backend may retain cache entries for longer.
|
|
@@ -1359,6 +1367,8 @@ module OpenAI
|
|
|
1359
1367
|
|
|
1360
1368
|
mode: OpenAI::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::Mode::OrSymbol,
|
|
1361
1369
|
|
|
1370
|
+
prewarm: T::Boolean,
|
|
1371
|
+
|
|
1362
1372
|
ttl: OpenAI::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::Ttl::OrSymbol
|
|
1363
1373
|
)
|
|
1364
1374
|
.returns(T.attached_class)
|
|
@@ -1377,6 +1387,10 @@ module OpenAI
|
|
|
1377
1387
|
# request does not use prompt caching.
|
|
1378
1388
|
mode: nil,
|
|
1379
1389
|
|
|
1390
|
+
# Prepares the prompt cache without generating output. Defaults to `false`. When
|
|
1391
|
+
# set to `true`, overrides the `generate` field to `false`.
|
|
1392
|
+
prewarm: nil,
|
|
1393
|
+
|
|
1380
1394
|
# The minimum lifetime applied to every implicit and explicit cache breakpoint
|
|
1381
1395
|
# written by the request. Defaults to `30m`, which is currently the only supported
|
|
1382
1396
|
# value. The backend may retain cache entries for longer.
|
|
@@ -1392,6 +1406,7 @@ module OpenAI
|
|
|
1392
1406
|
mode: T.nilable(
|
|
1393
1407
|
OpenAI::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::Mode::OrSymbol
|
|
1394
1408
|
),
|
|
1409
|
+
prewarm: T.nilable(T::Boolean),
|
|
1395
1410
|
ttl: T.nilable(
|
|
1396
1411
|
OpenAI::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::Ttl::OrSymbol
|
|
1397
1412
|
)
|
|
@@ -24,6 +24,7 @@ module OpenAI
|
|
|
24
24
|
OpenAI::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsCompleted,
|
|
25
25
|
OpenAI::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallInWsProgress,
|
|
26
26
|
OpenAI::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsInterpreting,
|
|
27
|
+
OpenAI::Responses::ResponsesServerEvent::ResponseCompactionWsCompacting,
|
|
27
28
|
OpenAI::Responses::ResponsesServerEvent::ResponseWsCompleted,
|
|
28
29
|
OpenAI::Responses::ResponsesServerEvent::ResponseContentPartWsAdded,
|
|
29
30
|
OpenAI::Responses::ResponsesServerEvent::ResponseContentPartWsDone,
|
|
@@ -658,6 +659,76 @@ module OpenAI
|
|
|
658
659
|
|
|
659
660
|
end
|
|
660
661
|
|
|
662
|
+
class ResponseCompactionWsCompacting < OpenAI::Models::Responses::ResponseCompactionCompactingEvent
|
|
663
|
+
OrHash = T.type_alias do
|
|
664
|
+
T.any(
|
|
665
|
+
OpenAI::Responses::ResponsesServerEvent::ResponseCompactionWsCompacting,
|
|
666
|
+
OpenAI::Internal::AnyHash
|
|
667
|
+
)
|
|
668
|
+
end
|
|
669
|
+
|
|
670
|
+
# The WebSocket lane that emitted this event. This field is present when the
|
|
671
|
+
# originating `response.create` event supplied a `stream_id`.
|
|
672
|
+
sig { returns(T.nilable(String)) }
|
|
673
|
+
attr_reader :stream_id
|
|
674
|
+
|
|
675
|
+
sig { params(stream_id: String).void }
|
|
676
|
+
attr_writer :stream_id
|
|
677
|
+
|
|
678
|
+
# Emitted when new summary content is sampled for a compaction trigger. Contains
|
|
679
|
+
# no summary content.
|
|
680
|
+
sig do
|
|
681
|
+
params(
|
|
682
|
+
|
|
683
|
+
item_id: String,
|
|
684
|
+
|
|
685
|
+
output_index: Integer,
|
|
686
|
+
|
|
687
|
+
sequence_number: Integer,
|
|
688
|
+
|
|
689
|
+
stream_id: String,
|
|
690
|
+
|
|
691
|
+
type: Symbol
|
|
692
|
+
)
|
|
693
|
+
.returns(T.attached_class)
|
|
694
|
+
end
|
|
695
|
+
def self.new(
|
|
696
|
+
|
|
697
|
+
# The ID of the compaction output item.
|
|
698
|
+
item_id:,
|
|
699
|
+
|
|
700
|
+
# The index of the compaction output item.
|
|
701
|
+
output_index:,
|
|
702
|
+
|
|
703
|
+
# The sequence number of the event that was emitted.
|
|
704
|
+
sequence_number:,
|
|
705
|
+
|
|
706
|
+
# The WebSocket lane that emitted this event. This field is present when the
|
|
707
|
+
# originating `response.create` event supplied a `stream_id`.
|
|
708
|
+
stream_id: nil,
|
|
709
|
+
|
|
710
|
+
# The type of the event, always `response.compaction.compacting`.
|
|
711
|
+
|
|
712
|
+
type: :"response.compaction.compacting"
|
|
713
|
+
)
|
|
714
|
+
end
|
|
715
|
+
|
|
716
|
+
sig do
|
|
717
|
+
override.returns(
|
|
718
|
+
{
|
|
719
|
+
item_id: String,
|
|
720
|
+
output_index: Integer,
|
|
721
|
+
sequence_number: Integer,
|
|
722
|
+
type: Symbol,
|
|
723
|
+
stream_id: T.nilable(String)
|
|
724
|
+
}
|
|
725
|
+
)
|
|
726
|
+
end
|
|
727
|
+
def to_hash
|
|
728
|
+
end
|
|
729
|
+
|
|
730
|
+
end
|
|
731
|
+
|
|
661
732
|
class ResponseWsCompleted < OpenAI::Models::Responses::ResponseCompletedEvent
|
|
662
733
|
OrHash = T.type_alias do
|
|
663
734
|
T.any(
|
|
@@ -70,6 +70,10 @@ module OpenAI
|
|
|
70
70
|
# service connectors
|
|
71
71
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
72
72
|
#
|
|
73
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
74
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
75
|
+
# through a Secure MCP Tunnel.
|
|
76
|
+
#
|
|
73
77
|
# Currently supported `connector_id` values are:
|
|
74
78
|
#
|
|
75
79
|
# - Dropbox: `connector_dropbox`
|
|
@@ -194,6 +198,10 @@ module OpenAI
|
|
|
194
198
|
# service connectors
|
|
195
199
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
196
200
|
#
|
|
201
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
202
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
203
|
+
# through a Secure MCP Tunnel.
|
|
204
|
+
#
|
|
197
205
|
# Currently supported `connector_id` values are:
|
|
198
206
|
#
|
|
199
207
|
# - Dropbox: `connector_dropbox`
|
|
@@ -358,6 +366,10 @@ module OpenAI
|
|
|
358
366
|
# service connectors
|
|
359
367
|
# [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
360
368
|
#
|
|
369
|
+
# This field is deprecated for models released after September 1, 2026. Use
|
|
370
|
+
# `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
371
|
+
# through a Secure MCP Tunnel.
|
|
372
|
+
#
|
|
361
373
|
# Currently supported `connector_id` values are:
|
|
362
374
|
#
|
|
363
375
|
# - Dropbox: `connector_dropbox`
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Webhooks
|
|
7
|
+
|
|
8
|
+
class DeletedWebhookEndpoint < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Webhooks::DeletedWebhookEndpoint,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The ID of the deleted webhook endpoint.
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :id
|
|
20
|
+
|
|
21
|
+
# Whether the endpoint was deleted.
|
|
22
|
+
sig { returns(T::Boolean) }
|
|
23
|
+
attr_accessor :deleted
|
|
24
|
+
|
|
25
|
+
# The object type, which is always webhook_endpoint.deleted.
|
|
26
|
+
sig { returns(Symbol) }
|
|
27
|
+
attr_accessor :object
|
|
28
|
+
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
|
|
32
|
+
id: String,
|
|
33
|
+
|
|
34
|
+
deleted: T::Boolean,
|
|
35
|
+
|
|
36
|
+
object: Symbol
|
|
37
|
+
)
|
|
38
|
+
.returns(T.attached_class)
|
|
39
|
+
end
|
|
40
|
+
def self.new(
|
|
41
|
+
|
|
42
|
+
# The ID of the deleted webhook endpoint.
|
|
43
|
+
id:,
|
|
44
|
+
|
|
45
|
+
# Whether the endpoint was deleted.
|
|
46
|
+
deleted:,
|
|
47
|
+
|
|
48
|
+
# The object type, which is always webhook_endpoint.deleted.
|
|
49
|
+
|
|
50
|
+
object: :"webhook_endpoint.deleted"
|
|
51
|
+
)
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
sig do
|
|
55
|
+
override.returns(
|
|
56
|
+
{id: String, deleted: T::Boolean, object: Symbol}
|
|
57
|
+
)
|
|
58
|
+
end
|
|
59
|
+
def to_hash
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
end
|
|
67
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Webhooks
|
|
7
|
+
|
|
8
|
+
class EventTypeListParams < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
|
11
|
+
include OpenAI::Internal::Type::RequestParameters
|
|
12
|
+
|
|
13
|
+
OrHash = T.type_alias do
|
|
14
|
+
T.any(
|
|
15
|
+
OpenAI::Webhooks::EventTypeListParams,
|
|
16
|
+
OpenAI::Internal::AnyHash
|
|
17
|
+
)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
sig do
|
|
21
|
+
params(request_options: OpenAI::RequestOptions::OrHash).returns(
|
|
22
|
+
T.attached_class
|
|
23
|
+
)
|
|
24
|
+
end
|
|
25
|
+
def self.new(request_options: {})
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
sig { override.returns({request_options: OpenAI::RequestOptions}) }
|
|
29
|
+
def to_hash
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -100,10 +100,9 @@ module OpenAI
|
|
|
100
100
|
)
|
|
101
101
|
end
|
|
102
102
|
|
|
103
|
-
# The
|
|
104
|
-
#
|
|
105
|
-
#
|
|
106
|
-
# Realtime or Live API.
|
|
103
|
+
# The ID of the pending SIP call. Pass this value unchanged when accepting or
|
|
104
|
+
# rejecting the call through the Realtime API. For the Live API, use the
|
|
105
|
+
# `session_id` from `live.transport.incoming` instead.
|
|
107
106
|
sig { returns(String) }
|
|
108
107
|
attr_accessor :call_id
|
|
109
108
|
|
|
@@ -125,10 +124,9 @@ module OpenAI
|
|
|
125
124
|
end
|
|
126
125
|
def self.new(
|
|
127
126
|
|
|
128
|
-
# The
|
|
129
|
-
#
|
|
130
|
-
#
|
|
131
|
-
# Realtime or Live API.
|
|
127
|
+
# The ID of the pending SIP call. Pass this value unchanged when accepting or
|
|
128
|
+
# rejecting the call through the Realtime API. For the Live API, use the
|
|
129
|
+
# `session_id` from `live.transport.incoming` instead.
|
|
132
130
|
call_id:,
|
|
133
131
|
|
|
134
132
|
# Headers from the SIP INVITE, excluding SIP authorization headers. Retained
|