openai 7.17.0 → 7.19.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.
- package/CHANGELOG.md +33 -0
- package/README.md +6 -3
- package/client.d.mts +2 -0
- package/client.d.mts.map +1 -1
- package/client.d.ts +2 -0
- package/client.d.ts.map +1 -1
- package/client.js +25 -7
- package/client.js.map +1 -1
- package/client.mjs +25 -7
- package/client.mjs.map +1 -1
- package/internal/parse.d.mts.map +1 -1
- package/internal/parse.d.ts.map +1 -1
- package/internal/parse.js +11 -7
- package/internal/parse.js.map +1 -1
- package/internal/parse.mjs +11 -7
- package/internal/parse.mjs.map +1 -1
- package/internal/utils/log.d.mts.map +1 -1
- package/internal/utils/log.d.ts.map +1 -1
- package/internal/utils/log.js +1 -0
- package/internal/utils/log.js.map +1 -1
- package/internal/utils/log.mjs +1 -0
- package/internal/utils/log.mjs.map +1 -1
- package/internal/ws.d.mts +7 -0
- package/internal/ws.d.mts.map +1 -1
- package/internal/ws.d.ts +7 -0
- package/internal/ws.d.ts.map +1 -1
- package/internal/ws.js +36 -2
- package/internal/ws.js.map +1 -1
- package/internal/ws.mjs +34 -3
- package/internal/ws.mjs.map +1 -1
- package/lib/responses/responses-websocket-lane.d.mts +63 -0
- package/lib/responses/responses-websocket-lane.d.mts.map +1 -0
- package/lib/responses/responses-websocket-lane.d.ts +63 -0
- package/lib/responses/responses-websocket-lane.d.ts.map +1 -0
- package/lib/responses/responses-websocket-lane.js +314 -0
- package/lib/responses/responses-websocket-lane.js.map +1 -0
- package/lib/responses/responses-websocket-lane.mjs +309 -0
- package/lib/responses/responses-websocket-lane.mjs.map +1 -0
- package/lib/responses/responses-websocket-session.d.mts +38 -0
- package/lib/responses/responses-websocket-session.d.mts.map +1 -0
- package/lib/responses/responses-websocket-session.d.ts +38 -0
- package/lib/responses/responses-websocket-session.d.ts.map +1 -0
- package/lib/responses/responses-websocket-session.js +268 -0
- package/lib/responses/responses-websocket-session.js.map +1 -0
- package/lib/responses/responses-websocket-session.mjs +263 -0
- package/lib/responses/responses-websocket-session.mjs.map +1 -0
- package/package.json +1 -1
- package/resources/admin/organization/admin-api-keys.d.mts +5 -1
- package/resources/admin/organization/admin-api-keys.d.mts.map +1 -1
- package/resources/admin/organization/admin-api-keys.d.ts +5 -1
- package/resources/admin/organization/admin-api-keys.d.ts.map +1 -1
- package/resources/beta/agents/agents.d.mts +6 -3
- package/resources/beta/agents/agents.d.mts.map +1 -1
- package/resources/beta/agents/agents.d.ts +6 -3
- package/resources/beta/agents/agents.d.ts.map +1 -1
- package/resources/beta/agents/agents.js.map +1 -1
- package/resources/beta/agents/agents.mjs.map +1 -1
- package/resources/beta/agents/environments/files.d.mts +5 -1
- package/resources/beta/agents/environments/files.d.mts.map +1 -1
- package/resources/beta/agents/environments/files.d.ts +5 -1
- package/resources/beta/agents/environments/files.d.ts.map +1 -1
- package/resources/beta/agents/environments/templates.d.mts +2 -4
- package/resources/beta/agents/environments/templates.d.mts.map +1 -1
- package/resources/beta/agents/environments/templates.d.ts +2 -4
- package/resources/beta/agents/environments/templates.d.ts.map +1 -1
- package/resources/beta/agents/sessions/artifacts.d.mts +9 -1
- package/resources/beta/agents/sessions/artifacts.d.mts.map +1 -1
- package/resources/beta/agents/sessions/artifacts.d.ts +9 -1
- package/resources/beta/agents/sessions/artifacts.d.ts.map +1 -1
- package/resources/beta/agents/sessions/events.d.mts +4 -1
- package/resources/beta/agents/sessions/events.d.mts.map +1 -1
- package/resources/beta/agents/sessions/events.d.ts +4 -1
- package/resources/beta/agents/sessions/events.d.ts.map +1 -1
- package/resources/beta/agents/sessions/events.js +4 -1
- package/resources/beta/agents/sessions/events.js.map +1 -1
- package/resources/beta/agents/sessions/events.mjs +4 -1
- package/resources/beta/agents/sessions/events.mjs.map +1 -1
- package/resources/beta/agents/sessions/sessions.d.mts +50 -3
- package/resources/beta/agents/sessions/sessions.d.mts.map +1 -1
- package/resources/beta/agents/sessions/sessions.d.ts +50 -3
- package/resources/beta/agents/sessions/sessions.d.ts.map +1 -1
- package/resources/beta/agents/sessions/sessions.js +5 -2
- package/resources/beta/agents/sessions/sessions.js.map +1 -1
- package/resources/beta/agents/sessions/sessions.mjs +5 -2
- package/resources/beta/agents/sessions/sessions.mjs.map +1 -1
- package/resources/beta/agents/vaults/credentials.d.mts +6 -1
- package/resources/beta/agents/vaults/credentials.d.mts.map +1 -1
- package/resources/beta/agents/vaults/credentials.d.ts +6 -1
- package/resources/beta/agents/vaults/credentials.d.ts.map +1 -1
- package/resources/beta/agents/vaults/vaults.d.mts +6 -1
- package/resources/beta/agents/vaults/vaults.d.mts.map +1 -1
- package/resources/beta/agents/vaults/vaults.d.ts +6 -1
- package/resources/beta/agents/vaults/vaults.d.ts.map +1 -1
- package/resources/beta/agents/vaults/vaults.js.map +1 -1
- package/resources/beta/agents/vaults/vaults.mjs.map +1 -1
- package/resources/beta/responses/responses.d.mts +21 -7
- package/resources/beta/responses/responses.d.mts.map +1 -1
- package/resources/beta/responses/responses.d.ts +21 -7
- package/resources/beta/responses/responses.d.ts.map +1 -1
- package/resources/beta/responses/responses.js.map +1 -1
- package/resources/beta/responses/responses.mjs.map +1 -1
- package/resources/beta/responses/ws-base.d.mts +4 -0
- package/resources/beta/responses/ws-base.d.mts.map +1 -1
- package/resources/beta/responses/ws-base.d.ts +4 -0
- package/resources/beta/responses/ws-base.d.ts.map +1 -1
- package/resources/beta/responses/ws-base.js +22 -1
- package/resources/beta/responses/ws-base.js.map +1 -1
- package/resources/beta/responses/ws-base.mjs +21 -2
- package/resources/beta/responses/ws-base.mjs.map +1 -1
- package/resources/beta/responses/ws.d.mts.map +1 -1
- package/resources/beta/responses/ws.d.ts.map +1 -1
- package/resources/beta/responses/ws.js +10 -6
- package/resources/beta/responses/ws.js.map +1 -1
- package/resources/beta/responses/ws.mjs +10 -6
- package/resources/beta/responses/ws.mjs.map +1 -1
- package/resources/index.d.mts +1 -1
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +1 -1
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/live/forks/ws.d.mts.map +1 -1
- package/resources/live/forks/ws.d.ts.map +1 -1
- package/resources/live/forks/ws.js +2 -4
- package/resources/live/forks/ws.js.map +1 -1
- package/resources/live/forks/ws.mjs +2 -4
- package/resources/live/forks/ws.mjs.map +1 -1
- package/resources/live/sideband/ws.d.mts.map +1 -1
- package/resources/live/sideband/ws.d.ts.map +1 -1
- package/resources/live/sideband/ws.js +2 -4
- package/resources/live/sideband/ws.js.map +1 -1
- package/resources/live/sideband/ws.mjs +2 -4
- package/resources/live/sideband/ws.mjs.map +1 -1
- package/resources/live/ws.d.mts.map +1 -1
- package/resources/live/ws.d.ts.map +1 -1
- package/resources/live/ws.js +2 -4
- package/resources/live/ws.js.map +1 -1
- package/resources/live/ws.mjs +2 -4
- package/resources/live/ws.mjs.map +1 -1
- package/resources/realtime/client-secrets.d.mts +7 -3
- package/resources/realtime/client-secrets.d.mts.map +1 -1
- package/resources/realtime/client-secrets.d.ts +7 -3
- package/resources/realtime/client-secrets.d.ts.map +1 -1
- package/resources/realtime/realtime.d.mts +17 -8
- package/resources/realtime/realtime.d.mts.map +1 -1
- package/resources/realtime/realtime.d.ts +17 -8
- package/resources/realtime/realtime.d.ts.map +1 -1
- package/resources/realtime/realtime.js.map +1 -1
- package/resources/realtime/realtime.mjs.map +1 -1
- package/resources/responses/responses.d.mts +18 -4
- package/resources/responses/responses.d.mts.map +1 -1
- package/resources/responses/responses.d.ts +18 -4
- package/resources/responses/responses.d.ts.map +1 -1
- package/resources/responses/responses.js.map +1 -1
- package/resources/responses/responses.mjs.map +1 -1
- package/resources/responses/ws-base.d.mts +6 -0
- package/resources/responses/ws-base.d.mts.map +1 -1
- package/resources/responses/ws-base.d.ts +6 -0
- package/resources/responses/ws-base.d.ts.map +1 -1
- package/resources/responses/ws-base.js +27 -4
- package/resources/responses/ws-base.js.map +1 -1
- package/resources/responses/ws-base.mjs +26 -5
- package/resources/responses/ws-base.mjs.map +1 -1
- package/resources/responses/ws.d.mts.map +1 -1
- package/resources/responses/ws.d.ts.map +1 -1
- package/resources/responses/ws.js +10 -6
- package/resources/responses/ws.js.map +1 -1
- package/resources/responses/ws.mjs +10 -6
- package/resources/responses/ws.mjs.map +1 -1
- package/resources/shared.d.mts +1 -1
- package/resources/shared.d.mts.map +1 -1
- package/resources/shared.d.ts +1 -1
- package/resources/shared.d.ts.map +1 -1
- package/resources/webhooks/event-types.d.mts +17 -0
- package/resources/webhooks/event-types.d.mts.map +1 -0
- package/resources/webhooks/event-types.d.ts +17 -0
- package/resources/webhooks/event-types.d.ts.map +1 -0
- package/resources/webhooks/event-types.js +21 -0
- package/resources/webhooks/event-types.js.map +1 -0
- package/resources/webhooks/event-types.mjs +17 -0
- package/resources/webhooks/event-types.mjs.map +1 -0
- package/resources/webhooks/index.d.mts +1 -0
- package/resources/webhooks/index.d.mts.map +1 -1
- package/resources/webhooks/index.d.ts +1 -0
- package/resources/webhooks/index.d.ts.map +1 -1
- package/resources/webhooks/index.js +3 -0
- package/resources/webhooks/index.js.map +1 -1
- package/resources/webhooks/index.mjs +1 -0
- package/resources/webhooks/index.mjs.map +1 -1
- package/resources/webhooks/webhooks.d.mts +282 -5
- package/resources/webhooks/webhooks.d.mts.map +1 -1
- package/resources/webhooks/webhooks.d.ts +282 -5
- package/resources/webhooks/webhooks.d.ts.map +1 -1
- package/resources/webhooks/webhooks.js +121 -0
- package/resources/webhooks/webhooks.js.map +1 -1
- package/resources/webhooks/webhooks.mjs +121 -0
- package/resources/webhooks/webhooks.mjs.map +1 -1
- package/src/client.ts +31 -10
- package/src/internal/parse.ts +14 -10
- package/src/internal/utils/log.ts +1 -0
- package/src/internal/ws.ts +37 -3
- package/src/lib/responses/responses-websocket-lane.ts +388 -0
- package/src/lib/responses/responses-websocket-session.ts +317 -0
- package/src/resources/admin/organization/admin-api-keys.ts +6 -1
- package/src/resources/beta/agents/agents.ts +7 -3
- package/src/resources/beta/agents/environments/files.ts +6 -1
- package/src/resources/beta/agents/environments/templates.ts +2 -4
- package/src/resources/beta/agents/sessions/artifacts.ts +11 -1
- package/src/resources/beta/agents/sessions/events.ts +4 -1
- package/src/resources/beta/agents/sessions/sessions.ts +56 -3
- package/src/resources/beta/agents/vaults/credentials.ts +7 -1
- package/src/resources/beta/agents/vaults/vaults.ts +7 -1
- package/src/resources/beta/responses/responses.ts +27 -3
- package/src/resources/beta/responses/ws-base.ts +24 -1
- package/src/resources/beta/responses/ws.ts +9 -6
- package/src/resources/index.ts +1 -1
- package/src/resources/live/forks/ws.ts +4 -5
- package/src/resources/live/sideband/ws.ts +4 -5
- package/src/resources/live/ws.ts +4 -5
- package/src/resources/realtime/client-secrets.ts +7 -3
- package/src/resources/realtime/realtime.ts +17 -8
- package/src/resources/responses/responses.ts +21 -3
- package/src/resources/responses/ws-base.ts +29 -4
- package/src/resources/responses/ws.ts +9 -6
- package/src/resources/shared.ts +2 -0
- package/src/resources/webhooks/api.md +40 -21
- package/src/resources/webhooks/event-types.ts +21 -0
- package/src/resources/webhooks/index.ts +1 -0
- package/src/resources/webhooks/webhooks.ts +455 -4
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -4,7 +4,6 @@ import * as WS from 'ws';
|
|
|
4
4
|
import { NodeWebSocket } from '../../../internal/ws-adapter-node';
|
|
5
5
|
import { ResponsesWSBase, type ResponsesWSBaseOptions } from './ws-base';
|
|
6
6
|
import { OpenAI } from '../../../client';
|
|
7
|
-
import { VERSION } from '../../../version';
|
|
8
7
|
import { OpenAIError } from '../../../core/error';
|
|
9
8
|
import { snapshotWebSocketCredentials } from '../../../internal/ws';
|
|
10
9
|
|
|
@@ -34,13 +33,17 @@ export class ResponsesWS extends ResponsesWSBase<NodeWebSocket> {
|
|
|
34
33
|
|
|
35
34
|
protected _createSocket(url: URL, authHeaders: Record<string, string>): NodeWebSocket {
|
|
36
35
|
const capturedAuthHeaders = { ...authHeaders };
|
|
36
|
+
const headers = new Map(Object.entries(this._client._buildWebSocketHeaders(capturedAuthHeaders)));
|
|
37
|
+
for (const [name, value] of Object.entries(this._wsOptions?.headers ?? {})) {
|
|
38
|
+
if (value === null) {
|
|
39
|
+
headers.delete(name.toLowerCase());
|
|
40
|
+
} else if (value !== undefined) {
|
|
41
|
+
headers.set(name.toLowerCase(), value);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
37
44
|
const socketOptions: ResponsesWSClientOptions = {
|
|
38
45
|
...this._wsOptions,
|
|
39
|
-
headers:
|
|
40
|
-
'User-Agent': `${this._client.constructor.name}/JS ${VERSION}`,
|
|
41
|
-
...capturedAuthHeaders,
|
|
42
|
-
...this._wsOptions?.headers,
|
|
43
|
-
},
|
|
46
|
+
headers: Object.fromEntries(headers),
|
|
44
47
|
followRedirects: false,
|
|
45
48
|
};
|
|
46
49
|
if (
|
package/src/resources/index.ts
CHANGED
|
@@ -4,7 +4,6 @@ import * as WS from 'ws';
|
|
|
4
4
|
import { NodeWebSocket } from '../../../internal/ws-adapter-node';
|
|
5
5
|
import { ForksWSBase, type ForksWSBaseOptions, type ForksWSParameters } from './ws-base';
|
|
6
6
|
import { OpenAI } from '../../../client';
|
|
7
|
-
import { VERSION } from '../../../version';
|
|
8
7
|
|
|
9
8
|
export type { WebSocketStreamOptions } from '../../../internal/ws';
|
|
10
9
|
|
|
@@ -36,10 +35,10 @@ export class ForksWS extends ForksWSBase<NodeWebSocket> {
|
|
|
36
35
|
const ws = new WS.WebSocket(url, {
|
|
37
36
|
...this._wsOptions,
|
|
38
37
|
headers: {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
...this._client._buildWebSocketHeaders(authHeaders),
|
|
39
|
+
...Object.fromEntries(
|
|
40
|
+
Object.entries(this._wsOptions?.headers ?? {}).map(([name, value]) => [name.toLowerCase(), value]),
|
|
41
|
+
),
|
|
43
42
|
},
|
|
44
43
|
followRedirects: false,
|
|
45
44
|
});
|
|
@@ -4,7 +4,6 @@ import * as WS from 'ws';
|
|
|
4
4
|
import { NodeWebSocket } from '../../../internal/ws-adapter-node';
|
|
5
5
|
import { SidebandWSBase, type SidebandWSBaseOptions, type SidebandWSParameters } from './ws-base';
|
|
6
6
|
import { OpenAI } from '../../../client';
|
|
7
|
-
import { VERSION } from '../../../version';
|
|
8
7
|
|
|
9
8
|
export type { WebSocketStreamOptions } from '../../../internal/ws';
|
|
10
9
|
|
|
@@ -36,10 +35,10 @@ export class SidebandWS extends SidebandWSBase<NodeWebSocket> {
|
|
|
36
35
|
const ws = new WS.WebSocket(url, {
|
|
37
36
|
...this._wsOptions,
|
|
38
37
|
headers: {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
...this._client._buildWebSocketHeaders(authHeaders),
|
|
39
|
+
...Object.fromEntries(
|
|
40
|
+
Object.entries(this._wsOptions?.headers ?? {}).map(([name, value]) => [name.toLowerCase(), value]),
|
|
41
|
+
),
|
|
43
42
|
},
|
|
44
43
|
followRedirects: false,
|
|
45
44
|
});
|
package/src/resources/live/ws.ts
CHANGED
|
@@ -4,7 +4,6 @@ import * as WS from 'ws';
|
|
|
4
4
|
import { NodeWebSocket } from '../../internal/ws-adapter-node';
|
|
5
5
|
import { LiveWSBase, type LiveWSBaseOptions } from './ws-base';
|
|
6
6
|
import { OpenAI } from '../../client';
|
|
7
|
-
import { VERSION } from '../../version';
|
|
8
7
|
|
|
9
8
|
export type { WebSocketStreamOptions } from '../../internal/ws';
|
|
10
9
|
|
|
@@ -32,10 +31,10 @@ export class LiveWS extends LiveWSBase<NodeWebSocket> {
|
|
|
32
31
|
const ws = new WS.WebSocket(url, {
|
|
33
32
|
...this._wsOptions,
|
|
34
33
|
headers: {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
...this._client._buildWebSocketHeaders(authHeaders),
|
|
35
|
+
...Object.fromEntries(
|
|
36
|
+
Object.entries(this._wsOptions?.headers ?? {}).map(([name, value]) => [name.toLowerCase(), value]),
|
|
37
|
+
),
|
|
39
38
|
},
|
|
40
39
|
followRedirects: false,
|
|
41
40
|
});
|
|
@@ -427,11 +427,15 @@ export namespace RealtimeSessionCreateResponse {
|
|
|
427
427
|
authorization?: string;
|
|
428
428
|
|
|
429
429
|
/**
|
|
430
|
-
* Identifier for service connectors, like those available in ChatGPT.
|
|
431
|
-
* `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
432
|
-
* service connectors
|
|
430
|
+
* @deprecated Identifier for service connectors, like those available in ChatGPT.
|
|
431
|
+
* One of `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
432
|
+
* about service connectors
|
|
433
433
|
* [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
434
434
|
*
|
|
435
|
+
* This field is deprecated for models released after September 1, 2026. Use
|
|
436
|
+
* `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
437
|
+
* through a Secure MCP Tunnel.
|
|
438
|
+
*
|
|
435
439
|
* Currently supported `connector_id` values are:
|
|
436
440
|
*
|
|
437
441
|
* - Dropbox: `connector_dropbox`
|
|
@@ -175,8 +175,9 @@ export interface ConversationItemAdded {
|
|
|
175
175
|
* "history" of the conversation and to add new items mid-stream, but has the
|
|
176
176
|
* current limitation that it cannot populate assistant audio messages.
|
|
177
177
|
*
|
|
178
|
-
* If successful, the server will
|
|
179
|
-
*
|
|
178
|
+
* If successful, the server will emit a `conversation.item.added` event and, when
|
|
179
|
+
* the item is finalized, a `conversation.item.done` event. Otherwise, an `error`
|
|
180
|
+
* event will be sent.
|
|
180
181
|
*/
|
|
181
182
|
export interface ConversationItemCreateEvent {
|
|
182
183
|
/**
|
|
@@ -2263,11 +2264,15 @@ export interface RealtimeResponseCreateMcpTool {
|
|
|
2263
2264
|
authorization?: string;
|
|
2264
2265
|
|
|
2265
2266
|
/**
|
|
2266
|
-
* Identifier for service connectors, like those available in ChatGPT.
|
|
2267
|
-
* `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
2268
|
-
* service connectors
|
|
2267
|
+
* @deprecated Identifier for service connectors, like those available in ChatGPT.
|
|
2268
|
+
* One of `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
2269
|
+
* about service connectors
|
|
2269
2270
|
* [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
2270
2271
|
*
|
|
2272
|
+
* This field is deprecated for models released after September 1, 2026. Use
|
|
2273
|
+
* `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
2274
|
+
* through a Secure MCP Tunnel.
|
|
2275
|
+
*
|
|
2271
2276
|
* Currently supported `connector_id` values are:
|
|
2272
2277
|
*
|
|
2273
2278
|
* - Dropbox: `connector_dropbox`
|
|
@@ -3317,11 +3322,15 @@ export namespace RealtimeToolsConfigUnion {
|
|
|
3317
3322
|
authorization?: string;
|
|
3318
3323
|
|
|
3319
3324
|
/**
|
|
3320
|
-
* Identifier for service connectors, like those available in ChatGPT.
|
|
3321
|
-
* `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
3322
|
-
* service connectors
|
|
3325
|
+
* @deprecated Identifier for service connectors, like those available in ChatGPT.
|
|
3326
|
+
* One of `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
3327
|
+
* about service connectors
|
|
3323
3328
|
* [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
3324
3329
|
*
|
|
3330
|
+
* This field is deprecated for models released after September 1, 2026. Use
|
|
3331
|
+
* `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
3332
|
+
* through a Secure MCP Tunnel.
|
|
3333
|
+
*
|
|
3325
3334
|
* Currently supported `connector_id` values are:
|
|
3326
3335
|
*
|
|
3327
3336
|
* - Dropbox: `connector_dropbox`
|
|
@@ -9110,6 +9110,12 @@ export namespace ResponsesClientEvent {
|
|
|
9110
9110
|
*/
|
|
9111
9111
|
mode?: 'implicit' | 'explicit';
|
|
9112
9112
|
|
|
9113
|
+
/**
|
|
9114
|
+
* Prepares the prompt cache without generating output. Defaults to `false`. When
|
|
9115
|
+
* set to `true`, overrides the `generate` field to `false`.
|
|
9116
|
+
*/
|
|
9117
|
+
prewarm?: boolean;
|
|
9118
|
+
|
|
9113
9119
|
/**
|
|
9114
9120
|
* The minimum lifetime applied to every implicit and explicit cache breakpoint
|
|
9115
9121
|
* written by the request. Defaults to `30m`, which is currently the only supported
|
|
@@ -10074,11 +10080,15 @@ export namespace Tool {
|
|
|
10074
10080
|
authorization?: string;
|
|
10075
10081
|
|
|
10076
10082
|
/**
|
|
10077
|
-
* Identifier for service connectors, like those available in ChatGPT.
|
|
10078
|
-
* `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
10079
|
-
* service connectors
|
|
10083
|
+
* @deprecated Identifier for service connectors, like those available in ChatGPT.
|
|
10084
|
+
* One of `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more
|
|
10085
|
+
* about service connectors
|
|
10080
10086
|
* [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
|
|
10081
10087
|
*
|
|
10088
|
+
* This field is deprecated for models released after September 1, 2026. Use
|
|
10089
|
+
* `server_url` to connect to a remote MCP server, or `tunnel_id` to connect
|
|
10090
|
+
* through a Secure MCP Tunnel.
|
|
10091
|
+
*
|
|
10082
10092
|
* Currently supported `connector_id` values are:
|
|
10083
10093
|
*
|
|
10084
10094
|
* - Dropbox: `connector_dropbox`
|
|
@@ -11133,6 +11143,12 @@ export namespace ResponseCreateParams {
|
|
|
11133
11143
|
*/
|
|
11134
11144
|
mode?: 'implicit' | 'explicit';
|
|
11135
11145
|
|
|
11146
|
+
/**
|
|
11147
|
+
* Prepares the prompt cache without generating output. Defaults to `false`. When
|
|
11148
|
+
* set to `true`, overrides the `generate` field to `false`.
|
|
11149
|
+
*/
|
|
11150
|
+
prewarm?: boolean;
|
|
11151
|
+
|
|
11136
11152
|
/**
|
|
11137
11153
|
* The minimum lifetime applied to every implicit and explicit cache breakpoint
|
|
11138
11154
|
* written by the request. Defaults to `30m`, which is currently the only supported
|
|
@@ -11315,6 +11331,8 @@ export interface ResponseCompactParams {
|
|
|
11315
11331
|
| 'gpt-4o-2024-11-20'
|
|
11316
11332
|
| 'gpt-4o-2024-08-06'
|
|
11317
11333
|
| 'gpt-4o-2024-05-13'
|
|
11334
|
+
| 'gpt-audio-mini'
|
|
11335
|
+
| 'gpt-audio-mini-2025-12-15'
|
|
11318
11336
|
| 'gpt-4o-audio-preview'
|
|
11319
11337
|
| 'gpt-4o-audio-preview-2024-10-01'
|
|
11320
11338
|
| 'gpt-4o-audio-preview-2024-12-17'
|
|
@@ -7,6 +7,8 @@ import { type WebSocketLike, ReadyState } from '../../internal/ws-adapter';
|
|
|
7
7
|
import {
|
|
8
8
|
SendQueue,
|
|
9
9
|
getMaxBufferedEvents,
|
|
10
|
+
recordWebSocketError,
|
|
11
|
+
rawByteLength,
|
|
10
12
|
type WebSocketStreamOptions,
|
|
11
13
|
flattenRawData,
|
|
12
14
|
isRecoverableClose,
|
|
@@ -19,6 +21,21 @@ import * as ResponsesAPI from './responses';
|
|
|
19
21
|
import { OpenAI } from '../../client';
|
|
20
22
|
import { OpenAIError } from '../../core/error';
|
|
21
23
|
|
|
24
|
+
const webSocketEventPayloads = new WeakMap<ResponsesAPI.ResponsesServerEvent, string>();
|
|
25
|
+
const webSocketEventBytes = new WeakMap<ResponsesAPI.ResponsesServerEvent, number>();
|
|
26
|
+
|
|
27
|
+
/** Uses immutable wire size, or JSON accounting for a custom emitter. @internal */
|
|
28
|
+
export function getWebSocketEventBytes(event: ResponsesAPI.ResponsesServerEvent): number {
|
|
29
|
+
return webSocketEventBytes.get(event) ?? rawByteLength(JSON.stringify(event));
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/** Original JSON, available only during synchronous event notification.
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
export function getWebSocketEventPayload(event: ResponsesAPI.ResponsesServerEvent): string | undefined {
|
|
36
|
+
return webSocketEventPayloads.get(event);
|
|
37
|
+
}
|
|
38
|
+
|
|
22
39
|
export interface ResponsesWSReconnectOptions {
|
|
23
40
|
/**
|
|
24
41
|
* Called before each reconnect attempt. Return an object with
|
|
@@ -440,6 +457,7 @@ export abstract class ResponsesWSBase<TSocket extends WebSocketLike> extends Res
|
|
|
440
457
|
}
|
|
441
458
|
|
|
442
459
|
const eventType: string = event.type;
|
|
460
|
+
const errorEvent = event.type === 'error' ? event : undefined;
|
|
443
461
|
const reservedEventType =
|
|
444
462
|
eventType === 'raw' ||
|
|
445
463
|
eventType === 'close' ||
|
|
@@ -453,17 +471,24 @@ export abstract class ResponsesWSBase<TSocket extends WebSocketLike> extends Res
|
|
|
453
471
|
return;
|
|
454
472
|
}
|
|
455
473
|
|
|
456
|
-
|
|
474
|
+
webSocketEventBytes.set(event, rawByteLength(data));
|
|
475
|
+
webSocketEventPayloads.set(event, text);
|
|
476
|
+
try {
|
|
477
|
+
this._emit('event', event);
|
|
478
|
+
} finally {
|
|
479
|
+
webSocketEventPayloads.delete(event);
|
|
480
|
+
}
|
|
457
481
|
|
|
458
|
-
if (
|
|
459
|
-
this._onError(
|
|
482
|
+
if (errorEvent) {
|
|
483
|
+
this._onError(errorEvent);
|
|
460
484
|
} else {
|
|
461
485
|
// @ts-ignore TS isn't smart enough to get the relationship right here
|
|
462
|
-
this._emit(
|
|
486
|
+
this._emit(eventType, event);
|
|
463
487
|
}
|
|
464
488
|
});
|
|
465
489
|
|
|
466
490
|
socket.on('error', (err: Error) => {
|
|
491
|
+
recordWebSocketError(socket, err);
|
|
467
492
|
// Suppress transient errors during reconnection — the retry loop
|
|
468
493
|
// already handles them and will surface a close if retries exhaust.
|
|
469
494
|
if (this._isReconnecting) return;
|
|
@@ -4,7 +4,6 @@ import * as WS from 'ws';
|
|
|
4
4
|
import { NodeWebSocket } from '../../internal/ws-adapter-node';
|
|
5
5
|
import { ResponsesWSBase, type ResponsesWSBaseOptions } from './ws-base';
|
|
6
6
|
import { OpenAI } from '../../client';
|
|
7
|
-
import { VERSION } from '../../version';
|
|
8
7
|
import { OpenAIError } from '../../core/error';
|
|
9
8
|
import { snapshotWebSocketCredentials } from '../../internal/ws';
|
|
10
9
|
|
|
@@ -34,13 +33,17 @@ export class ResponsesWS extends ResponsesWSBase<NodeWebSocket> {
|
|
|
34
33
|
|
|
35
34
|
protected _createSocket(url: URL, authHeaders: Record<string, string>): NodeWebSocket {
|
|
36
35
|
const capturedAuthHeaders = { ...authHeaders };
|
|
36
|
+
const headers = new Map(Object.entries(this._client._buildWebSocketHeaders(capturedAuthHeaders)));
|
|
37
|
+
for (const [name, value] of Object.entries(this._wsOptions?.headers ?? {})) {
|
|
38
|
+
if (value === null) {
|
|
39
|
+
headers.delete(name.toLowerCase());
|
|
40
|
+
} else if (value !== undefined) {
|
|
41
|
+
headers.set(name.toLowerCase(), value);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
37
44
|
const socketOptions: ResponsesWSClientOptions = {
|
|
38
45
|
...this._wsOptions,
|
|
39
|
-
headers:
|
|
40
|
-
'User-Agent': `${this._client.constructor.name}/JS ${VERSION}`,
|
|
41
|
-
...capturedAuthHeaders,
|
|
42
|
-
...this._wsOptions?.headers,
|
|
43
|
-
},
|
|
46
|
+
headers: Object.fromEntries(headers),
|
|
44
47
|
followRedirects: false,
|
|
45
48
|
};
|
|
46
49
|
if (
|
package/src/resources/shared.ts
CHANGED
|
@@ -2,27 +2,46 @@
|
|
|
2
2
|
|
|
3
3
|
Types:
|
|
4
4
|
|
|
5
|
-
- <code><a href="./src/resources/webhooks.ts">BatchCancelledWebhookEvent</a></code>
|
|
6
|
-
- <code><a href="./src/resources/webhooks.ts">BatchCompletedWebhookEvent</a></code>
|
|
7
|
-
- <code><a href="./src/resources/webhooks.ts">BatchExpiredWebhookEvent</a></code>
|
|
8
|
-
- <code><a href="./src/resources/webhooks.ts">BatchFailedWebhookEvent</a></code>
|
|
9
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
10
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
11
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
12
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
13
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
14
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
15
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
16
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
17
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
18
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
19
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
20
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
21
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
22
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
23
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
24
|
-
- <code><a href="./src/resources/webhooks.ts">
|
|
5
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">BatchCancelledWebhookEvent</a></code>
|
|
6
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">BatchCompletedWebhookEvent</a></code>
|
|
7
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">BatchExpiredWebhookEvent</a></code>
|
|
8
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">BatchFailedWebhookEvent</a></code>
|
|
9
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">DeletedWebhookEndpoint</a></code>
|
|
10
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">EvalRunCanceledWebhookEvent</a></code>
|
|
11
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">EvalRunFailedWebhookEvent</a></code>
|
|
12
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">EvalRunSucceededWebhookEvent</a></code>
|
|
13
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">FineTuningJobCancelledWebhookEvent</a></code>
|
|
14
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">FineTuningJobFailedWebhookEvent</a></code>
|
|
15
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">FineTuningJobSucceededWebhookEvent</a></code>
|
|
16
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">LiveCallIncomingWebhookEvent</a></code>
|
|
17
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">LiveTransportIncomingWebhookEvent</a></code>
|
|
18
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">RealtimeCallIncomingWebhookEvent</a></code>
|
|
19
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">ResponseCancelledWebhookEvent</a></code>
|
|
20
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">ResponseCompletedWebhookEvent</a></code>
|
|
21
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">ResponseFailedWebhookEvent</a></code>
|
|
22
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">ResponseIncompleteWebhookEvent</a></code>
|
|
23
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">SafetyAlertCreatedWebhookEvent</a></code>
|
|
24
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">SafetyOrgAlertCreatedWebhookEvent</a></code>
|
|
25
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">UnwrapWebhookEvent</a></code>
|
|
26
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">WebhookEndpoint</a></code>
|
|
27
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">WebhookEndpointList</a></code>
|
|
28
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">WebhookEndpointTestResult</a></code>
|
|
29
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">WebhookEndpointWithSecret</a></code>
|
|
30
|
+
- <code><a href="./src/resources/webhooks/webhooks.ts">WebhookEventTypeList</a></code>
|
|
25
31
|
|
|
26
32
|
Methods:
|
|
27
33
|
|
|
28
|
-
- <code>client.webhooks.<a href="./src/resources/webhooks.ts">
|
|
34
|
+
- <code title="post /webhook_endpoints">client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">create</a>({ ...params }) -> WebhookEndpointWithSecret</code>
|
|
35
|
+
- <code title="get /webhook_endpoints/{webhook_endpoint_id}">client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">retrieve</a>(webhookEndpointID) -> WebhookEndpoint</code>
|
|
36
|
+
- <code title="post /webhook_endpoints/{webhook_endpoint_id}">client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">update</a>(webhookEndpointID, { ...params }) -> WebhookEndpoint</code>
|
|
37
|
+
- <code title="get /webhook_endpoints">client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">list</a>({ ...params }) -> WebhookEndpointsPage</code>
|
|
38
|
+
- <code title="delete /webhook_endpoints/{webhook_endpoint_id}">client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">delete</a>(webhookEndpointID) -> DeletedWebhookEndpoint</code>
|
|
39
|
+
- <code title="post /webhook_endpoints/{webhook_endpoint_id}/rotate_secret">client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">rotateSecret</a>(webhookEndpointID, { ...params }) -> WebhookEndpointWithSecret</code>
|
|
40
|
+
- <code title="post /webhook_endpoints/{webhook_endpoint_id}/test">client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">test</a>(webhookEndpointID, { ...params }) -> WebhookEndpointTestResult</code>
|
|
41
|
+
- <code>client.webhooks.<a href="./src/resources/webhooks/webhooks.ts">unwrap</a>(body) -> void</code>
|
|
42
|
+
|
|
43
|
+
## EventTypes
|
|
44
|
+
|
|
45
|
+
Methods:
|
|
46
|
+
|
|
47
|
+
- <code title="get /webhook_event_types">client.webhooks.eventTypes.<a href="./src/resources/webhooks/event-types.ts">list</a>() -> WebhookEventTypeList</code>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Castiron. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
import { APIResource } from '../../core/resource';
|
|
4
|
+
import * as WebhooksAPI from './webhooks';
|
|
5
|
+
import { APIPromise } from '../../core/api-promise';
|
|
6
|
+
import { RequestOptions } from '../../internal/request-options';
|
|
7
|
+
|
|
8
|
+
export class EventTypes extends APIResource {
|
|
9
|
+
/**
|
|
10
|
+
* Returns webhook event types visible to the authenticated project.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* const webhookEventTypeList =
|
|
15
|
+
* await client.webhooks.eventTypes.list();
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
list(options?: RequestOptions): APIPromise<WebhooksAPI.WebhookEventTypeList> {
|
|
19
|
+
return this._client.get('/webhook_event_types', { ...options, __security: { bearerAuth: true } });
|
|
20
|
+
}
|
|
21
|
+
}
|