Connect your app.
In plain English.
Everything you need to read and save data, sign in your customers and take your data with you.
Quickstart
Four steps from nothing to your first saved record. Make a project, make a table, make a key, then call the API.
# 1. Look at your tables and copy a table id
curl https://YOUR-PROJECT-URL/api/tables \
-H "x-api-key: YOUR_SECRET_KEY"
# 2. Add a record to that table
curl -X POST https://YOUR-PROJECT-URL/api/tables/TABLE_ID/rows \
-H "x-api-key: YOUR_SECRET_KEY" \
-H "content-type: application/json" \
-d '{"data":{"Name":"Sam","Email":"sam@example.com"}}'Your secret key
Make a key on the API page of your dashboard. Send it in the x-api-key header from your server. Never put it in a web page or a mobile app. If a secret key is sent from a web page, Plainbase refuses it and warns you. If a key leaks, revoke it and make a new one.
Tables and records
Tables are found by id, so list them first. Field types are text, number, date and checkbox. Use field names exactly as the table has them.
GET /api/tables list tables
POST /api/tables make a table
GET /api/tables/{tableId}/rows list records
POST /api/tables/{tableId}/rows add a record
PATCH /api/tables/{tableId}/rows/{id} change a record
DELETE /api/tables/{tableId}/rows/{id} delete a recordWho can see a table
Each table is Private (dashboard and secret keys only), Logged-in users (customers who signed in to your app), or Public read (anyone can read, nobody can write from outside). New tables made with a key start as Private.
Customer login
Customers sign in with a six-digit code sent to their email. The code works once and expires after ten minutes. Switch it on first under Authentication in your dashboard, and set up your email.
POST /api/app-auth/{projectId}/request-code {"email":"customer@example.com"}
POST /api/app-auth/{projectId}/verify-code {"email":"...","code":"123456"}
# send the token you get back on later requests:
Authorization: Bearer TOKENAI keys
Give your AI tool an AI key instead of your secret key. On the API page, choose Read only or Read and save, and pick which tables it can use. An AI key can never delete records, change your tables, export your data or use files. Every change it makes shows in History as “AI”. AI keys do not use your key allowance, and you can have up to five.
MCP (for AI tools)
MCP lets AI tools like Cursor use your data directly, with no code. Add Plainbase as a remote MCP server and send your secret key in the x-api-key header. The AI can list your tables, read records, add records and change records. It cannot delete anything, and it follows the same rules and plan limits as any other app.
{
"mcpServers": {
"plainbase": {
"url": "https://YOUR-PROJECT-URL/api/mcp",
"headers": { "x-api-key": "YOUR_SECRET_KEY" }
}
}
}Export your data
Take your data with you at any time, in CSV or JSON.
GET /api/export?format=csv
GET /api/export?format=jsonHistory and undo
Changes to your data are written down. The project owner can look at History in the dashboard and undo a change for 30 days.
Backups
Plainbase saves a copy of your tables and records every day and keeps the last seven, plus up to five you save by hand. In the dashboard, open Backups to put one table or the whole project back the way it was. A safety copy of “now” is saved first, so going back can be undone. Uploaded files are not part of a backup. These backups live in the same database as your data, so for a real server also keep your own copy of Postgres (see the launch checklist).
Plan limits
The Free plan has 1 project, 3 tables, 1,000 records, 100 MB of files and 1 API key. If a request fails with “reached the Free limit”, the error says what to do. See Pricing for Starter and Pro.