Skip to main content

SDK selection

Boundary statement​

An SDK source package is a client implementation, not evidence that its registry artifact is published or that the target runtime is healthy. UAR keeps source availability, generated references, registry publication, and runtime-profile support as separate facts.

Choose a source package​

LanguageSource packagePrimary modeGenerated reference in PagesRegistry publication
Rustsdks/rusttyped async HTTP client; optional in-process embedded runtimerustdoc staged at /docs/api/rust/verify independently before using a registry-only install
Pythonsdks/pythontyped async HTTP/SSE clientSphinx sources exist but are not staged into Pagesverify independently before using a registry-only install
TypeScriptsdks/typescriptfetch-based JSON/SSE client with Zod response validationTypeDoc staged at /docs/api/typescript/verify independently before using a registry-only install

All three package manifests currently carry version 1.0.0. That value describes source compatibility; it is not a registry query.

Shared client surface​

The clients cover chat and streaming, tools, structured output, embeddings, runs and checkpoints, knowledge bases, and ingestion to the extent documented in each package. Exact method names and response validation differ by language. Use the generated or source API for the SDK and the API reference map for the server boundary.

Authentication is bearer-based in all three clients. An SDK option named API key attaches the supplied value as Authorization: Bearer ...; the caller must provide either a valid UAR JWT or a token accepted by its configured gateway. The client library does not create a trusted tenant by itself.

Generated reference​

The documentation deployment generates workspace rustdoc and TypeDoc, then stages only those two trees. Python Sphinx output can be generated locally from source but is not part of the current Pages artifact.

Registry publication​

Before adopting a registry install command, verify the exact package name, version, publisher, checksum or integrity data, and release provenance at that registry. If it is unavailable, use a pinned source checkout and the local commands in the language guide. Do not infer publication from a Git tag, manifest, README, or generated docs page.

Profile limits​

Python and TypeScript are network clients for a minimal or server-full server. Rust can also link the transport-free runtime through embedded and embedded-mobile features, where the host must supply persistence and other required services. A client request proves only its exercised route against the named server profile.

Choose Rust, Python, or TypeScript.