Full Code of openai/openai-node for AI

master d95158f4b01a cached
522 files
2.8 MB
756.5k tokens
2617 symbols
1 requests
Download .txt
Showing preview only (3,015K chars total). Download the full file or copy to clipboard to get everything.
Repository: openai/openai-node
Branch: master
Commit: d95158f4b01a
Files: 522
Total size: 2.8 MB

Directory structure:
gitextract_h79a7hmg/

├── .devcontainer/
│   └── devcontainer.json
├── .github/
│   ├── CODEOWNERS
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.yml
│   │   ├── config.yml
│   │   └── feature_request.yml
│   ├── pull_request_template.md
│   └── workflows/
│       ├── ci.yml
│       ├── create-releases.yml
│       ├── detect-breaking-changes.yml
│       ├── publish-jsr.yml
│       ├── publish-npm.yml
│       └── release-doctor.yml
├── .gitignore
├── .prettierignore
├── .prettierrc.json
├── .release-please-manifest.json
├── .stats.yml
├── Brewfile
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── MIGRATION.md
├── README.md
├── SECURITY.md
├── api.md
├── azure.md
├── bin/
│   ├── check-release-environment
│   ├── cli
│   ├── migration-config.json
│   ├── publish-jsr
│   └── publish-npm
├── ecosystem-tests/
│   ├── browser-direct-import/
│   │   ├── .gitignore
│   │   ├── package.json
│   │   ├── public/
│   │   │   ├── index.html
│   │   │   └── index.js
│   │   ├── src/
│   │   │   └── test.ts
│   │   └── tsconfig.json
│   ├── bun/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── bun.lockb
│   │   ├── openai.test.ts
│   │   ├── package.json
│   │   └── tsconfig.json
│   ├── cli.ts
│   ├── cloudflare-worker/
│   │   ├── .editorconfig
│   │   ├── .prettierrc
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── uploadWebApiTestCases.ts
│   │   │   └── worker.ts
│   │   ├── tests/
│   │   │   └── test.js
│   │   ├── tsconfig.check.json
│   │   ├── tsconfig.json
│   │   └── wrangler.toml
│   ├── deno/
│   │   ├── deno.jsonc
│   │   └── main_test.ts
│   ├── node-js/
│   │   ├── package.json
│   │   └── test.js
│   ├── node-ts-cjs/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   ├── test-jsdom.ts
│   │   │   └── test-node.ts
│   │   ├── tsconfig.json
│   │   └── tsconfig.nodenext.json
│   ├── node-ts-cjs-auto/
│   │   ├── jest.config.cjs
│   │   ├── moduleResolution/
│   │   │   ├── node/
│   │   │   │   └── type-tests.ts
│   │   │   └── nodenext/
│   │   │       └── type-tests.ts
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   └── tsconfig.nodenext.json
│   ├── node-ts-cjs-web/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   ├── test-jsdom.ts
│   │   │   └── test-node.ts
│   │   ├── tsconfig.json
│   │   ├── tsconfig.nodenext.json
│   │   └── types-test.ts
│   ├── node-ts-esm/
│   │   ├── iitm.js
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   ├── test-esnext.ts
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   └── tsconfig.noderesolution.json
│   ├── node-ts-esm-auto/
│   │   ├── esnext-type-tests.ts
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   └── tsconfig.json
│   ├── node-ts-esm-web/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   ├── tsconfig.noderesolution.json
│   │   └── types-test.ts
│   ├── node-ts4.5-jest28/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   └── tsconfig.json
│   ├── proxy.ts
│   ├── ts-browser-webpack/
│   │   ├── .babelrc
│   │   ├── .gitignore
│   │   ├── package.json
│   │   ├── public/
│   │   │   └── index.html
│   │   ├── src/
│   │   │   ├── index.ts
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   └── webpack.config.js
│   └── vercel-edge/
│       ├── .gitignore
│       ├── jest.config.cjs
│       ├── next.config.js
│       ├── package.json
│       ├── src/
│       │   ├── pages/
│       │   │   ├── _app.tsx
│       │   │   ├── _document.tsx
│       │   │   ├── ai-streaming.tsx
│       │   │   ├── api/
│       │   │   │   ├── edge-test.ts
│       │   │   │   ├── node-test.ts
│       │   │   │   ├── query-params.ts
│       │   │   │   ├── response.ts
│       │   │   │   ├── streaming.ts
│       │   │   │   ├── transcribe.ts
│       │   │   │   └── vercel-ai-streaming.ts
│       │   │   └── index.tsx
│       │   └── uploadWebApiTestCases.ts
│       ├── tests/
│       │   └── test.ts
│       └── tsconfig.json
├── eslint.config.mjs
├── examples/
│   ├── .gitignore
│   ├── .keep
│   ├── assistant-stream-raw.ts
│   ├── assistant-stream.ts
│   ├── assistants.ts
│   ├── audio.ts
│   ├── azure/
│   │   ├── chat.ts
│   │   └── realtime/
│   │       ├── websocket.ts
│   │       └── ws.ts
│   ├── chat-params-types.ts
│   ├── demo.ts
│   ├── errors.ts
│   ├── fine-tuning-data.jsonl
│   ├── fine-tuning.ts
│   ├── function-call-diy.ts
│   ├── function-call-stream-raw.ts
│   ├── function-call-stream.ts
│   ├── function-call.ts
│   ├── image-stream.ts
│   ├── logprobs.ts
│   ├── package.json
│   ├── parsing-run-tools.ts
│   ├── parsing-stream.ts
│   ├── parsing-tools-stream.ts
│   ├── parsing-tools.ts
│   ├── parsing.ts
│   ├── raw-response.ts
│   ├── realtime/
│   │   ├── websocket.ts
│   │   └── ws.ts
│   ├── responses/
│   │   ├── stream.ts
│   │   ├── stream_background.ts
│   │   ├── streaming-tools.ts
│   │   ├── structured-outputs-tools.ts
│   │   ├── structured-outputs.ts
│   │   └── websocket.ts
│   ├── speech-to-text.ts
│   ├── stream-to-client-browser.ts
│   ├── stream-to-client-express.ts
│   ├── stream-to-client-next.ts
│   ├── stream-to-client-raw.ts
│   ├── stream.ts
│   ├── text-to-speech.ts
│   ├── tool-call-helpers-zod.ts
│   ├── tool-call-helpers.ts
│   ├── tool-calls-stream.ts
│   ├── tsconfig.json
│   ├── types.ts
│   └── ui-generation.ts
├── helpers.md
├── jest.config.ts
├── jsr.json
├── jsr.json.orig
├── package.json
├── realtime.md
├── release-please-config.json
├── scripts/
│   ├── bootstrap
│   ├── build
│   ├── build-deno
│   ├── detect-breaking-changes
│   ├── fast-format
│   ├── format
│   ├── lint
│   ├── mock
│   ├── test
│   └── utils/
│       ├── attw-report.cjs
│       ├── check-is-in-git-install.sh
│       ├── check-version.cjs
│       ├── convert-jsr-readme.cjs
│       ├── fix-index-exports.cjs
│       ├── git-swap.sh
│       ├── make-dist-package-json.cjs
│       ├── postprocess-files.cjs
│       └── upload-artifact.sh
├── src/
│   ├── _vendor/
│   │   ├── partial-json-parser/
│   │   │   ├── README.md
│   │   │   └── parser.ts
│   │   └── zod-to-json-schema/
│   │       ├── LICENSE
│   │       ├── Options.ts
│   │       ├── README.md
│   │       ├── Refs.ts
│   │       ├── errorMessages.ts
│   │       ├── index.ts
│   │       ├── parseDef.ts
│   │       ├── parsers/
│   │       │   ├── any.ts
│   │       │   ├── array.ts
│   │       │   ├── bigint.ts
│   │       │   ├── boolean.ts
│   │       │   ├── branded.ts
│   │       │   ├── catch.ts
│   │       │   ├── date.ts
│   │       │   ├── default.ts
│   │       │   ├── effects.ts
│   │       │   ├── enum.ts
│   │       │   ├── intersection.ts
│   │       │   ├── literal.ts
│   │       │   ├── map.ts
│   │       │   ├── nativeEnum.ts
│   │       │   ├── never.ts
│   │       │   ├── null.ts
│   │       │   ├── nullable.ts
│   │       │   ├── number.ts
│   │       │   ├── object.ts
│   │       │   ├── optional.ts
│   │       │   ├── pipeline.ts
│   │       │   ├── promise.ts
│   │       │   ├── readonly.ts
│   │       │   ├── record.ts
│   │       │   ├── set.ts
│   │       │   ├── string.ts
│   │       │   ├── tuple.ts
│   │       │   ├── undefined.ts
│   │       │   ├── union.ts
│   │       │   └── unknown.ts
│   │       ├── util.ts
│   │       └── zodToJsonSchema.ts
│   ├── api-promise.ts
│   ├── azure.ts
│   ├── beta/
│   │   └── realtime/
│   │       ├── index.ts
│   │       ├── internal-base.ts
│   │       ├── websocket.ts
│   │       └── ws.ts
│   ├── client.ts
│   ├── core/
│   │   ├── EventEmitter.ts
│   │   ├── README.md
│   │   ├── api-promise.ts
│   │   ├── error.ts
│   │   ├── pagination.ts
│   │   ├── resource.ts
│   │   ├── streaming.ts
│   │   └── uploads.ts
│   ├── error.ts
│   ├── helpers/
│   │   ├── audio.ts
│   │   └── zod.ts
│   ├── index.ts
│   ├── internal/
│   │   ├── README.md
│   │   ├── builtin-types.ts
│   │   ├── decoders/
│   │   │   └── line.ts
│   │   ├── detect-platform.ts
│   │   ├── errors.ts
│   │   ├── headers.ts
│   │   ├── parse.ts
│   │   ├── qs/
│   │   │   ├── LICENSE.md
│   │   │   ├── README.md
│   │   │   ├── formats.ts
│   │   │   ├── index.ts
│   │   │   ├── stringify.ts
│   │   │   ├── types.ts
│   │   │   └── utils.ts
│   │   ├── request-options.ts
│   │   ├── shim-types.ts
│   │   ├── shims.ts
│   │   ├── stream-utils.ts
│   │   ├── to-file.ts
│   │   ├── types.ts
│   │   ├── uploads.ts
│   │   ├── utils/
│   │   │   ├── base64.ts
│   │   │   ├── bytes.ts
│   │   │   ├── env.ts
│   │   │   ├── log.ts
│   │   │   ├── path.ts
│   │   │   ├── query.ts
│   │   │   ├── sleep.ts
│   │   │   ├── uuid.ts
│   │   │   └── values.ts
│   │   └── utils.ts
│   ├── lib/
│   │   ├── .keep
│   │   ├── AbstractChatCompletionRunner.ts
│   │   ├── AssistantStream.ts
│   │   ├── ChatCompletionRunner.ts
│   │   ├── ChatCompletionStream.ts
│   │   ├── ChatCompletionStreamingRunner.ts
│   │   ├── EventEmitter.ts
│   │   ├── EventStream.ts
│   │   ├── ResponsesParser.ts
│   │   ├── RunnableFunction.ts
│   │   ├── Util.ts
│   │   ├── chatCompletionUtils.ts
│   │   ├── jsonschema.ts
│   │   ├── parser.ts
│   │   ├── responses/
│   │   │   ├── EventTypes.ts
│   │   │   └── ResponseStream.ts
│   │   └── transform.ts
│   ├── pagination.ts
│   ├── realtime/
│   │   ├── index.ts
│   │   ├── internal-base.ts
│   │   ├── websocket.ts
│   │   └── ws.ts
│   ├── resource.ts
│   ├── resources/
│   │   ├── audio/
│   │   │   ├── audio.ts
│   │   │   ├── index.ts
│   │   │   ├── speech.ts
│   │   │   ├── transcriptions.ts
│   │   │   └── translations.ts
│   │   ├── audio.ts
│   │   ├── batches.ts
│   │   ├── beta/
│   │   │   ├── assistants.ts
│   │   │   ├── beta.ts
│   │   │   ├── chatkit/
│   │   │   │   ├── chatkit.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── sessions.ts
│   │   │   │   └── threads.ts
│   │   │   ├── chatkit.ts
│   │   │   ├── index.ts
│   │   │   ├── realtime/
│   │   │   │   ├── index.ts
│   │   │   │   ├── realtime.ts
│   │   │   │   ├── sessions.ts
│   │   │   │   └── transcription-sessions.ts
│   │   │   ├── realtime.ts
│   │   │   ├── threads/
│   │   │   │   ├── index.ts
│   │   │   │   ├── messages.ts
│   │   │   │   ├── runs/
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── runs.ts
│   │   │   │   │   └── steps.ts
│   │   │   │   ├── runs.ts
│   │   │   │   └── threads.ts
│   │   │   └── threads.ts
│   │   ├── beta.ts
│   │   ├── chat/
│   │   │   ├── chat.ts
│   │   │   ├── completions/
│   │   │   │   ├── completions.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── messages.ts
│   │   │   ├── completions.ts
│   │   │   └── index.ts
│   │   ├── chat.ts
│   │   ├── completions.ts
│   │   ├── containers/
│   │   │   ├── containers.ts
│   │   │   ├── files/
│   │   │   │   ├── content.ts
│   │   │   │   ├── files.ts
│   │   │   │   └── index.ts
│   │   │   ├── files.ts
│   │   │   └── index.ts
│   │   ├── containers.ts
│   │   ├── conversations/
│   │   │   ├── api.md
│   │   │   ├── conversations.ts
│   │   │   ├── index.ts
│   │   │   └── items.ts
│   │   ├── conversations.ts
│   │   ├── embeddings.ts
│   │   ├── evals/
│   │   │   ├── evals.ts
│   │   │   ├── index.ts
│   │   │   ├── runs/
│   │   │   │   ├── index.ts
│   │   │   │   ├── output-items.ts
│   │   │   │   └── runs.ts
│   │   │   └── runs.ts
│   │   ├── evals.ts
│   │   ├── files.ts
│   │   ├── fine-tuning/
│   │   │   ├── alpha/
│   │   │   │   ├── alpha.ts
│   │   │   │   ├── graders.ts
│   │   │   │   └── index.ts
│   │   │   ├── alpha.ts
│   │   │   ├── checkpoints/
│   │   │   │   ├── checkpoints.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── permissions.ts
│   │   │   ├── checkpoints.ts
│   │   │   ├── fine-tuning.ts
│   │   │   ├── index.ts
│   │   │   ├── jobs/
│   │   │   │   ├── checkpoints.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── jobs.ts
│   │   │   ├── jobs.ts
│   │   │   └── methods.ts
│   │   ├── fine-tuning.ts
│   │   ├── graders/
│   │   │   ├── grader-models.ts
│   │   │   ├── graders.ts
│   │   │   └── index.ts
│   │   ├── graders.ts
│   │   ├── images.ts
│   │   ├── index.ts
│   │   ├── models.ts
│   │   ├── moderations.ts
│   │   ├── realtime/
│   │   │   ├── api.md
│   │   │   ├── calls.ts
│   │   │   ├── client-secrets.ts
│   │   │   ├── index.ts
│   │   │   └── realtime.ts
│   │   ├── realtime.ts
│   │   ├── responses/
│   │   │   ├── api.md
│   │   │   ├── index.ts
│   │   │   ├── input-items.ts
│   │   │   ├── input-tokens.ts
│   │   │   ├── internal-base.ts
│   │   │   ├── responses.ts
│   │   │   └── ws.ts
│   │   ├── responses.ts
│   │   ├── shared.ts
│   │   ├── skills/
│   │   │   ├── content.ts
│   │   │   ├── index.ts
│   │   │   ├── skills.ts
│   │   │   ├── versions/
│   │   │   │   ├── content.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── versions.ts
│   │   │   └── versions.ts
│   │   ├── skills.ts
│   │   ├── uploads/
│   │   │   ├── index.ts
│   │   │   ├── parts.ts
│   │   │   └── uploads.ts
│   │   ├── uploads.ts
│   │   ├── vector-stores/
│   │   │   ├── file-batches.ts
│   │   │   ├── files.ts
│   │   │   ├── index.ts
│   │   │   └── vector-stores.ts
│   │   ├── vector-stores.ts
│   │   ├── videos.ts
│   │   ├── webhooks/
│   │   │   ├── api.md
│   │   │   ├── index.ts
│   │   │   └── webhooks.ts
│   │   └── webhooks.ts
│   ├── resources.ts
│   ├── streaming.ts
│   ├── uploads.ts
│   └── version.ts
├── tests/
│   ├── _vendor/
│   │   └── partial-json-parser/
│   │       └── partial-json-parsing.test.ts
│   ├── api-resources/
│   │   ├── audio/
│   │   │   ├── speech.test.ts
│   │   │   ├── transcriptions.test.ts
│   │   │   └── translations.test.ts
│   │   ├── batches.test.ts
│   │   ├── beta/
│   │   │   ├── assistants.test.ts
│   │   │   ├── chatkit/
│   │   │   │   ├── sessions.test.ts
│   │   │   │   └── threads.test.ts
│   │   │   └── threads/
│   │   │       ├── messages.test.ts
│   │   │       ├── runs/
│   │   │       │   ├── runs.test.ts
│   │   │       │   └── steps.test.ts
│   │   │       └── threads.test.ts
│   │   ├── chat/
│   │   │   └── completions/
│   │   │       ├── completions.test.ts
│   │   │       └── messages.test.ts
│   │   ├── completions.test.ts
│   │   ├── containers/
│   │   │   ├── containers.test.ts
│   │   │   └── files/
│   │   │       ├── content.test.ts
│   │   │       └── files.test.ts
│   │   ├── conversations/
│   │   │   ├── conversations.test.ts
│   │   │   └── items.test.ts
│   │   ├── embeddings-base64-response.json
│   │   ├── embeddings-float-response.json
│   │   ├── embeddings.test.ts
│   │   ├── evals/
│   │   │   ├── evals.test.ts
│   │   │   └── runs/
│   │   │       ├── output-items.test.ts
│   │   │       └── runs.test.ts
│   │   ├── files.test.ts
│   │   ├── fine-tuning/
│   │   │   ├── alpha/
│   │   │   │   └── graders.test.ts
│   │   │   ├── checkpoints/
│   │   │   │   └── permissions.test.ts
│   │   │   └── jobs/
│   │   │       ├── checkpoints.test.ts
│   │   │       └── jobs.test.ts
│   │   ├── images.test.ts
│   │   ├── models.test.ts
│   │   ├── moderations.test.ts
│   │   ├── realtime/
│   │   │   ├── calls.test.ts
│   │   │   └── client-secrets.test.ts
│   │   ├── responses/
│   │   │   ├── input-items.test.ts
│   │   │   ├── input-tokens.test.ts
│   │   │   └── responses.test.ts
│   │   ├── skills/
│   │   │   ├── skills.test.ts
│   │   │   └── versions/
│   │   │       ├── content.test.ts
│   │   │       └── versions.test.ts
│   │   ├── uploads/
│   │   │   ├── parts.test.ts
│   │   │   └── uploads.test.ts
│   │   ├── vector-stores/
│   │   │   ├── file-batches.test.ts
│   │   │   ├── files.test.ts
│   │   │   └── vector-stores.test.ts
│   │   ├── videos.test.ts
│   │   └── webhooks.test.ts
│   ├── backwards-compat-resource-exports.test.ts
│   ├── base64.test.ts
│   ├── buildHeaders.test.ts
│   ├── form.test.ts
│   ├── helpers/
│   │   └── zod.test.ts
│   ├── index.test.ts
│   ├── internal/
│   │   └── decoders/
│   │       └── line.test.ts
│   ├── lib/
│   │   ├── ChatCompletionRunFunctions.test.ts
│   │   ├── ChatCompletionStream.test.ts
│   │   ├── ResponseStream.test.ts
│   │   ├── __snapshots__/
│   │   │   ├── ChatCompletionStream.test.ts.snap
│   │   │   ├── ResponseStream.test.ts.snap
│   │   │   └── parser.test.ts.snap
│   │   ├── azure.test.ts
│   │   ├── parser.test.ts
│   │   └── transform.test.ts
│   ├── log.test.ts
│   ├── path.test.ts
│   ├── qs/
│   │   ├── empty-keys-cases.ts
│   │   ├── stringify.test.ts
│   │   └── utils.test.ts
│   ├── responses.test.ts
│   ├── responsesItems.test.ts
│   ├── streaming/
│   │   └── assistants/
│   │       └── assistant.test.ts
│   ├── streaming.test.ts
│   ├── stringifyQuery.test.ts
│   ├── uploads.test.ts
│   └── utils/
│       ├── mock-fetch.ts
│       ├── mock-snapshots.ts
│       └── typing.ts
├── tsc-multi.json
├── tsconfig.build.json
├── tsconfig.deno.json
├── tsconfig.dist-src.json
└── tsconfig.json

================================================
FILE CONTENTS
================================================

================================================
FILE: .devcontainer/devcontainer.json
================================================
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/debian
{
  "name": "Development",
  "image": "mcr.microsoft.com/devcontainers/typescript-node:latest",
  "features": {
    "ghcr.io/devcontainers/features/node:1": {}
  },
  "postCreateCommand": "yarn install",
  "customizations": {
    "vscode": {
      "extensions": ["esbenp.prettier-vscode"]
    }
  }
}


================================================
FILE: .github/CODEOWNERS
================================================
# This file is used to automatically assign reviewers to PRs
# For more information see: https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners

* @openai/sdks-team


================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.yml
================================================
name: Bug report
description: Report an issue or bug with this library
labels: ['bug']
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this bug report!
  - type: checkboxes
    id: non_api
    attributes:
      label: Confirm this is a Node library issue and not an underlying OpenAI API issue
      description: Issues with the underlying OpenAI API should be reported on our [Developer Community](https://community.openai.com/c/api/7)
      options:
        - label: This is an issue with the Node library
          required: true
  - type: textarea
    id: what-happened
    attributes:
      label: Describe the bug
      description: A clear and concise description of what the bug is, and any additional context.
      placeholder: Tell us what you see!
    validations:
      required: true
  - type: textarea
    id: repro-steps
    attributes:
      label: To Reproduce
      description: Steps to reproduce the behavior.
      placeholder: |
        1. Fetch a '...'
        2. Update the '....'
        3. See error
    validations:
      required: true
  - type: textarea
    id: code-snippets
    attributes:
      label: Code snippets
      description: If applicable, add code snippets to help explain your problem.
      render: JavaScript
    validations:
      required: false
  - type: input
    id: os
    attributes:
      label: OS
      placeholder: macOS
    validations:
      required: true
  - type: input
    id: language-version
    attributes:
      label: Node version
      placeholder: Node v16.14.2
    validations:
      required: true
  - type: input
    id: lib-version
    attributes:
      label: Library version
      placeholder: openai v3.0.1
    validations:
      required: true


================================================
FILE: .github/ISSUE_TEMPLATE/config.yml
================================================
blank_issues_enabled: false
contact_links:
  - name: OpenAI support
    url: https://help.openai.com/
    about: |
      Please only file issues here that you believe represent actual bugs or feature requests for the OpenAI Node library.
      If you're having general trouble with the OpenAI API, please visit our help center to get support.


================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.yml
================================================
name: Feature request
description: Suggest an idea for this library
labels: ['feature-request']
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this feature request!
  - type: checkboxes
    id: non_api
    attributes:
      label: Confirm this is a feature request for the Node library and not the underlying OpenAI API.
      description: Feature requests for the underlying OpenAI API should be reported on our [Developer Community](https://community.openai.com/c/api/7)
      options:
        - label: This is a feature request for the Node library
          required: true
  - type: textarea
    id: feature
    attributes:
      label: Describe the feature or improvement you're requesting
      description: A clear and concise description of what you want to happen.
    validations:
      required: true
  - type: textarea
    id: context
    attributes:
      label: Additional context
      description: Add any other context about the feature request here.


================================================
FILE: .github/pull_request_template.md
================================================
<!-- Thank you for contributing to this project! -->
<!-- The code in this repository is all auto-generated, and is not meant to be edited manually. -->
<!-- We recommend opening an Issue instead, but you are still welcome to open a PR to share for -->
<!-- an improvement if you wish, just note that we are unlikely to merge it as-is. -->

- [ ] I understand that this repository is auto-generated and my pull request may not be merged

## Changes being requested

## Additional context & links


================================================
FILE: .github/workflows/ci.yml
================================================
name: CI
on:
  push:
    branches:
      - '**'
      - '!integrated/**'
      - '!stl-preview-head/**'
      - '!stl-preview-base/**'
      - '!generated'
      - '!codegen/**'
      - 'codegen/stl/**'
  pull_request:
    branches-ignore:
      - 'stl-preview-head/**'
      - 'stl-preview-base/**'

jobs:
  lint:
    timeout-minutes: 10
    name: lint
    runs-on: ${{ github.repository == 'stainless-sdks/openai-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
    if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
    steps:
      - uses: actions/checkout@v6

      - name: Set up Node
        uses: actions/setup-node@v4
        with:
          node-version: '20'

      - name: Bootstrap
        run: ./scripts/bootstrap

      - name: Check types
        run: ./scripts/lint

  build:
    timeout-minutes: 5
    name: build
    runs-on: ${{ github.repository == 'stainless-sdks/openai-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
    if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
    permissions:
      contents: read
      id-token: write
    steps:
      - uses: actions/checkout@v6

      - name: Set up Node
        uses: actions/setup-node@v4
        with:
          node-version: '20'

      - name: Bootstrap
        run: ./scripts/bootstrap

      - name: Check build
        run: ./scripts/build

      - name: Get GitHub OIDC Token
        if: |-
          github.repository == 'stainless-sdks/openai-typescript' &&
          !startsWith(github.ref, 'refs/heads/stl/')
        id: github-oidc
        uses: actions/github-script@v8
        with:
          script: core.setOutput('github_token', await core.getIDToken());

      - name: Upload tarball
        if: |-
          github.repository == 'stainless-sdks/openai-typescript' &&
          !startsWith(github.ref, 'refs/heads/stl/')
        env:
          URL: https://pkg.stainless.com/s
          AUTH: ${{ steps.github-oidc.outputs.github_token }}
          SHA: ${{ github.sha }}
        run: ./scripts/utils/upload-artifact.sh
  test:
    timeout-minutes: 10
    name: test
    runs-on: ${{ github.repository == 'stainless-sdks/openai-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
    if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
    steps:
      - uses: actions/checkout@v6

      - name: Set up Node
        uses: actions/setup-node@v4
        with:
          node-version: '20'

      - name: Bootstrap
        run: ./scripts/bootstrap

      - name: Run tests
        run: ./scripts/test

  examples:
    timeout-minutes: 10
    name: examples
    runs-on: ${{ github.repository == 'stainless-sdks/openai-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
    if: github.repository == 'openai/openai-node'

    steps:
      - uses: actions/checkout@v4

      - name: Set up Node
        uses: actions/setup-node@v4
        with:
          node-version: '20'
      - name: Install dependencies
        run: |
          yarn install

      - env:
          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
        run: |
          yarn tsn examples/demo.ts

  ecosystem_tests:
    name: ecosystem tests (v${{ matrix.node-version }})
    runs-on: ubuntu-latest
    timeout-minutes: 20
    strategy:
      fail-fast: false
      matrix:
        node-version: ['20']

    steps:
      - uses: actions/checkout@v4

      - name: Set up Node
        uses: actions/setup-node@v4
        with:
          node-version: '${{ matrix.node-version }}'

      - uses: denoland/setup-deno@v1
        with:
          deno-version: v1.39.0

      - uses: oven-sh/setup-bun@v2

      - name: Bootstrap
        run: ./scripts/bootstrap

      - name: Run ecosystem tests
        run: |
          yarn tsn ecosystem-tests/cli.ts --live --verbose --parallel --jobs=4 --retry=3
        env:
          DISABLE_V8_COMPILE_CACHE: '1'
          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}


================================================
FILE: .github/workflows/create-releases.yml
================================================
name: Create releases
on:
  schedule:
    - cron: '0 5 * * *' # every day at 5am UTC
  push:
    branches:
      - master

jobs:
  release:
    name: release
    if: github.ref == 'refs/heads/master' && github.repository == 'openai/openai-node'
    runs-on: ubuntu-latest
    environment: publish
    permissions:
      contents: read
      id-token: write

    steps:
      - uses: actions/checkout@v6

      - uses: stainless-api/trigger-release-please@v1
        id: release
        with:
          repo: ${{ github.event.repository.full_name }}
          stainless-api-key: ${{ secrets.STAINLESS_API_KEY }}

      - name: Set up Node
        if: ${{ steps.release.outputs.releases_created }}
        uses: actions/setup-node@v3
        with:
          node-version: '20'

      - name: Install dependencies
        if: ${{ steps.release.outputs.releases_created }}
        run: |
          yarn install

      - name: Publish to NPM
        if: ${{ steps.release.outputs.releases_created }}
        run: |
          bash ./bin/publish-npm

      - name: Publish to JSR
        if: ${{ steps.release.outputs.releases_created }}
        run: |
          bash ./bin/publish-jsr



================================================
FILE: .github/workflows/detect-breaking-changes.yml
================================================
name: CI
on:
  pull_request:
    branches:
      - main
      - next

jobs:
  detect_breaking_changes:
    runs-on: 'ubuntu-latest'
    name: detect-breaking-changes
    if: github.repository == 'openai/openai-node'
    steps:
      - name: Calculate fetch-depth
        run: |
          echo "FETCH_DEPTH=$(expr ${{ github.event.pull_request.commits }} + 1)" >> $GITHUB_ENV

      - uses: actions/checkout@v6
        with:
          # Ensure we can check out the pull request base in the script below.
          fetch-depth: ${{ env.FETCH_DEPTH }}

      - name: Set up Node
        uses: actions/setup-node@v3
        with:
          node-version: '20'
      - name: Install dependencies
        run: |
          yarn install

      - name: Detect breaking changes
        run: |
          # Try to check out previous versions of the breaking change detection script. This ensures that
          # we still detect breaking changes when entire files and their tests are removed.
          git checkout "${{ github.event.pull_request.base.sha }}" -- ./scripts/detect-breaking-changes 2>/dev/null || true
          ./scripts/detect-breaking-changes ${{ github.event.pull_request.base.sha }}
  agents_sdk:
    runs-on: 'ubuntu-latest'
    name: Detect Agents SDK regressions
    if: github.repository == 'openai/openai-node'
    steps:
      - name: Set up Node
        uses: actions/setup-node@v4
        with:
          node-version: '20'

      - name: Install pnpm
        uses: pnpm/action-setup@v4
        with:
          version: 10.25.0
          run_install: false

      # Setup this sdk
      - uses: actions/checkout@v4
        with:
          path: openai-node

      - name: Bootstrap
        working-directory: openai-node
        run: ./scripts/bootstrap

      - name: Build
        working-directory: openai-node
        run: ./scripts/build

      # Setup the agents packages
      - uses: actions/checkout@v4
        with:
          repository: openai/openai-agents-js
          path: openai-agents-js

      - name: Link agents packages to local SDKs
        working-directory: openai-agents-js
        run: pnpm --filter @openai/agents-core --filter @openai/agents-openai --filter @openai/agents add file:../../../openai-node/dist

      - name: Install dependencies
        working-directory: openai-agents-js
        run: pnpm install

      - name: Build all packages
        working-directory: openai-agents-js
        run: pnpm build

      - name: Run linter
        working-directory: openai-agents-js
        run: pnpm lint

      - name: Type-check docs scripts
        working-directory: openai-agents-js
        run: pnpm docs:scripts:check


================================================
FILE: .github/workflows/publish-jsr.yml
================================================
# This workflow publishes the package to JSR.
# You can run this workflow manually by navigating to https://www.github.com/openai/openai-node/actions/workflows/publish-jsr.yml
name: Publish JSR
on:
  workflow_dispatch:

jobs:
  publish:
    name: publish
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    environment: publish

    steps:
      - uses: actions/checkout@v6

      - name: Set up Node
        uses: actions/setup-node@v3
        with:
          node-version: '20'

      - name: Install dependencies
        run: |
          yarn install

      - name: Publish to JSR
        run: |
          bash ./bin/publish-jsr


================================================
FILE: .github/workflows/publish-npm.yml
================================================
# This workflow publishes the package to NPM.
# You can run this workflow manually by navigating to https://www.github.com/openai/openai-node/actions/workflows/publish-npm.yml
name: Publish NPM
on:
  workflow_dispatch:

jobs:
  publish:
    name: publish
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    environment: publish

    steps:
      - uses: actions/checkout@v6

      - name: Set up Node
        uses: actions/setup-node@v3
        with:
          node-version: '20'

      - name: Install dependencies
        run: |
          yarn install

      - name: Publish to NPM
        run: |
          bash ./bin/publish-npm


================================================
FILE: .github/workflows/release-doctor.yml
================================================
name: Release Doctor
on:
  push:
    branches:
      - master
  workflow_dispatch:

jobs:
  release_doctor:
    name: release doctor
    runs-on: ubuntu-latest
    environment: publish
    if: github.repository == 'openai/openai-node' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')

    steps:
      - uses: actions/checkout@v6

      - name: Check release environment
        run: |
          bash ./bin/check-release-environment
        env:
          STAINLESS_API_KEY: ${{ secrets.STAINLESS_API_KEY }}



================================================
FILE: .gitignore
================================================
.prism.log
node_modules
yarn-error.log
codegen.log
Brewfile.lock.json
dist
dist-deno
/oidc
/*.tgz
.idea/
tmp
.pack
ecosystem-tests/deno/package.json
ecosystem-tests/*/openai.tgz
.dev.vars
.eslintcache


================================================
FILE: .prettierignore
================================================
CHANGELOG.md
/ecosystem-tests/*/**
/node_modules
/deno

# don't format tsc output, will break source maps
/dist


================================================
FILE: .prettierrc.json
================================================
{
  "arrowParens": "always",
  "experimentalTernaries": true,
  "printWidth": 110,
  "singleQuote": true,
  "trailingComma": "all"
}


================================================
FILE: .release-please-manifest.json
================================================
{
  ".": "6.32.0"
}


================================================
FILE: .stats.yml
================================================
configured_endpoints: 151
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-55ef7034334e938c30656a404ce5e21466103be87542a796425346299f450404.yml
openapi_spec_hash: 4a5bfd2ee4ad47f5b7cf6f1ad08d5d7f
config_hash: 96fbf82cf74a44ccd513f5acf0956ffd


================================================
FILE: Brewfile
================================================
brew "node"


================================================
FILE: CHANGELOG.md
================================================
# Changelog

## 6.32.0 (2026-03-17)

Full Changelog: [v6.31.0...v6.32.0](https://github.com/openai/openai-node/compare/v6.31.0...v6.32.0)

### Features

* **api:** 5.4 nano and mini model slugs ([068df6d](https://github.com/openai/openai-node/commit/068df6d625d7faa76dfac160065f1ca550539ba8))

## 6.31.0 (2026-03-16)

Full Changelog: [v6.30.1...v6.31.0](https://github.com/openai/openai-node/compare/v6.30.1...v6.31.0)

### Features

* **api:** add in/nin filter types to ComparisonFilter ([b2eda27](https://github.com/openai/openai-node/commit/b2eda274418ceb9bbdb3778cb6a5ee28090df8ad))

## 6.30.1 (2026-03-16)

Full Changelog: [v6.30.0...v6.30.1](https://github.com/openai/openai-node/compare/v6.30.0...v6.30.1)

### Chores

* **internal:** tweak CI branches ([25f5d74](https://github.com/openai/openai-node/commit/25f5d74c1fc16e3303fcb87022f5f0559b052cbf))

## 6.30.0 (2026-03-16)

Full Changelog: [v6.29.0...v6.30.0](https://github.com/openai/openai-node/compare/v6.29.0...v6.30.0)

### Features

* **api:** add /v1/videos endpoint option to batches ([271d879](https://github.com/openai/openai-node/commit/271d87979f16950900f4253915bdda319b7fe935))
* **api:** add defer_loading field to NamespaceTool ([7cc8f0a](https://github.com/openai/openai-node/commit/7cc8f0a736ea7ba0aa3e7860b4c30eaaa5795966))


### Bug Fixes

* **api:** oidc publishing for npm ([fa50066](https://github.com/openai/openai-node/commit/fa500666e38379f2241ac43d60e2eb7eef7d39cb))

## 6.29.0 (2026-03-13)

Full Changelog: [v6.28.0...v6.29.0](https://github.com/openai/openai-node/compare/v6.28.0...v6.29.0)

### Features

* **api:** custom voices ([a11307a](https://github.com/openai/openai-node/commit/a11307afab49299fdf7e7ed3675d3e277d9b5c60))

## 6.28.0 (2026-03-13)

Full Changelog: [v6.27.0...v6.28.0](https://github.com/openai/openai-node/compare/v6.27.0...v6.28.0)

### Features

* **api:** manual updates ([d543959](https://github.com/openai/openai-node/commit/d54395976aa4c1c1864bb45dbaf81ec1d66b8c6b))
* **api:** manual updates ([4f87840](https://github.com/openai/openai-node/commit/4f878406e029ae7527201251632e3fa00b800045))
* **api:** sora api improvements: character api, video extensions/edits, higher resolution exports. ([262dac2](https://github.com/openai/openai-node/commit/262dac25aec6c9caa561f57a0b9e2a086f47a26a))


### Bug Fixes

* **types:** remove detail field from ResponseInputFile and ResponseInputFileContent ([8d6c0cd](https://github.com/openai/openai-node/commit/8d6c0cdbbf08829db08745597e1806661534853f))


### Chores

* **internal:** update dependencies to address dependabot vulnerabilities ([f5810ee](https://github.com/openai/openai-node/commit/f5810ee5f5bf96e81a77f91939f3d56427c46e00))
* match http protocol with ws protocol instead of wss ([6f4e936](https://github.com/openai/openai-node/commit/6f4e936bc2211da885bf492615b2bf413887576b))
* **mcp-server:** improve instructions ([aad9ca1](https://github.com/openai/openai-node/commit/aad9ca15ddbb8dbc27ed6b2aa9b242af9bbf7b8f))
* use proper capitalization for WebSockets ([cb4cf62](https://github.com/openai/openai-node/commit/cb4cf6297c2a0eb7d3f55f8850e6e8ffc4c7ecc6))

## 6.27.0 (2026-03-05)

Full Changelog: [v6.26.0...v6.27.0](https://github.com/openai/openai-node/compare/v6.26.0...v6.27.0)

### Features

* **api:** The GA ComputerTool now uses the CompuerTool class. The 'computer_use_preview' tool is moved to ComputerUsePreview ([0206188](https://github.com/openai/openai-node/commit/0206188f760be830738136e37dcf7be6ea0fe20c))


### Chores

* **internal:** improve import alias names ([9cc2478](https://github.com/openai/openai-node/commit/9cc24789730a309037ef81f5a30af515d700459a))

## 6.26.0 (2026-03-05)

Full Changelog: [v6.25.0...v6.26.0](https://github.com/openai/openai-node/compare/v6.25.0...v6.26.0)

### Features

* **api:** gpt-5.4, tool search tool, and new computer tool ([1d1e5a9](https://github.com/openai/openai-node/commit/1d1e5a9b5aeb11b0e940b4532dcd6a3fcc23898a))


### Bug Fixes

* **api:** internal schema fixes ([6b401ad](https://github.com/openai/openai-node/commit/6b401ad7d3ff2ead9cfa577daf8381f62ea85b93))
* **api:** manual updates ([2b54919](https://github.com/openai/openai-node/commit/2b549195c70581022d9d64c443ab08202c6faeb7))
* **api:** readd phase ([4a0cf29](https://github.com/openai/openai-node/commit/4a0cf2974865519d3b512fb377bc4ba305dce7b7))
* **api:** remove phase from message types, prompt_cache_key param in responses ([088fca6](https://github.com/openai/openai-node/commit/088fca6a4d5d1a577500acb5579ee403292d8911))


### Chores

* **internal:** codegen related update ([6a0aa9e](https://github.com/openai/openai-node/commit/6a0aa9e2ff10e78f8b9afd777174d16537a29c8e))
* **internal:** codegen related update ([b2a4299](https://github.com/openai/openai-node/commit/b2a42991cbe83eee45a342f19a5a99ce1d78b36a))
* **internal:** move stringifyQuery implementation to internal function ([f9f4660](https://github.com/openai/openai-node/commit/f9f46609cf5c1fc51e437c23251c5a7d0519d55d))
* **internal:** reduce warnings ([7e19492](https://github.com/openai/openai-node/commit/7e194929156052b0efbda9ca48c3ed6de8c18d2f))

## 6.25.0 (2026-02-24)

Full Changelog: [v6.24.0...v6.25.0](https://github.com/openai/openai-node/compare/v6.24.0...v6.25.0)

### Features

* **api:** add phase ([e32b853](https://github.com/openai/openai-node/commit/e32b853c3c57f2d0e4c05b09177b94677aed0e5a))


### Bug Fixes

* **api:** fix phase enum ([2ffe1be](https://github.com/openai/openai-node/commit/2ffe1be2600d0154b3355eefa61707470a341a95))
* **api:** phase docs ([7fdfa38](https://github.com/openai/openai-node/commit/7fdfa38c1fa2bd383e1171510918c6db5f0937d8))


### Chores

* **internal:** refactor sse event parsing ([0ea2380](https://github.com/openai/openai-node/commit/0ea238054c0473adc97f4173a0ad5ba8bcfa4e29))

## 6.24.0 (2026-02-24)

Full Changelog: [v6.23.0...v6.24.0](https://github.com/openai/openai-node/compare/v6.23.0...v6.24.0)

### Features

* **api:** add gpt-realtime-1.5 and gpt-audio-1.5 models to realtime ([75875bf](https://github.com/openai/openai-node/commit/75875bfb850c0780878553c566fe8821048ae5e8))

## 6.23.0 (2026-02-23)

Full Changelog: [v6.22.0...v6.23.0](https://github.com/openai/openai-node/compare/v6.22.0...v6.23.0)

### Features

* **api:** websockets for responses api ([c6b96b8](https://github.com/openai/openai-node/commit/c6b96b8b8d5f8132e0a4c5f7399a04185302adcc))


### Bug Fixes

* **docs/contributing:** correct pnpm link command ([8a198a5](https://github.com/openai/openai-node/commit/8a198a5aa60209e26509651cdad110aadf164527))
* **internal:** skip tests that depend on mock server ([3d88cb0](https://github.com/openai/openai-node/commit/3d88cb061a9a4d187931d4c892a87bd5e5f09c4d))


### Chores

* **internal/client:** fix form-urlencoded requests ([646cedd](https://github.com/openai/openai-node/commit/646cedd2842716b1768d81705110cc573d6ddc33))
* update mock server docs ([29f78f3](https://github.com/openai/openai-node/commit/29f78f310b7c336318705c382fd92a324d4b1ea2))


### Documentation

* **api:** document 2000 file limit in file-batches create parameters ([ff7bde0](https://github.com/openai/openai-node/commit/ff7bde08d8d02b8bda5f4e50bef65271a8f2a190))
* **api:** enhance method descriptions across audio/chat/skills/videos/responses ([f5e02a1](https://github.com/openai/openai-node/commit/f5e02a1dcad492fd3dab2d1a289c12af082cdef4))
* **api:** update safety_identifier description in chat/responses ([a55e0ef](https://github.com/openai/openai-node/commit/a55e0ef720cfb231e09e598ff0e8e60ef91e9088))

## 6.22.0 (2026-02-14)

Full Changelog: [v6.21.0...v6.22.0](https://github.com/openai/openai-node/compare/v6.21.0...v6.22.0)

### Features

* **api:** container network_policy and skills ([65c1482](https://github.com/openai/openai-node/commit/65c1482a41f16d39ff6ba26849a72b417b27403e))


### Bug Fixes

* **docs:** restore helper methods in API reference ([3a4c189](https://github.com/openai/openai-node/commit/3a4c189712292f280ca34326fe17e202180951bf))
* **webhooks:** restore webhook type exports ([49bbf46](https://github.com/openai/openai-node/commit/49bbf46f0ed14ce2a050d10baa4ad7a8481a773d))


### Chores

* **internal:** avoid type checking errors with ts-reset ([4b0d1f2](https://github.com/openai/openai-node/commit/4b0d1f27207dea6054291707d7bbdeb86dbcf4b2))


### Documentation

* split `api.md` by standalone resources ([48e07d6](https://github.com/openai/openai-node/commit/48e07d65894c22b543e669d62fa42a00cc3d0430))
* update comment ([e3a1ea0](https://github.com/openai/openai-node/commit/e3a1ea0400b428e0e21666f96e3a9345468678d5))

## 6.21.0 (2026-02-10)

Full Changelog: [v6.20.0...v6.21.0](https://github.com/openai/openai-node/compare/v6.20.0...v6.21.0)

### Features

* **api:** support for images in batch api ([017ba1c](https://github.com/openai/openai-node/commit/017ba1cb5a08428ca59197764cff460c70950e84))

## 6.20.0 (2026-02-10)

Full Changelog: [v6.19.0...v6.20.0](https://github.com/openai/openai-node/compare/v6.19.0...v6.20.0)

### Features

* **api:** skills and hosted shell ([e4bdd62](https://github.com/openai/openai-node/commit/e4bdd6205a0225d662ddeb07367f26094eaadbdd))

## 6.19.0 (2026-02-09)

Full Changelog: [v6.18.0...v6.19.0](https://github.com/openai/openai-node/compare/v6.18.0...v6.19.0)

### Features

* **api:** responses context_management ([40e7671](https://github.com/openai/openai-node/commit/40e7671675159966fe219b3aebfb24b9b03f2c95))

## 6.18.0 (2026-02-05)

Full Changelog: [v6.17.0...v6.18.0](https://github.com/openai/openai-node/compare/v6.17.0...v6.18.0)

### Features

* **api:** image generation actions for responses; ResponseFunctionCallArgumentsDoneEvent.name ([d373c32](https://github.com/openai/openai-node/commit/d373c3210d9299381e20520c217167b387b46105))


### Bug Fixes

* **client:** avoid memory leak with abort signals ([b449f36](https://github.com/openai/openai-node/commit/b449f36609b727f3f147fad19e8d064225bc8621))
* **client:** avoid removing abort listener too early ([1c045f7](https://github.com/openai/openai-node/commit/1c045f701743017ac7b4e2be0dfc8706a3b0213a))
* **client:** undo change to web search Find action ([8259b45](https://github.com/openai/openai-node/commit/8259b457c6f73c78066af0e1a76be0125caeb1ae))
* **client:** update type for `find_in_page` action ([9aa8d98](https://github.com/openai/openai-node/commit/9aa8d9822e60afb595c585f7be75087378b724bd))


### Chores

* **client:** do not parse responses with empty content-length ([4a118fa](https://github.com/openai/openai-node/commit/4a118fa3e09b0ad2bc4899b2a074fd60103796a0))
* **client:** restructure abort controller binding ([a4d7151](https://github.com/openai/openai-node/commit/a4d71518787849ec1f530da3c8550ea0f8746668))
* **internal:** fix pagination internals not accepting option promises ([6677905](https://github.com/openai/openai-node/commit/667790549f9160ba0cac484a8de09d8966cc13f0))

## 6.17.0 (2026-01-28)

Full Changelog: [v6.16.0...v6.17.0](https://github.com/openai/openai-node/compare/v6.16.0...v6.17.0)

### Features

* **api:** add shell_call_output status field ([edf9590](https://github.com/openai/openai-node/commit/edf95904294cce6cdcac521ee75dc8e0a033df4c))
* **api:** api update ([6a2eb80](https://github.com/openai/openai-node/commit/6a2eb80f53c21f52ff217faef9b783e1cf9846c1))
* **api:** api updates ([19ca100](https://github.com/openai/openai-node/commit/19ca100e9ebb2d03983da923c4bf944aa23c1f00))


### Bug Fixes

* **api:** mark assistants as deprecated ([3ae2a14](https://github.com/openai/openai-node/commit/3ae2a1439bc30d83c81e30ab30ddd06f91fee61f))


### Chores

* **ci:** upgrade `actions/github-script` ([4ea73d3](https://github.com/openai/openai-node/commit/4ea73d389b1b96d88c4c37c1a3a08ea143317c08))
* **internal:** update `actions/checkout` version ([f163b77](https://github.com/openai/openai-node/commit/f163b77bf2bb127f8049a0a7b1a2795c4f2bae50))
* **internal:** upgrade babel, qs, js-yaml ([2e2f3c6](https://github.com/openai/openai-node/commit/2e2f3c66ed61c0666e19831b123ea13d42978112))

## 6.16.0 (2026-01-09)

Full Changelog: [v6.15.0...v6.16.0](https://github.com/openai/openai-node/compare/v6.15.0...v6.16.0)

### Features

* **api:** add new Response completed_at prop ([ca40534](https://github.com/openai/openai-node/commit/ca40534778311def52bc7dbbab043d925cdaf847))
* **ci:** add breaking change detection workflow ([a6f3dea](https://github.com/openai/openai-node/commit/a6f3deaf89ea0ef85cc57e1150032bb6b807c3b9))


### Chores

* break long lines in snippets into multiline ([80dee2f](https://github.com/openai/openai-node/commit/80dee2fe64d1b13f181bd482b31eb06fd6c5f3f4))
* **internal:** codegen related update ([b2fac3e](https://github.com/openai/openai-node/commit/b2fac3ecdc3aecc3303c26304c4c94deda061edb))

## 6.15.0 (2025-12-19)

Full Changelog: [v6.14.0...v6.15.0](https://github.com/openai/openai-node/compare/v6.14.0...v6.15.0)

### Bug Fixes

* rebuild ([5627b41](https://github.com/openai/openai-node/commit/5627b4181775981e48991ea246e091afdfdc3caf))

## 6.14.0 (2025-12-16)

Full Changelog: [v6.13.0...v6.14.0](https://github.com/openai/openai-node/compare/v6.13.0...v6.14.0)

### Features

* **api:** gpt-image-1.5 ([6c1ac1d](https://github.com/openai/openai-node/commit/6c1ac1d8a2947c59f38aabaf07795a244c45a688))

## 6.13.0 (2025-12-15)

Full Changelog: [v6.12.0...v6.13.0](https://github.com/openai/openai-node/compare/v6.12.0...v6.13.0)

### Features

* **api:** api update ([bc759dc](https://github.com/openai/openai-node/commit/bc759dc39518412b58b2ebf7e57758776971ce15))
* **api:** fix grader input list, add dated slugs for sora-2 ([6b2a38f](https://github.com/openai/openai-node/commit/6b2a38fb040eb45535818fb0157ae55949033dc1))

## 6.12.0 (2025-12-11)

Full Changelog: [v6.11.0...v6.12.0](https://github.com/openai/openai-node/compare/v6.11.0...v6.12.0)

### Features

* **api:** gpt 5.2 ([7000ddb](https://github.com/openai/openai-node/commit/7000ddb09ad4e272f43fe0d70cb1f6e5ca9ff725))

## 6.11.0 (2025-12-10)

Full Changelog: [v6.10.0...v6.11.0](https://github.com/openai/openai-node/compare/v6.10.0...v6.11.0)

### Features

* **api:** make model required for the responses/compact endpoint ([0b52b12](https://github.com/openai/openai-node/commit/0b52b12e535b07ef3b1213892ccb50dc4030ecf4))


### Bug Fixes

* **mcp:** correct code tool API endpoint ([e3f2a33](https://github.com/openai/openai-node/commit/e3f2a33bc7ae941d0870e7bc0a333951e88925e2))
* **mcp:** return correct lines on typescript errors ([f485c3c](https://github.com/openai/openai-node/commit/f485c3c36ebb3cb9c2dbff676872a5470d1a9e47))


### Chores

* **internal:** codegen related update ([5af1c38](https://github.com/openai/openai-node/commit/5af1c38043118fd8e6f0fd072243bc63660963e4))
* **internal:** codegen related update ([e43a8d9](https://github.com/openai/openai-node/commit/e43a8d97fd3e9be7c6ae0ebaf6e85d68dbb33432))

## 6.10.0 (2025-12-04)

Full Changelog: [v6.9.1...v6.10.0](https://github.com/openai/openai-node/compare/v6.9.1...v6.10.0)

### Features

* **api:** gpt-5.1-codex-max and responses/compact ([935f79e](https://github.com/openai/openai-node/commit/935f79efbb090d1d6016ac6874456594f5fd4553))


### Chores

* **client:** fix logger property type ([fdc671f](https://github.com/openai/openai-node/commit/fdc671f1b21249a8610b38e2535910d956dc3611))
* **internal:** upgrade eslint ([9de0f90](https://github.com/openai/openai-node/commit/9de0f905bbd965a5d945ddb70c66dc0c6403ed35))

## 6.9.1 (2025-11-17)

Full Changelog: [v6.9.0...v6.9.1](https://github.com/openai/openai-node/compare/v6.9.0...v6.9.1)

### Bug Fixes

* **api:** align types of input items / output items for typescript ([99adaa7](https://github.com/openai/openai-node/commit/99adaa70dc31d07d5c7fa4d67194ac4de375c98f))

## 6.9.0 (2025-11-13)

Full Changelog: [v6.8.1...v6.9.0](https://github.com/openai/openai-node/compare/v6.8.1...v6.9.0)

### Features

* **api:** gpt 5.1 ([58e78a8](https://github.com/openai/openai-node/commit/58e78a86899b43eb9afdb6f0afd60b912eae41f2))


### Chores

* add typescript-estree dependency for jsr readme script ([3759514](https://github.com/openai/openai-node/commit/37595149720edd7bf4c11760084cad7753c2f289))

## 6.8.1 (2025-11-05)

Full Changelog: [v6.8.0...v6.8.1](https://github.com/openai/openai-node/compare/v6.8.0...v6.8.1)

### Bug Fixes

* **api:** fix nullability of logprobs ([40a403c](https://github.com/openai/openai-node/commit/40a403cc9a35b11cc665ccde19f9c5ef07247585))

## 6.8.0 (2025-11-03)

Full Changelog: [v6.7.0...v6.8.0](https://github.com/openai/openai-node/compare/v6.7.0...v6.8.0)

### Features

* **api:** Realtime API token_limits, Hybrid searching ranking options ([6a5b48c](https://github.com/openai/openai-node/commit/6a5b48c9c8961bc7409c20546d9d845a4f2674ce))
* **api:** remove InputAudio from ResponseInputContent ([9909fef](https://github.com/openai/openai-node/commit/9909fef596280fc16174679d97c3e81543c68646))


### Chores

* **internal:** codegen related update ([3ad52aa](https://github.com/openai/openai-node/commit/3ad52aaa94cdbe1926fee1e5f8eacebefdfc399d))

## 6.7.0 (2025-10-24)

Full Changelog: [v6.6.0...v6.7.0](https://github.com/openai/openai-node/compare/v6.6.0...v6.7.0)

### Features

* add support for zod@4 schemas ([#1666](https://github.com/openai/openai-node/issues/1666)) ([10ef7ff](https://github.com/openai/openai-node/commit/10ef7ff4cb4aefeaa831b239943118ff52872f5c))


### Bug Fixes

* **api:** docs updates ([2591c21](https://github.com/openai/openai-node/commit/2591c211bce29d078579445d9a3b45d8de453ec3))

## 6.6.0 (2025-10-20)

Full Changelog: [v6.5.0...v6.6.0](https://github.com/openai/openai-node/compare/v6.5.0...v6.6.0)

### Features

* **api:** Add responses.input_tokens.count ([520c8a9](https://github.com/openai/openai-node/commit/520c8a95c857307b9329c4725cb40707d4e3eeee))


### Bug Fixes

* **api:** internal openapi updates ([d4aaef9](https://github.com/openai/openai-node/commit/d4aaef9c2e3d9f00b33d59e569149a937e5bd3f5))

## 6.5.0 (2025-10-17)

Full Changelog: [v6.4.0...v6.5.0](https://github.com/openai/openai-node/compare/v6.4.0...v6.5.0)

### Features

* **api:** api update ([4d21af3](https://github.com/openai/openai-node/commit/4d21af3e6a04baa0ea42d360cf3601fcc3d39705))

## 6.4.0 (2025-10-16)

Full Changelog: [v6.3.0...v6.4.0](https://github.com/openai/openai-node/compare/v6.3.0...v6.4.0)

### Features

* **api:** Add support for gpt-4o-transcribe-diarize on audio/transcriptions endpoint ([2d27392](https://github.com/openai/openai-node/commit/2d27392ac1cd082f7defb730326d11d8e733353f))

## 6.3.0 (2025-10-10)

Full Changelog: [v6.2.0...v6.3.0](https://github.com/openai/openai-node/compare/v6.2.0...v6.3.0)

### Features

* **api:** comparison filter in/not in ([1a733c6](https://github.com/openai/openai-node/commit/1a733c69ffff094568707b3f615d110c7e2edd6e))


### Chores

* **internal:** use npm pack for build uploads ([a532410](https://github.com/openai/openai-node/commit/a53241032e1177a390337986399da57e39be25ec))

## 6.2.0 (2025-10-06)

Full Changelog: [v6.1.0...v6.2.0](https://github.com/openai/openai-node/compare/v6.1.0...v6.2.0)

### Features

* **api:** dev day 2025 launches ([f2816db](https://github.com/openai/openai-node/commit/f2816dbc6ae162d39017e7bafb0d23d0b51dd585))


### Chores

* **internal:** codegen related update ([b6f64b7](https://github.com/openai/openai-node/commit/b6f64b70ea681b174695d930f957aa49194553ed))
* **jsdoc:** fix [@link](https://github.com/link) annotations to refer only to parts of the package‘s public interface ([73e465d](https://github.com/openai/openai-node/commit/73e465d382a45389ab47a0a92575e4415e8d3276))

## 6.1.0 (2025-10-02)

Full Changelog: [v6.0.1...v6.1.0](https://github.com/openai/openai-node/compare/v6.0.1...v6.1.0)

### Features

* **api:** add support for realtime calls ([5de9585](https://github.com/openai/openai-node/commit/5de958556679182dfbdce95b4db6b65ca742aa61))

## 6.0.1 (2025-10-01)

Full Changelog: [v6.0.0...v6.0.1](https://github.com/openai/openai-node/compare/v6.0.0...v6.0.1)

### Bug Fixes

* **api:** add status, approval_request_id to MCP tool call ([498c6a5](https://github.com/openai/openai-node/commit/498c6a5d4cab7ad10e31acd01cb49915a70e576a))

## 6.0.0 (2025-09-30)

Full Changelog: [v5.23.2...v6.0.0](https://github.com/openai/openai-node/compare/v5.23.2...v6.0.0)

### ⚠ BREAKING CHANGES

* **api:** `ResponseFunctionToolCallOutputItem.output` and `ResponseCustomToolCallOutput.output` now return `string | Array<ResponseInputText | ResponseInputImage | ResponseInputFile>` instead of `string` only. This may break existing callsites that assume `output` is always a string.

### Features

* **api:** Support images and files for function call outputs in responses, BatchUsage ([abe56f8](https://github.com/openai/openai-node/commit/abe56f86afdf28fc1a1b410ace1dd422672361a7))


### Chores

* compat with zod v4 ([#1658](https://github.com/openai/openai-node/issues/1658)) ([94569a0](https://github.com/openai/openai-node/commit/94569a07ce55317b0166e742b90a463df0f70e56))

## 5.23.2 (2025-09-29)

Full Changelog: [v5.23.1...v5.23.2](https://github.com/openai/openai-node/compare/v5.23.1...v5.23.2)

### Chores

* **env-tests:** upgrade jest-fixed-jsdom 0.0.9 -&gt; 0.0.10 ([6d6d0b0](https://github.com/openai/openai-node/commit/6d6d0b0eaaff86a99141af031f55b7cc6a22772a))
* **internal:** codegen related update ([1b684af](https://github.com/openai/openai-node/commit/1b684afd387ccd7b16d226dca3adee92db6e4878))
* **internal:** ignore .eslintcache ([da9e146](https://github.com/openai/openai-node/commit/da9e1468d62aa9044ee9d236b419f744f8792bdb))

## 5.23.1 (2025-09-26)

Full Changelog: [v5.23.0...v5.23.1](https://github.com/openai/openai-node/compare/v5.23.0...v5.23.1)

### Bug Fixes

* **realtime:** remove beta header from GA classes ([a5e9e70](https://github.com/openai/openai-node/commit/a5e9e70af8691f2850ad7ccfec966e5fb0d5b56d))


### Performance Improvements

* faster formatting ([d56f309](https://github.com/openai/openai-node/commit/d56f309f359f7f4d87c95bfaaffdc463312850e4))


### Chores

* **internal:** fix incremental formatting in some cases ([166d28f](https://github.com/openai/openai-node/commit/166d28ff34edb6b1c3ef310bc825952dcb30ba4b))
* **internal:** remove deprecated `compilerOptions.baseUrl` from tsconfig.json ([dfab408](https://github.com/openai/openai-node/commit/dfab40857547b272cdad4309baf84e43a07775ed))

## 5.23.0 (2025-09-23)

Full Changelog: [v5.22.1...v5.23.0](https://github.com/openai/openai-node/compare/v5.22.1...v5.23.0)

### Features

* **api:** gpt-5-codex ([2e4ece6](https://github.com/openai/openai-node/commit/2e4ece6a01e1b7c4c69627137900b7f70558a85b))

## 5.22.1 (2025-09-22)

Full Changelog: [v5.22.0...v5.22.1](https://github.com/openai/openai-node/compare/v5.22.0...v5.22.1)

### Bug Fixes

* **api:** fix mcp tool name ([fa9f305](https://github.com/openai/openai-node/commit/fa9f3055c63f83ddc19085ebeb7ac38cb303673a))


### Chores

* **api:** openapi updates for conversations ([975c075](https://github.com/openai/openai-node/commit/975c0757da3474439d166a27d61ba6606d439bb0))
* do not install brew dependencies in ./scripts/bootstrap by default ([6f5e45f](https://github.com/openai/openai-node/commit/6f5e45fc8a0c2dee1f68d00b135034653ed23200))
* improve example values ([b336a64](https://github.com/openai/openai-node/commit/b336a642fd9507bf28e0ed8976ec102d796f9b9d))

## 5.22.0 (2025-09-19)

Full Changelog: [v5.21.0...v5.22.0](https://github.com/openai/openai-node/compare/v5.21.0...v5.22.0)

### Features

* **api:** add reasoning_text ([7ff6186](https://github.com/openai/openai-node/commit/7ff61860a14ae20d0734b4f592002dfe67330488))


### Chores

* **api:** manual fixes for streaming ([3a2ae4c](https://github.com/openai/openai-node/commit/3a2ae4ce2a0796f5201dd9373f103bd94689b733))

## 5.21.0 (2025-09-17)

Full Changelog: [v5.20.3...v5.21.0](https://github.com/openai/openai-node/compare/v5.20.3...v5.21.0)

### Features

* **api:** type updates for conversations, reasoning_effort and results for evals ([f243f54](https://github.com/openai/openai-node/commit/f243f54072d00cb8d83b8c6093accaaabf34d4cf))

## 5.20.3 (2025-09-15)

Full Changelog: [v5.20.2...v5.20.3](https://github.com/openai/openai-node/compare/v5.20.2...v5.20.3)

### Chores

* **api:** docs and spec refactoring ([05b4498](https://github.com/openai/openai-node/commit/05b44987c699f7683b8706c8de363165150e5f31))

## 5.20.2 (2025-09-12)

Full Changelog: [v5.20.1...v5.20.2](https://github.com/openai/openai-node/compare/v5.20.1...v5.20.2)

### Bug Fixes

* coerce nullable values to undefined ([836d1b4](https://github.com/openai/openai-node/commit/836d1b4cdd077c206e1c647c762f4c16e9db444c))


### Chores

* **api:** Minor docs and type updates for realtime ([ccb00dc](https://github.com/openai/openai-node/commit/ccb00dcbd1466976045aafee152cbc038bb293b9))

## 5.20.1 (2025-09-10)

Full Changelog: [v5.20.0...v5.20.1](https://github.com/openai/openai-node/compare/v5.20.0...v5.20.1)

### Chores

* **api:** fix realtime GA types ([1c0d314](https://github.com/openai/openai-node/commit/1c0d3145e920a55f3c710323849bcac1fd60b703))

## 5.20.0 (2025-09-08)

Full Changelog: [v5.19.1...v5.20.0](https://github.com/openai/openai-node/compare/v5.19.1...v5.20.0)

### Features

* **api:** ship the RealtimeGA API shape ([4286ddd](https://github.com/openai/openai-node/commit/4286ddd4f990dd26e15e510039457f17d787820d))


### Chores

* ci build action ([c8ce143](https://github.com/openai/openai-node/commit/c8ce143196fdbc7ee1c7832bce2417b6e3d25885))

## 5.19.1 (2025-09-03)

Full Changelog: [v5.19.0...v5.19.1](https://github.com/openai/openai-node/compare/v5.19.0...v5.19.1)

### Bug Fixes

* **azure:** correctly send API key ([#1635](https://github.com/openai/openai-node/issues/1635)) ([08f6178](https://github.com/openai/openai-node/commit/08f6178ff0d4ccc6b80462c86a36f11eb3bfd5fe))

## 5.19.0 (2025-09-03)

Full Changelog: [v5.18.1...v5.19.0](https://github.com/openai/openai-node/compare/v5.18.1...v5.19.0)

### Features

* **api:** Add gpt-realtime models ([256d932](https://github.com/openai/openai-node/commit/256d93247da7f31e34f5f80d8added0bc6f52fe9))

## 5.18.1 (2025-09-02)

Full Changelog: [v5.18.0...v5.18.1](https://github.com/openai/openai-node/compare/v5.18.0...v5.18.1)

### Chores

* **api:** manual updates for ResponseInputAudio ([570501b](https://github.com/openai/openai-node/commit/570501b8c66f3f23d0dca05bc948339623732a8e))

## 5.18.0 (2025-09-02)

Full Changelog: [v5.17.0...v5.18.0](https://github.com/openai/openai-node/compare/v5.17.0...v5.18.0)

### Features

* **client:** support api key provider functions ([#1587](https://github.com/openai/openai-node/issues/1587)) ([c3a92c7](https://github.com/openai/openai-node/commit/c3a92c7ee6f5f7c26c9297be04343326c9854bfd))


### Bug Fixes

* update non beta realtime websockets helpers ([265a42f](https://github.com/openai/openai-node/commit/265a42f9101b0479b7d8dcbf05d45ce29539a7f3))

## 5.17.0 (2025-09-02)

Full Changelog: [v5.16.0...v5.17.0](https://github.com/openai/openai-node/compare/v5.16.0...v5.17.0)

### Features

* **api:** realtime API updates ([e817255](https://github.com/openai/openai-node/commit/e817255e6ff9e3ad6bd08b001644c335e0459537))


### Chores

* **internal:** update global Error reference ([e566ff3](https://github.com/openai/openai-node/commit/e566ff321642a100756224b75a67d44e262e5bea))

## 5.16.0 (2025-08-26)

Full Changelog: [v5.15.0...v5.16.0](https://github.com/openai/openai-node/compare/v5.15.0...v5.16.0)

### Features

* **api:** add web search filters ([975b141](https://github.com/openai/openai-node/commit/975b1417052bdcc0111f546ce3fbbea2e71414af))


### Chores

* **client:** qualify global Blob ([7998d3f](https://github.com/openai/openai-node/commit/7998d3fd3715ab2c06ea011155420ac126681649))
* update CI script ([accb0c1](https://github.com/openai/openai-node/commit/accb0c1188dbaef20c1a40bd3047087960c99a07))

## 5.15.0 (2025-08-21)

Full Changelog: [v5.14.0...v5.15.0](https://github.com/openai/openai-node/compare/v5.14.0...v5.15.0)

### Features

* **api:** Add connectors support for MCP tool ([048bee3](https://github.com/openai/openai-node/commit/048bee3693822c75181012c47b4f54074e1efdd6))
* **api:** adding support for /v1/conversations to the API ([1380d17](https://github.com/openai/openai-node/commit/1380d1734b1e7eeb5d10fb73fe9cfce6199e5c8e))


### Chores

* add package to package.json ([6748b2b](https://github.com/openai/openai-node/commit/6748b2b64f6c06ee324694b95ae7df99493ff08d))

## 5.14.0 (2025-08-20)

Full Changelog: [v5.13.1...v5.14.0](https://github.com/openai/openai-node/compare/v5.13.1...v5.14.0)

### Features

* **mcp:** add code execution tool ([3f8264c](https://github.com/openai/openai-node/commit/3f8264cfaafb8d03aedabe53a0d17a7e3dc326d8))


### Chores

* **internal/ci:** setup breaking change detection ([87e8004](https://github.com/openai/openai-node/commit/87e8004d05eb27d14a11d433239af525c9c493b9))

## 5.13.1 (2025-08-19)

Full Changelog: [v5.13.0...v5.13.1](https://github.com/openai/openai-node/compare/v5.13.0...v5.13.1)

### Chores

* **api:** accurately represent shape for verbosity on Chat Completions ([5ddac3c](https://github.com/openai/openai-node/commit/5ddac3c7535e2df4b562fe1237b639e112bf5eef))

## 5.13.0 (2025-08-18)

Full Changelog: [v5.12.3...v5.13.0](https://github.com/openai/openai-node/compare/v5.12.3...v5.13.0)

### Features

* **api:** add new text parameters, expiration options ([499179c](https://github.com/openai/openai-node/commit/499179c095eae77dcccec5e2758ab72c8d829ea7))


### Chores

* **deps:** update dependency @types/node to v20.17.58 ([7812d0d](https://github.com/openai/openai-node/commit/7812d0db43309144cb46714a64fe97a3e12f5b04))
* **internal:** formatting change ([56b2073](https://github.com/openai/openai-node/commit/56b2073ac3553d6b9cca1185fe52a7e697d0b733))

## 5.12.3 (2025-08-12)

Full Changelog: [v5.12.2...v5.12.3](https://github.com/openai/openai-node/compare/v5.12.2...v5.12.3)

### Chores

* **internal:** update comment in script ([2488faf](https://github.com/openai/openai-node/commit/2488faf387da1c9bd7565d4bb5aded7bb53b8799))
* update @stainless-api/prism-cli to v5.15.0 ([db44a7d](https://github.com/openai/openai-node/commit/db44a7d2afa4e0330f4981c106f9abf2fd4ab432))

## 5.12.2 (2025-08-08)

Full Changelog: [v5.12.1...v5.12.2](https://github.com/openai/openai-node/compare/v5.12.1...v5.12.2)

### Bug Fixes

* **client:** fix verbosity parameter location in Responses ([eaa246f](https://github.com/openai/openai-node/commit/eaa246ffe00ffcdec45c695a96aeed3d87bb3f74))

## 5.12.1 (2025-08-07)

Full Changelog: [v5.12.0...v5.12.1](https://github.com/openai/openai-node/compare/v5.12.0...v5.12.1)

### Features

* **api:** adds GPT-5 and new API features: platform.openai.com/docs/guides/gpt-5 ([59acd85](https://github.com/openai/openai-node/commit/59acd85a3e0d4db7f7eca9a287b23ec00191fa68))


### Chores

* **internal:** move publish config ([b3d02f6](https://github.com/openai/openai-node/commit/b3d02f6faab5aa8e62998446485e43ebc802d68e))

## 5.12.0 (2025-08-05)

Full Changelog: [v5.11.0...v5.12.0](https://github.com/openai/openai-node/compare/v5.11.0...v5.12.0)

### Features

* **api:** manual updates ([f0d3056](https://github.com/openai/openai-node/commit/f0d3056932adb8e448fd1141eae4b07ad0c66ddb))

## 5.11.0 (2025-07-30)

Full Changelog: [v5.10.3...v5.11.0](https://github.com/openai/openai-node/compare/v5.10.3...v5.11.0)

### Features

* **api:** manual updates ([442dc25](https://github.com/openai/openai-node/commit/442dc25d7b31a374daf440f32f5694c3b6c20a81))

## 5.10.3 (2025-07-30)

Full Changelog: [v5.10.2...v5.10.3](https://github.com/openai/openai-node/compare/v5.10.2...v5.10.3)

### Bug Fixes

* **zod:** avoid adding redundant not to optional schemas [#1593](https://github.com/openai/openai-node/issues/1593) ([162b697](https://github.com/openai/openai-node/commit/162b697d1b946dc4af213c8efcdb7a7b5317bb6e))


### Chores

* **client:** refactor streaming slightly to better future proof it ([292427f](https://github.com/openai/openai-node/commit/292427f7f39f6dd64e46ba4360b0b96c8e49adc9))
* **internal:** remove redundant imports config ([28dd66d](https://github.com/openai/openai-node/commit/28dd66de15032d6ee620d3cf9f3e33ba61cad4e7))
* **internal:** version bump ([56e0760](https://github.com/openai/openai-node/commit/56e076090a9ce5c6b7f4ac4d84d33ca3f6522973))

## 5.10.2 (2025-07-22)

Full Changelog: [v5.10.1...v5.10.2](https://github.com/openai/openai-node/compare/v5.10.1...v5.10.2)

### Chores

* **api:** event shapes more accurate ([78f4e1d](https://github.com/openai/openai-node/commit/78f4e1d8e7400001a7bc6a05dc9a6e52a2047523))
* **internal:** version bump ([ea885ca](https://github.com/openai/openai-node/commit/ea885cac5c4231597141e91bd454e540830deb95))


### Documentation

* fix typos in helpers and realtime ([#1592](https://github.com/openai/openai-node/issues/1592)) ([17733b7](https://github.com/openai/openai-node/commit/17733b7e4a19754c9ca2ec815cf7d246b1dc138d))

## 5.10.1 (2025-07-16)

Full Changelog: [v5.10.0...v5.10.1](https://github.com/openai/openai-node/compare/v5.10.0...v5.10.1)

### Chores

* **internal:** version bump ([896b418](https://github.com/openai/openai-node/commit/896b41828ce468fed36ceb50082633e21a0945ca))
* **ts:** reorder package.json imports ([2f8d2f7](https://github.com/openai/openai-node/commit/2f8d2f7726dbc717c3c6e2a27dbd5b50ff9ef4b4))

## 5.10.0 (2025-07-16)

Full Changelog: [v5.9.2...v5.10.0](https://github.com/openai/openai-node/compare/v5.9.2...v5.10.0)

### Features

* **api:** manual updates ([35338b4](https://github.com/openai/openai-node/commit/35338b44ace44f0f0c0b48ea94aa96d3c81ea385))


### Chores

* **internal:** version bump ([3d9de4b](https://github.com/openai/openai-node/commit/3d9de4b2f28c80ea1f92446c092b23d69955ef30))

## 5.9.2 (2025-07-15)

Full Changelog: [v5.9.1...v5.9.2](https://github.com/openai/openai-node/compare/v5.9.1...v5.9.2)

### Chores

* **api:** update realtime specs ([4a20a3d](https://github.com/openai/openai-node/commit/4a20a3da8319667540a7b120f0f94e253420058e))
* **internal:** version bump ([103e8de](https://github.com/openai/openai-node/commit/103e8def71408724fb37104cfcb9419e01022f24))

## 5.9.1 (2025-07-15)

Full Changelog: [v5.9.0...v5.9.1](https://github.com/openai/openai-node/compare/v5.9.0...v5.9.1)

### Chores

* **api:** update realtime specs, build config ([bb4649f](https://github.com/openai/openai-node/commit/bb4649feb69a6d91e4eea857fd6f5e8c00f2a35d))

## 5.9.0 (2025-07-10)

Full Changelog: [v5.8.4...v5.9.0](https://github.com/openai/openai-node/compare/v5.8.4...v5.9.0)

### Features

* **api:** add file_url, fix event ID ([5f5d39e](https://github.com/openai/openai-node/commit/5f5d39e9e11224bf18a0301041b69548727ed4f3))

## 5.8.4 (2025-07-10)

Full Changelog: [v5.8.3...v5.8.4](https://github.com/openai/openai-node/compare/v5.8.3...v5.8.4)

### Chores

* **internal:** bump undici version in tests ([6f38b80](https://github.com/openai/openai-node/commit/6f38b809a69b6ab3fcbf1235e57bdb8912024ab3))
* make some internal functions async ([841940d](https://github.com/openai/openai-node/commit/841940d2ae036191b456e8398fbcb1f24c6e4deb))

## 5.8.3 (2025-07-08)

Full Changelog: [v5.8.2...v5.8.3](https://github.com/openai/openai-node/compare/v5.8.2...v5.8.3)

### Bug Fixes

* avoid console usage ([aec57c5](https://github.com/openai/openai-node/commit/aec57c5902b47d2d643f48d98a6014e0e77ba6cc))


### Chores

* add docs to RequestOptions type ([3735172](https://github.com/openai/openai-node/commit/37351723bc5a24c06a96c95e11104cda42a1bec3))
* **ci:** only run for pushes and fork pull requests ([e200bc4](https://github.com/openai/openai-node/commit/e200bc4db18a09d4148fff0056801140411bfa53))
* **client:** improve path param validation ([b5a043b](https://github.com/openai/openai-node/commit/b5a043bc96b6b6bfe8cca05e103a6e4d6fea962b))
* **internal/tests:** pin bun types version ([fcffa88](https://github.com/openai/openai-node/commit/fcffa880c1b31aeca70a6fa093f4b1f9d3db1a74))

## 5.8.2 (2025-06-27)

Full Changelog: [v5.8.1...v5.8.2](https://github.com/openai/openai-node/compare/v5.8.1...v5.8.2)

### Bug Fixes

* **client:** get fetchOptions type more reliably ([b3c959d](https://github.com/openai/openai-node/commit/b3c959d22d1002a85772385476f9a5098c8e1514))

## 5.8.1 (2025-06-26)

Full Changelog: [v5.8.0...v5.8.1](https://github.com/openai/openai-node/compare/v5.8.0...v5.8.1)

### Bug Fixes

* **client:** ensure addOutputText is called on responses.retrieve ([d55bb64](https://github.com/openai/openai-node/commit/d55bb64f8022c1e861b4b4d1c23ad4cc0e80e536))


### Chores

* **api:** remove unsupported property ([1966954](https://github.com/openai/openai-node/commit/19669545157dc0339f4c88855bd1ae9acaaac53d))
* **docs:** update README to include links to docs on Webhooks ([586d5da](https://github.com/openai/openai-node/commit/586d5daf5babc9f12793201f1e1e4c79829151f0))
* **webhooks:** make private methods really private ([0ee396a](https://github.com/openai/openai-node/commit/0ee396a2a0e03c794c7cfa3c9f1beb848fd77f1d))

## 5.8.0 (2025-06-26)

Full Changelog: [v5.7.0...v5.8.0](https://github.com/openai/openai-node/compare/v5.7.0...v5.8.0)

### Features

* **api:** webhook and deep research support ([f2b4f66](https://github.com/openai/openai-node/commit/f2b4f66226ad514d702f8acbb4820ae90b4fd40e))


### Bug Fixes

* **ci:** release-doctor — report correct token name ([aed2587](https://github.com/openai/openai-node/commit/aed2587294922415aeaece0b9a6911c3e1577c51))


### Refactors

* **types:** replace Record with mapped types ([7865910](https://github.com/openai/openai-node/commit/7865910c7d66a14dac70ea119e109975d9169414))

## 5.7.0 (2025-06-23)

Full Changelog: [v5.6.0...v5.7.0](https://github.com/openai/openai-node/compare/v5.6.0...v5.7.0)

### Features

* **api:** update api shapes for usage and code interpreter ([f2100e8](https://github.com/openai/openai-node/commit/f2100e89334753e7f580f7f20f48b43eb8ba2fe3))

## 5.6.0 (2025-06-20)

Full Changelog: [v5.5.1...v5.6.0](https://github.com/openai/openai-node/compare/v5.5.1...v5.6.0)

### Features

* **api:** make model and inputs not required to create response ([52211c0](https://github.com/openai/openai-node/commit/52211c0e67c2926b27f4adee1f626066d90b6a2e))


### Bug Fixes

* **client:** explicitly copy fetch in withOptions ([0efacae](https://github.com/openai/openai-node/commit/0efacaeb8eb0bfbad6bd6bc29fc57f00916411c0))


### Chores

* **readme:** update badges ([6898954](https://github.com/openai/openai-node/commit/689895400adf38e85810ba8b63dc16ed56839ddd))
* **readme:** use better example snippet for undocumented params ([668611f](https://github.com/openai/openai-node/commit/668611f4331ffa375257f3bc138c54d6ee965cd6))

## 5.5.1 (2025-06-17)

Full Changelog: [v5.5.0...v5.5.1](https://github.com/openai/openai-node/compare/v5.5.0...v5.5.1)

### Chores

* **ci:** enable for pull requests ([e1cf00c](https://github.com/openai/openai-node/commit/e1cf00cf2a2ce832d759f3253f10826d3c16338e))

## 5.5.0 (2025-06-16)

Full Changelog: [v5.4.0...v5.5.0](https://github.com/openai/openai-node/compare/v5.4.0...v5.5.0)

### Features

* **api:** manual updates ([ab6b57c](https://github.com/openai/openai-node/commit/ab6b57c241dc7c57e411fae572842da801e9828b))

## 5.4.0 (2025-06-16)

Full Changelog: [v5.3.0...v5.4.0](https://github.com/openai/openai-node/compare/v5.3.0...v5.4.0)

### Features

* **api:** add reusable prompt IDs ([c720bb3](https://github.com/openai/openai-node/commit/c720bb3fb909cdef1cc679df38357f046d3d2756))
* **client:** add support for endpoint-specific base URLs ([05f558b](https://github.com/openai/openai-node/commit/05f558bcdd362ae56000fe515a24593363d59e83))


### Bug Fixes

* publish script — handle NPM errors correctly ([a803cce](https://github.com/openai/openai-node/commit/a803cce6d44116eaba34f2bd7cb0f5d8f5c72be8))


### Chores

* **client:** refactor imports ([9eb4470](https://github.com/openai/openai-node/commit/9eb44703432d7e22290564013f8e1798c82918a3))
* **internal:** add pure annotations, make base APIResource abstract ([418eb02](https://github.com/openai/openai-node/commit/418eb02e3ebe3ef58d851405f9eb5cae275194b4))

## 5.3.0 (2025-06-10)

Full Changelog: [v5.2.0...v5.3.0](https://github.com/openai/openai-node/compare/v5.2.0...v5.3.0)

### Features

* **api:** Add o3-pro model IDs ([9988f8e](https://github.com/openai/openai-node/commit/9988f8ea50a370abfc03bc97882d1ddd83837217))

## 5.2.0 (2025-06-09)

Full Changelog: [v5.1.1...v5.2.0](https://github.com/openai/openai-node/compare/v5.1.1...v5.2.0)

### Features

* **api:** Add tools and structured outputs to evals ([64844f1](https://github.com/openai/openai-node/commit/64844f1be2da9658a603fac304d1387f28a110a4))


### Bug Fixes

* **changelog:** remove duplicated entries ([18484cc](https://github.com/openai/openai-node/commit/18484cceea615a01b62590b9b626b9e2140c7dd9))


### Chores

* avoid type error in certain environments ([44ac3d9](https://github.com/openai/openai-node/commit/44ac3d96eb258cd777edb02004763ccef253ae7a))


### Documentation

* **changelog:** reference MIGRATION.md ([b3d488f](https://github.com/openai/openai-node/commit/b3d488feff5acb020f5db6f27ea94884c56bc767)), closes [#1539](https://github.com/openai/openai-node/issues/1539)

## 5.1.1 (2025-06-05)

Full Changelog: [v5.1.0...v5.1.1](https://github.com/openai/openai-node/compare/v5.1.0...v5.1.1)

### Bug Fixes

* **assistants:** handle thread.run.incomplete while streaming ([8f5e7f3](https://github.com/openai/openai-node/commit/8f5e7f3ffaad7bdd0424743eb68a63f918dbabb8))


### Chores

* **docs:** use top-level-await in example snippets ([065d3b0](https://github.com/openai/openai-node/commit/065d3b08b29e10d7af58bb66816245f71f386833))
* **internal:** fix readablestream types in node 20 ([771ae81](https://github.com/openai/openai-node/commit/771ae818c32d855778c3847d9005efb80b0a8cd5))

## 5.1.0 (2025-06-03)

Full Changelog: [v5.0.2...v5.1.0](https://github.com/openai/openai-node/compare/v5.0.2...v5.1.0)

### Features

* **api:** add new realtime and audio models, realtime session options ([1219f09](https://github.com/openai/openai-node/commit/1219f090b02b8d53f29abf5a0e7564af0f9f68fc))


### Chores

* adjust eslint.config.mjs ignore pattern ([9b5c898](https://github.com/openai/openai-node/commit/9b5c898fe5099859252d3c3fd62010d6aa552fef))
* **api:** update type names ([7c296d6](https://github.com/openai/openai-node/commit/7c296d62bbde52ec84e3af78ed12f1cd196f9d52))

## 5.0.2 (2025-06-02)

Full Changelog: [v5.0.1...v5.0.2](https://github.com/openai/openai-node/compare/v5.0.1...v5.0.2)

### Bug Fixes

* **api:** Fix evals and code interpreter interfaces ([992a9d8](https://github.com/openai/openai-node/commit/992a9d84fe412d96496b11b7a6be5c927f78db6c))


### Chores

* **deps:** bump eslint-plugin-prettier ([1428a8b](https://github.com/openai/openai-node/commit/1428a8b4f82e79695c2cbed5e12ca0da4958423b))
* **internal:** codegen related update ([a65428f](https://github.com/openai/openai-node/commit/a65428fc81e05f681eab806e7efc6ad26062221b))

## 5.0.1 (2025-05-29)

Full Changelog: [v5.0.0...v5.0.1](https://github.com/openai/openai-node/compare/v5.0.0...v5.0.1)

### Chores

* sync changes ([90b100d](https://github.com/openai/openai-node/commit/90b100dcf504ecf0b98620702cb6bd0988695320))
* **types:** add missing type annotation ([de37b55](https://github.com/openai/openai-node/commit/de37b55e6e95d7089ee845d4144883d93bb18ca0))

## 5.0.0 (2025-05-29)

This release migrates from node-fetch to builtin fetch, for full release notes see [MIGRATION.md](https://github.com/openai/openai-node/blob/master/MIGRATION.md).

Full Changelog: [v5.0.0-alpha.0...v5.0.0](https://github.com/openai/openai-node/compare/v5.0.0-alpha.0...v5.0.0)

### Features

* add audio helpers ([ec5067d](https://github.com/openai/openai-node/commit/ec5067deba1fe4202d90db42e45c3bd774936af1))
* add migration guide ([cfd2088](https://github.com/openai/openai-node/commit/cfd2088219464381077dec62d38d1830ab0b43f3))
* add SKIP_BREW env var to ./scripts/bootstrap ([7ea4a24](https://github.com/openai/openai-node/commit/7ea4a244d5b39e0745aea1a89abff940e2c3922f))
* **api:** add /v1/responses and built-in tools ([91af47c](https://github.com/openai/openai-node/commit/91af47cc4f62b08a451bc39f44c64244a71c1f2c))
* **api:** add `get /chat/completions` endpoint ([9697139](https://github.com/openai/openai-node/commit/9697139a5f38bcc2dffa3322ff575eb1fc8b4e35))
* **api:** add `get /responses/{response_id}/input_items` endpoint ([f2c5aba](https://github.com/openai/openai-node/commit/f2c5aba736f99550a9a7837be22b39b36a7495d0))
* **api:** add container endpoint ([3ffca5c](https://github.com/openai/openai-node/commit/3ffca5c5b2dc6819e955ed343b2bb6e2095e7bdf))
* **api:** Add evalapi to sdk ([70092d7](https://github.com/openai/openai-node/commit/70092d768426b8e0dd4bca21e7a3dea009e25b9f))
* **api:** add gpt-4.5-preview ([1d4478d](https://github.com/openai/openai-node/commit/1d4478d7935028e20a9d9d11ff29ff8b991c44f9))
* **api:** add image sizes, reasoning encryption ([0c25021](https://github.com/openai/openai-node/commit/0c2502187f8895f029277a7be9825862f458e9aa))
* **api:** add o3 and o4-mini model IDs ([19cda5d](https://github.com/openai/openai-node/commit/19cda5d3b908238ae6c6f5609ac3a118d4d8acc2))
* **api:** Add reinforcement fine-tuning api support ([e6bbaf5](https://github.com/openai/openai-node/commit/e6bbaf577aa6bdf3bcdaf25a5a7d4e8202831c7a))
* **api:** add support for storing chat completions ([59da177](https://github.com/openai/openai-node/commit/59da1771b93158d5d89efc9e63e1ef9c09a634f3))
* **api:** adding gpt-4.1 family of model IDs ([8a2a745](https://github.com/openai/openai-node/commit/8a2a7454bee0fbe9e4729d47f6b894e5f25d68f5))
* **api:** adding new image model support ([a0010fd](https://github.com/openai/openai-node/commit/a0010fdb60fe723ebc70103cceca552aca51855e))
* **api:** Config update for pakrym-stream-param ([469ad7b](https://github.com/openai/openai-node/commit/469ad7b9d76b674aa3fd829128a54758ab7adfbd))
* **api:** further updates for evals API ([3f6f248](https://github.com/openai/openai-node/commit/3f6f248191b45015924be76fd5154d149c4ed8a0))
* **api:** manual updates ([debe529](https://github.com/openai/openai-node/commit/debe5295d077f79cc4b4eefefb008e5a10b32793))
* **api:** manual updates ([e83286b](https://github.com/openai/openai-node/commit/e83286b10b20d3e4c02903739b045af5cbf71cde))
* **api:** manual updates ([959eace](https://github.com/openai/openai-node/commit/959eace6ec132a83f731fa496d5b8b7a11fa6bb2))
* **api:** manual updates ([179a607](https://github.com/openai/openai-node/commit/179a607a89fabda32ebad62cc7ee86b5332a29f4))
* **api:** manual updates ([0cb0c86](https://github.com/openai/openai-node/commit/0cb0c863b3bda6e6d72b3b5cdba3c8791db9bb77))
* **api:** manual updates ([678ae6b](https://github.com/openai/openai-node/commit/678ae6b7112ed9b27d092b3234dd034d572deb9c))
* **api:** manual updates ([4560dc6](https://github.com/openai/openai-node/commit/4560dc62f8c65e9857085409e382760aa601d60b))
* **api:** manual updates ([554c3b1](https://github.com/openai/openai-node/commit/554c3b142024bec8010474cd7e42b99a209d4daa))
* **api:** manual updates ([b893d81](https://github.com/openai/openai-node/commit/b893d81420359c712dab6997c2dbc9f309549712))
* **api:** manual updates ([c1c2819](https://github.com/openai/openai-node/commit/c1c281983e23dcfdca964720265d3cba28b17795))
* **api:** manual updates ([efce6d3](https://github.com/openai/openai-node/commit/efce6d3d719ad463b035b22e9a1cf461ab62b5af))
* **api:** manual updates ([32afb00](https://github.com/openai/openai-node/commit/32afb0022939b19069c37fcd9cabfe666ea86b77))
* **api:** new API tools ([fb4014f](https://github.com/openai/openai-node/commit/fb4014ffac7b220d37bd03c94fa745386b010bf0))
* **api:** new models for TTS, STT, + new audio features for Realtime ([#1407](https://github.com/openai/openai-node/issues/1407)) ([d11b13c](https://github.com/openai/openai-node/commit/d11b13cdf5412f03e551365297a27e610a36edda))
* **api:** new streaming helpers for background responses ([1ddd6ff](https://github.com/openai/openai-node/commit/1ddd6ff182b09d696954fda4bde50fb82f1d6585))
* **api:** o1-pro now available through the API ([#1398](https://github.com/openai/openai-node/issues/1398)) ([aefd267](https://github.com/openai/openai-node/commit/aefd2675154ff848032a7fec856f0db6ed2ad629))
* **api:** responses x eval api ([ea1d56c](https://github.com/openai/openai-node/commit/ea1d56c979ad7136aa584a773904b0570ba14783))
* **api:** Updating Assistants and Evals API schemas ([8cc63d3](https://github.com/openai/openai-node/commit/8cc63d351057678d474fe1a16e3077370c83fddb))
* **client:** accept RFC6838 JSON content types ([67da9ce](https://github.com/openai/openai-node/commit/67da9ce89ea010813779b98c18fea84d9964c7de))
* **client:** add Realtime API support ([7737d25](https://github.com/openai/openai-node/commit/7737d2547c5c6c45004fe281b8122c9e2adc0efb))
* **client:** add withOptions helper ([7e9ea85](https://github.com/openai/openai-node/commit/7e9ea85f63a0989b3446834d9e1a94c0d050cf87))
* **client:** improve logging ([ead0ba4](https://github.com/openai/openai-node/commit/ead0ba4dc9f51c35007c5fe20f9954855f558652))
* **client:** promote beta completions methods to GA ([4c622f9](https://github.com/openai/openai-node/commit/4c622f9f55529e3aab30c834349d341038499db1))


### Bug Fixes

* **api:** add missing file rank enum + more metadata ([b943a0a](https://github.com/openai/openai-node/commit/b943a0ae4682a410172e1063a9424f5150cd9010))
* **api:** correct some Responses types ([#1391](https://github.com/openai/openai-node/issues/1391)) ([e983d0c](https://github.com/openai/openai-node/commit/e983d0c61d33b106f149d87eed90378bd0bbc349))
* **api:** improve type resolution when importing as a package ([#1444](https://github.com/openai/openai-node/issues/1444)) ([4af79dd](https://github.com/openai/openai-node/commit/4af79ddd5b19925fa09d9ae877470aa8304535c2))
* **assistants:** handle `thread.run.incomplete` event ([a2714bb](https://github.com/openai/openai-node/commit/a2714bb5253ade80cb15455ceb8f6dbea63cb1d0))
* **audio:** correctly handle transcription streaming ([9c7d352](https://github.com/openai/openai-node/commit/9c7d352181c690156e26c9538c00edff6db5b384))
* avoid type error in certain environments ([#1413](https://github.com/openai/openai-node/issues/1413)) ([f395e95](https://github.com/openai/openai-node/commit/f395e9584ac63780442bb54c2d292914eaecf3c7))
* **azure/audio:** use model param for deployments ([0eda70a](https://github.com/openai/openai-node/commit/0eda70adc3c88c12792c1eee9c3279579a86d412))
* **azure:** add /images/edits to deployments endpoints ([#1509](https://github.com/openai/openai-node/issues/1509)) ([4b18059](https://github.com/openai/openai-node/commit/4b180597633a527c435e049d885103ab06311b90))
* **azure:** add /images/edits to deployments endpoints ([#1509](https://github.com/openai/openai-node/issues/1509)) ([84fc31a](https://github.com/openai/openai-node/commit/84fc31aa903eceeb80815f6b17562fc463a71cfc))
* **azure:** use correct internal method ([a9c7821](https://github.com/openai/openai-node/commit/a9c78216d88379bc1d5103b30970f041d22083b8))
* **client:** always overwrite when merging headers ([c160550](https://github.com/openai/openai-node/commit/c160550761eed22b038ac8a5b477729fe298834c))
* **client:** fix export map for index exports ([#1328](https://github.com/openai/openai-node/issues/1328)) ([26d5868](https://github.com/openai/openai-node/commit/26d5868dd53045bc820a607100eab1070785f50c))
* **client:** fix export map for index exports, accept BunFile ([9416c96](https://github.com/openai/openai-node/commit/9416c96fdc12c9ea22da04ac317d93cb2ad94f57))
* **client:** fix TypeError with undefined File ([0e980d0](https://github.com/openai/openai-node/commit/0e980d05e8e1fb4befae443fb84b8b9fab8dbd50))
* **client:** remove duplicate types ([bee2ce5](https://github.com/openai/openai-node/commit/bee2ce5841f25b1f56cdc1fd0b36b0758d2c9bdc))
* **client:** remove duplicate types ([#1410](https://github.com/openai/openai-node/issues/1410)) ([23fd3ff](https://github.com/openai/openai-node/commit/23fd3ffef3b19656b27576b4d0c613d19ea1ae2f))
* **client:** return binary content from `get /containers/{container_id}/files/{file_id}/content` ([8502966](https://github.com/openai/openai-node/commit/8502966ed2fee9162ad14fdf04c893e1fa130a51))
* **client:** return binary content from `get /containers/{container_id}/files/{file_id}/content` ([899869b](https://github.com/openai/openai-node/commit/899869b40ab5f64145c48521378f1925f6b5b33a))
* **client:** return binary content from `get /containers/{container_id}/files/{file_id}/content` ([83129d7](https://github.com/openai/openai-node/commit/83129d7eac3dd784bb1c29fa344c5b808a59db73))
* **client:** send `X-Stainless-Timeout` in seconds ([5a272a7](https://github.com/openai/openai-node/commit/5a272a76515b09810fcb5d0ca63dd6050d1a8023))
* **client:** send `X-Stainless-Timeout` in seconds ([#1442](https://github.com/openai/openai-node/issues/1442)) ([5e5e460](https://github.com/openai/openai-node/commit/5e5e4607a103fcb6257c071bb4bf57902ee6415f))
* **client:** send all configured auth headers ([ee01414](https://github.com/openai/openai-node/commit/ee01414c206f18a537f3616bcf1e208aab311030))
* compat with more runtimes ([f743730](https://github.com/openai/openai-node/commit/f74373020ab01ace999a72d916e017db0177bf16))
* correct imports ([21f2107](https://github.com/openai/openai-node/commit/21f210782b1ee3b33231cfed0277ab8e3a764bcb))
* correctly decode multi-byte characters over multiple chunks ([f3d7083](https://github.com/openai/openai-node/commit/f3d708390a36427206edfc67875a7987eb483e55))
* **docs:** correct docstring on responses.stream ([1847673](https://github.com/openai/openai-node/commit/1847673de09586c809e1057a6b08c604471e13ff))
* **ecosystem-tests/bun:** bump dependencies ([1e52734](https://github.com/openai/openai-node/commit/1e52734e28a0e474b11c90977fd3161ea2e50f8c))
* **ecosystem-tests/cloudflare-worker:** ignore lib errors for now ([157248a](https://github.com/openai/openai-node/commit/157248ae85d2261f9538128703d0ebbc24347c61))
* **ecosystem-tests:** correct ecosystem tests setup ([6fa0675](https://github.com/openai/openai-node/commit/6fa06756624071fb1486c69a496ba906fef96de2))
* **embeddings:** correctly decode base64 data ([#1448](https://github.com/openai/openai-node/issues/1448)) ([d6b99c8](https://github.com/openai/openai-node/commit/d6b99c8fcbd35ef6b45d66f487aea759c01febbc))
* **exports:** add missing type exports ([a816029](https://github.com/openai/openai-node/commit/a81602996a1d9c3ceda79d88fe163a1e6b823e77))
* **exports:** add missing type exports ([#1417](https://github.com/openai/openai-node/issues/1417)) ([06c03d7](https://github.com/openai/openai-node/commit/06c03d7125d8331679dd206d0e34705d65669046))
* **exports:** ensure resource imports don't require /index ([d028ad7](https://github.com/openai/openai-node/commit/d028ad7b0debb585534acb73fa5cafe6f8d90f37))
* **helpers/zod:** error on optional + not nullable fields ([6e424b5](https://github.com/openai/openai-node/commit/6e424b5cac1b2ea7e108ce24154be5bdddf56bdd))
* **internal:** add mts file + crypto shim types ([a06deb8](https://github.com/openai/openai-node/commit/a06deb8aec21ecf8bfbc369112da10a790039178))
* **internal:** clean up undefined File test ([da43aa9](https://github.com/openai/openai-node/commit/da43aa91586fe80137c6500e850dca82085936b8))
* **internal:** fix file uploads in node 18 jest ([abfff03](https://github.com/openai/openai-node/commit/abfff03f49e62e195d112229127be674cc44497d))
* **internal:** work around https://github.com/vercel/next.js/issues/76881 ([#1427](https://github.com/openai/openai-node/issues/1427)) ([84edc62](https://github.com/openai/openai-node/commit/84edc62d05eddaefee0973f9687fcfdd43b0afa9))
* **jsr:** correct zod config ([04e30c0](https://github.com/openai/openai-node/commit/04e30c03ce0496a718aebf4cc2daac82ebba1ddb))
* **jsr:** export realtime helpers ([0ea64eb](https://github.com/openai/openai-node/commit/0ea64eb2bde99e243761ea2e3d9d3c294c9f7fbc))
* **jsr:** export zod helpers ([77e1180](https://github.com/openai/openai-node/commit/77e118082334710cab361efb95934422e4db6b18))
* **mcp:** remove unused tools.ts ([#1445](https://github.com/openai/openai-node/issues/1445)) ([4ba9947](https://github.com/openai/openai-node/commit/4ba994773b41a3ed05a3ad908b235fc5f3810dfc))
* optimize sse chunk reading off-by-one error ([#1339](https://github.com/openai/openai-node/issues/1339)) ([b0b4189](https://github.com/openai/openai-node/commit/b0b4189420e1c5bb5fc4bbb8925f88fe65f9b217))
* **package:** add chat/completions.ts back in ([#1333](https://github.com/openai/openai-node/issues/1333)) ([1f38cc1](https://github.com/openai/openai-node/commit/1f38cc1976f4091a90a38d49e6ddc1c22e5c39ab))
* **parsing:** remove tool_calls default empty array ([#1341](https://github.com/openai/openai-node/issues/1341)) ([6d056bf](https://github.com/openai/openai-node/commit/6d056bf95c9be4046decf20ec4c98dfa2bea2723))
* **realtime:** call .toString() on WebSocket url ([#1324](https://github.com/openai/openai-node/issues/1324)) ([6e9444c](https://github.com/openai/openai-node/commit/6e9444c6c77a93ff4ce06bd5b27a9c236ba6f307))
* **responses:** correct computer use enum value ([66fb815](https://github.com/openai/openai-node/commit/66fb8157217de604d7f535e917b085fa8b6754d4))
* **responses:** correct reasoning output type ([9cb9576](https://github.com/openai/openai-node/commit/9cb95763cab5678c5098b37ad0fe1ec83d2c1cb7))
* **responses:** correctly add output_text ([8ae07cc](https://github.com/openai/openai-node/commit/8ae07cc036895529a028134451fe2ab5c1661871))
* **responses:** support streaming retrieve calls ([657807c](https://github.com/openai/openai-node/commit/657807c2d7cbf2c6fc9a92ce98bb7295bb156326))
* **tests/embeddings:** avoid cross-realm issue ([aceaac0](https://github.com/openai/openai-node/commit/aceaac05c05fa318c4bff7ff340b512a6bd904b9))
* **tests:** don't rely on OPENAI_API_KEY env variable ([087580a](https://github.com/openai/openai-node/commit/087580ae5ebedc88f6f219c7d00c08607722a519))
* **tests:** manually reset node:buffer File ([1d18ed4](https://github.com/openai/openai-node/commit/1d18ed4f90436e7041835d201c8cb1c373ded418))
* **tests:** port tests to new setup ([9eb9854](https://github.com/openai/openai-node/commit/9eb98543660c86f0b11766ef95b35fa28fd16e47))
* **tests:** stop using node:stream ([317a04d](https://github.com/openai/openai-node/commit/317a04d8d189ee33a9dd5308668296a708b391a8))
* **threads:** remove unused duplicative types ([0b77c7c](https://github.com/openai/openai-node/commit/0b77c7c9da64962fd50854be06661cdce549d326))
* **types:** export AssistantStream ([#1472](https://github.com/openai/openai-node/issues/1472)) ([bc492ba](https://github.com/openai/openai-node/commit/bc492ba124cddd545eec7a1199712452c573a7a4))
* **types:** export ParseableToolsParams ([#1486](https://github.com/openai/openai-node/issues/1486)) ([3e7c92c](https://github.com/openai/openai-node/commit/3e7c92c8a76c1f747610d63d9d69a88b796ee9fc))
* **types:** ignore missing `id` in responses pagination ([d2be74a](https://github.com/openai/openai-node/commit/d2be74a28dec48cd7d88db88af95e8bc608cdede))
* **types:** improve responses type names ([#1392](https://github.com/openai/openai-node/issues/1392)) ([4548326](https://github.com/openai/openai-node/commit/454832606ebe9d5cf8ffd436eac09375f682c495))
* **zod:** warn on optional field usage ([#1469](https://github.com/openai/openai-node/issues/1469)) ([aea2d12](https://github.com/openai/openai-node/commit/aea2d123d200e6a7eae11e66583127270a8db8bf))


### Performance Improvements

* **embedding:** default embedding creation to base64 ([#1312](https://github.com/openai/openai-node/issues/1312)) ([be00d29](https://github.com/openai/openai-node/commit/be00d29fadb2b78920bcae1e6e72750bc6f973a4)), closes [#1310](https://github.com/openai/openai-node/issues/1310)


### Chores

* add hash of OpenAPI spec/config inputs to .stats.yml ([1b0a94d](https://github.com/openai/openai-node/commit/1b0a94d088c2891fcad0ca0de3a1e4e205a7c9cf))
* add missing type alias exports ([5d75cb9](https://github.com/openai/openai-node/commit/5d75cb95019ae77eafb0c878b355f09a1f87c3bd))
* **api:** updates to supported Voice IDs ([28130c7](https://github.com/openai/openai-node/commit/28130c7fe172dd90fcf2036dc72750e485e42645))
* **ci:** add timeout thresholds for CI jobs ([5775451](https://github.com/openai/openai-node/commit/5775451a55212687ba998b332c1394528d98121f))
* **ci:** bump node version for release workflows ([bbf5d45](https://github.com/openai/openai-node/commit/bbf5d45259a8bfba62e2217955597ec0f6cfead4))
* **ci:** only use depot for staging repos ([c59c3b5](https://github.com/openai/openai-node/commit/c59c3b5ead95b424b27c8c9f2120ad4283fb280e))
* **ci:** run on more branches and use depot runners ([e17a4f8](https://github.com/openai/openai-node/commit/e17a4f8e1fc3de02c953421debf39827ea72d52c))
* **client:** drop support for EOL node versions ([a326944](https://github.com/openai/openai-node/commit/a326944e8a8822bc70f86d7046de3142f9dff530))
* **client:** expose headers on some streaming errors ([#1423](https://github.com/openai/openai-node/issues/1423)) ([6c93a23](https://github.com/openai/openai-node/commit/6c93a23b79f335a21c65b52d1192890a5325ed6d))
* **client:** minor internal fixes ([5032c28](https://github.com/openai/openai-node/commit/5032c2802bd51885270badf47e27768f62240d25))
* **client:** more accurate streaming errors ([0c21914](https://github.com/openai/openai-node/commit/0c21914d90b0ef1073d99c539cf9ef18912b8d0b))
* **client:** move misc public files to new `core/` directory, deprecate old paths ([38c9d54](https://github.com/openai/openai-node/commit/38c9d548fded9000cde85270b38085c61905b5c1))
* **client:** only accept standard types for file uploads ([53e35c8](https://github.com/openai/openai-node/commit/53e35c8b10a8e3ef95c0d644d59ab915225b8114))
* deprecate Assistants API ([0be23b9](https://github.com/openai/openai-node/commit/0be23b98b6be9f8922d035270b1c907307010a29))
* **docs:** add missing deprecation warnings ([995075b](https://github.com/openai/openai-node/commit/995075b632051b5bb33c0381056107b2fe93931e))
* **docs:** grammar improvements ([7761cfb](https://github.com/openai/openai-node/commit/7761cfb0a8a56d056a73c046a6a613f66ada4abe))
* **docs:** improve docs for withResponse/asResponse ([9f4c30b](https://github.com/openai/openai-node/commit/9f4c30b9bcc2f373b3087dba69bd837f96f79d81))
* **docs:** improve migration doc ([732d870](https://github.com/openai/openai-node/commit/732d87001cbd9aa095e7b58dc843e86547e3f510))
* **docs:** update zod tool call example, fix azure tests ([f18ced8](https://github.com/openai/openai-node/commit/f18ced883e4b5d689e0569d9b163b1958688b669))
* **exports:** cleaner resource index imports ([#1396](https://github.com/openai/openai-node/issues/1396)) ([023d106](https://github.com/openai/openai-node/commit/023d106185abf62f892bff66faf617eb45777004))
* **exports:** stop using path fallbacks ([09af7ff](https://github.com/openai/openai-node/commit/09af7ffd42458c6c26d9325060fcb8925aca7c81))
* **exports:** stop using path fallbacks ([#1397](https://github.com/openai/openai-node/issues/1397)) ([7c3d212](https://github.com/openai/openai-node/commit/7c3d212b47ee3090f5bbb82dd21026ba532da6e0))
* fix example types ([20f179d](https://github.com/openai/openai-node/commit/20f179db1bb681db5d1a91adcaab16012d6ffcdf))
* improve publish-npm script --latest tag logic ([6207a2a](https://github.com/openai/openai-node/commit/6207a2a03d3279423de594eed18c5efb4ce321af))
* **internal:** add aliases for Record and Array ([#1443](https://github.com/openai/openai-node/issues/1443)) ([1cb66b6](https://github.com/openai/openai-node/commit/1cb66b6ccbcecaa6e48b90d37d8cac4840bb69a4))
* **internal:** add back release workflow ([ca6266e](https://github.com/openai/openai-node/commit/ca6266eea5229056a3bc2b5e4225b9ea9eaa459e))
* **internal:** add Bun.File ecosystem test ([cb4194f](https://github.com/openai/openai-node/commit/cb4194f08a2dcb4fc4231bf1b74ed5d6e0aca435))
* **internal:** add missing return type annotation ([#1334](https://github.com/openai/openai-node/issues/1334)) ([13aab10](https://github.com/openai/openai-node/commit/13aab101588c2eee1250d7c50b2abfeca1c5fa3d))
* **internal:** add proxy ecosystem tests ([619711a](https://github.com/openai/openai-node/commit/619711ae0da5243c64c266d615703279f7651f58))
* **internal:** bump migration cli version ([a899c97](https://github.com/openai/openai-node/commit/a899c9748de17ef468a03a97b9ed82124189ff4c))
* **internal:** codegen related update ([c735a3c](https://github.com/openai/openai-node/commit/c735a3c24ac8255df50f89c519fb7dfc617db045))
* **internal:** fix devcontainers setup ([#1343](https://github.com/openai/openai-node/issues/1343)) ([9485f5d](https://github.com/openai/openai-node/commit/9485f5d4d6718bff7f579223c9aa528898451533))
* **internal:** fix eslint ignores ([ad5a9b6](https://github.com/openai/openai-node/commit/ad5a9b6f07002df70764f1b9e5d6cd675eba87ea))
* **internal:** fix examples ([#1457](https://github.com/openai/openai-node/issues/1457)) ([a100f0a](https://github.com/openai/openai-node/commit/a100f0a0e1d336f8a78c8bbd9e3703cda3f0c5d8))
* **internal:** fix format script ([3e1ea40](https://github.com/openai/openai-node/commit/3e1ea4063327ac34f4f46536600a8923f96dbbb0))
* **internal:** fix formatting ([6469d53](https://github.com/openai/openai-node/commit/6469d5323b653f19e90a7470d81c914c640c6f8b))
* **internal:** fix lint ([45a372c](https://github.com/openai/openai-node/commit/45a372ca0436f2f79c2387665b1c1bc04fd3bfed))
* **internal:** fix release workflows ([353349d](https://github.com/openai/openai-node/commit/353349de9ee10d32d3243cb5c60a8ae982c49d37))
* **internal:** fix tests failing on node v18 ([c54270a](https://github.com/openai/openai-node/commit/c54270a58ada1d0d7878ce80c7c2093a56fed158))
* **internal:** fix tests not always being type checked ([0266b41](https://github.com/openai/openai-node/commit/0266b41efa311205f0fc51b6dc6d29ab003254a6))
* **internal:** improve node 18 shims ([ee3f483](https://github.com/openai/openai-node/commit/ee3f48333a1d73a096f3417b2701fd722e4fbc68))
* **internal:** minor client file refactoring ([d1aa00a](https://github.com/openai/openai-node/commit/d1aa00afc760f73624a8a109600c03deba40e72b))
* **internal:** only run examples workflow in main repo ([#1450](https://github.com/openai/openai-node/issues/1450)) ([93569f3](https://github.com/openai/openai-node/commit/93569f39799512604db439af20f0ef0ad3dae295))
* **internal:** reduce CI branch coverage ([77fc77f](https://github.com/openai/openai-node/commit/77fc77f7d05d03eafe6c8f002044c60c4bab3c64))
* **internal:** refactor utils ([e7fbfbc](https://github.com/openai/openai-node/commit/e7fbfbce41c00aaa7d3b75a4bf001c7562b5b722))
* **internal:** remove CI condition ([#1381](https://github.com/openai/openai-node/issues/1381)) ([e905c95](https://github.com/openai/openai-node/commit/e905c95a27213ee65210b061ead4c982de01648b))
* **internal:** remove unnecessary todo ([b55321e](https://github.com/openai/openai-node/commit/b55321e2d0713d41b4050e8ccf0ac4eefb45be3a))
* **internal:** run CI on update-specs branch ([9c45ef3](https://github.com/openai/openai-node/commit/9c45ef37249e7db3ba8aa2e81886ffe306b95da4))
* **internal:** run example files in CI ([#1357](https://github.com/openai/openai-node/issues/1357)) ([1044c48](https://github.com/openai/openai-node/commit/1044c487566569e773d5f6c1a94ce6b614e62b80))
* **internal:** share typescript helpers ([2470933](https://github.com/openai/openai-node/commit/247093374538f0e714178134c38813bc4fde9ecf))
* **internal:** skip broken test ([#1458](https://github.com/openai/openai-node/issues/1458)) ([58f4559](https://github.com/openai/openai-node/commit/58f4559d952f6e56a8f27a6bcaba0acf295623df))
* **internal:** update @types/bun ([d94b41a](https://github.com/openai/openai-node/commit/d94b41a58e24c82c3f7369bd1360b394e93cf1dd))
* **internal:** update release workflows ([2cbf49a](https://github.com/openai/openai-node/commit/2cbf49a0b9a8cfbee29cec558c5ccdcebd72396f))
* **internal:** upload builds and expand CI branch coverage ([#1460](https://github.com/openai/openai-node/issues/1460)) ([2d45287](https://github.com/openai/openai-node/commit/2d452879000c07f3ef4e775e19a527f5f6fa7b4c))
* **migration:** add beta handling ([3508099](https://github.com/openai/openai-node/commit/3508099991ecfa260d77678037275133130e09dc))
* move ChatModel type to shared ([236dbf4](https://github.com/openai/openai-node/commit/236dbf4092fccf7697852c6341a8f38f0241770c))
* **package:** remove engines ([500a82f](https://github.com/openai/openai-node/commit/500a82f45d46697be14987e12d896acb2b109d32))
* **perf:** faster base64 decoding ([11b9534](https://github.com/openai/openai-node/commit/11b9534d317f87cdcb1934ead013f058865e675e))
* **tests:** improve enum examples ([#1454](https://github.com/openai/openai-node/issues/1454)) ([15a86c9](https://github.com/openai/openai-node/commit/15a86c958bf300486907f2498e1028fc9bc50b00))
* **tests:** stop using node-fetch, don't directly upload FormDataFile ([ebd464f](https://github.com/openai/openai-node/commit/ebd464f5ad07f440ad476c0a7ce733947da414e2))
* **tests:** switch proxy tests to fetchOptions ([da6ed5f](https://github.com/openai/openai-node/commit/da6ed5fc4c9ec203d9add28c34c90532b0334a3e))
* **types:** improved go to definition on fetchOptions ([f1712cd](https://github.com/openai/openai-node/commit/f1712cdea42e9d95d4b2dc40aae5cebc8e14c76d))
* update next to 14.2.25 for CVE-2025-29927 ([1ed4288](https://github.com/openai/openai-node/commit/1ed4288c7b9ca8fcb00e524bc6f39c255c6661c5))
* workaround build errors ([e4a7f67](https://github.com/openai/openai-node/commit/e4a7f674f719a87bb78378a5ce4639d84620e17a))
* workaround build errors ([d6b396b](https://github.com/openai/openai-node/commit/d6b396b94d9ccf64ddfe945069012b6162225fa9))


### Documentation

* add examples to tsdocs ([e8d2092](https://github.com/openai/openai-node/commit/e8d2092e51015b05fe7ef33ef5a9d7652846b137))
* fix "procesing" -&gt; "processing" in realtime examples ([#1406](https://github.com/openai/openai-node/issues/1406)) ([dfbdc65](https://github.com/openai/openai-node/commit/dfbdc65d3ed17f0063d02906239371b88e04e5fd))
* **migration:** mention zod helpers error ([43b870d](https://github.com/openai/openai-node/commit/43b870d1651d0c13e4ec10a53de2dfbae276c3e7))
* **readme:** fix typo ([c44ed98](https://github.com/openai/openai-node/commit/c44ed98a3e7f497a656d612037667dd1f2e6816b))
* **readme:** fix typo ([0989ddc](https://github.com/openai/openai-node/commit/0989ddcfd5ed0a149bbc67d61f93e0f49c397c72))
* update URLs from stainlessapi.com to stainless.com ([#1352](https://github.com/openai/openai-node/issues/1352)) ([634a209](https://github.com/openai/openai-node/commit/634a209a6025640e2849133f6997af8faa28d4d8))


### Refactors

* **client:** remove deprecated runFunctions method ([e29a009](https://github.com/openai/openai-node/commit/e29a0092e9b077c2a99cd521a316aea4c25ea632))
* **functions:** rename function helper methods to include tools ([fdd6f66](https://github.com/openai/openai-node/commit/fdd6f6672ec577cbb6876fe3857a2161402513c3))

## 4.104.0 (2025-05-29)

Full Changelog: [v4.103.0...v4.104.0](https://github.com/openai/openai-node/compare/v4.103.0...v4.104.0)

### Features

* **api:** Config update for pakrym-stream-param ([469ad7b](https://github.com/openai/openai-node/commit/469ad7b9d76b674aa3fd829128a54758ab7adfbd))


### Bug Fixes

* **azure:** add /images/edits to deployments endpoints ([#1509](https://github.com/openai/openai-node/issues/1509)) ([84fc31a](https://github.com/openai/openai-node/commit/84fc31aa903eceeb80815f6b17562fc463a71cfc))
* **client:** return binary content from `get /containers/{container_id}/files/{file_id}/content` ([83129d7](https://github.com/openai/openai-node/commit/83129d7eac3dd784bb1c29fa344c5b808a59db73))


### Chores

* deprecate Assistants API ([5b34fcd](https://github.com/openai/openai-node/commit/5b34fcdd1454b8cccbaaf05ace6516afb3b09273))
* improve publish-npm script --latest tag logic ([6207a2a](https://github.com/openai/openai-node/commit/6207a2a03d3279423de594eed18c5efb4ce321af))
* **internal:** fix release workflows ([353349d](https://github.com/openai/openai-node/commit/353349de9ee10d32d3243cb5c60a8ae982c49d37))

## 4.103.0 (2025-05-22)

Full Changelog: [v4.102.0...v4.103.0](https://github.com/openai/openai-node/compare/v4.102.0...v4.103.0)

### Features

* **api:** new streaming helpers for background responses ([1ddd6ff](https://github.com/openai/openai-node/commit/1ddd6ff182b09d696954fda4bde50fb82f1d6585))

## 4.102.0 (2025-05-21)

Full Changelog: [v4.101.0...v4.102.0](https://github.com/openai/openai-node/compare/v4.101.0...v4.102.0)

### Features

* **api:** add container endpoint ([e973476](https://github.com/openai/openai-node/commit/e9734764625275c50ef612ff934804be8cb2adff))

## 4.101.0 (2025-05-21)

Full Changelog: [v4.100.0...v4.101.0](https://github.com/openai/openai-node/compare/v4.100.0...v4.101.0)

### Features

* **api:** new API tools ([fb4014f](https://github.com/openai/openai-node/commit/fb4014ffac7b220d37bd03c94fa745386b010bf0))


### Chores

* **docs:** grammar improvements ([7761cfb](https://github.com/openai/openai-node/commit/7761cfb0a8a56d056a73c046a6a613f66ada4abe))
* **internal:** version bump ([b40e830](https://github.com/openai/openai-node/commit/b40e8302ec11683b6a360a050236ad1284afc760))

## 4.100.0 (2025-05-16)

Full Changelog: [v4.99.0...v4.100.0](https://github.com/openai/openai-node/compare/v4.99.0...v4.100.0)

### Features

* **api:** further updates for evals API ([3f6f248](https://github.com/openai/openai-node/commit/3f6f248191b45015924be76fd5154d149c4ed8a0))


### Chores

* **internal:** version bump ([5123fe0](https://github.com/openai/openai-node/commit/5123fe08a56f3d0040b1cc67129382f3eacc3cca))

## 4.99.0 (2025-05-16)

Full Changelog: [v4.98.0...v4.99.0](https://github.com/openai/openai-node/compare/v4.98.0...v4.99.0)

### Features

* **api:** manual updates ([75eb804](https://github.com/openai/openai-node/commit/75eb804edd6ad653eaa22d47f8c6d09ee845ebf4))
* **api:** responses x eval api ([5029f1a](https://github.com/openai/openai-node/commit/5029f1a05eb1e8601ada06e0a5ba49f4c2b83c02))
* **api:** Updating Assistants and Evals API schemas ([27fd517](https://github.com/openai/openai-node/commit/27fd5173b20f75debe96024ae8f1ce58a8254d26))

## 4.98.0 (2025-05-08)

Full Changelog: [v4.97.0...v4.98.0](https://github.com/openai/openai-node/compare/v4.97.0...v4.98.0)

### Features

* **api:** Add reinforcement fine-tuning api support ([4aa7a79](https://github.com/openai/openai-node/commit/4aa7a7954c63caa26cc1640ace56093fe1cafa04))


### Chores

* **ci:** bump node version for release workflows ([2961f63](https://github.com/openai/openai-node/commit/2961f63c4d5b8ae8efdf8ea6581aa83c6b0f722e))
* **internal:** fix formatting ([91a44fe](https://github.com/openai/openai-node/commit/91a44fe11c0847dc50d48a03a8d409ac4bece37a))


### Documentation

* add examples to tsdocs ([7d841b7](https://github.com/openai/openai-node/commit/7d841b7f98eb542a398fb9de12056125e8d6cb22))

## 4.97.0 (2025-05-02)

Full Changelog: [v4.96.2...v4.97.0](https://github.com/openai/openai-node/compare/v4.96.2...v4.97.0)

### Features

* **api:** add image sizes, reasoning encryption ([9c2113a](https://github.com/openai/openai-node/commit/9c2113af7c7ea9a797a0e39d07d9ad8627c96acb))


### Chores

* **docs:** add missing deprecation warnings ([253392c](https://github.com/openai/openai-node/commit/253392c93adca88e0ee83f784183b2128ff64a16))


### Documentation

* fix "procesing" -&gt; "processing" in realtime examples ([#1406](https://github.com/openai/openai-node/issues/1406)) ([8717b9f](https://github.com/openai/openai-node/commit/8717b9fce87d03e51d40ee58f5d6259408405e1f))
* **readme:** fix typo ([cab3478](https://github.com/openai/openai-node/commit/cab3478f195f9de5c21033a1b3684f52ad347ffc))

## 4.96.2 (2025-04-29)

Full Changelog: [v4.96.1...v4.96.2](https://github.com/openai/openai-node/compare/v4.96.1...v4.96.2)

### Bug Fixes

* **types:** export ParseableToolsParams ([#1486](https://github.com/openai/openai-node/issues/1486)) ([3e7c92c](https://github.com/openai/openai-node/commit/3e7c92c8a76c1f747610d63d9d69a88b796ee9fc))


### Chores

* **ci:** only use depot for staging repos ([214da39](https://github.com/openai/openai-node/commit/214da398c76f46d40994665f3ca7e10e203e9579))
* **ci:** run on more branches and use depot runners ([ead76fc](https://github.com/openai/openai-node/commit/ead76fc6429ac52a1c8b008ac5c0afcefaa0bae5))

## 4.96.1 (2025-04-29)

Full Changelog: [v4.96.0...v4.96.1](https://github.com/openai/openai-node/compare/v4.96.0...v4.96.1)

### Bug Fixes

* **types:** export ParseableToolsParams ([#1486](https://github.com/openai/openai-node/issues/1486)) ([eb055b2](https://github.com/openai/openai-node/commit/eb055b26ce90e5fe1b101a95a4390956d519e168))


### Chores

* **ci:** only use depot for staging repos ([e80af47](https://github.com/openai/openai-node/commit/e80af47590056baa8f456e8d60c37f0d00ff08c4))
* **ci:** run on more branches and use depot runners ([b04a801](https://github.com/openai/openai-node/commit/b04a801d0356105eacddbb4d10f4359719585dd6))

## 4.96.0 (2025-04-23)

Full Changelog: [v4.95.1...v4.96.0](https://github.com/openai/openai-node/compare/v4.95.1...v4.96.0)

### Features

* **api:** adding new image model support ([a00d331](https://github.com/openai/openai-node/commit/a00d33190edd08df7d9c088c00ab7b77673f88ba))


### Bug Fixes

* **types:** export AssistantStream ([#1472](https://github.com/openai/openai-node/issues/1472)) ([626c844](https://github.com/openai/openai-node/commit/626c844a758a68ffbff48873d4773be2e3868952))


### Chores

* **ci:** add timeout thresholds for CI jobs ([e465063](https://github.com/openai/openai-node/commit/e46506351097f1de39c866c28b6ec20fa724fc36))

## 4.95.1 (2025-04-18)

Full Changelog: [v4.95.0...v4.95.1](https://github.com/openai/openai-node/compare/v4.95.0...v4.95.1)

### Bug Fixes

* **zod:** warn on optional field usage ([#1469](https://github.com/openai/openai-node/issues/1469)) ([aea2d12](https://github.com/openai/openai-node/commit/aea2d123d200e6a7eae11e66583127270a8db8bf))

## 4.95.0 (2025-04-16)

Full Changelog: [v4.94.0...v4.95.0](https://github.com/openai/openai-node/compare/v4.94.0...v4.95.0)

### Features

* **api:** add o3 and o4-mini model IDs ([4845cd9](https://github.com/openai/openai-node/commit/4845cd9ac17450022f1632ae01397e41a97f1662))

## 4.94.0 (2025-04-14)

Full Changelog: [v4.93.0...v4.94.0](https://github.com/openai/openai-node/compare/v4.93.0...v4.94.0)

### Features

* **api:** adding gpt-4.1 family of model IDs ([bddcbcf](https://github.com/openai/openai-node/commit/bddcbcffdc409ffc8a078a65bbd302cd50b35ff0))
* **api:** manual updates ([7532f48](https://github.com/openai/openai-node/commit/7532f48ad25c5125064a59985587c20c47a2cbfb))


### Chores

* **client:** minor internal fixes ([d342f17](https://github.com/openai/openai-node/commit/d342f17e2642da5ee83d080b410dc3c4fe153814))
* **internal:** reduce CI branch coverage ([a49b94a](https://github.com/openai/openai-node/commit/a49b94a9aebd3e30e1802fff633e1b46cfb81942))
* **internal:** upload builds and expand CI branch coverage ([#1460](https://github.com/openai/openai-node/issues/1460)) ([7e23bb4](https://github.com/openai/openai-node/commit/7e23bb4f4a09303195b612cc5b393cc41c1d855b))
* workaround build errors ([913eba8](https://github.com/openai/openai-node/commit/913eba828d116f49fa78b219c62274c1e95c6f17))

## 4.93.0 (2025-04-08)

Full Changelog: [v4.92.1...v4.93.0](https://github.com/openai/openai-node/compare/v4.92.1...v4.93.0)

### Features

* **api:** Add evalapi to sdk ([#1456](https://github.com/openai/openai-node/issues/1456)) ([ee917e3](https://github.com/openai/openai-node/commit/ee917e3335fcf44e87a28e54ce8ddfdcdfab1652))


### Chores

* **internal:** fix examples ([#1457](https://github.com/openai/openai-node/issues/1457)) ([a3dd0dd](https://github.com/openai/openai-node/commit/a3dd0dde3e8ad9cc7a02cf203d4550f91d31a2ae))
* **internal:** skip broken test ([#1458](https://github.com/openai/openai-node/issues/1458)) ([4d2f815](https://github.com/openai/openai-node/commit/4d2f815ba5f6c426f9c21f4c3db443166389bbf8))
* **tests:** improve enum examples ([#1454](https://github.com/openai/openai-node/issues/1454)) ([ecabce2](https://github.com/openai/openai-node/commit/ecabce282a9fb60122310942f3b647dfefae5403))

## 4.92.1 (2025-04-07)

Full Changelog: [v4.92.0...v4.92.1](https://github.com/openai/openai-node/compare/v4.92.0...v4.92.1)

### Chores

* **internal:** only run examples workflow in main repo ([#1450](https://github.com/openai/openai-node/issues/1450)) ([5e49a7a](https://github.com/openai/openai-node/commit/5e49a7a447bb788fa05898c15ae57c6ea9c8fd49))

## 4.92.0 (2025-04-07)

Full Changelog: [v4.91.1...v4.92.0](https://github.com/openai/openai-node/compare/v4.91.1...v4.92.0)

### Features

* **api:** manual updates ([891754d](https://github.com/openai/openai-node/commit/891754d7fa42d71ce4f93288dd043ef0b97fee23))
* **api:** manual updates ([01e5546](https://github.com/openai/openai-node/commit/01e5546f3f48a1f4d645e09e7581f16b30f25bdd))
* **api:** manual updates ([f38dbf3](https://github.com/openai/openai-node/commit/f38dbf3b39b0800b3bbef5c603a4fa2b616f25d8))
* **api:** manual updates ([1f12253](https://github.com/openai/openai-node/commit/1f12253054a5a7e35dc03b17901b4c1f33bf5b3d))


### Bug Fixes

* **api:** improve type resolution when importing as a package ([#1444](https://github.com/openai/openai-node/issues/1444)) ([4aa46d6](https://github.com/openai/openai-node/commit/4aa46d6c0da681bcdde31fcbb09e8ba6fdaf764b))
* **client:** send `X-Stainless-Timeout` in seconds ([#1442](https://github.com/openai/openai-node/issues/1442)) ([aa4206c](https://github.com/openai/openai-node/commit/aa4206c7d93b4e3114a697f5467ffbbf5a64d1a8))
* **embeddings:** correctly decode base64 data ([#1448](https://github.com/openai/openai-node/issues/1448)) ([58128f7](https://github.com/openai/openai-node/commit/58128f7efde73726da740c42adde7b02cdf60a6a))
* **mcp:** remove unused tools.ts ([#1445](https://github.com/openai/openai-node/issues/1445)) ([520a8fa](https://github.com/openai/openai-node/commit/520a8fa77a69ce5855dde3481f9bd39339cb7b83))


### Chores

* **internal:** add aliases for Record and Array ([#1443](https://github.com/openai/openai-node/issues/1443)) ([b65391b](https://github.com/openai/openai-node/commit/b65391ba10d5063035c3e5c0bcc5a48ffc80f41d))

## 4.91.1 (2025-04-01)

Full Changelog: [v4.91.0...v4.91.1](https://github.com/openai/openai-node/compare/v4.91.0...v4.91.1)

### Bug Fixes

* **docs:** correct docstring on responses.stream ([1c8cd6a](https://github.com/openai/openai-node/commit/1c8cd6a638128b0ff5fac89d6c7db256f0b63a85))


### Chores

* Remove deprecated/unused remote spec feature ([ce3dfa8](https://github.com/openai/openai-node/commit/ce3dfa88bd4d395debccc0e6e1aac6d218b07cb8))

## 4.91.0 (2025-03-31)

Full Changelog: [v4.90.0...v4.91.0](https://github.com/openai/openai-node/compare/v4.90.0...v4.91.0)

### Features

* **api:** add `get /responses/{response_id}/input_items` endpoint ([ef0e0ac](https://github.com/openai/openai-node/commit/ef0e0acd469379ae6f2745c83e6c6813ff7b4edc))


### Performance Improvements

* **embedding:** default embedding creation to base64 ([#1312](https://github.com/openai/openai-node/issues/1312)) ([e54530e](https://github.com/openai/openai-node/commit/e54530e4f6f00d7d74fc8636bbdb6f6280548750)), closes [#1310](https://github.com/openai/openai-node/issues/1310)

## 4.90.0 (2025-03-27)

Full Changelog: [v4.89.1...v4.90.0](https://github.com/openai/openai-node/compare/v4.89.1...v4.90.0)

### Features

* **api:** add `get /chat/completions` endpoint ([2d6710a](https://github.com/openai/openai-node/commit/2d6710a1f9dd4f768d9c73e9c9f5f93c737cdc66))


### Bug Fixes

* **audio:** correctly handle transcription streaming ([2a9b603](https://github.com/openai/openai-node/commit/2a9b60336cd40a4d4fb9b898ece49170ad648fd0))
* **internal:** work around https://github.com/vercel/next.js/issues/76881 ([#1427](https://github.com/openai/openai-node/issues/1427)) ([b467e94](https://github.com/openai/openai-node/commit/b467e949476621e8e92587a83c9de6fab35b2b9d))


### Chores

* add hash of OpenAPI spec/config inputs to .stats.yml ([45db35e](https://github.com/openai/openai-node/commit/45db35e34be560c75bf36224cc153c6d0e6e2a88))
* **api:** updates to supported Voice IDs ([#1424](https://github.com/openai/openai-node/issues/1424)) ([404f4db](https://github.com/openai/openai-node/commit/404f4db41a2ee651f5bfdaa7b8881e1bf015f058))
* **client:** expose headers on some streaming errors ([#1423](https://github.com/openai/openai-node/issues/1423)) ([b0783cc](https://github.com/openai/openai-node/commit/b0783cc6221b68f1738e759b393756a7d0e540a3))

## 4.89.1 (2025-03-26)

Full Changelog: [v4.89.0...v4.89.1](https://github.com/openai/openai-node/compare/v4.89.0...v4.89.1)

### Bug Fixes

* avoid type error in certain environments ([#1413](https://github.com/openai/openai-node/issues/1413)) ([d3f6f8f](https://github.com/openai/openai-node/commit/d3f6f8f9c7511a98cc5795756fee49a30e44d485))
* **client:** remove duplicate types ([#1410](https://github.com/openai/openai-node/issues/1410)) ([338878b](https://github.com/openai/openai-node/commit/338878bf484dac5a4fadf50592b1f8d1045cd4b6))
* **exports:** add missing type exports ([#1417](https://github.com/openai/openai-node/issues/1417)) ([2d15ada](https://github.com/openai/openai-node/commit/2d15ada0e0d81a4e0d097dddbe99be2222c4c0ef))


### Chores

* **internal:** version bump ([#1408](https://github.com/openai/openai-node/issues/1408)) ([9c0949a](https://github.com/openai/openai-node/commit/9c0949a93c3e181d327f820dbc2a4b0ad77258e9))

## 4.89.0 (2025-03-20)

Full Changelog: [v4.88.0...v4.89.0](https://github.com/openai/openai-node/compare/v4.88.0...v4.89.0)

### Features

* add audio helpers ([ea1b6b4](https://github.com/openai/openai-node/commit/ea1b6b4ef38813af568b3662037519da9404b80e))
* **api:** new models for TTS, STT, + new audio features for Realtime ([#1407](https://github.com/openai/openai-node/issues/1407)) ([142933a](https://github.com/openai/openai-node/commit/142933ae70d06045dbf4661cd72c7fa35ae7903d))


### Chores

* **internal:** version bump ([#1400](https://github.com/openai/openai-node/issues/1400)) ([6838ab4](https://github.com/openai/openai-node/commit/6838ab4268c7c0e083e7be21ef1a51bdea0f0b57))

## 4.88.0 (2025-03-19)

Full Changelog: [v4.87.4...v4.88.0](https://github.com/openai/openai-node/compare/v4.87.4...v4.88.0)

### Features

* **api:** o1-pro now available through the API ([#1398](https://github.com/openai/openai-node/issues/1398)) ([616a7e9](https://github.com/openai/openai-node/commit/616a7e90e764882cd749a65af8cc6ae8734fc80d))


### Chores

* **exports:** cleaner resource index imports ([#1396](https://github.com/openai/openai-node/issues/1396)) ([26b0856](https://github.com/openai/openai-node/commit/26b0856cd63846c34b75895a1ea42ceec7908c1a))
* **exports:** stop using path fallbacks ([#1397](https://github.com/openai/openai-node/issues/1397)) ([d1479c2](https://github.com/openai/openai-node/commit/d1479c23aff68dd46c73fd31896dd2298a6bf140))
* **internal:** version bump ([#1393](https://github.com/openai/openai-node/issues/1393)) ([7f16c3a](https://github.com/openai/openai-node/commit/7f16c3aa7b1ab36541219c5a0f93fc518733d0e3))

## 4.87.4 (2025-03-18)

Full Changelog: [v4.87.3...v4.87.4](https://github.com/openai/openai-node/compare/v4.87.3...v4.87.4)

### Bug Fixes

* **api:** correct some Responses types ([#1391](https://github.com/openai/openai-node/issues/1391)) ([af45876](https://github.com/openai/openai-node/commit/af458766ac721fb6cf18e7d78c458506c8bfc4e1))
* **types:** ignore missing `id` in responses pagination ([1b9d20e](https://github.com/openai/openai-node/commit/1b9d20e71f5afbd4999f1999fe4810175476c5d2))
* **types:** improve responses type names ([#1392](https://github.com/openai/openai-node/issues/1392)) ([164f476](https://github.com/openai/openai-node/commit/164f47606b41fd3e2850f8209eb1c6e2996a81ff))


### Chores

* add missing type alias exports ([#1390](https://github.com/openai/openai-node/issues/1390)) ([16c5e22](https://github.com/openai/openai-node/commit/16c5e2261c8c1a0ba96c2d5f475e8b1bc67387d7))
* **internal:** add back release workflow ([dddf29b](https://github.com/openai/openai-node/commit/dddf29bd914a02d4586b239ec06217389a4409f9))
* **internal:** remove CI condition ([#1381](https://github.com/openai/openai-node/issues/1381)) ([ef17981](https://github.com/openai/openai-node/commit/ef17981a0bd6b3e971986ece829c5d260d7392d4))
* **internal:** run CI on update-specs branch ([9fc2130](https://github.com/openai/openai-node/commit/9fc2130b74a5919a3bbd41926903bdb310de4446))
* **internal:** update release workflows ([90b77d0](https://github.com/openai/openai-node/commit/90b77d09c04d21487aa38fe775c79ae632136813))

## 4.87.3 (2025-03-11)

Full Changelog: [v4.87.2...v4.87.3](https://github.com/openai/openai-node/compare/v4.87.2...v4.87.3)

### Bug Fixes

* **responses:** correct reasoning output type ([2abef57](https://github.com/openai/openai-node/commit/2abef57d7645a96a4b9a6b91483861cd568d2d4d))

## 4.87.2 (2025-03-11)

Full Changelog: [v4.87.1...v4.87.2](https://github.com/openai/openai-node/compare/v4.87.1...v4.87.2)

### Bug Fixes

* **responses:** correctly add output_text ([4ceb5cc](https://github.com/openai/openai-node/commit/4ceb5cc516b8c75d46f0042534d7658796a8cd71))

## 4.87.1 (2025-03-11)

Full Changelog: [v4.87.0...v4.87.1](https://github.com/openai/openai-node/compare/v4.87.0...v4.87.1)

### Bug Fixes

* correct imports ([5cdf17c](https://github.com/openai/openai-node/commit/5cdf17cec33da7cf540b8bdbcfa30c0c52842dd1))

## 4.87.0 (2025-03-11)

Full Changelog: [v4.86.2...v4.87.0](https://github.com/openai/openai-node/compare/v4.86.2...v4.87.0)

### Features

* **api:** add /v1/responses and built-in tools ([119b584](https://github.com/openai/openai-node/commit/119b5843a18b8014167c8d2031d75c08dbf400a3))

## 4.86.2 (2025-03-05)

Full Changelog: [v4.86.1...v4.86.2](https://github.com/openai/openai-node/compare/v4.86.1...v4.86.2)

### Chores

* **internal:** run example files in CI ([#1357](https://github.com/openai/openai-node/issues/1357)) ([88d0050](https://github.com/openai/openai-node/commit/88d0050336749deb3810b4cb43473de1f84e42bd))

## 4.86.1 (2025-02-27)

Full Changelog: [v4.86.0...v4.86.1](https://github.com/openai/openai-node/compare/v4.86.0...v4.86.1)

### Documentation

* update URLs from stainlessapi.com to stainless.com ([#1352](https://github.com/openai/openai-node/issues/1352)) ([8294e9e](https://github.com/openai/openai-node/commit/8294e9ef57ed98722105b56d205ebea9d028f671))

## 4.86.0 (2025-02-27)

Full Changelog: [v4.85.4...v4.86.0](https://github.com/openai/openai-node/compare/v4.85.4...v4.86.0)

### Features

* **api:** add gpt-4.5-preview ([#1349](https://github.com/openai/openai-node/issues/1349)) ([2a1d36b](https://github.com/openai/openai-node/commit/2a1d36b560323fca058f98607775642370e90a47))

## 4.85.4 (2025-02-22)

Full Changelog: [v4.85.3...v4.85.4](https://github.com/openai/openai-node/compare/v4.85.3...v4.85.4)

### Chores

* **internal:** fix devcontainers setup ([#1343](https://github.com/openai/openai-node/issues/1343)) ([cb1ec90](https://github.com/openai/openai-node/commit/cb1ec907832e325bc29abe94ae325e0477cb87d1))

## 4.85.3 (2025-02-20)

Full Changelog: [v4.85.2...v4.85.3](https://github.com/openai/openai-node/compare/v4.85.2...v4.85.3)

### Bug Fixes

* **parsing:** remove tool_calls default empty array ([#1341](https://github.com/openai/openai-node/issues/1341)) ([2672160](https://github.com/openai/openai-node/commit/26721608e61949daa9592483e89b79230bb9198a))

## 4.85.2 (2025-02-18)

Full Changelog: [v4.85.1...v4.85.2](https://github.com/openai/openai-node/compare/v4.85.1...v4.85.2)

### Bug Fixes

* optimize sse chunk reading off-by-one error ([#1339](https://github.com/openai/openai-node/issues/1339)) ([c82795b](https://github.com/openai/openai-node/commit/c82795b189c73d1c0e3bc3a40d0d4a2558b0483a))

## 4.85.1 (2025-02-14)

Full Changelog: [v4.85.0...v4.85.1](https://github.com/openai/openai-node/compare/v4.85.0...v4.85.1)

### Bug Fixes

* **client:** fix export map for index exports ([#1328](https://github.com/openai/openai-node/issues/1328)) ([647ba7a](https://github.com/openai/openai-node/commit/647ba7a52311928f604c72b2cc95698c0837887f))
* **package:** add chat/completions.ts back in ([#1333](https://github.com/openai/openai-node/issues/1333)) ([e4b5546](https://github.com/openai/openai-node/commit/e4b554632ab1646da831f29413fefb3378c49cc1))


### Chores

* **internal:** add missing return type annotation ([#1334](https://github.com/openai/openai-node/issues/1334)) ([53e0856](https://github.com/openai/openai-node/commit/53e0856ec4d36deee4d71b5aaf436df0a59b9402))

## 4.85.0 (2025-02-13)

Full Changelog: [v4.84.1...v4.85.0](https://github.com/openai/openai-node/compare/v4.84.1...v4.85.0)

### Features

* **api:** add support for storing chat completions ([#1327](https://github.com/openai/openai-node/issues/1327)) ([8d77f8e](https://github.com/openai/openai-node/commit/8d77f8e3c4801b7fa1e7c6f50b48c1de1f43f3e6))


### Bug Fixes

* **realtime:** call .toString() on WebSocket url ([#1324](https://github.com/openai/openai-node/issues/1324)) ([09bc50d](https://github.com/openai/openai-node/commit/09bc50d439679b6acfd2441e69ee5aa18c00e5d9))

## 4.84.1 (2025-02-13)

Full Changelog: [v4.84.0...v4.84.1](https://github.com/openai/openai-node/compare/v4.84.0...v4.84.1)

### Bug Fixes

* **realtime:** correct websocket type var constraint ([#1321](https://github.com/openai/openai-node/issues/1321)) ([afb17ea](https://github.com/openai/openai-node/commit/afb17ea6497b860ebbe5d8e68e4a97681dd307ff))

## 4.84.0 (2025-02-12)

Full Changelog: [v4.83.0...v4.84.0](https://github.com/openai/openai-node/compare/v4.83.0...v4.84.0)

### Features

* **pagination:** avoid fetching when has_more: false ([#1305](https://github.com/openai/openai-node/issues/1305)) ([b6944c6](https://github.com/openai/openai-node/commit/b6944c634b53c9084f2ccf777c2491e89b2cc7af))


### Bug Fixes

* **api:** add missing reasoning effort + model enums ([#1302](https://github.com/openai/openai-node/issues/1302)) ([14c55c3](https://github.com/openai/openai-node/commit/14c55c312e31f1ed46d02f39a99049f785504a53))
* **assistants:** handle `thread.run.incomplete` event ([7032cc4](https://github.com/openai/openai-node/commit/7032cc40b8aa0a58459cf114bceb8028a8517400))
* correctly decode multi-byte characters over multiple chunks ([#1316](https://github.com/openai/openai-node/issues/1316)) ([dd776c4](https://github.com/openai/openai-node/commit/dd776c4867401f527f699bd4b9e567890256e849))


### Chores

* **internal:** remove segfault-handler dependency ([3521ca3](https://github.com/openai/openai-node/commit/3521ca34e7f5bd51542084e27c084a5d7cc5448b))


### Documentation

* **readme:** cleanup into multiple files ([da94424](https://github.com/openai/openai-node/commit/da944242e542e9e5e51cb11853c621fc6825ac02))

## 4.83.0 (2025-02-05)

Full Changelog: [v4.82.0...v4.83.0](https://github.com/openai/openai-node/compare/v4.82.0...v4.83.0)

### Features

* **client:** send `X-Stainless-Timeout` header ([#1299](https://github.com/openai/openai-node/issues/1299)) ([ddfc686](https://github.com/openai/openai-node/commit/ddfc686f43a3420c3adf8dec2e82b4d10a121eb8))


### Bug Fixes

* **api/types:** correct audio duration & role types ([#1300](https://github.com/openai/openai-node/issues/1300)) ([a955ac2](https://github.com/openai/openai-node/commit/a955ac2bf5bee663d530d0c82b0005bf3ce6fc47))
* **azure/audio:** use model param for deployments ([#1297](https://github.com/openai/openai-node/issues/1297)) ([85de382](https://github.com/openai/openai-node/commit/85de382db17cbe5f112650e79d0fc1cc841efbb2))

## 4.82.0 (2025-01-31)

Full Changelog: [v4.81.0...v4.82.0](https://github.com/openai/openai-node/compare/v4.81.0...v4.82.0)

### Features

* **api:** add o3-mini ([#1295](https://github.com/openai/openai-node/issues/1295)) ([378e2f7](https://github.com/openai/openai-node/commit/378e2f7af62c570adb4c7644a4d49576b698de41))


### Bug Fixes

* **examples/realtime:** remove duplicate `session.update` call ([#1293](https://github.com/openai/openai-node/issues/1293)) ([ad800b4](https://github.com/openai/openai-node/commit/ad800b4f9410c6838994c24a3386ea708717f72b))
* **types:** correct metadata type + other fixes ([378e2f7](https://github.com/openai/openai-node/commit/378e2f7af62c570adb4c7644a4d49576b698de41))

## 4.81.0 (2025-01-29)

Full Changelog: [v4.80.1...v4.81.0](https://github.com/openai/openai-node/compare/v4.80.1...v4.81.0)

### Features

* **azure:** Realtime API support ([#1287](https://github.com/openai/openai-node/issues/1287)) ([fe090c0](https://github.com/openai/openai-node/commit/fe090c0a57570217eb0b431e2cce40bf61de2b75))

## 4.80.1 (2025-01-24)

Full Changelog: [v4.80.0...v4.80.1](https://github.com/openai/openai-node/compare/v4.80.0...v4.80.1)

### Bug Fixes

* **azure:** include retry count header ([3e0ba40](https://github.com/openai/openai-node/commit/3e0ba409e57ce276fb1f95cd11c801e4ccaad572))


### Documentation

* fix typo, "zodFunctionTool" -&gt; "zodFunction" ([#1128](https://github.com/openai/openai-node/issues/1128)) ([b7ab6bb](https://github.com/openai/openai-node/commit/b7ab6bb304973ade94830f37eb646e800226d5ef))
* **helpers:** fix type annotation ([fc019df](https://github.com/openai/openai-node/commit/fc019df1d9cc276e8f8e689742853a09aa94991a))
* **readme:** fix realtime errors docs link ([#1286](https://github.com/openai/openai-node/issues/1286)) ([d1d50c8](https://github.com/openai/openai-node/commit/d1d50c897c18cefea964e8057fe1acfd766ae2bf))

## 4.80.0 (2025-01-22)

Full Changelog: [v4.79.4...v4.80.0](https://github.com/openai/openai-node/compare/v4.79.4...v4.80.0)

### Features

* **api:** update enum values, comments, and examples ([#1280](https://github.com/openai/openai-node/issues/1280)) ([d38f2c2](https://github.com/openai/openai-node/commit/d38f2c2648b6990f217c3c7d83ca31f3739641d3))

## 4.79.4 (2025-01-21)

Full Changelog: [v4.79.3...v4.79.4](https://github.com/openai/openai-node/compare/v4.79.3...v4.79.4)

### Bug Fixes

* **jsr:** correct zod config ([e45fa5f](https://github.com/openai/openai-node/commit/e45fa5f535ca74789636001e60e33edcad4db83c))


### Chores

* **internal:** minor restructuring ([#1278](https://github.com/openai/openai-node/issues/1278)) ([58ea92a](https://github.com/openai/openai-node/commit/58ea92a7464a04223f24ba31dbc0f7d0cf99cc19))


### Documentation

* update deprecation messages ([#1275](https://github.com/openai/openai-node/issues/1275)) ([1c6599e](https://github.com/openai/openai-node/commit/1c6599e47ef75a71cb309a1e14d97bc97bd036d0))

## 4.79.3 (2025-01-21)

Full Changelog: [v4.79.2...v4.79.3](https://github.com/openai/openai-node/compare/v4.79.2...v4.79.3)

### Bug Fixes

* **jsr:** export zod helpers ([9dc55b6](https://github.com/openai/openai-node/commit/9dc55b62b564ad5ad1d4a60fe520b68235d05296))

## 4.79.2 (2025-01-21)

Full Changelog: [v4.79.1...v4.79.2](https://github.com/openai/openai-node/compare/v4.79.1...v4.79.2)

### Chores

* **internal:** add test ([#1270](https://github.com/openai/openai-node/issues/1270)) ([b7c2d3d](https://github.com/openai/openai-node/commit/b7c2d3d9abd315f1452a578b0fd0d82e6ac4ff60))


### Documentation

* **readme:** fix Realtime API example link ([#1272](https://github.com/openai/openai-node/issues/1272)) ([d0653c7](https://github.com/openai/openai-node/commit/d0653c7fef48360d137a7411dfdfb95d477cdbc5))

## 4.79.1 (2025-01-17)

Full Changelog: [v4.79.0...v4.79.1](https://github.com/openai/openai-node/compare/v4.79.0...v4.79.1)

### Bug Fixes

* **realtime:** correct import syntax ([#1267](https://github.com/openai/openai-node/issues/1267)) ([74702a7](https://github.com/openai/openai-node/commit/74702a739f566810d2b6c4e0832cfa17a1d1e272))

## 4.79.0 (2025-01-17)

Full Changelog: [v4.78.1...v4.79.0](https://github.com/openai/openai-node/compare/v4.78.1...v4.79.0)

### Features

* **client:** add Realtime API support ([#1266](https://github.com/openai/openai-node/issues/1266)) ([7160ebe](https://github.com/openai/openai-node/commit/7160ebe647769fbf48a600c9961d1a6f86dc9622))


### Bug Fixes

* **logs/azure:** redact sensitive header when DEBUG is set ([#1218](https://github.com/openai/openai-node/issues/1218)) ([6a72fd7](https://github.com/openai/openai-node/commit/6a72fd736733db19504a829bf203b39d5b9e3644))


### Chores

* fix streaming ([379c743](https://github.com/openai/openai-node/commit/379c7435ed5d508458e9cdc22386039b84fcec5e))
* **internal:** streaming refactors ([#1261](https://github.com/openai/openai-node/issues/1261)) ([dd4af93](https://github.com/openai/openai-node/commit/dd4af939792583854a313367c5fe2f98eea2f3c8))
* **types:** add `| undefined` to client options properties ([#1264](https://github.com/openai/openai-node/issues/1264)) ([5e56979](https://github.com/openai/openai-node/commit/5e569799b9ac8f915b16de90d91d38b568c1edce))
* **types:** rename vector store chunking strategy ([#1263](https://github.com/openai/openai-node/issues/1263)) ([d31acee](https://github.com/openai/openai-node/commit/d31acee860c80ba945d4e70b956c7ed75f5f849a))

## 4.78.1 (2025-01-10)

Full Changelog: [v4.78.0...v4.78.1](https://github.com/openai/openai-node/compare/v4.78.0...v4.78.1)

### Bug Fixes

* send correct Accept header for certain endpoints ([#1257](https://github.com/openai/openai-node/issues/1257)) ([8756693](https://github.com/openai/openai-node/commit/8756693c5690b16045cdd8d33636fe7643d45f3a))

## 4.78.0 (2025-01-09)

Full Changelog: [v4.77.4...v4.78.0](https://github.com/openai/openai-node/compare/v4.77.4...v4.78.0)

### Features

* **client:** add realtime types ([#1254](https://github.com/openai/openai-node/issues/1254)) ([7130995](https://github.com/openai/openai-node/commit/71309957a9a0883cac84b8b57697b796a9df3503))

## 4.77.4 (2025-01-08)

Full Changelog: [v4.77.3...v4.77.4](https://github.com/openai/openai-node/compare/v4.77.3...v4.77.4)

### Documentation

* **readme:** fix misplaced period ([#1252](https://github.com/openai/openai-node/issues/1252)) ([c2fe465](https://github.com/openai/openai-node/commit/c2fe46522d59d1611ba8bb2b7e070f9be7264df0))

## 4.77.3 (2025-01-03)

Full Changelog: [v4.77.2...v4.77.3](https://github.com/openai/openai-node/compare/v4.77.2...v4.77.3)

### Chores

* **api:** bump spec version ([#1248](https://github.com/openai/openai-node/issues/1248)) ([37b3df9](https://github.com/openai/openai-node/commit/37b3df9ac6af76fea6eace8307aab9f0565e5660))

## 4.77.2 (2025-01-02)

Full Changelog: [v4.77.1...v4.77.2](https://github.com/openai/openai-node/compare/v4.77.1...v4.77.2)

### Chores

* bump license year ([#1246](https://github.com/openai/openai-node/issues/1246)) ([13197c1](https://github.com/openai/openai-node/commit/13197c1698f492529bd00b62d95f83c039ef0ac7))

## 4.77.1 (2024-12-21)

Full Changelog: [v4.77.0...v4.77.1](https://github.com/openai/openai-node/compare/v4.77.0...v4.77.1)

### Bug Fixes

* **client:** normalize method ([#1235](https://github.com/openai/openai-node/issues/1235)) ([4a213da](https://github.com/openai/openai-node/commit/4a213dad6f2104dc02a75724acc62134d25db472))


### Chores

* **internal:** spec update ([#1231](https://github.com/openai/openai-node/issues/1231)) ([a97ea73](https://github.com/openai/openai-node/commit/a97ea73cafcb56e94be7ff691c4022da575cf60e))


### Documentation

* minor formatting changes ([#1236](https://github.com/openai/openai-node/issues/1236)) ([6387968](https://github.com/openai/openai-node/commit/63879681ccaca3dc1e17b27464e2f830b8f63b4f))
* **readme:** add alpha callout ([f2eff37](https://github.com/openai/openai-node/commit/f2eff3780e1216f7f420f7b86d47f4e21986b10e))

## 4.77.0 (2024-12-17)

Full Changelog: [v4.76.3...v4.77.0](https://github.com/openai/openai-node/compare/v4.76.3...v4.77.0)

### Features

* **api:** new o1 and GPT-4o models + preference fine-tuning ([#1229](https://github.com/openai/openai-node/issues/1229)) ([2e872d4](https://github.com/openai/openai-node/commit/2e872d4ac3717ab8f61741efffb7a31acd798338))


### Chores

* **internal:** fix some typos ([#1227](https://github.com/openai/openai-node/issues/1227)) ([d51fcfe](https://github.com/openai/openai-node/commit/d51fcfe3a66550a684eeeb0e6f17e1d9825cdf78))
* **internal:** spec update ([#1230](https://github.com/openai/openai-node/issues/1230)) ([ed2b61d](https://github.com/openai/openai-node/commit/ed2b61d32703b64d9f91223bc02627a607f60483))

## 4.76.3 (2024-12-13)

Full Changelog: [v4.76.2...v4.76.3](https://github.com/openai/openai-node/compare/v4.76.2...v4.76.3)

### Chores

* **internal:** better ecosystem test debugging ([86fc0a8](https://github.com/openai/openai-node/commit/86fc0a81ede2780d3fcebaabff3d9fa9a36cc9c0))


### Documentation

* **README:** fix helpers section links ([#1224](https://github.com/openai/openai-node/issues/1224)) ([efbe30a](https://github.com/openai/openai-node/commit/efbe30a156cec1836d3db28f663066b33be57ba2))

## 4.76.2 (2024-12-12)

Full Changelog: [v4.76.1...v4.76.2](https://github.com/openai/openai-node/compare/v4.76.1...v4.76.2)

### Chores

* **internal:** update isAbsoluteURL ([#1223](https://github.com/openai/openai-node/issues/1223)) ([e908ed7](https://github.com/openai/openai-node/commit/e908ed759996fb7706baf46d094fc77419423971))
* **types:** nicer error class types + jsdocs ([#1219](https://github.com/openai/openai-node/issues/1219)) ([576d24c](https://github.com/openai/openai-node/commit/576d24cc4b3d766dfe28a6031bdc24ac1b711655))

## 4.76.1 (2024-12-10)

Full Changelog: [v4.76.0...v4.76.1](https://github.com/openai/openai-node/compare/v4.76.0...v4.76.1)

### Chores

* **internal:** bump cross-spawn to v7.0.6 ([#1217](https://github.com/openai/openai-node/issues/1217)) ([c07ad29](https://github.com/openai/openai-node/commit/c07ad298d58e5aeaf816ee3de65fd59bf3fc8b66))
* **internal:** remove unnecessary getRequestClient function ([#1215](https://github.com/openai/openai-node/issues/1215)) ([bef3925](https://github.com/openai/openai-node/commit/bef392526cd339f45c574bc476649c77be36c612))

## 4.76.0 (2024-12-05)

Full Changelog: [v4.75.0...v4.76.0](https://github.com/openai/openai-node/compare/v4.75.0...v4.76.0)

### Features

* **api:** updates ([#1212](https://github.com/openai/openai-node/issues/1212)) ([e0fedf2](https://github.com/openai/openai-node/commit/e0fedf2c5a91d0c03d8dad6854b366f77eab4923))


### Chores

* bump openapi url ([#1210](https://github.com/openai/openai-node/issues/1210)) ([3fa95a4](https://github.com/openai/openai-node/commit/3fa95a429d4b2adecce35a7b96b73f6d5e88eeeb))

## 4.75.0 (2024-12-03)

Full Changelog: [v4.74.0...v4.75.0](https://github.com/openai/openai-node/compare/v4.74.0...v4.75.0)

### Features

* improve docs for jsr README.md ([#1208](https://github.com/openai/openai-node/issues/1208)) ([338527e](https://github.com/openai/openai-node/commit/338527e40361e2de899a63f280d4ec2db5e87f3c))

## 4.74.0 (2024-12-02)

Full Changelog: [v4.73.1...v4.74.0](https://github.com/openai/openai-node/compare/v4.73.1...v4.74.0)

### Features

* **internal:** make git install file structure match npm ([#1204](https://github.com/openai/openai-node/issues/1204)) ([e7c4c6d](https://github.com/openai/openai-node/commit/e7c4c6d23adbe52300053a8d35db6e341c438703))

## 4.73.1 (2024-11-25)

Full Changelog: [v4.73.0...v4.73.1](https://github.com/openai/openai-node/compare/v4.73.0...v4.73.1)

### Documentation

* **readme:** mention `.withResponse()` for streaming request ID ([#1202](https://github.com/openai/openai-node/issues/1202)) ([b6800d4](https://github.com/openai/openai-node/commit/b6800d4dea2729fe3b0864171ce8fb3b2cc1b21c))

## 4.73.0 (2024-11-20)

Full Changelog: [v4.72.0...v4.73.0](https://github.com/openai/openai-node/compare/v4.72.0...v4.73.0)

### Features

* **api:** add gpt-4o-2024-11-20 model ([#1201](https://github.com/openai/openai-node/issues/1201)) ([0feeafd](https://github.com/openai/openai-node/commit/0feeafd21ba4b6281cc3b9dafa2919b1e2e4d1c3))
* bump model in all example snippets to gpt-4o ([6961c37](https://github.com/openai/openai-node/commit/6961c37f2e581bcc12ec2bbe77df2b9b260fe297))


### Bug Fixes

* **docs:** add missing await to pagination example ([#1190](https://github.com/openai/openai-node/issues/1190)) ([524b9e8](https://github.com/openai/openai-node/commit/524b9e82ae13a3b5093dcfbfd1169a798cf99ab4))


### Chores

* **client:** drop unused devDependency ([#1191](https://github.com/openai/openai-node/issues/1191)) ([8ee6c03](https://github.com/openai/openai-node/commit/8ee6c0335673f2ecf84ea11bdfc990adab607e20))
* **internal:** spec update ([#1195](https://github.com/openai/openai-node/issues/1195)) ([12f9334](https://github.com/openai/openai-node/commit/12f93346857196b93f94865cc3744d769e5e519c))
* **internal:** use reexports not destructuring ([#1181](https://github.com/openai/openai-node/issues/1181)) ([f555dd6](https://github.com/openai/openai-node/commit/f555dd6503bc4ccd4d13f4e1a1d36fbbfd51c369))


### Documentation

* bump models in example snippets to gpt-4o ([#1184](https://github.com/openai/openai-node/issues/1184)) ([4ec4027](https://github.com/openai/openai-node/commit/4ec402790cf3cfbccbf3ef9b61d577b0118977e8))
* change readme title ([#1198](https://github.com/openai/openai-node/issues/1198)) ([e34981c](https://github.com/openai/openai-node/commit/e34981c00f2f0360baffe870bcc38786030671bf))
* improve jsr documentation ([#1197](https://github.com/openai/openai-node/issues/1197)) ([ebdb4f7](https://github.com/openai/openai-node/commit/ebdb4f72cc01afbee649aca009fdaf413e61c507))
* **readme:** fix incorrect fileBatches.uploadAndPoll params ([#1200](https://github.com/openai/openai-node/issues/1200)) ([3968ef1](https://github.com/openai/openai-node/commit/3968ef1c4fa860ff246e0e803808752b261c18ce))

## 4.72.0 (2024-11-12)

Full Changelog: [v4.71.1...v4.72.0](https://github.com/openai/openai-node/compare/v4.71.1...v4.72.0)

### Features

* add back deno runtime testing without type checks ([1626cf5](https://github.com/openai/openai-node/commit/1626cf57e94706e1fc8b2f9ff4f173fe486d5150))


### Chores

* **ecosystem-tests:** bump wrangler version ([#1178](https://github.com/openai/openai-node/issues/1178)) ([4dfb0c6](https://github.com/openai/openai-node/commit/4dfb0c6aa7c4530665bc7d6beebcd04aa1490e27))

## 4.71.1 (2024-11-06)

Full Changelog: [v4.71.0...v4.71.1](https://github.com/openai/openai-node/compare/v4.71.0...v4.71.1)

### Bug Fixes

* change release please configuration for jsr.json ([#1174](https://github.com/openai/openai-node/issues/1174)) ([c39efba](https://github.com/openai/openai-node/commit/c39efba812209c8906315596cc0a56e54ae8590a))

## 4.71.0 (2024-11-04)

Full Changelog: [v4.70.3...v4.71.0](https://github.com/openai/openai-node/compare/v4.70.3...v4.71.0)

### Features

* **api:** add support for predicted outputs ([#1172](https://github.com/openai/openai-node/issues/1172)) ([08a7bb4](https://github.com/openai/openai-node/commit/08a7bb4d4b751aeed9655bfcb9fa27fc79a767c4))

## 4.70.3 (2024-11-04)

Full Changelog: [v4.70.2...v4.70.3](https://github.com/openai/openai-node/compare/v4.70.2...v4.70.3)

### Bug Fixes

* change streaming helper imports to be relative ([e73b7cf](https://github.com/openai/openai-node/commit/e73b7cf84272bd02a39a67795d49db23db2d970f))

## 4.70.2 (2024-11-01)

Full Changelog: [v4.70.1...v4.70.2](https://github.com/openai/openai-node/compare/v4.70.1...v4.70.2)

### Bug Fixes

* add permissions to github workflow ([ee75e00](https://github.com/openai/openai-node/commit/ee75e00b0fbf82553b219ee8948a8077e9c26a24))
* skip deno ecosystem test ([5b181b0](https://github.com/openai/openai-node/commit/5b181b01b62139f8da35d426914c82b8425af141))

## 4.70.1 (2024-11-01)

Full Changelog: [v4.70.0...v4.70.1](https://github.com/openai/openai-node/compare/v4.70.0...v4.70.1)

### Bug Fixes

* don't require deno to run build-deno ([#1167](https://github.com/openai/openai-node/issues/1167)) ([9d857bc](https://github.com/openai/openai-node/commit/9d857bc531a0bb3939f7660e49b31ccc38f60dd3))

## 4.70.0 (2024-11-01)

Full Changelog: [v4.69.0...v4.70.0](https://github.com/openai/openai-node/compare/v4.69.0...v4.70.0)

### Features

* publish to jsr ([#1165](https://github.com/openai/openai-node/issues/1165)) ([5aa93a7](https://github.com/openai/openai-node/commit/5aa93a7fe704ef1ad077787852db38dc29104534))


### Chores

* **internal:** fix isolated modules exports ([9cd1958](https://github.com/openai/openai-node/commit/9cd19584dcc6f4004ea1adcee917aa88a37d5f1c))


### Refactors

* use type imports for type-only imports ([#1159](https://github.com/openai/openai-node/issues/1159)) ([07bbaf6](https://github.com/openai/openai-node/commit/07bbaf6ecac9a5e36471a35488020853ddf9214f))

## 4.69.0 (2024-10-30)

Full Changelog: [v4.68.4...v4.69.0](https://github.com/openai/openai-node/compare/v4.68.4...v4.69.0)

### Features

* **api:** add new, expressive voices for Realtime and Audio in Chat Completions ([#1157](https://github.com/openai/openai-node/issues/1157)) ([12e501c](https://github.com/openai/openai-node/commit/12e501c8a215a2af29b9b8fceedc5935b6f2feef))


### Bug Fixes

* **internal:** support pnpm git installs ([#1156](https://github.com/openai/openai-node/issues/1156)) ([b744c5b](https://github.com/openai/openai-node/commit/b744c5b609533e9a6694d6cae0425fe9cd37e26c))


### Documentation

* **readme:** minor typo fixes ([#1154](https://github.com/openai/openai-node/issues/1154)) ([c6c9f9a](https://github.com/openai/openai-node/commit/c6c9f9aaf75f643016ad73574a7e24a228b5c60f))

## 4.68.4 (2024-10-23)

Full Changelog: [v4.68.3...v4.68.4](https://github.com/openai/openai-node/compare/v4.68.3...v4.68.4)

### Chores

* **internal:** update spec version ([#1146](https://github.com/openai/openai-node/issues/1146)) ([0165a8d](https://github.com/openai/openai-node/commit/0165a8d79340ede49557e05fd00d6fff9d69d930))

## 4.68.3 (2024-10-23)

Full Changelog: [v4.68.2...v4.68.3](https://github.com/openai/openai-node/compare/v4.68.2...v4.68.3)

### Chores

* **internal:** bumps eslint and related dependencies ([#1143](https://github.com/openai/openai-node/issues/1143)) ([2643f42](https://github.com/openai/openai-node/commit/2643f42a36208c36daf23470ffcd227a891284eb))

## 4.68.2 (2024-10-22)

Full Changelog: [v4.68.1...v4.68.2](https://github.com/openai/openai-node/compare/v4.68.1...v4.68.2)

### Chores

* **internal:** update spec version ([#1141](https://github.com/openai/openai-node/issues/1141)) ([2ccb3e3](https://github.com/openai/openai-node/commit/2ccb3e357aa2f3eb0fa32c619d8336c3b94cc882))

## 4.68.1 (2024-10-18)

Full Changelog: [v4.68.0...v4.68.1](https://github.com/openai/openai-node/compare/v4.68.0...v4.68.1)

### Bug Fixes

* **client:** respect x-stainless-retry-count default headers ([#1138](https://github.com/openai/openai-node/issues/1138)) ([266717b](https://github.com/openai/openai-node/commit/266717b3301828c7df735064a380a055576183bc))

## 4.68.0 (2024-10-17)

Full Changelog: [v4.67.3...v4.68.0](https://github.com/openai/openai-node/compare/v4.67.3...v4.68.0)

### Features

* **api:** add gpt-4o-audio-preview model for chat completions ([#1135](https://github.com/openai/openai-node/issues/1135)) ([17a623f](https://github.com/openai/openai-node/commit/17a623f70050bca4538ad2939055cd9d9b165f89))

## 4.67.3 (2024-10-08)

Full Changelog: [v4.67.2...v4.67.3](https://github.com/openai/openai-node/compare/v4.67.2...v4.67.3)

### Chores

* **internal:** pass props through internal parser ([#1125](https://github.com/openai/openai-node/issues/1125)) ([5ef8aa8](https://github.com/openai/openai-node/commit/5ef8aa8d308f7374dd01d8079cd76e0d96999ec2))

## 4.67.2 (2024-10-07)

Full Changelog: [v4.67.1...v4.67.2](https://github.com/openai/openai-node/compare/v4.67.1...v4.67.2)

### Chores

* **internal:** move LineDecoder to a separate file ([#1120](https://github.com/openai/openai-node/issues/1120)) ([0a4be65](https://github.com/openai/openai-node/commit/0a4be6506bf26d2b9552ff3fd13a22c04b53ea18))

## 4.67.1 (2024-10-02)

Full Changelog: [v4.67.0...v4.67.1](https://github.com/openai/openai-node/compare/v4.67.0...v4.67.1)

### Documentation

* improve and reference contributing documentation ([#1115](https://github.com/openai/openai-node/issues/1115)) ([7fa30b3](https://github.com/openai/openai-node/commit/7fa30b3ebf276556141df95ba8e824a0276b61f8))

## 4.67.0 (2024-10-01)

Full Changelog: [v4.66.1...v4.67.0](https://github.com/openai/openai-node/compare/v4.66.1...v4.67.0)

### Features

* **api:** support storing chat completions, enabling evals and model distillation in the dashboard ([#1112](https://github.com/openai/openai-node/issues/1112)) ([6424924](https://github.com/openai/openai-node/commit/6424924b6361e54f07c04fce9075ab16fcb712fb))

## 4.66.1 (2024-09-30)

Full Changelog: [v4.66.0...v4.66.1](https://github.com/openai/openai-node/compare/v4.66.0...v4.66.1)

### Bug Fixes

* **audio:** add fallback overload types ([0c00a13](https://github.com/openai/openai-node/commit/0c00a13dd864b974d3376c905647209e4a79f244))
* **audio:** use export type ([1519100](https://github.com/openai/openai-node/commit/1519100e530e08e7683549d0bcdd919b9c2d1654))

## 4.66.0 (2024-09-27)

Full Changelog: [v4.65.0...v4.66.0](https://github.com/openai/openai-node/compare/v4.65.0...v4.66.0)

### Features

* **client:** add request_id to `.withResponse()` ([#1095](https://github.com/openai/openai-node/issues/1095)) ([2d0f565](https://github.com/openai/openai-node/commit/2d0f565f124a8862bc24214cc3ddce9db0ba75bc))


### Bug Fixes

* **audio:** correct types for transcriptions / translations ([#1104](https://github.com/openai/openai-node/issues/1104)) ([96e86c2](https://github.com/openai/openai-node/commit/96e86c214ba79d50035b61e5daa3489f082512c4))
* **client:** correct types for transcriptions / translations ([#1105](https://github.com/openai/openai-node/issues/1105)) ([fa16ebb](https://github.com/openai/openai-node/commit/fa16ebbb314ebc7c274d27f0148d248edf48e055))

## 4.65.0 (2024-09-26)

Full Changelog: [v4.64.0...v4.65.0](https://github.com/openai/openai-node/compare/v4.64.0...v4.65.0)

### Features

* **api:** add omni-moderation model ([#1100](https://github.com/openai/openai-node/issues/1100)) ([66c0f21](https://github.com/openai/openai-node/commit/66c0f21fad3be9c57b810c4a7eebb71eb6ccbcc1))

## 4.64.0 (2024-09-25)

Full Changelog: [v4.63.0...v4.64.0](https://github.com/openai/openai-node/compare/v4.63.0...v4.64.0)

### Features

* **client:** allow overriding retry count header ([#1098](https://github.com/openai/openai-node/issues/1098)) ([a466ff7](https://github.com/openai/openai-node/commit/a466ff78a436db82d79a8f53066a85a3b1dbe039))


### Bug Fixes

* **audio:** correct response_format translations type ([#1097](https://github.com/openai/openai-node/issues/1097)) ([9a5f461](https://github.com/openai/openai-node/commit/9a5f461306e84b62ce1ed8aedbfee90798def5fb))


### Chores

* **internal:** fix ecosystem tests error output ([#1096](https://github.com/openai/openai-node/issues/1096)) ([ecdb4e9](https://github.com/openai/openai-node/commit/ecdb4e923f94e828d8758559aea78c82417b8f12))
* **internal:** fix slow ecosystem test ([#1093](https://github.com/openai/openai-node/issues/1093)) ([80ed9ec](https://github.com/openai/openai-node/commit/80ed9ecbd60129164cb407e46dddbc06ef1c54ab))

## 4.63.0 (2024-09-20)

Full Changelog: [v4.62.1...v4.63.0](https://github.com/openai/openai-node/compare/v4.62.1...v4.63.0)

### Features

* **client:** send retry count header ([#1087](https://github.com/openai/openai-node/issues/1087)) ([7bcebc0](https://github.com/openai/openai-node/commit/7bcebc0e3965c2decd1dffb1e67f5197260ca89e))


### Chores

* **types:** improve type name for embedding models ([#1089](https://github.com/openai/openai-node/issues/1089)) ([d6966d9](https://github.com/openai/openai-node/commit/d6966d9872a14b7fbee85a7bb1fae697852b8ce0))

## 4.62.1 (2024-09-18)

Full Changelog: [v4.62.0...v4.62.1](https://github.com/openai/openai-node/compare/v4.62.0...v4.62.1)

### Bug Fixes

* **types:** remove leftover polyfill usage ([#1084](https://github.com/openai/openai-node/issues/1084)) ([b7c9538](https://github.com/openai/openai-node/commit/b7c9538981a11005fb0a00774683d979d3ca663a))

## 4.62.0 (2024-09-17)

Full Changelog: [v4.61.1...v4.62.0](https://github.com/openai/openai-node/compare/v4.61.1...v4.62.0)

### Features

* **client:** add ._request_id property to object responses ([#1078](https://github.com/openai/openai-node/issues/1078)) ([d5c2131](https://github.com/openai/openai-node/commit/d5c21314449091dd1c668c7358b25e041466f588))


### Chores

* **internal:** add ecosystem test for qs reproduction ([0199dd8](https://github.com/openai/openai-node/commit/0199dd85981497fac2b60f786acc00ea30683897))
* **internal:** add query string encoder ([#1079](https://github.com/openai/openai-node/issues/1079)) ([f870682](https://github.com/openai/openai-node/commit/f870682d5c490182547c428b0b5c75da0e34d15a))
* **internal:** fix some types ([#1082](https://github.com/openai/openai-node/issues/1082)) ([1ec41a7](https://github.com/openai/openai-node/commit/1ec41a7d768502a31abb33bf86b0539e5b4b6541))
* **tests:** add query string tests to ecosystem tests ([36be724](https://github.com/openai/openai-node/commit/36be724384401bb697d8b07b0a1965be721cfa51))

## 4.61.1 (2024-09-16)

Full Changelog: [v4.61.0...v4.61.1](https://github.com/openai/openai-node/compare/v4.61.0...v4.61.1)

### Bug Fixes

* **runTools:** correct request options type ([#1073](https://github.com/openai/openai-node/issues/1073)) ([399f971](https://github.com/openai/openai-node/commit/399f9710f9a1406fe2dd048a1d26418c0de7ff0c))


### Chores

* **internal:** update spec link ([#1076](https://github.com/openai/openai-node/issues/1076)) ([20f1bcc](https://github.com/openai/openai-node/commit/20f1bcce2b5d03c5185989212a5c5271a8d4209c))

## 4.61.0 (2024-09-13)

Full Changelog: [v4.60.1...v4.61.0](https://github.com/openai/openai-node/compare/v4.60.1...v4.61.0)

### Bug Fixes

* **client:** partial parsing update to handle strings ([46e8eb6](https://github.com/openai/openai-node/commit/46e8eb6a9a45b11f9e4c97474ed6c02b1faa43af))
* **examples:** handle usage chunk in tool call streaming ([#1068](https://github.com/openai/openai-node/issues/1068)) ([e4188c4](https://github.com/openai/openai-node/commit/e4188c4ba443a21d1ef94658df5366f80f0e573b))


### Chores

* **examples:** add a small delay to tool-calls example streaming ([a3fc659](https://github.com/openai/openai-node/commit/a3fc65928af7085d1d8d785ad4765fedc3955641))


### Documentation

* update CONTRIBUTING.md ([#1071](https://github.com/openai/openai-node/issues/1071)) ([5de81c9](https://github.com/openai/openai-node/commit/5de81c95d7326602865e007715a76d5595824fd9))

## 4.60.1 (2024-09-13)

Full Changelog: [v4.60.0...v4.60.1](https://github.com/openai/openai-node/compare/v4.60.0...v4.60.1)

### Bug Fixes

* **zod:** correctly add $ref definitions for transformed schemas ([#1065](https://github.com/openai/openai-node/issues/1065)) ([9b93b24](https://github.com/openai/openai-node/commit/9b93b24b8ae267fe403fb9cd4876d9772f40878b))

## 4.60.0 (2024-09-12)

Full Changelog: [v4.59.0...v4.60.0](https://github.com/openai/openai-node/compare/v4.59.0...v4.60.0)

### Features

* **api:** add o1 models ([#1061](https://github.com/openai/openai-node/issues/1061)) ([224cc04](https://github.com/openai/openai-node/commit/224cc045200cd1ce1517b4376c505de9b9a74ccc))

## 4.59.0 (2024-09-11)

Full Changelog: [v4.58.2...v4.59.0](https://github.com/openai/openai-node/compare/v4.58.2...v4.59.0)

### Features

* **structured outputs:** support accessing raw responses ([#1058](https://github.com/openai/openai-node/issues/1058)) ([af17697](https://github.com/openai/openai-node/commit/af176979894ee95a51e09abc239a8fd3a639dcde))


### Documentation

* **azure:** example for custom base URL ([#1055](https://github.com/openai/openai-node/issues/1055)) ([20defc8](https://github.com/openai/openai-node/commit/20defc80801e1f1f489a07bd1264be71c56c586f))
* **azure:** remove locale from docs link ([#1054](https://github.com/openai/openai-node/issues/1054)) ([f9b7eac](https://github.com/openai/openai-node/commit/f9b7eac58020cff0e367a15b9a2ca4e7c95cbb89))

## 4.58.2 (2024-09-09)

Full Changelog: [v4.58.1...v4.58.2](https://github.com/openai/openai-node/compare/v4.58.1...v4.58.2)

### Bug Fixes

* **errors:** pass message through to APIConnectionError ([#1050](https://github.com/openai/openai-node/issues/1050)) ([5a34316](https://github.com/openai/openai-node/commit/5a3431672e200a6bc161d39873e914434557801e))


### Chores

* better object fallback behaviour for casting errors ([#1053](https://github.com/openai/openai-node/issues/1053)) ([b7d4619](https://github.com/openai/openai-node/commit/b7d46190d2bb775145a9a3de6408c38abacfa055))

## 4.58.1 (2024-09-06)

Full Changelog: [v4.58.0...v4.58.1](https://github.com/openai/openai-node/compare/v4.58.0...v4.58.1)

### Chores

* **docs:** update browser support information ([#1045](https://github.com/openai/openai-node/issues/1045)) ([d326cc5](https://github.com/openai/openai-node/commit/d326cc54a77c450672fbf07d736cec80a9ba72fb))

## 4.58.0 (2024-09-05)

Full Changelog: [v4.57.3...v4.58.0](https://github.com/openai/openai-node/compare/v4.57.3...v4.58.0)

### Features

* **vector store:** improve chunking strategy type names ([#1041](https://github.com/openai/openai-node/issues/1041)) ([471cec3](https://github.com/openai/openai-node/commit/471cec3228886253f07c13a362827a31e9ec7b63))


### Bug Fixes

* **uploads:** avoid making redundant memory copies ([#1043](https://github.com/openai/openai-node/issues/1043)) ([271297b](https://github.com/openai/openai-node/commit/271297bd32393d4c5663023adf82f8fb19dc3d25))

## 4.57.3 (2024-09-04)

Full Changelog: [v4.57.2...v4.57.3](https://github.com/openai/openai-node/compare/v4.57.2...v4.57.3)

### Bug Fixes

* **helpers/zod:** avoid import issue in certain environments ([#1039](https://github.com/openai/openai-node/issues/1039)) ([e238daa](https://github.com/openai/openai-node/commit/e238daa7c12f3fb13369f58b9d405365f5efcc8f))


### Chores

* **internal:** minor bump qs version ([#1037](https://github.com/openai/openai-node/issues/1037)) ([8ec218e](https://github.com/openai/openai-node/commit/8ec218e9efb657927b3c0346822a96872aeaf137))

## 4.57.2 (2024-09-04)

Full Changelog: [v4.57.1...v4.57.2](https://github.com/openai/openai-node/compare/v4.57.1...v4.57.2)

### Chores

* **internal:** dependency updates ([#1035](https://github.com/openai/openai-node/issues/1035)) ([e815fb6](https://github.com/openai/openai-node/commit/e815fb6dee75219563d3a7776774ba1c2984560e))

## 4.57.1 (2024-09-03)

Full Changelog: [v4.57.0...v4.57.1](https://github.com/openai/openai-node/compare/v4.57.0...v4.57.1)

### Bug Fixes

* **assistants:** correctly accumulate tool calls when streaming ([#1031](https://github.com/openai/openai-node/issues/1031)) ([d935ad3](https://github.com/openai/openai-node/commit/d935ad3fa37b2701f4c9f6e433ada6074280a871))
* **client:** correct File construction from node-fetch Responses ([#1029](https://github.com/openai/openai-node/issues/1029)) ([22ebdc2](https://github.com/openai/openai-node/commit/22ebdc2ca7d98e0f266110c4cf827e53a0a22026))
* runTools without stream should not emit user message events ([#1005](https://github.com/openai/openai-node/issues/1005)) ([22ded4d](https://github.com/openai/openai-node/commit/22ded4d549a157482a8de2faf65e92c5be07fa95))


### Chores

* **internal/tests:** workaround bug in recent types/node release ([3c7bdfd](https://github.com/openai/openai-node/commit/3c7bdfdb373bff77db0e3fecd5d49ddfa4284cd9))

## 4.57.0 (2024-08-29)

Full Changelog: [v4.56.2...v4.57.0](https://github.com/openai/openai-node/compare/v4.56.2...v4.57.0)

### Features

* **api:** add file search result details to run steps ([#1023](https://github.com/openai/openai-node/issues/1023)) ([d9acd0a](https://github.com/openai/openai-node/commit/d9acd0a2c52b27983f8db6a8de6a776078b1d41b))


### Bug Fixes

* install examples deps as part of bootstrap script ([#1022](https://github.com/openai/openai-node/issues/1022)) ([eae8e36](https://github.com/openai/openai-node/commit/eae8e36fd5514eb60773646ec775badde50e783c))

## 4.56.2 (2024-08-29)

Full Changelog: [v4.56.1...v4.56.2](https://github.com/openai/openai-node/compare/v4.56.1...v4.56.2)

### Chores

* run tsc as part of lint script ([#1020](https://github.com/openai/openai-node/issues/1020)) ([4942347](https://github.com/openai/openai-node/commit/49423472f2b0a0b63961174bedfc00bfd99d47f9))

## 4.56.1 (2024-08-27)

Full Changelog: [v4.56.0...v4.56.1](https://github.com/openai/openai-node/compare/v4.56.0...v4.56.1)

### Chores

* **ci:** check for build errors ([#1013](https://github.com/openai/openai-node/issues/1013)) ([7ff2127](https://github.com/openai/openai-node/commit/7ff21273091a605e05173502654cfb9c90a4382e))

## 4.56.0 (2024-08-16)

Full Changelog: [v4.55.9...v4.56.0](https://github.com/openai/openai-node/compare/v4.55.9...v4.56.0)

### Features

* **api:** add chatgpt-4o-latest model ([edc4398](https://github.com/openai/openai-node/commit/edc43986ba96a0fda48f7eea368efe706f68dcac))

## 4.55.9 (2024-08-16)

Full Changelog: [v4.55.8...v4.55.9](https://github.com/openai/openai-node/compare/v4.55.8...v4.55.9)

### Bug Fixes

* **azure/tts:** avoid stripping model param ([#999](https://github.com/openai/openai-node/issues/999)) ([c3a7ccd](https://github.com/openai/openai-node/commit/c3a7ccdbd6d9a2576509c2dc6c1605bc73c6dde7))

## 4.55.8 (2024-08-15)

Full Changelog: [v4.55.7...v4.55.8](https://github.com/openai/openai-node/compare/v4.55.7...v4.55.8)

### Chores

* **types:** define FilePurpose enum ([#997](https://github.com/openai/openai-node/issues/997)) ([19b941b](https://github.com/openai/openai-node/commit/19b941be4ff3e4fa7e67b820a5aac51e5c8d4f60))

## 4.55.7 (2024-08-13)

Full Changelog: [v4.55.6...v4.55.7](https://github.com/openai/openai-node/compare/v4.55.6...v4.55.7)

### Bug Fixes

* **json-schema:** correct handling of nested recursive schemas ([#992](https://github.com/openai/openai-node/issues/992)) ([ac309ab](https://github.com/openai/openai-node/commit/ac309abee3419594f45680c7d0ab11e13ce28c5b))

## 4.55.6 (2024-08-13)

Full Changelog: [v4.55.5...v4.55.6](https://github.com/openai/openai-node/compare/v4.55.5...v4.55.6)

### Bug Fixes

* **zod-to-json-schema:** correct licensing ([#986](https://github.com/openai/openai-node/issues/986)) ([bd2051e](https://github.com/openai/openai-node/commit/bd2051e501e2ceafcd095f82205c2e668e1d68d7))

## 4.55.5 (2024-08-12)

Full Changelog: [v4.55.4...v4.55.5](https://github.com/openai/openai-node/compare/v4.55.4...v4.55.5)

### Chores

* **examples:** minor formatting changes ([#987](https://github.com/openai/openai-node/issues/987)) ([8e6b615](https://github.com/openai/openai-node/commit/8e6b615ada09fa4e50dc8e0b5decf662eed19856))
* sync openapi url ([#989](https://github.com/openai/openai-node/issues/989)) ([02ff1c5](https://github.com/openai/openai-node/commit/02ff1c55b5eefd8b6193ba2bf10dd5515945bd7a))

## 4.55.4 (2024-08-09)

Full Changelog: [v4.55.3...v4.55.4](https://github.com/openai/openai-node/compare/v4.55.3...v4.55.4)

### Bug Fixes

* **helpers/zod:** nested union schema extraction ([#979](https://github.com/openai/openai-node/issues/979)) ([31b05aa](https://github.com/openai/openai-node/commit/31b05aa6fa0445141ae17a1b1eff533b83735f3a))


### Chores

* **ci:** bump prism mock server version ([#982](https://github.com/openai/openai-node/issues/982)) ([7442643](https://github.com/openai/openai-node/commit/7442643e8445eea15da54843a7c9d7580a402979))
* **ci:** codeowners file ([#980](https://github.com/openai/openai-node/issues/980)) ([17a42b2](https://github.com/openai/openai-node/commit/17a42b2f6e2de2dce338358a48f6d7d4ed723f6f))

## 4.55.3 (2024-08-08)

Full Changelog: [v4.55.2...v4.55.3](https://github.com/openai/openai-node/compare/v4.55.2...v4.55.3)

### Chores

* **internal:** updates ([#975](https://github.com/openai/openai-node/issues/975)) ([313a190](https://github.com/openai/openai-node/commit/313a19059a61893887ac0b57bb488c24bc40f099))

## 4.55.2 (2024-08-08)

Full Changelog: [v4.55.1...v4.55.2](https://github.com/openai/openai-node/compare/v4.55.1...v4.55.2)

### Bug Fixes

* **helpers/zod:** add `extract-to-root` ref strategy ([ef3c73c](https://github.com/openai/openai-node/commit/ef3c73cfdf1a8e45346417812168e476fea65690))
* **helpers/zod:** add `nullableStrategy` option ([ad89892](https://github.com/openai/openai-node/commit/ad89892f4ac0daba161ce97267a165a12f67c341))
* **helpers/zod:** correct logic for adding root schema to definitions ([e4a247a](https://github.com/openai/openai-node/commit/e4a247a2a87b4d3bde55891b31e07413d3a9f00d))


### Chores

* **internal:** add README for vendored zod-to-json-schema ([d8a80a9](https://github.com/openai/openai-node/commit/d8a80a915dfe723a59f512e7128aecf857324388))
* **tests:** add more API request tests ([04c1590](https://github.com/openai/openai-node/commit/04c1590a64127c43898c3c88bcbdd624d54008f6))

## 4.55.1 (2024-08-07)

Full Changelog: [v4.55.0...v4.55.1](https://github.com/openai/openai-node/compare/v4.55.0...v4.55.1)

### Bug Fixes

* **helpers/zod:** correct schema generation for recursive schemas ([cb54d93](https://github.com/openai/openai-node/commit/cb54d93162c86ecfd476733805a431aab25d86d6))


### Chores

* **api:** remove old `AssistantResponseFormat` type ([#967](https://github.com/openai/openai-node/issues/967)) ([9fd94bf](https://github.com/openai/openai-node/commit/9fd94bfc35128d3bc45fbf0a65e6a8d2ea4562d5))
* **internal:** update test snapshots ([bceea60](https://github.com/openai/openai-node/commit/bceea60e461c40a9e59d52772122dd612a2ff1c4))
* **vendor/zodJsonSchema:** add option to duplicate top-level ref ([84b8a38](https://github.com/openai/openai-node/commit/84b8a3820b0ce1c78bfd3db468d8d2962875b4ab))


### Documentation

* **examples:** add UI generation example script ([c75c017](https://github.com/openai/openai-node/commit/c75c017c16cbfe3fc60ea4ee5779782005e64463))

## 4.55.0 (2024-08-06)

Full Changelog: [v4.54.0...v4.55.0](https://github.com/openai/openai-node/compare/v4.54.0...v4.55.0)

### Features

* **api:** add structured outputs support ([573787c](https://github.com/openai/openai-node/commit/573787cf3ea8eea593eeeb5e24a9256951e2cc35))

## 4.54.0 (2024-08-02)

Full Changelog: [v4.53.2...v4.54.0](https://github.com/openai/openai-node/compare/v4.53.2...v4.54.0)

### Features

* extract out `ImageModel`, `AudioModel`, `SpeechModel` ([#964](https://github.com/openai/openai-node/issues/964)) ([1edf957](https://github.com/openai/openai-node/commit/1edf957e1cb86c2a7b2d29e28f2b8f428ea0cd7d))
* make enums not nominal ([#965](https://github.com/openai/openai-node/issues/965)) ([0dd0cd1](https://github.com/openai/openai-node/commit/0dd0cd158d6765c3a04ac983aad03c2ecad14502))


### Chores

* **ci:** correctly tag pre-release npm packages ([#963](https://github.com/openai/openai-node/issues/963)) ([f1a4a68](https://github.com/openai/openai-node/commit/f1a4a686bbf4a38919b8597f008d895d1b99d8df))
* **internal:** add constant for default timeout ([#960](https://github.com/openai/openai-node/issues/960)) ([55c01f4](https://github.com/openai/openai-node/commit/55c01f4dc5d132c21713f9e8606b95abc76fcd44))
* **internal:** cleanup event stream helpers ([#950](https://github.com/openai/openai-node/issues/950)) ([8f49956](https://github.com/openai/openai-node/commit/8f499566c47bd7d4799a8cbe0d980553348b8f48))


### Documentation

* **README:** link Lifecycle in Polling Helpers section ([#962](https://github.com/openai/openai-node/issues/962)) ([c610c81](https://github.com/openai/openai-node/commit/c610c813e8d7f96b5b8315ae194e0a9ff565f43d))

## 4.53.2 (2024-07-26)

Full Changelog: [v4.53.1...v4.53.2](https://github.com/openai/openai-node/compare/v4.53.1...v4.53.2)

### Chores

* **docs:** fix incorrect client var names ([#955](https://github.com/openai/openai-node/issues/955)) ([cc91be8](https://github.com/openai/openai-node/commit/cc91be867bf7042abb2ee6c6d5ef69082ac64280))

## 4.53.1 (2024-07-25)

Full Changelog: [v4.53.0...v4.53.1](https://github.com/openai/openai-node/compare/v4.53.0...v4.53.1)

### Bug Fixes

* **compat:** remove ReadableStream polyfill redundant since node v16 ([#954](https://github.com/openai/openai-node/issues/954)) ([78b2a83](https://github.com/openai/openai-node/commit/78b2a83f085bb7ddf6a5f429636de1e3eef20f9d))


### Chores

* **tests:** update prism version ([#948](https://github.com/openai/openai-node/issues/948)) ([9202c91](https://github.com/openai/openai-node/commit/9202c91d697a116eb1b834e01f4073d254438149))

## 4.53.0 (2024-07-22)

Full Changelog: [v4.52.7...v4.53.0](https://github.com/openai/openai-node/compare/v4.52.7...v4.53.0)

### Features

* **api:** add new gpt-4o-mini models ([#942](https://github.com/openai/openai-node/issues/942)) ([7ac10dd](https://github.com/openai/openai-node/commit/7ac10ddbb87e9eb0e8e34d58a13a4775cbba1c24))
* **api:** add uploads endpoints ([#946](https://github.com/openai/openai-node/issues/946)) ([8709ceb](https://github.com/openai/openai-node/commit/8709ceb0e01c5a1f96704c998f35ca1117ecadac))


### Chores

* **docs:** mention support of web browser runtimes ([#938](https://github.com/openai/openai-node/issues/938)) ([123d19d](https://github.com/openai/openai-node/commit/123d19d5a157110c8ada556c107caf0eb8b2ccc6))
* **docs:** use client instead of package name in Node examples ([#941](https://github.com/openai/openai-node/issues/941)) ([8b5db1f](https://github.com/openai/openai-node/commit/8b5db1f53e66ce4b6e554f40a8dd2fd474085027))

## 4.52.7 (2024-07-11)

Full Changelog: [v4.52.6...v4.52.7](https://github.com/openai/openai-node/compare/v4.52.6...v4.52.7)

### Documentation

* **examples:** update example values ([#933](https://github.com/openai/openai-node/issues/933)) ([92512ab](https://github.com/openai/openai-node/commit/92512abcd7ab5d7c452dfae007c3a25041062656))

## 4.52.6 (2024-07-11)

Full Changelog: [v4.52.5...v4.52.6](https://github.com/openai/openai-node/compare/v4.52.5...v4.52.6)

### Chores

* **ci:** also run workflows for PRs targeting `next` ([#931](https://github.com/openai/openai-node/issues/931)) ([e3f979a](https://github.com/openai/openai-node/commit/e3f979ae94b2252b9552d1e03de5b92d398a3e28))

## 4.52.5 (2024-07-10)

Full Changelog: [v4.52.4...v4.52.5](https://github.com/openai/openai-node/compare/v4.52.4...v4.52.5)

### Bug Fixes

* **vectorStores:** correctly handle missing `files` in `uploadAndPoll()` ([#926](https://github.com/openai/openai-node/issues/926)) ([945fca6](https://github.com/openai/openai-node/commit/945fca646b02b52bbc9163cb51f5d87e7db8afd6))

## 4.52.4 (2024-07-08)

Full Changelog: [v4.52.3...v4.52.4](https://github.com/openai/openai-node/compare/v4.52.3...v4.52.4)

### Refactors

* **examples:** removedduplicated 'messageDelta' streaming event. ([#909](https://github.com/openai/openai-node/issues/909)) ([7b0b3d2](https://github.com/openai/openai-node/commit/7b0b3d2e228532fca19f49390a2831a1abac72a4))

## 4.52.3 (2024-07-02)

Full Changelog: [v4.52.2...v4.52.3](https://github.com/openai/openai-node/compare/v4.52.2...v4.52.3)

### Chores

* minor change to tests ([#916](https://github.com/openai/openai-node/issues/916)) ([b8a33e3](https://github.com/openai/openai-node/commit/b8a33e31697b52d733f28d9380e0c02a2d179474))

## 4.52.2 (2024-06-28)

Full Changelog: [v4.52.1...v4.52.2](https://github.com/openai/openai-node/compare/v4.52.1...v4.52.2)

### Chores

* gitignore test server logs ([#914](https://github.com/openai/openai-node/issues/914)) ([6316720](https://github.com/openai/openai-node/commit/6316720c3fdd0422965ae3890275062bc0fe3c2b))

## 4.52.1 (2024-06-25)

Full Changelog: [v4.52.0...v4.52.1](https://github.com/openai/openai-node/compare/v4.52.0...v4.52.1)

### Chores

* **doc:** clarify service tier default value ([#908](https://github.com/openai/openai-node/issues/908)) ([e4c8100](https://github.com/openai/openai-node/commit/e4c8100c7732bdc336b52a48d09945782c0fa2a3))
* **internal:** minor reformatting ([#911](https://github.com/openai/openai-node/issues/911)) ([78c9377](https://github.com/openai/openai-node/commit/78c9377fcd563645081629a89f3fda2c1ff4e175))
* **internal:** re-order some imports ([#904](https://github.com/openai/openai-node/issues/904)) ([dbd5c40](https://github.com/openai/openai-node/commit/dbd5c4053ba2f255dfc56676ced5b30381843c75))

## 4.52.0 (2024-06-18)

Full Changelog: [v4.51.0...v4.52.0](https://github.com/openai/openai-node/compare/v4.51.0...v4.52.0)

### Features

* **api:** add service tier argument for chat completions ([#900](https://github.com/openai/openai-node/issues/900)) ([91e6651](https://github.com/openai/openai-node/commit/91e66514037a8d6f9c39d3c96cd5769885925a4b))

## 4.51.0 (2024-06-12)

Full Changelog: [v4.50.0...v4.51.0](https://github.com/openai/openai-node/compare/v4.50.0...v4.51.0)

### Features

* **api:** updates ([#894](https://github.com/openai/openai-node/issues/894)) ([b58f5a1](https://github.com/openai/openai-node/commit/b58f5a1344f631dac0fb8ecfa4fbae49af070189))

## 4.50.0 (2024-06-10)

Full Changelog: [v4.49.1...v4.50.0](https://github.com/openai/openai-node/compare/v4.49.1...v4.50.0)

### Features

* support `application/octet-stream` request bodies ([#892](https://github.com/openai/openai-node/issues/892)) ([51661c8](https://github.com/openai/openai-node/commit/51661c8068d4990df6916becb6bb85353b54ef4d))

## 4.49.1 (2024-06-07)

Full Changelog: [v4.49.0...v4.49.1](https://github.com/openai/openai-node/compare/v4.49.0...v4.49.1)

### Bug Fixes

* remove erroneous thread create argument ([#889](https://github.com/openai/openai-node/issues/889)) ([a9f898e](https://github.com/openai/openai-node/commit/a9f898ee109a0b35a672e41c6497f3a75eff7734))

## 4.49.0 (2024-06-06)

Full Changelog: [v4.48.3...v4.49.0](https://github.com/openai/openai-node/compare/v4.48.3...v4.49.0)

### Features

* **api:** updates ([#887](https://github.com/openai/openai-node/issues/887)) ([359eeb3](https://github.com/openai/openai-node/commit/359eeb33b08b371451f216d1e21dd3334ec15f36))

## 4.48.3 (2024-06-06)

Full Changelog: [v4.48.2...v4.48.3](https://github.com/openai/openai-node/compare/v4.48.2...v4.48.3)

### Chores

* **internal:** minor refactor of tests ([#884](https://github.com/openai/openai-node/issues/884)) ([0b71f2b](https://github.com/openai/openai-node/commit/0b71f2b2cb67e5714476b6f63b4ef93a0140bff2))

## 4.48.2 (2024-06-05)

Full Changelog: [v4.48.1...v4.48.2](https://github.com/openai/openai-node/compare/v4.48.1...v4.48.2)

### Chores

* **internal:** minor change to tests ([#881](https://github.com/openai/openai-node/issues/881)) ([5e2d608](https://github.com/openai/openai-node/commit/5e2d608ca9a2bcb3f261ad13c848d327b60b6fb1))

## 4.48.1 (2024-06-04)

Full Changelog: [v4.48.0...v4.48.1](https://github.com/openai/openai-node/compare/v4.48.0...v4.48.1)

### Bug Fixes

* resolve typescript issue ([1129707](https://github.com/openai/openai-node/commit/11297073b1a370fc9c8676446f939a48071999b2))

## 4.48.0 (2024-06-03)

Full Changelog: [v4.47.3...v4.48.0](https://github.com/openai/openai-node/compare/v4.47.3...v4.48.0)

### Features

* **api:** updates ([#874](https://github.com/openai/openai-node/issues/874)) ([295c248](https://github.com/openai/openai-node/commit/295c2486005f6f1eb81cbbd6994b4382801d0707))

## 4.47.3 (2024-05-31)

Full Changelog: [v4.47.2...v4.47.3](https://github.com/openai/openai-node/compare/v4.47.2...v4.47.3)

### Bug Fixes

* allow git imports for pnpm ([#873](https://github.com/openai/openai-node/issues/873)) ([9da9809](https://github.com/openai/openai-node/commit/9da98090e80cbe988a3d695e4c9b57439080ec3e))


### Documentation

* **azure:** update example and readme to use Entra ID ([#857](https://github.com/openai/openai-node/issues/857)) ([722eff1](https://github.com/openai/openai-node/commit/722eff1a7aeaa2ce3c40301709db61258c9afa16))

## 4.47.2 (2024-05-28)

Full Changelog: [v4.47.1...v4.47.2](https://github.com/openai/openai-node/compare/v4.47.1...v4.47.2)

### Documentation

* **readme:** add bundle size badge ([#869](https://github.com/openai/openai-node/issues/869)) ([e252132](https://github.com/openai/openai-node/commit/e2521327b7b4f5abe97e4c58c417b37d00079ef8))

## 4.47.1 (2024-05-14)

Full Changelog: [v4.47.0...v4.47.1](https://github.com/openai/openai-node/compare/v4.47.0...v4.47.1)

### Chores

* **internal:** add slightly better logging to scripts ([#848](https://github.com/openai/openai-node/issues/848)) ([139e690](https://github.com/openai/openai-node/commit/139e690546775b3568934dd990dd329fce2fbc2f))

## 4.47.0 (2024-05-14)

Full Changelog: [v4.46.1...v4.47.0](https://github.com/openai/openai-node/compare/v4.46.1...v4.47.0)

### Features

* **api:** add incomplete state ([#846](https://github.com/openai/openai-node/issues/846)) ([5f663a1](https://github.com/openai/openai-node/commit/5f663a167361b905c6d0c1242e8a78037a7e4a57))

## 4.46.1 (2024-05-13)

Full Changelog: [v4.46.0...v4.46.1](https://github.com/openai/openai-node/compare/v4.46.0...v4.46.1)

### Refactors

* change import paths to be relative ([#843](https://github.com/openai/openai-node/issues/843)) ([7913574](https://github.com/openai/openai-node/commit/7913574bdb6fcbcf68e56e8def351add6c43310a))

## 4.46.0 (2024-05-13)

Full Changelog: [v4.45.0...v4.46.0](https://github.com/openai/openai-node/compare/v4.45.0...v4.46.0)

### Features

* **api:** add gpt-4o model ([#841](https://github.com/openai/openai-node/issues/841)) ([c818ed1](https://github.com/openai/openai-node/commit/c818ed139bfba81af6ca3c4eda08d52366758529))

## 4.45.0 (2024-05-11)

Full Changelog: [v4.44.0...v4.45.0](https://github.com/openai/openai-node/compare/v4.44.0...v4.45.0)

### Features

* **azure:** batch api ([#839](https://github.com/openai/openai-node/issues/839)) ([e279f8c](https://github.com/openai/openai-node/commit/e279f8c51aa80cb913ccb6df647407bea1f2f071))


### Chores

* **dependency:** bumped Next.js version ([#836](https://github.com/openai/openai-node/issues/836)) ([babb140](https://github.com/openai/openai-node/commit/babb1404751059bdd171b792d03fd21272dd8f8b))
* **docs:** add SECURITY.md ([#838](https://github.com/openai/openai-node/issues/838)) ([6e556d9](https://github.com/openai/openai-node/commit/6e556d9e12341155cc13fe226ab110d63858370e))

## 4.44.0 (2024-05-09)

Full Changelog: [v4.43.0...v4.44.0](https://github.com/openai/openai-node/compare/v4.43.0...v4.44.0)

### Features

* **api:** add message image content ([#834](https://github.com/openai/openai-node/issues/834)) ([7757b3e](https://github.com/openai/openai-node/commit/7757b3ea54a2c5cc251f55af0b676952ba12e8a6))

## 4.43.0 (2024-05-08)

Full Changelog: [v4.42.0...v4.43.0](https://github.com/openai/openai-node/compare/v4.42.0...v4.43.0)

### Features

* **api:** adding file purposes ([#831](https://github.com/openai/openai-node/issues/831)) ([a62b877](https://github.com/openai/openai-node/commit/a62b8779ff7261cdd6aa7bf72fb6407cc7e3fd21))

## 4.42.0 (2024-05-06)

Full Changelog: [v4.41.1...v4.42.0](https://github.com/openai/openai-node/compare/v4.41.1...v4.42.0)

### Features

* **api:** add usage metadata when streaming ([#829](https://github.com/openai/openai-node/issues/829)) ([6707f11](https://github.com/openai/openai-node/commit/6707f119a191ad98d634ad208be852f9f39c6c0e))


### Bug Fixes

* **example:** fix fine tuning example ([#827](https://github.com/openai/openai-node/issues/827)) ([6480a50](https://github.com/openai/openai-node/commit/6480a506c096a2664bd2ad296481e51017ff4185))

## 4.41.1 (2024-05-06)

Full Changelog: [v4.41.0...v4.41.1](https://github.com/openai/openai-node/compare/v4.41.0...v4.41.1)

### Bug Fixes

* **azure:** update build script ([#825](https://github.com/openai/openai-node/issues/825)) ([8afc6e7](https://github.com/openai/openai-node/commit/8afc6e7b49507b3be0228e93913d51b4c3211add))

## 4.41.0 (2024-05-05)

Full Changelog: [v4.40.2...v4.41.0](https://github.com/openai/openai-node/compare/v4.40.2...v4.41.0)

### Features

* **client:** add Azure client ([#822](https://github.com/openai/openai-node/issues/822)) ([92f9049](https://github.com/openai/openai-node/commit/92f90499f0bbee79ba9c8342c8d58dbcaf88bdd1))

## 4.40.2 (2024-05-03)

Full Changelog: [v4.40.1...v4.40.2](https://github.com/openai/openai-node/compare/v4.40.1...v4.40.2)

### Bug Fixes

* **package:** revert recent client file change ([#819](https://github.com/openai/openai-node/issues/819)) ([fa722c9](https://github.com/openai/openai-node/commit/fa722c97859e55a0e766332c3a2f0cb3673128a2))
* **vectorStores:** correct uploadAndPoll method ([#817](https://github.com/openai/openai-node/issues/817)) ([d63f22c](https://github.com/openai/openai-node/commit/d63f22c303761710e6eac7ef883c45e34d223df1))

## 4.40.1 (2024-05-02)

Full Changelog: [v4.40.0...v4.40.1](https://github.com/openai/openai-node/compare/v4.40.0...v4.40.1)

### Chores

* **internal:** bump prism version ([#813](https://github.com/openai/openai-node/issues/813)) ([81a6c28](https://github.com/openai/openai-node/commit/81a6c28c4773a0245ce9c505fc5b98d43df21beb))
* **internal:** move client class to separate file ([#815](https://github.com/openai/openai-node/issues/815)) ([d0b915a](https://github.com/openai/openai-node/commit/d0b915a7514eda5b23d7d1e4420d1d1485ed8d0f))

## 4.40.0 (2024-05-01)

Full Changelog: [v4.39.1...v4.40.0](https://github.com/openai/openai-node/compare/v4.39.1...v4.40.0)

### Features

* **api:** delete messages ([#811](https://github.com/openai/openai-node/issues/811)) ([9e37dbd](https://github.com/openai/openai-node/commit/9e37dbd554e4ca48fda1577b1aad612e9d30534d))

## 4.39.1 (2024-04-30)

Full Changelog: [v4.39.0...v4.39.1](https://github.com/openai/openai-node/compare/v4.39.0...v4.39.1)

### Chores

* **internal:** add link to openapi spec ([#810](https://github.com/openai/openai-node/issues/810)) ([61b5b83](https://github.com/openai/openai-node/commit/61b5b83e82dd723e9584232f3b805ed13e58e13d))
* **internal:** fix release please for deno ([#808](https://github.com/openai/openai-node/issues/808)) ([ecc2eae](https://github.com/openai/openai-node/commit/ecc2eaec602eb9fe518f011920d8500e01fde01b))
* **internal:** refactor scripts ([#806](https://github.com/openai/openai-node/issues/806)) ([9283519](https://github.com/openai/openai-node/commit/928351928054feb56f8797587c70f74d06c2737c))

## 4.39.0 (2024-04-29)

Full Changelog: [v4.38.5...v4.39.0](https://github.com/openai/openai-node/compare/v4.38.5...v4.39.0)

### Features

* **api:** add required tool_choice ([#803](https://github.com/openai/openai-node/issues/803)) ([99693e6](https://github.com/openai/openai-node/commit/99693e61debc67327a45dffb2c10c113341bffd6))


### Chores

* **internal:** add scripts/test and scripts/mock ([#801](https://github.com/openai/openai-node/issues/801)) ([6656105](https://github.com/openai/openai-node/commit/6656105fa1346a91d17e2b7a5e075f3091310c2f))

## 4.38.5 (2024-04-24)

Full Changelog: [v4.38.4...v4.38.5](https://github.com/openai/openai-node/compare/v4.38.4...v4.38.5)

### Chores

* **internal:** use actions/checkout@v4 for codeflow ([#799](https://github.com/openai/openai-node/issues/799)) ([5ab7780](https://github.com/openai/openai-node/commit/5ab7780ea8889818f403a9a89ab19585a7e8972e))

## 4.38.4 (2024-04-24)

Full Changelog: [v4.38.3...v4.38.4](https://github.com/openai/openai-node/compare/v4.38.3...v4.38.4)

### Bug Fixes

* **api:** change timestamps to unix integers ([#798](https://github.com/openai/openai-node/issues/798)) ([7271a6c](https://github.com/openai/openai-node/commit/7271a6cdc7d37151d2cae18fdd20b87d97624a84))
* **docs:** doc improvements ([#796](https://github.com/openai/openai-node/issues/796)) ([49fcc86](https://github.com/openai/openai-node/commit/49fcc86b44958795a6f5e0901f369653dfbcc637))

## 4.38.3 (2024-04-22)

Full Changelog: [v4.38.2...v4.38.3](https://github.com/openai/openai-node/compare/v4.38.2...v4.38.3)

### Chores

* **internal:** use @swc/jest for running tests ([#793](https://github.com/openai/openai-node/issues/793)) ([8947f19](https://github.com/openai/openai-node/commit/8947f195b2dfab7ceebe1e0bb5c886e229cd541f))

## 4.38.2 (2024-04-19)

Full Changelog: [v4.38.1...v4.38.2](https://github.com/openai/openai-node/compare/v4.38.1...v4.38.2)

### Bug Fixes

* **api:** correct types for message attachment tools ([#787](https://github.com/openai/openai-node/issues/787)) ([8626884](https://github.com/openai/openai-node/commit/8626884abd2494aa081db9e50a2f268b6cebc5df))

## 4.38.1 (2024-04-18)

Full Changelog: [v4.38.0...v4.38.1](https://github.com/openai/openai-node/compare/v4.38.0...v4.38.1)

### Bug Fixes

* **api:** correct types for attachments ([#783](https://github.com/openai/openai-node/issues/783)) ([6893631](https://github.com/openai/openai-node/commit/6893631334f75e232ba130f5dd67f1230b1e5fa0))

## 4.38.0 (2024-04-18)

Full Changelog: [v4.37.1...v4.38.0](https://github.com/openai/openai-node/compare/v4.37.1...v4.38.0)

### Features

* **api:** batch list endpoint ([#781](https://github.com/openai/openai-node/issues/781)) ([d226759](https://github.com/openai/openai-node/commit/d226759164fbed33198d8bdc315c98e1052dade8))

## 4.37.1 (2024-04-17)

Full Changelog: [v4.37.0...v4.37.1](https://github.com/openai/openai-node/compare/v4.37.0...v4.37.1)

### Chores

* **api:** docs and response_format response property ([#778](https://github.com/openai/openai-node/issues/778)) ([78f5c35](https://github.com/openai/openai-node/commit/78f5c3568d95d8e854c04049dc7d5643aa49e93f))

## 4.37.0 (2024-04-17)

Full Changelog: [v4.36.0...v4.37.0](https://github.com/openai/openai-node/compare/v4.36.0...v4.37.0)

### Features

* **api:** add vector stores ([#776](https://github.com/openai/openai-node/issues/776)) ([8bb929b](https://github.com/openai/openai-node/commit/8bb929b2ee91c1bec0a00347bf4f7628652d1be3))

## 4.36.0 (2024-04-16)

Full Changelog: [v4.35.0...v4.36.0](https://github.com/openai/openai-node/compare/v4.35.0...v4.36.0)

### Features

* **client:** add header OpenAI-Project ([#772](https://github.com/openai/openai-node/issues/772)) ([bb4df37](https://github.com/openai/openai-node/commit/bb4df3722082fb44b7d4feb7a47df796149150a2))
* extract chat models to a named enum ([#775](https://github.com/openai/openai-node/issues/775)) ([141d2ed](https://github.com/openai/openai-node/commit/141d2ed308141dc751869353208e4d0632d3650c))


### Build System

* configure UTF-8 locale in devcontainer ([#774](https://github.com/openai/openai-node/issues/774)) ([bebf4f0](https://github.com/openai/openai-node/commit/bebf4f0ca1f884f8747caff0f0e065aafffde096))

## 4.35.0 (2024-04-15)

Full Changelog: [v4.34.0...v4.35.0](https://github.com/openai/openai-node/compare/v4.34.0...v4.35.0)

### Features

* **errors:** add request_id property ([#769](https://github.com/openai/openai-node/issues/769)) ([43aa6a1](https://github.com/openai/openai-node/commit/43aa6a19cfb1448903dfaddc4da3def2eda9cbab))

## 4.34.0 (2024-04-15)

Full Changelog: [v4.33.1...v4.34.0](https://github.com/openai/openai-node/compare/v4.33.1...v4.34.0)

### Features

* **api:** add batch API ([#768](https://github.com/openai/openai-node/issues/768)) ([7fe34f2](https://github.com/openai/openai-node/commit/7fe34f2d0bda9c1cb116a593f02bd0cc15a52e12))
* **api:** updates ([#766](https://github.com/openai/openai-node/issues/766)) ([52bcc47](https://github.com/openai/openai-node/commit/52bcc47043e4c3ffe15ae9e7ac0fa87e2493aad9))

## 4.33.1 (2024-04-12)

Full Changelog: [v4.33.0...v4.33.1](https://github.com/openai/openai-node/compare/v4.33.0...v4.33.1)

### Chores

* **internal:** formatting ([#763](https://github.com/openai/openai-node/issues/763)) ([b6acf54](https://github.com/openai/openai-node/commit/b6acf54baab7e6cbf6ce3ad1d6c70197cc0181d0))
* **internal:** improve ecosystem tests ([#761](https://github.com/openai/openai-node/issues/761)) ([fcf748d](https://github.com/openai/openai-node/commit/fcf748dbbd23f972ff9fd81a8b2a35232a2d6e5c))

## 4.33.0 (2024-04-05)

Full Changelog: [v4.32.2...v4.33.0](https://github.com/openai/openai-node/compare/v4.32.2...v4.33.0)

### Features

* **api:** add additional messages when creating thread run ([#759](https://github.com/openai/openai-node/issues/759)) ([f1fdb41](https://github.com/openai/openai-node/commit/f1fdb410e087f9b94faeda0558de573ec1118601))

## 4.32.2 (2024-04-04)

Full Changelog: [v4.32.1...v4.32.2](https://github.com/openai/openai-node/compare/v4.32.1...v4.32.2)

### Bug Fixes

* **streaming:** handle special line characters and fix multi-byte character decoding ([#757](https://github.com/openai/openai-node/issues/757)) ([8dcdda2](https://github.com/openai/openai-node/commit/8dcdda2b0d1d86486eea5fd47d24a8d26fde4c19))
* **tests:** update wrangler to v3.19.0 (CVE-2023-7080) ([#755](https://github.com/openai/openai-node/issues/755)) ([47ca41d](https://github.com/openai/openai-node/commit/47ca41da9a739b2e04b721cb1fe843e5dd152465))


### Chores

* **tests:** bump ecosystem tests dependencies ([#753](https://github.com/openai/openai-node/issues/753)) ([3f86ea2](https://github.com/openai/openai-node/commit/3f86ea2205c90e05bcbe582491a4bed01075a5b1))

## 4.32.1 (2024-04-02)

Full Changelog: [v4.32.0...v4.32.1](https://github.com/openai/openai-node/compare/v4.32.0...v4.32.1)

### Chores

* **deps:** bump yarn to v1.22.22 ([#751](https://github.com/openai/openai-node/issues/751)) ([5b41d10](https://github.com/openai/openai-node/commit/5b41d1077f219b8feb7557cfab98caf7b5de560d))

## 4.32.0 (2024-04-01)

Full Changelog: [v4.31.0...v4.32.0](https://github.com/openai/openai-node/compare/v4.31.0...v4.32.0)

### Features

* **api:** add support for filtering messages by run_id ([#747](https://github.com/openai/openai-node/issues/747)) ([9a397ac](https://github.com/openai/openai-node/commit/9a397acffa9f10c3f48e86e3bdb3851770f87b42))
* **api:** run polling helpers ([#749](https://github.com/openai/openai-node/issues/749)) ([02920ae](https://github.com/openai/openai-node/commit/02920ae082480fc7a7ffe9fa583d053a40dc7120))


### Chores

* **deps:** remove unused dependency digest-fetch ([#748](https://github.com/openai/openai-node/issues/748)) ([5376837](https://github.com/openai/openai-node/commit/537683734d39dd956a7dcef4339c1167ce6fe13c))


### Documentation

* **readme:** change undocumented params wording ([#744](https://github.com/openai/openai-node/issues/744)) ([8796691](https://github.com/openai/openai-node/commit/87966911045275db86844dfdcde59653edaef264))


### Refactors

* rename createAndStream to stream ([02920ae](https://github.com/openai/openai-node/commit/02920ae082480fc7a7ffe9fa583d053a40dc7120))

## 4.31.0 (2024-03-30)

Full Changelog: [v4.30.0...v4.31.0](https://github.com/openai/openai-node/compare/v4.30.0...v4.31.0)

### Features

* **api:** adding temperature parameter ([#742](https://github.com/openai/openai-node/issues/742)) ([b173b05](https://github.com/openai/openai-node/commit/b173b05eb52266d8f2c835ec4ed71cba8cdc609b))


### Bug Fixes

* **streaming:** trigger all event handlers with fromReadableStream ([#741](https://github.com/openai/openai-node/issues/741)) ([7b1e593](https://github.com/openai/openai-node/commit/7b1e5937d97b309ed51928b4388dcde74abda8dc))

## 4.30.0 (2024-03-28)

Full Changelog: [v4.29.2...v4.30.0](https://github.com/openai/openai-node/compare/v4.29.2...v4.30.0)

### Features

* assistant fromReadableStream ([#738](https://github.com/openai/openai-node/issues/738)) ([8f4ba18](https://github.com/openai/openai-node/commit/8f4ba18268797d6c54c393d701b13c7ff2aa71bc))


### Bug Fixes

* **client:** correctly send deno version header ([#736](https://github.com/openai/openai-node/issues/736)) ([b7ea175](https://github.com/openai/openai-node/commit/b7ea175b2854909de77b920dd25613f1d2daefd6))
* **example:** correcting example ([#739](https://github.com/openai/openai-node/issues/739)) ([a819551](https://github.com/openai/openai-node/commit/a81955175da24e196490a38850bbf6f9b6779ea8))
* handle process.env being undefined in debug func ([#733](https://github.com/openai/openai-node/issues/733)) ([2baa149](https://github.com/openai/openai-node/commit/2baa1491f7834f779ca49c3027d2344ead412dd2))
* **internal:** make toFile use input file's options ([#727](https://github.com/openai/openai-node/issues/727)) ([15880d7](https://github.com/openai/openai-node/commit/15880d77b6c1cf58a6b9cfdbf7ae4442cdbddbd6))


### Chores

* **internal:** add type ([#737](https://github.com/openai/openai-node/issues/737)) ([18c1989](https://github.com/openai/openai-node/commit/18c19891f783019517d7961fe03c4d98de0fcf93))


### Documentation

* **readme:** consistent use of sentence case in headings ([#729](https://github.com/openai/openai-node/issues/729)) ([7e515fd](https://github.com/openai/openai-node/commit/7e515fde433ebfb7871d75d53915eef05a08a916))
* **readme:** document how to make undocumented requests ([#730](https://github.com/openai/openai-node/issues/730)) ([a06d861](https://github.com/openai/openai-node/commit/a06d861a015eeee411fa2c6ed9bf3000313cfc03))

## 4.29.2 (2024-03-19)

Full Changelog: [v4.29.1...v4.29.2](https://github.com/openai/openai-node/compare/v4.29.1...v4.29.2)

### Chores

* **internal:** update generated pragma comment ([#724](https://github.com/openai/openai-node/issues/724)) ([139e205](https://github.com/openai/openai-node/commit/139e205ed1ed30cb1df982d852a093dcea945aba))


### Documentation

* assistant improvements ([#725](https://github.com/openai/openai-node/issues/725)) ([6a2c41b](https://github.com/openai/openai-node/commit/6a2c41b0ce833eba0cdea6a7d221697f3be26abb))
* fix typo in CONTRIBUTING.md ([#722](https://github.com/openai/openai-node/issues/722)) ([05ff8f7](https://github.com/openai/openai-node/commit/05ff8f7671fe6ce5d9517034f76a166a0bd27803))

## 4.29.1 (2024-03-15)

Full Changelog: [v4.29.0...v4.29.1](https://github.com/openai/openai-node/compare/v4.29.0...v4.29.1)

### Documentation

* **readme:** assistant streaming ([#719](https://github.com/openai/openai-node/issues/719)) ([bc9a1ca](https://github.com/openai/openai-node/commit/bc9a1ca308020a88c29d409edc06cdfca8cbf8f5))

## 4.29.0 (2024-03-13)

Full Changelog: [v4.28.5...v4.29.0](https://github.com/openai/openai-node/compare/v4.28.5...v4.29.0)

### Features

* **assistants:** add support for streaming ([#714](https://github.com/openai/openai-node/issues/714)) ([7d27d28](https://github.com/openai/openai-node/commit/7d27d286876d0a575d91a4752f401126fe93d2a3))

## 4.28.5 (2024-03-13)

Full Changelog: [v4.28.4...v4.28.5](https://github.com/openai/openai-node/compare/v4.28.4...v4.28.5)

### Bug Fixes

* **ChatCompletionStream:** abort on async iterator break and handle errors ([#699](https://github.com/openai/openai-node/issues/699)) ([ac417a2](https://github.com/openai/openai-node/commit/ac417a2db31919d2b52f2eb2e38f9c67a8f73254))
* **streaming:** correctly handle trailing new lines in byte chunks ([#708](https://github.com/openai/openai-node/issues/708)) ([4753be2](https://github.com/openai/openai-node/commit/4753be272b1d1dade7a769cf350b829fc639f36e))


### Chores

* **api:** update docs ([#703](https://github.com/openai/openai-node/issues/703)) ([e1db98b](https://github.com/openai/openai-node/commit/e1db98bef29d200e2e401e3f5d7b2db6839c7836))
* **docs:** mention install from git repo ([#700](https://github.com/openai/openai-node/issues/700)) ([c081bdb](https://github.com/openai/openai-node/commit/c081bdbb55585e63370496d324dc6f94d86424d1))
* fix error handler in readme ([#704](https://github.com/openai/openai-node/issues/704)) ([4ff790a](https://github.com/openai/openai-node/commit/4ff790a67cf876191e04ad0e369e447e080b78a7))
* **internal:** add explicit type annotation to decoder ([#712](https://github.com/openai/openai-node/issues/712)) ([d728e99](https://github.com/openai/openai-node/commit/d728e9923554e4c72c9efa3bd528561400d50ad8))
* **types:** fix accidental exposure of Buffer type to cloudflare ([#709](https://github.com/openai/openai-node/issues/709)) ([0323ecb](https://github.com/openai/openai-node/commit/0323ecb98ddbd8910fc5719c8bab5175b945d2ab))


### Documentation

* **contributing:** improve wording ([#696](https://github.com/openai/openai-node/issues/696)) ([940d569](https://github.com/openai/openai-node/commit/940d5695f4cacddbb58e3bfc50fec28c468c7e63))
* **readme:** fix https proxy example ([#705](https://github.com/openai/openai-node/issues/705)) ([d144789](https://github.com/openai/openai-node/commit/d1447890a556d37928b628f6449bb80de224d207))
* **readme:** fix typo in custom fetch implementation ([#698](https://github.com/openai/openai-node/issues/698)) ([64041fd](https://github.com/openai/openai-node/commit/64041fd33da569eccae64afe4e50ee803017b20b))
* remove extraneous --save and yarn install instructions ([#710](https://github.com/openai/openai-node/issues/710)) ([8ec216d](https://github.com/openai/openai-node/commit/8ec216d6b72ee4d67e26786f06c93af18d042117))
* use [@deprecated](https://github.com/deprecated) decorator for deprecated params ([#711](https://github.com/openai/openai-node/issues/711)) ([4688ef4](https://github.com/openai/openai-node/commit/4688ef4b36e9f383a3abf6cdb31d498163a7bb9e))

## 4.28.4 (2024-02-28)

Full Changelog: [v4.28.3...v4.28.4](https://github.com/openai/openai-node/compare/v4.28.3...v4.28.4)

### Features

* **api:** add wav and pcm to response_format ([#691](https://github.com/openai/openai-node/issues/691)) ([b1c6171](https://github.com/openai/openai-node/commit/b1c61711961a62a4d7b47909a68ecd65231a66af))


### Chores

* **ci:** update actions/setup-node action to v4 ([#685](https://github.com/openai/openai-node/issues/685)) ([f2704d5](https://github.com/openai/openai-node/commit/f2704d5f1580c0f1d31584ef88702cde8f6804d4))
* **internal:** fix ecosystem tests ([#693](https://github.com/openai/openai-node/issues/693)) ([616624d](https://github.com/openai/openai-node/commit/616624d3d9fd10ce254ce0d435b2b73ed11679f2))
* **types:** extract run status to a named type ([#686](https://github.com/openai/openai-node/issues/686)) ([b3b3b8e](https://github.com/openai/openai-node/commit/b3b3b8ea20e0f311d3bd53dfd22ccc04f5dce5f7))
* update @types/react to 18.2.58, @types/react-dom to 18.2.19 ([#688](https://github.com/openai/openai-node/issues/688)) ([2a0d0b1](https://github.com/openai/openai-node/commit/2a0d0b1cb197eef25e42bbba88ee90c37d623f24))
* update dependency @types/node to v20.11.20 ([#690](https://github.com/openai/openai-node/issues/690)) ([4ca005b](https://github.com/openai/openai-node/commit/4ca005be082d6c50fe95da6148896b62080bfe07))
* update dependency @types/ws to v8.5.10 ([#683](https://github.com/openai/openai-node/issues/683)) ([a617268](https://github.com/openai/openai-node/commit/a6172683a3390422984ad282ac4940781493e772))
* update dependency next to v13.5.6 ([#689](https://github.com/openai/openai-node/issues/689)) ([abb3b66](https://github.com/openai/openai-node/commit/abb3b6674b8f9f8ff9c2cc61629a31883ae4d8c8))

## 4.28.3 (2024-02-20)

Full Changelog: [v4.28.2...v4.28.3](https://github.com/openai/openai-node/compare/v4.28.2...v4.28.3)

### Bug Fixes

* **ci:** revert "move github release logic to github app" ([#680](https://github.com/openai/openai-node/issues/680)) ([8b4009a](https://github.com/openai/openai-node/commit/8b4009af05a2e0824f99d3cf8cd9063f234ae470))

## 4.28.2 (2024-02-19)

Full Changelog: [v4.28.1...v4.28.2](https://github.com/openai/openai-node/compare/v4.28.1...v4.28.2)

### Bug Fixes

* **api:** remove non-GA instance_id param ([#677](https://github.com/openai/openai-node/issues/677)) ([4d0d4da](https://github.com/openai/openai-node/commit/4d0d4daf3bfca0089c5258a136542513e6b372e6))

## 4.28.1 (2024-02-19)

Full Changelog: [v4.28.0...v4.28.1](https://github.com/openai/openai-node/compare/v4.28.0...v4.28.1)

### Chores

* **ci:** move github release logic to github app ([#671](https://github.com/openai/openai-node/issues/671)) ([ecca6bc](https://github.com/openai/openai-node/commit/ecca6bc2eea391ee53f1a1d6cac9665199447ae0))
* **internal:** refactor release environment script ([#674](https://github.com/openai/openai-node/issues/674)) ([27d3770](https://github.com/openai/openai-node/commit/27d37705d17e05c3761ccefcf09c4e2018eb5772))

## 4.28.0 (2024-02-13)

Full Changelog: [v4.27.1...v4.28.0](https://github.com/openai/openai-node/compare/v4.27.1...v4.28.0)

### Features

* **api:** updates ([#669](https://github.com/openai/openai-node/issues/669)) ([e1900f9](https://github.com/openai/openai-node/commit/e1900f97ee3f4758d47a7eb4659e30abe3750c99))

## 4.27.1 (2024-02-12)

Full Changelog: [v4.27.0...v4.27.1](https://github.com/openai/openai-node/compare/v4.27.0...v4.27.1)

## 4.27.0 (2024-02-08)

Full Changelog: [v4.26.1...v4.27.0](https://github.com/openai/openai-node/compare/v4.26.1...v4.27.0)

### Features

* **api:** add `timestamp_granularities`, add `gpt-3.5-turbo-0125` model ([#661](https://github.com/openai/openai-node/issues/661)) ([5016806](https://github.com/openai/openai-node/commit/50168066862f66b529bae29f4564741300303246))


### Chores

* **internal:** fix retry mechanism for ecosystem-test ([#663](https://github.com/openai/openai-node/issues/663)) ([0eb7ed5](https://github.com/openai/openai-node/commit/0eb7ed5ca3f7c7b29c316fc7d725d834cee73989))
* respect `application/vnd.api+json` content-type header ([#664](https://github.com/openai/openai-node/issues/664)) ([f4fad54](https://github.com/openai/openai-node/commit/f4fad549c5c366d8dd8b936b7699639b895e82a1))

## 4.26.1 (2024-02-05)

Full Changelog: [v4.26.0...v4.26.1](https://github.com/openai/openai-node/compare/v4.26.0...v4.26.1)

### Chores

* **internal:** enable building when git installed ([#657](https://github.com/openai/openai-node/issues/657)) ([8c80a7d](https://github.com/openai/openai-node/commit/8c80a7d6d36155901a19d1f9cd1fec17b89e261e))
* **internal:** re-order pagination import ([#656](https://github.com/openai/openai-node/issues/656)) ([21ae54e](https://github.com/openai/openai-node/commit/21ae54ea2cc2779e440909782a6ac8b70f88ec1f))
* **internal:** support pre-release versioning ([#653](https://github.com/openai/openai-node/issues/653)) ([0c3859f](https://github.com/openai/openai-node/commit/0c3859f88164ae3eb6ec8c29e8889a50861cb35b))
* **test:** add delay between ecosystem tests retry ([#651](https://github.com/openai/openai-node/issues/651)) ([6a4cc5c](https://github.com/openai/openai-node/commit/6a4cc5cea36ae408c8c1eb2ea0ea02f96ffb77b7))


### Documentation

* add a CONTRIBUTING.md ([#659](https://github.com/openai/openai-node/issues/659)) ([8ea58b0](https://github.com/openai/openai-node/commit/8ea58b0b9e7382a3b3af852a9a3a288a485ad33a))

## 4.26.0 (2024-01-25)

Full Changelog: [v4.25.0...v4.26.0](https://github.com/openai/openai-node/compare/v4.25.0...v4.26.0)

### Features

* **api:** add text embeddings dimensions param ([#650](https://github.com/openai/openai-node/issues/650)) ([1b5a977](https://github.com/openai/openai-node/commit/1b5a977d0eef7f5cf97daf27333cbbeb6bb479f3))


### Chores

* **internal:** add internal helpers & improve build scripts ([#643](https://github.com/openai/openai-node/issues/643)) ([9392f50](https://github.com/openai/openai-node/commit/9392f50e47f26b16632c9eb12187ea7f8a565e09))
* **internal:** adjust ecosystem-tests logging in CI ([#646](https://github.com/openai/openai-node/issues/646)) ([156084b](https://github.com/openai/openai-node/commit/156084b8734194a5856612378115b948c82ec6e4))
* **internal:** don't re-export streaming type ([#648](https://github.com/openai/openai-node/issues/648)) ([4c4be94](https://github.com/openai/openai-node/commit/4c4be945fa3f54036183e2d0877060db47ea564b))
* **internal:** fix binary files ([#645](https://github.com/openai/openai-node/issues/645)) ([e1fbc39](https://github.com/openai/openai-node/commit/e1fbc396f4d1dd8ba980c25ba03b670dfed887a0))
* **internal:** minor streaming updates ([#647](https://github.com/openai/openai-node/issues/647)) ([2f073e4](https://github.com/openai/openai-node/commit/2f073e4e6c9cd0ff3ad434907da710704765a005))
* **internal:** pin deno version ([#649](https://github.com/openai/openai-node/issues/649)) ([7e4b903](https://github.com/openai/openai-node/commit/7e4b9039320e4ccbafb45f57dce273bedc9b7cb3))

## 4.25.0 (2024-01-21)

Full Changelog: [v4.24.7...v4.25.0](https://github.com/openai/openai-node/compare/v4.24.7...v4.25.0)

### Features

* **api:** add usage to runs and run steps ([#640](https://github.com/openai/openai-node/issues/640)) ([3caa416](https://github.com/openai/openai-node/commit/3caa4166b8abb5bffb4c8be1495834b7f16af32d))


### Bug Fixes

* allow body type in RequestOptions to be null ([#637](https://github.com/openai/openai-node/issues/637)) ([c4f8a36](https://github.com/openai/openai-node/commit/c4f8a3698dc1d80439131c5097975d6a5db1b4e2))
* handle system_fingerprint in streaming helpers ([#636](https://github.com/openai/openai-node/issues/636)) ([f273530](https://github.com/openai/openai-node/commit/f273530ac491300842aef463852821a1a27805fb))
* **types:** accept undefined for optional client options ([#635](https://github.com/openai/openai-node/issues/635)) ([e48cd57](https://github.com/openai/openai-node/commit/e48cd57931cd0e81a77b55653cb1f663111dd733))


### Chores

* **internal:** debug logging for retries; speculative retry-after-ms support ([#633](https://github.com/openai/openai-node/issues/633)) ([fd64971](https://github.com/openai/openai-node/commit/fd64971612d1d7fcbd8a63885d333485bff68ab1))
* **internal:** update comment ([#631](https://github.com/openai/openai-node/issues/631)) ([e109d40](https://github.com/openai/openai-node/commit/e109d40a5c02c5bf4586e54d92bf0e355d254c1b))

## 4.24.7 (2024-01-13)

Full Changelog: [v4.24.6...v4.24.7](https://github.com/openai/openai-node/compare/v4.24.6...v4.24.7)

### Chores

* **ecosystem-tests:** fix flaky vercel-edge, cloudflare-worker, and deno tests ([#626](https://github.com/openai/openai-node/issues/626)) ([ae412a5](https://github.com/openai/openai-node/commit/ae412a5f12e701e07e71bd9791c55a56858e8383))
* **ecosystem-tests:** fix typo in deno test ([#628](https://github.com/openai/openai-node/issues/628)) ([048ec94](https://github.com/openai/openai-node/commit/048ec943f8d12acba9829c35ebf0b2d3f24930c8))

## 4.24.6 (2024-01-12)

Full Changelog: [v4.24.5...v4.24.6](https://github.com/openai/openai-node/compare/v4.24.5...v4.24.6)

### Chores

* **ecosystem-tests:** fix flaky tests and remove fine tuning calls ([#623](https://github.com/openai/openai-node/issues/623)) ([258d79f](https://github.com/openai/openai-node/commit/258d79f52bb31f4f3723f6f4b97ebe8f3fa187bd))
* **ecosystem-tests:** fix flaky tests and remove fine tuning calls ([#625](https://github.com/openai/openai-node/issues/625)) ([58e5fd8](https://github.com/openai/openai-node/commit/58e5fd8f27052be6ac9587256b161f4bf3a3805f))

## 4.24.5 (2024-01-12)

Full Changelog: [v4.24.4...v4.24.5](https://github.com/openai/openai-node/compare/v4.24.4...v4.24.5)

### Refactors

* **api:** remove deprecated endpoints ([#621](https://github.com/openai/openai-node/issues/621)) ([2054d71](https://github.com/openai/openai-node/commit/2054d71e6b0d407229a4c5aecd75e38c336c2c02))

## 4.24.4 (2024-01-11)

Full Changelog: [v4.24.3...v4.24.4](https://github.com/openai/openai-node/compare/v4.24.3...v4.24.4)

### Chores

* **internal:** narrow type into stringifyQuery ([#619](https://github.com/openai/openai-node/issues/619)) ([88fb9cd](https://github.com/openai/openai-node/commit/88fb9cd1bb415850b0b4868944617282d0b92e2a))

## 4.24.3 (2024-01-10)

Full Changelog: [v4.24.2...v4.24.3](https://github.com/openai/openai-node/compare/v4.24.2...v4.24.3)

### Bug Fixes

* use default base url if BASE_URL env var is blank ([#615](https://github.com/openai/openai-node/issues/615)) ([a27ad3d](https://github.com/openai/openai-node/commit/a27ad3d4e06f2202daa169668d0e7d89e87a38a7))

## 4.24.2 (2024-01-08)

Full Changelog: [v4.24.1...v4.24.2](https://github.com/openai/openai-node/compare/v4.24.1...v4.24.2)

### Bug Fixes

* **headers:** always send lowercase headers and strip undefined (BREAKING in rare cases) ([#608](https://github.com/openai/openai-node/issues/608)) ([4ea159f](https://github.com/openai/openai-node/commit/4ea159f0aa9a1f4c365c74ee726714fe692ddf9f))


### Chores

* add .keep files for examples and custom code directories ([#612](https://github.com/openai/openai-node/issues/612)) ([5e0f733](https://github.com/openai/openai-node/commit/5e0f733d3cd3c8e6d41659141168cd0708e017a3))
* **internal:** bump license ([#605](https://github.com/openai/openai-node/issues/605)) ([045ee74](https://github.com/openai/openai-node/commit/045ee74fd3ffba9e6d1301fe1ffd8bd3c63720a2))
* **internal:** improve type signatures ([#609](https://github.com/openai/openai-node/issues/609)) ([e1ccc82](https://github.com/openai/openai-node/commit/e1ccc82e4991262a631dcffa4d09bdc553e50fbb))


### Documentation

* fix docstring typos ([#600](https://github.com/openai/openai-node/issues/600)) ([1934fa1](https://github.com/openai/openai-node/commit/1934fa15f654ea89e226457f76febe6015616f6c))
* improve audio example to show how to stream to a file ([#598](https://github.com/openai/openai-node/issues/598)) ([e950ad9](https://github.com/openai/openai-node/commit/e950ad969e845d608ed71bd3e3095cd6c941d93d))

## 4.24.1 (2023-12-22)

Full Changelog: [v4.24.0...v4.24.1](https://github.com/openai/openai-node/compare/v4.24.0...v4.24.1)

### Bug Fixes

* **pagination:** correct type annotation object field ([#590](https://github.com/openai/openai-node/issues/590)) ([4066eda](https://github.com/openai/openai-node/commit/4066edad4b5305e82e610f44f4720843f2b69d39))


### Documentation

* **messages:** improvements to helpers reference + typos ([#595](https://github.com/openai/openai-node/issues/595)) ([96a59b9](https://github.com/openai/openai-node/commit/96a59b91c424db67b8a5bdb7cab5da68c57282d4))
* reformat README.md ([#592](https://github.com/openai/openai-node/issues/592)) ([8ffc7f8](https://github.com/openai/openai-node/commit/8ffc7f876cc8f4b7afaf68a37f94f826ef22a6b8))


### Refactors

* write jest config in typescript ([#588](https://github.com/openai/openai-node/issues/588)) ([eb6ceeb](https://github.com/openai/openai-node/commit/eb6ceebf90ba45ec5b803f32b9b080829f6a973a))

## 4.24.0 (2023-12-19)

Full Changelog: [v4.23.0...v4.24.0](https://github.com/openai/openai-node/compare/v4.23.0...v4.24.0)

### Features

* **api:** add additional instructions for runs ([#586](https://github.com/openai/openai-node/issues/586)) ([401d93e](https://github.com/openai/openai-node/commit/401d93ea39fe0e90088799858299322035c0a7e8))


### Chores

* **deps:** update dependency start-server-and-test to v2.0.3 ([#580](https://github.com/openai/openai-node/issues/580)) ([8e1aca1](https://github.com/openai/openai-node/commit/8e1aca1f8be6e583483919ed9ef9b04fab076066))
* **deps:** update dependency ts-jest to v29.1.1 ([#578](https://github.com/openai/openai-node/issues/578)) ([a6edb7b](https://github.com/openai/openai-node/commit/a6edb7bc3cfc447d0c55ae23cc1c2219105d3666))
* **deps:** update jest ([#582](https://github.com/openai/openai-node/issues/582)) ([e49e471](https://github.com/openai/openai-node/commit/e49e471ec7a136f2cbaf82551ccaaea366c87a91))
* **internal:** bump deps ([#583](https://github.com/openai/openai-node/issues/583)) ([2e07b4c](https://github.com/openai/openai-node/commit/2e07b4c66ab1fdbb353fdd00994e293f93e981db))
* **internal:** update deps ([#581](https://github.com/openai/openai-node/issues/581)) ([7b690dc](https://github.com/openai/openai-node/commit/7b690dca67ee8c3b0a89caf7f786ede5dc612a76))


### Documentation

* upgrade models in examples to latest version ([#585](https://github.com/openai/openai-node/issues/585)) ([60101a4](https://github.com/openai/openai-node/commit/60101a4117b1a8223d09fb9fe21d89af32431939))

## 4.23.0 (2023-12-17)

Full Changelog: [v4.22.1...v4.23.0](https://github.com/openai/openai-node/compare/v4.22.1...v4.23.0)

### Features

* **api:** add token logprobs to chat completions ([#576](https://github.com/openai/openai-node/issues/576)) ([8d4292e](https://github.com/openai/openai-node/commit/8d4292e6358920b2c9d8df49c6a154231c468512))


### Chores

* **ci:** run release workflow once per day ([#574](https://github.com/openai/openai-node/issues/574)) ([529f09f](https://github.com/openai/openai-node/commit/529f09f827a675d6e851590acff4e6f4f2af2d26))

## 4.22.1 (2023-12-15)

Full Changelog: [v4.22.0...v4.22.1](https://github.com/openai/openai-node/compare/v4.22.0...v4.22.1)

### Chores

* update dependencies ([#572](https://github.com/openai/openai-node/issues/572)) ([a51e620](https://github.com/openai/openai-node/commit/a51e62065224a516b17dd850ae564f5436d8db52))


### Documentation

* replace runFunctions with runTools in readme ([#570](https://github.com/openai/openai-node/issues/570)) ([c3b9ad5](https://github.com/openai/openai-node/commit/c3b9ad58e5f74d3339889aeb1d758c8c18f54de7))

## 4.22.0 (2023-12-15)

Full Changelog: [v4.21.0...v4.22.0](https://github.com/openai/openai-node/compare/v4.21.0...v4.22.0)

### Features

* **api:** add optional `name` argument + improve docs ([#569](https://github.com/openai/openai-node/issues/569)) ([3b68ace](https://github.com/openai/openai-node/commit/3b68ace533976aedbf642d9b018d0de8d9a8bb88))


### Chores

* update prettier ([#567](https://github.com/openai/openai-node/issues/567)) ([83dec2a](https://github.com/openai/openai-node/commit/83dec2af62c481d7de16d8a3644aa239ded9e30c))

## 4.21.0 (2023-12-11)

Full Changelog: [v4.20.1...v4.21.0](https://github.com/openai/openai-node/compare/v4.20.1...v4.21.0)

### Features

* **client:** support reading the base url from an env variable ([#547](https://github.com/openai/openai-node/issues/547)) ([06fb68d](https://github.com/openai/openai-node/commit/06fb68de1ff80983e349b6715d1037e2072c8dd4))


### Bug Fixes

* correct some runTools behavior and deprecate runFunctions ([#562](https://github.com/openai/openai-node/issues/562)) ([f5cdd0f](https://github.com/openai/openai-node/commit/f5cdd0f704d3d075cdfc5bc2df1f7a8bae5cd9f1))
* prevent 400 when using runTools/runFunctions with Azure OpenAI API ([#544](https://github.com/openai/openai-node/issues/544)) ([735d9b8](https://gi
Download .txt
gitextract_h79a7hmg/

├── .devcontainer/
│   └── devcontainer.json
├── .github/
│   ├── CODEOWNERS
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.yml
│   │   ├── config.yml
│   │   └── feature_request.yml
│   ├── pull_request_template.md
│   └── workflows/
│       ├── ci.yml
│       ├── create-releases.yml
│       ├── detect-breaking-changes.yml
│       ├── publish-jsr.yml
│       ├── publish-npm.yml
│       └── release-doctor.yml
├── .gitignore
├── .prettierignore
├── .prettierrc.json
├── .release-please-manifest.json
├── .stats.yml
├── Brewfile
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── MIGRATION.md
├── README.md
├── SECURITY.md
├── api.md
├── azure.md
├── bin/
│   ├── check-release-environment
│   ├── cli
│   ├── migration-config.json
│   ├── publish-jsr
│   └── publish-npm
├── ecosystem-tests/
│   ├── browser-direct-import/
│   │   ├── .gitignore
│   │   ├── package.json
│   │   ├── public/
│   │   │   ├── index.html
│   │   │   └── index.js
│   │   ├── src/
│   │   │   └── test.ts
│   │   └── tsconfig.json
│   ├── bun/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── bun.lockb
│   │   ├── openai.test.ts
│   │   ├── package.json
│   │   └── tsconfig.json
│   ├── cli.ts
│   ├── cloudflare-worker/
│   │   ├── .editorconfig
│   │   ├── .prettierrc
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── uploadWebApiTestCases.ts
│   │   │   └── worker.ts
│   │   ├── tests/
│   │   │   └── test.js
│   │   ├── tsconfig.check.json
│   │   ├── tsconfig.json
│   │   └── wrangler.toml
│   ├── deno/
│   │   ├── deno.jsonc
│   │   └── main_test.ts
│   ├── node-js/
│   │   ├── package.json
│   │   └── test.js
│   ├── node-ts-cjs/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   ├── test-jsdom.ts
│   │   │   └── test-node.ts
│   │   ├── tsconfig.json
│   │   └── tsconfig.nodenext.json
│   ├── node-ts-cjs-auto/
│   │   ├── jest.config.cjs
│   │   ├── moduleResolution/
│   │   │   ├── node/
│   │   │   │   └── type-tests.ts
│   │   │   └── nodenext/
│   │   │       └── type-tests.ts
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   └── tsconfig.nodenext.json
│   ├── node-ts-cjs-web/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   ├── test-jsdom.ts
│   │   │   └── test-node.ts
│   │   ├── tsconfig.json
│   │   ├── tsconfig.nodenext.json
│   │   └── types-test.ts
│   ├── node-ts-esm/
│   │   ├── iitm.js
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   ├── test-esnext.ts
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   └── tsconfig.noderesolution.json
│   ├── node-ts-esm-auto/
│   │   ├── esnext-type-tests.ts
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   └── tsconfig.json
│   ├── node-ts-esm-web/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   ├── tsconfig.noderesolution.json
│   │   └── types-test.ts
│   ├── node-ts4.5-jest28/
│   │   ├── jest.config.cjs
│   │   ├── package.json
│   │   ├── tests/
│   │   │   └── test.ts
│   │   └── tsconfig.json
│   ├── proxy.ts
│   ├── ts-browser-webpack/
│   │   ├── .babelrc
│   │   ├── .gitignore
│   │   ├── package.json
│   │   ├── public/
│   │   │   └── index.html
│   │   ├── src/
│   │   │   ├── index.ts
│   │   │   └── test.ts
│   │   ├── tsconfig.json
│   │   └── webpack.config.js
│   └── vercel-edge/
│       ├── .gitignore
│       ├── jest.config.cjs
│       ├── next.config.js
│       ├── package.json
│       ├── src/
│       │   ├── pages/
│       │   │   ├── _app.tsx
│       │   │   ├── _document.tsx
│       │   │   ├── ai-streaming.tsx
│       │   │   ├── api/
│       │   │   │   ├── edge-test.ts
│       │   │   │   ├── node-test.ts
│       │   │   │   ├── query-params.ts
│       │   │   │   ├── response.ts
│       │   │   │   ├── streaming.ts
│       │   │   │   ├── transcribe.ts
│       │   │   │   └── vercel-ai-streaming.ts
│       │   │   └── index.tsx
│       │   └── uploadWebApiTestCases.ts
│       ├── tests/
│       │   └── test.ts
│       └── tsconfig.json
├── eslint.config.mjs
├── examples/
│   ├── .gitignore
│   ├── .keep
│   ├── assistant-stream-raw.ts
│   ├── assistant-stream.ts
│   ├── assistants.ts
│   ├── audio.ts
│   ├── azure/
│   │   ├── chat.ts
│   │   └── realtime/
│   │       ├── websocket.ts
│   │       └── ws.ts
│   ├── chat-params-types.ts
│   ├── demo.ts
│   ├── errors.ts
│   ├── fine-tuning-data.jsonl
│   ├── fine-tuning.ts
│   ├── function-call-diy.ts
│   ├── function-call-stream-raw.ts
│   ├── function-call-stream.ts
│   ├── function-call.ts
│   ├── image-stream.ts
│   ├── logprobs.ts
│   ├── package.json
│   ├── parsing-run-tools.ts
│   ├── parsing-stream.ts
│   ├── parsing-tools-stream.ts
│   ├── parsing-tools.ts
│   ├── parsing.ts
│   ├── raw-response.ts
│   ├── realtime/
│   │   ├── websocket.ts
│   │   └── ws.ts
│   ├── responses/
│   │   ├── stream.ts
│   │   ├── stream_background.ts
│   │   ├── streaming-tools.ts
│   │   ├── structured-outputs-tools.ts
│   │   ├── structured-outputs.ts
│   │   └── websocket.ts
│   ├── speech-to-text.ts
│   ├── stream-to-client-browser.ts
│   ├── stream-to-client-express.ts
│   ├── stream-to-client-next.ts
│   ├── stream-to-client-raw.ts
│   ├── stream.ts
│   ├── text-to-speech.ts
│   ├── tool-call-helpers-zod.ts
│   ├── tool-call-helpers.ts
│   ├── tool-calls-stream.ts
│   ├── tsconfig.json
│   ├── types.ts
│   └── ui-generation.ts
├── helpers.md
├── jest.config.ts
├── jsr.json
├── jsr.json.orig
├── package.json
├── realtime.md
├── release-please-config.json
├── scripts/
│   ├── bootstrap
│   ├── build
│   ├── build-deno
│   ├── detect-breaking-changes
│   ├── fast-format
│   ├── format
│   ├── lint
│   ├── mock
│   ├── test
│   └── utils/
│       ├── attw-report.cjs
│       ├── check-is-in-git-install.sh
│       ├── check-version.cjs
│       ├── convert-jsr-readme.cjs
│       ├── fix-index-exports.cjs
│       ├── git-swap.sh
│       ├── make-dist-package-json.cjs
│       ├── postprocess-files.cjs
│       └── upload-artifact.sh
├── src/
│   ├── _vendor/
│   │   ├── partial-json-parser/
│   │   │   ├── README.md
│   │   │   └── parser.ts
│   │   └── zod-to-json-schema/
│   │       ├── LICENSE
│   │       ├── Options.ts
│   │       ├── README.md
│   │       ├── Refs.ts
│   │       ├── errorMessages.ts
│   │       ├── index.ts
│   │       ├── parseDef.ts
│   │       ├── parsers/
│   │       │   ├── any.ts
│   │       │   ├── array.ts
│   │       │   ├── bigint.ts
│   │       │   ├── boolean.ts
│   │       │   ├── branded.ts
│   │       │   ├── catch.ts
│   │       │   ├── date.ts
│   │       │   ├── default.ts
│   │       │   ├── effects.ts
│   │       │   ├── enum.ts
│   │       │   ├── intersection.ts
│   │       │   ├── literal.ts
│   │       │   ├── map.ts
│   │       │   ├── nativeEnum.ts
│   │       │   ├── never.ts
│   │       │   ├── null.ts
│   │       │   ├── nullable.ts
│   │       │   ├── number.ts
│   │       │   ├── object.ts
│   │       │   ├── optional.ts
│   │       │   ├── pipeline.ts
│   │       │   ├── promise.ts
│   │       │   ├── readonly.ts
│   │       │   ├── record.ts
│   │       │   ├── set.ts
│   │       │   ├── string.ts
│   │       │   ├── tuple.ts
│   │       │   ├── undefined.ts
│   │       │   ├── union.ts
│   │       │   └── unknown.ts
│   │       ├── util.ts
│   │       └── zodToJsonSchema.ts
│   ├── api-promise.ts
│   ├── azure.ts
│   ├── beta/
│   │   └── realtime/
│   │       ├── index.ts
│   │       ├── internal-base.ts
│   │       ├── websocket.ts
│   │       └── ws.ts
│   ├── client.ts
│   ├── core/
│   │   ├── EventEmitter.ts
│   │   ├── README.md
│   │   ├── api-promise.ts
│   │   ├── error.ts
│   │   ├── pagination.ts
│   │   ├── resource.ts
│   │   ├── streaming.ts
│   │   └── uploads.ts
│   ├── error.ts
│   ├── helpers/
│   │   ├── audio.ts
│   │   └── zod.ts
│   ├── index.ts
│   ├── internal/
│   │   ├── README.md
│   │   ├── builtin-types.ts
│   │   ├── decoders/
│   │   │   └── line.ts
│   │   ├── detect-platform.ts
│   │   ├── errors.ts
│   │   ├── headers.ts
│   │   ├── parse.ts
│   │   ├── qs/
│   │   │   ├── LICENSE.md
│   │   │   ├── README.md
│   │   │   ├── formats.ts
│   │   │   ├── index.ts
│   │   │   ├── stringify.ts
│   │   │   ├── types.ts
│   │   │   └── utils.ts
│   │   ├── request-options.ts
│   │   ├── shim-types.ts
│   │   ├── shims.ts
│   │   ├── stream-utils.ts
│   │   ├── to-file.ts
│   │   ├── types.ts
│   │   ├── uploads.ts
│   │   ├── utils/
│   │   │   ├── base64.ts
│   │   │   ├── bytes.ts
│   │   │   ├── env.ts
│   │   │   ├── log.ts
│   │   │   ├── path.ts
│   │   │   ├── query.ts
│   │   │   ├── sleep.ts
│   │   │   ├── uuid.ts
│   │   │   └── values.ts
│   │   └── utils.ts
│   ├── lib/
│   │   ├── .keep
│   │   ├── AbstractChatCompletionRunner.ts
│   │   ├── AssistantStream.ts
│   │   ├── ChatCompletionRunner.ts
│   │   ├── ChatCompletionStream.ts
│   │   ├── ChatCompletionStreamingRunner.ts
│   │   ├── EventEmitter.ts
│   │   ├── EventStream.ts
│   │   ├── ResponsesParser.ts
│   │   ├── RunnableFunction.ts
│   │   ├── Util.ts
│   │   ├── chatCompletionUtils.ts
│   │   ├── jsonschema.ts
│   │   ├── parser.ts
│   │   ├── responses/
│   │   │   ├── EventTypes.ts
│   │   │   └── ResponseStream.ts
│   │   └── transform.ts
│   ├── pagination.ts
│   ├── realtime/
│   │   ├── index.ts
│   │   ├── internal-base.ts
│   │   ├── websocket.ts
│   │   └── ws.ts
│   ├── resource.ts
│   ├── resources/
│   │   ├── audio/
│   │   │   ├── audio.ts
│   │   │   ├── index.ts
│   │   │   ├── speech.ts
│   │   │   ├── transcriptions.ts
│   │   │   └── translations.ts
│   │   ├── audio.ts
│   │   ├── batches.ts
│   │   ├── beta/
│   │   │   ├── assistants.ts
│   │   │   ├── beta.ts
│   │   │   ├── chatkit/
│   │   │   │   ├── chatkit.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── sessions.ts
│   │   │   │   └── threads.ts
│   │   │   ├── chatkit.ts
│   │   │   ├── index.ts
│   │   │   ├── realtime/
│   │   │   │   ├── index.ts
│   │   │   │   ├── realtime.ts
│   │   │   │   ├── sessions.ts
│   │   │   │   └── transcription-sessions.ts
│   │   │   ├── realtime.ts
│   │   │   ├── threads/
│   │   │   │   ├── index.ts
│   │   │   │   ├── messages.ts
│   │   │   │   ├── runs/
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── runs.ts
│   │   │   │   │   └── steps.ts
│   │   │   │   ├── runs.ts
│   │   │   │   └── threads.ts
│   │   │   └── threads.ts
│   │   ├── beta.ts
│   │   ├── chat/
│   │   │   ├── chat.ts
│   │   │   ├── completions/
│   │   │   │   ├── completions.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── messages.ts
│   │   │   ├── completions.ts
│   │   │   └── index.ts
│   │   ├── chat.ts
│   │   ├── completions.ts
│   │   ├── containers/
│   │   │   ├── containers.ts
│   │   │   ├── files/
│   │   │   │   ├── content.ts
│   │   │   │   ├── files.ts
│   │   │   │   └── index.ts
│   │   │   ├── files.ts
│   │   │   └── index.ts
│   │   ├── containers.ts
│   │   ├── conversations/
│   │   │   ├── api.md
│   │   │   ├── conversations.ts
│   │   │   ├── index.ts
│   │   │   └── items.ts
│   │   ├── conversations.ts
│   │   ├── embeddings.ts
│   │   ├── evals/
│   │   │   ├── evals.ts
│   │   │   ├── index.ts
│   │   │   ├── runs/
│   │   │   │   ├── index.ts
│   │   │   │   ├── output-items.ts
│   │   │   │   └── runs.ts
│   │   │   └── runs.ts
│   │   ├── evals.ts
│   │   ├── files.ts
│   │   ├── fine-tuning/
│   │   │   ├── alpha/
│   │   │   │   ├── alpha.ts
│   │   │   │   ├── graders.ts
│   │   │   │   └── index.ts
│   │   │   ├── alpha.ts
│   │   │   ├── checkpoints/
│   │   │   │   ├── checkpoints.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── permissions.ts
│   │   │   ├── checkpoints.ts
│   │   │   ├── fine-tuning.ts
│   │   │   ├── index.ts
│   │   │   ├── jobs/
│   │   │   │   ├── checkpoints.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── jobs.ts
│   │   │   ├── jobs.ts
│   │   │   └── methods.ts
│   │   ├── fine-tuning.ts
│   │   ├── graders/
│   │   │   ├── grader-models.ts
│   │   │   ├── graders.ts
│   │   │   └── index.ts
│   │   ├── graders.ts
│   │   ├── images.ts
│   │   ├── index.ts
│   │   ├── models.ts
│   │   ├── moderations.ts
│   │   ├── realtime/
│   │   │   ├── api.md
│   │   │   ├── calls.ts
│   │   │   ├── client-secrets.ts
│   │   │   ├── index.ts
│   │   │   └── realtime.ts
│   │   ├── realtime.ts
│   │   ├── responses/
│   │   │   ├── api.md
│   │   │   ├── index.ts
│   │   │   ├── input-items.ts
│   │   │   ├── input-tokens.ts
│   │   │   ├── internal-base.ts
│   │   │   ├── responses.ts
│   │   │   └── ws.ts
│   │   ├── responses.ts
│   │   ├── shared.ts
│   │   ├── skills/
│   │   │   ├── content.ts
│   │   │   ├── index.ts
│   │   │   ├── skills.ts
│   │   │   ├── versions/
│   │   │   │   ├── content.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── versions.ts
│   │   │   └── versions.ts
│   │   ├── skills.ts
│   │   ├── uploads/
│   │   │   ├── index.ts
│   │   │   ├── parts.ts
│   │   │   └── uploads.ts
│   │   ├── uploads.ts
│   │   ├── vector-stores/
│   │   │   ├── file-batches.ts
│   │   │   ├── files.ts
│   │   │   ├── index.ts
│   │   │   └── vector-stores.ts
│   │   ├── vector-stores.ts
│   │   ├── videos.ts
│   │   ├── webhooks/
│   │   │   ├── api.md
│   │   │   ├── index.ts
│   │   │   └── webhooks.ts
│   │   └── webhooks.ts
│   ├── resources.ts
│   ├── streaming.ts
│   ├── uploads.ts
│   └── version.ts
├── tests/
│   ├── _vendor/
│   │   └── partial-json-parser/
│   │       └── partial-json-parsing.test.ts
│   ├── api-resources/
│   │   ├── audio/
│   │   │   ├── speech.test.ts
│   │   │   ├── transcriptions.test.ts
│   │   │   └── translations.test.ts
│   │   ├── batches.test.ts
│   │   ├── beta/
│   │   │   ├── assistants.test.ts
│   │   │   ├── chatkit/
│   │   │   │   ├── sessions.test.ts
│   │   │   │   └── threads.test.ts
│   │   │   └── threads/
│   │   │       ├── messages.test.ts
│   │   │       ├── runs/
│   │   │       │   ├── runs.test.ts
│   │   │       │   └── steps.test.ts
│   │   │       └── threads.test.ts
│   │   ├── chat/
│   │   │   └── completions/
│   │   │       ├── completions.test.ts
│   │   │       └── messages.test.ts
│   │   ├── completions.test.ts
│   │   ├── containers/
│   │   │   ├── containers.test.ts
│   │   │   └── files/
│   │   │       ├── content.test.ts
│   │   │       └── files.test.ts
│   │   ├── conversations/
│   │   │   ├── conversations.test.ts
│   │   │   └── items.test.ts
│   │   ├── embeddings-base64-response.json
│   │   ├── embeddings-float-response.json
│   │   ├── embeddings.test.ts
│   │   ├── evals/
│   │   │   ├── evals.test.ts
│   │   │   └── runs/
│   │   │       ├── output-items.test.ts
│   │   │       └── runs.test.ts
│   │   ├── files.test.ts
│   │   ├── fine-tuning/
│   │   │   ├── alpha/
│   │   │   │   └── graders.test.ts
│   │   │   ├── checkpoints/
│   │   │   │   └── permissions.test.ts
│   │   │   └── jobs/
│   │   │       ├── checkpoints.test.ts
│   │   │       └── jobs.test.ts
│   │   ├── images.test.ts
│   │   ├── models.test.ts
│   │   ├── moderations.test.ts
│   │   ├── realtime/
│   │   │   ├── calls.test.ts
│   │   │   └── client-secrets.test.ts
│   │   ├── responses/
│   │   │   ├── input-items.test.ts
│   │   │   ├── input-tokens.test.ts
│   │   │   └── responses.test.ts
│   │   ├── skills/
│   │   │   ├── skills.test.ts
│   │   │   └── versions/
│   │   │       ├── content.test.ts
│   │   │       └── versions.test.ts
│   │   ├── uploads/
│   │   │   ├── parts.test.ts
│   │   │   └── uploads.test.ts
│   │   ├── vector-stores/
│   │   │   ├── file-batches.test.ts
│   │   │   ├── files.test.ts
│   │   │   └── vector-stores.test.ts
│   │   ├── videos.test.ts
│   │   └── webhooks.test.ts
│   ├── backwards-compat-resource-exports.test.ts
│   ├── base64.test.ts
│   ├── buildHeaders.test.ts
│   ├── form.test.ts
│   ├── helpers/
│   │   └── zod.test.ts
│   ├── index.test.ts
│   ├── internal/
│   │   └── decoders/
│   │       └── line.test.ts
│   ├── lib/
│   │   ├── ChatCompletionRunFunctions.test.ts
│   │   ├── ChatCompletionStream.test.ts
│   │   ├── ResponseStream.test.ts
│   │   ├── __snapshots__/
│   │   │   ├── ChatCompletionStream.test.ts.snap
│   │   │   ├── ResponseStream.test.ts.snap
│   │   │   └── parser.test.ts.snap
│   │   ├── azure.test.ts
│   │   ├── parser.test.ts
│   │   └── transform.test.ts
│   ├── log.test.ts
│   ├── path.test.ts
│   ├── qs/
│   │   ├── empty-keys-cases.ts
│   │   ├── stringify.test.ts
│   │   └── utils.test.ts
│   ├── responses.test.ts
│   ├── responsesItems.test.ts
│   ├── streaming/
│   │   └── assistants/
│   │       └── assistant.test.ts
│   ├── streaming.test.ts
│   ├── stringifyQuery.test.ts
│   ├── uploads.test.ts
│   └── utils/
│       ├── mock-fetch.ts
│       ├── mock-snapshots.ts
│       └── typing.ts
├── tsc-multi.json
├── tsconfig.build.json
├── tsconfig.deno.json
├── tsconfig.dist-src.json
└── tsconfig.json
Download .txt
Showing preview only (210K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (2617 symbols across 237 files)

FILE: ecosystem-tests/browser-direct-import/public/index.js
  function runTests (line 12) | async function runTests() {
  function describe (line 53) | function describe(description, handler) {
  function it (line 67) | function it(description, run, timeout = 60000) {
  function expect (line 78) | function expect(received) {
  function typeTests (line 114) | async function typeTests() {

FILE: ecosystem-tests/browser-direct-import/src/test.ts
  function debugEvent (line 10) | function debugEvent(subj: string) {

FILE: ecosystem-tests/bun/openai.test.ts
  function typeTests (line 16) | async function typeTests() {
  function expectSimilar (line 25) | function expectSimilar(received: any, comparedTo: string, expectedDistan...

FILE: ecosystem-tests/cli.ts
  constant TAR_NAME (line 9) | const TAR_NAME = 'openai.tgz';
  constant PACK_FOLDER (line 10) | const PACK_FOLDER = '.pack';
  constant PACK_FILE (line 11) | const PACK_FILE = `${PACK_FOLDER}/${TAR_NAME}`;
  constant IS_CI (line 12) | const IS_CI = Boolean(process.env['CI'] && process.env['CI'] !== 'false');
  function defaultNodeRunner (line 14) | async function defaultNodeRunner() {
  function startProxy (line 114) | async function startProxy() {
  function parseArgs (line 143) | function parseArgs() {
  type Args (line 210) | type Args = Awaited<ReturnType<typeof parseArgs>>;
  type ChildOutputChunk (line 213) | type ChildOutputChunk = { dest: 'stdout' | 'stderr'; data: string | Buff...
  function main (line 215) | async function main() {
  function withRetry (line 462) | async function withRetry(
  function errorMessage (line 486) | function errorMessage(err: unknown): string {
  function isLikelyNodeCrash (line 498) | function isLikelyNodeCrash(err: unknown): boolean {
  function centerPad (line 509) | function centerPad(text: string, width = text.length, char = ' '): string {
  function banner (line 513) | function banner(name: string, width = 80): string {
  function buildPackage (line 523) | async function buildPackage() {
  function installPackage (line 553) | async function installPackage() {
  function getPackFile (line 569) | function getPackFile() {
  type RunOpts (line 575) | interface RunOpts extends execa.Options {
  function run (line 579) | async function run(command: string, args: string[], config?: RunOpts): P...
  function withChdir (line 597) | async function withChdir<R>(newDir: string, fn: () => Promise<R>): Promi...
  function pathExists (line 608) | async function pathExists(path: string) {
  function defaultNodeCleanup (line 685) | async function defaultNodeCleanup(projectName: string) {
  function fileExists (line 699) | async function fileExists(filePath: string) {

FILE: ecosystem-tests/cloudflare-worker/src/uploadWebApiTestCases.ts
  function uploadWebApiTestCases (line 10) | function uploadWebApiTestCases({

FILE: ecosystem-tests/cloudflare-worker/src/worker.ts
  type Env (line 13) | interface Env {
  type Test (line 32) | type Test = { description: string; handler: () => Promise<void> };
  method fetch (line 35) | async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<...

FILE: ecosystem-tests/deno/main_test.ts
  function _typeTests (line 14) | async function _typeTests() {
  function assertSimilar (line 23) | function assertSimilar(received: string, expected: string, maxDistance: ...

FILE: ecosystem-tests/node-ts-cjs-auto/moduleResolution/node/type-tests.ts
  function typeTests (line 5) | async function typeTests() {

FILE: ecosystem-tests/node-ts-cjs-auto/moduleResolution/nodenext/type-tests.ts
  function typeTests (line 3) | async function typeTests(client: OpenAI) {

FILE: ecosystem-tests/node-ts-cjs-auto/tests/test.ts
  function typeTests (line 16) | async function typeTests() {
  type Matchers (line 27) | interface Matchers<R> {
  method toBeSimilarTo (line 33) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-cjs-web/tests/test-jsdom.ts
  function typeTests (line 17) | async function typeTests() {
  type Matchers (line 28) | interface Matchers<R> {
  method toBeSimilarTo (line 34) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-cjs-web/tests/test-node.ts
  function typeTests (line 14) | async function typeTests() {
  type Matchers (line 25) | interface Matchers<R> {
  method toBeSimilarTo (line 31) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-cjs-web/types-test.ts
  function typeTests (line 3) | async function typeTests(client: OpenAI) {

FILE: ecosystem-tests/node-ts-cjs/tests/test-jsdom.ts
  function typeTests (line 19) | async function typeTests() {
  type Matchers (line 30) | interface Matchers<R> {
  method toBeSimilarTo (line 36) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-cjs/tests/test-node.ts
  function typeTests (line 18) | async function typeTests() {
  type Matchers (line 29) | interface Matchers<R> {
  method toBeSimilarTo (line 35) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-esm-auto/esnext-type-tests.ts
  function typeTests (line 3) | async function typeTests(client: OpenAI) {

FILE: ecosystem-tests/node-ts-esm-auto/tests/test.ts
  function typeTests (line 17) | async function typeTests() {
  type Matchers (line 28) | interface Matchers<R> {
  method toBeSimilarTo (line 34) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-esm-web/tests/test.ts
  function typeTests (line 14) | async function typeTests() {
  type Matchers (line 25) | interface Matchers<R> {
  method toBeSimilarTo (line 31) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-esm-web/types-test.ts
  function typeTests (line 3) | async function typeTests(client: OpenAI) {

FILE: ecosystem-tests/node-ts-esm/tests/test-esnext.ts
  function typeTests (line 7) | async function typeTests(client: OpenAI) {
  type Matchers (line 16) | interface Matchers<R> {
  method toBeSimilarTo (line 22) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts-esm/tests/test.ts
  function typeTests (line 16) | async function typeTests() {
  type Matchers (line 27) | interface Matchers<R> {
  method toBeSimilarTo (line 33) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/node-ts4.5-jest28/tests/test.ts
  function typeTests (line 17) | async function typeTests() {
  type Matchers (line 28) | interface Matchers<R> {
  method toBeSimilarTo (line 34) | toBeSimilarTo(received, comparedTo: string, expectedDistance: number) {

FILE: ecosystem-tests/proxy.ts
  function startProxy (line 4) | async function startProxy() {

FILE: ecosystem-tests/ts-browser-webpack/src/index.ts
  type TestCase (line 5) | type TestCase = {
  type TestResult (line 13) | type TestResult = { path: string[]; passed: boolean; error?: string };
  function runTests (line 15) | async function runTests() {
  function describe (line 50) | function describe(description: string, handler: () => void) {
  function it (line 59) | function it(description: string, run: () => any, timeout = 60000) {
  function expect (line 63) | function expect(received: any) {
  function typeTests (line 99) | async function typeTests() {

FILE: ecosystem-tests/ts-browser-webpack/src/test.ts
  function debugEvent (line 10) | function debugEvent(subj: string) {

FILE: ecosystem-tests/vercel-edge/src/pages/_app.tsx
  function App (line 3) | function App({ Component, pageProps }: AppProps) {

FILE: ecosystem-tests/vercel-edge/src/pages/_document.tsx
  function Document (line 3) | function Document() {

FILE: ecosystem-tests/vercel-edge/src/pages/ai-streaming.tsx
  function Chat (line 3) | function Chat() {

FILE: ecosystem-tests/vercel-edge/src/pages/api/edge-test.ts
  type Test (line 16) | type Test = { description: string; handler: () => Promise<void> };
  function it (line 19) | function it(description: string, handler: () => Promise<void>) {
  function expectEqual (line 22) | function expectEqual(a: any, b: any) {
  function expectSimilar (line 27) | function expectSimilar(received: string, expected: string, maxDistance: ...

FILE: ecosystem-tests/vercel-edge/src/pages/api/node-test.ts
  type Test (line 6) | type Test = { description: string; handler: () => Promise<void> };
  function it (line 9) | function it(description: string, handler: () => Promise<void>) {
  function expectEqual (line 12) | function expectEqual(a: any, b: any) {
  function expectSimilar (line 17) | function expectSimilar(received: string, expected: string, maxDistance: ...

FILE: ecosystem-tests/vercel-edge/src/pages/api/transcribe.ts
  function typeTests (line 18) | async function typeTests() {

FILE: ecosystem-tests/vercel-edge/src/pages/index.tsx
  function Home (line 3) | function Home() {

FILE: ecosystem-tests/vercel-edge/src/uploadWebApiTestCases.ts
  function uploadWebApiTestCases (line 10) | function uploadWebApiTestCases({

FILE: examples/assistant-stream-raw.ts
  function main (line 7) | async function main() {

FILE: examples/assistant-stream.ts
  function main (line 11) | async function main() {

FILE: examples/assistants.ts
  function main (line 11) | async function main() {

FILE: examples/audio.ts
  function main (line 12) | async function main() {
  function streamingDemoNode (line 18) | async function streamingDemoNode() {
  function blockingDemo (line 33) | async function blockingDemo() {
  function streamToFile (line 63) | async function streamToFile(stream: NodeJS.ReadableStream, path: fs.Path...

FILE: examples/azure/chat.ts
  function main (line 19) | async function main() {

FILE: examples/azure/realtime/websocket.ts
  function main (line 6) | async function main() {

FILE: examples/azure/realtime/ws.ts
  function main (line 6) | async function main() {

FILE: examples/chat-params-types.ts
  function main (line 9) | async function main() {
  function createCompletionParams (line 102) | async function createCompletionParams(

FILE: examples/demo.ts
  function main (line 8) | async function main() {

FILE: examples/errors.ts
  function main (line 8) | async function main() {

FILE: examples/fine-tuning.ts
  function main (line 17) | async function main() {

FILE: examples/function-call-diy.ts
  function callFunction (line 43) | async function callFunction(function_call: ChatCompletionMessage.Functio...
  function main (line 60) | async function main() {
  function list (line 130) | async function list(genre: string) {
  function search (line 134) | async function search(name: string) {
  function get (line 138) | async function get(id: string) {

FILE: examples/function-call-stream-raw.ts
  function callFunction (line 48) | async function callFunction(function_call: ChatCompletionMessage.Functio...
  function main (line 65) | async function main() {
  function messageReducer (line 122) | function messageReducer(previous: ChatCompletionMessage, item: ChatCompl...
  function lineRewriter (line 140) | function lineRewriter() {
  function list (line 173) | async function list(genre: string) {
  function search (line 177) | async function search(name: string) {
  function get (line 181) | async function get(id: string) {

FILE: examples/function-call-stream.ts
  function callFunction (line 48) | async function callFunction(function_call: ChatCompletionMessage.Functio...
  function main (line 65) | async function main() {
  function messageReducer (line 122) | function messageReducer(previous: ChatCompletionMessage, item: ChatCompl...
  function lineRewriter (line 140) | function lineRewriter() {
  function list (line 173) | async function list(genre: string) {
  function search (line 177) | async function search(name: string) {
  function get (line 181) | async function get(id: string) {

FILE: examples/function-call.ts
  function callFunction (line 43) | async function callFunction(function_call: ChatCompletionMessage.Functio...
  function main (line 60) | async function main() {
  function list (line 130) | async function list(genre: string) {
  function search (line 134) | async function search(name: string) {
  function get (line 138) | async function get(id: string) {

FILE: examples/logprobs.ts
  function main (line 8) | async function main() {

FILE: examples/parsing-run-tools.ts
  function main (line 30) | async function main() {

FILE: examples/parsing-stream.ts
  function main (line 15) | async function main() {

FILE: examples/parsing-tools-stream.ts
  function main (line 11) | async function main() {

FILE: examples/parsing-tools.ts
  function main (line 38) | async function main() {

FILE: examples/parsing.ts
  function main (line 15) | async function main() {

FILE: examples/raw-response.ts
  function main (line 8) | async function main() {

FILE: examples/realtime/websocket.ts
  function main (line 3) | async function main() {

FILE: examples/realtime/ws.ts
  function main (line 3) | async function main() {

FILE: examples/responses/stream.ts
  function main (line 7) | async function main() {

FILE: examples/responses/stream_background.ts
  function main (line 7) | async function main() {

FILE: examples/responses/streaming-tools.ts
  function main (line 36) | async function main() {

FILE: examples/responses/structured-outputs-tools.ts
  function main (line 36) | async function main() {

FILE: examples/responses/structured-outputs.ts
  function main (line 19) | async function main() {

FILE: examples/responses/websocket.ts
  type ToolName (line 14) | type ToolName = 'get_sku_inventory' | 'get_supplier_eta' | 'get_quality_...
  type ToolChoice (line 15) | type ToolChoice = NonNullable<ResponsesClientEvent['tool_choice']>;
  type DemoTurn (line 17) | type DemoTurn = {
  type SKUArguments (line 22) | type SKUArguments = {
  type SKUInventoryOutput (line 26) | type SKUInventoryOutput = {
  type SupplierShipment (line 35) | type SupplierShipment = {
  type SupplierETAOutput (line 42) | type SupplierETAOutput = {
  type QualityAlert (line 47) | type QualityAlert = {
  type QualityAlertsOutput (line 54) | type QualityAlertsOutput = {
  type ToolOutput (line 59) | type ToolOutput = SKUInventoryOutput | SupplierETAOutput | QualityAlerts...
  type FunctionCallRequest (line 61) | type FunctionCallRequest = {
  type RunResponseResult (line 67) | type RunResponseResult = {
  type RunTurnResult (line 73) | type RunTurnResult = {
  type CLIArgs (line 78) | type CLIArgs = {
  constant BETA_HEADER_VALUE (line 85) | const BETA_HEADER_VALUE = 'responses_websockets=2026-02-06';
  constant TOOLS (line 87) | const TOOLS: Array<FunctionTool> = [
  constant DEMO_TURNS (line 141) | const DEMO_TURNS: Array<DemoTurn> = [

FILE: examples/speech-to-text.ts
  function main (line 6) | async function main(): Promise<void> {

FILE: examples/stream-to-client-next.ts
  function handler (line 25) | async function handler(req: NextApiRequest, res: NextApiResponse) {

FILE: examples/stream.ts
  function main (line 7) | async function main() {

FILE: examples/text-to-speech.ts
  function main (line 13) | async function main(): Promise<void> {

FILE: examples/tool-call-helpers-zod.ts
  type ListParams (line 15) | type ListParams = z.infer<typeof ListParams>;
  function listBooks (line 16) | async function listBooks({ genre }: ListParams) {
  type SearchParams (line 23) | type SearchParams = z.infer<typeof SearchParams>;
  function searchBooks (line 24) | async function searchBooks({ name }: SearchParams) {
  type GetParams (line 31) | type GetParams = z.infer<typeof GetParams>;
  function getBook (line 32) | async function getBook({ id }: GetParams) {
  function main (line 36) | async function main() {

FILE: examples/tool-call-helpers.ts
  function main (line 65) | async function main() {
  function list (line 123) | async function list({ genre }: { genre: string }) {
  function search (line 127) | async function search({ name }: { name: string }) {
  function get (line 131) | async function get({ id }: { id: string }) {

FILE: examples/tool-calls-stream.ts
  constant CHUNK_DELAY_MS (line 31) | const CHUNK_DELAY_MS = 100;
  function callTool (line 79) | async function callTool(
  function main (line 98) | async function main() {
  function messageReducer (line 164) | function messageReducer(previous: ChatCompletionMessage, item: ChatCompl...
  function lineRewriter (line 206) | function lineRewriter() {
  function list (line 255) | async function list(genre: string) {
  function search (line 259) | async function search(name: string) {
  function get (line 263) | async function get(id: string) {

FILE: examples/types.ts
  function main (line 8) | async function main() {

FILE: examples/ui-generation.ts
  type UI (line 9) | interface UI {
  function main (line 33) | async function main() {

FILE: scripts/utils/convert-jsr-readme.cjs
  function traverse (line 8) | function traverse(node, visitor) {
  function replaceRanges (line 25) | function replaceRanges(code, replacer) {
  function replaceProcessEnv (line 56) | function replaceProcessEnv(content) {
  function replaceProcessStdout (line 61) | function replaceProcessStdout(content) {
  function replaceInstallationDirections (line 65) | function replaceInstallationDirections(content) {
  function replaceImports (line 73) | function replaceImports(code, config) {
  function processReadme (line 104) | function processReadme(config, file) {

FILE: scripts/utils/make-dist-package-json.cjs
  function processExportMap (line 3) | function processExportMap(m) {

FILE: scripts/utils/postprocess-files.cjs
  function postprocess (line 18) | async function postprocess() {

FILE: src/_vendor/partial-json-parser/parser.ts
  constant STR (line 1) | const STR = 0b000000001;
  constant NUM (line 2) | const NUM = 0b000000010;
  constant ARR (line 3) | const ARR = 0b000000100;
  constant OBJ (line 4) | const OBJ = 0b000001000;
  constant NULL (line 5) | const NULL = 0b000010000;
  constant BOOL (line 6) | const BOOL = 0b000100000;
  constant NAN (line 7) | const NAN = 0b001000000;
  constant INFINITY (line 8) | const INFINITY = 0b010000000;
  constant MINUS_INFINITY (line 9) | const MINUS_INFINITY = 0b100000000;
  constant INF (line 11) | const INF = INFINITY | MINUS_INFINITY;
  constant SPECIAL (line 12) | const SPECIAL = NULL | BOOL | INF | NAN;
  constant ATOM (line 13) | const ATOM = STR | NUM | SPECIAL;
  constant COLLECTION (line 14) | const COLLECTION = ARR | OBJ;
  constant ALL (line 15) | const ALL = ATOM | COLLECTION;
  class PartialJSON (line 35) | class PartialJSON extends Error {}
  class MalformedJSON (line 37) | class MalformedJSON extends Error {}
  function parseJSON (line 47) | function parseJSON(jsonString: string, allowPartial: number = Allow.ALL)...

FILE: src/_vendor/zod-to-json-schema/Options.ts
  type Targets (line 5) | type Targets = 'jsonSchema7' | 'jsonSchema2019-09' | 'openApi3';
  type DateStrategy (line 7) | type DateStrategy = 'format:date-time' | 'format:date' | 'string' | 'int...
  type Options (line 11) | type Options<Target extends Targets = 'jsonSchema7'> = {

FILE: src/_vendor/zod-to-json-schema/Refs.ts
  type Refs (line 6) | type Refs = {
  type Seen (line 18) | type Seen = {

FILE: src/_vendor/zod-to-json-schema/errorMessages.ts
  type ErrorMessages (line 4) | type ErrorMessages<T extends JsonSchema7TypeUnion, OmitProperties extend...
  function addErrorMessage (line 8) | function addErrorMessage<T extends { errorMessage?: ErrorMessages<any> }>(
  function setResponseValueAndErrors (line 23) | function setResponseValueAndErrors<

FILE: src/_vendor/zod-to-json-schema/parseDef.ts
  type JsonSchema7RefType (line 35) | type JsonSchema7RefType = { $ref: string };
  type JsonSchema7Meta (line 36) | type JsonSchema7Meta = {
  type JsonSchema7TypeUnion (line 43) | type JsonSchema7TypeUnion =
  type JsonSchema7Type (line 69) | type JsonSchema7Type = JsonSchema7TypeUnion & JsonSchema7Meta;
  function parseDef (line 71) | function parseDef(

FILE: src/_vendor/zod-to-json-schema/parsers/any.ts
  type JsonSchema7AnyType (line 1) | type JsonSchema7AnyType = {};
  function parseAnyDef (line 3) | function parseAnyDef(): JsonSchema7AnyType {

FILE: src/_vendor/zod-to-json-schema/parsers/array.ts
  type JsonSchema7ArrayType (line 6) | type JsonSchema7ArrayType = {
  function parseArrayDef (line 14) | function parseArrayDef(def: ZodArrayDef, refs: Refs) {

FILE: src/_vendor/zod-to-json-schema/parsers/bigint.ts
  type JsonSchema7BigintType (line 5) | type JsonSchema7BigintType = {
  function parseBigintDef (line 16) | function parseBigintDef(def: ZodBigIntDef, refs: Refs): JsonSchema7Bigin...

FILE: src/_vendor/zod-to-json-schema/parsers/boolean.ts
  type JsonSchema7BooleanType (line 1) | type JsonSchema7BooleanType = {
  function parseBooleanDef (line 5) | function parseBooleanDef(): JsonSchema7BooleanType {

FILE: src/_vendor/zod-to-json-schema/parsers/branded.ts
  function parseBrandedDef (line 5) | function parseBrandedDef(_def: ZodBrandedDef<any>, refs: Refs) {

FILE: src/_vendor/zod-to-json-schema/parsers/date.ts
  type JsonSchema7DateType (line 7) | type JsonSchema7DateType =
  function parseDateDef (line 19) | function parseDateDef(

FILE: src/_vendor/zod-to-json-schema/parsers/default.ts
  function parseDefaultDef (line 5) | function parseDefaultDef(_def: ZodDefaultDef, refs: Refs): JsonSchema7Ty...

FILE: src/_vendor/zod-to-json-schema/parsers/effects.ts
  function parseEffectsDef (line 5) | function parseEffectsDef(

FILE: src/_vendor/zod-to-json-schema/parsers/enum.ts
  type JsonSchema7EnumType (line 3) | type JsonSchema7EnumType = {
  function parseEnumDef (line 8) | function parseEnumDef(def: ZodEnumDef): JsonSchema7EnumType {

FILE: src/_vendor/zod-to-json-schema/parsers/intersection.ts
  type JsonSchema7AllOfType (line 6) | type JsonSchema7AllOfType = {
  function parseIntersectionDef (line 18) | function parseIntersectionDef(

FILE: src/_vendor/zod-to-json-schema/parsers/literal.ts
  type JsonSchema7LiteralType (line 4) | type JsonSchema7LiteralType =
  function parseLiteralDef (line 13) | function parseLiteralDef(def: ZodLiteralDef, refs: Refs): JsonSchema7Lit...

FILE: src/_vendor/zod-to-json-schema/parsers/map.ts
  type JsonSchema7MapType (line 6) | type JsonSchema7MapType = {
  function parseMapDef (line 17) | function parseMapDef(def: ZodMapDef, refs: Refs): JsonSchema7MapType | J...

FILE: src/_vendor/zod-to-json-schema/parsers/nativeEnum.ts
  type JsonSchema7NativeEnumType (line 3) | type JsonSchema7NativeEnumType = {
  function parseNativeEnumDef (line 8) | function parseNativeEnumDef(def: ZodNativeEnumDef): JsonSchema7NativeEnu...

FILE: src/_vendor/zod-to-json-schema/parsers/never.ts
  type JsonSchema7NeverType (line 1) | type JsonSchema7NeverType = {
  function parseNeverDef (line 5) | function parseNeverDef(): JsonSchema7NeverType {

FILE: src/_vendor/zod-to-json-schema/parsers/null.ts
  type JsonSchema7NullType (line 3) | type JsonSchema7NullType = {
  function parseNullDef (line 7) | function parseNullDef(refs: Refs): JsonSchema7NullType {

FILE: src/_vendor/zod-to-json-schema/parsers/nullable.ts
  type JsonSchema7NullableType (line 7) | type JsonSchema7NullableType =
  function parseNullableDef (line 15) | function parseNullableDef(def: ZodNullableDef, refs: Refs): JsonSchema7N...

FILE: src/_vendor/zod-to-json-schema/parsers/number.ts
  type JsonSchema7NumberType (line 5) | type JsonSchema7NumberType = {
  function parseNumberDef (line 15) | function parseNumberDef(def: ZodNumberDef, refs: Refs): JsonSchema7Numbe...

FILE: src/_vendor/zod-to-json-schema/parsers/object.ts
  function decideAdditionalProperties (line 5) | function decideAdditionalProperties(def: ZodObjectDef, refs: Refs) {
  type JsonSchema7ObjectType (line 23) | type JsonSchema7ObjectType = {
  function parseObjectDef (line 30) | function parseObjectDef(def: ZodObjectDef, refs: Refs) {

FILE: src/_vendor/zod-to-json-schema/parsers/promise.ts
  function parsePromiseDef (line 5) | function parsePromiseDef(def: ZodPromiseDef, refs: Refs): JsonSchema7Typ...

FILE: src/_vendor/zod-to-json-schema/parsers/record.ts
  type JsonSchema7RecordPropertyNamesType (line 8) | type JsonSchema7RecordPropertyNamesType =
  type JsonSchema7RecordType (line 12) | type JsonSchema7RecordType = {
  function parseRecordDef (line 18) | function parseRecordDef(

FILE: src/_vendor/zod-to-json-schema/parsers/set.ts
  type JsonSchema7SetType (line 6) | type JsonSchema7SetType = {
  function parseSetDef (line 15) | function parseSetDef(def: ZodSetDef, refs: Refs): JsonSchema7SetType {

FILE: src/_vendor/zod-to-json-schema/parsers/string.ts
  type JsonSchema7StringType (line 58) | type JsonSchema7StringType = {
  function parseStringDef (line 86) | function parseStringDef(def: ZodStringDef, refs: Refs): JsonSchema7Strin...

FILE: src/_vendor/zod-to-json-schema/parsers/tuple.ts
  type JsonSchema7TupleType (line 5) | type JsonSchema7TupleType = {
  function parseTupleDef (line 18) | function parseTupleDef(

FILE: src/_vendor/zod-to-json-schema/parsers/undefined.ts
  type JsonSchema7UndefinedType (line 1) | type JsonSchema7UndefinedType = {
  function parseUndefinedDef (line 5) | function parseUndefinedDef(): JsonSchema7UndefinedType {

FILE: src/_vendor/zod-to-json-schema/parsers/union.ts
  type ZodPrimitive (line 12) | type ZodPrimitive = keyof typeof primitiveMappings;
  type JsonSchema7Primitive (line 13) | type JsonSchema7Primitive = (typeof primitiveMappings)[keyof typeof prim...
  type JsonSchema7UnionType (line 15) | type JsonSchema7UnionType = JsonSchema7PrimitiveUnionType | JsonSchema7A...
  type JsonSchema7PrimitiveUnionType (line 17) | type JsonSchema7PrimitiveUnionType =
  type JsonSchema7AnyOfType (line 26) | type JsonSchema7AnyOfType = {
  function parseUnionDef (line 30) | function parseUnionDef(

FILE: src/_vendor/zod-to-json-schema/parsers/unknown.ts
  type JsonSchema7UnknownType (line 1) | type JsonSchema7UnknownType = {};
  function parseUnknownDef (line 3) | function parseUnknownDef(): JsonSchema7UnknownType {

FILE: src/_vendor/zod-to-json-schema/util.ts
  function isEmptyObj (line 7) | function isEmptyObj(obj: Object | null | undefined): boolean {

FILE: src/azure.ts
  type AzureClientOptions (line 10) | interface AzureClientOptions extends ClientOptions {
  class AzureOpenAI (line 40) | class AzureOpenAI extends OpenAI {
    method constructor (line 61) | constructor({
    method buildRequest (line 124) | override async buildRequest(
    method authHeaders (line 140) | protected override async authHeaders(opts: FinalRequestOptions): Promi...

FILE: src/beta/realtime/internal-base.ts
  class OpenAIRealtimeError (line 6) | class OpenAIRealtimeError extends OpenAIError {
    method constructor (line 17) | constructor(message: string, event: ErrorEvent | null) {
  type Simplify (line 25) | type Simplify<T> = { [KeyType in keyof T]: T[KeyType] } & {};
  type RealtimeEvents (line 27) | type RealtimeEvents = Simplify<
  method _onError (line 51) | protected _onError(event: ErrorEvent | null, message?: string | undefine...
  function isAzure (line 77) | function isAzure(client: Pick<OpenAI, 'apiKey' | 'baseURL'>): client is ...
  function buildRealtimeURL (line 81) | function buildRealtimeURL(client: Pick<OpenAI, 'apiKey' | 'baseURL'>, mo...

FILE: src/beta/realtime/websocket.ts
  type MessageEvent (line 7) | interface MessageEvent {
  type _WebSocket (line 11) | type _WebSocket =
  class OpenAIRealtimeWebSocket (line 21) | class OpenAIRealtimeWebSocket extends OpenAIRealtimeEmitter {
    method constructor (line 25) | constructor(
    method create (line 108) | static async create(
    method azure (line 115) | static async azure(
    method send (line 143) | send(event: RealtimeClientEvent) {
    method close (line 151) | close(props?: { code: number; reason: string }) {

FILE: src/beta/realtime/ws.ts
  class OpenAIRealtimeWS (line 6) | class OpenAIRealtimeWS extends OpenAIRealtimeEmitter {
    method constructor (line 10) | constructor(
    method create (line 67) | static async create(
    method azure (line 74) | static async azure(
    method send (line 99) | send(event: RealtimeClientEvent) {
    method close (line 107) | close(props?: { code: number; reason: string }) {

FILE: src/client.ts
  type ApiKeySetter (line 241) | type ApiKeySetter = () => Promise<string>;
  type ClientOptions (line 243) | interface ClientOptions {
  class OpenAI (line 349) | class OpenAI {
    method constructor (line 383) | constructor({
    method withOptions (line 438) | withOptions(options: Partial<ClientOptions>): this {
    method #baseURLOverridden (line 460) | #baseURLOverridden(): boolean {
    method defaultQuery (line 464) | protected defaultQuery(): Record<string, string | undefined> | undefin...
    method validateHeaders (line 468) | protected validateHeaders({ values, nulls }: NullableHeaders) {
    method authHeaders (line 472) | protected async authHeaders(opts: FinalRequestOptions): Promise<Nullab...
    method stringifyQuery (line 476) | protected stringifyQuery(query: object | Record<string, unknown>): str...
    method getUserAgent (line 480) | private getUserAgent(): string {
    method defaultIdempotencyKey (line 484) | protected defaultIdempotencyKey(): string {
    method makeStatusError (line 488) | protected makeStatusError(
    method _callApiKey (line 497) | async _callApiKey(): Promise<boolean> {
    method buildURL (line 522) | buildURL(
    method prepareOptions (line 549) | protected async prepareOptions(options: FinalRequestOptions): Promise<...
    method prepareRequest (line 559) | protected async prepareRequest(
    method get (line 564) | get<Rsp>(path: string, opts?: PromiseOrValue<RequestOptions>): APIProm...
    method post (line 568) | post<Rsp>(path: string, opts?: PromiseOrValue<RequestOptions>): APIPro...
    method patch (line 572) | patch<Rsp>(path: string, opts?: PromiseOrValue<RequestOptions>): APIPr...
    method put (line 576) | put<Rsp>(path: string, opts?: PromiseOrValue<RequestOptions>): APIProm...
    method delete (line 580) | delete<Rsp>(path: string, opts?: PromiseOrValue<RequestOptions>): APIP...
    method methodRequest (line 584) | private methodRequest<Rsp>(
    method request (line 596) | request<Rsp>(
    method makeRequest (line 603) | private async makeRequest(
    method getAPIList (line 764) | getAPIList<Item, PageClass extends Pagination.AbstractPage<Item> = Pag...
    method requestAPIList (line 777) | requestAPIList<
    method fetchWithTimeout (line 788) | async fetchWithTimeout(
    method shouldRetry (line 824) | private async shouldRetry(response: Response): Promise<boolean> {
    method retryRequest (line 847) | private async retryRequest(
    method calculateDefaultRetryTimeoutMillis (line 886) | private calculateDefaultRetryTimeoutMillis(retriesRemaining: number, m...
    method buildRequest (line 901) | async buildRequest(
    method buildHeaders (line 928) | private async buildHeaders({
    method _makeAbort (line 967) | private _makeAbort(controller: AbortController) {
    method buildBody (line 973) | private buildBody({ options: { body, headers: rawHeaders } }: { option...
  type RequestOptions (line 1116) | type RequestOptions = Opts.RequestOptions;
  type AllModels (line 1355) | type AllModels = API.AllModels;
  type ChatModel (line 1356) | type ChatModel = API.ChatModel;
  type ComparisonFilter (line 1357) | type ComparisonFilter = API.ComparisonFilter;
  type CompoundFilter (line 1358) | type CompoundFilter = API.CompoundFilter;
  type CustomToolInputFormat (line 1359) | type CustomToolInputFormat = API.CustomToolInputFormat;
  type ErrorObject (line 1360) | type ErrorObject = API.ErrorObject;
  type FunctionDefinition (line 1361) | type FunctionDefinition = API.FunctionDefinition;
  type FunctionParameters (line 1362) | type FunctionParameters = API.FunctionParameters;
  type Metadata (line 1363) | type Metadata = API.Metadata;
  type Reasoning (line 1364) | type Reasoning = API.Reasoning;
  type ReasoningEffort (line 1365) | type ReasoningEffort = API.ReasoningEffort;
  type ResponseFormatJSONObject (line 1366) | type ResponseFormatJSONObject = API.ResponseFormatJSONObject;
  type ResponseFormatJSONSchema (line 1367) | type ResponseFormatJSONSchema = API.ResponseFormatJSONSchema;
  type ResponseFormatText (line 1368) | type ResponseFormatText = API.ResponseFormatText;
  type ResponseFormatTextGrammar (line 1369) | type ResponseFormatTextGrammar = API.ResponseFormatTextGrammar;
  type ResponseFormatTextPython (line 1370) | type ResponseFormatTextPython = API.ResponseFormatTextPython;
  type ResponsesModel (line 1371) | type ResponsesModel = API.ResponsesModel;

FILE: src/core/EventEmitter.ts
  type EventListener (line 1) | type EventListener<Events, EventType extends keyof Events> = Events[Even...
  type EventListeners (line 3) | type EventListeners<Events, EventType extends keyof Events> = Array<{
  type EventParameters (line 8) | type EventParameters<Events, EventType extends keyof Events> = {
  class EventEmitter (line 12) | class EventEmitter<EventTypes extends Record<string, (...args: any) => a...
    method on (line 24) | on<Event extends keyof EventTypes>(event: Event, listener: EventListen...
    method off (line 38) | off<Event extends keyof EventTypes>(event: Event, listener: EventListe...
    method once (line 51) | once<Event extends keyof EventTypes>(event: Event, listener: EventList...
    method emitted (line 69) | emitted<Event extends keyof EventTypes>(
    method _emit (line 82) | protected _emit<Event extends keyof EventTypes>(
    method _hasListener (line 94) | protected _hasListener(event: keyof EventTypes): boolean {

FILE: src/core/api-promise.ts
  class APIPromise (line 17) | class APIPromise<T> extends Promise<WithRequestID<T>> {
    method constructor (line 21) | constructor(
    method _thenUnwrap (line 38) | _thenUnwrap<U>(transform: (data: T, props: APIResponseProps) => U): AP...
    method asResponse (line 55) | asResponse(): Promise<Response> {
    method withResponse (line 71) | async withResponse(): Promise<{ data: T; response: Response; request_i...
    method parse (line 76) | private parse(): Promise<WithRequestID<T>> {
    method then (line 85) | override then<TResult1 = WithRequestID<T>, TResult2 = never>(
    method catch (line 92) | override catch<TResult = never>(
    method finally (line 98) | override finally(onfinally?: (() => void) | undefined | null): Promise...

FILE: src/core/error.ts
  class OpenAIError (line 5) | class OpenAIError extends Error {}
  class APIError (line 7) | class APIError<
    method constructor (line 25) | constructor(status: TStatus, error: TError, message: string | undefine...
    method makeMessage (line 38) | private static makeMessage(status: number | undefined, error: any, mes...
    method generate (line 59) | static generate(
  class APIUserAbortError (line 107) | class APIUserAbortError extends APIError<undefined, undefined, undefined> {
    method constructor (line 108) | constructor({ message }: { message?: string } = {}) {
  class APIConnectionError (line 113) | class APIConnectionError extends APIError<undefined, undefined, undefine...
    method constructor (line 114) | constructor({ message, cause }: { message?: string | undefined; cause?...
  class APIConnectionTimeoutError (line 122) | class APIConnectionTimeoutError extends APIConnectionError {
    method constructor (line 123) | constructor({ message }: { message?: string } = {}) {
  class BadRequestError (line 128) | class BadRequestError extends APIError<400, Headers> {}
  class AuthenticationError (line 130) | class AuthenticationError extends APIError<401, Headers> {}
  class PermissionDeniedError (line 132) | class PermissionDeniedError extends APIError<403, Headers> {}
  class NotFoundError (line 134) | class NotFoundError extends APIError<404, Headers> {}
  class ConflictError (line 136) | class ConflictError extends APIError<409, Headers> {}
  class UnprocessableEntityError (line 138) | class UnprocessableEntityError extends APIError<422, Headers> {}
  class RateLimitError (line 140) | class RateLimitError extends APIError<429, Headers> {}
  class InternalServerError (line 142) | class InternalServerError extends APIError<number, Headers> {}
  class LengthFinishReasonError (line 144) | class LengthFinishReasonError extends OpenAIError {
    method constructor (line 145) | constructor() {
  class ContentFilterFinishReasonError (line 150) | class ContentFilterFinishReasonError extends OpenAIError {
    method constructor (line 151) | constructor() {
  class InvalidWebhookSignatureError (line 156) | class InvalidWebhookSignatureError extends Error {
    method constructor (line 157) | constructor(message: string) {

FILE: src/core/pagination.ts
  type PageRequestOptions (line 11) | type PageRequestOptions = Pick<FinalRequestOptions, 'query' | 'headers' ...
  method constructor (line 20) | constructor(client: OpenAI, response: Response, body: unknown, options: ...
  method hasNextPage (line 31) | hasNextPage(): boolean {
  method getNextPage (line 37) | async getNextPage(): Promise<this> {
  method iterPages (line 48) | async *iterPages(): AsyncGenerator<this> {
  method [Symbol.asyncIterator] (line 57) | async *[Symbol.asyncIterator](): AsyncGenerator<Item> {
  class PagePromise (line 75) | class PagePromise<
    method constructor (line 82) | constructor(
  method [Symbol.asyncIterator] (line 107) | async *[Symbol.asyncIterator](): AsyncGenerator<Item> {
  type PageResponse (line 115) | interface PageResponse<Item> {
  class Page (line 124) | class Page<Item> extends AbstractPage<Item> implements PageResponse<Item> {
    method constructor (line 129) | constructor(client: OpenAI, response: Response, body: PageResponse<Ite...
    method getPaginatedItems (line 136) | getPaginatedItems(): Item[] {
    method nextPageRequestOptions (line 140) | nextPageRequestOptions(): PageRequestOptions | null {
  type CursorPageResponse (line 145) | interface CursorPageResponse<Item> {
  type CursorPageParams (line 151) | interface CursorPageParams {
  class CursorPage (line 157) | class CursorPage<Item extends { id: string }>
    method constructor (line 165) | constructor(
    method getPaginatedItems (line 177) | getPaginatedItems(): Item[] {
    method hasNextPage (line 181) | override hasNextPage(): boolean {
    method nextPageRequestOptions (line 189) | nextPageRequestOptions(): PageRequestOptions | null {
  type ConversationCursorPageResponse (line 206) | interface ConversationCursorPageResponse<Item> {
  type ConversationCursorPageParams (line 214) | interface ConversationCursorPageParams {
  class ConversationCursorPage (line 220) | class ConversationCursorPage<Item>
    method constructor (line 230) | constructor(
    method getPaginatedItems (line 243) | getPaginatedItems(): Item[] {
    method hasNextPage (line 247) | override hasNextPage(): boolean {
    method nextPageRequestOptions (line 255) | nextPageRequestOptions(): PageRequestOptions | null {

FILE: src/core/resource.ts
  method constructor (line 8) | constructor(client: OpenAI) {

FILE: src/core/streaming.ts
  type Bytes (line 13) | type Bytes = string | ArrayBuffer | Uint8Array | null | undefined;
  type ServerSentEvent (line 15) | type ServerSentEvent = {
  class Stream (line 21) | class Stream<Item> implements AsyncIterable<Item> {
    method constructor (line 25) | constructor(
    method fromSSEResponse (line 34) | static fromSSEResponse<Item>(
    method fromReadableStream (line 108) | static fromReadableStream<Item>(
    method tee (line 163) | tee(): [Stream<Item>, Stream<Item>] {
    method toReadableStream (line 192) | toReadableStream(): ReadableStream {
  method [Symbol.asyncIterator] (line 155) | [Symbol.asyncIterator](): AsyncIterator<Item> {
  class SSEDecoder (line 287) | class SSEDecoder {
    method constructor (line 292) | constructor() {
    method decode (line 298) | decode(line: string) {
  function partition (line 342) | function partition(str: string, delimiter: string): [string, string, str...

FILE: src/helpers/audio.ts
  constant DEFAULT_SAMPLE_RATE (line 6) | const DEFAULT_SAMPLE_RATE = 24000;
  constant DEFAULT_CHANNELS (line 7) | const DEFAULT_CHANNELS = 1;
  function isResponse (line 25) | function isResponse(stream: NodeJS.ReadableStream | Response | File): st...
  function isFile (line 29) | function isFile(stream: NodeJS.ReadableStream | Response | File): stream...
  function nodejsPlayAudio (line 34) | async function nodejsPlayAudio(stream: NodeJS.ReadableStream | Response ...
  function playAudio (line 59) | async function playAudio(input: NodeJS.ReadableStream | Response | File)...
  type RecordAudioOptions (line 69) | type RecordAudioOptions = {
  function nodejsRecordAudio (line 75) | function nodejsRecordAudio({ signal, device, timeout }: RecordAudioOptio...
  function recordAudio (line 138) | async function recordAudio(options: RecordAudioOptions = {}) {

FILE: src/helpers/zod.ts
  type InferZodType (line 18) | type InferZodType<T> =
  function zodV3ToJsonSchema (line 23) | function zodV3ToJsonSchema(schema: z3.ZodType, options: { name: string }...
  function zodV4ToJsonSchema (line 33) | function zodV4ToJsonSchema(schema: z4.ZodType): Record<string, unknown> {
  function isZodV4 (line 41) | function isZodV4(zodObject: z3.ZodType | z4.ZodType): zodObject is z4.Zo...
  function zodResponseFormat (line 82) | function zodResponseFormat<ZodInput extends z3.ZodType | z4.ZodType>(
  function zodTextFormat (line 101) | function zodTextFormat<ZodInput extends z3.ZodType | z4.ZodType>(
  function zodFunction (line 123) | function zodFunction<Parameters extends z3.ZodType | z4.ZodType>(options: {
  function zodResponsesFunction (line 154) | function zodResponsesFunction<Parameters extends z3.ZodType | z4.ZodType...

FILE: src/internal/builtin-types.ts
  type Fetch (line 3) | type Fetch = (input: string | URL | Request, init?: RequestInit) => Prom...
  type _RequestInit (line 11) | type _RequestInit = RequestInit;
  type _Response (line 19) | type _Response = Response;
  type _RequestInfo (line 26) | type _RequestInfo = Request | URL | string;
  type _HeadersInit (line 33) | type _HeadersInit = RequestInit['headers'];
  type _BodyInit (line 40) | type _BodyInit = RequestInit['body'];
  type _Array (line 46) | type _Array<T> = Array<T>;
  type _Record (line 52) | type _Record<K extends keyof any, T> = Record<K, T>;
  type EndingType (line 70) | type EndingType = 'native' | 'transparent';
  type BlobPropertyBag (line 79) | interface BlobPropertyBag {
  type FilePropertyBag (line 91) | interface FilePropertyBag extends BlobPropertyBag {

FILE: src/internal/decoders/line.ts
  type Bytes (line 3) | type Bytes = string | ArrayBuffer | Uint8Array | null | undefined;
  class LineDecoder (line 11) | class LineDecoder {
    method constructor (line 19) | constructor() {
    method decode (line 24) | decode(chunk: Bytes): string[] {
    method flush (line 69) | flush(): string[] {
  function findNewlineIndex (line 86) | function findNewlineIndex(
  function findDoubleNewlineIndex (line 106) | function findDoubleNewlineIndex(buffer: Uint8Array): number {

FILE: src/internal/detect-platform.ts
  type DetectedPlatform (line 16) | type DetectedPlatform = 'deno' | 'node' | 'edge' | 'unknown';
  function getDetectedPlatform (line 21) | function getDetectedPlatform(): DetectedPlatform {
  type Arch (line 40) | type Arch = 'x32' | 'x64' | 'arm' | 'arm64' | `other:${string}` | 'unkno...
  type PlatformName (line 41) | type PlatformName =
  type Browser (line 51) | type Browser = 'ie' | 'edge' | 'chrome' | 'firefox' | 'safari';
  type PlatformProperties (line 52) | type PlatformProperties = {
  type BrowserInfo (line 118) | type BrowserInfo = {
  function getBrowserInfo (line 126) | function getBrowserInfo(): BrowserInfo | null {

FILE: src/internal/errors.ts
  function isAbortError (line 3) | function isAbortError(err: unknown) {

FILE: src/internal/headers.ts
  type HeaderValue (line 5) | type HeaderValue = string | undefined | null;
  type HeadersLike (line 6) | type HeadersLike =
  type NullableHeaders (line 21) | type NullableHeaders = {

FILE: src/internal/parse.ts
  type APIResponseProps (line 9) | type APIResponseProps = {
  function defaultParseResponse (line 18) | async function defaultParseResponse<T>(
  type WithRequestID (line 86) | type WithRequestID<T> =
  function addRequestID (line 91) | function addRequestID<T>(value: T, response: Response): WithRequestID<T> {

FILE: src/internal/qs/formats.ts
  constant RFC1738 (line 9) | const RFC1738 = 'RFC1738';
  constant RFC3986 (line 10) | const RFC3986 = 'RFC3986';

FILE: src/internal/qs/stringify.ts
  method brackets (line 7) | brackets(prefix: PropertyKey) {
  method indices (line 11) | indices(prefix: PropertyKey, key: string) {
  method repeat (line 14) | repeat(prefix: PropertyKey) {
  method serializeDate (line 41) | serializeDate(date) {
  function is_non_nullish_primitive (line 48) | function is_non_nullish_primitive(v: unknown): v is string | number | bo...
  function inner_stringify (line 60) | function inner_stringify(
  function normalize_stringify_options (line 222) | function normalize_stringify_options(
  function stringify (line 306) | function stringify(object: any, opts: StringifyOptions = {}) {

FILE: src/internal/qs/types.ts
  type Format (line 1) | type Format = 'RFC1738' | 'RFC3986';
  type DefaultEncoder (line 3) | type DefaultEncoder = (str: any, defaultEncoder?: any, charset?: string)...
  type DefaultDecoder (line 4) | type DefaultDecoder = (str: string, decoder?: any, charset?: string) => ...
  type BooleanOptional (line 6) | type BooleanOptional = boolean | undefined;
  type StringifyBaseOptions (line 8) | type StringifyBaseOptions = {
  type StringifyOptions (line 37) | type StringifyOptions = StringifyBaseOptions;
  type ParseBaseOptions (line 39) | type ParseBaseOptions = {
  type ParseOptions (line 62) | type ParseOptions = ParseBaseOptions;
  type ParsedQs (line 64) | type ParsedQs = {
  type NonNullableProperties (line 69) | type NonNullableProperties<T> = {

FILE: src/internal/qs/utils.ts
  function compact_queue (line 19) | function compact_queue<T extends Record<string, any>>(queue: Array<{ obj...
  function array_to_object (line 41) | function array_to_object(source: any[], options: { plainObjects: boolean...
  function merge (line 52) | function merge(
  function assign_single_source (line 113) | function assign_single_source(target: any, source: any) {
  function decode (line 120) | function decode(str: string, _: any, charset: string) {
  function compact (line 215) | function compact(value: any) {
  function is_regexp (line 240) | function is_regexp(obj: any) {
  function is_buffer (line 244) | function is_buffer(obj: any) {
  function combine (line 252) | function combine(a: any, b: any) {
  function maybe_map (line 256) | function maybe_map<T>(val: T[], fn: (v: T) => T) {

FILE: src/internal/request-options.ts
  type FinalRequestOptions (line 10) | type FinalRequestOptions = RequestOptions & { method: HTTPMethod; path: ...
  type RequestOptions (line 12) | type RequestOptions = {
  type EncodedContent (line 85) | type EncodedContent = { bodyHeaders: HeadersLike; body: BodyInit };
  type RequestEncoder (line 86) | type RequestEncoder = (request: { headers: NullableHeaders; body: unknow...

FILE: src/internal/shim-types.ts
  type NeverToAny (line 10) | type NeverToAny<T> = T extends never ? any : T;
  type _DOMReadableStream (line 13) | type _DOMReadableStream<R = any> = globalThis.ReadableStream<R>;
  type _NodeReadableStream (line 16) | type _NodeReadableStream<R = any> = import('stream/web').ReadableStream
  type _ConditionalNodeReadableStream (line 18) | type _ConditionalNodeReadableStream<R = any> =
  type _ReadableStream (line 21) | type _ReadableStream<R = any> = NeverToAny<

FILE: src/internal/shims.ts
  function getDefaultFetch (line 13) | function getDefaultFetch(): Fetch {
  type ReadableStreamArgs (line 23) | type ReadableStreamArgs = ConstructorParameters<typeof ReadableStream>;
  function makeReadableStream (line 25) | function makeReadableStream(...args: ReadableStreamArgs): ReadableStream {
  function ReadableStreamFrom (line 38) | function ReadableStreamFrom<T>(iterable: Iterable<T> | AsyncIterable<T>)...
  function ReadableStreamToAsyncIterable (line 64) | function ReadableStreamToAsyncIterable<T>(stream: any): AsyncIterableIte...
  function CancelReadableStream (line 95) | async function CancelReadableStream(stream: any): Promise<void> {

FILE: src/internal/stream-utils.ts
  function ReadableStreamToAsyncIterable (line 7) | function ReadableStreamToAsyncIterable<T>(stream: any): AsyncIterableIte...

FILE: src/internal/to-file.ts
  type BlobLikePart (line 5) | type BlobLikePart = string | ArrayBuffer | ArrayBufferView | BlobLike | ...
  type BlobLike (line 11) | interface BlobLike {
  type FileLike (line 37) | interface FileLike extends BlobLike {
  type ResponseLike (line 57) | interface ResponseLike {
  type ToFileInput (line 68) | type ToFileInput =
  function toFile (line 83) | async function toFile(
  function getBytes (line 122) | async function getBytes(value: BlobLikePart | AsyncIterable<BlobLikePart...
  function propsForError (line 150) | function propsForError(value: unknown): string {

FILE: src/internal/types.ts
  type PromiseOrValue (line 3) | type PromiseOrValue<T> = T | Promise<T>;
  type HTTPMethod (line 4) | type HTTPMethod = 'get' | 'post' | 'put' | 'patch' | 'delete';
  type KeysEnum (line 6) | type KeysEnum<T> = { [P in keyof Required<T>]: true };
  type FinalizedRequestInit (line 8) | type FinalizedRequestInit = RequestInit & { headers: Headers };
  type NotAny (line 10) | type NotAny<T> = [0] extends [1 & T] ? never : T;
  type OverloadedParameters (line 15) | type OverloadedParameters<T> =
  type UndiciTypesRequestInit (line 67) | type UndiciTypesRequestInit = NotAny<import('../node_modules/undici-type...
  type UndiciRequestInit (line 69) | type UndiciRequestInit = NotAny<import('../node_modules/undici/index.d.t...
  type BunRequestInit (line 71) | type BunRequestInit = globalThis.FetchRequestInit;
  type NodeFetch2RequestInit (line 73) | type NodeFetch2RequestInit = NotAny<import('../node_modules/@types/node-...
  type NodeFetch3RequestInit (line 75) | type NodeFetch3RequestInit =  NotAny<import('../node_modules/node-fetch'...
  type FetchRequestInit (line 77) | type FetchRequestInit = NonNullable<OverloadedParameters<typeof fetch>[1]>;
  type RequestInits (line 80) | type RequestInits =
  type MergedRequestInit (line 93) | type MergedRequestInit = RequestInits &

FILE: src/internal/uploads.ts
  type BlobPart (line 6) | type BlobPart = string | ArrayBuffer | ArrayBufferView | Blob | DataView;
  type FsReadStream (line 7) | type FsReadStream = AsyncIterable<Uint8Array> & { path: string | { toStr...
  type BunFile (line 10) | interface BunFile extends Blob {
  type Uploadable (line 37) | type Uploadable = File | Response | FsReadStream | BunFile;
  function makeFile (line 43) | function makeFile(
  function getName (line 52) | function getName(value: any): string | undefined {
  type MultipartFormRequestOptions (line 84) | type MultipartFormRequestOptions = Omit<RequestOptions, 'body'> & { body...
  function supportsFormData (line 101) | function supportsFormData(fetchObject: OpenAI | Fetch): Promise<boolean> {

FILE: src/internal/utils/bytes.ts
  function concatBytes (line 1) | function concatBytes(buffers: Uint8Array[]): Uint8Array {
  function encodeUTF8 (line 17) | function encodeUTF8(str: string) {
  function decodeUTF8 (line 26) | function decodeUTF8(bytes: Uint8Array) {

FILE: src/internal/utils/log.ts
  type LogFn (line 7) | type LogFn = (message: string, ...rest: unknown[]) => void;
  type Logger (line 8) | type Logger = {
  type LogLevel (line 14) | type LogLevel = 'off' | 'error' | 'warn' | 'info' | 'debug';
  function noop (line 43) | function noop() {}
  function makeLogFn (line 45) | function makeLogFn(fnLevel: keyof Logger, logger: Logger | undefined, lo...
  function loggerFor (line 63) | function loggerFor(client: OpenAI): Logger {

FILE: src/internal/utils/path.ts
  function encodeURIPath (line 11) | function encodeURIPath(str: string) {
  constant EMPTY (line 15) | const EMPTY = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.creat...

FILE: src/internal/utils/query.ts
  function stringifyQuery (line 5) | function stringifyQuery(query: object | Record<string, unknown>) {

FILE: src/internal/utils/values.ts
  function maybeObj (line 16) | function maybeObj(x: unknown): object {
  function isEmptyObj (line 25) | function isEmptyObj(obj: Object | null | undefined): boolean {
  function hasOwn (line 32) | function hasOwn<T extends object = object>(obj: T, key: PropertyKey): ke...
  function isObj (line 36) | function isObj(obj: unknown): obj is Record<string, unknown> {

FILE: src/lib/AbstractChatCompletionRunner.ts
  constant DEFAULT_MAX_CHAT_COMPLETIONS (line 26) | const DEFAULT_MAX_CHAT_COMPLETIONS = 10;
  type RunnerOptions (line 27) | interface RunnerOptions extends RequestOptions {
  class AbstractChatCompletionRunner (line 32) | class AbstractChatCompletionRunner<
    method _addChatCompletion (line 39) | protected _addChatCompletion(
    method _addMessage (line 50) | protected _addMessage(
    method finalChatCompletion (line 78) | async finalChatCompletion(): Promise<ParsedChatCompletion<ParsedT>> {
    method #getFinalContent (line 85) | #getFinalContent(): string | null {
    method finalContent (line 93) | async finalContent(): Promise<string | null> {
    method #getFinalMessage (line 98) | #getFinalMessage(): ChatCompletionMessage {
    method finalMessage (line 119) | async finalMessage(): Promise<ChatCompletionMessage> {
    method #getFinalFunctionToolCall (line 124) | #getFinalFunctionToolCall(): ChatCompletionMessageFunctionToolCall.Fun...
    method finalFunctionToolCall (line 139) | async finalFunctionToolCall(): Promise<ChatCompletionMessageFunctionTo...
    method #getFinalFunctionToolCallResult (line 144) | #getFinalFunctionToolCallResult(): string | undefined {
    method finalFunctionToolCallResult (line 164) | async finalFunctionToolCallResult(): Promise<string | undefined> {
    method #calculateTotalUsage (line 169) | #calculateTotalUsage(): CompletionUsage {
    method totalUsage (line 185) | async totalUsage(): Promise<CompletionUsage> {
    method allChatCompletions (line 190) | allChatCompletions(): ChatCompletion[] {
    method _emitFinal (line 194) | protected override _emitFinal(
    method #validateParams (line 215) | #validateParams(params: ChatCompletionCreateParams): void {
    method _createChatCompletion (line 223) | protected async _createChatCompletion(
    method _runChatCompletion (line 243) | protected async _runChatCompletion(
    method _runTools (line 254) | protected async _runTools<FunctionsArgs extends BaseFunctionsArgs>(
    method #stringifyFunctionCallResult (line 384) | #stringifyFunctionCallResult(rawContent: unknown): string {
  type AbstractChatCompletionRunnerEvents (line 393) | interface AbstractChatCompletionRunnerEvents extends BaseEvents {

FILE: src/lib/AssistantStream.ts
  type AssistantStreamEvents (line 35) | interface AssistantStreamEvents extends BaseEvents {
  type ThreadCreateAndRunParamsBaseStream (line 61) | type ThreadCreateAndRunParamsBaseStream = Omit<ThreadCreateAndRunParamsB...
  type RunCreateParamsBaseStream (line 65) | type RunCreateParamsBaseStream = Omit<RunCreateParamsBase, 'stream'> & {
  type RunSubmitToolOutputsParamsStream (line 69) | type RunSubmitToolOutputsParamsStream = Omit<RunSubmitToolOutputsParamsB...
  class AssistantStream (line 73) | class AssistantStream
    method fromReadableStream (line 158) | static fromReadableStream(stream: ReadableStream): AssistantStream {
    method _fromReadableStream (line 164) | protected async _fromReadableStream(
    method toReadableStream (line 184) | toReadableStream(): ReadableStream {
    method createToolAssistantStream (line 189) | static createToolAssistantStream(
    method _createToolAssistantStream (line 205) | protected async _createToolAssistantStream(
    method createThreadAssistantStream (line 235) | static createThreadAssistantStream(
    method createAssistantStream (line 250) | static createAssistantStream(
    method currentEvent (line 266) | currentEvent(): AssistantStreamEvent | undefined {
    method currentRun (line 270) | currentRun(): Run | undefined {
    method currentMessageSnapshot (line 274) | currentMessageSnapshot(): Message | undefined {
    method currentRunStepSnapshot (line 278) | currentRunStepSnapshot(): Runs.RunStep | undefined {
    method finalRunSteps (line 282) | async finalRunSteps(): Promise<Runs.RunStep[]> {
    method finalMessages (line 288) | async finalMessages(): Promise<Message[]> {
    method finalRun (line 294) | async finalRun(): Promise<Run> {
    method _createThreadAssistantStream (line 301) | protected async _createThreadAssistantStream(
    method _createAssistantStream (line 327) | protected async _createAssistantStream(
    method #addEvent (line 354) | #addEvent(event: AssistantStreamEvent) {
    method #endRequest (line 407) | #endRequest(): Run {
    method #handleMessage (line 417) | #handleMessage(this: AssistantStream, event: MessageStreamEvent) {
    method #handleRunStep (line 500) | #handleRunStep(this: AssistantStream, event: RunStepStreamEvent) {
    method #handleEvent (line 556) | #handleEvent(this: AssistantStream, event: AssistantStreamEvent) {
    method #accumulateRunStep (line 561) | #accumulateRunStep(event: RunStepStreamEvent): Runs.RunStep {
    method #accumulateMessage (line 595) | #accumulateMessage(
    method #accumulateContent (line 647) | #accumulateContent(
    method accumulateDelta (line 656) | static accumulateDelta(acc: Record<string, any>, delta: Record<string,...
    method #handleRun (line 720) | #handleRun(this: AssistantStream, event: RunStreamEvent) {
    method _addRun (line 747) | protected _addRun(run: Run): Run {
    method _threadAssistantStream (line 751) | protected async _threadAssistantStream(
    method _runAssistantStream (line 759) | protected async _runAssistantStream(
    method _runToolAssistantStream (line 768) | protected async _runToolAssistantStream(
  method [Symbol.asyncIterator] (line 96) | [Symbol.asyncIterator](): AsyncIterator<AssistantStreamEvent> {
  function assertNever (line 778) | function assertNever(_x: never) {}

FILE: src/lib/ChatCompletionRunner.ts
  type ChatCompletionRunnerEvents (line 15) | interface ChatCompletionRunnerEvents extends AbstractChatCompletionRunne...
  type ChatCompletionToolRunnerParams (line 19) | type ChatCompletionToolRunnerParams<FunctionsArgs extends BaseFunctionsA...
  class ChatCompletionRunner (line 26) | class ChatCompletionRunner<ParsedT = null> extends AbstractChatCompletio...
    method runTools (line 30) | static runTools<ParsedT>(
    method _addMessage (line 44) | override _addMessage(

FILE: src/lib/ChatCompletionStream.ts
  type ContentDeltaEvent (line 36) | interface ContentDeltaEvent {
  type ContentDoneEvent (line 42) | interface ContentDoneEvent<ParsedT = null> {
  type RefusalDeltaEvent (line 47) | interface RefusalDeltaEvent {
  type RefusalDoneEvent (line 52) | interface RefusalDoneEvent {
  type FunctionToolCallArgumentsDeltaEvent (line 56) | interface FunctionToolCallArgumentsDeltaEvent {
  type FunctionToolCallArgumentsDoneEvent (line 68) | interface FunctionToolCallArgumentsDoneEvent {
  type LogProbsContentDeltaEvent (line 78) | interface LogProbsContentDeltaEvent {
  type LogProbsContentDoneEvent (line 83) | interface LogProbsContentDoneEvent {
  type LogProbsRefusalDeltaEvent (line 87) | interface LogProbsRefusalDeltaEvent {
  type LogProbsRefusalDoneEvent (line 92) | interface LogProbsRefusalDoneEvent {
  type ChatCompletionStreamEvents (line 96) | interface ChatCompletionStreamEvents<ParsedT = null> extends AbstractCha...
  type ChatCompletionStreamParams (line 116) | type ChatCompletionStreamParams = Omit<ChatCompletionCreateParamsBase, '...
  type ChoiceEventState (line 120) | interface ChoiceEventState {
  class ChatCompletionStream (line 129) | class ChatCompletionStream<ParsedT = null>
    method constructor (line 137) | constructor(params: ChatCompletionCreateParams | null) {
    method currentChatCompletionSnapshot (line 143) | get currentChatCompletionSnapshot(): ChatCompletionSnapshot | undefined {
    method fromReadableStream (line 154) | static fromReadableStream(stream: ReadableStream): ChatCompletionStrea...
    method createChatCompletion (line 160) | static createChatCompletion<ParsedT>(
    method #beginRequest (line 176) | #beginRequest() {
    method #getChoiceEventState (line 181) | #getChoiceEventState(choice: ChatCompletionSnapshot.Choice): ChoiceEve...
    method #addChunk (line 199) | #addChunk(this: ChatCompletionStream<ParsedT>, chunk: ChatCompletionCh...
    method #emitToolCallDoneEvent (line 290) | #emitToolCallDoneEvent(choiceSnapshot: ChatCompletionSnapshot.Choice, ...
    method #emitContentDoneEvents (line 324) | #emitContentDoneEvents(choiceSnapshot: ChatCompletionSnapshot.Choice) {
    method #endRequest (line 357) | #endRequest(): ParsedChatCompletion<ParsedT> {
    method _createChatCompletion (line 370) | protected override async _createChatCompletion(
    method _fromReadableStream (line 397) | protected async _fromReadableStream(
    method #getAutoParseableResponseFormat (line 425) | #getAutoParseableResponseFormat(): AutoParseableResponseFormat<ParsedT...
    method #accumulateChatCompletion (line 434) | #accumulateChatCompletion(chunk: ChatCompletionChunk): ChatCompletionS...
    method toReadableStream (line 603) | toReadableStream(): ReadableStream {
  method [Symbol.asyncIterator] (line 542) | [Symbol.asyncIterator](this: ChatCompletionStream<ParsedT>): AsyncIterat...
  function finalizeChatCompletion (line 609) | function finalizeChatCompletion<ParsedT>(
  function str (line 707) | function str(x: unknown) {
  type ChatCompletionSnapshot (line 715) | interface ChatCompletionSnapshot {
  type Choice (line 751) | interface Choice {
  type Message (line 781) | interface Message {
  type ToolCall (line 806) | interface ToolCall {
  type Function (line 821) | interface Function {
  type FunctionCall (line 843) | interface FunctionCall {
  type AssertIsEmpty (line 861) | type AssertIsEmpty<T extends {}> = keyof T extends never ? T : never;
  function assertIsEmpty (line 868) | function assertIsEmpty<T extends {}>(obj: AssertIsEmpty<T>): asserts obj...
  function assertNever (line 872) | function assertNever(_x: never) {}

FILE: src/lib/ChatCompletionStreamingRunner.ts
  type ChatCompletionStreamEvents (line 12) | interface ChatCompletionStreamEvents extends AbstractChatCompletionRunne...
  type ChatCompletionStreamingToolRunnerParams (line 17) | type ChatCompletionStreamingToolRunnerParams<FunctionsArgs extends BaseF...
  class ChatCompletionStreamingRunner (line 24) | class ChatCompletionStreamingRunner<ParsedT = null>
    method fromReadableStream (line 28) | static override fromReadableStream(stream: ReadableStream): ChatComple...
    method runTools (line 34) | static runTools<T extends (string | object)[], ParsedT = null>(

FILE: src/lib/EventEmitter.ts
  type EventListener (line 1) | type EventListener<Events, EventType extends keyof Events> = Events[Even...
  type EventListeners (line 3) | type EventListeners<Events, EventType extends keyof Events> = Array<{
  type EventParameters (line 8) | type EventParameters<Events, EventType extends keyof Events> = {
  class EventEmitter (line 12) | class EventEmitter<EventTypes extends Record<string, (...args: any) => a...
    method on (line 24) | on<Event extends keyof EventTypes>(event: Event, listener: EventListen...
    method off (line 38) | off<Event extends keyof EventTypes>(event: Event, listener: EventListe...
    method once (line 51) | once<Event extends keyof EventTypes>(event: Event, listener: EventList...
    method emitted (line 69) | emitted<Event extends keyof EventTypes>(
    method _emit (line 82) | protected _emit<Event extends keyof EventTypes>(
    method _hasListener (line 94) | protected _hasListener(event: keyof EventTypes): boolean {

FILE: src/lib/EventStream.ts
  class EventStream (line 3) | class EventStream<EventTypes extends BaseEvents> {
    method constructor (line 23) | constructor() {
    method _run (line 42) | protected _run(this: EventStream<EventTypes>, executor: () => Promise<...
    method _connected (line 53) | protected _connected(this: EventStream<EventTypes>) {
    method ended (line 59) | get ended(): boolean {
    method errored (line 63) | get errored(): boolean {
    method aborted (line 67) | get aborted(): boolean {
    method abort (line 71) | abort() {
    method on (line 82) | on<Event extends keyof EventTypes>(event: Event, listener: EventListen...
    method off (line 96) | off<Event extends keyof EventTypes>(event: Event, listener: EventListe...
    method once (line 109) | once<Event extends keyof EventTypes>(event: Event, listener: EventList...
    method emitted (line 127) | emitted<Event extends keyof EventTypes>(
    method done (line 141) | async done(): Promise<void> {
    method #handleError (line 146) | #handleError(this: EventStream<EventTypes>, error: unknown) {
    method _emit (line 169) | _emit<Event extends keyof EventTypes>(
    method _emitFinal (line 220) | protected _emitFinal(): void {}
  type EventListener (line 223) | type EventListener<Events, EventType extends keyof Events> = Events[Even...
  type EventListeners (line 225) | type EventListeners<Events, EventType extends keyof Events> = Array<{
  type EventParameters (line 230) | type EventParameters<Events, EventType extends keyof Events> = {
  type BaseEvents (line 234) | interface BaseEvents {

FILE: src/lib/ResponsesParser.ts
  type ParseableToolsParams (line 18) | type ParseableToolsParams = Array<Tool> | ChatCompletionTool | null;
  type ResponseCreateParamsWithTools (line 20) | type ResponseCreateParamsWithTools = ResponseCreateParamsBase & {
  type TextConfigParams (line 24) | type TextConfigParams = { text?: ResponseTextConfig };
  type ExtractParsedContentFromParams (line 26) | type ExtractParsedContentFromParams<Params extends TextConfigParams> =
  function maybeParseResponse (line 29) | function maybeParseResponse<
  function parseResponse (line 63) | function parseResponse<
  function parseTextFormat (line 124) | function parseTextFormat<
  function hasAutoParseableInput (line 140) | function hasAutoParseableInput(params: ResponseCreateParamsWithTools): b...
  type ToolOptions (line 148) | type ToolOptions = {
  type AutoParseableResponseTool (line 154) | type AutoParseableResponseTool<
  function makeParseableResponseTool (line 166) | function makeParseableResponseTool<OptionsT extends ToolOptions>(
  function isAutoParsableTool (line 196) | function isAutoParsableTool(tool: any): tool is AutoParseableResponseToo...
  function getInputToolByName (line 200) | function getInputToolByName(input_tools: Array<Tool>, name: string): Fun...
  function parseToolCall (line 206) | function parseToolCall<Params extends ResponseCreateParamsBase>(
  function shouldParseToolCall (line 222) | function shouldParseToolCall(
  function validateInputTools (line 234) | function validateInputTools(tools: ChatCompletionTool[] | undefined) {
  function addOutputText (line 250) | function addOutputText(rsp: Response): void {

FILE: src/lib/RunnableFunction.ts
  type PromiseOrValue (line 5) | type PromiseOrValue<T> = T | Promise<T>;
  type RunnableFunctionWithParse (line 7) | type RunnableFunctionWithParse<Args extends object> = {
  type RunnableFunctionWithoutParse (line 37) | type RunnableFunctionWithoutParse = {
  type RunnableFunction (line 61) | type RunnableFunction<Args extends object | string> =
  type RunnableToolFunction (line 66) | type RunnableToolFunction<Args extends object | string> =
  type RunnableToolFunctionWithoutParse (line 71) | type RunnableToolFunctionWithoutParse = {
  type RunnableToolFunctionWithParse (line 75) | type RunnableToolFunctionWithParse<Args extends object> = {
  function isRunnableFunctionWithParse (line 80) | function isRunnableFunctionWithParse<Args extends object>(
  type BaseFunctionsArgs (line 86) | type BaseFunctionsArgs = readonly (object | string)[];
  type RunnableFunctions (line 88) | type RunnableFunctions<FunctionsArgs extends BaseFunctionsArgs> =
  type RunnableTools (line 95) | type RunnableTools<FunctionsArgs extends BaseFunctionsArgs> =
  class ParsingToolFunction (line 106) | class ParsingToolFunction<Args extends object> {
    method constructor (line 110) | constructor(input: RunnableFunctionWithParse<Args>) {

FILE: src/lib/chatCompletionUtils.ts
  function isPresent (line 19) | function isPresent<T>(obj: T | null | undefined): obj is T {

FILE: src/lib/jsonschema.ts
  type JSONSchemaTypeName (line 14) | type JSONSchemaTypeName =
  type JSONSchemaType (line 28) | type JSONSchemaType =
  type JSONSchemaObject (line 37) | interface JSONSchemaObject {
  type JSONSchemaArray (line 43) | interface JSONSchemaArray extends Array<JSONSchemaType> {}
  type JSONSchemaVersion (line 56) | type JSONSchemaVersion = string;
  type JSONSchemaDefinition (line 62) | type JSONSchemaDefinition = JSONSchema | boolean;
  type JSONSchema (line 63) | interface JSONSchema {

FILE: src/lib/parser.ts
  type AnyChatCompletionCreateParams (line 19) | type AnyChatCompletionCreateParams =
  type Unpacked (line 25) | type Unpacked<T> = T extends (infer U)[] ? U : T;
  type ToolCall (line 27) | type ToolCall = Unpacked<ChatCompletionCreateParamsBase['tools']>;
  function isChatCompletionFunctionTool (line 29) | function isChatCompletionFunctionTool(tool: ToolCall): tool is ChatCompl...
  type ExtractParsedContentFromParams (line 33) | type ExtractParsedContentFromParams<Params extends AnyChatCompletionCrea...
  type AutoParseableResponseFormat (line 36) | type AutoParseableResponseFormat<ParsedT> = ResponseFormatJSONSchema & {
  function makeParseableResponseFormat (line 43) | function makeParseableResponseFormat<ParsedT>(
  type AutoParseableTextFormat (line 63) | type AutoParseableTextFormat<ParsedT> = ResponseFormatTextJSONSchemaConf...
  function makeParseableTextFormat (line 70) | function makeParseableTextFormat<ParsedT>(
  function isAutoParsableResponseFormat (line 90) | function isAutoParsableResponseFormat<ParsedT>(
  type ToolOptions (line 96) | type ToolOptions = {
  type AutoParseableTool (line 102) | type AutoParseableTool<
  function makeParseableTool (line 115) | function makeParseableTool<OptionsT extends ToolOptions>(
  function isAutoParsableTool (line 145) | function isAutoParsableTool(tool: any): tool is AutoParseableTool<any> {
  function maybeParseChatCompletion (line 149) | function maybeParseChatCompletion<
  function parseChatCompletion (line 178) | function parseChatCompletion<
  function parseResponseFormat (line 214) | function parseResponseFormat<
  function parseToolCall (line 235) | function parseToolCall<Params extends ChatCompletionCreateParams>(
  function shouldParseToolCall (line 255) | function shouldParseToolCall(
  function hasAutoParseableInput (line 273) | function hasAutoParseableInput(params: AnyChatCompletionCreateParams): b...
  function assertToolCallsAreChatCompletionFunctionToolCalls (line 285) | function assertToolCallsAreChatCompletionFunctionToolCalls(
  function validateInputTools (line 297) | function validateInputTools(tools: ChatCompletionCreateParamsBase['tools...

FILE: src/lib/responses/EventTypes.ts
  type ResponseFunctionCallArgumentsDeltaEvent (line 35) | type ResponseFunctionCallArgumentsDeltaEvent = RawResponseFunctionCallAr...
  type ResponseTextDeltaEvent (line 39) | type ResponseTextDeltaEvent = RawResponseTextDeltaEvent & {
  type ParsedResponseStreamEvent (line 43) | type ParsedResponseStreamEvent =

FILE: src/lib/responses/ResponseStream.ts
  type ResponseStreamParams (line 17) | type ResponseStreamParams = ResponseCreateAndStreamParams | ResponseStre...
  type ResponseCreateAndStreamParams (line 19) | type ResponseCreateAndStreamParams = Omit<ResponseCreateParamsBase, 'str...
  type ResponseStreamByIdParams (line 23) | type ResponseStreamByIdParams = {
  type ResponseEvents (line 48) | type ResponseEvents = BaseEvents &
  type ResponseStreamingParams (line 60) | type ResponseStreamingParams = Omit<ResponseCreateParamsBase, 'stream'> & {
  class ResponseStream (line 64) | class ResponseStream<ParsedT = null>
    method constructor (line 72) | constructor(params: ResponseStreamingParams | null) {
    method createResponse (line 77) | static createResponse<ParsedT>(
    method #beginRequest (line 92) | #beginRequest() {
    method #addEvent (line 97) | #addEvent(this: ResponseStream<ParsedT>, event: ResponseStreamEvent, s...
    method #endRequest (line 150) | #endRequest(): ParsedResponse<ParsedT> {
    method _createOrRetrieveResponse (line 165) | protected async _createOrRetrieveResponse(
    method #accumulateResponse (line 203) | #accumulateResponse(event: ResponseStreamEvent): Response {
    method finalResponse (line 355) | async finalResponse(): Promise<ParsedResponse<ParsedT>> {
  method [Symbol.asyncIterator] (line 290) | [Symbol.asyncIterator](this: ResponseStream<ParsedT>): AsyncIterator<Res...
  function finalizeResponse (line 363) | function finalizeResponse<ParsedT>(

FILE: src/lib/transform.ts
  function toStrictJsonSchema (line 3) | function toStrictJsonSchema(schema: JSONSchema): JSONSchema {
  function isNullable (line 14) | function isNullable(schema: JSONSchemaDefinition): boolean {
  function ensureStrictJsonSchema (line 38) | function ensureStrictJsonSchema(
  function resolveRef (line 158) | function resolveRef(root: JSONSchema, ref: string): JSONSchemaDefinition {
  function isObject (line 180) | function isObject<T>(obj: T | Array<any>): obj is Extract<T, Record<stri...
  function hasMoreThanNKeys (line 184) | function hasMoreThanNKeys(obj: Record<string, any>, n: number): boolean {

FILE: src/realtime/internal-base.ts
  class OpenAIRealtimeError (line 11) | class OpenAIRealtimeError extends OpenAIError {
    method constructor (line 22) | constructor(message: string, event: RealtimeErrorEvent | null) {
  type Simplify (line 30) | type Simplify<T> = { [KeyType in keyof T]: T[KeyType] } & {};
  type RealtimeEvents (line 32) | type RealtimeEvents = Simplify<
  method _onError (line 56) | protected _onError(event: RealtimeErrorEvent | null, message?: string | ...
  function isAzure (line 82) | function isAzure(client: Pick<OpenAI, 'apiKey' | 'baseURL'>): client is ...
  function buildRealtimeURL (line 86) | function buildRealtimeURL(client: Pick<OpenAI, 'apiKey' | 'baseURL'>, mo...

FILE: src/realtime/websocket.ts
  type MessageEvent (line 7) | interface MessageEvent {
  type _WebSocket (line 11) | type _WebSocket =
  class OpenAIRealtimeWebSocket (line 21) | class OpenAIRealtimeWebSocket extends OpenAIRealtimeEmitter {
    method constructor (line 25) | constructor(
    method create (line 107) | static async create(
    method azure (line 114) | static async azure(
    method send (line 142) | send(event: RealtimeClientEvent) {
    method close (line 150) | close(props?: { code: number; reason: string }) {

FILE: src/realtime/ws.ts
  class OpenAIRealtimeWS (line 6) | class OpenAIRealtimeWS extends OpenAIRealtimeEmitter {
    method constructor (line 10) | constructor(
    method create (line 66) | static async create(
    method azure (line 73) | static async azure(
    method send (line 98) | send(event: RealtimeClientEvent) {
    method close (line 106) | close(props?: { code: number; reason: string }) {

FILE: src/resources/audio/audio.ts
  class Audio (line 34) | class Audio extends APIResource {
  type AudioModel (line 40) | type AudioModel =
  type AudioResponseFormat (line 54) | type AudioResponseFormat = 'json' | 'text' | 'srt' | 'verbose_json' | 'v...

FILE: src/resources/audio/speech.ts
  class Speech (line 11) | class Speech extends APIResource {
    method create (line 29) | create(body: SpeechCreateParams, options?: RequestOptions): APIPromise...
  type SpeechModel (line 39) | type SpeechModel = 'tts-1' | 'tts-1-hd' | 'gpt-4o-mini-tts' | 'gpt-4o-mi...
  type SpeechCreateParams (line 41) | interface SpeechCreateParams {
  type ID (line 104) | interface ID {

FILE: src/resources/audio/transcriptions.ts
  class Transcriptions (line 15) | class Transcriptions extends APIResource {
    method create (line 52) | create(
  type Transcription (line 75) | interface Transcription {
  type Logprob (line 95) | interface Logprob {
  type Tokens (line 115) | interface Tokens {
  type InputTokenDetails (line 146) | interface InputTokenDetails {
  type Duration (line 162) | interface Duration {
  type TranscriptionDiarized (line 179) | interface TranscriptionDiarized {
  type Tokens (line 210) | interface Tokens {
  type InputTokenDetails (line 241) | interface InputTokenDetails {
  type Duration (line 257) | interface Duration {
  type TranscriptionDiarizedSegment (line 273) | interface TranscriptionDiarizedSegment {
  type TranscriptionInclude (line 307) | type TranscriptionInclude = 'logprobs';
  type TranscriptionSegment (line 309) | interface TranscriptionSegment {
  type TranscriptionStreamEvent (line 370) | type TranscriptionStreamEvent =
  type TranscriptionTextDeltaEvent (line 381) | interface TranscriptionTextDeltaEvent {
  type Logprob (line 407) | interface Logprob {
  type TranscriptionTextDoneEvent (line 431) | interface TranscriptionTextDoneEvent {
  type Logprob (line 457) | interface Logprob {
  type Usage (line 477) | interface Usage {
  type InputTokenDetails (line 508) | interface InputTokenDetails {
  type TranscriptionTextSegmentEvent (line 528) | interface TranscriptionTextSegmentEvent {
  type TranscriptionVerbose (line 564) | interface TranscriptionVerbose {
  type Usage (line 600) | interface Usage {
  type TranscriptionWord (line 613) | interface TranscriptionWord {
  type TranscriptionCreateResponse (line 634) | type TranscriptionCreateResponse = Transcription | TranscriptionDiarized...
  type TranscriptionCreateParams (line 636) | type TranscriptionCreateParams<
  type TranscriptionCreateParamsBase (line 640) | interface TranscriptionCreateParamsBase<
  type VadConfig (line 751) | interface VadConfig {
  type TranscriptionCreateParamsNonStreaming (line 777) | type TranscriptionCreateParamsNonStreaming = TranscriptionsAPI.Transcrip...
  type TranscriptionCreateParamsStreaming (line 778) | type TranscriptionCreateParamsStreaming = TranscriptionsAPI.Transcriptio...
  type TranscriptionCreateParamsNonStreaming (line 781) | interface TranscriptionCreateParamsNonStreaming<
  type TranscriptionCreateParamsStreaming (line 797) | interface TranscriptionCreateParamsStreaming extends TranscriptionCreate...

FILE: src/resources/audio/translations.ts
  class Translations (line 14) | class Translations extends APIResource {
    method create (line 36) | create(
  type Translation (line 47) | interface Translation {
  type TranslationVerbose (line 51) | interface TranslationVerbose {
  type TranslationCreateResponse (line 73) | type TranslationCreateResponse = Translation | TranslationVerbose;
  type TranslationCreateParams (line 75) | interface TranslationCreateParams<

FILE: src/resources/batches.ts
  class Batches (line 14) | class Batches extends APIResource {
    method create (line 18) | create(body: BatchCreateParams, options?: RequestOptions): APIPromise<...
    method retrieve (line 25) | retrieve(batchID: string, options?: RequestOptions): APIPromise<Batch> {
    method list (line 32) | list(
    method cancel (line 44) | cancel(batchID: string, options?: RequestOptions): APIPromise<Batch> {
  type BatchesPage (line 49) | type BatchesPage = CursorPage<Batch>;
  type Batch (line 51) | interface Batch {
  type Errors (line 177) | interface Errors {
  type BatchError (line 187) | interface BatchError {
  type BatchRequestCounts (line 212) | interface BatchRequestCounts {
  type BatchUsage (line 234) | interface BatchUsage {
  type InputTokensDetails (line 265) | interface InputTokensDetails {
  type OutputTokensDetails (line 276) | interface OutputTokensDetails {
  type BatchCreateParams (line 284) | interface BatchCreateParams {
  type OutputExpiresAfter (line 344) | interface OutputExpiresAfter {
  type BatchListParams (line 360) | interface BatchListParams extends CursorPageParams {}

FILE: src/resources/beta/assistants.ts
  class Assistants (line 19) | class Assistants extends APIResource {
    method create (line 25) | create(body: AssistantCreateParams, options?: RequestOptions): APIProm...
    method retrieve (line 38) | retrieve(assistantID: string, options?: RequestOptions): APIPromise<As...
    method update (line 50) | update(assistantID: string, body: AssistantUpdateParams, options?: Req...
    method list (line 63) | list(
    method delete (line 79) | delete(assistantID: string, options?: RequestOptions): APIPromise<Assi...
  type AssistantsPage (line 87) | type AssistantsPage = CursorPage<Assistant>;
  type Assistant (line 92) | interface Assistant {
  type ToolResources (line 206) | interface ToolResources {
  type CodeInterpreter (line 213) | interface CodeInterpreter {
  type FileSearch (line 222) | interface FileSearch {
  type AssistantDeleted (line 234) | interface AssistantDeleted {
  type AssistantStreamEvent (line 264) | type AssistantStreamEvent =
  type ThreadCreated (line 296) | interface ThreadCreated {
  type ThreadRunCreated (line 315) | interface ThreadRunCreated {
  type ThreadRunQueued (line 329) | interface ThreadRunQueued {
  type ThreadRunInProgress (line 343) | interface ThreadRunInProgress {
  type ThreadRunRequiresAction (line 357) | interface ThreadRunRequiresAction {
  type ThreadRunCompleted (line 371) | interface ThreadRunCompleted {
  type ThreadRunIncomplete (line 385) | interface ThreadRunIncomplete {
  type ThreadRunFailed (line 399) | interface ThreadRunFailed {
  type ThreadRunCancelling (line 413) | interface ThreadRunCancelling {
  type ThreadRunCancelled (line 427) | interface ThreadRunCancelled {
  type ThreadRunExpired (line 441) | interface ThreadRunExpired {
  type ThreadRunStepCreated (line 456) | interface ThreadRunStepCreated {
  type ThreadRunStepInProgress (line 470) | interface ThreadRunStepInProgress {
  type ThreadRunStepDelta (line 484) | interface ThreadRunStepDelta {
  type ThreadRunStepCompleted (line 499) | interface ThreadRunStepCompleted {
  type ThreadRunStepFailed (line 513) | interface ThreadRunStepFailed {
  type ThreadRunStepCancelled (line 527) | interface ThreadRunStepCancelled {
  type ThreadRunStepExpired (line 541) | interface ThreadRunStepExpired {
  type ThreadMessageCreated (line 555) | interface ThreadMessageCreated {
  type ThreadMessageInProgress (line 570) | interface ThreadMessageInProgress {
  type ThreadMessageDelta (line 585) | interface ThreadMessageDelta {
  type ThreadMessageCompleted (line 600) | interface ThreadMessageCompleted {
  type ThreadMessageIncomplete (line 615) | interface ThreadMessageIncomplete {
  type ErrorEvent (line 630) | interface ErrorEvent {
  type AssistantTool (line 637) | type AssistantTool = CodeInterpreterTool | FileSearchTool | FunctionTool;
  type CodeInterpreterTool (line 639) | interface CodeInterpreterTool {
  type FileSearchTool (line 646) | interface FileSearchTool {
  type FileSearch (line 662) | interface FileSearch {
  type RankingOptions (line 695) | interface RankingOptions {
  type FunctionTool (line 711) | interface FunctionTool {
  type MessageStreamEvent (line 725) | type MessageStreamEvent =
  type ThreadMessageCreated (line 738) | interface ThreadMessageCreated {
  type ThreadMessageInProgress (line 753) | interface ThreadMessageInProgress {
  type ThreadMessageDelta (line 768) | interface ThreadMessageDelta {
  type ThreadMessageCompleted (line 783) | interface ThreadMessageCompleted {
  type ThreadMessageIncomplete (line 798) | interface ThreadMessageIncomplete {
  type RunStepStreamEvent (line 814) | type RunStepStreamEvent =
  type ThreadRunStepCreated (line 829) | interface ThreadRunStepCreated {
  type ThreadRunStepInProgress (line 843) | interface ThreadRunStepInProgress {
  type ThreadRunStepDelta (line 857) | interface ThreadRunStepDelta {
  type ThreadRunStepCompleted (line 872) | interface ThreadRunStepCompleted {
  type ThreadRunStepFailed (line 886) | interface ThreadRunStepFailed {
  type ThreadRunStepCancelled (line 900) | interface ThreadRunStepCancelled {
  type ThreadRunStepExpired (line 914) | interface ThreadRunStepExpired {
  type RunStreamEvent (line 928) | type RunStreamEvent =
  type ThreadRunCreated (line 945) | interface ThreadRunCreated {
  type ThreadRunQueued (line 959) | interface ThreadRunQueued {
  type ThreadRunInProgress (line 973) | interface ThreadRunInProgress {
  type ThreadRunRequiresAction (line 987) | interface ThreadRunRequiresAction {
  type ThreadRunCompleted (line 1001) | interface ThreadRunCompleted {
  type ThreadRunIncomplete (line 1015) | interface ThreadRunIncomplete {
  type ThreadRunFailed (line 1029) | interface ThreadRunFailed {
  type ThreadRunCancelling (line 1043) | interface ThreadRunCancelling {
  type ThreadRunCancelled (line 1057) | interface ThreadRunCancelled {
  type ThreadRunExpired (line 1071) | interface ThreadRunExpired {
  type ThreadStreamEvent (line 1087) | interface ThreadStreamEvent {
  type AssistantCreateParams (line 1102) | interface AssistantCreateParams {
  type ToolResources (line 1218) | interface ToolResources {
  type CodeInterpreter (line 1225) | interface CodeInterpreter {
  type FileSearch (line 1234) | interface FileSearch {
  type VectorStore (line 1253) | interface VectorStore {
  type Auto (line 1284) | interface Auto {
  type Static (line 1291) | interface Static {
  type Static (line 1301) | interface Static {
  type AssistantUpdateParams (line 1321) | interface AssistantUpdateParams {
  type ToolResources (line 1480) | interface ToolResources {
  type CodeInterpreter (line 1487) | interface CodeInterpreter {
  type FileSearch (line 1497) | interface FileSearch {
  type AssistantListParams (line 1509) | interface AssistantListParams extends CursorPageParams {

FILE: src/resources/beta/beta.ts
  class Beta (line 96) | class Beta extends APIResource {

FILE: src/resources/beta/chatkit/chatkit.ts
  class ChatKit (line 34) | class ChatKit extends APIResource {
  type ChatKitWorkflow (line 42) | interface ChatKitWorkflow {
  type Tracing (line 70) | interface Tracing {

FILE: src/resources/beta/chatkit/sessions.ts
  class Sessions (line 10) | class Sessions extends APIResource {
    method create (line 23) | create(body: SessionCreateParams, options?: RequestOptions): APIPromis...
    method cancel (line 42) | cancel(sessionID: string, options?: RequestOptions): APIPromise<Thread...
  type SessionCreateParams (line 50) | interface SessionCreateParams {

FILE: src/resources/beta/chatkit/threads.ts
  class Threads (line 15) | class Threads extends APIResource {
    method retrieve (line 25) | retrieve(threadID: string, options?: RequestOptions): APIPromise<ChatK...
    method list (line 43) | list(
    method delete (line 64) | delete(threadID: string, options?: RequestOptions): APIPromise<ThreadD...
    method listItems (line 84) | listItems(
  type ChatKitThreadsPage (line 112) | type ChatKitThreadsPage = ConversationCursorPage<ChatKitThread>;
  type ChatKitThreadItemListDataPage (line 114) | type ChatKitThreadItemListDataPage = ConversationCursorPage<
  type ChatSession (line 126) | interface ChatSession {
  type ChatSessionAutomaticThreadTitling (line 181) | interface ChatSessionAutomaticThreadTitling {
  type ChatSessionChatKitConfiguration (line 191) | interface ChatSessionChatKitConfiguration {
  type ChatSessionChatKitConfigurationParam (line 211) | interface ChatSessionChatKitConfigurationParam {
  type AutomaticThreadTitling (line 236) | interface AutomaticThreadTitling {
  type FileUpload (line 247) | interface FileUpload {
  type History (line 269) | interface History {
  type ChatSessionExpiresAfterParam (line 286) | interface ChatSessionExpiresAfterParam {
  type ChatSessionFileUpload (line 301) | interface ChatSessionFileUpload {
  type ChatSessionHistory (line 321) | interface ChatSessionHistory {
  type ChatSessionRateLimits (line 337) | interface ChatSessionRateLimits {
  type ChatSessionRateLimitsParam (line 347) | interface ChatSessionRateLimitsParam {
  type ChatSessionStatus (line 354) | type ChatSessionStatus = 'active' | 'expired' | 'cancelled';
  type ChatSessionWorkflowParam (line 359) | interface ChatSessionWorkflowParam {
  type Tracing (line 388) | interface Tracing {
  type ChatKitAttachment (line 399) | interface ChatKitAttachment {
  type ChatKitResponseOutputText (line 429) | interface ChatKitResponseOutputText {
  type File (line 450) | interface File {
  type Source (line 466) | interface Source {
  type URL (line 482) | interface URL {
  type Source (line 498) | interface Source {
  type ChatKitThread (line 515) | interface ChatKitThread {
  type Active (line 552) | interface Active {
  type Locked (line 562) | interface Locked {
  type Closed (line 577) | interface Closed {
  type ChatKitThreadAssistantMessageItem (line 593) | interface ChatKitThreadAssistantMessageItem {
  type ChatKitThreadItemList (line 628) | interface ChatKitThreadItemList {
  type ChatKitClientToolCall (line 666) | interface ChatKitClientToolCall {
  type ChatKitTask (line 722) | interface ChatKitTask {
  type ChatKitTaskGroup (line 767) | interface ChatKitTaskGroup {
  type Task (line 803) | interface Task {
  type ChatKitThreadUserMessageItem (line 825) | interface ChatKitThreadUserMessageItem {
  type InputText (line 868) | interface InputText {
  type QuotedText (line 883) | interface QuotedText {
  type InferenceOptions (line 898) | interface InferenceOptions {
  type ToolChoice (line 915) | interface ToolChoice {
  type ChatKitWidgetItem (line 927) | interface ChatKitWidgetItem {
  type ThreadDeleteResponse (line 962) | interface ThreadDeleteResponse {
  type ThreadListParams (line 979) | interface ThreadListParams extends ConversationCursorPageParams {
  type ThreadListItemsParams (line 998) | interface ThreadListItemsParams extends ConversationCursorPageParams {

FILE: src/resources/beta/realtime/realtime.ts
  class Realtime (line 23) | class Realtime extends APIResource {
  type ConversationCreatedEvent (line 32) | interface ConversationCreatedEvent {
  type Conversation (line 53) | interface Conversation {
  type ConversationItem (line 69) | interface ConversationItem {
  type ConversationItemContent (line 132) | interface ConversationItemContent {
  type ConversationItemCreateEvent (line 171) | interface ConversationItemCreateEvent {
  type ConversationItemCreatedEvent (line 210) | interface ConversationItemCreatedEvent {
  type ConversationItemDeleteEvent (line 240) | interface ConversationItemDeleteEvent {
  type ConversationItemDeletedEvent (line 262) | interface ConversationItemDeletedEvent {
  type ConversationItemInputAudioTranscriptionCompletedEvent (line 291) | interface ConversationItemInputAudioTranscriptionCompletedEvent {
  type TranscriptTextUsageTokens (line 334) | interface TranscriptTextUsageTokens {
  type InputTokenDetails (line 365) | interface InputTokenDetails {
  type TranscriptTextUsageDuration (line 381) | interface TranscriptTextUsageDuration {
  type Logprob (line 396) | interface Logprob {
  type ConversationItemInputAudioTranscriptionDeltaEvent (line 418) | interface ConversationItemInputAudioTranscriptionDeltaEvent {
  type Logprob (line 454) | interface Logprob {
  type ConversationItemInputAudioTranscriptionFailedEvent (line 477) | interface ConversationItemInputAudioTranscriptionFailedEvent {
  type Error (line 508) | interface Error {
  type ConversationItemRetrieveEvent (line 538) | interface ConversationItemRetrieveEvent {
  type ConversationItemTruncateEvent (line 568) | interface ConversationItemTruncateEvent {
  type ConversationItemTruncatedEvent (line 606) | interface ConversationItemTruncatedEvent {
  type ConversationItemWithReference (line 636) | interface ConversationItemWithReference {
  type Content (line 704) | interface Content {
  type ErrorEvent (line 739) | interface ErrorEvent {
  type Error (line 760) | interface Error {
  type InputAudioBufferAppendEvent (line 800) | interface InputAudioBufferAppendEvent {
  type InputAudioBufferClearEvent (line 822) | interface InputAudioBufferClearEvent {
  type InputAudioBufferClearedEvent (line 838) | interface InputAudioBufferClearedEvent {
  type InputAudioBufferCommitEvent (line 860) | interface InputAudioBufferCommitEvent {
  type InputAudioBufferCommittedEvent (line 878) | interface InputAudioBufferCommittedEvent {
  type InputAudioBufferSpeechStartedEvent (line 913) | interface InputAudioBufferSpeechStartedEvent {
  type InputAudioBufferSpeechStoppedEvent (line 943) | interface InputAudioBufferSpeechStoppedEvent {
  type RateLimitsUpdatedEvent (line 973) | interface RateLimitsUpdatedEvent {
  type RateLimit (line 991) | interface RateLimit {
  type RealtimeClientEvent (line 1017) | type RealtimeClientEvent =
  type OutputAudioBufferClear (line 1039) | interface OutputAudioBufferClear {
  type RealtimeResponse (line 1055) | interface RealtimeResponse {
  type RealtimeResponseStatus (line 1144) | interface RealtimeResponseStatus {
  type Error (line 1172) | interface Error {
  type RealtimeResponseUsage (line 1191) | interface RealtimeResponseUsage {
  type InputTokenDetails (line 1225) | interface InputTokenDetails {
  type OutputTokenDetails (line 1245) | interface OutputTokenDetails {
  type RealtimeServerEvent (line 1261) | type RealtimeServerEvent =
  type ConversationItemRetrieved (line 1302) | interface ConversationItemRetrieved {
  type OutputAudioBufferStarted (line 1325) | interface OutputAudioBufferStarted {
  type OutputAudioBufferStopped (line 1348) | interface OutputAudioBufferStopped {
  type OutputAudioBufferCleared (line 1373) | interface OutputAudioBufferCleared {
  type ResponseAudioDeltaEvent (line 1394) | interface ResponseAudioDeltaEvent {
  type ResponseAudioDoneEvent (line 1435) | interface ResponseAudioDoneEvent {
  type ResponseAudioTranscriptDeltaEvent (line 1470) | interface ResponseAudioTranscriptDeltaEvent {
  type ResponseAudioTranscriptDoneEvent (line 1512) | interface ResponseAudioTranscriptDoneEvent {
  type ResponseCancelEvent (line 1554) | interface ResponseCancelEvent {
  type ResponseContentPartAddedEvent (line 1576) | interface ResponseContentPartAddedEvent {
  type Part (line 1617) | interface Part {
  type ResponseContentPartDoneEvent (line 1644) | interface ResponseContentPartDoneEvent {
  type Part (line 1685) | interface Part {
  type ResponseCreateEvent (line 1725) | interface ResponseCreateEvent {
  type Response (line 1746) | interface Response {
  type Tool (line 1832) | interface Tool {
  type ResponseCreatedEvent (line 1861) | interface ResponseCreatedEvent {
  type ResponseDoneEvent (line 1883) | interface ResponseDoneEvent {
  type ResponseFunctionCallArgumentsDeltaEvent (line 1903) | interface ResponseFunctionCallArgumentsDeltaEvent {
  type ResponseFunctionCallArgumentsDoneEvent (line 1944) | interface ResponseFunctionCallArgumentsDoneEvent {
  type ResponseOutputItemAddedEvent (line 1984) | interface ResponseOutputItemAddedEvent {
  type ResponseOutputItemDoneEvent (line 2015) | interface ResponseOutputItemDoneEvent {
  type ResponseTextDeltaEvent (line 2045) | interface ResponseTextDeltaEvent {
  type ResponseTextDoneEvent (line 2086) | interface ResponseTextDoneEvent {
  type SessionCreatedEvent (line 2128) | interface SessionCreatedEvent {
  type SessionUpdateEvent (line 2156) | interface SessionUpdateEvent {
  type Session (line 2177) | interface Session {
  type ClientSecret (line 2315) | interface ClientSecret {
  type ExpiresAfter (line 2326) | interface ExpiresAfter {
  type InputAudioNoiseReduction (line 2348) | interface InputAudioNoiseReduction {
  type InputAudioTranscription (line 2367) | interface InputAudioTranscription {
  type Tool (line 2391) | interface Tool {
  type TracingConfiguration (line 2417) | interface TracingConfiguration {
  type TurnDetection (line 2449) | interface TurnDetection {
  type SessionUpdatedEvent (line 2502) | interface SessionUpdatedEvent {
  type TranscriptionSessionUpdate (line 2522) | interface TranscriptionSessionUpdate {
  type Session (line 2543) | interface Session {
  type ClientSecret (line 2604) | interface ClientSecret {
  type ExpiresAt (line 2615) | interface ExpiresAt {
  type InputAudioNoiseReduction (line 2637) | interface InputAudioNoiseReduction {
  type InputAudioTranscription (line 2651) | interface InputAudioTranscription {
  type TurnDetection (line 2687) | interface TurnDetection {
  type TranscriptionSessionUpdatedEvent (line 2740) | interface TranscriptionSessionUpdatedEvent {

FILE: src/resources/beta/realtime/sessions.ts
  class Sessions (line 8) | class Sessions extends APIResource {
    method create (line 24) | create(body: SessionCreateParams, options?: RequestOptions): APIPromis...
  type Session (line 36) | interface Session {
  type InputAudioNoiseReduction (line 178) | interface InputAudioNoiseReduction {
  type InputAudioTranscription (line 197) | interface InputAudioTranscription {
  type Tool (line 221) | interface Tool {
  type TracingConfiguration (line 247) | interface TracingConfiguration {
  type TurnDetection (line 279) | interface TurnDetection {
  type SessionCreateResponse (line 331) | interface SessionCreateResponse {
  type ClientSecret (line 435) | interface ClientSecret {
  type InputAudioTranscription (line 457) | interface InputAudioTranscription {
  type Tool (line 464) | interface Tool {
  type TracingConfiguration (line 490) | interface TracingConfiguration {
  type TurnDetection (line 515) | interface TurnDetection {
  type SessionCreateParams (line 543) | interface SessionCreateParams {
  type ClientSecret (line 681) | interface ClientSecret {
  type ExpiresAfter (line 692) | interface ExpiresAfter {
  type InputAudioNoiseReduction (line 714) | interface InputAudioNoiseReduction {
  type InputAudioTranscription (line 733) | interface InputAudioTranscription {
  type Tool (line 757) | interface Tool {
  type TracingConfiguration (line 783) | interface TracingConfiguration {
  type TurnDetection (line 815) | interface TurnDetection {

FILE: src/resources/beta/realtime/transcription-sessions.ts
  class TranscriptionSessions (line 8) | class TranscriptionSessions extends APIResource {
    method create (line 24) | create(body: TranscriptionSessionCreateParams, options?: RequestOption...
  type TranscriptionSession (line 40) | interface TranscriptionSession {
  type ClientSecret (line 76) | interface ClientSecret {
  type InputAudioTranscription (line 94) | interface InputAudioTranscription {
  type TurnDetection (line 122) | interface TurnDetection {
  type TranscriptionSessionCreateParams (line 150) | interface TranscriptionSessionCreateParams {
  type ClientSecret (line 211) | interface ClientSecret {
  type ExpiresAt (line 222) | interface ExpiresAt {
  type InputAudioNoiseReduction (line 244) | interface InputAudioNoiseReduction {
  type InputAudioTranscription (line 258) | interface InputAudioTranscription {
  type TurnDetection (line 294) | interface TurnDetection {

FILE: src/resources/beta/threads/messages.ts
  class Messages (line 17) | class Messages extends APIResource {
    method create (line 23) | create(threadID: string, body: MessageCreateParams, options?: RequestO...
    method retrieve (line 36) | retrieve(messageID: string, params: MessageRetrieveParams, options?: R...
    method update (line 49) | update(messageID: string, params: MessageUpdateParams, options?: Reque...
    method list (line 63) | list(
    method delete (line 80) | delete(
  type MessagesPage (line 93) | type MessagesPage = CursorPage<Message>;
  type Annotation (line 100) | type Annotation = FileCitationAnnotation | FilePathAnnotation;
  type AnnotationDelta (line 107) | type AnnotationDelta = FileCitationDeltaAnnotation | FilePathDeltaAnnota...
  type FileCitationAnnotation (line 114) | interface FileCitationAnnotation {
  type FileCitation (line 133) | interface FileCitation {
  type FileCitationDeltaAnnotation (line 146) | interface FileCitationDeltaAnnotation {
  type FileCitation (line 170) | interface FileCitation {
  type FilePathAnnotation (line 187) | interface FilePathAnnotation {
  type FilePath (line 206) | interface FilePath {
  type FilePathDeltaAnnotation (line 218) | interface FilePathDeltaAnnotation {
  type FilePath (line 242) | interface FilePath {
  type ImageFile (line 250) | interface ImageFile {
  type ImageFileContentBlock (line 269) | interface ImageFileContentBlock {
  type ImageFileDelta (line 278) | interface ImageFileDelta {
  type ImageFileDeltaBlock (line 297) | interface ImageFileDeltaBlock {
  type ImageURL (line 311) | interface ImageURL {
  type ImageURLContentBlock (line 328) | interface ImageURLContentBlock {
  type ImageURLDelta (line 337) | interface ImageURLDelta {
  type ImageURLDeltaBlock (line 354) | interface ImageURLDeltaBlock {
  type Message (line 372) | interface Message {
  type Attachment (line 456) | interface Attachment {
  type AssistantToolsFileSearchTypeOnly (line 469) | interface AssistantToolsFileSearchTypeOnly {
  type IncompleteDetails (line 480) | interface IncompleteDetails {
  type MessageContent (line 492) | type MessageContent =
  type MessageContentDelta (line 502) | type MessageContentDelta =
  type MessageContentPartParam (line 512) | type MessageContentPartParam = ImageFileContentBlock | ImageURLContentBl...
  type MessageDeleted (line 514) | interface MessageDeleted {
  type MessageDelta (line 525) | interface MessageDelta {
  type MessageDeltaEvent (line 541) | interface MessageDeltaEvent {
  type RefusalContentBlock (line 561) | interface RefusalContentBlock {
  type RefusalDeltaBlock (line 573) | interface RefusalDeltaBlock {
  type Text (line 587) | interface Text {
  type TextContentBlock (line 599) | interface TextContentBlock {
  type TextContentBlockParam (line 611) | interface TextContentBlockParam {
  type TextDelta (line 623) | interface TextDelta {
  type TextDeltaBlock (line 635) | interface TextDeltaBlock {
  type MessageCreateParams (line 649) | interface MessageCreateParams {
  type Attachment (line 682) | interface Attachment {
  type FileSearch (line 695) | interface FileSearch {
  type MessageRetrieveParams (line 704) | interface MessageRetrieveParams {
  type MessageUpdateParams (line 712) | interface MessageUpdateParams {
  type MessageListParams (line 729) | interface MessageListParams extends CursorPageParams {
  type MessageDeleteParams (line 750) | interface MessageDeleteParams {

FILE: src/resources/beta/threads/runs/runs.ts
  class Runs (line 49) | class Runs extends APIResource {
    method create (line 68) | create(
    method retrieve (line 89) | retrieve(runID: string, params: RunRetrieveParams, options?: RequestOp...
    method update (line 102) | update(runID: string, params: RunUpdateParams, options?: RequestOption...
    method list (line 116) | list(
    method cancel (line 133) | cancel(runID: string, params: RunCancelParams, options?: RequestOption...
    method createAndPoll (line 146) | async createAndPoll(
    method createAndStream (line 160) | createAndStream(
    method poll (line 173) | async poll(
    method stream (line 227) | stream(threadId: string, body: RunCreateParamsBaseStream, options?: Re...
    method submitToolOutputs (line 254) | submitToolOutputs(
    method submitToolOutputsAndPoll (line 274) | async submitToolOutputsAndPoll(
    method submitToolOutputsStream (line 288) | submitToolOutputsStream(
  type RunsPage (line 297) | type RunsPage = CursorPage<Run>;
  type RequiredActionFunctionToolCall (line 302) | interface RequiredActionFunctionToolCall {
  type Function (line 327) | interface Function {
  type Run (line 344) | interface Run {
  type IncompleteDetails (line 535) | interface IncompleteDetails {
  type LastError (line 546) | interface LastError {
  type RequiredAction (line 562) | interface RequiredAction {
  type SubmitToolOutputs (line 578) | interface SubmitToolOutputs {
  type TruncationStrategy (line 590) | interface TruncationStrategy {
  type Usage (line 610) | interface Usage {
  type RunStatus (line 633) | type RunStatus =
  type RunCreateParams (line 644) | type RunCreateParams = RunCreateParamsNonStreaming | RunCreateParamsStre...
  type RunCreateParamsBase (line 646) | interface RunCreateParamsBase {
  type AdditionalMessage (line 820) | interface AdditionalMessage {
  type Attachment (line 853) | interface Attachment {
  type FileSearch (line 866) | interface FileSearch {
  type TruncationStrategy (line 879) | interface TruncationStrategy {
  type RunCreateParamsNonStreaming (line 895) | type RunCreateParamsNonStreaming = RunsAPI.RunCreateParamsNonStreaming;
  type RunCreateParamsStreaming (line 896) | type RunCreateParamsStreaming = RunsAPI.RunCreateParamsStreaming;
  type RunCreateParamsNonStreaming (line 899) | interface RunCreateParamsNonStreaming extends RunCreateParamsBase {
  type RunCreateParamsStreaming (line 908) | interface RunCreateParamsStreaming extends RunCreateParamsBase {
  type RunRetrieveParams (line 917) | interface RunRetrieveParams {
  type RunUpdateParams (line 925) | interface RunUpdateParams {
  type RunListParams (line 943) | interface RunListParams extends CursorPageParams {
  type RunCancelParams (line 959) | interface RunCancelParams {
  type RunCreateAndPollParams (line 966) | type RunCreateAndPollParams = ThreadsAPI.ThreadCreateAndRunParamsNonStre...
  type RunCreateAndStreamParams (line 968) | type RunCreateAndStreamParams = RunCreateParamsBaseStream;
  type RunStreamParams (line 970) | type RunStreamParams = RunCreateParamsBaseStream;
  type RunSubmitToolOutputsParams (line 972) | type RunSubmitToolOutputsParams =
  type RunSubmitToolOutputsParamsBase (line 976) | interface RunSubmitToolOutputsParamsBase {
  type ToolOutput (line 998) | interface ToolOutput {
  type RunSubmitToolOutputsParamsNonStreaming (line 1011) | type RunSubmitToolOutputsParamsNonStreaming = RunsAPI.RunSubmitToolOutpu...
  type RunSubmitToolOutputsParamsStreaming (line 1012) | type RunSubmitToolOutputsParamsStreaming = RunsAPI.RunSubmitToolOutputsP...
  type RunSubmitToolOutputsParamsNonStreaming (line 1015) | interface RunSubmitToolOutputsParamsNonStreaming extends RunSubmitToolOu...
  type RunSubmitToolOutputsParamsStreaming (line 1024) | interface RunSubmitToolOutputsParamsStreaming extends RunSubmitToolOutpu...
  type RunSubmitToolOutputsAndPollParams (line 1033) | type RunSubmitToolOutputsAndPollParams = RunSubmitToolOutputsParamsNonSt...
  type RunSubmitToolOutputsStreamParams (line 1034) | type RunSubmitToolOutputsStreamParams = RunSubmitToolOutputsParamsStream;

FILE: src/resources/beta/threads/runs/steps.ts
  class Steps (line 17) | class Steps extends APIResource {
    method retrieve (line 23) | retrieve(stepID: string, params: StepRetrieveParams, options?: Request...
    method list (line 37) | list(runID: string, params: StepListParams, options?: RequestOptions):...
  type RunStepsPage (line 47) | type RunStepsPage = CursorPage<RunStep>;
  type CodeInterpreterLogs (line 52) | interface CodeInterpreterLogs {
  type CodeInterpreterOutputImage (line 69) | interface CodeInterpreterOutputImage {
  type Image (line 84) | interface Image {
  type CodeInterpreterToolCall (line 96) | interface CodeInterpreterToolCall {
  type CodeInterpreter (line 118) | interface CodeInterpreter {
  type Logs (line 136) | interface Logs {
  type Image (line 148) | interface Image {
  type Image (line 158) | interface Image {
  type CodeInterpreterToolCallDelta (line 172) | interface CodeInterpreterToolCallDelta {
  type CodeInterpreter (line 199) | interface CodeInterpreter {
  type FileSearchToolCall (line 214) | interface FileSearchToolCall {
  type FileSearch (line 236) | interface FileSearch {
  type RankingOptions (line 252) | interface RankingOptions {
  type Result (line 269) | interface Result {
  type Content (line 294) | interface Content {
  type FileSearchToolCallDelta (line 309) | interface FileSearchToolCallDelta {
  type FunctionToolCall (line 332) | interface FunctionToolCall {
  type Function (line 354) | interface Function {
  type FunctionToolCallDelta (line 374) | interface FunctionToolCallDelta {
  type Function (line 401) | interface Function {
  type MessageCreationStepDetails (line 424) | interface MessageCreationStepDetails {
  type MessageCreation (line 434) | interface MessageCreation {
  type RunStep (line 445) | interface RunStep {
  type LastError (line 545) | interface LastError {
  type Usage (line 561) | interface Usage {
  type RunStepDelta (line 582) | interface RunStepDelta {
  type RunStepDeltaEvent (line 593) | interface RunStepDeltaEvent {
  type RunStepDeltaMessageDelta (line 613) | interface RunStepDeltaMessageDelta {
  type MessageCreation (line 623) | interface MessageCreation {
  type RunStepInclude (line 631) | type RunStepInclude = 'step_details.tool_calls[*].file_search.results[*]...
  type ToolCall (line 636) | type ToolCall = CodeInterpreterToolCall | FileSearchToolCall | FunctionT...
  type ToolCallDelta (line 641) | type ToolCallDelta = CodeInterpreterToolCallDelta | FileSearchToolCallDe...
  type ToolCallDeltaObject (line 646) | interface ToolCallDeltaObject {
  type ToolCallsStepDetails (line 663) | interface ToolCallsStepDetails {
  type StepRetrieveParams (line 677) | interface StepRetrieveParams {
  type StepListParams (line 701) | interface StepListParams extends CursorPageParams {

FILE: src/resources/beta/threads/threads.ts
  class Threads (line 80) | class Threads extends APIResource {
    method create (line 89) | create(body: ThreadCreateParams | null | undefined = {}, options?: Req...
    method retrieve (line 102) | retrieve(threadID: string, options?: RequestOptions): APIPromise<Threa...
    method update (line 114) | update(threadID: string, body: ThreadUpdateParams, options?: RequestOp...
    method delete (line 127) | delete(threadID: string, options?: RequestOptions): APIPromise<ThreadD...
    method createAndRun (line 148) | createAndRun(
    method createAndRunPoll (line 166) | async createAndRunPoll(
    method createAndRunStream (line 177) | createAndRunStream(body: ThreadCreateAndRunParamsBaseStream, options?:...
  type AssistantResponseFormatOption (line 204) | type AssistantResponseFormatOption =
  type AssistantToolChoice (line 214) | interface AssistantToolChoice {
  type AssistantToolChoiceFunction (line 223) | interface AssistantToolChoiceFunction {
  type AssistantToolChoiceOption (line 239) | type AssistantToolChoiceOption = 'none' | 'auto' | 'required' | Assistan...
  type Thread (line 245) | interface Thread {
  type ToolResources (line 287) | interface ToolResources {
  type CodeInterpreter (line 294) | interface CodeInterpreter {
  type FileSearch (line 303) | interface FileSearch {
  type ThreadDeleted (line 315) | interface ThreadDeleted {
  type ThreadCreateParams (line 323) | interface ThreadCreateParams {
  type Message (line 350) | interface Message {
  type Attachment (line 383) | interface Attachment {
  type FileSearch (line 396) | interface FileSearch {
  type ToolResources (line 411) | interface ToolResources {
  type CodeInterpreter (line 418) | interface CodeInterpreter {
  type FileSearch (line 427) | interface FileSearch {
  type VectorStore (line 446) | interface VectorStore {
  type Auto (line 477) | interface Auto {
  type Static (line 484) | interface Static {
  type Static (line 494) | interface Static {
  type ThreadUpdateParams (line 514) | interface ThreadUpdateParams {
  type ToolResources (line 541) | interface ToolResources {
  type CodeInterpreter (line 548) | interface CodeInterpreter {
  type FileSearch (line 557) | interface FileSearch {
  type ThreadCreateAndRunParams (line 569) | type ThreadCreateAndRunParams =
  type ThreadCreateAndRunParamsBase (line 573) | interface ThreadCreateAndRunParamsBase {
  type Thread (line 720) | interface Thread {
  type Message (line 747) | interface Message {
  type Attachment (line 780) | interface Attachment {
  type FileSearch (line 793) | interface FileSearch {
  type ToolResources (line 808) | interface ToolResources {
  type CodeInterpreter (line 815) | interface CodeInterpreter {
  type FileSearch (line 824) | interface FileSearch {
  type VectorStore (line 843) | interface VectorStore {
  type Auto (line 874) | interface Auto {
  type Static (line 881) | interface Static {
  type Static (line 891) | interface Static {
  type ToolResources (line 917) | interface ToolResources {
  type CodeInterpreter (line 924) | interface CodeInterpreter {
  type FileSearch (line 933) | interface FileSearch {
  type TruncationStrategy (line 948) | interface TruncationStrategy {
  type ThreadCreateAndRunParamsNonStreaming (line 964) | type ThreadCreateAndRunParamsNonStreaming = ThreadsAPI.ThreadCreateAndRu...
  type ThreadCreateAndRunParamsStreaming (line 965) | type ThreadCreateAndRunParamsStreaming = ThreadsAPI.ThreadCreateAndRunPa...
  type ThreadCreateAndRunParamsNonStreaming (line 968) | interface ThreadCreateAndRunParamsNonStreaming extends ThreadCreateAndRu...
  type ThreadCreateAndRunParamsStreaming (line 977) | interface ThreadCreateAndRunParamsStreaming extends ThreadCreateAndRunPa...
  type ThreadCreateAndRunPollParams (line 986) | interface ThreadCreateAndRunPollParams {
  type Thread (line 1134) | interface Thread {
  type Message (line 1159) | interface Message {
  type Attachment (line 1190) | interface Attachment {
  type ToolResources (line 1209) | interface ToolResources {
  type CodeInterpreter (line 1216) | interface CodeInterpreter {
  type FileSearch (line 1225) | interface FileSearch {
  type VectorStore (line 1244) | interface VectorStore {
  type ToolResources (line 1270) | interface ToolResources {
  type CodeInterpreter (line 1277) | interface CodeInterpreter {
  type FileSearch (line 1286) | interface FileSearch {
  type TruncationStrategy (line 1301) | interface TruncationStrategy {
  type ThreadCreateAndRunStreamParams (line 1318) | type ThreadCreateAndRunStreamParams = ThreadCreateAndRunParamsBaseStream;

FILE: src/resources/chat/chat.ts
  class Chat (line 53) | class Chat extends APIResource {
  type ChatModel (line 57) | type ChatModel = Shared.ChatModel;

FILE: src/resources/chat/completions/completions.ts
  class Completions (line 26) | class Completions extends APIResource {
    method create (line 70) | create(
    method retrieve (line 89) | retrieve(completionID: string, options?: RequestOptions): APIPromise<C...
    method update (line 106) | update(
    method list (line 126) | list(
    method delete (line 143) | delete(completionID: string, options?: RequestOptions): APIPromise<Cha...
    method parse (line 147) | parse<Params extends ChatCompletionParseParams, ParsedT = ExtractParse...
    method runTools (line 183) | runTools<
    method stream (line 204) | stream<Params extends ChatCompletionStreamParams, ParsedT = ExtractPar...
  type ParsedFunction (line 212) | interface ParsedFunction extends ChatCompletionMessageFunctionToolCall.F...
  type ParsedFunctionToolCall (line 216) | interface ParsedFunctionToolCall extends ChatCompletionMessageFunctionTo...
  type ParsedChatCompletionMessage (line 220) | interface ParsedChatCompletionMessage<ParsedT> extends ChatCompletionMes...
  type ParsedChoice (line 225) | interface ParsedChoice<ParsedT> extends ChatCompletion.Choice {
  type ParsedChatCompletion (line 229) | interface ParsedChatCompletion<ParsedT> extends ChatCompletion {
  type ChatCompletionParseParams (line 233) | type ChatCompletionParseParams = ChatCompletionCreateParamsNonStreaming;
  type ChatCompletionsPage (line 246) | type ChatCompletionsPage = CursorPage<ChatCompletion>;
  type ChatCompletionStoreMessagesPage (line 248) | type ChatCompletionStoreMessagesPage = CursorPage<ChatCompletionStoreMes...
  type ChatCompletion (line 254) | interface ChatCompletion {
  type Choice (line 317) | interface Choice {
  type Logprobs (line 348) | interface Logprobs {
  type ChatCompletionAllowedToolChoice (line 365) | interface ChatCompletionAllowedToolChoice {
  type ChatCompletionAssistantMessageParam (line 380) | interface ChatCompletionAssistantMessageParam {
  type Audio (line 426) | interface Audio {
  type FunctionCall (line 437) | interface FunctionCall {
  type ChatCompletionAudio (line 458) | interface ChatCompletionAudio {
  type ChatCompletionAudioParam (line 487) | interface ChatCompletionAudioParam {
  type ID (line 519) | interface ID {
  type ChatCompletionChunk (line 532) | interface ChatCompletionChunk {
  type Choice (line 601) | interface Choice {
  type Delta (line 632) | interface Delta {
  type FunctionCall (line 662) | interface FunctionCall {
  type ToolCall (line 677) | interface ToolCall {
  type Function (line 694) | interface Function {
  type Logprobs (line 714) | interface Logprobs {
  type ChatCompletionContentPart (line 732) | type ChatCompletionContentPart =
  type File (line 743) | interface File {
  type File (line 753) | interface File {
  type ChatCompletionContentPartImage (line 776) | interface ChatCompletionContentPartImage {
  type ImageURL (line 786) | interface ImageURL {
  type ChatCompletionContentPartInputAudio (line 803) | interface ChatCompletionContentPartInputAudio {
  type InputAudio (line 813) | interface InputAudio {
  type ChatCompletionContentPartRefusal (line 826) | interface ChatCompletionContentPartRefusal {
  type ChatCompletionContentPartText (line 842) | interface ChatCompletionContentPartText {
  type ChatCompletionCustomTool (line 857) | interface ChatCompletionCustomTool {
  type Custom (line 873) | interface Custom {
  type Text (line 894) | interface Text {
  type Grammar (line 904) | interface Grammar {
  type Grammar (line 920) | interface Grammar {
  type ChatCompletionDeleted (line 935) | interface ChatCompletionDeleted {
  type ChatCompletionDeveloperMessageParam (line 957) | interface ChatCompletionDeveloperMessageParam {
  type ChatCompletionFunctionCallOption (line 979) | interface ChatCompletionFunctionCallOption {
  type ChatCompletionFunctionMessageParam (line 989) | interface ChatCompletionFunctionMessageParam {
  type ChatCompletionFunctionTool (line 1009) | interface ChatCompletionFunctionTool {
  type ChatCompletionMessage (line 1021) | interface ChatCompletionMessage {
  type Annotation (line 1066) | interface Annotation {
  type URLCitation (line 1082) | interface URLCitation {
  type FunctionCall (line 1109) | interface FunctionCall {
  type ChatCompletionMessageCustomToolCall (line 1128) | interface ChatCompletionMessageCustomToolCall {
  type Custom (line 1149) | interface Custom {
  type ChatCompletionMessageFunctionToolCall (line 1165) | interface ChatCompletionMessageFunctionToolCall {
  type Function (line 1186) | interface Function {
  type ChatCompletionMessageParam (line 1207) | type ChatCompletionMessageParam =
  type ChatCompletionMessageToolCall (line 1218) | type ChatCompletionMessageToolCall =
  type ChatCompletionModality (line 1222) | type ChatCompletionModality = 'text' | 'audio';
  type ChatCompletionNamedToolChoice (line 1228) | interface ChatCompletionNamedToolChoice {
  type Function (line 1238) | interface Function {
  type ChatCompletionNamedToolChoiceCustom (line 1250) | interface ChatCompletionNamedToolChoiceCustom {
  type Custom (line 1260) | interface Custom {
  type ChatCompletionPredictionContent (line 1272) | interface ChatCompletionPredictionContent {
  type ChatCompletionRole (line 1290) | type ChatCompletionRole = 'developer' | 'system' | 'user' | 'assistant' ...
  type ChatCompletionStoreMessage (line 1295) | interface ChatCompletionStoreMessage extends ChatCompletionMessage {
  type ChatCompletionStreamOptions (line 1311) | interface ChatCompletionStreamOptions {
  type ChatCompletionSystemMessageParam (line 1339) | interface ChatCompletionSystemMessageParam {
  type ChatCompletionTokenLogprob (line 1357) | interface ChatCompletionTokenLogprob {
  type TopLogprob (line 1387) | interface TopLogprob {
  type ChatCompletionTool (line 1413) | type ChatCompletionTool = ChatCompletionFunctionTool | ChatCompletionCus...
  type ChatCompletionToolChoiceOption (line 1426) | type ChatCompletionToolChoiceOption =
  type ChatCompletionToolMessageParam (line 1434) | interface ChatCompletionToolMessageParam {
  type ChatCompletionUserMessageParam (line 1455) | interface ChatCompletionUserMessageParam {
  type ChatCompletionAllowedTools (line 1476) | interface ChatCompletionAllowedTools {
  type ChatCompletionReasoningEffort (line 1502) | type ChatCompletionReasoningEffort = Shared.ReasoningEffort | null;
  type ChatCompletionCreateParams (line 1504) | type ChatCompletionCreateParams =
  type ChatCompletionCreateParamsBase (line 1508) | interface ChatCompletionCreateParamsBase {
  type Function (line 1850) | interface Function {
  type WebSearchOptions (line 1880) | interface WebSearchOptions {
  type UserLocation (line 1897) | interface UserLocation {
  type Approximate (line 1913) | interface Approximate {
  type ChatCompletionCreateParamsNonStreaming (line 1939) | type ChatCompletionCreateParamsNonStreaming =
  type ChatCompletionCreateParamsStreaming (line 1941) | type ChatCompletionCreateParamsStreaming = ChatCompletionsAPI.ChatComple...
  type ChatCompletionCreateParamsNonStreaming (line 1944) | interface ChatCompletionCreateParamsNonStreaming extends ChatCompletionC...
  type ChatCompletionCreateParamsStreaming (line 1958) | interface ChatCompletionCreateParamsStreaming extends ChatCompletionCrea...
  type ChatCompletionUpdateParams (line 1972) | interface ChatCompletionUpdateParams {
  type ChatCompletionListParams (line 1984) | interface ChatCompletionListParams extends CursorPageParams {

FILE: src/resources/chat/completions/messages.ts
  class Messages (line 13) | class Messages extends APIResource {
    method list (line 28) | list(
  type MessageListParams (line 41) | interface MessageListParams extends CursorPageParams {

FILE: src/resources/completions.ts
  class Completions (line 13) | class Completions extends APIResource {
    method create (line 34) | create(
  type Completion (line 48) | interface Completion {
  type CompletionChoice (line 88) | interface CompletionChoice {
  type Logprobs (line 105) | interface Logprobs {
  type CompletionUsage (line 119) | interface CompletionUsage {
  type CompletionTokensDetails (line 150) | interface CompletionTokensDetails {
  type PromptTokensDetails (line 179) | interface PromptTokensDetails {
  type CompletionCreateParams (line 192) | type CompletionCreateParams = CompletionCreateParamsNonStreaming | Compl...
  type CompletionCreateParamsBase (line 194) | interface CompletionCreateParamsBase {
  type CompletionCreateParamsNonStreaming (line 363) | type CompletionCreateParamsNonStreaming = CompletionsAPI.CompletionCreat...
  type CompletionCreateParamsStreaming (line 364) | type CompletionCreateParamsStreaming = CompletionsAPI.CompletionCreatePa...
  type CompletionCreateParamsNonStreaming (line 367) | interface CompletionCreateParamsNonStreaming extends CompletionCreatePar...
  type CompletionCreateParamsStreaming (line 379) | interface CompletionCreateParamsStreaming extends CompletionCreateParams...

FILE: src/resources/containers/containers.ts
  class Containers (line 23) | class Containers extends APIResource {
    method create (line 29) | create(body: ContainerCreateParams, options?: RequestOptions): APIProm...
    method retrieve (line 36) | retrieve(containerID: string, options?: RequestOptions): APIPromise<Co...
    method list (line 43) | list(
    method delete (line 53) | delete(containerID: string, options?: RequestOptions): APIPromise<void> {
  type ContainerListResponsesPage (line 61) | type ContainerListResponsesPage = CursorPage<ContainerListResponse>;
  type ContainerCreateResponse (line 63) | interface ContainerCreateResponse {
  type ExpiresAfter (line 118) | interface ExpiresAfter {
  type NetworkPolicy (line 133) | interface NetworkPolicy {
  type ContainerRetrieveResponse (line 146) | interface ContainerRetrieveResponse {
  type ExpiresAfter (line 201) | interface ExpiresAfter {
  type NetworkPolicy (line 216) | interface NetworkPolicy {
  type ContainerListResponse (line 229) | interface ContainerListResponse {
  type ExpiresAfter (line 284) | interface ExpiresAfter {
  type NetworkPolicy (line 299) | interface NetworkPolicy {
  type ContainerCreateParams (line 312) | interface ContainerCreateParams {
  type ExpiresAfter (line 348) | interface ExpiresAfter {
  type ContainerListParams (line 359) | interface ContainerListParams extends CursorPageParams {

FILE: src/resources/containers/files/content.ts
  class Content (line 9) | class Content extends APIResource {
    method retrieve (line 13) | retrieve(fileID: string, params: ContentRetrieveParams, options?: Requ...
  type ContentRetrieveParams (line 23) | interface ContentRetrieveParams {

FILE: src/resources/containers/files/files.ts
  class Files (line 14) | class Files extends APIResource {
    method create (line 23) | create(
    method retrieve (line 37) | retrieve(
    method list (line 49) | list(
    method delete (line 63) | delete(fileID: string, params: FileDeleteParams, options?: RequestOpti...
  type FileListResponsesPage (line 72) | type FileListResponsesPage = CursorPage<FileListResponse>;
  type FileCreateResponse (line 74) | interface FileCreateResponse {
  type FileRetrieveResponse (line 111) | interface FileRetrieveResponse {
  type FileListResponse (line 148) | interface FileListResponse {
  type FileCreateParams (line 185) | interface FileCreateParams {
  type FileRetrieveParams (line 197) | interface FileRetrieveParams {
  type FileListParams (line 201) | interface FileListParams extends CursorPageParams {
  type FileDeleteParams (line 209) | interface FileDeleteParams {

FILE: src/resources/conversations/conversations.ts
  class Conversations (line 24) | class Conversations extends APIResource {
    method create (line 30) | create(
    method retrieve (line 40) | retrieve(conversationID: string, options?: RequestOptions): APIPromise...
    method update (line 47) | update(
    method delete (line 58) | delete(conversationID: string, options?: RequestOptions): APIPromise<C...
  type ComputerScreenshotContent (line 66) | interface ComputerScreenshotContent {
  type Conversation (line 90) | interface Conversation {
  type ConversationDeleted (line 117) | interface ConversationDeleted {
  type ConversationDeletedResource (line 125) | interface ConversationDeletedResource {
  type Message (line 136) | interface Message {
  type ReasoningText (line 179) | interface ReasoningText {
  type SummaryTextContent (line 195) | interface SummaryTextContent {
  type TextContent (line 210) | interface TextContent {
  type InputTextContent (line 216) | type InputTextContent = ResponsesAPI.ResponseInputText;
  type OutputTextContent (line 218) | type OutputTextContent = ResponsesAPI.ResponseOutputText;
  type RefusalContent (line 220) | type RefusalContent = ResponsesAPI.ResponseOutputRefusal;
  type InputImageContent (line 222) | type InputImageContent = ResponsesAPI.ResponseInputImage;
  type InputFileContent (line 224) | type InputFileContent = ResponsesAPI.ResponseInputFile;
  type ConversationCreateParams (line 226) | interface ConversationCreateParams {
  type ConversationUpdateParams (line 244) | interface ConversationUpdateParams {

FILE: src/resources/conversations/items.ts
  class Items (line 18) | class Items extends APIResource {
    method create (line 22) | create(
    method retrieve (line 38) | retrieve(
    method list (line 50) | list(
    method delete (line 65) | delete(
  type ConversationItemsPage (line 75) | type ConversationItemsPage = ConversationCursorPage<ConversationItem>;
  type ConversationItem (line 82) | type ConversationItem =
  type ImageGenerationCall (line 112) | interface ImageGenerationCall {
  type LocalShellCall (line 137) | interface LocalShellCall {
  type Action (line 168) | interface Action {
  type LocalShellCallOutput (line 204) | interface LocalShellCallOutput {
  type McpListTools (line 229) | interface McpListTools {
  type Tool (line 260) | interface Tool {
  type McpApprovalRequest (line 286) | interface McpApprovalRequest {
  type McpApprovalResponse (line 316) | interface McpApprovalResponse {
  type McpCall (line 346) | interface McpCall {
  type ConversationItemList (line 400) | interface ConversationItemList {
  type ItemCreateParams (line 427) | interface ItemCreateParams {
  type ItemRetrieveParams (line 443) | interface ItemRetrieveParams {
  type ItemListParams (line 458) | interface ItemListParams extends ConversationCursorPageParams {
  type ItemDeleteParams (line 490) | interface ItemDeleteParams {

FILE: src/resources/embeddings.ts
  class Embeddings (line 11) | class Embeddings extends APIResource {
    method create (line 24) | create(body: EmbeddingCreateParams, options?: RequestOptions): APIProm...
  type CreateEmbeddingResponse (line 67) | interface CreateEmbeddingResponse {
  type Usage (line 93) | interface Usage {
  type Embedding (line 109) | interface Embedding {
  type EmbeddingModel (line 128) | type EmbeddingModel = 'text-embedding-ada-002' | 'text-embedding-3-small...
  type EmbeddingCreateParams (line 130) | interface EmbeddingCreateParams {

FILE: src/resources/evals/evals.ts
  class Evals (line 33) | class Evals extends APIResource {
    method create (line 44) | create(body: EvalCreateParams, options?: RequestOptions): APIPromise<E...
    method retrieve (line 51) | retrieve(evalID: string, options?: RequestOptions): APIPromise<EvalRet...
    method update (line 58) | update(evalID: string, body: EvalUpdateParams, options?: RequestOption...
    method list (line 65) | list(
    method delete (line 75) | delete(evalID: string, options?: RequestOptions): APIPromise<EvalDelet...
  type EvalListResponsesPage (line 80) | type EvalListResponsesPage = CursorPage<EvalListResponse>;
  type EvalCustomDataSourceConfig (line 90) | interface EvalCustomDataSourceConfig {
  type EvalStoredCompletionsDataSourceConfig (line 106) | interface EvalStoredCompletionsDataSourceConfig {
  type EvalCreateResponse (line 137) | interface EvalCreateResponse {
  type Logs (line 196) | interface Logs {
  type EvalGraderTextSimilarity (line 222) | interface EvalGraderTextSimilarity extends GraderModelsAPI.TextSimilarit...
  type EvalGraderPython (line 232) | interface EvalGraderPython extends GraderModelsAPI.PythonGrader {
  type EvalGraderScoreModel (line 242) | interface EvalGraderScoreModel extends GraderModelsAPI.ScoreModelGrader {
  type EvalRetrieveResponse (line 258) | interface EvalRetrieveResponse {
  type Logs (line 317) | interface Logs {
  type EvalGraderTextSimilarity (line 343) | interface EvalGraderTextSimilarity extends GraderModelsAPI.TextSimilarit...
  type EvalGraderPython (line 353) | interface EvalGraderPython extends GraderModelsAPI.PythonGrader {
  type EvalGraderScoreModel (line 363) | interface EvalGraderScoreModel extends GraderModelsAPI.ScoreModelGrader {
  type EvalUpdateResponse (line 379) | interface EvalUpdateResponse {
  type Logs (line 438) | interface Logs {
  type EvalGraderTextSimilarity (line 464) | interface EvalGraderTextSimilarity extends GraderModelsAPI.TextSimilarit...
  type EvalGraderPython (line 474) | interface EvalGraderPython extends GraderModelsAPI.PythonGrader {
  type EvalGraderScoreModel (line 484) | interface EvalGraderScoreModel extends GraderModelsAPI.ScoreModelGrader {
  type EvalListResponse (line 500) | interface EvalListResponse {
  type Logs (line 559) | interface Logs {
  type EvalGraderTextSimilarity (line 585) | interface EvalGraderTextSimilarity extends GraderModelsAPI.TextSimilarit...
  type EvalGraderPython (line 595) | interface EvalGraderPython extends GraderModelsAPI.PythonGrader {
  type EvalGraderScoreModel (line 605) | interface EvalGraderScoreModel extends GraderModelsAPI.ScoreModelGrader {
  type EvalDeleteResponse (line 613) | interface EvalDeleteResponse {
  type EvalCreateParams (line 621) | interface EvalCreateParams {
  type Custom (line 667) | interface Custom {
  type Logs (line 689) | interface Logs {
  type StoredCompletions (line 704) | interface StoredCompletions {
  type LabelModel (line 720) | interface LabelModel {
  type SimpleInputMessage (line 754) | interface SimpleInputMessage {
  type EvalItem (line 773) | interface EvalItem {
  type OutputText (line 802) | interface OutputText {
  type InputImage (line 817) | interface InputImage {
  type TextSimilarity (line 840) | interface TextSimilarity extends GraderModelsAPI.TextSimilarityGrader {
  type Python (line 850) | interface Python extends GraderModelsAPI.PythonGrader {
  type ScoreModel (line 860) | interface ScoreModel extends GraderModelsAPI.ScoreModelGrader {
  type EvalUpdateParams (line 868) | interface EvalUpdateParams {
  type EvalListParams (line 885) | interface EvalListParams extends CursorPageParams {

FILE: src/resources/evals/runs/output-items.ts
  class OutputItems (line 13) | class OutputItems extends APIResource {
    method retrieve (line 17) | retrieve(
    method list (line 29) | list(
  type OutputItemListResponsesPage (line 43) | type OutputItemListResponsesPage = CursorPage<OutputItemListResponse>;
  type OutputItemRetrieveResponse (line 48) | interface OutputItemRetrieveResponse {
  type Result (line 104) | interface Result {
  type Sample (line 136) | interface Sample {
  type Input (line 192) | interface Input {
  type Output (line 204) | interface Output {
  type Usage (line 219) | interface Usage {
  type OutputItemListResponse (line 246) | interface OutputItemListResponse {
  type Result (line 302) | interface Result {
  type Sample (line 334) | interface Sample {
  type Input (line 390) | interface Input {
  type Output (line 402) | interface Output {
  type Usage (line 417) | interface Usage {
  type OutputItemRetrieveParams (line 441) | interface OutputItemRetrieveParams {
  type OutputItemListParams (line 453) | interface OutputItemListParams extends CursorPageParams {

FILE: src/resources/evals/runs/runs.ts
  class Runs (line 25) | class Runs extends APIResource {
    method create (line 33) | create(evalID: string, body: RunCreateParams, options?: RequestOptions...
    method retrieve (line 40) | retrieve(
    method list (line 52) | list(
    method delete (line 66) | delete(runID: string, params: RunDeleteParams, options?: RequestOption...
    method cancel (line 74) | cancel(runID: string, params: RunCancelParams, options?: RequestOption...
  type RunListResponsesPage (line 80) | type RunListResponsesPage = CursorPage<RunListResponse>;
  type CreateEvalCompletionsRunDataSource (line 85) | interface CreateEvalCompletionsRunDataSource {
  type FileContent (line 118) | interface FileContent {
  type Content (line 131) | interface Content {
  type FileID (line 138) | interface FileID {
  type StoredCompletions (line 153) | interface StoredCompletions {
  type Template (line 190) | interface Template {
  type EvalItem (line 211) | interface EvalItem {
  type OutputText (line 240) | interface OutputText {
  type InputImage (line 255) | interface InputImage {
  type ItemReference (line 275) | interface ItemReference {
  type SamplingParams (line 287) | interface SamplingParams {
  type CreateEvalJSONLRunDataSource (line 355) | interface CreateEvalJSONLRunDataSource {
  type FileContent (line 368) | interface FileContent {
  type Content (line 381) | interface Content {
  type FileID (line 388) | interface FileID {
  type EvalAPIError (line 404) | interface EvalAPIError {
  type RunCreateResponse (line 419) | interface RunCreateResponse {
  type Responses (line 503) | interface Responses {
  type FileContent (line 531) | interface FileContent {
  type Content (line 544) | interface Content {
  type FileID (line 551) | interface FileID {
  type Responses (line 566) | interface Responses {
  type Template (line 640) | interface Template {
  type ChatMessage (line 654) | interface ChatMessage {
  type EvalItem (line 673) | interface EvalItem {
  type OutputText (line 702) | interface OutputText {
  type InputImage (line 717) | interface InputImage {
  type ItemReference (line 737) | interface ItemReference {
  type SamplingParams (line 749) | interface SamplingParams {
  type Text (line 823) | interface Text {
  type PerModelUsage (line 844) | interface PerModelUsage {
  type PerTestingCriteriaResult (line 876) | interface PerTestingCriteriaResult {
  type ResultCounts (line 896) | interface ResultCounts {
  type RunRetrieveResponse (line 922) | interface RunRetrieveResponse {
  type Responses (line 1006) | interface Responses {
  type FileContent (line 1034) | interface FileContent {
  type Content (line 1047) | interface Content {
  type FileID (line 1054) | interface FileID {
  type Responses (line 1069) | interface Responses {
  type Template (line 1143) | interface Template {
  type ChatMessage (line 1157) | interface ChatMessage {
  type EvalItem (line 1176) | interface EvalItem {
  type OutputText (line 1205) | interface OutputText {
  type InputImage (line 1220) | interface InputImage {
  type ItemReference (line 1240) | interface ItemReference {
  type SamplingParams (line 1252) | interface SamplingParams {
  type Text (line 1326) | interface Text {
  type PerModelUsage (line 1347) | interface PerModelUsage {
  type PerTestingCriteriaResult (line 1379) | interface PerTestingCriteriaResult {
  type ResultCounts (line 1399) | interface ResultCounts {
  type RunListResponse (line 1425) | interface RunListResponse {
  type Responses (line 1506) | interface Responses {
  type FileContent (line 1534) | interface FileContent {
  type Content (line 1547) | interface Content {
  type FileID (line 1554) | interface FileID {
  type Responses (line 1569) | interface Responses {
  type Template (line 1643) | interface Template {
  type ChatMessage (line 1657) | interface ChatMessage {
  type EvalItem (line 1676) | interface EvalItem {
  type OutputText (line 1705) | interface OutputText {
  type InputImage (line 1720) | interface InputImage {
  type ItemReference (line 1740) | interface ItemReference {
  type SamplingParams (line 1752) | interface SamplingParams {
  type Text (line 1826) | interface Text {
  type PerModelUsage (line 1847) | interface PerModelUsage {
  type PerTestingCriteriaResult (line 1879) | interface PerTestingCriteriaResult {
  type ResultCounts (line 1899) | interface ResultCounts {
  type RunDeleteResponse (line 1922) | interface RunDeleteResponse {
  type RunCancelResponse (line 1933) | interface RunCancelResponse {
  type Responses (line 2017) | interface Responses {
  type FileContent (line 2045) | interface FileContent {
  type Content (line 2058) | interface Content {
  type FileID (line 2065) | interface FileID {
  type Responses (line 2080) | interface Responses {
  type Template (line 2154) | interface Template {
  type ChatMessage (line 2168) | interface ChatMessage {
  type EvalItem (line 2187) | interface EvalItem {
  type OutputText (line 2216) | interface OutputText {
  type InputImage (line 2231) | interface InputImage {
  type ItemReference (line 2251) | interface ItemReference {
  type SamplingParams (line 2263) | interface SamplingParams {
  type Text (line 2337) | interface Text {
  type PerModelUsage (line 2358) | interface PerModelUsage {
  type PerTestingCriteriaResult (line 2390) | interface PerTestingCriteriaResult {
  type ResultCounts (line 2410) | interface ResultCounts {
  type RunCreateParams (line 2433) | interface RunCreateParams {
  type CreateEvalResponsesRunDataSource (line 2462) | interface CreateEvalResponsesRunDataSource {
  type FileContent (line 2495) | interface FileContent {
  type Content (line 2508) | interface Content {
  type FileID (line 2515) | interface FileID {
  type Responses (line 2530) | interface Responses {
  type Template (line 2604) | interface Template {
  type ChatMessage (line 2618) | interface ChatMessage {
  type EvalItem (line 2637) | interface EvalItem {
  type OutputText (line 2666) | interface OutputText {
  type InputImage (line 2681) | interface InputImage {
  type ItemReference (line 2701) | interface ItemReference {
  type SamplingParams (line 2713) | interface SamplingParams {
  type Text (line 2787) | interface Text {
  type RunRetrieveParams (line 2809) | interface RunRetrieveParams {
  type RunListParams (line 2816) | interface RunListParams extends CursorPageParams {
  type RunDeleteParams (line 2830) | interface RunDeleteParams {
  type RunCancelParams (line 2837) | interface RunCancelParams {

FILE: src/resources/files.ts
  class Files (line 17) | class Files extends APIResource {
    method create (line 40) | create(body: FileCreateParams, options?: RequestOptions): APIPromise<F...
    method retrieve (line 47) | retrieve(fileID: string, options?: RequestOptions): APIPromise<FileObj...
    method list (line 54) | list(
    method delete (line 64) | delete(fileID: string, options?: RequestOptions): APIPromise<FileDelet...
    method content (line 71) | content(fileID: string, options?: RequestOptions): APIPromise<Response> {
    method waitForProcessing (line 82) | async waitForProcessing(
  type FileObjectsPage (line 106) | type FileObjectsPage = CursorPage<FileObject>;
  type FileContent (line 108) | type FileContent = string;
  type FileDeleted (line 110) | interface FileDeleted {
  type FileObject (line 121) | interface FileObject {
  type FilePurpose (line 190) | type FilePurpose = 'assistants' | 'batch' | 'fine-tune' | 'vision' | 'us...
  type FileCreateParams (line 192) | interface FileCreateParams {
  type ExpiresAfter (line 222) | interface ExpiresAfter {
  type FileListParams (line 237) | interface FileListParams extends CursorPageParams {

FILE: src/resources/fine-tuning/alpha/alpha.ts
  class Alpha (line 13) | class Alpha extends APIResource {

FILE: src/resources/fine-tuning/alpha/graders.ts
  class Graders (line 11) | class Graders extends APIResource {
    method run (line 29) | run(body: GraderRunParams, options?: RequestOptions): APIPromise<Grade...
    method validate (line 50) | validate(body: GraderValidateParams, options?: RequestOptions): APIPro...
  type GraderRunResponse (line 55) | interface GraderRunResponse {
  type Metadata (line 66) | interface Metadata {
  type Errors (line 83) | interface Errors {
  type GraderValidateResponse (line 115) | interface GraderValidateResponse {
  type GraderRunParams (line 127) | interface GraderRunParams {
  type GraderValidateParams (line 155) | interface GraderValidateParams {

FILE: src/resources/fine-tuning/checkpoints/checkpoints.ts
  class Checkpoints (line 19) | class Checkpoints extends APIResource {

FILE: src/resources/fine-tuning/checkpoints/permissions.ts
  class Permissions (line 17) | class Permissions extends APIResource {
    method create (line 35) | create(
    method retrieve (line 55) | retrieve(
    method list (line 82) | list(
    method delete (line 112) | delete(
  type PermissionCreateResponsesPage (line 126) | type PermissionCreateResponsesPage = Page<PermissionCreateResponse>;
  type PermissionListResponsesPage (line 128) | type PermissionListResponsesPage = ConversationCursorPage<PermissionList...
  type PermissionCreateResponse (line 134) | interface PermissionCreateResponse {
  type PermissionRetrieveResponse (line 156) | interface PermissionRetrieveResponse {
  type Data (line 173) | interface Data {
  type PermissionListResponse (line 200) | interface PermissionListResponse {
  type PermissionDeleteResponse (line 222) | interface PermissionDeleteResponse {
  type PermissionCreateParams (line 239) | interface PermissionCreateParams {
  type PermissionRetrieveParams (line 246) | interface PermissionRetrieveParams {
  type PermissionListParams (line 268) | interface PermissionListParams extends ConversationCursorPageParams {
  type PermissionDeleteParams (line 280) | interface PermissionDeleteParams {

FILE: src/resources/fine-tuning/fine-tuning.ts
  class FineTuning (line 33) | class FineTuning extends APIResource {

FILE: src/resources/fine-tuning/jobs/checkpoints.ts
  class Checkpoints (line 11) | class Checkpoints extends APIResource {
    method list (line 25) | list(
  type FineTuningJobCheckpointsPage (line 38) | type FineTuningJobCheckpointsPage = CursorPage<FineTuningJobCheckpoint>;
  type FineTuningJobCheckpoint (line 44) | interface FineTuningJobCheckpoint {
  type Metrics (line 85) | interface Metrics {
  type CheckpointListParams (line 102) | interface CheckpointListParams extends CursorPageParams {}

FILE: src/resources/fine-tuning/jobs/jobs.ts
  class Jobs (line 21) | class Jobs extends APIResource {
    method create (line 41) | create(body: JobCreateParams, options?: RequestOptions): APIPromise<Fi...
    method retrieve (line 57) | retrieve(fineTuningJobID: string, options?: RequestOptions): APIPromis...
    method list (line 72) | list(
    method cancel (line 89) | cancel(fineTuningJobID: string, options?: RequestOptions): APIPromise<...
    method listEvents (line 106) | listEvents(
    method pause (line 128) | pause(fineTuningJobID: string, options?: RequestOptions): APIPromise<F...
    method resume (line 142) | resume(fineTuningJobID: string, options?: RequestOptions): APIPromise<...
  type FineTuningJobsPage (line 147) | type FineTuningJobsPage = CursorPage<FineTuningJob>;
  type FineTuningJobEventsPage (line 149) | type FineTuningJobEventsPage = CursorPage<FineTuningJobEvent>;
  type FineTuningJob (line 155) | interface FineTuningJob {
  type Error (line 274) | interface Error {
  type Hyperparameters (line 296) | interface Hyperparameters {
  type Method (line 319) | interface Method {
  type FineTuningJobEvent (line 345) | interface FineTuningJobEvent {
  type FineTuningJobWandbIntegration (line 388) | interface FineTuningJobWandbIntegration {
  type FineTuningJobWandbIntegrationObject (line 415) | interface FineTuningJobWandbIntegrationObject {
  type FineTuningJobIntegration (line 430) | type FineTuningJobIntegration = FineTuningJobWandbIntegrationObject;
  type JobCreateParams (line 432) | interface JobCreateParams {
  type Hyperparameters (line 528) | interface Hyperparameters {
  type Integration (line 548) | interface Integration {
  type Wandb (line 571) | interface Wandb {
  type Method (line 602) | interface Method {
  type JobListParams (line 625) | interface JobListParams extends CursorPageParams {
  type JobListEventsParams (line 633) | interface JobListEventsParams extends CursorPageParams {}

FILE: src/resources/fine-tuning/methods.ts
  class Methods (line 6) | class Methods extends APIResource {}
  type DpoHyperparameters (line 11) | interface DpoHyperparameters {
  type DpoMethod (line 40) | interface DpoMethod {
  type ReinforcementHyperparameters (line 50) | interface ReinforcementHyperparameters {
  type ReinforcementMethod (line 93) | interface ReinforcementMethod {
  type SupervisedHyperparameters (line 113) | interface SupervisedHyperparameters {
  type SupervisedMethod (line 136) | interface SupervisedMethod {

FILE: src/resources/graders/grader-models.ts
  class GraderModels (line 8) | class GraderModels extends APIResource {}
  type GraderInputs (line 14) | type GraderInputs = Array<
  type OutputText (line 26) | interface OutputText {
  type InputImage (line 41) | interface InputImage {
  type LabelModelGrader (line 64) | interface LabelModelGrader {
  type Input (line 101) | interface Input {
  type OutputText (line 130) | interface OutputText {
  type InputImage (line 145) | interface InputImage {
  type MultiGrader (line 169) | interface MultiGrader {
  type PythonGrader (line 195) | interface PythonGrader {
  type ScoreModelGrader (line 220) | interface ScoreModelGrader {
  type Input (line 261) | interface Input {
  type OutputText (line 290) | interface OutputText {
  type InputImage (line 305) | interface InputImage {
  type SamplingParams (line 327) | interface SamplingParams {
  type StringCheckGrader (line 371) | interface StringCheckGrader {
  type TextSimilarityGrader (line 401) | interface TextSimilarityGrader {

FILE: src/resources/graders/graders.ts
  class Graders (line 16) | class Graders extends APIResource {

FILE: src/resources/images.ts
  class Images (line 14) | class Images extends APIResource {
    method createVariation (line 25) | createVariation(body: ImageCreateVariationParams, options?: RequestOpt...
    method edit (line 51) | edit(
    method generate (line 81) | generate(
  type Image (line 94) | interface Image {
  type ImageEditCompletedEvent (line 118) | interface ImageEditCompletedEvent {
  type Usage (line 166) | interface Usage {
  type InputTokensDetails (line 192) | interface InputTokensDetails {
  type ImageEditPartialImageEvent (line 209) | interface ImageEditPartialImageEvent {
  type ImageEditStreamEvent (line 254) | type ImageEditStreamEvent = ImageEditPartialImageEvent | ImageEditComple...
  type ImageGenCompletedEvent (line 259) | interface ImageGenCompletedEvent {
  type Usage (line 307) | interface Usage {
  type InputTokensDetails (line 333) | interface InputTokensDetails {
  type ImageGenPartialImageEvent (line 350) | interface ImageGenPartialImageEvent {
  type ImageGenStreamEvent (line 395) | type ImageGenStreamEvent = ImageGenPartialImageEvent | ImageGenCompleted...
  type ImageModel (line 397) | type ImageModel = 'gpt-image-1.5' | 'dall-e-2' | 'dall-e-3' | 'gpt-image...
  type ImagesResponse (line 402) | interface ImagesResponse {
  type Usage (line 445) | interface Usage {
  type InputTokensDetails (line 476) | interface InputTokensDetails {
  type OutputTokensDetails (line 491) | interface OutputTokensDetails {
  type ImageCreateVariationParams (line 505) | interface ImageCreateVariationParams {
  type ImageEditParams (line 544) | type ImageEditParams = ImageEditParamsNonStreaming | ImageEditParamsStre...
  type ImageEditParamsBase (line 546) | interface ImageEditParamsBase {
  type ImageEditParamsNonStreaming (line 664) | type ImageEditParamsNonStreaming = ImagesAPI.ImageEditParamsNonStreaming;
  type ImageEditParamsStreaming (line 665) | type ImageEditParamsStreaming = ImagesAPI.ImageEditParamsStreaming;
  type ImageEditParamsNonStreaming (line 668) | interface ImageEditParamsNonStreaming extends ImageEditParamsBase {
  type ImageEditParamsStreaming (line 677) | interface ImageEditParamsStreaming extends ImageEditParamsBase {
  type ImageGenerateParams (line 686) | type ImageGenerateParams = ImageGenerateParamsNonStreaming | ImageGenera...
  type ImageGenerateParamsBase (line 688) | interface ImageGenerateParamsBase {
  type ImageGenerateParamsNonStreaming (line 810) | type ImageGenerateParamsNonStreaming = ImagesAPI.ImageGenerateParamsNonS...
  type ImageGenerateParamsStreaming (line 811) | type ImageGenerateParamsStreaming = ImagesAPI.ImageGenerateParamsStreaming;
  type ImageGenerateParamsNonStreaming (line 814) | interface ImageGenerateParamsNonStreaming extends ImageGenerateParamsBase {
  type ImageGenerateParamsStreaming (line 823) | interface ImageGenerateParamsStreaming extends ImageGenerateParamsBase {

FILE: src/resources/models.ts
  class Models (line 12) | class Models extends APIResource {
    method retrieve (line 17) | retrieve(model: string, options?: RequestOptions): APIPromise<Model> {
    method list (line 25) | list(options?: RequestOptions): PagePromise<ModelsPage, Model> {
    method delete (line 33) | delete(model: string, options?: RequestOptions): APIPromise<ModelDelet...
  type ModelsPage (line 39) | type ModelsPage = Page<Model>;
  type Model (line 44) | interface Model {
  type ModelDeleted (line 66) | interface ModelDeleted {

FILE: src/resources/moderations.ts
  class Moderations (line 10) | class Moderations extends APIResource {
    method create (line 15) | create(body: ModerationCreateParams, options?: RequestOptions): APIPro...
  type Moderation (line 20) | interface Moderation {
  type Categories (line 46) | interface Categories {
  type CategoryAppliedInputTypes (line 133) | interface CategoryAppliedInputTypes {
  type CategoryScores (line 203) | interface CategoryScores {
  type ModerationImageURLInput (line 274) | interface ModerationImageURLInput {
  type ImageURL (line 290) | interface ImageURL {
  type ModerationModel (line 298) | type ModerationModel =
  type ModerationMultiModalInput (line 307) | type ModerationMultiModalInput = ModerationImageURLInput | ModerationTex...
  type ModerationTextInput (line 312) | interface ModerationTextInput {
  type ModerationCreateResponse (line 327) | interface ModerationCreateResponse {
  type ModerationCreateParams (line 344) | interface ModerationCreateParams {

FILE: src/resources/realtime/calls.ts
  class Calls (line 11) | class Calls extends APIResource {
    method accept (line 23) | accept(callID: string, body: CallAcceptParams, options?: RequestOption...
    method hangup (line 39) | hangup(callID: string, options?: RequestOptions): APIPromise<void> {
    method refer (line 56) | refer(callID: string, body: CallReferParams, options?: RequestOptions)...
    method reject (line 72) | reject(
  type CallAcceptParams (line 85) | interface CallAcceptParams {
  type CallReferParams (line 206) | interface CallReferParams {
  type CallRejectParams (line 214) | interface CallRejectParams {

FILE: src/resources/realtime/client-secrets.ts
  class ClientSecrets (line 10) | class ClientSecrets extends APIResource {
    method create (line 34) | create(body: ClientSecretCreateParams, options?: RequestOptions): APIP...
  type RealtimeSessionClientSecret (line 42) | interface RealtimeSessionClientSecret {
  type RealtimeSessionCreateResponse (line 61) | interface RealtimeSessionCreateResponse {
  type Audio (line 191) | interface Audio {
  type Input (line 198) | interface Input {
  type NoiseReduction (line 251) | interface NoiseReduction {
  type ServerVad (line 264) | interface ServerVad {
  type SemanticVad (line 332) | interface SemanticVad {
  type Output (line 361) | interface Output {
  type McpTool (line 404) | interface McpTool {
  type McpToolFilter (line 486) | interface McpToolFilter {
  type McpToolApprovalFilter (line 505) | interface McpToolApprovalFilter {
  type Always (line 521) | interface Always {
  type Never (line 539) | interface Never {
  type TracingConfiguration (line 559) | interface TracingConfiguration {
  type RealtimeTranscriptionSessionCreateResponse (line 583) | interface RealtimeTranscriptionSessionCreateResponse {
  type Audio (line 622) | interface Audio {
  type Input (line 627) | interface Input {
  type NoiseReduction (line 655) | interface NoiseReduction {
  type RealtimeTranscriptionSessionTurnDetection (line 672) | interface RealtimeTranscriptionSessionTurnDetection {
  type ClientSecretCreateResponse (line 702) | interface ClientSecretCreateResponse {
  type ClientSecretCreateParams (line 719) | interface ClientSecretCreateParams {
  type ExpiresAfter (line 742) | interface ExpiresAfter {

FILE: src/resources/realtime/realtime.ts
  class Realtime (line 20) | class Realtime extends APIResource {
  type AudioTranscription (line 25) | interface AudioTranscription {
  type ConversationCreatedEvent (line 60) | interface ConversationCreatedEvent {
  type Conversation (line 81) | interface Conversation {
  type ConversationItem (line 97) | type ConversationItem =
  type ConversationItemAdded (line 124) | interface ConversationItemAdded {
  type ConversationItemCreateEvent (line 156) | interface ConversationItemCreateEvent {
  type ConversationItemCreatedEvent (line 199) | interface ConversationItemCreatedEvent {
  type ConversationItemDeleteEvent (line 229) | interface ConversationItemDeleteEvent {
  type ConversationItemDeletedEvent (line 251) | interface ConversationItemDeletedEvent {
  type ConversationItemDone (line 274) | interface ConversationItemDone {
  type ConversationItemInputAudioTranscriptionCompletedEvent (line 309) | interface ConversationItemInputAudioTranscriptionCompletedEvent {
  type TranscriptTextUsageTokens (line 353) | interface TranscriptTextUsageTokens {
  type InputTokenDetails (line 384) | interface InputTokenDetails {
  type TranscriptTextUsageDuration (line 400) | interface TranscriptTextUsageDuration {
  type ConversationItemInputAudioTranscriptionDeltaEvent (line 417) | interface ConversationItemInputAudioTranscriptionDeltaEvent {
  type ConversationItemInputAudioTranscriptionFailedEvent (line 459) | interface ConversationItemInputAudioTranscriptionFailedEvent {
  type Error (line 490) | interface Error {
  type ConversationItemInputAudioTranscriptionSegment (line 516) | interface ConversationItemInputAudioTranscriptionSegment {
  type ConversationItemRetrieveEvent (line 570) | interface ConversationItemRetrieveEvent {
  type ConversationItemTruncateEvent (line 600) | interface ConversationItemTruncateEvent {
  type ConversationItemTruncatedEvent (line 638) | interface ConversationItemTruncatedEvent {
  type ConversationItemWithReference (line 668) | interface ConversationItemWithReference {
  type Content (line 736) | interface Content {
  type InputAudioBufferAppendEvent (line 783) | interface InputAudioBufferAppendEvent {
  type InputAudioBufferClearEvent (line 805) | interface InputAudioBufferClearEvent {
  type InputAudioBufferClearedEvent (line 821) | interface InputAudioBufferClearedEvent {
  type InputAudioBufferCommitEvent (line 843) | interface InputAudioBufferCommitEvent {
  type InputAudioBufferCommittedEvent (line 861) | interface InputAudioBufferCommittedEvent {
  type InputAudioBufferDtmfEventReceivedEvent (line 890) | interface InputAudioBufferDtmfEventReceivedEvent {
  type InputAudioBufferSpeechStartedEvent (line 919) | interface InputAudioBufferSpeechStartedEvent {
  type InputAudioBufferSpeechStoppedEvent (line 949) | interface InputAudioBufferSpeechStoppedEvent {
  type InputAudioBufferTimeoutTriggered (line 991) | interface InputAudioBufferTimeoutTriggered {
  type LogProbProperties (line 1023) | interface LogProbProperties {
  type McpListToolsCompleted (line 1043) | interface McpListToolsCompleted {
  type McpListToolsFailed (line 1063) | interface McpListToolsFailed {
  type McpListToolsInProgress (line 1083) | interface McpListToolsInProgress {
  type NoiseReductionType (line 1105) | type NoiseReductionType = 'near_field' | 'far_field';
  type OutputAudioBufferClearEvent (line 1114) | interface OutputAudioBufferClearEvent {
  type RateLimitsUpdatedEvent (line 1132) | interface RateLimitsUpdatedEvent {
  type RateLimit (line 1150) | interface RateLimit {
  type RealtimeAudioConfig (line 1176) | interface RealtimeAudioConfig {
  type RealtimeAudioConfigInput (line 1182) | interface RealtimeAudioConfigInput {
  type NoiseReduction (line 1235) | interface NoiseReduction {
  type RealtimeAudioConfigOutput (line 1245) | interface RealtimeAudioConfigOutput {
  type ID (line 1289) | interface ID {
  type RealtimeAudioFormats (line 1300) | type RealtimeAudioFormats =
  type AudioPCM (line 1309) | interface AudioPCM {
  type AudioPCMU (line 1324) | interface AudioPCMU {
  type AudioPCMA (line 1334) | interface AudioPCMA {
  type RealtimeAudioInputTurnDetection (line 1357) | type RealtimeAudioInputTurnDetection =
  type ServerVad (line 1366) | interface ServerVad {
  type SemanticVad (line 1434) | interface SemanticVad {
  type RealtimeClientEvent (line 1466) | type RealtimeClientEvent =
  type RealtimeConversationItemAssistantMessage (line 1482) | interface RealtimeConversationItemAssistantMessage {
  type Content (line 1517) | interface Content {
  type RealtimeConversationItemFunctionCall (line 1547) | interface RealtimeConversationItemFunctionCall {
  type RealtimeConversationItemFunctionCallOutput (line 1591) | interface RealtimeConversationItemFunctionCallOutput {
  type RealtimeConversationItemSystemMessage (line 1634) | interface RealtimeConversationItemSystemMessage {
  type Content (line 1669) | interface Content {
  type RealtimeConversationItemUserMessage (line 1685) | interface RealtimeConversationItemUserMessage {
  type Content (line 1720) | interface Content {
  type RealtimeError (line 1762) | interface RealtimeError {
  type RealtimeErrorEvent (line 1794) | interface RealtimeErrorEvent {
  type RealtimeFunctionTool (line 1811) | interface RealtimeFunctionTool {
  type RealtimeMcpApprovalRequest (line 1837) | interface RealtimeMcpApprovalRequest {
  type RealtimeMcpApprovalResponse (line 1867) | interface RealtimeMcpApprovalResponse {
  type RealtimeMcpListTools (line 1897) | interface RealtimeMcpListTools {
  type Tool (line 1923) | interface Tool {
  type RealtimeMcpProtocolError (line 1946) | interface RealtimeMcpProtocolError {
  type RealtimeMcpToolCall (line 1957) | interface RealtimeMcpToolCall {
  type RealtimeMcpToolExecutionError (line 1999) | interface RealtimeMcpToolExecutionError {
  type RealtimeMcphttpError (line 2005) | interface RealtimeMcphttpError {
  type RealtimeResponse (line 2016) | interface RealtimeResponse {
  type Audio (line 2095) | interface Audio {
  type Output (line 2100) | interface Output {
  type RealtimeResponseCreateAudioOutput (line 2131) | interface RealtimeResponseCreateAudioOutput {
  type Output (line 2136) | interface Output {
  type ID (line 2169) | interface ID {
  type RealtimeResponseCreateMcpTool (line 2183) | interface RealtimeResponseCreateMcpTool {
  type McpToolFilter (line 2265) | interface McpToolFilter {
  type McpToolApprovalFilter (line 2284) | interface McpToolApprovalFilter {
  type Always (line 2300) | interface Always {
  type Never (line 2318) | interface Never {
  type RealtimeResponseCreateParams (line 2338) | interface RealtimeResponseCreateParams {
  type RealtimeResponseStatus (line 2421) | interface RealtimeResponseStatus {
  type Error (line 2449) | interface Error {
  type RealtimeResponseUsage (line 2468) | interface RealtimeResponseUsage {
  type RealtimeResponseUsageInputTokenDetails (line 2507) | interface RealtimeResponseUsageInputTokenDetails {
  type CachedTokensDetails (line 2538) | interface CachedTokensDetails {
  type RealtimeResponseUsageOutputTokenDetails (line 2559) | interface RealtimeResponseUsageOutputTokenDetails {
  type RealtimeServerEvent (line 2574) | type RealtimeServerEvent =
  type ConversationItemRetrieved (line 2630) | interface ConversationItemRetrieved {
  type OutputAudioBufferStarted (line 2653) | interface OutputAudioBufferStarted {
  type OutputAudioBufferStopped (line 2676) | interface OutputAudioBufferStopped {
  type OutputAudioBufferCleared (line 2701) | interface OutputAudioBufferCleared {
  type RealtimeSession (line 2722) | interface RealtimeSession {
  type InputAudioNoiseReduction (line 2913) | interface InputAudioNoiseReduction {
  type TracingConfiguration (line 2925) | interface TracingConfiguration {
  type ServerVad (line 2949) | interface ServerVad {
  type SemanticVad (line 3017) | interface SemanticVad {
  type RealtimeSessionCreateRequest (line 3049) | interface RealtimeSessionCreateRequest {
  type RealtimeToolChoiceConfig (line 3174) | type RealtimeToolChoiceConfig =
  type RealtimeToolsConfig (line 3182) | type RealtimeToolsConfig = Array<RealtimeToolsConfigUnion>;
  type RealtimeToolsConfigUnion (line 3189) | type RealtimeToolsConfigUnion = RealtimeFunctionTool | RealtimeToolsConf...
  type Mcp (line 3197) | interface Mcp {
  type McpToolFilter (line 3279) | interface McpToolFilter {
  type McpToolApprovalFilter (line 3298) | interface McpToolApprovalFilter {
  type Always (line 3314) | interface Always {
  type Never (line 3332) | interface Never {
  type RealtimeTracingConfig (line 3358) | type RealtimeTracingConfig = 'auto' | RealtimeTracingConfig.TracingConfi...
  type TracingConfiguration (line 3364) | interface TracingConfiguration {
  type RealtimeTranscriptionSessionAudio (line 3388) | interface RealtimeTranscriptionSessionAudio {
  type RealtimeTranscriptionSessionAudioInput (line 3392) | interface RealtimeTranscriptionSessionAudioInput {
  type NoiseReduction (line 3445) | interface NoiseReduction {
  type RealtimeTranscriptionSessionAudioInputTurnDetection (line 3470) | type RealtimeTranscriptionSessionAudioInputTurnDetection =
  type ServerVad (line 3479) | interface ServerVad {
  type SemanticVad (line 3547) | interface SemanticVad {
  type RealtimeTranscriptionSessionCreateRequest (line 3579) | interface RealtimeTranscriptionSessionCreateRequest {
  type RealtimeTruncation (line 3620) | type RealtimeTruncation = 'auto' | 'disabled' | RealtimeTruncationRetent...
  type RealtimeTruncationRetentionRatio (line 3627) | interface RealtimeTruncationRetentionRatio {
  type TokenLimits (line 3653) | interface TokenLimits {
  type ResponseAudioDeltaEvent (line 3668) | interface ResponseAudioDeltaEvent {
  type ResponseAudioDoneEvent (line 3709) | interface ResponseAudioDoneEvent {
  type ResponseAudioTranscriptDeltaEvent (line 3744) | interface ResponseAudioTranscriptDeltaEvent {
  type ResponseAudioTranscriptDoneEvent (line 3786) | interface ResponseAudioTranscriptDoneEvent {
  type ResponseCancelEvent (line 3830) | interface ResponseCancelEvent {
  type ResponseContentPartAddedEvent (line 3852) | interface ResponseContentPartAddedEvent {
  type Part (line 3893) | interface Part {
  type ResponseContentPartDoneEvent (line 3920) | interface ResponseContentPartDoneEvent {
  type Part (line 3961) | interface Part {
  type ResponseCreateEvent (line 4012) | interface ResponseCreateEvent {
  type ResponseCreatedEvent (line 4033) | interface ResponseCreatedEvent {
  type ResponseDoneEvent (line 4062) | interface ResponseDoneEvent {
  type ResponseFunctionCallArgumentsDeltaEvent (line 4082) | interface ResponseFunctionCallArgumentsDeltaEvent {
  type ResponseFunctionCallArgumentsDoneEvent (line 4123) | interface ResponseFunctionCallArgumentsDoneEvent {
  type ResponseMcpCallArgumentsDelta (line 4168) | interface ResponseMcpCallArgumentsDelta {
  type ResponseMcpCallArgumentsDone (line 4208) | interface ResponseMcpCallArgumentsDone {
  type ResponseMcpCallCompleted (line 4243) | interface ResponseMcpCallCompleted {
  type ResponseMcpCallFailed (line 4268) | interface ResponseMcpCallFailed {
  type ResponseMcpCallInProgress (line 4293) | interface ResponseMcpCallInProgress {
  type ResponseOutputItemAddedEvent (line 4318) | interface ResponseOutputItemAddedEvent {
  type ResponseOutputItemDoneEvent (line 4349) | interface ResponseOutputItemDoneEvent {
  type ResponseTextDeltaEvent (line 4379) | interface ResponseTextDeltaEvent {
  type ResponseTextDoneEvent (line 4420) | interface ResponseTextDoneEvent {
  type SessionCreatedEvent (line 4462) | interface SessionCreatedEvent {
  type SessionUpdateEvent (line 4490) | interface SessionUpdateEvent {
  type SessionUpdatedEvent (line 4515) | interface SessionUpdatedEvent {
  type TranscriptionSessionUpdate (line 4535) | interface TranscriptionSessionUpdate {
  type Session (line 4556) | interface Session {
  type InputAudioNoiseReduction (line 4602) | interface InputAudioNoiseReduction {
  type TurnDetection (line 4616) | interface TurnDetection {
  type TranscriptionSessionUpdatedEvent (line 4650) | interface TranscriptionSessionUpdatedEvent {
  type Session (line 4679) | interface Session {
  type ClientSecret (line 4715) | interface ClientSecret {
  type TurnDetection (line 4735) | interface TurnDetection {

FILE: src/resources/responses/input-items.ts
  class InputItems (line 10) | class InputItems extends APIResource {
    method list (line 24) | list(
  type ResponseItemList (line 40) | interface ResponseItemList {
  type InputItemListParams (line 67) | interface InputItemListParams extends CursorPageParams {

FILE: src/resources/responses/input-tokens.ts
  class InputTokens (line 9) | class InputTokens extends APIResource {
    method count (line 21) | count(
  type InputTokenCountResponse (line 29) | interface InputTokenCountResponse {
  type InputTokenCountParams (line 35) | interface InputTokenCountParams {
  type Text (line 132) | interface Text {

FILE: src/resources/responses/internal-base.ts
  class WebSocketError (line 10) | class WebSocketError extends OpenAIError {
    method constructor (line 16) | constructor(message: string, event: ResponsesAPI.ResponseErrorEvent | ...
  type Simplify (line 23) | type Simplify<T> = { [KeyType in keyof T]: T[KeyType] } & {};
  type WebSocketEvents (line 25) | type WebSocketEvents = Simplify<
  method _onError (line 49) | protected _onError(
  function buildURL (line 76) | function buildURL(client: OpenAI, query?: object | null): URL {
  function safeJSONStringify (line 87) | function safeJSONStringify(value: unknown): string | null {

FILE: src/resources/responses/responses.ts
  type ParsedResponseOutputText (line 24) | interface ParsedResponseOutputText<ParsedT> extends ResponseOutputText {
  type ParsedContent (line 28) | type ParsedContent<ParsedT> = ParsedResponseOutputText<ParsedT> | Respon...
  type ParsedResponseOutputMessage (line 30) | interface ParsedResponseOutputMessage<ParsedT> extends ResponseOutputMes...
  type ParsedResponseFunctionToolCall (line 34) | interface ParsedResponseFunctionToolCall extends ResponseFunctionToolCall {
  type ParsedResponseOutputItem (line 38) | type ParsedResponseOutputItem<ParsedT> =
  type ParsedResponse (line 60) | interface ParsedResponse<ParsedT> extends Response {
  type ResponseParseParams (line 66) | type ResponseParseParams = ResponseCreateParamsNonStreaming;
  class Responses (line 68) | class Responses extends APIResource {
    method create (line 99) | create(
    method retrieve (line 141) | retrieve(
    method delete (line 171) | delete(responseID: string, options?: RequestOptions): APIPromise<void> {
    method parse (line 178) | parse<Params extends ResponseCreateParamsWithTools, ParsedT = ExtractP...
    method stream (line 190) | stream<Params extends ResponseStreamParams, ParsedT = ExtractParsedCon...
    method cancel (line 209) | cancel(responseID: string, options?: RequestOptions): APIPromise<Respo...
    method compact (line 228) | compact(body: ResponseCompactParams, options?: RequestOptions): APIPro...
  type ResponseItemsPage (line 233) | type ResponseItemsPage = CursorPage<ResponseItem>;
  type ApplyPatchTool (line 238) | interface ApplyPatchTool {
  type CompactedResponse (line 245) | interface CompactedResponse {
  type ComputerAction (line 277) | type ComputerAction =
  type Click (line 292) | interface Click {
  type DoubleClick (line 318) | interface DoubleClick {
  type Drag (line 339) | interface Drag {
  type Path (line 364) | interface Path {
  type Keypress (line 380) | interface Keypress {
  type Move (line 397) | interface Move {
  type Screenshot (line 418) | interface Screenshot {
  type Scroll (line 429) | interface Scroll {
  type Type (line 460) | interface Type {
  type Wait (line 476) | interface Wait {
  type ComputerActionList (line 489) | type ComputerActionList = Array<ComputerAction>;
  type ComputerTool (line 495) | interface ComputerTool {
  type ComputerUsePreviewTool (line 506) | interface ComputerUsePreviewTool {
  type ContainerAuto (line 528) | interface ContainerAuto {
  type ContainerNetworkPolicyAllowlist (line 555) | interface ContainerNetworkPolicyAllowlist {
  type ContainerNetworkPolicyDisabled (line 572) | interface ContainerNetworkPolicyDisabled {
  type ContainerNetworkPolicyDomainSecret (line 579) | interface ContainerNetworkPolicyDomainSecret {
  type ContainerReference (line 596) | interface ContainerReference {
  type CustomTool (line 612) | interface CustomTool {
  type EasyInputMessage (line 646) | interface EasyInputMessage {
  type FileSearchTool (line 678) | interface FileSearchTool {
  type RankingOptions (line 710) | interface RankingOptions {
  type HybridSearch (line 735) | interface HybridSearch {
  type FunctionShellTool (line 752) | interface FunctionShellTool {
  type FunctionTool (line 766) | interface FunctionTool {
  type InlineSkill (line 799) | interface InlineSkill {
  type InlineSkillSource (line 824) | interface InlineSkillSource {
  type LocalEnvironment (line 841) | interface LocalEnvironment {
  type LocalSkill (line 853) | interface LocalSkill {
  type NamespaceTool (line 873) | interface NamespaceTool {
  type Function (line 896) | interface Function {
  type Response (line 914) | interface Response {
  type IncompleteDetails (line 1179) | interface IncompleteDetails {
  type Conversation (line 1190) | interface Conversation {
  type ResponseApplyPatchToolCall (line 1201) | interface ResponseApplyPatchToolCall {
  type CreateFile (line 1242) | interface CreateFile {
  type DeleteFile (line 1262) | interface DeleteFile {
  type UpdateFile (line 1277) | interface UpdateFile {
  type ResponseApplyPatchToolCallOutput (line 1298) | interface ResponseApplyPatchToolCallOutput {
  type ResponseAudioDeltaEvent (line 1334) | interface ResponseAudioDeltaEvent {
  type ResponseAudioDoneEvent (line 1354) | interface ResponseAudioDoneEvent {
  type ResponseAudioTranscriptDeltaEvent (line 1369) | interface ResponseAudioTranscriptDeltaEvent {
  type ResponseAudioTranscriptDoneEvent (line 1389) | interface ResponseAudioTranscriptDoneEvent {
  type ResponseCodeInterpreterCallCodeDeltaEvent (line 1404) | interface ResponseCodeInterpreterCallCodeDeltaEvent {
  type ResponseCodeInterpreterCallCodeDoneEvent (line 1435) | interface ResponseCodeInterpreterCallCodeDoneEvent {
  type ResponseCodeInterpreterCallCompletedEvent (line 1465) | interface ResponseCodeInterpreterCallCompletedEvent {
  type ResponseCodeInterpreterCallInProgressEvent (line 1491) | interface ResponseCodeInterpreterCallInProgressEvent {
  type ResponseCodeInterpreterCallInterpretingEvent (line 1517) | interface ResponseCodeInterpreterCallInterpretingEvent {
  type ResponseCodeInterpreterToolCall (line 1543) | interface ResponseCodeInterpreterToolCall {
  type Logs (line 1581) | interface Logs {
  type Image (line 1596) | interface Image {
  type ResponseCompactionItem (line 1613) | interface ResponseCompactionItem {
  type ResponseCompactionItemParam (line 1639) | interface ResponseCompactionItemParam {
  type ResponseCompletedEvent (line 1659) | interface ResponseCompletedEvent {
  type ResponseComputerToolCall (line 1681) | interface ResponseComputerToolCall {
  type PendingSafetyCheck (line 1733) | interface PendingSafetyCheck {
  type Click (line 1753) | interface Click {
  type DoubleClick (line 1779) | interface DoubleClick {
  type Drag (line 1800) | interface Drag {
  type Path (line 1825) | interface Path {
  type Keypress (line 1841) | interface Keypress {
  type Move (line 1858) | interface Move {
  type Screenshot (line 1879) | interface Screenshot {
  type Scroll (line 1890) | interface Scroll {
  type Type (line 1921) | interface Type {
  type Wait (line 1937) | interface Wait {
  type ResponseComputerToolCallOutputItem (line 1946) | interface ResponseComputerToolCallOutputItem {
  type AcknowledgedSafetyCheck (line 1984) | interface AcknowledgedSafetyCheck {
  type ResponseComputerToolCallOutputScreenshot (line 2005) | interface ResponseComputerToolCallOutputScreenshot {
  type ResponseContainerReference (line 2026) | interface ResponseContainerReference {
  type ResponseContent (line 2038) | type ResponseContent =
  type ReasoningTextContent (line 2050) | interface ReasoningTextContent {
  type ResponseContentPartAddedEvent (line 2066) | interface ResponseContentPartAddedEvent {
  type ReasoningText (line 2102) | interface ReasoningText {
  type ResponseContentPartDoneEvent (line 2118) | interface ResponseContentPartDoneEvent {
  type ReasoningText (line 2154) | interface ReasoningText {
  type ResponseConversationParam (line 2170) | interface ResponseConversationParam {
  type ResponseCreatedEvent (line 2180) | interface ResponseCreatedEvent {
  type ResponseCustomToolCall (line 2200) | interface ResponseCustomToolCall {
  type ResponseCustomToolCallInputDeltaEvent (line 2235) | interface ResponseCustomToolCallInputDeltaEvent {
  type ResponseCustomToolCallInputDoneEvent (line 2265) | interface ResponseCustomToolCallInputDoneEvent {
  type ResponseCustomToolCallOutput (line 2295) | interface ResponseCustomToolCallOutput {
  type ResponseError (line 2321) | interface ResponseError {
  type ResponseErrorEvent (line 2354) | interface ResponseErrorEvent {
  type ResponseFailedEvent (line 2384) | interface ResponseFailedEvent {
  type ResponseFileSearchCallCompletedEvent (line 2404) | interface ResponseFileSearchCallCompletedEvent {
  type ResponseFileSearchCallInProgressEvent (line 2429) | interface ResponseFileSearchCallInProgressEvent {
  type ResponseFileSearchCallSearchingEvent (line 2454) | interface ResponseFileSearchCallSearchingEvent {
  type ResponseFileSearchToolCall (line 2481) | interface ResponseFileSearchToolCall {
  type Result (line 2510) | interface Result {
  type ResponseFormatTextConfig (line 2557) | type ResponseFormatTextConfig =
  type ResponseFormatTextJSONSchemaConfig (line 2567) | interface ResponseFormatTextJSONSchemaConfig {
  type ResponseFunctionCallArgumentsDeltaEvent (line 2604) | interface ResponseFunctionCallArgumentsDeltaEvent {
  type ResponseFunctionCallArgumentsDoneEvent (line 2634) | interface ResponseFunctionCallArgumentsDoneEvent {
  type ResponseFunctionCallOutputItem (line 2666) | type ResponseFunctionCallOutputItem =
  type ResponseFunctionCallOutputItemList (line 2674) | type ResponseFunctionCallOutputItemList = Array<ResponseFunctionCallOutp...
  type ResponseFunctionShellCallOutputContent (line 2679) | interface ResponseFunctionShellCallOutputContent {
  type Timeout (line 2700) | interface Timeout {
  type Exit (line 2710) | interface Exit {
  type ResponseFunctionShellToolCall (line 2726) | interface ResponseFunctionShellToolCall {
  type Action (line 2769) | interface Action {
  type ResponseFunctionShellToolCallOutput (line 2787) | interface ResponseFunctionShellToolCallOutput {
  type Output (line 2831) | interface Output {
  type Timeout (line 2858) | interface Timeout {
  type Exit (line 2868) | interface Exit {
  type ResponseFunctionToolCall (line 2887) | interface ResponseFunctionToolCall {
  type ResponseFunctionToolCallItem (line 2930) | interface ResponseFunctionToolCallItem extends ResponseFunctionToolCall {
  type ResponseFunctionToolCallOutputItem (line 2937) | interface ResponseFunctionToolCallOutputItem {
  type ResponseFunctionWebSearch (line 2971) | interface ResponseFunctionWebSearch {
  type Search (line 3001) | interface Search {
  type Source (line 3027) | interface Source {
  type OpenPage (line 3043) | interface OpenPage {
  type Find (line 3058) | interface Find {
  type ResponseImageGenCallCompletedEvent (line 3080) | interface ResponseImageGenCallCompletedEvent {
  type ResponseImageGenCallGeneratingEvent (line 3106) | interface ResponseImageGenCallGeneratingEvent {
  type ResponseImageGenCallInProgressEvent (line 3131) | interface ResponseImageGenCallInProgressEvent {
  type ResponseImageGenCallPartialImageEvent (line 3156) | interface ResponseImageGenCallPartialImageEvent {
  type ResponseInProgressEvent (line 3192) | interface ResponseInProgressEvent {
  type ResponseIncludable (line 3232) | type ResponseIncludable =
  type ResponseIncompleteEvent (line 3245) | interface ResponseIncompleteEvent {
  type ResponseInput (line 3266) | type ResponseInput = Array<ResponseInputItem>;
  type ResponseInputAudio (line 3271) | interface ResponseInputAudio {
  type InputAudio (line 3281) | interface InputAudio {
  type ResponseInputContent (line 3297) | type ResponseInputContent = ResponseInputText | ResponseInputImage | Res...
  type ResponseInputFile (line 3302) | interface ResponseInputFile {
  type ResponseInputFileContent (line 3332) | interface ResponseInputFileContent {
  type ResponseInputImage (line 3363) | interface ResponseInputImage {
  type ResponseInputImageContent (line 3391) | interface ResponseInputImageContent {
  type ResponseInputItem (line 3422) | type ResponseInputItem =
  type Message (line 3458) | interface Message {
  type ComputerCallOutput (line 3485) | interface ComputerCallOutput {
  type AcknowledgedSafetyCheck (line 3523) | interface AcknowledgedSafetyCheck {
  type FunctionCallOutput (line 3544) | interface FunctionCallOutput {
  type ToolSearchCall (line 3573) | interface ToolSearchCall {
  type ImageGenerationCall (line 3608) | interface ImageGenerationCall {
  type LocalShellCall (line 3633) | interface LocalShellCall {
  type Action (line 3664) | interface Action {
  type LocalShellCallOutput (line 3700) | interface LocalShellCallOutput {
  type ShellCall (line 3725) | interface ShellCall {
  type Action (line 3763) | interface Action {
  type ShellCallOutput (line 3785) | interface ShellCallOutput {
  type ApplyPatchCall (line 3824) | interface ApplyPatchCall {
  type CreateFile (line 3857) | interface CreateFile {
  type DeleteFile (line 3877) | interface DeleteFile {
  type UpdateFile (line 3892) | interface UpdateFile {
  type ApplyPatchCallOutput (line 3913) | interface ApplyPatchCallOutput {
  type McpListTools (line 3945) | interface McpListTools {
  type Tool (line 3976) | interface Tool {
  type McpApprovalRequest (line 4002) | interface McpApprovalRequest {
  type McpApprovalResponse (line 4032) | interface McpApprovalResponse {
  type McpCall (line 4062) | interface McpCall {
  type ItemReference (line 4115) | interface ItemReference {
  type ResponseInputMessageContentList (line 4132) | type ResponseInputMessageContentList = Array<ResponseInputContent>;
  type ResponseInputMessageItem (line 4134) | interface ResponseInputMessageItem {
  type ResponseInputText (line 4166) | interface ResponseInputText {
  type ResponseInputTextContent (line 4181) | interface ResponseInputTextContent {
  type ResponseItem (line 4196) | type ResponseItem =
  type ImageGenerationCall (line 4224) | interface ImageGenerationCall {
  type LocalShellCall (line 4249) | interface LocalShellCall {
  type Action (line 4280) | interface Action {
  type LocalShellCallOutput (line 4316) | interface LocalShellCallOutput {
  type McpListTools (line 4341) | interface McpListTools {
  type Tool (line 4372) | interface Tool {
  type McpApprovalRequest (line 4398) | interface McpApprovalRequest {
  type McpApprovalResponse (line 4428) | interface McpApprovalResponse {
  type McpCall (line 4458) | interface McpCall {
  type ResponseLocalEnvironment (line 4512) | interface ResponseLocalEnvironment {
  type ResponseMcpCallArgumentsDeltaEvent (line 4523) | interface ResponseMcpCallArgumentsDeltaEvent {
  type ResponseMcpCallArgumentsDoneEvent (line 4554) | interface ResponseMcpCallArgumentsDoneEvent {
  type ResponseMcpCallCompletedEvent (line 4584) | interface ResponseMcpCallCompletedEvent {
  type ResponseMcpCallFailedEvent (line 4609) | interface ResponseMcpCallFailedEvent {
  type ResponseMcpCallInProgressEvent (line 4634) | interface ResponseMcpCallInProgressEvent {
  type ResponseMcpListToolsCompletedEvent (line 4659) | interface ResponseMcpListToolsCompletedEvent {
  type ResponseMcpListToolsFailedEvent (line 4684) | interface ResponseMcpListToolsFailedEvent {
  type ResponseMcpListToolsInProgressEvent (line 4710) | interface ResponseMcpListToolsInProgressEvent {
  type ResponseOutputAudio (line 4735) | interface ResponseOutputAudio {
  type ResponseOutputItem (line 4755) | type ResponseOutputItem =
  type ImageGenerationCall (line 4781) | interface ImageGenerationCall {
  type LocalShellCall (line 4806) | interface LocalShellCall {
  type Action (line 4837) | interface Action {
  type McpCall (line 4873) | interface McpCall {
  type McpListTools (line 4926) | interface McpListTools {
  type Tool (line 4957) | interface Tool {
  type McpApprovalRequest (line 4983) | interface McpApprovalRequest {
  type ResponseOutputItemAddedEvent (line 5014) | interface ResponseOutputItemAddedEvent {
  type ResponseOutputItemDoneEvent (line 5039) | interface ResponseOutputItemDoneEvent {
  type ResponseOutputMessage (line 5064) | interface ResponseOutputMessage {
  type ResponseOutputRefusal (line 5103) | interface ResponseOutputRefusal {
  type ResponseOutputText (line 5118) | interface ResponseOutputText {
  type FileCitation (line 5146) | interface FileCitation {
  type URLCitation (line 5171) | interface URLCitation {
  type ContainerFileCitation (line 5201) | interface ContainerFileCitation {
  type FilePath (line 5236) | interface FilePath {
  type Logprob (line 5256) | interface Logprob {
  type TopLogprob (line 5270) | interface TopLogprob {
  type ResponseOutputTextAnnotationAddedEvent (line 5283) | interface ResponseOutputTextAnnotationAddedEvent {
  type ResponsePrompt (line 5324) | interface ResponsePrompt {
  type ResponseQueuedEvent (line 5346) | interface ResponseQueuedEvent {
  type ResponseReasoningItem (line 5369) | interface ResponseReasoningItem {
  type Summary (line 5407) | interface Summary {
  type Content (line 5422) | interface Content {
  type ResponseReasoningSummaryPartAddedEvent (line 5438) | interface ResponseReasoningSummaryPartAddedEvent {
  type Part (line 5474) | interface Part {
  type ResponseReasoningSummaryPartDoneEvent (line 5490) | interface ResponseReasoningSummaryPartDoneEvent {
  type Part (line 5526) | interface Part {
  type ResponseReasoningSummaryTextDeltaEvent (line 5542) | interface ResponseReasoningSummaryTextDeltaEvent {
  type ResponseReasoningSummaryTextDoneEvent (line 5577) | interface ResponseReasoningSummaryTextDoneEvent {
  type ResponseReasoningTextDeltaEvent (line 5612) | interface ResponseReasoningTextDeltaEvent {
  type ResponseReasoningTextDoneEvent (line 5647) | interface ResponseReasoningTextDoneEvent {
  type ResponseRefusalDeltaEvent (line 5682) | interface ResponseRefusalDeltaEvent {
  type ResponseRefusalDoneEvent (line 5717) | interface ResponseRefusalDoneEvent {
  type ResponseStatus (line 5753) | type ResponseStatus = 'completed' | 'failed' | 'in_progress' | 'cancelle...
  type ResponseStreamEvent (line 5758) | type ResponseStreamEvent =
  type ResponseTextConfig (line 5820) | interface ResponseTextConfig {
  type ResponseTextDeltaEvent (line 5849) | interface ResponseTextDeltaEvent {
  type Logprob (line 5892) | interface Logprob {
  type TopLogprob (line 5910) | interface TopLogprob {
  type ResponseTextDoneEvent (line 5927) | interface ResponseTextDoneEvent {
  type Logprob (line 5970) | interface Logprob {
  type TopLogprob (line 5988) | interface TopLogprob {
  type ResponseToolSearchCall (line 6002) | interface ResponseToolSearchCall {
  type ResponseToolSearchOutputItem (line 6039) | interface ResponseToolSearchOutputItem {
  type ResponseToolSearchOutputItemParam (line 6076) | interface ResponseToolSearchOutputItemParam {
  type ResponseUsage (line 6112) | interface ResponseUsage {
  type InputTokensDetails (line 6143) | interface InputTokensDetails {
  type OutputTokensDetails (line 6154) | interface OutputTokensDetails {
  type ResponseWebSearchCallCompletedEvent (line 6165) | interface ResponseWebSearchCallCompletedEvent {
  type ResponseWebSearchCallInProgressEvent (line 6190) | interface ResponseWebSearchCallInProgressEvent {
  type ResponseWebSearchCallSearchingEvent (line 6215) | interface ResponseWebSearchCallSearchingEvent {
  type ResponsesClientEvent (line 6237) | interface ResponsesClientEvent {
  type ContextManagement (line 6525) | interface ContextManagement {
  type StreamOptions (line 6540) | interface StreamOptions {
  type ResponsesServerEvent (line 6556) | type ResponsesServerEvent =
  type SkillReference (line 6611) | interface SkillReference {
  type Tool (line 6631) | type Tool =
  type Mcp (line 6654) | interface Mcp {
  type McpToolFilter (line 6736) | interface McpToolFilter {
  type McpToolApprovalFilter (line 6755) | interface McpToolApprovalFilter {
  type Always (line 6771) | interface Always {
  type Never (line 6789) | interface Never {
  type CodeInterpreter (line 6809) | interface CodeInterpreter {
  type CodeInterpreterToolAuto (line 6828) | interface CodeInterpreterToolAuto {
  type ImageGeneration (line 6856) | interface ImageGeneration {
  type InputImageMask (line 6932) | interface InputImageMask {
  type LocalShell (line 6948) | interface LocalShell {
  type ToolChoiceAllowed (line 6959) | interface ToolChoiceAllowed {
  type ToolChoiceApplyPatch (line 6994) | interface ToolChoiceApplyPatch {
  type ToolChoiceCustom (line 7004) | interface ToolChoiceCustom {
  type ToolChoiceFunction (line 7019) | interface ToolChoiceFunction {
  type ToolChoiceMcp (line 7035) | interface ToolChoiceMcp {
  type ToolChoiceOptions (line 7062) | type ToolChoiceOptions = 'none' | 'auto' | 'required';
  type ToolChoiceShell (line 7067) | interface ToolChoiceShell {
  type ToolChoiceTypes (line 7078) | interface ToolChoiceTypes {
  type ToolSearchTool (line 7109) | interface ToolSearchTool {
  type WebSearchPreviewTool (line 7136) | interface WebSearchPreviewTool {
  type UserLocation (line 7161) | interface UserLocation {
  type WebSearchTool (line 7195) | interface WebSearchTool {
  type Filters (line 7222) | interface Filters {
  type UserLocation (line 7235) | interface UserLocation {
  type ResponseCreateParams (line 7265) | type ResponseCreateParams = ResponseCreateParamsNonStreaming | ResponseC...
  type ResponseCreateParamsBase (line 7267) | interface ResponseCreateParamsBase {
  type ContextManagement (line 7538) | interface ContextManagement {
  type StreamOptions (line 7553) | interface StreamOptions {
  type ResponseCreateParamsNonStreaming (line 7565) | type ResponseCreateParamsNonStreaming = ResponsesAPI.ResponseCreateParam...
  type ResponseCreateParamsStreaming (line 7566) | type ResponseCreateParamsStreaming = ResponsesAPI.ResponseCreateParamsSt...
  type ResponseCreateParamsNonStreaming (line 7569) | interface ResponseCreateParamsNonStreaming extends ResponseCreateParamsB...
  type ResponseCreateParamsStreaming (line 7581) | interface ResponseCreateParamsStreaming extends ResponseCreateParamsBase {
  type ResponseRetrieveParams (line 7593) | type ResponseRetrieveParams = ResponseRetrieveParamsNonStreaming | Respo...
  type ResponseRetrieveParamsBase (line 7595) | interface ResponseRetrieveParamsBase {
  type ResponseRetrieveParamsNonStreaming (line 7629) | type ResponseRetrieveParamsNonStreaming = ResponsesAPI.ResponseRetrieveP...
  type ResponseRetrieveParamsStreaming (line 7630) | type ResponseRetrieveParamsStreaming = ResponsesAPI.ResponseRetrievePara...
  type ResponseRetrieveParamsNonStreaming (line 7633) | interface ResponseRetrieveParamsNonStreaming extends ResponseRetrievePar...
  type ResponseRetrieveParamsStreaming (line 7645) | interface ResponseRetrieveParamsStreaming extends ResponseRetrieveParams...
  type ResponseCompactParams (line 7657) | interface ResponseCompactParams {

FILE: src/resources/responses/ws.ts
  class ResponsesWS (line 8) | class ResponsesWS extends ResponsesEmitter {
    method constructor (line 13) | constructor(client: OpenAI, options?: WS.ClientOptions | null | undefi...
    method send (line 52) | send(event: ResponsesAPI.ResponsesClientEvent) {
    method close (line 60) | close(props?: { code: number; reason: string }) {
    method authHeaders (line 68) | private authHeaders(): Record<string, string> {

FILE: src/resources/shared.ts
  type AllModels (line 3) | type AllModels =
  type ChatModel (line 21) | type ChatModel =
  type ComparisonFilter (line 105) | interface ComparisonFilter {
  type CompoundFilter (line 136) | interface CompoundFilter {
  type CustomToolInputFormat (line 152) | type CustomToolInputFormat = CustomToolInputFormat.Text | CustomToolInpu...
  type Text (line 158) | interface Text {
  type Grammar (line 168) | interface Grammar {
  type ErrorObject (line 186) | interface ErrorObject {
  type FunctionDefinition (line 196) | interface FunctionDefinition {
  type FunctionParameters (line 239) | type FunctionParameters = { [key: string]: unknown };
  type Metadata (line 249) | type Metadata = { [key: string]: string };
  type Reasoning (line 257) | interface Reasoning {
  type ReasoningEffort (line 310) | type ReasoningEffort = 'none' | 'minimal' | 'low' | 'medium' | 'high' | ...
  type ResponseFormatJSONObject (line 317) | interface ResponseFormatJSONObject {
  type ResponseFormatJSONSchema (line 329) | interface ResponseFormatJSONSchema {
  type JSONSchema (line 345) | interface JSONSchema {
  type ResponseFormatText (line 378) | interface ResponseFormatText {
  type ResponseFormatTextGrammar (line 389) | interface ResponseFormatTextGrammar {
  type ResponseFormatTextPython (line 406) | interface ResponseFormatTextPython {
  type ResponsesModel (line 413) | type ResponsesModel =

FILE: src/resources/skills/content.ts
  class Content (line 9) | class Content extends APIResource {
    method retrieve (line 13) | retrieve(skillID: string, options?: RequestOptions): APIPromise<Respon...

FILE: src/resources/skills/skills.ts
  class Skills (line 25) | class Skills extends APIResource {
    method create (line 32) | create(body: SkillCreateParams | null | undefined = {}, options?: Requ...
    method retrieve (line 39) | retrieve(skillID: string, options?: RequestOptions): APIPromise<Skill> {
    method update (line 46) | update(skillID: string, body: SkillUpdateParams, options?: RequestOpti...
    method list (line 53) | list(
    method delete (line 63) | delete(skillID: string, options?: RequestOptions): APIPromise<DeletedS...
  type SkillsPage (line 68) | type SkillsPage = CursorPage<Skill>;
  type DeletedSkill (line 70) | interface DeletedSkill {
  type Skill (line 78) | interface Skill {
  type SkillList (line 115) | interface SkillList {
  type SkillCreateParams (line 142) | interface SkillCreateParams {
  type SkillUpdateParams (line 149) | interface SkillUpdateParams {
  type SkillListParams (line 156) | interface SkillListParams extends CursorPageParams {

FILE: src/resources/skills/versions/content.ts
  class Content (line 9) | class Content extends APIResource {
    method retrieve (line 13) | retrieve(version: string, params: ContentRetrieveParams, options?: Req...
  type ContentRetrieveParams (line 23) | interface ContentRetrieveParams {

FILE: src/resources/skills/versions/versions.ts
  class Versions (line 13) | class Versions extends APIResource {
    method create (line 19) | create(
    method retrieve (line 33) | retrieve(
    method list (line 45) | list(
    method delete (line 59) | delete(
  type SkillVersionsPage (line 69) | type SkillVersionsPage = CursorPage<SkillVersion>;
  type DeletedSkillVersion (line 71) | interface DeletedSkillVersion {
  type SkillVersion (line 84) | interface SkillVersion {
  type SkillVersionList (line 121) | interface SkillVersionList {
  type VersionCreateParams (line 148) | interface VersionCreateParams {
  type VersionRetrieveParams (line 160) | interface VersionRetrieveParams {
  type VersionListParams (line 167) | interface VersionListParams extends CursorPageParams {
  type VersionDeleteParams (line 174) | interface VersionDeleteParams {

FILE: src/resources/uploads/parts.ts
  class Parts (line 13) | class Parts extends APIResource {
    method create (line 27) | create(uploadID: string, body: PartCreateParams, options?: RequestOpti...
  type UploadPart (line 38) | interface UploadPart {
  type PartCreateParams (line 60) | interface PartCreateParams {

FILE: src/resources/uploads/uploads.ts
  class Uploads (line 14) | class Uploads extends APIResource {
    method create (line 40) | create(body: UploadCreateParams, options?: RequestOptions): APIPromise...
    method cancel (line 49) | cancel(uploadID: string, options?: RequestOptions): APIPromise<Upload> {
    method complete (line 70) | complete(uploadID: string, body: UploadCompleteParams, options?: Reque...
  type Upload (line 78) | interface Upload {
  type UploadCreateParams (line 127) | interface UploadCreateParams {
  type ExpiresAfter (line 166) | interface ExpiresAfter {
  type UploadCompleteParams (line 181) | interface UploadCompleteParams {

FILE: src/resources/vector-stores/file-batches.ts
  class FileBatches (line 16) | class FileBatches extends APIResource {
    method create (line 20) | create(
    method retrieve (line 35) | retrieve(
    method cancel (line 51) | cancel(
    method createAndPoll (line 66) | async createAndPoll(
    method listFiles (line 78) | listFiles(
    method poll (line 97) | async poll(
    method uploadAndPoll (line 150) | async uploadAndPoll(
  type VectorStoreFileBatch (line 194) | interface VectorStoreFileBatch {
  type FileCounts (line 229) | interface FileCounts {
  type FileBatchCreateParams (line 257) | interface FileBatchCreateParams {
  type File (line 293) | interface File {
  type FileBatchRetrieveParams (line 318) | interface FileBatchRetrieveParams {
  type FileBatchCancelParams (line 325) | interface FileBatchCancelParams {
  type FileBatchListFilesParams (line 332) | interface FileBatchListFilesParams extends CursorPageParams {

FILE: src/resources/vector-stores/files.ts
  class Files (line 13) | class Files extends APIResource {
    method create (line 19) | create(
    method retrieve (line 34) | retrieve(
    method update (line 49) | update(fileID: string, params: FileUpdateParams, options?: RequestOpti...
    method list (line 61) | list(
    method delete (line 79) | delete(
    method createAndPoll (line 94) | async createAndPoll(
    method poll (line 108) | async poll(
    method upload (line 161) | async upload(vectorStoreId: string, file: Uploadable, options?: Reques...
    method uploadAndPoll (line 168) | async uploadAndPoll(
    method content (line 180) | content(
  type VectorStoreFilesPage (line 194) | type VectorStoreFilesPage = CursorPage<VectorStoreFile>;
  type FileContentResponsesPage (line 197) | type FileContentResponsesPage = Page<FileContentResponse>;
  type VectorStoreFile (line 202) | interface VectorStoreFile {
  type LastError (line 265) | interface LastError {
  type VectorStoreFileDeleted (line 278) | interface VectorStoreFileDeleted {
  type FileContentResponse (line 286) | interface FileContentResponse {
  type FileCreateParams (line 298) | interface FileCreateParams {
  type FileRetrieveParams (line 322) | interface FileRetrieveParams {
  type FileUpdateParams (line 329) | interface FileUpdateParams {
  type FileListParams (line 345) | interface FileListParams extends CursorPageParams {
  type FileDeleteParams (line 366) | interface FileDeleteParams {
  type FileContentParams (line 373) | interface FileContentParams {

FILE: src/resources/vector-stores/vector-stores.ts
  class VectorStores (line 35) | class VectorStores extends APIResource {
    method create (line 42) | create(body: VectorStoreCreateParams, options?: RequestOptions): APIPr...
    method retrieve (line 53) | retrieve(vectorStoreID: string, options?: RequestOptions): APIPromise<...
    method update (line 63) | update(
    method list (line 78) | list(
    method delete (line 92) | delete(vectorStoreID: string, options?: RequestOptions):
Condensed preview — 522 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (3,068K chars).
[
  {
    "path": ".devcontainer/devcontainer.json",
    "chars": 468,
    "preview": "// For format details, see https://aka.ms/devcontainer.json. For config options, see the\n// README at: https://github.co"
  },
  {
    "path": ".github/CODEOWNERS",
    "chars": 206,
    "preview": "# This file is used to automatically assign reviewers to PRs\n# For more information see: https://help.github.com/en/gith"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.yml",
    "chars": 1778,
    "preview": "name: Bug report\ndescription: Report an issue or bug with this library\nlabels: ['bug']\nbody:\n  - type: markdown\n    attr"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/config.yml",
    "chars": 343,
    "preview": "blank_issues_enabled: false\ncontact_links:\n  - name: OpenAI support\n    url: https://help.openai.com/\n    about: |\n     "
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.yml",
    "chars": 1024,
    "preview": "name: Feature request\ndescription: Suggest an idea for this library\nlabels: ['feature-request']\nbody:\n  - type: markdown"
  },
  {
    "path": ".github/pull_request_template.md",
    "chars": 496,
    "preview": "<!-- Thank you for contributing to this project! -->\n<!-- The code in this repository is all auto-generated, and is not "
  },
  {
    "path": ".github/workflows/ci.yml",
    "chars": 3970,
    "preview": "name: CI\non:\n  push:\n    branches:\n      - '**'\n      - '!integrated/**'\n      - '!stl-preview-head/**'\n      - '!stl-pr"
  },
  {
    "path": ".github/workflows/create-releases.yml",
    "chars": 1180,
    "preview": "name: Create releases\non:\n  schedule:\n    - cron: '0 5 * * *' # every day at 5am UTC\n  push:\n    branches:\n      - maste"
  },
  {
    "path": ".github/workflows/detect-breaking-changes.yml",
    "chars": 2672,
    "preview": "name: CI\non:\n  pull_request:\n    branches:\n      - main\n      - next\n\njobs:\n  detect_breaking_changes:\n    runs-on: 'ubu"
  },
  {
    "path": ".github/workflows/publish-jsr.yml",
    "chars": 671,
    "preview": "# This workflow publishes the package to JSR.\n# You can run this workflow manually by navigating to https://www.github.c"
  },
  {
    "path": ".github/workflows/publish-npm.yml",
    "chars": 671,
    "preview": "# This workflow publishes the package to NPM.\n# You can run this workflow manually by navigating to https://www.github.c"
  },
  {
    "path": ".github/workflows/release-doctor.yml",
    "chars": 615,
    "preview": "name: Release Doctor\non:\n  push:\n    branches:\n      - master\n  workflow_dispatch:\n\njobs:\n  release_doctor:\n    name: re"
  },
  {
    "path": ".gitignore",
    "chars": 201,
    "preview": ".prism.log\nnode_modules\nyarn-error.log\ncodegen.log\nBrewfile.lock.json\ndist\ndist-deno\n/oidc\n/*.tgz\n.idea/\ntmp\n.pack\necosy"
  },
  {
    "path": ".prettierignore",
    "chars": 112,
    "preview": "CHANGELOG.md\n/ecosystem-tests/*/**\n/node_modules\n/deno\n\n# don't format tsc output, will break source maps\n/dist\n"
  },
  {
    "path": ".prettierrc.json",
    "chars": 133,
    "preview": "{\n  \"arrowParens\": \"always\",\n  \"experimentalTernaries\": true,\n  \"printWidth\": 110,\n  \"singleQuote\": true,\n  \"trailingCom"
  },
  {
    "path": ".release-please-manifest.json",
    "chars": 20,
    "preview": "{\n  \".\": \"6.32.0\"\n}\n"
  },
  {
    "path": ".stats.yml",
    "chars": 286,
    "preview": "configured_endpoints: 151\nopenapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-5"
  },
  {
    "path": "Brewfile",
    "chars": 12,
    "preview": "brew \"node\"\n"
  },
  {
    "path": "CHANGELOG.md",
    "chars": 209366,
    "preview": "# Changelog\n\n## 6.32.0 (2026-03-17)\n\nFull Changelog: [v6.31.0...v6.32.0](https://github.com/openai/openai-node/compare/v"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 2689,
    "preview": "## Setting up the environment\n\nThis repository uses [`yarn@v1`](https://classic.yarnpkg.com/lang/en/docs/install).\nOther"
  },
  {
    "path": "LICENSE",
    "chars": 11336,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "MIGRATION.md",
    "chars": 17360,
    "preview": "# Migration guide\n\nThis guide outlines the changes and steps needed to migrate your codebase to the latest version of th"
  },
  {
    "path": "README.md",
    "chars": 24455,
    "preview": "# OpenAI TypeScript and JavaScript API Library\n\n[![NPM version](<https://img.shields.io/npm/v/openai.svg?label=npm%20(st"
  },
  {
    "path": "SECURITY.md",
    "chars": 1331,
    "preview": "# Security Policy\n\n## Reporting Security Issues\n\nThis SDK is generated by [Stainless Software Inc](http://stainless.com)"
  },
  {
    "path": "api.md",
    "chars": 51093,
    "preview": "# Shared\n\nTypes:\n\n- <code><a href=\"./src/resources/shared.ts\">AllModels</a></code>\n- <code><a href=\"./src/resources/shar"
  },
  {
    "path": "azure.md",
    "chars": 1957,
    "preview": "# Microsoft Azure OpenAI\n\nTo use this library with [Azure OpenAI](https://learn.microsoft.com/azure/ai-services/openai/o"
  },
  {
    "path": "bin/check-release-environment",
    "chars": 482,
    "preview": "#!/usr/bin/env bash\n\nerrors=()\n\nif [ -z \"${STAINLESS_API_KEY}\" ]; then\n  errors+=(\"The STAINLESS_API_KEY secret has not "
  },
  {
    "path": "bin/cli",
    "chars": 1151,
    "preview": "#!/usr/bin/env node\n\nconst { spawnSync } = require('child_process');\n\nconst commands = {\n  migrate: {\n    description: '"
  },
  {
    "path": "bin/migration-config.json",
    "chars": 19861,
    "preview": "{\n  \"pkg\": \"openai\",\n  \"githubRepo\": \"https://github.com/openai/openai-node\",\n  \"clientClass\": \"OpenAI\",\n  \"methods\": [\n"
  },
  {
    "path": "bin/publish-jsr",
    "chars": 161,
    "preview": "#!/usr/bin/env bash\n\nset -eux\n\n# Build the project\nyarn build\n\n# Navigate to the dist directory\ncd dist-deno\n\nnpx jsr pu"
  },
  {
    "path": "bin/publish-npm",
    "chars": 2034,
    "preview": "#!/usr/bin/env bash\n\nset -eux\n\nif [[ ${NPM_TOKEN:-} ]]; then\n  npm config set '//registry.npmjs.org/:_authToken' \"$NPM_T"
  },
  {
    "path": "ecosystem-tests/browser-direct-import/.gitignore",
    "chars": 20,
    "preview": "/node_modules\n/dist\n"
  },
  {
    "path": "ecosystem-tests/browser-direct-import/package.json",
    "chars": 488,
    "preview": "{\n  \"name\": \"browser-direct-import\",\n  \"version\": \"0.0.1\",\n  \"private\": true,\n  \"scripts\": {\n    \"tsc\": \"tsc --noEmit\",\n"
  },
  {
    "path": "ecosystem-tests/browser-direct-import/public/index.html",
    "chars": 236,
    "preview": "<!DOCTYPE html>\n<html>\n  <head>\n    <meta charset=\"utf-8\" />\n    <title>Package in the Browser</title>\n  </head>\n  <body"
  },
  {
    "path": "ecosystem-tests/browser-direct-import/public/index.js",
    "chars": 7165,
    "preview": "// @ts-check\nimport OpenAI, { toFile } from './node_modules/openai/index.mjs';\nimport { distance } from './node_modules/"
  },
  {
    "path": "ecosystem-tests/browser-direct-import/src/test.ts",
    "chars": 2397,
    "preview": "import puppeteer from 'puppeteer';\n\n(async () => {\n  const browser = await puppeteer.launch({\n    args: ['--no-sandbox']"
  },
  {
    "path": "ecosystem-tests/browser-direct-import/tsconfig.json",
    "chars": 483,
    "preview": "{\n  \"compilerOptions\": {\n    \"module\": \"commonjs\",\n    \"strict\": true,\n    \"noImplicitReturns\": true,\n    \"removeComment"
  },
  {
    "path": "ecosystem-tests/bun/.gitignore",
    "chars": 2172,
    "preview": "# Based on https://raw.githubusercontent.com/github/gitignore/main/Node.gitignore\n\n# Logs\n\nlogs\n_.log\nnpm-debug.log_\nyar"
  },
  {
    "path": "ecosystem-tests/bun/README.md",
    "chars": 108,
    "preview": "# openai-bun-test\n\nTo install dependencies:\n\n```bash\nbun install\n```\n\nTo run:\n\n```bash\nbun run index.ts\n```\n"
  },
  {
    "path": "ecosystem-tests/bun/openai.test.ts",
    "chars": 6306,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport fs from 'fs';\nimport { distance } from 'fastest-levenshtein';\nimport { t"
  },
  {
    "path": "ecosystem-tests/bun/package.json",
    "chars": 273,
    "preview": "{\n  \"name\": \"openai-bun-test\",\n  \"module\": \"index.ts\",\n  \"type\": \"module\",\n  \"engines\": {\n    \"bun\": \">=1.0.0\"\n  },\n  \"s"
  },
  {
    "path": "ecosystem-tests/bun/tsconfig.json",
    "chars": 520,
    "preview": "{\n  \"include\": [\"*.ts\"],\n  \"compilerOptions\": {\n    \"lib\": [\"ESNext\"],\n    \"module\": \"esnext\",\n    \"target\": \"esnext\",\n "
  },
  {
    "path": "ecosystem-tests/cli.ts",
    "chars": 20603,
    "preview": "import fs from 'fs/promises';\nimport execa from 'execa';\nimport yargs from 'yargs';\nimport assert from 'assert';\nimport "
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/.editorconfig",
    "chars": 199,
    "preview": "# http://editorconfig.org\nroot = true\n\n[*]\nindent_style = tab\ntab_width = 2\nend_of_line = lf\ncharset = utf-8\ntrim_traili"
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/.prettierrc",
    "chars": 78,
    "preview": "{\n\t\"printWidth\": 140,\n\t\"singleQuote\": true,\n\t\"semi\": true,\n\t\"useTabs\": true\n}\n"
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/jest.config.cjs",
    "chars": 260,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n\ttransform: {},\n\ttestEnvironment: 'n"
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/package.json",
    "chars": 585,
    "preview": "{\n\t\"name\": \"cfw\",\n\t\"version\": \"0.0.0\",\n\t\"private\": true,\n\t\"type\": \"module\",\n\t\"scripts\": {\n\t\t\"tsc\": \"tsc && tsc -p tsconf"
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/src/uploadWebApiTestCases.ts",
    "chars": 5275,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { TranscriptionCreateParams } from 'openai/resources/audio/transcription"
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/src/worker.ts",
    "chars": 3577,
    "preview": "import { distance } from 'fastest-levenshtein';\n\n/**\n * Welcome to Cloudflare Workers! This is your first worker.\n *\n * "
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/tests/test.js",
    "chars": 134,
    "preview": "it(\n\t'works',\n\tasync () => {\n\t\texpect(await (await fetch('http://localhost:8787/test')).text()).toEqual('Passed!');\n\t},\n"
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/tsconfig.check.json",
    "chars": 153,
    "preview": "{\n  \"extends\": \"./tsconfig.json\",\n  \"include\": [\"src\"],\n  \"exclude\": [\"tests\", \"jest.config.cjs\"],\n  \"compilerOptions\": "
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/tsconfig.json",
    "chars": 10394,
    "preview": "{\n\t\"include\": [\"src/*.ts\"],\n\t\"compilerOptions\": {\n\t\t/* Visit https://aka.ms/tsconfig.json to read more about this file *"
  },
  {
    "path": "ecosystem-tests/cloudflare-worker/wrangler.toml",
    "chars": 1272,
    "preview": "name = \"cfw\"\nmain = \"src/worker.ts\"\ncompatibility_date = \"2023-06-18\"\n#node_compat = true\n\n# # KV Namespace binding - Fo"
  },
  {
    "path": "ecosystem-tests/deno/deno.jsonc",
    "chars": 304,
    "preview": "{\n  \"tasks\": {\n    \"install\": \"deno install --node-modules-dir main_test.ts -f\",\n    \"check\": \"deno lint && deno check m"
  },
  {
    "path": "ecosystem-tests/deno/main_test.ts",
    "chars": 4615,
    "preview": "import { assertEquals, AssertionError } from 'https://deno.land/std@0.192.0/testing/asserts.ts';\nimport { distance } fro"
  },
  {
    "path": "ecosystem-tests/node-js/package.json",
    "chars": 203,
    "preview": "{\n  \"name\": \"node-js\",\n  \"version\": \"1.0.0\",\n  \"description\": \"\",\n  \"main\": \"index.js\",\n  \"scripts\": {\n    \"test\": \"echo"
  },
  {
    "path": "ecosystem-tests/node-js/test.js",
    "chars": 147,
    "preview": "const openaiKey = \"a valid OpenAI key\"\nconst OpenAI = require('openai');\n\nconsole.log(OpenAI)\n\nconst openai = new OpenAI"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs/jest.config.cjs",
    "chars": 270,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  preset: 'ts-jest',\n  testEnvironme"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs/package.json",
    "chars": 550,
    "preview": "{\n  \"name\": \"node-ts-cjs\",\n  \"version\": \"0.0.1\",\n  \"main\": \"index.js\",\n  \"private\": true,\n  \"scripts\": {\n    \"tsc\": \"tsc"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs/tests/test-jsdom.ts",
    "chars": 4315,
    "preview": "/**\n * @jest-environment jest-fixed-jsdom\n */\nimport OpenAI, { toFile } from 'openai';\nimport { distance } from 'fastest"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs/tests/test-node.ts",
    "chars": 6356,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { TranscriptionCreateParams } from 'openai/resources/audio/transcription"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs/tsconfig.json",
    "chars": 1326,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n  \"exclude\": [\"tests/*-shim-errors.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs/tsconfig.nodenext.json",
    "chars": 1330,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n  \"exclude\": [\"tests/*-shim-errors.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-auto/jest.config.cjs",
    "chars": 270,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  preset: 'ts-jest',\n  testEnvironme"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-auto/moduleResolution/node/type-tests.ts",
    "chars": 254,
    "preview": "import OpenAI from 'openai';\n\nconst client = new OpenAI();\n\nasync function typeTests() {\n  const response = await client"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-auto/moduleResolution/nodenext/type-tests.ts",
    "chars": 216,
    "preview": "import OpenAI from 'openai';\n\nasync function typeTests(client: OpenAI) {\n  const response = await client.chat.completion"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-auto/package.json",
    "chars": 471,
    "preview": "{\n  \"name\": \"node-ts-cjs-auto\",\n  \"version\": \"0.0.1\",\n  \"main\": \"index.js\",\n  \"private\": true,\n  \"scripts\": {\n    \"tsc\":"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-auto/tests/test.ts",
    "chars": 8982,
    "preview": "import OpenAI, { APIUserAbortError, toFile } from 'openai';\nimport { TranscriptionCreateParams } from 'openai/resources/"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-auto/tsconfig.json",
    "chars": 1288,
    "preview": "{\n  \"include\": [\"tests/*\", \"moduleResolution/node/*\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-auto/tsconfig.nodenext.json",
    "chars": 1296,
    "preview": "{\n  \"include\": [\"tests/*\", \"moduleResolution/nodenext/*\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig."
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-web/jest.config.cjs",
    "chars": 270,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  preset: 'ts-jest',\n  testEnvironme"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-web/package.json",
    "chars": 478,
    "preview": "{\n  \"name\": \"node-ts-cjs-web\",\n  \"version\": \"0.0.1\",\n  \"main\": \"index.js\",\n  \"private\": true,\n  \"scripts\": {\n    \"tsc\": "
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-web/tests/test-jsdom.ts",
    "chars": 5525,
    "preview": "/**\n * @jest-environment jest-fixed-jsdom\n */\nimport OpenAI, { toFile } from 'openai';\nimport { distance } from 'fastest"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-web/tests/test-node.ts",
    "chars": 5040,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { distance } from 'fastest-levenshtein';\nimport { ChatCompletion } from "
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-web/tsconfig.json",
    "chars": 1270,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json to read more about this"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-web/tsconfig.nodenext.json",
    "chars": 1274,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json to read more about this"
  },
  {
    "path": "ecosystem-tests/node-ts-cjs-web/types-test.ts",
    "chars": 228,
    "preview": "import OpenAI from 'openai';\n\nasync function typeTests(client: OpenAI) {\n  const response = await client.chat.completion"
  },
  {
    "path": "ecosystem-tests/node-ts-esm/iitm.js",
    "chars": 95,
    "preview": "import {register} from 'node:module'\nregister('import-in-the-middle/hook.mjs', import.meta.url)"
  },
  {
    "path": "ecosystem-tests/node-ts-esm/jest.config.cjs",
    "chars": 599,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  extensionsToTreatAsEsm: ['.ts'],\n "
  },
  {
    "path": "ecosystem-tests/node-ts-esm/package.json",
    "chars": 573,
    "preview": "{\n  \"name\": \"node-ts-esm\",\n  \"version\": \"0.0.1\",\n  \"main\": \"index.js\",\n  \"type\": \"module\",\n  \"private\": true,\n  \"scripts"
  },
  {
    "path": "ecosystem-tests/node-ts-esm/tests/test-esnext.ts",
    "chars": 1770,
    "preview": "import OpenAI from 'openai';\nimport { distance } from 'fastest-levenshtein';\nimport { ChatCompletion } from 'openai/reso"
  },
  {
    "path": "ecosystem-tests/node-ts-esm/tests/test.ts",
    "chars": 5334,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { TranscriptionCreateParams } from 'openai/resources/audio/transcription"
  },
  {
    "path": "ecosystem-tests/node-ts-esm/tsconfig.json",
    "chars": 1265,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json to read more about this"
  },
  {
    "path": "ecosystem-tests/node-ts-esm/tsconfig.noderesolution.json",
    "chars": 1297,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n  \"exclude\": [\"tests/*-esnext.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/t"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-auto/esnext-type-tests.ts",
    "chars": 216,
    "preview": "import OpenAI from 'openai';\n\nasync function typeTests(client: OpenAI) {\n  const response = await client.chat.completion"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-auto/jest.config.cjs",
    "chars": 599,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  extensionsToTreatAsEsm: ['.ts'],\n "
  },
  {
    "path": "ecosystem-tests/node-ts-esm-auto/package.json",
    "chars": 481,
    "preview": "{\n  \"name\": \"node-ts-esm-auto\",\n  \"version\": \"0.0.1\",\n  \"main\": \"index.js\",\n  \"type\": \"module\",\n  \"private\": true,\n  \"sc"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-auto/tests/test.ts",
    "chars": 5838,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { TranscriptionCreateParams } from 'openai/resources/audio/transcription"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-auto/tsconfig.json",
    "chars": 1273,
    "preview": "{\n  \"include\": [\"tests/*.ts\", \"*.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json to read more ab"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-web/jest.config.cjs",
    "chars": 599,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  extensionsToTreatAsEsm: ['.ts'],\n "
  },
  {
    "path": "ecosystem-tests/node-ts-esm-web/package.json",
    "chars": 519,
    "preview": "{\n  \"name\": \"node-ts-esm-web\",\n  \"version\": \"0.0.1\",\n  \"main\": \"index.js\",\n  \"type\": \"module\",\n  \"private\": true,\n  \"scr"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-web/tests/test.ts",
    "chars": 5196,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { distance } from 'fastest-levenshtein';\nimport { ChatCompletion } from "
  },
  {
    "path": "ecosystem-tests/node-ts-esm-web/tsconfig.json",
    "chars": 1272,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json to read more about this"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-web/tsconfig.noderesolution.json",
    "chars": 1268,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json to read more about this"
  },
  {
    "path": "ecosystem-tests/node-ts-esm-web/types-test.ts",
    "chars": 228,
    "preview": "import OpenAI from 'openai';\n\nasync function typeTests(client: OpenAI) {\n  const response = await client.chat.completion"
  },
  {
    "path": "ecosystem-tests/node-ts4.5-jest28/jest.config.cjs",
    "chars": 270,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  preset: 'ts-jest',\n  testEnvironme"
  },
  {
    "path": "ecosystem-tests/node-ts4.5-jest28/package.json",
    "chars": 468,
    "preview": "{\n  \"name\": \"node-ts4.5-jest27\",\n  \"version\": \"0.0.1\",\n  \"main\": \"index.js\",\n  \"private\": true,\n  \"scripts\": {\n    \"tsc\""
  },
  {
    "path": "ecosystem-tests/node-ts4.5-jest28/tests/test.ts",
    "chars": 5838,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { TranscriptionCreateParams } from 'openai/resources/audio/transcription"
  },
  {
    "path": "ecosystem-tests/node-ts4.5-jest28/tsconfig.json",
    "chars": 1264,
    "preview": "{\n  \"include\": [\"tests/*.ts\"],\n\n  \"compilerOptions\": {\n    /* Visit https://aka.ms/tsconfig.json to read more about this"
  },
  {
    "path": "ecosystem-tests/proxy.ts",
    "chars": 707,
    "preview": "import { createServer } from 'http';\nimport { connect } from 'net';\n\nasync function startProxy() {\n  const proxy = creat"
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/.babelrc",
    "chars": 280,
    "preview": "{\n  \"presets\": [\n    \"@babel/preset-env\", // Automatically determines the Babel plugins and polyfills you need based on "
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/.gitignore",
    "chars": 20,
    "preview": "/node_modules\n/dist\n"
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/package.json",
    "chars": 795,
    "preview": "{\n  \"name\": \"ts-browser-webpack\",\n  \"version\": \"0.0.1\",\n  \"private\": true,\n  \"description\": \"ts-browser-webpack\",\n  \"scr"
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/public/index.html",
    "chars": 185,
    "preview": "<!DOCTYPE html>\n<html>\n  <head>\n    <meta charset=\"utf-8\" />\n    <title>Package in the Browser</title>\n  </head>\n  <body"
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/src/index.ts",
    "chars": 6803,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { distance } from 'fastest-levenshtein';\nimport { ChatCompletion } from "
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/src/test.ts",
    "chars": 2397,
    "preview": "import puppeteer from 'puppeteer';\n\n(async () => {\n  const browser = await puppeteer.launch({\n    args: ['--no-sandbox']"
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/tsconfig.json",
    "chars": 464,
    "preview": "{\n  \"compilerOptions\": {\n    \"module\": \"commonjs\",\n    \"strict\": true,\n    \"noImplicitReturns\": true,\n    \"removeComment"
  },
  {
    "path": "ecosystem-tests/ts-browser-webpack/webpack.config.js",
    "chars": 954,
    "preview": "const path = require('path');\nconst HtmlWebpackPlugin = require('html-webpack-plugin');\n\nconst publicPath = path.resolve"
  },
  {
    "path": "ecosystem-tests/vercel-edge/.gitignore",
    "chars": 375,
    "preview": "# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.\n\n# dependencies\n/node_modules\n/.pn"
  },
  {
    "path": "ecosystem-tests/vercel-edge/jest.config.cjs",
    "chars": 270,
    "preview": "/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */\nmodule.exports = {\n  preset: 'ts-jest',\n  testEnvironme"
  },
  {
    "path": "ecosystem-tests/vercel-edge/next.config.js",
    "chars": 120,
    "preview": "/** @type {import('next').NextConfig} */\nconst nextConfig = {\n  reactStrictMode: true,\n};\n\nmodule.exports = nextConfig;\n"
  },
  {
    "path": "ecosystem-tests/vercel-edge/package.json",
    "chars": 922,
    "preview": "{\n  \"name\": \"vercel-edge\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"dev\": \"next dev\",\n    \"build\": \""
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/_app.tsx",
    "chars": 150,
    "preview": "import type { AppProps } from 'next/app';\n\nexport default function App({ Component, pageProps }: AppProps) {\n  return <C"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/_document.tsx",
    "chars": 233,
    "preview": "import { Html, Head, Main, NextScript } from 'next/document';\n\nexport default function Document() {\n  return (\n    <Html"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/ai-streaming.tsx",
    "chars": 821,
    "preview": "import { useChat } from 'ai/react';\n\nexport default function Chat() {\n  const { messages, input, handleInputChange, hand"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/api/edge-test.ts",
    "chars": 2368,
    "preview": "import { NextRequest, NextResponse } from 'next/server';\nimport { distance } from 'fastest-levenshtein';\nimport OpenAI f"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/api/node-test.ts",
    "chars": 2078,
    "preview": "import type { NextApiRequest, NextApiResponse } from 'next';\nimport { distance } from 'fastest-levenshtein';\nimport Open"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/api/query-params.ts",
    "chars": 561,
    "preview": "import { NextRequest, NextResponse } from 'next/server';\nimport OpenAI from 'openai';\n\nexport const config = {\n  runtime"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/api/response.ts",
    "chars": 621,
    "preview": "import { NextRequest, NextResponse } from 'next/server';\nimport OpenAI from 'openai';\n\nexport const config = {\n  runtime"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/api/streaming.ts",
    "chars": 773,
    "preview": "import { NextRequest, NextResponse } from 'next/server';\nimport OpenAI from 'openai';\n\nexport const config = {\n  runtime"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/api/transcribe.ts",
    "chars": 1442,
    "preview": "import { NextRequest, NextResponse } from 'next/server';\nimport OpenAI, { toFile } from 'openai';\nimport { Transcription"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/api/vercel-ai-streaming.ts",
    "chars": 873,
    "preview": "import OpenAI from 'openai';\nimport { OpenAIStream, StreamingTextResponse } from 'ai';\nimport { NextRequest } from 'next"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/pages/index.tsx",
    "chars": 453,
    "preview": "import Head from 'next/head';\n\nexport default function Home() {\n  return (\n    <>\n      <Head>\n        <title>Vercel Edg"
  },
  {
    "path": "ecosystem-tests/vercel-edge/src/uploadWebApiTestCases.ts",
    "chars": 6641,
    "preview": "import OpenAI, { toFile } from 'openai';\nimport { TranscriptionCreateParams } from 'openai/resources/audio/transcription"
  },
  {
    "path": "ecosystem-tests/vercel-edge/tests/test.ts",
    "chars": 428,
    "preview": "const baseUrl = process.env.TEST_BASE_URL || 'http://localhost:3000';\nconsole.log(baseUrl);\n\nit(\n  'node runtime',\n  asy"
  },
  {
    "path": "ecosystem-tests/vercel-edge/tsconfig.json",
    "chars": 556,
    "preview": "{\n  \"compilerOptions\": {\n    \"target\": \"es5\",\n    \"lib\": [\"dom\", \"dom.iterable\", \"esnext\"],\n    \"allowJs\": true,\n    \"sk"
  },
  {
    "path": "eslint.config.mjs",
    "chars": 1062,
    "preview": "// @ts-check\nimport tseslint from 'typescript-eslint';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport "
  },
  {
    "path": "examples/.gitignore",
    "chars": 23,
    "preview": "yarn.lock\nnode_modules\n"
  },
  {
    "path": "examples/.keep",
    "chars": 240,
    "preview": "File generated from our OpenAPI spec by Stainless.\n\nThis directory can be used to store example files demonstrating usag"
  },
  {
    "path": "examples/assistant-stream-raw.ts",
    "chars": 1060,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\nconst openai = new OpenAI();\n\nasync function main() {\n  "
  },
  {
    "path": "examples/assistant-stream.ts",
    "chars": 1286,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\n/**\n * Example of streaming a response from an assistant"
  },
  {
    "path": "examples/assistants.ts",
    "chars": 1297,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\n/**\n * Example of polling for a complete response from a"
  },
  {
    "path": "examples/audio.ts",
    "chars": 2078,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI, { toFile } from 'openai';\nimport fs from 'fs';\nimport path from 'path';"
  },
  {
    "path": "examples/azure/chat.ts",
    "chars": 1440,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport { AzureOpenAI } from 'openai';\nimport { getBearerTokenProvider, DefaultAzureCre"
  },
  {
    "path": "examples/azure/realtime/websocket.ts",
    "chars": 1842,
    "preview": "import { OpenAIRealtimeWebSocket } from 'openai/realtime/websocket';\nimport { AzureOpenAI } from 'openai';\nimport { Defa"
  },
  {
    "path": "examples/azure/realtime/ws.ts",
    "chars": 1793,
    "preview": "import { DefaultAzureCredential, getBearerTokenProvider } from '@azure/identity';\nimport { OpenAIRealtimeWS } from 'open"
  },
  {
    "path": "examples/chat-params-types.ts",
    "chars": 3764,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\nimport { Stream } from 'openai/streaming';\n\n// gets API K"
  },
  {
    "path": "examples/demo.ts",
    "chars": 731,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\n// gets API Key from environment variable OPENAI_API_KEY"
  },
  {
    "path": "examples/errors.ts",
    "chars": 698,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI, { NotFoundError } from 'openai';\n\n// gets API Key from environment vari"
  },
  {
    "path": "examples/fine-tuning-data.jsonl",
    "chars": 2633,
    "preview": "{\"messages\": [{\"role\": \"system\", \"content\": \"Marvin is a factual chatbot that is also sarcastic.\"}, {\"role\": \"user\", \"co"
  },
  {
    "path": "examples/fine-tuning.ts",
    "chars": 2017,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\n/**\n * Fine-tuning allows you to train models on your own data.\n *\n * See this guide f"
  },
  {
    "path": "examples/function-call-diy.ts",
    "chars": 5228,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\nimport { ChatCompletionMessage, ChatCompletionMessagePara"
  },
  {
    "path": "examples/function-call-stream-raw.ts",
    "chars": 6883,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport util from 'util';\nimport OpenAI from 'openai';\nimport {\n  ChatCompletionMessage"
  },
  {
    "path": "examples/function-call-stream.ts",
    "chars": 6883,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport util from 'util';\nimport OpenAI from 'openai';\nimport {\n  ChatCompletionMessage"
  },
  {
    "path": "examples/function-call.ts",
    "chars": 5228,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\nimport { ChatCompletionMessage, ChatCompletionMessagePara"
  },
  {
    "path": "examples/image-stream.ts",
    "chars": 1575,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\nimport fs from 'fs';\nimport path from 'path';\n\nconst clie"
  },
  {
    "path": "examples/logprobs.ts",
    "chars": 539,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\n// gets API Key from environment variable OPENAI_API_KEY"
  },
  {
    "path": "examples/package.json",
    "chars": 500,
    "preview": "{\n  \"name\": \"openai-examples\",\n  \"version\": \"1.0.0\",\n  \"description\": \"Usage examples for the OpenAI Node.js SDK.\",\n  \"m"
  },
  {
    "path": "examples/parsing-run-tools.ts",
    "chars": 3922,
    "preview": "import OpenAI from 'openai';\nimport z from 'zod/v4'; // Also works for 'zod/v3'\nimport { zodFunction } from 'openai/help"
  },
  {
    "path": "examples/parsing-stream.ts",
    "chars": 1416,
    "preview": "import { zodResponseFormat } from 'openai/helpers/zod';\nimport OpenAI from 'openai/index';\nimport { z } from 'zod/v4'; /"
  },
  {
    "path": "examples/parsing-tools-stream.ts",
    "chars": 1269,
    "preview": "import { zodFunction } from 'openai/helpers/zod';\nimport OpenAI from 'openai/index';\nimport { z } from 'zod/v4'; // Also"
  },
  {
    "path": "examples/parsing-tools.ts",
    "chars": 1684,
    "preview": "import { zodFunction } from 'openai/helpers/zod';\nimport OpenAI from 'openai/index';\nimport { z } from 'zod/v4'; // Also"
  },
  {
    "path": "examples/parsing.ts",
    "chars": 914,
    "preview": "import { zodResponseFormat } from 'openai/helpers/zod';\nimport OpenAI from 'openai/index';\nimport { z } from 'zod/v4'; /"
  },
  {
    "path": "examples/raw-response.ts",
    "chars": 952,
    "preview": "#!/usr/bin/env -S yarn tsn -T\n\nimport OpenAI from 'openai';\n\n// gets API Key from environment variable OPENAI_API_KEY\nco"
  },
  {
    "path": "examples/realtime/websocket.ts",
    "chars": 1338,
    "preview": "import { OpenAIRealtimeWebSocket } from 'openai/realtime/websocket';\n\nasync function main() {\n  const rt = new OpenAIRea"
  },
  {
    "path": "examples/realtime/ws.ts",
    "chars": 1289,
    "preview": "import { OpenAIRealtimeWS } from 'openai/realtime/ws';\n\nasync function main() {\n  const rt = new OpenAIRealtimeWS({ mode"
  },
  {
    "path": "examples/responses/stream.ts",
    "chars": 530,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\nconst openai = new OpenAI();\n\nasync function main() {\n  "
  },
  {
    "path": "examples/responses/stream_background.ts",
    "chars": 804,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\nconst openai = new OpenAI();\n\nasync function main() {\n  "
  },
  {
    "path": "examples/responses/streaming-tools.ts",
    "chars": 1243,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport { OpenAI } from 'openai';\nimport { zodResponsesFunction } from 'openai/helpers/"
  },
  {
    "path": "examples/responses/structured-outputs-tools.ts",
    "chars": 1394,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport { OpenAI } from 'openai';\nimport { zodResponsesFunction } from 'openai/helpers/"
  },
  {
    "path": "examples/responses/structured-outputs.ts",
    "chars": 717,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport { OpenAI } from 'openai';\nimport { zodTextFormat } from 'openai/helpers/zod';\ni"
  },
  {
    "path": "examples/responses/websocket.ts",
    "chars": 12742,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\nimport type {\n  FunctionTool,\n  ResponseInput,\n  Response"
  },
  {
    "path": "examples/speech-to-text.ts",
    "chars": 484,
    "preview": "import OpenAI from 'openai';\nimport { recordAudio } from 'openai/helpers/audio';\n\nconst openai = new OpenAI();\n\nasync fu"
  },
  {
    "path": "examples/stream-to-client-browser.ts",
    "chars": 1047,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\n/**\n * This file is intended be run from the command-line with Node\n * for easy demo p"
  },
  {
    "path": "examples/stream-to-client-express.ts",
    "chars": 1374,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\n// This file demonstrates how to stream from the server the chunks as\n// a new-line se"
  },
  {
    "path": "examples/stream-to-client-next.ts",
    "chars": 1235,
    "preview": "import OpenAI from 'openai';\nimport type { NextApiRequest, NextApiResponse } from 'next';\n\n// This file demonstrates how"
  },
  {
    "path": "examples/stream-to-client-raw.ts",
    "chars": 1525,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\n// This file demonstrates how to stream from the server as a text/plain\n// response wi"
  },
  {
    "path": "examples/stream.ts",
    "chars": 545,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\nconst openai = new OpenAI();\n\nasync function main() {\n  "
  },
  {
    "path": "examples/text-to-speech.ts",
    "chars": 500,
    "preview": "import OpenAI from 'openai';\nimport { playAudio } from 'openai/helpers/audio';\n\nconst openai = new OpenAI();\n\nconst exam"
  },
  {
    "path": "examples/tool-call-helpers-zod.ts",
    "chars": 4998,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\nimport { zodFunction } from 'openai/helpers/zod';\nimport "
  },
  {
    "path": "examples/tool-call-helpers.ts",
    "chars": 5376,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\nimport { RunnableToolFunction } from 'openai/lib/Runnable"
  },
  {
    "path": "examples/tool-calls-stream.ts",
    "chars": 9540,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\n//\n//\n//\n//\n//\n//\n// Note: this file is provided for completeness,\n// but much more co"
  },
  {
    "path": "examples/tsconfig.json",
    "chars": 36,
    "preview": "{\n  \"extends\": \"../tsconfig.json\"\n}\n"
  },
  {
    "path": "examples/types.ts",
    "chars": 928,
    "preview": "#!/usr/bin/env -S npm run tsn -T\n\nimport OpenAI from 'openai';\n\n// gets API Key from environment variable OPENAI_API_KEY"
  },
  {
    "path": "examples/ui-generation.ts",
    "chars": 1277,
    "preview": "import OpenAI from 'openai';\nimport { z } from 'zod/v4'; // Also works for 'zod/v3'\nimport { zodResponseFormat } from 'o"
  },
  {
    "path": "helpers.md",
    "chars": 25729,
    "preview": "# Structured Outputs Parsing Helpers\n\nThe OpenAI API supports extracting JSON from the model with the `response_format` "
  },
  {
    "path": "jest.config.ts",
    "chars": 642,
    "preview": "import type { JestConfigWithTsJest } from 'ts-jest';\n\nconst config: JestConfigWithTsJest = {\n  preset: 'ts-jest/presets/"
  },
  {
    "path": "jsr.json",
    "chars": 299,
    "preview": "{\n  \"name\": \"@openai/openai\",\n  \"version\": \"6.32.0\",\n  \"exports\": {\n    \".\": \"./index.ts\",\n    \"./helpers/zod\": \"./helpe"
  },
  {
    "path": "jsr.json.orig",
    "chars": 353,
    "preview": "{\n  \"name\": \"@openai/openai\",\n  \"version\": \"4.87.4\",\n  \"exports\": {\n    \".\": \"./index.ts\",\n    \"./helpers/zod\": \"./helpe"
  },
  {
    "path": "package.json",
    "chars": 2764,
    "preview": "{\n  \"name\": \"openai\",\n  \"version\": \"6.32.0\",\n  \"description\": \"The official TypeScript library for the OpenAI API\",\n  \"a"
  },
  {
    "path": "realtime.md",
    "chars": 3484,
    "preview": "## Realtime API\n\nThe Realtime API enables you to build low-latency, multi-modal conversational experiences. It currently"
  },
  {
    "path": "release-please-config.json",
    "chars": 1421,
    "preview": "{\n  \"packages\": {\n    \".\": {}\n  },\n  \"$schema\": \"https://raw.githubusercontent.com/stainless-api/release-please/main/sch"
  },
  {
    "path": "scripts/bootstrap",
    "chars": 604,
    "preview": "#!/usr/bin/env bash\n\nset -e\n\ncd \"$(dirname \"$0\")/..\"\n\nif [ -f \"Brewfile\" ] && [ \"$(uname -s)\" = \"Darwin\" ] && [ \"$SKIP_B"
  },
  {
    "path": "scripts/build",
    "chars": 1646,
    "preview": "#!/usr/bin/env bash\n\nset -exuo pipefail\n\ncd \"$(dirname \"$0\")/..\"\n\nnode scripts/utils/check-version.cjs\n\n# Build into dis"
  },
  {
    "path": "scripts/build-deno",
    "chars": 305,
    "preview": "#!/usr/bin/env bash\n\nset -exuo pipefail\n\ncd \"$(dirname \"$0\")/..\"\n\nrm -rf dist-deno; mkdir dist-deno\ncp -rp src/* jsr.jso"
  },
  {
    "path": "scripts/detect-breaking-changes",
    "chars": 3244,
    "preview": "#!/usr/bin/env bash\n\nset -e\n\ncd \"$(dirname \"$0\")/..\"\n\necho \"==> Detecting breaking changes\"\n\nTEST_PATHS=(\n\ttests/api-res"
  },
  {
    "path": "scripts/fast-format",
    "chars": 1111,
    "preview": "#!/usr/bin/env bash\n\nset -euo pipefail\n\necho \"Script started with $# arguments\"\necho \"Arguments: $*\"\necho \"Script locati"
  },
  {
    "path": "scripts/format",
    "chars": 342,
    "preview": "#!/usr/bin/env bash\n\nset -e\n\ncd \"$(dirname \"$0\")/..\"\n\necho \"==> Running eslint --fix\"\n./node_modules/.bin/eslint --fix ."
  },
  {
    "path": "scripts/lint",
    "chars": 508,
    "preview": "#!/usr/bin/env bash\n\nset -e\n\ncd \"$(dirname \"$0\")/..\"\n\necho \"==> Running eslint\"\n./node_modules/.bin/eslint .\n\necho \"==> "
  },
  {
    "path": "scripts/mock",
    "chars": 1221,
    "preview": "#!/usr/bin/env bash\n\nset -e\n\ncd \"$(dirname \"$0\")/..\"\n\nif [[ -n \"$1\" && \"$1\" != '--'* ]]; then\n  URL=\"$1\"\n  shift\nelse\n  "
  },
  {
    "path": "scripts/test",
    "chars": 1371,
    "preview": "#!/usr/bin/env bash\n\nset -e\n\ncd \"$(dirname \"$0\")/..\"\n\nRED='\\033[0;31m'\nGREEN='\\033[0;32m'\nYELLOW='\\033[0;33m'\nNC='\\033[0"
  },
  {
    "path": "scripts/utils/attw-report.cjs",
    "chars": 1082,
    "preview": "const fs = require('fs');\nconst problems = Object.values(JSON.parse(fs.readFileSync('.attw.json', 'utf-8')).problems)\n  "
  },
  {
    "path": "scripts/utils/check-is-in-git-install.sh",
    "chars": 477,
    "preview": "#!/usr/bin/env bash\n# Check if you happen to call prepare for a repository that's already in node_modules.\n[ \"$(basename"
  },
  {
    "path": "scripts/utils/check-version.cjs",
    "chars": 701,
    "preview": "const fs = require('fs');\nconst path = require('path');\n\nconst main = () => {\n  const pkg = require('../../package.json'"
  },
  {
    "path": "scripts/utils/convert-jsr-readme.cjs",
    "chars": 4343,
    "preview": "const fs = require('fs');\nconst { parse } = require('@typescript-eslint/parser');\nconst { TSError } = require('@typescri"
  },
  {
    "path": "scripts/utils/fix-index-exports.cjs",
    "chars": 534,
    "preview": "const fs = require('fs');\nconst path = require('path');\n\nconst indexJs =\n  process.env['DIST_PATH'] ?\n    path.resolve(p"
  },
  {
    "path": "scripts/utils/git-swap.sh",
    "chars": 403,
    "preview": "#!/usr/bin/env bash\nset -exuo pipefail\n# the package is published to NPM from ./dist\n# we want the final file structure "
  },
  {
    "path": "scripts/utils/make-dist-package-json.cjs",
    "chars": 654,
    "preview": "const pkgJson = require(process.env['PKG_JSON_PATH'] || '../../package.json');\n\nfunction processExportMap(m) {\n  for (co"
  },
  {
    "path": "scripts/utils/postprocess-files.cjs",
    "chars": 2813,
    "preview": "// @ts-check\nconst fs = require('fs');\nconst path = require('path');\n\nconst distDir =\n  process.env['DIST_PATH'] ?\n    p"
  },
  {
    "path": "scripts/utils/upload-artifact.sh",
    "chars": 775,
    "preview": "#!/usr/bin/env bash\nset -exuo pipefail\n\nRESPONSE=$(curl -X POST \"$URL\" \\\n  -H \"Authorization: Bearer $AUTH\" \\\n  -H \"Cont"
  }
]

// ... and 322 more files (download for full content)

About this extraction

This page contains the full source code of the openai/openai-node GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 522 files (2.8 MB), approximately 756.5k tokens, and a symbol index with 2617 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!