SDK Clients
Official clients for all major languages. Same API design across all.
TypeScript
npm install @zeeptech/orbit-client
import { OrbitClient } from '@zeeptech/orbit-client'
const orbit = new OrbitClient({
baseURL: 'https://orbit.zeeplabs.com',
app: 'myapp',
jwt: 'your-jwt-token',
})
// CRUD
const rows = await orbit.table('invoices').findMany({ limit: 10 })
await orbit.table('invoices').create({ amount: 150, status: 'pending' })
// Auth
const { token } = await orbit.auth.login({ email: '...', password: '...' })
const me = await orbit.auth.me()
// Files
const file = await orbit.files.upload(fileInput.files[0])
const url = await orbit.files.signedURL(file.id)
Go
go get github.com/zeeplabs/orbit-go
import "github.com/zeeplabs/orbit-go"
client := orbit.New(orbit.ClientConfig{
BaseURL: "https://orbit.zeeplabs.com",
App: "myapp",
JWT: "your-jwt-token",
})
rows, _ := client.Table("invoices").FindMany(ctx, &orbit.FindManyParams{Limit: 10})
Python
pip install zeeplabs-orbit-client
from zeeplabs_orbit_client import OrbitClient, ClientConfig
orbit = OrbitClient(ClientConfig("https://orbit.zeeplabs.com", "myapp", "jwt"))
rows = orbit.table("invoices").find_many(limit=10)
Rust
[dependencies]
orbit-client = "0.1"
use orbit_client::OrbitClient;
let orbit = OrbitClient::new(cfg);
let rows = orbit.table("invoices").find_many(Some(10), None, None, None).await?;
Java
<dependency>
<groupId>com.zeeplabs</groupId>
<artifactId>orbit-client</artifactId>
<version>0.1.0</version>
</dependency>
OrbitClient orbit = new OrbitClient(new ClientConfig(baseURL, "myapp", jwt));
ListResponse resp = orbit.table("invoices").findMany(10, 0, null, null);
PHP
composer require zeeplabs/orbit-client
$orbit = new Zeeplabs\Orbit\OrbitClient($baseURL, 'myapp', $jwt);
$rows = $orbit->table('invoices')->findMany(limit: 10);
Source
All client source code is in the clients/ directory of the main repository.