API: Dashboards
Manage dashboards and their cards. All endpoints require authentication unless noted. 24 endpoints.
GET /api/dashboards
Section titled “GET /api/dashboards”List dashboards (optionally filtered by stage)
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
includeDeleted |
boolean | no | |
stage |
string | no | |
publishedOnly |
boolean | no | |
limit |
integer | no | |
offset |
integer | no |
Responses: 200 · 400 · 401
POST /api/dashboards
Section titled “POST /api/dashboards”Create a new dashboard
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | yes | |
description |
string | no | |
layout |
string | no | |
theme |
string | no |
Responses: 201 · 400 · 401 · 409
GET /api/dashboards/{id}
Section titled “GET /api/dashboards/{id}”Get dashboard by ID
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Responses: 200 · 400 · 401 · 404
PUT /api/dashboards/{id}
Section titled “PUT /api/dashboards/{id}”Update a dashboard
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | no | |
description |
string | no | |
layout |
string | no | |
theme |
string | no | |
filterState |
string | no | |
isPublished |
boolean | no |
Responses: 200 · 400 · 401 · 404
DELETE /api/dashboards/{id}
Section titled “DELETE /api/dashboards/{id}”Delete a dashboard (soft delete)
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Responses: 204 — No content · 401 · 404
GET /api/dashboards/{id}/cards
Section titled “GET /api/dashboards/{id}/cards”List cards in a dashboard
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
pageId |
string | no |
Responses: 200 · 400 · 401
POST /api/dashboards/{id}/cards
Section titled “POST /api/dashboards/{id}/cards”Add a card to a dashboard
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
id |
string | no | |
cardType |
string | yes | |
title |
string | no | |
description |
string | no | |
position |
object | yes | |
chartSpec |
object | no | |
savedQueryId |
string | no | |
textContent |
string | no | |
imageUrl |
string | no | |
value |
string | no | |
pageId |
string | no |
Responses: 201 · 400 · 401 · 409
PUT /api/dashboards/{id}/cards/{cardId}
Section titled “PUT /api/dashboards/{id}/cards/{cardId}”Update a dashboard card
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | |
cardId |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
cardType |
string | no | |
title |
string | no | |
description |
string | no | |
position |
object | no | |
chartSpec |
object | no | |
savedQueryId |
string,null | no | |
textContent |
string | no | |
imageUrl |
string | no | |
value |
string | no | |
ordinal |
integer | no | |
pageId |
string | no |
Responses: 200 · 400 · 401 · 404
DELETE /api/dashboards/{id}/cards/{cardId}
Section titled “DELETE /api/dashboards/{id}/cards/{cardId}”Delete a dashboard card
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | |
cardId |
string | yes |
Responses: 204 — No content · 401 · 404
PUT /api/dashboards/{id}/cards/batch
Section titled “PUT /api/dashboards/{id}/cards/batch”Batch-update dashboard cards (layout/spec) in one request
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
updates |
array of object | yes |
Responses: 200 · 400 · 401 · 404
POST /api/dashboards/{id}/cards/from-query
Section titled “POST /api/dashboards/{id}/cards/from-query”Create a card from a saved query
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
savedQueryId |
string | yes | |
title |
string | no | |
position |
object | no | |
pageId |
string | no |
Responses: 201 · 400 · 401 · 409
PUT /api/dashboards/{id}/cards/reorder
Section titled “PUT /api/dashboards/{id}/cards/reorder”Reorder dashboard cards
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
cardIds |
array of string | yes |
Responses: 200 · 400 · 401 · 404
POST /api/dashboards/{id}/duplicate
Section titled “POST /api/dashboards/{id}/duplicate”Duplicate a dashboard with its pages, cards and filters
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Responses: 201 · 400 · 401 · 409
GET /api/dashboards/{id}/filters
Section titled “GET /api/dashboards/{id}/filters”List filters for a dashboard
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Responses: 200 · 400 · 401
POST /api/dashboards/{id}/filters
Section titled “POST /api/dashboards/{id}/filters”Add a filter to a dashboard
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
fieldId |
string | yes | |
filterType |
string | yes | |
label |
string | no | |
defaultValue |
string | no | |
linkedCardIds |
array of string | no |
Responses: 201 · 400 · 401 · 409
PUT /api/dashboards/{id}/filters/{filterId}
Section titled “PUT /api/dashboards/{id}/filters/{filterId}”Update a dashboard filter
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | |
filterId |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
fieldId |
string | no | |
filterType |
string | no | |
label |
string | no | |
defaultValue |
string | no | |
linkedCardIds |
array of string | no | |
ordinal |
integer | no |
Responses: 200 · 400 · 401 · 404
DELETE /api/dashboards/{id}/filters/{filterId}
Section titled “DELETE /api/dashboards/{id}/filters/{filterId}”Delete a dashboard filter
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | |
filterId |
string | yes |
Responses: 204 — No content · 401 · 404
GET /api/dashboards/{id}/pages
Section titled “GET /api/dashboards/{id}/pages”List pages in a dashboard
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Responses: 200 · 400 · 401
POST /api/dashboards/{id}/pages
Section titled “POST /api/dashboards/{id}/pages”Create a dashboard page
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
id |
string | no | |
name |
string | yes | |
pageIndex |
integer | no | |
isHidden |
boolean | no |
Responses: 201 · 400 · 401 · 409
PUT /api/dashboards/{id}/pages/{pageId}
Section titled “PUT /api/dashboards/{id}/pages/{pageId}”Update a dashboard page
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | |
pageId |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | no | |
pageIndex |
integer | no | |
isHidden |
boolean | no |
Responses: 204 — No content · 401 · 404
DELETE /api/dashboards/{id}/pages/{pageId}
Section titled “DELETE /api/dashboards/{id}/pages/{pageId}”Delete a dashboard page
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | |
pageId |
string | yes |
Responses: 204 — No content · 401 · 404
POST /api/dashboards/{id}/pages/reorder
Section titled “POST /api/dashboards/{id}/pages/reorder”Reorder dashboard pages
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
pageIds |
array of string | yes |
Responses: 204 — No content · 401 · 404
POST /api/dashboards/{id}/publish
Section titled “POST /api/dashboards/{id}/publish”Publish a dashboard version (snapshot current state)
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes |
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
changeNote |
string | no |
Responses: 200 · 400 · 401 · 404
POST /api/dashboards/bulk-delete
Section titled “POST /api/dashboards/bulk-delete”Delete multiple dashboards in bulk (soft delete)
Request body (JSON)
| Field | Type | Required | Description |
|---|---|---|---|
ids |
array of string | yes |
Responses: 200 · 400 · 401 · 404