SDKs
Sencai publishes three official, generated clients for the Platform API: Go, Python, and TypeScript. All three cover the same underlying API and are generated from the same source description, so their shape (resource names, method names, request/response models) matches across languages.
None of the three is published to a public package registry (npm, PyPI, or pkg.go.dev) yet, and there’s no public repository to install from directly either - ask your account team for the current build if you want to use one of these today. The examples below show how each client is configured and used once you have it.
Module path: github.com/sencai/sdk-go.
package main
import ( "context"
sencaisdk "github.com/sencai/sdk-go")
func main() { cfg := sencaisdk.NewConfiguration() cfg.Servers = sencaisdk.ServerConfigurations{ {URL: "https://api.sencai.space/api/v1"}, } cfg.AddDefaultHeader("Authorization", "Bearer <token>")
client := sencaisdk.NewAPIClient(cfg) _, _, err := client.CloudInstanceAPI.FindCloudInstance(context.Background()).Execute() if err != nil { panic(err) }}Python
Section titled “Python”Package name: sencai_sdk.
from sencai_sdk import ApiClient, Configuration, CloudInstanceApi
config = Configuration( host="https://api.sencai.space/api/v1", access_token="<token>",)
with ApiClient(config) as client: cloud_instances = CloudInstanceApi(client) result = cloud_instances.find_cloud_instance()TypeScript / JavaScript
Section titled “TypeScript / JavaScript”Package name: @sencai/sdk.
import { Configuration, CloudInstanceApi } from '@sencai/sdk';
const config = new Configuration({ basePath: 'https://api.sencai.space/api/v1', accessToken: async () => myAccessToken,});
const cloudInstances = new CloudInstanceApi(config);const { data } = await cloudInstances.findCloudInstance();Base URL and authentication
Section titled “Base URL and authentication”Every client’s base URL/host and its authentication header are set in the
client configuration shown above - none of the three has a hardcoded
production URL baked in, so pointing at https://api.sencai.space/api/v1
is something you do explicitly. Configure the same credential you’d use
with curl (see Platform API overview).
Versioning
Section titled “Versioning”Each SDK’s own package version tracks the version of the underlying API description it was generated from, rather than being bumped by hand. A breaking change to the API produces a corresponding SDK change - check that SDK’s own changelog when upgrading, and see API versioning for how the platform surfaces breaking changes on the API side.
What’s next
Section titled “What’s next”- Platform API overview - base URL, auth, and conventions the SDKs wrap
- API tokens - the credential to configure a client with for the token-scoped surface
- AI agents (MCP)