API Documentation
Mind One’s public API lets you integrate the platform with external systems programmatically. It’s authenticated with API Keys (Bearer token) and follows the REST standard.
Base URL
https://api.getmindapp.io/api/v1/publicAuthentication
Every call requires an API Key in the Authorization header:
Authorization: Bearer mk_xxxxxxxxxxxxxxxxxxxxxxxxEach user generates and manages their own API Keys from Profile → API Keys. The mk_ prefix identifies Mind One keys. The key inherits the user’s role, and that role determines which operations it allows.
Response format
All responses follow the same pattern:
{
"data": [ ... ],
"meta": {
"total": 100,
"page": 1,
"pageSize": 20,
"totalPages": 5
}
}For single-resource responses, data contains the object directly instead of an array.
Pagination
Endpoints that return lists support pagination via query params:
| Parameter | Type | Description |
|---|---|---|
page | number | Page number (1-based). Default: 1. |
limit | number | Items per page. Maximum: 200. Default: 20. |
The response’s meta object includes:
| Field | Type | Description |
|---|---|---|
total | number | Total number of items in the result |
page | number | Current page |
pageSize | number | Items returned on this page |
totalPages | number | Total number of pages available |
Example:
GET /workspaces?page=2&limit=50HTTP status codes
| Code | Meaning |
|---|---|
200 | OK — Successful request |
201 | Created — Resource created |
204 | No Content — Successful deletion |
400 | Bad Request — Invalid input data |
401 | Unauthorized — Missing or invalid API Key |
403 | Forbidden — No permissions or suspended account |
404 | Not Found — Resource not found |
409 | Conflict — Conflict (e.g. duplicate key) |
429 | Too Many Requests — Rate limit reached |
500 | Internal Server Error — Internal server error |
Rate limiting
The API enforces request limits per API Key. Exceeding the limit returns a 429 Too Many Requests.
We recommend implementing exponential backoff in your integrations: wait an increasing amount of time between retries instead of retrying immediately.
Quick examples
Creating a workspace:
curl -X POST https://api.getmindapp.io/api/v1/public/workspaces \
-H "Authorization: Bearer mk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Customers",
"description": "Master customer data"
}'Listing workspaces:
curl "https://api.getmindapp.io/api/v1/public/workspaces?page=1&limit=20" \
-H "Authorization: Bearer mk_your_api_key"Listing a sheet’s records:
curl "https://api.getmindapp.io/api/v1/public/datagrids/{datagridId}/rows?page=1&limit=50" \
-H "Authorization: Bearer mk_your_api_key"Related
- Connections — Automatic syncing with data warehouses via Autosync.
- Users and Roles — Each user generates their own API Keys; their role determines which operations they allow.