Reference
For developers
The BambooKit API, SDK and command-line tool.
The complete developer documentation (every API route with request and response examples, architecture diagrams, deployment, environment variables and the release process) is in the bambookit-docs repository.
API
Base URL https://bambookit-api.onrender.com. Send Authorization: Bearer <access token> (the Supabase access token of an email account, or the Firebase ID token of a Google account). Responses are {"data": …}; errors are {"error": {"code", "message"}, "requestId"}.
| Area | Routes |
|---|---|
| Health | GET /health, GET /ready |
| Profile | GET /v1/me, POST /v1/me/avatar-upload, POST /v1/me/avatar, DELETE /v1/me/avatar, DELETE /v1/me |
| Overview | GET /v1/overview, GET /v1/activity, DELETE /v1/activity (clear) |
| Statistics | GET /v1/me/stats, GET /v1/me/achievements, PATCH /v1/projects/:id (status) |
| Releases and service info | GET /v1/releases/latest?platform=windows (or android), GET /v1/meta |
| Devices and pairing | GET /v1/devices, PATCH /v1/devices/:id, POST /v1/devices/:id/revoke, POST /v1/devices/:id/unlink, POST /v1/pairing/claim |
| Projects and sessions | GET /v1/projects, POST /v1/projects/:id/sessions, GET /v1/sessions, GET /v1/sessions/:id, PATCH /v1/sessions/:id (like) |
| PC providers | GET /v1/devices/:id/providers (never includes keys) |
| Session history | GET /v1/sessions/:id/history (live, or the 7-day copy), GET /v1/sessions/:id/file-versions?path= (before/after) |
| Live from the PC | GET /v1/sessions/:id/parts, /todos, /changes, /filemap, /diagram, /tree?path=, /file?path= |
| Actions | POST /v1/sessions/:id/commands, GET /v1/commands/:id |
| Approvals | GET /v1/approvals, POST /v1/approvals/:id/respond |
| Notifications | GET /v1/notifications, POST /v1/notifications/read-all |
| Live updates | GET /v1/realtime/stream?after=<seq> |
Example:
PowerShell
curl.exe https://bambookit-api.onrender.com/v1/sessions?active=true -H "Authorization: Bearer <access token>"SDK
@bambookit/sdk is a typed TypeScript client (build it from the bambookit-sdk repository):
ts
import { BambooKit } from "@bambookit/sdk";
const bk = new BambooKit({ baseUrl: "https://bambookit-api.onrender.com", accessToken: "<access token>" });
const busy = await bk.sessions.list({ active: true });
const pending = await bk.approvals.list();Command-line tool
bamboo (from bambookit-cli) uses BAMBOOKIT_BASE_URL and BAMBOOKIT_ACCESS_TOKEN:
| Command | Does |
|---|---|
bamboo doctor | Checks the API and your token |
bamboo project list | Projects |
bamboo session list -a | Working sessions |
bamboo session show <id> | Chat and changed files |
bamboo session send <id> <text> / stop <id> | Message or stop |
bamboo approval list / approve <id> [--always] / reject <id> | Approvals |
bamboo device list / revoke <id> | Devices |
Add --json for machine-readable output.