SDKs
On this page
Query event data, write rows, and manage table definitions from your application or terminal.
Choose a client
- JavaScript SDK for TypeScript or JavaScript in Node.js, Bun, or Cloudflare Workers.
- Go SDK for Go services and data producers.
- Rust SDK for async Rust applications.
- HTTP API for other languages or a custom HTTP client.
- ScopeDB CLI for interactive queries, shell scripts, and CI jobs.
- Agent skill for coding and analysis agents such as Claude Code and Codex.
Each guide includes a first query that needs no sample data. Use an SDK when one supports your runtime: it waits for queries and batches writes for you. Check the published versions and runtime requirements below before adding a dependency. The HTTP API is available to any backend that can send HTTPS requests.
Published versions and requirements
The language guides use these published versions:
| SDK | Package version | Runtime |
|---|---|---|
| JavaScript SDK | scopedb 0.3.0 | Node.js 20 or later, Bun, or Cloudflare Workers |
| Go SDK | goscopedb 0.7.0 | Go 1.26 or later |
| Rust SDK | scopedb-client 0.4.2 | Rust 1.91 or later |
Pin the package version and commit your application's lockfile. Before updating, review the release notes and the upgrade notice in your language guide.
Connect your application
SDKs and HTTP clients need the ScopeDB API address and an API key for the same workspace. Follow the application connection guide to obtain them and verify access. Keep the key in your server-side environment; browser and mobile applications should call your own backend.
For interactive terminal work, sign in with the CLI. An SDK does not reuse that login. For unattended CLI jobs, use the same endpoint and API key as an application.
Build the next step
- Query events: use ScopeQL examples to filter, search, and aggregate data through your client.
- Write rows: follow your SDK's write example or append NDJSON over HTTP. For server-side ScopeQL transformations, follow the ingestion guide.
- Manage table definitions: use your SDK's Catalog example or the Catalog HTTP workflow to read, preview, and apply a change.
- Handle failures: check HTTP errors and retries and your SDK's error handling before replaying a request.
For exact query syntax, use the ScopeQL reference. For client upgrades, use the release notes.