Skip to Content
Getting StartedQuick Start

Quick Start

Choose how you want to run BuildPad DaaS:


BuildPad Cloud

The fastest way to start — no Docker, no servers, no Supabase account needed.

Create your BuildPad account

Go to app.buildpad.ai , click Sign Up, and register with your email.

Create an organization and project

After signing in, create an organization (e.g. “My Company”) and then create your first Project. Each project provisions a dedicated DaaS instance automatically.

Access your DaaS instance

From your project’s detail page, your DaaS instance URL and credentials are shown. The instance is live immediately — no configuration required.

Get your API token

curl -X POST https://<your-instance>.buildpad.ai/api/auth/login \ -H "Content-Type: application/json" \ -d '{"email": "admin@example.com", "password": "yourpassword"}'

Response:

{ "data": { "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "refresh_token": "...", "expires": 900 } }

Make your first API call

curl https://<your-instance>.buildpad.ai/api/users \ -H "Authorization: Bearer <your_access_token>"

BuildPad Cloud handles database provisioning, migrations, and updates automatically. Your DaaS instance URL is shown in the project dashboard at app.buildpad.ai .


Self-Hosted (Docker)

Run BuildPad DaaS on your own infrastructure against a Supabase project.

Prerequisites

Get your Supabase credentials

From your Supabase project dashboard → Project Settings → API:

VariableWhere to find it
NEXT_PUBLIC_SUPABASE_URLProject URL (e.g. https://xyz.supabase.co)
NEXT_PUBLIC_SUPABASE_ANON_KEYanon / public key
SUPABASE_SERVICE_ROLE_KEYservice_role key (keep this secret)

The service_role key bypasses Row Level Security. Never expose it in a browser or public client.

Create a .env file

cat > .env <<'EOF' NEXT_PUBLIC_SUPABASE_URL=https://xyz.supabase.co NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key SUPABASE_SERVICE_ROLE_KEY=your-service-role-key EOF

Run the container

Save this as docker-compose.yml:

services: buildpad: image: buildpad-daas:latest ports: - "3000:3000" env_file: .env restart: unless-stopped healthcheck: test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/api/health', (r) => {process.exit(r.statusCode === 200 ? 0 : 1)})"] interval: 30s timeout: 3s retries: 3 start_period: 60s

Then start it:

docker compose up -d

On first start, the container automatically runs all database migrations before serving traffic. Allow ~30 seconds for this to complete. Check progress with docker logs buildpad -f.

Open the DaaS Studio

Navigate to http://localhost:3000  and log in with the admin account you set up in Supabase Auth (or create one — see Users & Auth).

Get your API token

curl -X POST http://localhost:3000/api/auth/login \ -H "Content-Type: application/json" \ -d '{"email": "admin@example.com", "password": "yourpassword"}'

Response:

{ "data": { "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "refresh_token": "...", "expires": 900 } }

Make your first API call

curl http://localhost:3000/api/users \ -H "Authorization: Bearer <your_access_token>"

What’s Next

  • Core Concepts — Collections, fields, items, and permissions
  • Authentication — Token refresh, static API tokens, and cookie sessions
  • Items API — Filtering, sorting, pagination, and field selection
Last updated on