Public API Documentation
MindHQ Dashboard API
A full-access REST API for reading, creating, updating, and deleting records across all entities in the MindHQ dashboard. All requests require an API key.
Base URL
https://mindhq.base44.app/functions/dashboardApiAuthentication
All requests must include your API key in the X-API-Key header. Contact the dashboard owner to obtain your key.
curl -X POST https://mindhq.base44.app/functions/dashboardApi \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{ "entity": "Task", "action": "list" }'⚠ Keep your API key secret. Never expose it in client-side code or public repositories.
Supported Entities
The following entity names can be used in the entity field:
ProjectTaskIdeaGoalGoalMilestoneNoteCalendarEventFocusSessionDailyGoalAIAgentFinancialRecordSubscriptionResourceStaffRoadmapClientClientActivityInvoiceInvoiceReminderWatchlistItemWatchlistCategoryWatchlistTransactionStockHoldingNewsArticleSavedArticleNewsSourceGeneratedIdeaMacroInsightNotificationProjectMemberMarketingContentProjectPriorityFlowchartFlowchartVersion
Built-in fields: Every record automatically includes
id, created_date, updated_date, and created_by.POST
List Records
Retrieve a list of records for any entity. Optionally filter, sort, and limit results.
Request Body
{
"entity": "Task",
"action": "list",
"filter": { "status": "backlog" },
"sort": "-created_date",
"limit": 50
}Response
{
"success": true,
"entity": "Task",
"count": 2,
"data": [
{ "id": "abc123", "title": "My task", "status": "backlog", ... },
...
]
}POST
Get Single Record
Retrieve a single record by its ID.
Request Body
{
"entity": "Task",
"action": "get",
"id": "abc123"
}Response
{
"success": true,
"entity": "Task",
"data": { "id": "abc123", "title": "My task", ... }
}POST
Create Record
Create a new record for any entity.
Request Body
{
"entity": "Task",
"action": "create",
"data": {
"title": "New Task",
"status": "backlog",
"priority": "high"
}
}Response
{
"success": true,
"entity": "Task",
"data": { "id": "xyz789", "title": "New Task", ... }
}POST
Update Record
Update fields of an existing record by ID.
Request Body
{
"entity": "Task",
"action": "update",
"id": "abc123",
"data": {
"status": "done"
}
}Response
{
"success": true,
"entity": "Task",
"data": { "id": "abc123", "status": "done", ... }
}POST
Delete Record
Permanently delete a record by ID.
Request Body
{
"entity": "Task",
"action": "delete",
"id": "abc123"
}Response
{
"success": true,
"entity": "Task",
"deleted_id": "abc123"
}POST
Bulk Create
Create multiple records in a single request.
Request Body
{
"entity": "Task",
"action": "bulk_create",
"items": [
{ "title": "Task A", "status": "backlog" },
{ "title": "Task B", "status": "backlog" }
]
}Response
{
"success": true,
"entity": "Task",
"count": 2,
"data": [ { "id": "..." }, { "id": "..." } ]
}Error Handling
All errors return a JSON object with an error field and an appropriate HTTP status code.
| Status | Meaning |
|---|---|
| 401 | Unauthorized — missing or invalid X-API-Key |
| 400 | Bad Request — missing required fields or unsupported entity |
| 500 | Server Error — something went wrong internally |
| 201 | Created — record successfully created |
| 200 | OK — request successful |
// Error response example
{
"error": "Unauthorized: invalid or missing X-API-Key header"
}