Platform services
Storage
The Storage service connects your project to an object storage bucket — Amazon S3 or any S3-compatible provider — validating the credentials and exposing the connection details as outputs for other services.
What it does
Dreambase POSTs webhook events to the Storage service; it verifies the bucket credentials, runs health checks, reports metrics, and executes function calls (object read/write/list/ delete and pre-signed URLs) — then calls back into the Dreambase API to report status, logs, and outputs (the bucket, region, endpoint, credentials, and URL).
Connection only — no provisioning
The Storage integrations connect to an existing bucket rather than creating one (doesNotDeploy: true). A “deployment” validates the connection and publishes its details as outputs. They run on Vercel without limitation, since every handler only makes outbound API calls.Integrations
Amazon S3
Connect an S3 (or S3-compatible) bucket. Object read/write/list/delete and pre-signed URLs via function calls.
Object Storage
A provider-agnostic placeholder for an external or unmanaged bucket.
Each integration is its own webhook route:
/s3/webhook/object-storage/webhookS3-compatible providers
DigitalOcean Spaces, Cloudflare R2, MinIO, and other S3-compatible providers work through the Amazon S3 integration today — set a customendpoint on a dedicated connection. Dedicated Spaces, Google Cloud Storage, and Azure Blob integrations are planned.Configuration
The service is configured through environment variables:
| Variable | Required | Description |
|---|---|---|
DREAMBASE_API_URL | yes | Base URL of the Dreambase API the service calls back into. |
CORS_ORIGINS | prod | Comma-separated allowed origins. |
S3_SHARED_ACCESS_KEY_ID, S3_SHARED_SECRET_ACCESS_KEY, S3_SHARED_BUCKET, S3_SHARED_REGION | optional | Shared bucket credentials used for serverType=shared. |
S3_SHARED_ENDPOINT, S3_SHARED_PUBLIC_BASE_URL | optional | Custom endpoint and public/CDN base URL for the shared bucket. |
PORT | optional | Local server port (default 3013; unused on Vercel). |