Python v4 SDKs now stream server-sent events. An operation whose success response is text/event-stream returns an EventStream[T] typed over the event's data schema, and the asynchronous client returns an AsyncEventStream[T] you read with async for.
A Rooted API Error Family in TypeScript v4 SDKs (Beta)
TypeScript v4 SDKs now reject with one error family. Every failure a call can produce derives from a single root named after your API, such as PaymentsError, and carries a closed kind discriminator, so one catch with a switch on err.kind handles every outcome exhaustively.
Hardened Open and Closed Enums in C# v4 SDKs (Beta)
C# v4 SDKs now generate a hardened enum shape. Every enum is a sealed record over an open or closed root, so the SDK is explicit about whether a value the API sends but the specification does not list is accepted or rejected.
Per-Operation Request Records in C# v4 SDKs (Beta)
C# v4 SDKs now take one request record per operation. Instead of a long positional parameter list, each endpoint method accepts a {Operation}Request record whose members mirror the operation's parameters and body, so a call reads the same way the API reference does.
A Unified SdkException Family in C# v4 SDKs (Beta)
C# v4 SDKs now raise one family of exceptions. Everything the SDK throws for a call derives from SdkException, so a single catch covers every failure while the subclasses let you handle the ones you care about precisely.
SDK Identification Headers and Automatic Idempotency Keys in TypeScript v4 SDKs (Beta)
TypeScript v4 SDKs now identify themselves on every request and protect non-idempotent calls against accidental replay, matching the C# and Python v4 SDKs.
Discriminated Unions and Enum Defaults in Python v4 SDKs (Beta)
Python v4 SDKs now resolve discriminated unions precisely. A oneOf union or an allOf hierarchy that declares a discriminator is tagged by the wire key, so the SDK picks the right variant on the way in and writes the right tag on the way out, even when the variant model does not declare the tag field itself.
File and Multipart Payloads in TypeScript v4 SDKs (Beta)
TypeScript v4 SDKs now handle files end to end. Binary request bodies, multipart/form-data forms whose parts are files, typed JSON documents or text fields, and binary success and error responses all generate with typed signatures.
File and Binary Payloads in Python v4 SDKs (Beta)
Python v4 SDKs now handle files. An operation that uploads a binary body or a multipart/form-data form, and one that returns a binary body on success or on error, all generate with typed parameters and typed results.
README, API Reference, SDK Map and Context Plugin for TypeScript v4 SDKs (Beta)
TypeScript v4 SDKs now ship with their documentation and with a context plugin. A README.md gets a developer started, api-reference.md documents every operation, sdk-map.md with a page per resource indexes the package, and the plugin skills teach AI coding tools how to use it.