The backend that lives inside your Google Drive.
Urbase is the easiest way to ship a product with a database, file storage, and a REST API — without giving up ownership of your data. Every row you write lives in a Google Sheet you own, inside a Drive folder you control.
No credit card. Free tier includes 3 projects & 10k requests / month.
app.urbase.tech / projects / Ecommerce API / database / products
⌘KEcommerce API · Database
products
| id | name | price | stock | image | created_at |
|---|---|---|---|---|---|
| rec_8f3c… | Aurora Sneakers | $129.00 | 42 | shoe.jpg | 2 minutes ago |
| rec_aa01… | Cotton Tee — Sage | $39.00 | 128 | tee.jpg | 5 minutes ago |
| rec_3a29… | Wool Beanie | $52.00 | 7 | beanie.jpg | 1 hour ago |
| rec_d55e… | Leather Belt | $89.00 | 19 | belt.jpg | yesterday |
Built on the Google APIs you already trust
Features
Everything a modern BaaS gives you, on your own storage
Tables, files, auth, keys, docs, an explorer — and storage you actually own.
Database as Google Sheets
Each table is a worksheet. First row = headers. Schema is enforced on every write.
File storage in Google Drive
Uploads land inside the project folder you control. We never hold the bytes.
API keys with scopes
pk_live_/pk_test_, hashed, revocable. One for production, one for staging.
Batched, cached REST API
Read paths hit a cache; writes batch into a single Sheets call. Your quota, respected.
In-browser API explorer
Send real requests from your dashboard. Status, latency, headers, JSON — all visible.
Per-project usage metering
Requests, reads, writes, errors, storage — visible per day, per project, per key.
How it works
From Google sign-in to a working API in under a minute
Four steps. Zero YAML. Zero new vendor account.
- 1
Sign in with Google
One click. We request the minimum scopes — drive.file + spreadsheets. No full Drive access.
- 2
Create a project
We create YourBaaS/<project>/ in your Drive, with Database/ and Files/ subfolders and a fresh spreadsheet.
- 3
Define tables
Add fields with types: text, number, email, json, datetime, uuid… We write the headers to your Sheet.
- 4
Ship the API
Generate a key. Call /v1/api/tables/<table>/rows. Records hit your Sheet in real time.
Developer experience
An API you'd actually want to use
Standard REST. JSON in, JSON out. No SDK lock-in, no special clients.
- Bearer-token auth, no cookies for API calls
- Filters, search, sort, pagination built-in
- Bulk insert / batch read for efficiency
- Field-level projections to shrink payloads
- Predictable error envelope with request IDs
- Open the dashboard, see every call in usage
# Create a record
curl -X POST https://api.yourdomain.com/v1/api/tables/products/rows \
-H "Authorization: Bearer pk_live_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Aurora Sneakers",
"price": 12900,
"stock": 42,
"image": "https://cdn.example.com/shoe.jpg"
}'
# → 201 Created
# {
# "id": "rec_5f8a...",
# "name": "Aurora Sneakers",
# "price": 12900,
# "stock": 42,
# "image": "https://cdn.example.com/shoe.jpg",
# "created_at": "2025-01-14T11:24:09.000Z"
# }Architecture
Customer data never crosses your trust boundary
Our API server sits in the middle, but it only handles metadata: which spreadsheet, which sheet, which row index, which Drive file ID. The actual bytes go straight between your app and Google.
- Token hashing (HMAC-SHA256) and AES-256-GCM at rest
- Tenant isolation enforced on every route
- No customer records in our database — only IDs and keys
- Quota-aware batching, retries, exponential backoff
Pricing
Free during the public beta
When paid plans turn on, here's what we'll offer:
Free
For hobby projects and trying things out.
- Up to 3 projects
- 10,000 API requests / month
- Your Drive storage
- Community support
Developer
For indie hackers shipping their first MVP.
- Up to 10 projects
- 100,000 API requests / month
- Your Drive storage
- Email support
Pro
For production apps with real users.
- Unlimited projects
- 1,000,000 API requests / month
- Your Drive storage
- Priority support
- Audit log export
Prices shown in Nigerian Naira (₦). Storage is always your Google Drive — we don't host any bytes.
Why teams use it
The same primitives as Supabase or Firebase — without giving up your data
"I shipped a feature that required a database, and didn't have to set up a Postgres instance. The spreadsheet *is* the database."
"Audit and compliance love that customer data lives in the customers' own Drive. We don't touch the records."
"Onboarding Google went from a 3-week Terraform project to one screen and a redirect."
FAQ
Questions developers ask
What happens to my data if Urbase shuts down?
You keep it. Every record lives in your Google Sheet, every file in your Drive. If we disappear, you can keep using the Sheet directly or migrate to another adapter (the DatabaseAdapter interface is open).
Can I use Urbase if I'm on a personal Google account?
Yes — any Google account that can use Drive and Sheets works. Workspace accounts are also supported.
Do you store my application's records?
No. We only store pointers (spreadsheet IDs, file IDs, schemas, hashed API keys). Records and file bytes live in your Google account.
What scopes do you request?
drive.file (restricted — only files the app creates) and spreadsheets. We cannot see your existing Drive files.
How do rate limits work?
Per API key, per minute and per day. Defaults are 120/min and 10k/day. Limits are configurable per plan.
Your next backend is one Google login away.
Connect your account, create a project, and you're shipping in under a minute.