Skip to content

v0.86.0

Choose a tag to compare

@openai-sdks openai-sdks released this 08 Sep 00:19
74584a0

0.86.0 (2026-09-08)

Features

  • add Responses WebSocket mode (#562) (7c910a7)
  • api: add cache diagnostics and fix optional RBS keys (#604) (4e4f7cd)
  • api: add service-account API key expiration fields (#625) (8d3f213)
  • api: correct function argument completion event fields (openapi-545) (#622) (06e2c91)
  • api: recognize incomplete web search call status (#590) (1560da0)
  • responses: parse structured outputs on retrieval (#532) (41eb726)

Bug Fixes

  • accept documented RequestOptions extra query values (#660) (e168aa4)
  • accept string Responses structured-output tags (#617) (4322e07)
  • api: expose metadata on binary responses (#608) (59e0643)
  • avoid retrying ambiguous non-idempotent requests (#650) (4734cba)
  • avoid unused Responses stream snapshot copies (#677) (2996996)
  • close proxy after WebSocket handshake failure (#675) (aeb4cf2), closes #669
  • coerce Integer strings as decimal (#667) (82f8c62)
  • correct Responses stream RBS contract (#654) (0d32ba4)
  • correct Responses text enumerator Sorbet type (#637) (49ccb69)
  • declare built-in workload identity providers (#659) (cfbbb98)
  • declare Chat stream finish exception types (#657) (87fc522)
  • declare webhook signature error types (#642) (5211472)
  • declare workload identity error types (#658) (e6afdeb)
  • deserialize diarized transcriptions correctly (#652) (5be26ce)
  • handle non-object OAuth error bodies (#674) (13aa3d6)
  • handle quoted response charsets (#613) (91d0e86), closes #610
  • honor custom idempotency headers for retries (#673) (5bd703a), closes #671
  • honor raw StringIO request cursors (#621) (8e6abfd)
  • isolate base URL queries between requests (#619) (347e659)
  • isolate structured output field metadata (#655) (7f3cec8)
  • keep Realtime metadata out of nested payloads (#653) (d1fa0d3)
  • match response charset parameters case-insensitively (#629) (821d9b3)
  • match the multipart request content type case-insensitively (#666) (55ae013)
  • normalize Bedrock environment bearer tokens (#601) (131e977)
  • normalize workload identity error headers (#640) (1cf3762)
  • parse initial streamed tool arguments (#593) (f4e2ec9)
  • parse SSE field lines that carry no value (#631) (9109f3f)
  • parse SSE retry metadata as decimal (#624) (9135d15)
  • parse strict tools in later chat choices (#633) (b68ce90)
  • populate nested API error metadata (#639) (8dba07c)
  • preserve bare CR SSE line boundaries (#676) (98c5a53), closes #670
  • preserve chat stream moderation results (#616) (c2c729c)
  • preserve complete interleaved tool arguments (#638) (1f32200)
  • preserve documented file inputs on readback (#662) (0169713)
  • preserve file semantics for pathless multipart IO (#665) (0fefbf6)
  • preserve hash-form type metadata (#651) (8de6a0f)
  • preserve text logprobs in response streams (#595) (e8e2f39)
  • preserve unknown discriminated union values (#645) (1384aa0)
  • preserve UTF-8 SSE stream boundaries (#623) (6b9ee87)
  • rank tied union variants by declaration order (#628) (5ae6f43)
  • redact malformed streamed JSON errors (#643) (5ab02f6)
  • respect StringIO cursor in FilePart serialization (#592) (4115a1e)
  • responses: expose stream resumption parameters (#646) (d93852f)
  • restore conflict-free exported RBIs for Tapioca (#679) (c80a253)
  • retry only proven unsent requests (#663) (a63eda8)
  • stream container file uploads as multipart (#648) (b3c523b)
  • strip upload filenames without platform path rules (#627) (5f00613)
  • suppress Responses WebSocket exception causes (#644) (1b16a83)
  • type chat completion streams for Sorbet (#634) (cca6a70)
  • upload pathless IO streams instead of raising (#630) (950552f)

Chores

  • api: document throttling and model overload responses — SDK-235 (#632) (2b0483d)
  • api: Refresh SDK metadata (#612) (e93a4b5)
  • deps-dev: bump the development-dependencies group with 7 updates (#668) (d9a2271)
  • migrate to forked steady (#605) (5542f01)

Documentation

  • clarify dormant compatibility-check boundary (#647) (d6fa81c)
  • clarify Realtime transcription event boundary (#649) (94a1d77)