SDKs
Use an SDK when your code should talk directly to a Thalovant hub.
The Thalovant API is the control plane at https://api.thalovant.com. It discovers hubs and creates client identities. The SDK is the data plane. It sends runtime traffic to the hub over WSS, HTTPS, or MQTT over TLS.
Best First Path
Section titled “Best First Path”- Pick the SDK for your runtime. Python, Node.js, Go, and Rust expose the same core behavior.
- Use the hosted API. Start with
https://api.thalovant.com. - Create one client identity per app, device, or agent. Store the returned identity in a secret store or protected SDK config file.
- Connect with WSS first. It is the default realtime path for public clients.
- Add HTTPS or MQTT only when needed. Create a fresh identity after enabling a new protocol on the hub.
Choose A Language
Section titled “Choose A Language”| Language | Install | Best fit |
|---|---|---|
| Python | pip install thalovant | Agents, tools, notebooks, tests, and service workers. |
| Node.js | npm install @thalovant/sdk | TypeScript services, bots, scripts, and web backends. |
| Go | go get github.com/thalovant/thalovant-go-sdk | Gateways, CLIs, small services, and long-running workers. |
| Rust | cargo add thalovant | Strict clients, embedded work, and reliability-focused services. |
Python SDK Start with Python.
Node.js SDK Start with Node.js or TypeScript.
Go SDK Start with Go.
Rust SDK Start with Rust.
How SDK Access Works
Section titled “How SDK Access Works”- Discover a hub. Public hub discovery can be used before sign-in.
- Sign in for private API actions. Creating client identities requires API access on the workspace.
- Create a client identity. The SDK stores the returned identity locally or in your secret store.
- Connect to the hub. Runtime traffic goes directly to the hub endpoint.
- Send a request. Start with one
askcall, then add sessions, context, actions, or rich output.
Protocols
Section titled “Protocols”| Protocol | Use it when | Notes |
|---|---|---|
| WSS | You want the default public realtime path. | Best first choice for agents and clients that may listen for events. |
| HTTPS | You want request-response calls, health checks, CLIs, or jobs. | Must be enabled on the hub before public clients can use it. |
| MQTT over TLS | You want broker-mediated device or edge traffic. | Requires per-client broker credentials and topic access. |
What To Keep Secret
Section titled “What To Keep Secret”Every client identity is secret. Store it like a password.
Do not put identity files, access keys, passwords, broker passwords, setup links, or crypto keys in browser bundles, public repos, screenshots, logs, or support tickets.
Production Checklist
Section titled “Production Checklist”| Check | Good default |
|---|---|
| API base URL | https://api.thalovant.com |
| First runtime protocol | WSS |
| Browser usage | Never ship hub identities to a browser bundle. Use a backend. |
| Identity storage | Use a secret manager, CI secret, mounted secret file, or ~/.config/thalovant/config.yaml with mode 600. |
| MQTT | Use mqtts://, per-client credentials, and SDK-managed topics. |
| Rotation | Rotate by creating a new client identity and replacing the old secret. |
| Logs | Redact identity JSON, broker passwords, API tokens, and crypto keys. |
If you already know your language, open the SDK page.
Use SDK Functions when you need method names across languages. Use MQTT when the client connects through the broker. If you are designing a shared SDK feature, use the SDK Contract.