Skip to main content

Create dashboard instances

Available since 2021 Update 10

This workflow sample demonstrates how to create an instance of a dashboard in memory on the intelligence server. The dashboard is based on a set of reports, dashboards, and cubes.

tip

You can try this API with REST API Playground.

Learn more about Strategy REST API Playground here.

info

Obtain the authorization token needed to execute the request using POST /api/auth/login.

POST /api/dossiers/instances​

Creates a new instances for dashboards. It is similar to POST /api/dossiers/{dossierId}/instances but it does not require a dashboard ID. Instead, it uses the DashboardCreationInfo object in the request body to create a new dashboard instance.

Request URL​

POST /api/dossiers/instances

Request Headers​

NameTypeDescription
X-MSTR-AuthTokenHeaderAuthorization token generated by POST /api/auth/login
X-MSTR-ProjectIDHeaderProject ID generated by GET /api/projects
PreferHeaderAllow client to set preferences

Sample Request Body​

The request body should contain the information for creating a new dashboard instance. Here's a sample using the DashboardCreationInfo schema:

{
"objects": [
{
"type": 3,
"id": "E697E885F6426C1F0B794593D648AFC0"
}
],
"persistReportViewState": false,
"createForReportEditor": true,
"linkingInfo": {
"sourceInstanceId": "126620F76340F6A688ECEEB65033F625",
"promptsAnswers": "<hl mid=\"126620F76340F6A688ECEEB65033F625\" srct=\"3\" aopam=\"2\"><prms><prm id=\"D4F70D5ABA4F596ACE2844BAF90432D5\" am=\"4\" pt=\"2\" orid=\"8D679D3711D3E4981000E787EC6DE8A4\" ortp=\"12\"></prm></prms></hl>",
"selectorMode": 2,
"targetPageKey": "K53",
"vizSelection": "{\"sels\":[],\"isBranch\":false}",
"passFilter": 1,
"passInCanvasSelection": false
}
}

Please refer to the DashboardCreationInfo and LinkingInfo schemas for the detailed properties and descriptions.

Sample Curl Request​

curl -X 'POST' 'http://demo.microstrategy.com/MicroStrategyLibrary/api/dossiers/instances' \
-H 'accept: application/json' \
-H 'X-MSTR-AuthToken: h979btnpbep63peg8ind69ot79' \
-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754' \
-H 'Content-Type: application/json' \
-d '{
"objects":[{"type": 3,"id": "E697E885F6426C1F0B794593D648AFC0"}],
"persistReportViewState": false,
"createForReportEditor": true,
"linkingInfo": {
"sourceInstanceId": "126620F76340F6A688ECEEB65033F625",
"promptsAnswers": "<hl mid=\"126620F76340F6A688ECEEB65033F625\" srct=\"3\" aopam=\"2\"><prms><prm id=\"D4F70D5ABA4F596ACE2844BAF90432D5\" am=\"4\" pt=\"2\" orid=\"8D679D3711D3E4981000E787EC6DE8A4\" ortp=\"12\"></prm></prms></hl>",
"selectorMode": 2,
"targetPageKey": "K53",
"vizSelection": "{\"sels\":[],\"isBranch\":false}",
"passFilter": 1,
"passInCanvasSelection": false
}
}'

Sample Response​

If successful, this API call returns a 201 Created status code and the dashboard instance object in the response body. The response body follows the DocumentInstance schema:

{
"id": "00000000000000000000000000000000",
"status": 1,
"mid": "BB4335B5594A5E2AA38CD99100A676C6"
}

HTTP Status Codes​

Status CodeDescription
201Created (See [Location])
500Internal Server Error
401Unauthorized
400Bad Request