PreviewRustaBase OSS is in public preview. Build on managed PostgreSQL with APIs, authentication, storage, realtime, and server-side functions.Read the product direction

APIs and SDKs

API overview

Every RustaBase Project exposes one HTTP API and one realtime stream at its own address. The official JavaScript, Dart, and Go clients are thin wrappers over exactly those endpoints.

Your Project address

Each Project receives a dedicated rustabase.net address. That address is the base URL for the REST API, file downloads, realtime subscriptions, and the administration console.

Every endpoint is served under the versioned base path /api/v1. Use it for all requests so your application stays on a stable API version.

# every endpoint lives under /api/v1
curl $PROJECT_URL/api/v1/health

What the API covers

AreaBase pathUsed for
Health/api/v1/healthLiveness and status of the Project backend
Tables/api/v1/collectionsTable definitions, scaffolds, OAuth provider metadata
Records/api/v1/collections/{table}/recordsReading and writing application data
Authentication/api/v1/collections/{table}/auth-*Password, OAuth, OTP, MFA, refresh, impersonation
Files/api/v1/filesDownloading record files and issuing file tokens
Batch/api/v1/batchMultiple writes in a single request
Realtime/api/v1/realtimeServer-sent events for record changes
Functions/api/v1/functionsEdge functions and their execution logs
Webhooks/api/v1/webhooksOutbound integrations
Logs/api/v1/logsRequest and function activity
SQL, RLS, backups/api/v1/sql, /api/v1/rls, /api/v1/backupsAdministrative operations, superuser only

SQL, row-level-security administration, and backup endpoints require a superuser session. Never expose those from browser code.

Choose a client

  • JavaScript and TypeScript for browsers, Node, Bun, and edge runtimes
  • Dart for Flutter and Dart applications
  • Go for services, workers, and command-line tools
  • Plain REST for any other language

JavaScript SDK 1.0

The JavaScript SDK 1.0 is a fresh RustaBase client with its own calls (createClient, rb.from, rb.auth). Code written for the older client needs updating. The Dart and Go SDKs will follow the same style.

Authentication and API keys

Found something wrong on this page?

Fix it yourself. The link below opens this file in GitHub's editor and forks the repository for you if you need one, and your change becomes a pull request without leaving the browser.