{"id":"src_jsbnrYBzcKUcWTVRDsop2","slug":"openai-python-sdk","name":"Python SDK","type":"github","url":"https://github.com/openai/openai-python","orgId":"org_XCtsUSrelarAybkAnBD3g","org":{"slug":"openai","name":"OpenAI"},"isPrimary":false,"metadata":"{\"evaluatedMethod\":\"github\",\"evaluatedAt\":\"2026-04-07T17:18:45.779Z\",\"changelogUrl\":\"https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md\",\"changelogDetectedAt\":\"2026-04-07T17:27:37.464Z\"}","releaseCount":201,"releasesLast30Days":3,"avgReleasesPerWeek":1.3,"latestVersion":"v2.32.0","latestDate":"2026-04-15T22:27:40.000Z","changelogUrl":"https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md","hasChangelogFile":true,"lastFetchedAt":"2026-04-19T03:01:49.950Z","trackingSince":"2024-08-12T19:01:46.000Z","releases":[{"id":"rel_niRBNgHnSsMLB3u1Hr-ee","version":"v2.32.0","title":"v2.32.0","summary":"## 2.32.0 (2026-04-15)\n\nFull Changelog: [v2.31.0...v2.32.0](https://github.com/openai/openai-python/compare/v2.31.0...v2.32.0)\n\n### Features\n\n* **api:...","content":"## 2.32.0 (2026-04-15)\n\nFull Changelog: [v2.31.0...v2.32.0](https://github.com/openai/openai-python/compare/v2.31.0...v2.32.0)\n\n### Features\n\n* **api:** Add detail to InputFileContent ([60de21d](https://github.com/openai/openai-python/commit/60de21d1fcfbcadea0d9b8d884c73c9dc49d14ff))\n* **api:** add OAuthErrorCode type ([0c8d2c3](https://github.com/openai/openai-python/commit/0c8d2c3b44242c9139dc554896ea489b56e236b8))\n* **client:** add event handler implementation for websockets ([0280d05](https://github.com/openai/openai-python/commit/0280d0568f706684ecbf0aabf3575cdcb7fd22d5))\n* **client:** allow enqueuing to websockets even when not connected ([67aa20e](https://github.com/openai/openai-python/commit/67aa20e69bc0e4a3b7694327c808606bfa24a966))\n* **client:** support reconnection in websockets ([eb72a95](https://github.com/openai/openai-python/commit/eb72a953ea9dc5beec3eef537be6eb32292c3f65))\n\n\n### Bug Fixes\n\n* ensure file data are only sent as 1 parameter ([c0c2ecd](https://github.com/openai/openai-python/commit/c0c2ecd0f6b64fa5fafda6134bb06995b143a2cf))\n\n\n### Documentation\n\n* improve examples ([84712fa](https://github.com/openai/openai-python/commit/84712fa0f094b53151a0fe6ac85aa98018b2a7e2))","publishedAt":"2026-04-15T22:27:40.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.32.0","media":[]},{"id":"rel_qvguJ1uw75_KIHmnG5-6p","version":"v2.31.0","title":"v2.31.0","summary":"## 2.31.0 (2026-04-08)\n\nFull Changelog: [v2.30.0...v2.31.0](https://github.com/openai/openai-python/compare/v2.30.0...v2.31.0)\n\n### Features\n\n* **api:...","content":"## 2.31.0 (2026-04-08)\n\nFull Changelog: [v2.30.0...v2.31.0](https://github.com/openai/openai-python/compare/v2.30.0...v2.31.0)\n\n### Features\n\n* **api:** add phase field to conversations message ([3e5834e](https://github.com/openai/openai-python/commit/3e5834efb39b24e019a29dc54d890c67d18cbb54))\n* **api:** add web_search_call.results to ResponseIncludable type ([ffd8741](https://github.com/openai/openai-python/commit/ffd8741dd38609a5af0159ceb800d8ddba7925f8))\n* **client:** add support for short-lived tokens ([#1608](https://github.com/openai/openai-python/issues/1608)) ([22fe722](https://github.com/openai/openai-python/commit/22fe7228d4990c197cd721b3ad7931ad05cca5dd))\n* **client:** support sending raw data over websockets ([f1bc52e](https://github.com/openai/openai-python/commit/f1bc52ef641dfca6fdf2a5b00ce3b09bff2552f5))\n* **internal:** implement indices array format for query and form serialization ([49194cf](https://github.com/openai/openai-python/commit/49194cfa711328216ff131d6f65c9298822a7c51))\n\n\n### Bug Fixes\n\n* **client:** preserve hardcoded query params when merging with user params ([92e109c](https://github.com/openai/openai-python/commit/92e109c3d9569a942e1919e75977dc13fa015f9a))\n* **types:** remove web_search_call.results from ResponseIncludable ([d3cc401](https://github.com/openai/openai-python/commit/d3cc40165cd86015833d15167cc7712b4102f932))\n\n\n### Chores\n\n* **tests:** bump steady to v0.20.1 ([d60e2ee](https://github.com/openai/openai-python/commit/d60e2eea7f6916540cd4ba901dceb07051119da4))\n* **tests:** bump steady to v0.20.2 ([6508d47](https://github.com/openai/openai-python/commit/6508d474332d4e82d9615c0a9a77379f9b5e4412))\n\n\n### Documentation\n\n* **api:** update file parameter descriptions in vector_stores files and file_batches ([a9e7ebd](https://github.com/openai/openai-python/commit/a9e7ebd505b9ae90514339aa63c6f1984a08cf6b))","publishedAt":"2026-04-08T21:01:00.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.31.0","media":[]},{"id":"rel_2CLCIVqKmIP-wBAld8Jfj","version":"v2.30.0","title":"v2.30.0","summary":"## 2.30.0 (2026-03-25)\n\nFull Changelog: [v2.29.0...v2.30.0](https://github.com/openai/openai-python/compare/v2.29.0...v2.30.0)\n\n### Features\n\n* **api:...","content":"## 2.30.0 (2026-03-25)\n\nFull Changelog: [v2.29.0...v2.30.0](https://github.com/openai/openai-python/compare/v2.29.0...v2.30.0)\n\n### Features\n\n* **api:** add keys field to Click/DoubleClick/Drag/Move/Scroll computer actions ([ee1bbed](https://github.com/openai/openai-python/commit/ee1bbeddbb38dab817557412dc106354409bb950))\n\n\n### Bug Fixes\n\n* **api:** align SDK response types with expanded item schemas ([f3f258a](https://github.com/openai/openai-python/commit/f3f258a9d4d19db3fb0c6c35e25ad3cedbe71254))\n* sanitize endpoint path params ([89f6698](https://github.com/openai/openai-python/commit/89f66988fde790c0c83ff8b876d1e1b10d616367))\n* **types:** make type required in ResponseInputMessageItem ([cfdb167](https://github.com/openai/openai-python/commit/cfdb1676ea0550840330a58f1a31a40a41a0a53f))\n\n\n### Chores\n\n* **ci:** skip lint on metadata-only changes ([faa93e1](https://github.com/openai/openai-python/commit/faa93e19a1d5c30c7dd672a08dbbdbb3c0374714))\n* **internal:** update gitignore ([c468477](https://github.com/openai/openai-python/commit/c468477f1546579618865a726e35a685cffeacd9))\n* **tests:** bump steady to v0.19.4 ([f350af8](https://github.com/openai/openai-python/commit/f350af86c13ade0237778010d264c55fda443354))\n* **tests:** bump steady to v0.19.5 ([5c03401](https://github.com/openai/openai-python/commit/5c0340128fc1a416e2dfdc6ab4b05f1e954e8482))\n* **tests:** bump steady to v0.19.6 ([b6353b8](https://github.com/openai/openai-python/commit/b6353b8411d31dcc95875d801ce9e90a21e0fd52))\n* **tests:** bump steady to v0.19.7 ([1d654be](https://github.com/openai/openai-python/commit/1d654bea74ac9c3d43302587f98f33cfff502e48))\n\n\n### Refactors\n\n* **tests:** switch from prism to steady ([4a82035](https://github.com/openai/openai-python/commit/4a82035669b739d16a0e85d4ded778d51e061948))","publishedAt":"2026-03-25T22:08:18.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.30.0","media":[]},{"id":"rel_RaReWi_jl3PPFwe8aJFE9","version":"v2.29.0","title":"v2.29.0","summary":"## 2.29.0 (2026-03-17)\n\nFull Changelog: [v2.28.0...v2.29.0](https://github.com/openai/openai-python/compare/v2.28.0...v2.29.0)\n\n### Features\n\n* **api:...","content":"## 2.29.0 (2026-03-17)\n\nFull Changelog: [v2.28.0...v2.29.0](https://github.com/openai/openai-python/compare/v2.28.0...v2.29.0)\n\n### Features\n\n* **api:** 5.4 nano and mini model slugs ([3b45666](https://github.com/openai/openai-python/commit/3b456661f77ca3196aceb5ab3350664a63481114))\n* **api:** add /v1/videos endpoint to batches create method ([c0e7a16](https://github.com/openai/openai-python/commit/c0e7a161a996854021e9eb69ea2a60ca0d08047f))\n* **api:** add defer_loading field to ToolFunction ([3167595](https://github.com/openai/openai-python/commit/3167595432bdda2f90721901d30ad316db49323e))\n* **api:** add in and nin operators to ComparisonFilter type ([664f02b](https://github.com/openai/openai-python/commit/664f02b051af84e1ca3fa313981ec72fdea269b3))\n\n\n### Bug Fixes\n\n* **deps:** bump minimum typing-extensions version ([a2fb2ca](https://github.com/openai/openai-python/commit/a2fb2ca55142c6658a18be7bd1392a01f5a83f35))\n* **pydantic:** do not pass `by_alias` unless set ([8ebe8fb](https://github.com/openai/openai-python/commit/8ebe8fbcb011c6a005a715cae50c6400a8596ee0))\n\n\n### Chores\n\n* **internal:** tweak CI branches ([96ccc3c](https://github.com/openai/openai-python/commit/96ccc3cca35645fd3140f99b0fc8e55545065212))","publishedAt":"2026-03-17T17:53:05.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.29.0","media":[]},{"id":"rel_e8wjkZhUwn4kXfaPzkZ_C","version":"v2.28.0","title":"v2.28.0","summary":"## 2.28.0 (2026-03-13)\n\nFull Changelog: [v2.27.0...v2.28.0](https://github.com/openai/openai-python/compare/v2.27.0...v2.28.0)\n\n### Features\n\n* **api:...","content":"## 2.28.0 (2026-03-13)\n\nFull Changelog: [v2.27.0...v2.28.0](https://github.com/openai/openai-python/compare/v2.27.0...v2.28.0)\n\n### Features\n\n* **api:** custom voices ([50dc060](https://github.com/openai/openai-python/commit/50dc060b55767615419219ef567d31210517e613))","publishedAt":"2026-03-13T19:55:50.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.28.0","media":[]},{"id":"rel_DevqMj8j72KlTmgZ5L2po","version":"v2.27.0","title":"v2.27.0","summary":"## 2.27.0 (2026-03-13)\n\nFull Changelog: [v2.26.0...v2.27.0](https://github.com/openai/openai-python/compare/v2.26.0...v2.27.0)\n\n### Features\n\n* **api:...","content":"## 2.27.0 (2026-03-13)\n\nFull Changelog: [v2.26.0...v2.27.0](https://github.com/openai/openai-python/compare/v2.26.0...v2.27.0)\n\n### Features\n\n* **api:** api update ([60ab24a](https://github.com/openai/openai-python/commit/60ab24ae722a7fa280eb4b2273da4ded1f930231))\n* **api:** manual updates ([b244b09](https://github.com/openai/openai-python/commit/b244b0946045aaa0dbfa8c0ce5164b64e1156834))\n* **api:** manual updates ([d806635](https://github.com/openai/openai-python/commit/d806635081a736cc81344bf1e62b57956a88d093))\n* **api:** sora api improvements: character api, video extensions/edits, higher resolution exports. ([58b70d3](https://github.com/openai/openai-python/commit/58b70d304a4b2cf70eae4db4b448d439fc8b8ba3))\n\n\n### Bug Fixes\n\n* **api:** repair merged videos resource ([742d8ee](https://github.com/openai/openai-python/commit/742d8ee1f969ee1bbb39ba9d799dcd5c480d8ddb))\n\n\n### Chores\n\n* **internal:** codegen related update ([4e6498e](https://github.com/openai/openai-python/commit/4e6498e2d222dd35d76bb397ba976ff53c852e12))\n* **internal:** codegen related update ([93af129](https://github.com/openai/openai-python/commit/93af129e8919de6d3aee19329c8bdef0532bd20a))\n* match http protocol with ws protocol instead of wss ([026f9de](https://github.com/openai/openai-python/commit/026f9de35d2aa74f35c91261eb5ea43d4ab1b8ba))\n* use proper capitalization for WebSockets ([a2f9b07](https://github.com/openai/openai-python/commit/a2f9b0722597627e8d01aa05c27a52015072726b))","publishedAt":"2026-03-13T19:15:57.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.27.0","media":[]},{"id":"rel_ssXPg6r5I8640eTlDMF5A","version":"v2.26.0","title":"v2.26.0","summary":"## 2.26.0 (2026-03-05)\n\nFull Changelog: [v2.25.0...v2.26.0](https://github.com/openai/openai-python/compare/v2.25.0...v2.26.0)\n\n### Features\n\n* **api:...","content":"## 2.26.0 (2026-03-05)\n\nFull Changelog: [v2.25.0...v2.26.0](https://github.com/openai/openai-python/compare/v2.25.0...v2.26.0)\n\n### Features\n\n* **api:** The GA ComputerTool now uses the CompuerTool class. The 'computer_use_preview' tool is moved to ComputerUsePreview ([78f5b3c](https://github.com/openai/openai-python/commit/78f5b3c287b71ed6fbeb71fb6b5c0366db704cd2))","publishedAt":"2026-03-05T23:16:58.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.26.0","media":[]},{"id":"rel_ewMCZOHSvs3dgX_3jH6Op","version":"v2.25.0","title":"v2.25.0","summary":"## 2.25.0 (2026-03-05)\n\nFull Changelog: [v2.24.0...v2.25.0](https://github.com/openai/openai-python/compare/v2.24.0...v2.25.0)\n\n### Features\n\n* **api:...","content":"## 2.25.0 (2026-03-05)\n\nFull Changelog: [v2.24.0...v2.25.0](https://github.com/openai/openai-python/compare/v2.24.0...v2.25.0)\n\n### Features\n\n* **api:** gpt-5.4, tool search tool, and new computer tool ([6b2043f](https://github.com/openai/openai-python/commit/6b2043f3d63058f5582eab7a7705b30a3d5536f0))\n* **api:** remove prompt_cache_key param from responses, phase field from message types ([44fb382](https://github.com/openai/openai-python/commit/44fb382698872d98d5f72c880b47846c7b594f4f))\n\n\n### Bug Fixes\n\n* **api:** internal schema fixes ([0c0f970](https://github.com/openai/openai-python/commit/0c0f970cbd164131bf06f7ab38f170bbcb323683))\n* **api:** manual updates ([9fc323f](https://github.com/openai/openai-python/commit/9fc323f4da6cfca9de194e12c1486a3cd1bfa4b5))\n* **api:** readd phase ([1b27b5a](https://github.com/openai/openai-python/commit/1b27b5a834f5cb75f80c597259d0df0352ba83bd))\n\n\n### Chores\n\n* **internal:** codegen related update ([bdb837d](https://github.com/openai/openai-python/commit/bdb837d2c1d2a161cc4b22ef26e9e8446d5dc2a3))\n* **internal:** codegen related update ([b1de941](https://github.com/openai/openai-python/commit/b1de9419a68fd6fb97a63f415fb3d1e5851582cb))\n* **internal:** reduce warnings ([7cdbd06](https://github.com/openai/openai-python/commit/7cdbd06d3ca41af64d616b4b4bb61226cc38b662))","publishedAt":"2026-03-05T18:34:55.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.25.0","media":[]},{"id":"rel_Mu2kxItnFX9Ooa9ZLa0_X","version":"v2.24.0","title":"v2.24.0","summary":"## 2.24.0 (2026-02-24)\n\nFull Changelog: [v2.23.0...v2.24.0](https://github.com/openai/openai-python/compare/v2.23.0...v2.24.0)\n\n### Features\n\n* **api:...","content":"## 2.24.0 (2026-02-24)\n\nFull Changelog: [v2.23.0...v2.24.0](https://github.com/openai/openai-python/compare/v2.23.0...v2.24.0)\n\n### Features\n\n* **api:** add phase ([391deb9](https://github.com/openai/openai-python/commit/391deb99f6a92e51bffb25efd8dfe367d144bb9d))\n\n\n### Bug Fixes\n\n* **api:** fix phase enum ([42ebf7c](https://github.com/openai/openai-python/commit/42ebf7c30b7e27a175c0d75fcf42c8dc858e56d6))\n* **api:** phase docs ([7ddc61c](https://github.com/openai/openai-python/commit/7ddc61cd0f7825d5e7f3a10daf809135511d8d20))\n\n\n### Chores\n\n* **internal:** make `test_proxy_environment_variables` more resilient to env ([65af8fd](https://github.com/openai/openai-python/commit/65af8fd8550e99236e3f4dcb035312441788157a))\n* **internal:** refactor sse event parsing ([2344600](https://github.com/openai/openai-python/commit/23446008f06fb474d8c75d14a1bce26f4c5b95d8))","publishedAt":"2026-02-24T20:01:29.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.24.0","media":[]},{"id":"rel_FfF68ar59Pl8lAUhyPj2O","version":"v2.23.0","title":"v2.23.0","summary":"## 2.23.0 (2026-02-24)\n\nFull Changelog: [v2.22.0...v2.23.0](https://github.com/openai/openai-python/compare/v2.22.0...v2.23.0)\n\n### Features\n\n* **api:...","content":"## 2.23.0 (2026-02-24)\n\nFull Changelog: [v2.22.0...v2.23.0](https://github.com/openai/openai-python/compare/v2.22.0...v2.23.0)\n\n### Features\n\n* **api:** add gpt-realtime-1.5 and gpt-audio-1.5 model options to realtime calls ([3300b61](https://github.com/openai/openai-python/commit/3300b61e1d5a34c9d28ec9cebbebd0de1fa93aa6))\n\n\n### Chores\n\n* **internal:** make `test_proxy_environment_variables` more resilient ([6b441e2](https://github.com/openai/openai-python/commit/6b441e2c43df60a773f62308e918d76b8eb3c4d3))","publishedAt":"2026-02-24T03:19:39.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.23.0","media":[]},{"id":"rel_lHEHUucByWSZx8YXSIiLx","version":"v2.22.0","title":"v2.22.0","summary":"## 2.22.0 (2026-02-23)\n\nFull Changelog: [v2.21.0...v2.22.0](https://github.com/openai/openai-python/compare/v2.21.0...v2.22.0)\n\n### Features\n\n* **api:...","content":"## 2.22.0 (2026-02-23)\n\nFull Changelog: [v2.21.0...v2.22.0](https://github.com/openai/openai-python/compare/v2.21.0...v2.22.0)\n\n### Features\n\n* **api:** websockets for responses api ([c01f6fb](https://github.com/openai/openai-python/commit/c01f6fb0d55b7454f73c4904ea7a1954553085dc))\n\n\n### Chores\n\n* **internal:** add request options to SSE classes ([cdb4315](https://github.com/openai/openai-python/commit/cdb4315ee29d5260bb373625d74cb523b4e3859c))\n* update mock server docs ([91f4da8](https://github.com/openai/openai-python/commit/91f4da80ec3dba5d3566961560dfd6feb9c2feb0))\n\n\n### Documentation\n\n* **api:** add batch size limit to file_batches parameter descriptions ([16ae76a](https://github.com/openai/openai-python/commit/16ae76a20a47f94c91ee2ca0b2ada274633abab3))\n* **api:** enhance method descriptions across audio, chat, realtime, skills, uploads, videos ([21f9e5a](https://github.com/openai/openai-python/commit/21f9e5aaf6ae27f0235fddb3ffa30fe73337f59b))\n* **api:** update safety_identifier documentation in chat completions and responses ([d74bfff](https://github.com/openai/openai-python/commit/d74bfff62c1c2b32d4dc88fd47ae7b1b2a962017))","publishedAt":"2026-02-23T20:13:52.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.22.0","media":[]},{"id":"rel_plA4Ug3yBenjSgU-qNDlU","version":"v2.21.0","title":"v2.21.0","summary":"## 2.21.0 (2026-02-13)\n\nFull Changelog: [v2.20.0...v2.21.0](https://github.com/openai/openai-python/compare/v2.20.0...v2.21.0)\n\n### Features\n\n* **api:...","content":"## 2.21.0 (2026-02-13)\n\nFull Changelog: [v2.20.0...v2.21.0](https://github.com/openai/openai-python/compare/v2.20.0...v2.21.0)\n\n### Features\n\n* **api:** container network_policy and skills ([d19de2e](https://github.com/openai/openai-python/commit/d19de2ee5c74413f9dc52684b650df1898dee82b))\n\n\n### Bug Fixes\n\n* **structured outputs:** resolve memory leak in parse methods ([#2860](https://github.com/openai/openai-python/issues/2860)) ([6dcbe21](https://github.com/openai/openai-python/commit/6dcbe211f12f8470db542a5cb95724cb933786dd))\n* **webhooks:** preserve method visibility for compatibility checks ([44a8936](https://github.com/openai/openai-python/commit/44a8936d580b770f23fae79659101a27eadafad6))\n\n\n### Chores\n\n* **internal:** fix lint error on Python 3.14 ([534f215](https://github.com/openai/openai-python/commit/534f215941f504443d63509e872409a0b1236452))\n\n\n### Documentation\n\n* split `api.md` by standalone resources ([96e41b3](https://github.com/openai/openai-python/commit/96e41b398a110212ddec71436b2439343bea87d4))\n* update comment ([63def23](https://github.com/openai/openai-python/commit/63def23b7acd5c6dacf03337fe1bd08439d1dba8))","publishedAt":"2026-02-14T00:11:26.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.21.0","media":[]},{"id":"rel_drqTFTp7WUgONm1UZAO1G","version":"v2.20.0","title":"v2.20.0","summary":"## 2.20.0 (2026-02-10)\n\nFull Changelog: [v2.19.0...v2.20.0](https://github.com/openai/openai-python/compare/v2.19.0...v2.20.0)\n\n### Features\n\n* **api:...","content":"## 2.20.0 (2026-02-10)\n\nFull Changelog: [v2.19.0...v2.20.0](https://github.com/openai/openai-python/compare/v2.19.0...v2.20.0)\n\n### Features\n\n* **api:** support for images in batch api ([28edb6e](https://github.com/openai/openai-python/commit/28edb6e1b7eb30dbb7be49979cee7882e8889264))","publishedAt":"2026-02-10T19:02:11.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.20.0","media":[]},{"id":"rel_sxIDSKnkSNdouYfAb0HZN","version":"v2.19.0","title":"v2.19.0","summary":"## 2.19.0 (2026-02-10)\n\nFull Changelog: [v2.18.0...v2.19.0](https://github.com/openai/openai-python/compare/v2.18.0...v2.19.0)\n\n### Features\n\n* **api:...","content":"## 2.19.0 (2026-02-10)\n\nFull Changelog: [v2.18.0...v2.19.0](https://github.com/openai/openai-python/compare/v2.18.0...v2.19.0)\n\n### Features\n\n* **api:** skills and hosted shell ([27fdf68](https://github.com/openai/openai-python/commit/27fdf6820655b5994e3c1eddb3c8d9344a8be744))\n\n\n### Chores\n\n* **internal:** bump dependencies ([fae10fd](https://github.com/openai/openai-python/commit/fae10fd6e936a044f8393a454a39906aa325a893))","publishedAt":"2026-02-10T18:20:53.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.19.0","media":[]},{"id":"rel_tHyCaymCABIEveu_nPfEn","version":"v2.18.0","title":"v2.18.0","summary":"## 2.18.0 (2026-02-09)\n\nFull Changelog: [v2.17.0...v2.18.0](https://github.com/openai/openai-python/compare/v2.17.0...v2.18.0)\n\n### Features\n\n* **api:...","content":"## 2.18.0 (2026-02-09)\n\nFull Changelog: [v2.17.0...v2.18.0](https://github.com/openai/openai-python/compare/v2.17.0...v2.18.0)\n\n### Features\n\n* **api:** add context_management to responses ([137e992](https://github.com/openai/openai-python/commit/137e992b80956401d1867274fa7a0969edfdba54))\n* **api:** responses context_management ([c3bd017](https://github.com/openai/openai-python/commit/c3bd017318347af0a0105a7e975c8d91e22f7941))","publishedAt":"2026-02-09T21:41:36.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.18.0","media":[]},{"id":"rel_8aoFz0FPRyXVzNaNOvCUw","version":"v2.17.0","title":"v2.17.0","summary":"## 2.17.0 (2026-02-05)\n\nFull Changelog: [v2.16.0...v2.17.0](https://github.com/openai/openai-python/compare/v2.16.0...v2.17.0)\n\n### Features\n\n* **api:...","content":"## 2.17.0 (2026-02-05)\n\nFull Changelog: [v2.16.0...v2.17.0](https://github.com/openai/openai-python/compare/v2.16.0...v2.17.0)\n\n### Features\n\n* **api:** add shell_call_output status field ([1bbaf88](https://github.com/openai/openai-python/commit/1bbaf8865000b338c24c9fdd5e985183feaca10f))\n* **api:** image generation actions for responses; ResponseFunctionCallArgumentsDoneEvent.name ([7d96513](https://github.com/openai/openai-python/commit/7d965135f93f41b0c3dbf3dc9f01796bd9645b6c))\n* **client:** add custom JSON encoder for extended type support ([9f43c8b](https://github.com/openai/openai-python/commit/9f43c8b1a1641db2336cc6d0ec0c6dc470a89103))\n\n\n### Bug Fixes\n\n* **client:** undo change to web search Find action ([8f14eb0](https://github.com/openai/openai-python/commit/8f14eb0a74363fdfc648c5cd5c6d34a85b938d3c))\n* **client:** update type for `find_in_page` action ([ec54dde](https://github.com/openai/openai-python/commit/ec54ddeb357e49edd81cc3fe53d549c297e59a07))","publishedAt":"2026-02-05T16:26:56.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.17.0","media":[]},{"id":"rel_bKH840qSTDf8ojVW22viX","version":"v2.16.0","title":"v2.16.0","summary":"## 2.16.0 (2026-01-27)\n\nFull Changelog: [v2.15.0...v2.16.0](https://github.com/openai/openai-python/compare/v2.15.0...v2.16.0)\n\n### Features\n\n* **api:...","content":"## 2.16.0 (2026-01-27)\n\nFull Changelog: [v2.15.0...v2.16.0](https://github.com/openai/openai-python/compare/v2.15.0...v2.16.0)\n\n### Features\n\n* **api:** api update ([b97f9f2](https://github.com/openai/openai-python/commit/b97f9f26b9c46ca4519130e60a8bf12ad8d52bf3))\n* **api:** api updates ([9debcc0](https://github.com/openai/openai-python/commit/9debcc02370f5b76a6a609ded18fbf8dea87b9cb))\n* **client:** add support for binary request streaming ([49561d8](https://github.com/openai/openai-python/commit/49561d88279628bc400d1b09aa98765b67018ef1))\n\n\n### Bug Fixes\n\n* **api:** mark assistants as deprecated ([0419cbc](https://github.com/openai/openai-python/commit/0419cbcbf1021131c7492321436ed01ca4337835))\n\n\n### Chores\n\n* **ci:** upgrade `actions/github-script` ([5139f13](https://github.com/openai/openai-python/commit/5139f13ef35e64dadc65f2ba2bab736977985769))\n* **internal:** update `actions/checkout` version ([f276714](https://github.com/openai/openai-python/commit/f2767144c11833070c0579063ed33918089b4617))\n\n\n### Documentation\n\n* **examples:** update Azure Realtime sample to use v1 API ([#2829](https://github.com/openai/openai-python/issues/2829)) ([3b31981](https://github.com/openai/openai-python/commit/3b319819544d629c5b8c206b8b1f6ec6328c6136))","publishedAt":"2026-01-27T23:27:23.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.16.0","media":[]},{"id":"rel_FMlMN1531P61L1REEDPdx","version":"v2.15.0","title":"v2.15.0","summary":"## 2.15.0 (2026-01-09)\n\nFull Changelog: [v2.14.0...v2.15.0](https://github.com/openai/openai-python/compare/v2.14.0...v2.15.0)\n\n### Features\n\n* **api:...","content":"## 2.15.0 (2026-01-09)\n\nFull Changelog: [v2.14.0...v2.15.0](https://github.com/openai/openai-python/compare/v2.14.0...v2.15.0)\n\n### Features\n\n* **api:** add new Response completed_at prop ([f077752](https://github.com/openai/openai-python/commit/f077752f4a8364a74f784f8fb1cbe31277e1762b))\n\n\n### Chores\n\n* **internal:** codegen related update ([e7daba6](https://github.com/openai/openai-python/commit/e7daba6662a3c30f73d991e96cb19d2b54d772e0))","publishedAt":"2026-01-09T22:09:31.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.15.0","media":[]},{"id":"rel_VO8MiWRtOZnNgze5kcXRE","version":"v2.14.0","title":"v2.14.0","summary":"## 2.14.0 (2025-12-19)\n\nFull Changelog: [v2.13.0...v2.14.0](https://github.com/openai/openai-python/compare/v2.13.0...v2.14.0)\n\n### Features\n\n* **api:...","content":"## 2.14.0 (2025-12-19)\n\nFull Changelog: [v2.13.0...v2.14.0](https://github.com/openai/openai-python/compare/v2.13.0...v2.14.0)\n\n### Features\n\n* **api:** slugs for new audio models; make all `model` params accept strings ([e517792](https://github.com/openai/openai-python/commit/e517792b58d1768cfb3432a555a354ae0a9cfa21))\n\n\n### Bug Fixes\n\n* use async_to_httpx_files in patch method ([a6af9ee](https://github.com/openai/openai-python/commit/a6af9ee5643197222f328d5e73a80ab3515c32e2))\n\n\n### Chores\n\n* **internal:** add `--fix` argument to lint script ([93107ef](https://github.com/openai/openai-python/commit/93107ef36abcfd9c6b1419533a1720031f03caec))","publishedAt":"2025-12-19T03:28:06.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.14.0","media":[]},{"id":"rel_Yf0SdCVr1pGstDlHkZPmw","version":"v2.13.0","title":"v2.13.0","summary":"## 2.13.0 (2025-12-16)\n\nFull Changelog: [v2.12.0...v2.13.0](https://github.com/openai/openai-python/compare/v2.12.0...v2.13.0)\n\n### Features\n\n* **api:...","content":"## 2.13.0 (2025-12-16)\n\nFull Changelog: [v2.12.0...v2.13.0](https://github.com/openai/openai-python/compare/v2.12.0...v2.13.0)\n\n### Features\n\n* **api:** gpt-image-1.5 ([1c88f03](https://github.com/openai/openai-python/commit/1c88f03bb48aa67426744e5b74f6197f30f61c73))\n\n\n### Chores\n\n* **ci:** add CI job to detect breaking changes with the Agents SDK ([#1436](https://github.com/openai/openai-python/issues/1436)) ([237c91e](https://github.com/openai/openai-python/commit/237c91ee6738b6764b139fd7afa68294d3ee0153))\n* **internal:** add missing files argument to base client ([e6d6fd5](https://github.com/openai/openai-python/commit/e6d6fd5989d76358ea5d9abb5949aa87646cbef6))","publishedAt":"2025-12-16T18:19:05.000Z","url":"https://github.com/openai/openai-python/releases/tag/v2.13.0","media":[]}],"pagination":{"page":1,"pageSize":20,"totalPages":11,"totalItems":201},"summaries":{"rolling":{"windowDays":90,"summary":"The SDK shipped 16 releases over 90 days, steadily expanding support for new APIs and runtime capabilities. The major themes were adding structured APIs for agent execution (computer use, web search, image generation, shell commands), enabling real-time communication patterns (websockets for responses, short-lived tokens), and supporting emerging model capabilities (GPT-5.4, custom voices, Sora video extensions). Notably, v2.26.0 graduated computer use from preview to general availability, and v2.31.0 added websocket support for raw binary data alongside new conversation messaging fields and query serialization improvements for complex parameter formats.","releaseCount":16,"generatedAt":"2026-04-15T01:13:01.295Z"},"monthly":[{"year":2026,"month":3,"summary":"March focused on expanding the computer use and video capabilities alongside new model releases. The SDK added keys field support to computer actions and graduated ComputerTool from preview to general availability, while separately shipping GPT-5.4 model variants, Sora video extensions and character API support, and a new tool search capability. Response type alignment fixes and schema updates landed throughout, including making type required in ResponseInputMessageItem and adding in/nin operators to comparison filters.","releaseCount":6,"generatedAt":"2026-04-07T17:27:44.503Z"}]}}