SDKs

Official client libraries wrap the inference API in idiomatic code for your language. Each one is generated from the same OpenAPI specification that defines the API, so its methods, types, and errors stay in step with the platform as it changes. There are three today: PHP, TypeScript, and Python.

You do not need an SDK. The API is OpenAI-compatible, so any OpenAI client works by pointing its base URL at the platform (see API keys). Reach for an SDK when you want typed, first-class access to the native surface: chat, models, memory, threads, and the audit log.

Authenticate

Every SDK authenticates with an API key, sent only as a bearer token on the Authorization header. Create a key under Platform > API keys and load it from the environment rather than committing it to your code.

The base URL is preconfigured, so you only supply the key.

Resources

Every SDK exposes the same resources on the client:

  • chat: create chat completions, the core inference call.
  • models: list the models available to your organization.
  • memory: manage long-term memory.
  • memoryThreads: create and manage conversation threads.
  • auditLogs: read the metadata-only audit trail.

Add-ons (PII firewall, RAG, guard, caching) ride as parameters on the chat call rather than as separate endpoints, so they are reached through chat.create.

Errors

A failed request raises a typed exception per status rather than returning a raw response: authentication, rate limit, invalid request, and a general API error, each carrying the status code and the response body. Transient errors (429 and 5xx) are retried automatically with backoff before the exception surfaces.

Good to know

The libraries are generated. They come straight from the API's OpenAPI spec, so they cannot drift from what the platform actually accepts and returns.

Your key only rides the Authorization header. Never a query string or request body, in every language. Load it from the environment and keep it out of version control.

You do not have to switch clients. The API stays OpenAI-compatible, so an existing OpenAI client keeps working by changing one base URL. The SDK is for typed access to the native endpoints.

Source

Each SDK lives in its own repository and is generated, not hand-written. When the API changes, the libraries are regenerated from the spec.