diff --git a/docs/common-workflows/administration/distribution-services/manage-subscriptions/mobile-subscriptions.md b/docs/common-workflows/administration/distribution-services/manage-subscriptions/mobile-subscriptions.md
index 00790938..ef8118e4 100644
--- a/docs/common-workflows/administration/distribution-services/manage-subscriptions/mobile-subscriptions.md
+++ b/docs/common-workflows/administration/distribution-services/manage-subscriptions/mobile-subscriptions.md
@@ -39,9 +39,16 @@ Sample Request
```json
{
"name": "Example",
+ "multipleContents": true,
+ "editable": false,
"allowDeliveryChanges": false,
"allowPersonalizationChanges": false,
- "allowUnsubscribe": false,
+ "allowUnsubscribe": true,
+ "allowUnsubscribeFromEmail": false,
+ "owner": {
+ "id": "54F3D26011D2896560009A8E67019608",
+ "name": "Administrator"
+ },
"schedules": [
{
"id": "3450AE6F4E29E9A6E1075DA93B7062AA"
@@ -49,35 +56,79 @@ Sample Request
],
"contents": [
{
- "id": "E63834A411D5C49EC0000C881FDA1A4F",
- "name": "Unit Tracking by Supplier",
- "type": "report",
+ "id": "2649260543F8E86FBA0A36A7BE8BBC9F",
+ "name": "DashboardForTelemetry1",
+ "type": "dossier",
+ "projectId": "B19DEDCC11D4E0EFC000EB9495D0F44F",
"personalization": {
"compressed": false,
- "formatMode": "CURRENT_PAGE",
- "viewMode": "BOTH",
- "formatType": "HTML"
- }
+ "contentModes": ["bookmark"],
+ "bookmarkIds": ["5228FBC043BC7964DB682D816C7AECB6"],
+ "manipulations": "51K3672K5319K52584C051DB611D3E877C000B3B2D86C964F4threshold 0120",
+ "exportToPdfSettings": null,
+ "exportToCsvSettings": null
+ },
+ "alertActions": [
+ {
+ "act": "setCurrentLayout",
+ "unitKey": "K36",
+ "panelUnitKey": "K53"
+ },
+ {
+ "act": "updateTemplate",
+ "keyContext": "K52",
+ "actions": [
+ {
+ "act": "threshold",
+ "nodeKey": "K52",
+ "thresholds": [
+ {
+ "n": "threshold 0",
+ "scope": 1,
+ "rtp": 2,
+ "rtxt": "",
+ "expr": "",
+ "fmt": {
+ "FormattingFont": {
+ "Color": 0
+ },
+ "FormattingPatterns": {
+ "FillStyle": 1
+ }
+ }
+ }
+ ],
+ "thresholdType": -1,
+ "basedOnId": "4C051DB611D3E877C000B3B2D86C964F",
+ "did": "4C051DB611D3E877C000B3B2D86C964F",
+ "objType": 4
+ }
+ ]
+ }
+ ]
}
],
"recipients": [
{
"id": "54F3D26011D2896560009A8E67019608",
- "type": "user",
- "includeType": "TO"
+ "type": "user"
}
],
"delivery": {
"mode": "MOBILE",
+ "expirationTimeZone": "Europe/London",
"contactSecurity": false,
"mobile": {
- "clientType": "TABLET",
- "deviceId": "E206C75BABC441C5B13B60C5D956F605",
- "doNotCreateUpdateCaches": false,
+ "deviceId": "E206C75BABC441C5B13B60C5D956F605,DD197BFE29A047BC890742C611DC8D94",
+ "doNotCreateUpdateCaches": true,
"overwriteOlderVersion": true,
- "reRunHl": false
+ "libraryUrl": "http://localhost:8080/MicroStrategyLibrary/",
+ "reRunHl": true,
+ "message": "Mobile alert",
+ "subject": "Alert from Mobile"
}
- }
+ },
+ "alert": true
}
```
@@ -93,61 +144,59 @@ Sample Response
```json
{
- "id": "0BC64C0AFA4F86A55FB8BEA3332F90B7",
- "multipleContents": false,
"name": "Example",
- "editable": true,
+ "multipleContents": true,
+ "editable": false,
"allowDeliveryChanges": false,
"allowPersonalizationChanges": false,
- "allowUnsubscribe": false,
- "dateCreated": "2021-08-03T13:08:47+0000",
- "dateModified": "2021-08-03T13:08:47+0000",
+ "allowUnsubscribe": true,
+ "allowUnsubscribeFromEmail": false,
"owner": {
- "id": "7FC05A65473CE2FD845CE6A1D3F13233",
- "name": "MSTR User"
+ "id": "54F3D26011D2896560009A8E67019608",
+ "name": "Administrator"
},
"schedules": [
{
- "id": "3450AE6F4E29E9A6E1075DA93B7062AA",
- "name": "Books Closed",
- "type": "event_based",
- "expired": false
+ "id": "3450AE6F4E29E9A6E1075DA93B7062AA"
}
],
"contents": [
{
- "id": "E63834A411D5C49EC0000C881FDA1A4F",
- "name": "Unit Tracking by Supplier",
- "type": "report",
+ "id": "2649260543F8E86FBA0A36A7BE8BBC9F",
+ "name": "DashboardForTelemetry1",
+ "type": "dossier",
+ "projectId": "B19DEDCC11D4E0EFC000EB9495D0F44F",
"personalization": {
"compressed": false,
- "formatMode": "CURRENT_PAGE",
- "viewMode": "BOTH",
- "formatType": "HTML"
+ "contentModes": ["bookmark"],
+ "bookmarkIds": ["5228FBC043BC7964DB682D816C7AECB6"],
+ "manipulations": "51K3672K5319K52584C051DB611D3E877C000B3B2D86C964F4threshold 0120",
+ "exportToPdfSettings": null,
+ "exportToCsvSettings": null
}
}
],
"recipients": [
{
"id": "54F3D26011D2896560009A8E67019608",
- "name": "Administrator",
- "isGroup": false,
- "type": "user",
- "includeType": "TO",
- "childSubscriptionId": "8B1B107C2D4D82C13F1342B7959E9B4D"
+ "type": "user"
}
],
"delivery": {
"mode": "MOBILE",
+ "expirationTimeZone": "Europe/London",
"contactSecurity": false,
"mobile": {
- "clientType": "TABLET",
- "deviceId": "E206C75BABC441C5B13B60C5D956F605",
- "doNotCreateUpdateCaches": false,
+ "deviceId": "E206C75BABC441C5B13B60C5D956F605,DD197BFE29A047BC890742C611DC8D94",
+ "doNotCreateUpdateCaches": true,
"overwriteOlderVersion": true,
- "reRunHl": false
+ "libraryUrl": "http://localhost:8080/MicroStrategyLibrary/",
+ "reRunHl": true,
+ "message": "Mobile alert",
+ "subject": "Alert from Mobile"
}
- }
+ },
+ "alert": true
}
```
@@ -174,9 +223,16 @@ Sample Request
```json
{
"name": "Example",
+ "multipleContents": true,
+ "editable": false,
"allowDeliveryChanges": false,
"allowPersonalizationChanges": false,
- "allowUnsubscribe": false,
+ "allowUnsubscribe": true,
+ "allowUnsubscribeFromEmail": false,
+ "owner": {
+ "id": "54F3D26011D2896560009A8E67019608",
+ "name": "Administrator"
+ },
"schedules": [
{
"id": "3450AE6F4E29E9A6E1075DA93B7062AA"
@@ -184,35 +240,80 @@ Sample Request
],
"contents": [
{
- "id": "E63834A411D5C49EC0000C881FDA1A4F",
- "name": "Unit Tracking by Supplier",
- "type": "report",
+ "id": "2649260543F8E86FBA0A36A7BE8BBC9F",
+ "name": "DashboardForTelemetry1",
+ "type": "dossier",
+ "projectId": "B19DEDCC11D4E0EFC000EB9495D0F44F",
"personalization": {
"compressed": false,
- "formatMode": "CURRENT_PAGE",
- "viewMode": "BOTH",
- "formatType": "HTML"
- }
+ "contentModes": ["bookmark"],
+ "bookmarkIds": ["5228FBC043BC7964DB682D816C7AECB6"],
+ "manipulations": "51K3672K5319K52584C051DB611D3E877C000B3B2D86C964F4threshold 0120",
+ "exportToPdfSettings": null,
+ "exportToCsvSettings": null
+ },
+ "alertActions": [
+ {
+ "act": "setCurrentLayout",
+ "unitKey": "K36",
+ "panelUnitKey": "K53"
+ },
+ {
+ "act": "updateTemplate",
+ "keyContext": "K52",
+ "actions": [
+ {
+ "act": "threshold",
+ "nodeKey": "K52",
+ "thresholds": [
+ {
+ "n": "threshold 0",
+ "scope": 1,
+ "rtp": 2,
+ "rtxt": "",
+ "expr": "",
+ "fmt": {
+ "FormattingFont": {
+ "Color": 0
+ },
+ "FormattingPatterns": {
+ "FillStyle": 1
+ }
+ }
+ }
+ ],
+ "thresholdType": -1,
+ "basedOnId": "4C051DB611D3E877C000B3B2D86C964F",
+ "did": "4C051DB611D3E877C000B3B2D86C964F",
+ "objType": 4
+ }
+ ]
+ }
+ ]
}
],
"recipients": [
{
"id": "54F3D26011D2896560009A8E67019608",
- "type": "user",
- "includeType": "TO"
+ "type": "user"
}
],
"delivery": {
"mode": "MOBILE",
+ "expirationTimeZone": "Europe/London",
"contactSecurity": false,
"mobile": {
- "clientType": "TABLET",
"deviceId": "E206C75BABC441C5B13B60C5D956F605",
- "doNotCreateUpdateCaches": false,
+ "doNotCreateUpdateCaches": true,
"overwriteOlderVersion": true,
- "reRunHl": false
+ "libraryUrl": "http://localhost:8080/MicroStrategyLibrary/",
+ "reRunHl": true,
+ "message": "Mobile alert",
+ "subject": "Alert from Mobile"
}
- }
+ },
+ "alert": true,
+ "sendNow": false
}
```
@@ -228,61 +329,59 @@ Sample Response
```json
{
- "id": "0BC64C0AFA4F86A55FB8BEA3332F90B7",
- "multipleContents": false,
"name": "Example",
- "editable": true,
+ "multipleContents": true,
+ "editable": false,
"allowDeliveryChanges": false,
"allowPersonalizationChanges": false,
- "allowUnsubscribe": false,
- "dateCreated": "2021-08-03T13:08:47+0000",
- "dateModified": "2021-08-03T13:08:47+0000",
+ "allowUnsubscribe": true,
+ "allowUnsubscribeFromEmail": false,
"owner": {
- "id": "7FC05A65473CE2FD845CE6A1D3F13233",
- "name": "MSTR User"
+ "id": "54F3D26011D2896560009A8E67019608",
+ "name": "Administrator"
},
"schedules": [
{
- "id": "3450AE6F4E29E9A6E1075DA93B7062AA",
- "name": "Books Closed",
- "type": "event_based",
- "expired": false
+ "id": "3450AE6F4E29E9A6E1075DA93B7062AA"
}
],
"contents": [
{
- "id": "E63834A411D5C49EC0000C881FDA1A4F",
- "name": "Unit Tracking by Supplier",
- "type": "report",
+ "id": "2649260543F8E86FBA0A36A7BE8BBC9F",
+ "name": "DashboardForTelemetry1",
+ "type": "dossier",
+ "projectId": "B19DEDCC11D4E0EFC000EB9495D0F44F",
"personalization": {
"compressed": false,
- "formatMode": "CURRENT_PAGE",
- "viewMode": "BOTH",
- "formatType": "HTML"
+ "contentModes": ["bookmark"],
+ "bookmarkIds": ["5228FBC043BC7964DB682D816C7AECB6"],
+ "manipulations": "51K3672K5319K52584C051DB611D3E877C000B3B2D86C964F4threshold 0120",
+ "exportToPdfSettings": null,
+ "exportToCsvSettings": null
}
}
],
"recipients": [
{
"id": "54F3D26011D2896560009A8E67019608",
- "name": "Administrator",
- "isGroup": false,
- "type": "user",
- "includeType": "TO",
- "childSubscriptionId": "8B1B107C2D4D82C13F1342B7959E9B4D"
+ "type": "user"
}
],
"delivery": {
"mode": "MOBILE",
+ "expirationTimeZone": "Europe/London",
"contactSecurity": false,
"mobile": {
- "clientType": "TABLET",
"deviceId": "E206C75BABC441C5B13B60C5D956F605",
- "doNotCreateUpdateCaches": false,
+ "doNotCreateUpdateCaches": true,
"overwriteOlderVersion": true,
- "reRunHl": false
+ "libraryUrl": "http://localhost:8080/MicroStrategyLibrary/",
+ "reRunHl": true,
+ "message": "Mobile alert",
+ "subject": "Alert from Mobile"
}
- }
+ },
+ "alert": true
}
```
diff --git a/docs/common-workflows/analytics/auto-bot-api/auto-bot-api.md b/docs/common-workflows/analytics/auto-bot-api/auto-bot-api.md
index 8ca1777d..aa23cb8e 100644
--- a/docs/common-workflows/analytics/auto-bot-api/auto-bot-api.md
+++ b/docs/common-workflows/analytics/auto-bot-api/auto-bot-api.md
@@ -1,30 +1,32 @@
---
-title: Next-Gen AI
-description: This page contains a summary of REST APIs for the "auto bots" endpoint. You can use REST API requests to interact with Auto Bots.
+title: Auto Agent APIs
+description: This page contains a summary of REST APIs for the "agent" endpoint. You can use REST API requests to interact with Auto Agents.
---
-With the release of Strategy ONE (March 2025), we have introduced an enhanced set of APIs designed to leverage the capabilities of Next-Gen AI. These APIs are built on top of the existing question APIs and are compatible with both the Next-Gen AI and the legacy Auto Bots.
+Strategy One (March 2025) introduces an enhanced set of APIs designed to leverage the agent capabilities.
-The Next-Gen AI APIs provide a seamless way to interact with Next-Gen AI, allowing you to ask questions, retrieve answers, and get historical chat messages from specific bots. Additionally, the APIs offer the ability to get suggested questions, enhancing the user experience by providing relevant queries and answers efficiently.
+The Auto Agent APIs provide a seamless way to interact with agents, allowing you to ask questions, retrieve answers, and get historical chat messages from agents. Additionally, the APIs offer the ability to get suggested questions, enhancing the user experience by providing relevant queries and answers efficiently.
-Starting from Strategy ONE (June 2025), we've added support for retrieving images within answers, allowing for richer, more visual responses from the Next-Gen AI system. This feature includes customizable resolution settings to optimize image quality based on your specific needs.
+Strategy One (June 2025) adds support for retrieving images within answers, allowing for richer, more visual responses from the Auto Agent system. This feature includes customizable resolution settings to optimize image quality based on your specific needs.
+
+If you do not specify an Agent in your API requests, the system will automatically route your questions to the most appropriate Agent based on the context of your query. This intelligent routing ensures that users receive the most relevant responses without needing to manually select an Agent.
### Key Features
-- **Ask a question to a specific bot**: Submit a question to the specific Auto Bot. This API has been enhanced from the existing question API.
-- **Get answer by the question ID**: Retrieve the answer to a specific question using its ID. This API has been enhanced from the existing question API.
-- **Get chat history from a specific bot**: Obtain all historical chat messages from a specific bot.
-- **Get suggested questions from a specific bot**: Get recommended questions based on the context from a specific bot.
-- **Image support in answers**: Request and retrieve images as part of answers from Next-Gen AI, with customizable resolution settings. (Available from Strategy ONE (June 2025))
-- **Get attributes and metrics from a specific bot**: Fetch the column information (attributes and metrics) from a specific bot, which can be used for auto-complete functionality in user inputs. (Available from Strategy ONE (July 2025))
+- **Ask a question to the agent**: Submit a question to the agent. This API has been enhanced from the existing question API.
+- **Get answer by the question ID**: Retrieve the answer to a question using its ID. This API has been enhanced from the existing question API.
+- **Get chat history from the agent**: Obtain all historical chat messages from the agent.
+- **Get suggested questions from the agent**: Get recommended questions based on the context from the agent.
+- **Image support in answers**: Request and retrieve images as part of answers from agents, with customizable resolution settings. (Available from Strategy One (June 2025))
+- **Get attributes and metrics from the agent**: Fetch the column information (attributes and metrics) from the agent, which can be used for auto-complete functionality in user inputs. (Available from Strategy ONE (July 2025))
For further details on how to use these APIs, please refer to the following sections of this manual:
-- [Ask a question to a specific bot](./post-question.md)
+- [Ask a question to the agent](./post-question.md)
- [Get answer by the question ID](./get-question-by-id.md)
-- [Get chat history from a specific bot](./get-questions-by-bot.md)
-- [Get suggested questions from a specific bot](./post-suggestion.md)
+- [Get chat history from the agent](./get-questions-by-bot.md)
+- [Get suggested questions from the agent](./post-suggestion.md)
- [Get image from an answer](./get-image-of-answer.md)
-- [Get attributes and metrics from a specific bot](./get-columns.md)
+- [Get attributes and metrics from the agent](./get-columns.md)
diff --git a/docs/common-workflows/analytics/auto-bot-api/get-columns.md b/docs/common-workflows/analytics/auto-bot-api/get-columns.md
index ca496811..b9aa35ca 100644
--- a/docs/common-workflows/analytics/auto-bot-api/get-columns.md
+++ b/docs/common-workflows/analytics/auto-bot-api/get-columns.md
@@ -1,11 +1,11 @@
---
-title: Get attributes forms and metrics from a specific bot
-description: This page describes how to fetch the column information (attributes and metrics) from a specific bot.
+title: Get attributes forms and metrics from a specific agent
+description: This page describes how to fetch the column information (attributes and metrics) from a specific agent.
---
-This API is used to get the column information (attributes forms and metrics) from a specific bot. This information is essential for understanding what data elements the bot can access and use in its answers. The column information can be used to provide auto-complete functionality for user inputs, helping users formulate more accurate questions by suggesting relevant data elements as they type.
+This API is used to get column information (attributes forms and metrics) from a specific agent. This information is essential to understand what data elements the agent can access and use in its answers. The column information can be used to provide auto-complete functionality for user inputs, helping users formulate more accurate questions by suggesting relevant data elements as they type.
:::info
@@ -13,7 +13,7 @@ Obtain the authorization token needed to execute the request using [POST /api/au
:::
-## Get attributes forms and metrics from a specific bot
+## Get attributes forms and metrics from a specific agent
Endpoint: [GET /api/v2/bots/\{botId}/columns](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Next-Gen%20AI/getBotColumns)
@@ -21,7 +21,7 @@ Request Parameters:
| Name | Located in | Description | Required | Type |
| ---------------- | ---------- | -------------------- | -------- | ------ |
-| botId | path | ID of the bot | Yes | string |
+| botId | path | ID of the agent | Yes | string |
| X-MSTR-AuthToken | header | Authentication token | Yes | string |
| X-MSTR-ProjectID | header | Project ID | Yes | string |
@@ -46,8 +46,8 @@ Sample Response:
Notes:
-- This API is useful for understanding the data elements that a bot has access to.
-- Column information is essential for developers who want to build integrations that utilize specific data from bots.
+- This API is useful for understanding the data elements that a agent has access to.
+- Column information is essential for developers who want to build integrations that utilize specific data from agents.
## Use Cases
@@ -55,12 +55,12 @@ Auto-Complete Functionality:
One of the main purposes of this API is to enable auto-complete functionality for user input:
-1. When a user starts typing a question to the bot, your application can retrieve column information to suggest relevant attributes and metrics.
+1. When a user starts typing a question to the agent, your application can retrieve column information to suggest relevant attributes and metrics.
1. As the user types, match their input against column names and descriptions to provide real-time suggestions.
-1. This improves user experience by helping users formulate better questions and increases the accuracy of bot responses by ensuring users reference valid data elements.
+1. This improves user experience by helping users formulate better questions and increases the accuracy of agent responses by ensuring users reference valid data elements.
Example implementation:
-- Cache the column information at application startup or when a bot is selected
+- Cache the column information at application startup or when an agent is selected
- Implement a suggestion engine that matches partial user input against attribute and metric names
- Display matching columns as suggestions, possibly with their descriptions for additional context
diff --git a/docs/common-workflows/analytics/auto-bot-api/get-image-of-answer.md b/docs/common-workflows/analytics/auto-bot-api/get-image-of-answer.md
index 97af8bae..cda0fe11 100644
--- a/docs/common-workflows/analytics/auto-bot-api/get-image-of-answer.md
+++ b/docs/common-workflows/analytics/auto-bot-api/get-image-of-answer.md
@@ -4,7 +4,7 @@ title: Get an image in the answer of a specific question
description: This workflow sample demonstrates how to get an image in the answer of a specific question.
---
-
+
This workflow sample demonstrates how to get an image in the answer of a specific question.
@@ -14,7 +14,7 @@ Obtain the authorization token needed to execute the request using [POST /api/au
:::
-## Get an image of an answer related to a question with bot routing
+## Get an image of an answer
Endpoint: [GET /api/questions/\{questionsId}/answers/images/\{imageId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Next-Gen%20AI/getMessageImage)
diff --git a/docs/common-workflows/analytics/auto-bot-api/get-question-by-id.md b/docs/common-workflows/analytics/auto-bot-api/get-question-by-id.md
index 1789c891..775598de 100644
--- a/docs/common-workflows/analytics/auto-bot-api/get-question-by-id.md
+++ b/docs/common-workflows/analytics/auto-bot-api/get-question-by-id.md
@@ -35,13 +35,13 @@ curl 'https://demo.microstrategy.com/MicroStrategyLibrary/api/questions/91613866
Sample Response Code:
-| Response Code | Status |
-| ------------- | ------------------------------------------------------------------------------ |
-| 200 | Successfully returned the question from the bot that has been answered |
-| 202 | Successfully returned the question from the bot which is still being processed |
-| 400 | Error in getting the question from the bot |
-| 401 | Authorization failed |
-| 404 | Question does not exist |
+| Response Code | Status |
+| ------------- | --------------------------------------------------------------------------------- |
+| 200 | Successfully returned the answered question from the agent |
+| 202 | Successfully returned the question from the agent, which is still being processed |
+| 400 | Error getting the question from the agent |
+| 401 | Authorization failed |
+| 404 | Question does not exist |
## Response Body on Success
diff --git a/docs/common-workflows/analytics/auto-bot-api/get-questions-by-bot.md b/docs/common-workflows/analytics/auto-bot-api/get-questions-by-bot.md
index f5cde644..73050b8d 100644
--- a/docs/common-workflows/analytics/auto-bot-api/get-questions-by-bot.md
+++ b/docs/common-workflows/analytics/auto-bot-api/get-questions-by-bot.md
@@ -1,12 +1,12 @@
---
-sidebar_label: Get chat history from a specific bot
-title: Get chat history from a specific bot
-description: This workflow sample demonstrates how to get the historical chat messages from a specific bot.
+sidebar_label: Get chat history from a specific agent
+title: Get chat history from a specific agent
+description: This workflow sample demonstrates how to get the historical chat messages from a specific agent.
---
-This API is used to get the historical questions from a specific bot for the current user, which can be used as the `history` parameter in the `Ask a question to a specific bot` API.
+This API is used to get the historical questions from a specific agent for the current user, which can be used as the `history` parameter in the `Ask a question to a specific agent` API.
:::info
@@ -14,7 +14,7 @@ Obtain the authorization token needed to execute the request using [POST /api/au
:::
-## Get Questions by Bot
+## Get Questions by Agent
Endpoint: [GET /api/questions/](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Next-Gen%20AI/getChats_1)
@@ -28,9 +28,9 @@ Sample Request Headers:
Sample Request Query Strings:
-| Query String | Required | Description | Sample Value |
-| ------------ | -------- | ---------------------------------------------------------- | -------------------------------- |
-| botId | Yes | The ID of the bot whose chat history you want to retrieve. | 065B007500614D158B41B0D020C96966 |
+| Query String | Required | Description | Sample Value |
+| ------------ | -------- | ------------------------------------------------------------ | -------------------------------- |
+| botId | Yes | The ID of the agent whose chat history you want to retrieve. | 065B007500614D158B41B0D020C96966 |
Sample Curl:
@@ -43,16 +43,16 @@ curl 'https://demo.microstrategy.com/MicroStrategyLibrary/api/questions?botId=06
Sample Response Code:
-| Response Code | Status |
-| ------------- | ------------------------------------------------ |
-| 200 | Successfully returned the questions from the bot |
-| 400 | Error in getting the questions from the bot |
-| 401 | Authorization failed |
-| 404 | Bot does not exist |
+| Response Code | Status |
+| ------------- | -------------------------------------------------- |
+| 200 | Successfully returned the questions from the agent |
+| 400 | Error getting questions from the agent |
+| 401 | Authorization failed |
+| 404 | Agent does not exist |
## Response Body on Success
-The response is a list of questions and answers from the specific bot.
+The response is a list of questions and answers from the specific agent.
### Sample Response
diff --git a/docs/common-workflows/analytics/auto-bot-api/post-question.md b/docs/common-workflows/analytics/auto-bot-api/post-question.md
index d2d1cf9d..d148ef71 100644
--- a/docs/common-workflows/analytics/auto-bot-api/post-question.md
+++ b/docs/common-workflows/analytics/auto-bot-api/post-question.md
@@ -1,12 +1,12 @@
---
-sidebar_label: Ask a question to a specific bot
-title: Ask a question to a specific bot
-description: Submit a question to the Auto Bot and receive an question ID.
+sidebar_label: Ask the agent a question
+title: Ask the agent a question
+description: Submit a question to the agent and receive a question ID.
---
-Use this API to submit a question to a specific Auto Bot and receive an question ID.
+Use this API to submit a question to the agent and receive an question ID.
:::info
@@ -14,7 +14,7 @@ Obtain the authorization token needed to execute the request using [POST /api/au
:::
-## Ask a Specific Bot a Question
+## Ask the Agent a Question
Endpoint: [POST /api/questions](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Next-Gen%20AI/createQuestion)
@@ -28,15 +28,15 @@ Sample Request Headers:
Sample Request Body:
-| Field | Required | Description | Sample Value |
-| -------------- | -------- | --------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| question | Yes | The question text | Which customer has the highest revenue? |
-| bots | Yes | The bot to which the question is directed. Only one bot is supported. | [\{"id": "065B007500614D158B41B0D020C96966", "projectId": "B7CA92F04B9FAE8D941C3E9B7E0CD754"\}] |
-| answers.images | No | Optional. If not specified, the image is not generated. Supports one image. | [\{"width": 800, "height": 600\}] |
-| history | No | Optional. Previous questions and answers. Supports up to 5 entries. | [\{"id": "B7CA92F04B9FAE8D941C3E9B7E0CD754:065B007500614D158B41B0D020C96966:E41CC2178F6042BCAAD72E322E802A90", "question": "show the monthly percentage development of the revenue in euros compared to the previous month for branch a013.. today's date is 04-march-2025. make sure to do correct datetime based calculation.", "text": "The monthly percentage development of revenue in euros for branch A013 shows fluctuations over the observed period. Starting in September 2024, there was an 8% decrease in revenue compared to the previous month. This was followed by a smaller decline of 3% in October 2024. November 2024 saw a slight increase of 1%, while December 2024 experienced a significant rise of 42%. However, in January 2025, there was a notable decrease of 19% in revenue compared to December 2024." \}, \{"id": "B7CA92F04B9FAE8D941C3E9B7E0CD754:065B007500614D158B41B0D020C96966:5720DC60EBB648FFAFCDE05A7363395B", "question": "what was the revenue in euros for branch a013 in december 2024?", "text": "The revenue in euros for branch A013 in December 2024 was €4,519,521." \}] |
+| Field | Required | Description | Sample Value |
+| -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| question | Yes | The question text | Which customer has the highest revenue? |
+| bots | No | The agent to which the question is directed. Only one agent is supported. If not specified, the best suitable agent will be selected. | [\{"id": "065B007500614D158B41B0D020C96966", "projectId": "B7CA92F04B9FAE8D941C3E9B7E0CD754"\}] |
+| answers.images | No | Optional. If not specified, the image is not generated. Supports one image. | [\{"width": 800, "height": 600\}] |
+| history | No | Optional. Previous questions and answers. Supports up to 5 entries. | [\{"id": "B7CA92F04B9FAE8D941C3E9B7E0CD754:065B007500614D158B41B0D020C96966:E41CC2178F6042BCAAD72E322E802A90", "question": "show the monthly percentage development of the revenue in euros compared to the previous month for branch a013.. today's date is 04-march-2025. make sure to do correct datetime based calculation.", "text": "The monthly percentage development of revenue in euros for branch A013 shows fluctuations over the observed period. Starting in September 2024, there was an 8% decrease in revenue compared to the previous month. This was followed by a smaller decline of 3% in October 2024. November 2024 saw a slight increase of 1%, while December 2024 experienced a significant rise of 42%. However, in January 2025, there was a notable decrease of 19% in revenue compared to December 2024." \}, \{"id": "B7CA92F04B9FAE8D941C3E9B7E0CD754:065B007500614D158B41B0D020C96966:5720DC60EBB648FFAFCDE05A7363395B", "question": "what was the revenue in euros for branch a013 in december 2024?", "text": "The revenue in euros for branch A013 in December 2024 was €4,519,521." \}] |
:::note
-Get the history questions by `GET /api/questions?botId={botId}`.
+Get the history questions by `GET /api/questions?botId={agentId}`.
:::
```json
@@ -118,7 +118,7 @@ Sample Response:
| 202 | Successfully accepted the question |
| 400 | Error in accepting the question |
| 401 | Authorization failed |
-| 404 | No bot found |
+| 404 | No agent found |
Sample Response Body on success:
diff --git a/docs/common-workflows/analytics/auto-bot-api/post-suggestion.md b/docs/common-workflows/analytics/auto-bot-api/post-suggestion.md
index c43fc2df..b4a88b73 100644
--- a/docs/common-workflows/analytics/auto-bot-api/post-suggestion.md
+++ b/docs/common-workflows/analytics/auto-bot-api/post-suggestion.md
@@ -1,12 +1,12 @@
---
-sidebar_label: Get suggested questions from a specific bot
-title: Get suggested questions from a specific bot
-description: This workflow sample demonstrates how to get suggested questions from a specific bot.
+sidebar_label: Get suggested questions from the agent
+title: Get suggested questions from the agent
+description: This workflow sample demonstrates how to get suggested questions from the agent.
---
-
+
-This workflow sample demonstrates how to get suggested questions from a specific bot.
+This workflow sample demonstrates how to get suggested questions from the agent.
:::info
@@ -14,7 +14,7 @@ Obtain the authorization token needed to execute the request using [POST /api/au
:::
-## Ask suggested questions with bot routing
+## Ask suggested questions from the agent
Endpoint: [POST /api/questions/suggestions](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Next-Gen%20AI/createSuggestions_1)
@@ -30,12 +30,12 @@ Sample Request Body:
| Field | Required | Description | Sample Value |
| ------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| count | Yes | The count of suggestions you want to get, Supports up to 5. | 5 |
-| bots | Yes | The bot to which the question is directed. Only one bot is supported. | [\{"id": "065B007500614D158B41B0D020C96966", "projectId": "B7CA92F04B9FAE8D941C3E9B7E0CD754"\}] |
+| bots | No | The agent to which the question is directed. Only one agent is supported. If not specified, will pick a random agent. | [\{"id": "065B007500614D158B41B0D020C96966", "projectId": "B7CA92F04B9FAE8D941C3E9B7E0CD754"\}] |
| history | No | Optional. Previous questions and answers. Supports up to 5 entries. | [\{"id": "B7CA92F04B9FAE8D941C3E9B7E0CD754:065B007500614D158B41B0D020C96966:E41CC2178F6042BCAAD72E322E802A90", "question": "show the monthly percentage development of the revenue in euros compared to the previous month for branch a013.. today's date is 04-march-2025. make sure to do correct datetime based calculation.", "text": "The monthly percentage development of revenue in euros for branch A013 shows fluctuations over the observed period. Starting in September 2024, there was an 8% decrease in revenue compared to the previous month. This was followed by a smaller decline of 3% in October 2024. November 2024 saw a slight increase of 1%, while December 2024 experienced a significant rise of 42%. However, in January 2025, there was a notable decrease of 19% in revenue compared to December 2024." \}, \{"id": "B7CA92F04B9FAE8D941C3E9B7E0CD754:065B007500614D158B41B0D020C96966:5720DC60EBB648FFAFCDE05A7363395B", "question": "what was the revenue in euros for branch a013 in december 2024?", "text": "The revenue in euros for branch A013 in December 2024 was €4,519,521." \}] |
| route | No | Route information for the answer to the last question. Retrieve it from the `route` field in the response of GET /api/questions/\{questionId\}. | sql |
:::note
-Get the history questions by `GET /api/questions?botId={botId}`.
+Get the history questions by `GET /api/questions?botId={agentId}`.
:::
```json
@@ -91,7 +91,7 @@ Sample Response:
| 200 | Successfully returned the suggested questions |
| 400 | Error in generating the suggested questions |
| 401 | Authorization failed |
-| 404 | No bot or bot instance found |
+| 404 | No agent found |
Sample Response Body on Success:
diff --git a/docs/common-workflows/analytics/question-with-bot-routing-api/ask-question-to-bots-in-the-application.md b/docs/common-workflows/analytics/question-with-bot-routing-api/ask-question-to-bots-in-the-application.md
deleted file mode 100644
index 7d4fe4f6..00000000
--- a/docs/common-workflows/analytics/question-with-bot-routing-api/ask-question-to-bots-in-the-application.md
+++ /dev/null
@@ -1,109 +0,0 @@
----
-sidebar_label: Ask a question with bot routing
-title: Ask a question with bot routing
-description: This workflow sample demonstrates how to ask a question with bot routing.
----
-
-
-
-Use this API to identify the most suitable bot to answer your question based on the application, content group, and specific bots.
-
-:::info
-
-Obtain the authorization token needed to execute the request using [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
-
-:::
-
-## Ask a question with bot routing
-
-Endpoint: [POST /api/questions](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Next-Gen%20AI/createQuestion)
-
-Sample Request Headers:
-
-| Header | Required | Description | Sample Value |
-| ---------------- | -------- | ----------------------------------------------- | -------------------------- |
-| X-MSTR-AuthToken | Yes | Authorization Token | t40ltbk411923ipk85r8r0tace |
-| Prefer | Yes | The response mode, which must be respond-async. | respond-async |
-| Content-Type | Yes | Type of content being sent | application/json |
-
-Sample Request Query Strings:
-
-| Query String | Required | Description | Sample Value |
-| --------------- | -------- | ------------------------------------------------------ | ----------------------------------------------------------------- |
-| applicationId | No | Application ID. If not specified, the default is used. | CDC07694B5F844EC0DA0073EAD71928E |
-| botIds | No | Bot IDs, split by commas | FF50752ED8CA586C641492F29DF4D6E7,075D0CD44EEB6B82B3B9EF03F6ED705B |
-| contentGroupIds | No | Content Group IDs, split by commas | 820E261D28705ED6494D200D98457626,0791486376B37445DEB502AF6951072B |
-| useHistory | No | Use history or start a new chat | false |
-
-Sample Request Body:
-
-| Field | Required | Description | Sample Value |
-| -------------- | -------- | ----------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
-| text | Yes | The question text | Which customer has the highest revenue? |
-| answers.images | No | Optional. If not specified, the image is not generated. Supports one image. | [\{"width": 200, "height": 300\}] |
-| quotes | No | Optional. The content of the question quote. The type of quotes can be message or answer. | [\{"text":"There are 10000 distinct customers identified based on the purchasing behavior.", "type":"message"\}] |
-
-```json
-{
- "text": "Which customer has the highest revenue?",
- "answers.images": [
- {
- "width": 720,
- "height": 405
- }
- ],
- "quotes": [
- {
- "id": "24EBB7209BA649B0BACF8DC4A12037E3",
- "question": "How many distinct customers are identified based on the purchasing behavior?",
- "text": "There are 10000 distinct customers identified based on the purchasing behavior.",
- "type": "answer"
- }
- ]
-}
-```
-
-Sample Curl:
-
-```bash
-curl 'https://demo.microstrategy.com/MicroStrategyLibrary/api/questions' \
--X 'POST' \
---header 'X-MSTR-AuthToken: t40ltbk411923ipk85r8r0tace' \
---header 'X-MSTR-ProjectID: FCC1924411EAABC39C6C0080EFA54501' \
---header 'Prefer: respond-async' \
---header 'Content-Type: application/json' \
---data '{
- "text": "Which customer has the highest revenue?",
- "answers.images": [
- {
- "width": 720,
- "height": 405
- }
- ],
- "quotes": [
- {
- "id": "24EBB7209BA649B0BACF8DC4A12037E3",
- "question": "How many distinct customers are identified based on the purchasing behavior?",
- "text": "There are 10000 distinct customers identified based on the purchasing behavior.",
- "type": "answer"
- }
- ]
-}'
-```
-
-Sample Response:
-
-| Response Code | Status |
-| ------------- | ---------------------------------- |
-| 202 | Successfully accepted the question |
-| 400 | Error in accepting the question |
-| 401 | Authorization failed |
-| 404 | No bot found |
-
-Sample Response Body on success:
-
-```json
-{
- "id": "9161386651E84054A6230796C84E12C5:68696ADB633946B4B430ABD959433B3B:FCC1C28296014AB19ABD877E60590890"
-}
-```
diff --git a/docs/common-workflows/analytics/question-with-bot-routing-api/ask-suggested-question-to-bots-in-the-application.md b/docs/common-workflows/analytics/question-with-bot-routing-api/ask-suggested-question-to-bots-in-the-application.md
deleted file mode 100644
index c9eb7659..00000000
--- a/docs/common-workflows/analytics/question-with-bot-routing-api/ask-suggested-question-to-bots-in-the-application.md
+++ /dev/null
@@ -1,106 +0,0 @@
----
-sidebar_label: Ask suggested questions with bot routing
-title: Ask suggested questions with bot routing
-description: This workflow sample demonstrates how to ask suggested questions with bot routing.
----
-
-
-
-This workflow sample demonstrates how to ask suggested questions with bot routing.
-
-:::info
-
-Obtain the authorization token needed to execute the request using [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
-
-:::
-
-## Ask suggested questions with bot routing
-
-Endpoint: [POST /api/questions/suggestions](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Question%20Suggestions/createSuggestions_1)
-
-Sample Request Header:
-
-| Header Name | Required | Description |
-| ---------------- | -------- | -------------------------------------------------------- |
-| X-MSTR-AuthToken | Yes | Authorization token obtained from `POST /api/auth/login` |
-| Content-Type | Yes | The body request type, which must be `application/json` |
-
-Sample Request Query String:
-
-| Query Parameter | Required | Description |
-| --------------- | -------- | ------------------------------------------------------ |
-| applicationId | No | Application ID. If not specified, the default is used. |
-| botIds | No | Bots IDs, split by commas (`,`) |
-| contentGroupIds | No | Content Group IDs, split by commas (`,`) |
-| useHistory | No | Use history or start a new chat |
-
-Sample Request Body:
-
-```json
-{
- "count": 5 // Number of suggested questions to return (1 to 5)
-}
-```
-
-Sample Curl:
-
-```bash
-curl 'https://demo.microstrategy.com/MicroStrategyLibrary/api/questions/suggestions' \
--X 'POST' \
---header 'X-MSTR-AuthToken: t40ltbk411923ipk85r8r0tace' \
---header 'X-MSTR-ProjectID: FCC1924411EAABC39C6C0080EFA54501' \
---header 'Content-Type: application/json' \
---data '{
- "count": 5
-}' \
---get \
---data-urlencode 'applicationId=CDC07694B5F844EC0DA0073EAD71928E' \
---data-urlencode 'botIds=FF50752ED8CA586C641492F29DF4D6E7,075D0CD44EEB6B82B3B9EF03F6ED705B' \
---data-urlencode 'contentGroupIds=820E261D28705ED6494D200D98457626,0791486376B37445DEB502AF6951072B' \
---data-urlencode 'useHistory=false'
-```
-
-Sample Response:
-
-| Response Code | Status |
-| ------------- | --------------------------------------------- |
-| 200 | Successfully returned the suggested questions |
-| 400 | Error in generating the suggested questions |
-| 401 | Authorization failed |
-| 404 | No bot or bot instance found |
-
-Sample Response Body on Success:
-
-```json
-{
- "suggestions": [
- {
- "bot": {
- "id": "05C0E560558D4EBF83E60875EA2D2A15"
- },
- "project": {
- "id": "F821C717E9E843728867BF79DE441DC3"
- },
- "text": "Which income bracket contributes to most revenue?"
- },
- {
- "bot": {
- "id": "05C0E560558D4EBF83E60875EA2D2A15"
- },
- "project": {
- "id": "F821C717E9E843728867BF79DE441DC3"
- },
- "text": "Show me the elements of Customer Age."
- },
- {
- "bot": {
- "id": "05C0E560558D4EBF83E60875EA2D2A15"
- },
- "project": {
- "id": "F821C717E9E843728867BF79DE441DC3"
- },
- "text": "What is the total USS_Revenue for each month?"
- }
- ]
-}
-```
diff --git a/docs/common-workflows/analytics/question-with-bot-routing-api/get-image-of-answer.md b/docs/common-workflows/analytics/question-with-bot-routing-api/get-image-of-answer.md
deleted file mode 100644
index 3b5b3997..00000000
--- a/docs/common-workflows/analytics/question-with-bot-routing-api/get-image-of-answer.md
+++ /dev/null
@@ -1,41 +0,0 @@
----
-sidebar_label: Get an image of an answer related to a question with bot routing
-title: Get an image of an answer related to a question with bot routing
-description: This workflow sample demonstrates how to get an image of an answer related to a question with bot routing.
----
-
-
-
-This workflow sample demonstrates how to get an image of an answer related to a question with bot routing.
-
-:::info
-
-Obtain the authorization token needed to execute the request using [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
-
-:::
-
-## Get an image of an answer related to a question with bot routing
-
-Endpoint: [GET /api/questions/\{questionsId}/answers/images/\{imageId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Auto%20Bots%20/getMessageImage)
-
-:::note
-Replace `{questionsId}` in `GET /api/questions/{questionsId}/answers/images/{imageId}` with the question ID from `POST /api/questions` and `{imageId}` with your image ID from `GET /api/questions/{questionId}`.
-:::
-
-Sample Curl:
-
-```bash
-curl 'https://demo.microstrategy.com/MicroStrategyLibrary/api/questions/862D61DE2EDD4937B31139B7F574E8EE/answers/images/32A0F79BB4374D4792253B38C1177A6D' \
--H 'accept: image/png' \
--H 'X-MSTR-AuthToken: t40ltbk411923ipk85r8r0tace' \
-```
-
-Sample Response:
-
-| Response Code | Status |
-| ------------- | ------------------------------- |
-| 200 | Successfully returned the image |
-| 400 | Error in getting the image |
-| 401 | Authorization failed |
-| 403 | Forbidden |
-| 404 | Image not found |
diff --git a/docs/common-workflows/analytics/question-with-bot-routing-api/get-question-from-bots-in-the-application.md b/docs/common-workflows/analytics/question-with-bot-routing-api/get-question-from-bots-in-the-application.md
deleted file mode 100644
index 56fda8e7..00000000
--- a/docs/common-workflows/analytics/question-with-bot-routing-api/get-question-from-bots-in-the-application.md
+++ /dev/null
@@ -1,144 +0,0 @@
----
-sidebar_label: Get a question with bot routing
-title: Get a question with bot routing
-description: This workflow sample demonstrates how to get a question with bot routing.
----
-
-
-
-This workflow sample demonstrates how to get a question with bot routing.
-
-:::info
-
-Obtain the authorization token needed to execute the request using [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
-
-:::
-
-## Get a question with bot routing
-
-Endpoint: [GET /api/questions/\{questionId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Next-Gen%20AI/queryMessage_1)
-
-:::note
-Replace `{questionId}` in `GET /api/questions/{questionId}` with your question ID from `POST /api/questions`.
-:::
-
-Sample Request Body:
-No request body.
-
-Sample Curl:
-
-```bash
-curl 'https://demo.microstrategy.com/MicroStrategyLibrary/api/questions/9161386651E84054A6230796C84E12C5:68696ADB633946B4B430ABD959433B3B:FCC1C28296014AB19ABD877E60590890' \
--H 'accept: */*' \
--H 'X-MSTR-AuthToken: evvk84kcucn8abon6c1qfbud7' \
-```
-
-Sample Response Code:
-
-| Response Code | Status |
-| ------------- | ------------------------------------------------------------------------------ |
-| 200 | Successfully returned the question from the bot that has been answered |
-| 202 | Successfully returned the question from the bot which is still being processed |
-| 400 | Error in getting the question from the bot |
-| 401 | Authorization failed |
-| 404 | Question does not exist |
-
-## Response Body on Success
-
-The response is the question from the bot in the application.
-
-### Response when the question is still being processed
-
-If the response code is 202, indicating that the question is still being processed, continue calling this API to check the status of the question.
-
-If the question is being processed, the response is:
-
-```json
-{
- "id": "9161386651E84054A6230796C84E12C5:68696ADB633946B4B430ABD959433B3B:FCC1C28296014AB19ABD877E60590890",
- "text": "Analyze the distribution of cooking times for recipes",
- "answers": [],
- "creationDate": "2024-03-08T09:01:43.154+0000"
-}
-```
-
-If the answer is ready, but the image is not, the response is:
-
-```json
-{
- "id": "9161386651E84054A6230796C84E12C5:68696ADB633946B4B430ABD959433B3B:FCC1C28296014AB19ABD877E60590890",
- "text": "Analyze the distribution of cooking times for recipes",
- "answers": [
- {
- "bot": { "id": "68696ADB633946B4B430ABD959433B3B" },
- "text": "The distribution of cooking times for recipes is as follows:\n- The shortest cooking time is -1 minute.\n- The majority of recipes have cooking times ranging from 2 to 60 minutes.\n- There are a few recipes with longer cooking times, such as 75, 90, 120, and 720 minutes.\n- The exact distribution of cooking times can be seen in the visualization result.",
- "type": "visualization",
- "data": {
- "id": "23C84B94AA29486D9F503D1A4B2AC53B"
- }
- }
- ],
- "creationDate": "2024-03-08T09:01:43.154+0000"
-}
-```
-
-### Response when all data is ready
-
-If the status code is 200, indicating that the question has been answered, the response varies depending on the type of answer.
-
-Text answer:
-
-```json
-{
- "id": "9161386651E84054A6230796C84E12C5:68696ADB633946B4B430ABD959433B3B:FCC1C28296014AB19ABD877E60590890",
- "text": "Analyze the distribution of cooking times for recipes",
- "answers": [
- {
- "bot": { "id": "68696ADB633946B4B430ABD959433B3B" },
- "text": "The distribution of cooking times for recipes is as follows:\n- The shortest cooking time is -1 minute.\n- The majority of recipes have cooking times ranging from 2 to 60 minutes.\n- There are a few recipes with longer cooking times, such as 75, 90, 120, and 720 minutes.\n- The exact distribution of cooking times can be seen in the visualization result.",
- "type": "text"
- }
- ],
- "creationDate": "2024-03-08T09:01:43.154+0000"
-}
-```
-
-Markdown answer:
-
-```json
-{
- "id": "9161386651E84054A6230796C84E12C5:68696ADB633946B4B430ABD959433B3B:FCC1C28296014AB19ABD877E60590890",
- "text": "Analyze the distribution of cooking times for recipes",
- "answers": [
- {
- "bot": { "id": "68696ADB633946B4B430ABD959433B3B" },
- "text": "#Title 1\nThe distribution of cooking times for recipes is as follows:\n- The shortest cooking time is -1 minute.\n- The majority of recipes have cooking times ranging from 2 to 60 minutes.\n- There are a few recipes with longer cooking times, such as 75, 90, 120, and 720 minutes.\n- The exact distribution of cooking times can be seen in the visualization result.",
- "type": "markdown"
- }
- ],
- "creationDate": "2024-03-08T09:01:43.154+0000"
-}
-```
-
-Answer with visualization:
-
-```json
-{
- "id": "9161386651E84054A6230796C84E12C5:68696ADB633946B4B430ABD959433B3B:FCC1C28296014AB19ABD877E60590890",
- "text": "Analyze the distribution of cooking times for recipes",
- "answers": [
- {
- "bot": { "id": "68696ADB633946B4B430ABD959433B3B" },
- "text": "The distribution of cooking times for recipes is as follows:\n- The shortest cooking time is -1 minute.\n- The majority of recipes have cooking times ranging from 2 to 60 minutes.\n- There are a few recipes with longer cooking times, such as 75, 90, 120, and 720 minutes.\n- The exact distribution of cooking times can be seen in the visualization result.",
- "type": "visualization",
- "data": {
- "id": "23C84B94AA29486D9F503D1A4B2AC53B"
- },
- "images": [{ "id": "79FD176AEAD9446395B083B5931E9EC7", "width": 800, "height": 600 }]
- }
- ],
- "creationDate": "Date string"
-}
-```
-
-To obtain the image for this type of answer, make a `GET` request to `api/questions/{questionId}/answers/images/{imageId}`. The image is only generated if the request asks for an image.
diff --git a/docs/common-workflows/analytics/question-with-bot-routing-api/question-api.md b/docs/common-workflows/analytics/question-with-bot-routing-api/question-api.md
deleted file mode 100644
index 1508c030..00000000
--- a/docs/common-workflows/analytics/question-with-bot-routing-api/question-api.md
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: Question with Bot Routing APIs
-description: This page contains a summary of REST APIs for the "questions" endpoint. You can use REST API requests to ask question with bot routing.
----
-
-
-
-With our newly added question with bot routing APIs, you can inquire all bots within the entire application without the need to manually identify the appropriate bot. The API automatically determines the most suitable bot to address your questions. Additionally, you have the option to specify the search scope using content groups and bot IDs for more accurate responses.
-
-The question with bot routing APIs enable bots to offer suggested questions, assisting you in discovering relevant queries and answers more efficiently. Additionally, we have enhanced the API to facilitate direct output of visualizations as PNG images, streamlining the process of viewing and interpreting visual data.
-
-- [Ask a question with bot routing](./ask-question-to-bots-in-the-application.md)
-- [Get a question with bot routing](./get-question-from-bots-in-the-application.md)
-- [Get image of an answer related to a question with bot routing](./get-image-of-answer.md)
-- [Ask for suggested questions with bot routing](./ask-suggested-question-to-bots-in-the-application.md)
diff --git a/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-question.md b/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-question.md
index b8520f97..d80a6d75 100644
--- a/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-question.md
+++ b/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-question.md
@@ -4,17 +4,13 @@ title: Ask the bot instance a question
description: This workflow sample demonstrates how to ask the bot instance a question.
---
-
+
:::caution
-This API is planned for future retirement. Therefore, Strategy recommends that you transition to the [Ask Question to Bots in the Application API](../question-with-bot-routing-api/ask-question-to-bots-in-the-application) for bot-related workflows.
+The API has been **deprecated** and will be completely unavailable in the near future.
-Using Ask Question to Bots in the Application API:
-
-- Bot instances are managed automatically, eliminating the need for manual instance management.
-- The API automatically selects the most appropriate bot to answer a question, or you can specify a specific bot by including its ID in the query parameters.
-- It offers ongoing support and updates, ensuring compatibility with new bot-related features.
+This deprecation is due to the introduction of our new **Auto Agent** technology, which replaces the legacy Auto Bot system. Legacy Auto Bot support will be gradually discontinued after **Strategy One (September 2025)**.
:::
diff --git a/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-suggested-question.md b/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-suggested-question.md
index 0f5118f2..6ff652ba 100644
--- a/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-suggested-question.md
+++ b/docs/common-workflows/analytics/use-bot-api/ask-bot-instance-suggested-question.md
@@ -4,17 +4,13 @@ title: Ask a bot instance for suggested questions
description: This workflow sample demonstrates how to ask a bot instance for suggested questions
---
-
+
:::caution
-This API is planned for future retirement. Therefore, Strategy recommends that you transition to the [Ask Suggested Question to Bots in the Application API](../question-with-bot-routing-api/ask-suggested-question-to-bots-in-the-application.md) for retrieving suggested questions from bots.
+The API has been **deprecated** and will be completely unavailable in the near future.
-Using Ask Suggested Question to Bots in the Application API:
-
-- You do not need to manually create or manage bot instances. The API automatically creates and manages bot instances.
-- The API automatically selects the most appropriate bot based on your previous questions to suggest relevant questions.
-- You can use query parameters to specify a bot to receive suggested questions.
+The API is deprecated due to the introduction of Strategy's new **Auto Agent** technology, which replaces the legacy Auto Bot system. Legacy Auto Bot support will be gradually discontinued after **Strategy One (September 2025)**.
:::
diff --git a/docs/common-workflows/analytics/use-bot-api/create-a-bot-instance.md b/docs/common-workflows/analytics/use-bot-api/create-a-bot-instance.md
index 952ca77e..89eed177 100644
--- a/docs/common-workflows/analytics/use-bot-api/create-a-bot-instance.md
+++ b/docs/common-workflows/analytics/use-bot-api/create-a-bot-instance.md
@@ -4,17 +4,13 @@ title: Create a bot instance
description: This workflow sample demonstrates how to create a bot instance
---
-
+
:::caution
-This API is planned for future retirement. Therefore, Strategy recommends that you transition to the [Question with Bot Routing API](../question-with-bot-routing-api/question-api.md) for bot-related workflows.
+The API has been **deprecated** and will be completely unavailable in the near future.
-Using the Question with Bot Routing API:
-
-- You do not need to manually create or manage bot instances. The API automatically creates and manages bot instances.
-- It offers ongoing support and updates, ensuring compatibility with new bot-related features.
-- It provides enhanced functionality, such as intelligent bot selection and flexible bot routing.
+The API is deprecated due to the introduction of Strategy's new **Auto Agent** technology, which replaces the legacy Auto Bot system. Legacy Auto Bot support will be gradually discontinued after **Strategy One (September 2025)**.
:::
diff --git a/docs/common-workflows/analytics/use-bot-api/delete-a-bot-instance.md b/docs/common-workflows/analytics/use-bot-api/delete-a-bot-instance.md
index 0b754ebd..4eff7d8f 100644
--- a/docs/common-workflows/analytics/use-bot-api/delete-a-bot-instance.md
+++ b/docs/common-workflows/analytics/use-bot-api/delete-a-bot-instance.md
@@ -4,17 +4,13 @@ title: Delete a bot instance
description: This workflow sample demonstrates how to delete a bot instance
---
-
+
:::caution
-This API is planned for future retirement. Therefore, Strategy recommends that you transition to the [Question with Bot Routing API](../question-with-bot-routing-api/question-api.md) for bot-related workflows.
+The API has been **deprecated** and will be completely unavailable in the near future.
-Using the Question with Bot Routing API:
-
-- You do not need to manually create or manage bot instances. The API automatically creates and manages bot instances.
-- It offers ongoing support and updates, ensuring compatibility with new bot-related features.
-- It provides enhanced functionality, such as intelligent bot selection and flexible bot routing.
+The API is deprecated due to the introduction of Strategy's new **Auto Agent** technology, which replaces the legacy Auto Bot system. Legacy Auto Bot support will be gradually discontinued after **Strategy One (September 2025)**.
:::
@@ -22,10 +18,6 @@ This workflow sample demonstrates how to create a bot instance.
:::info
-This workflow sample demonstrates how to delete a bot instance.
-
-:::info
-
Obtain the authorization token needed to execute the request using [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
:::
diff --git a/docs/common-workflows/analytics/use-bot-api/get-a-bot-question.md b/docs/common-workflows/analytics/use-bot-api/get-a-bot-question.md
index 52d3a1d2..7e375cd3 100644
--- a/docs/common-workflows/analytics/use-bot-api/get-a-bot-question.md
+++ b/docs/common-workflows/analytics/use-bot-api/get-a-bot-question.md
@@ -6,14 +6,6 @@ description: This workflow sample demonstrates how to get a chat bot's question.
-:::caution
-
-This API is planned for future retirement. Therefore, Strategy recommends that you transition to the [Get Question from Bots in the Application API](../question-with-bot-routing-api/get-question-from-bots-in-the-application.md) for retrieving bot responses.
-
-The Get Question from Bots in the Application API can be used in combination with the [Ask Question to Bots in the Application API](../question-with-bot-routing-api/ask-question-to-bots-in-the-application.md) to ask questions and retrieve answers from bots. This streamlined workflow removes manual bot instance management and provides flexible bot routing.
-
-:::
-
This workflow sample demonstrates how to get a chat bot's question.
:::info
diff --git a/docs/common-workflows/analytics/use-bot-api/use-bot-api.md b/docs/common-workflows/analytics/use-bot-api/use-bot-api.md
index 37929e1c..7955c68a 100644
--- a/docs/common-workflows/analytics/use-bot-api/use-bot-api.md
+++ b/docs/common-workflows/analytics/use-bot-api/use-bot-api.md
@@ -6,20 +6,14 @@ description: This page contains a summary of REST APIs for the "bots" endpoint.
:::caution
-
-The following Bot APIs are planned for future retirement. Therefore, Strategy recommends that you use the [Question with Bot Routing APIs](../question-with-bot-routing-api/question-api.md) instead:
+The following Bot APIs have been **deprecated** and will be completely unavailable in the near future.
- [Create a bot instance.](./create-a-bot-instance.md)
- [Ask for suggested questions](./ask-bot-instance-suggested-question.md)
- [Ask a bot question](./ask-bot-instance-question.md)
-- [Get a bot question](./get-a-bot-question.md)
- [Delete a bot instance](./delete-a-bot-instance.md)
-Reason:
-
-- **Easy to use**: The [Question with Bot Routing APIs](../question-with-bot-routing-api/question-api.md) automatically manage bot instances, eliminating the need for users to manually create and manage bot instances through separate API calls.
-- **More powerful**: The [Question with Bot Routing APIs](../question-with-bot-routing-api/question-api.md) provide intelligent bot routing by automatically selecting the most appropriate bot to handle a question. If you need to ask a specific bot, you can specify the bot ID as a query parameter. For more details, see [Ask a Question to Bots in the Application](../question-with-bot-routing-api/ask-question-to-bots-in-the-application.md).
-- **Ongoing support and updates**: The [Question with Bot Routing APIs](../question-with-bot-routing-api/question-api.md) will continue to receive updates and support for future bot-related features. In contrast, the Bot APIs will not receive updates or new features and may eventually lead to exceptions as maintenance ends.
+The API is deprecated due to the introduction of Strategy's new **Auto Agent** technology, which replaces the legacy Auto Bot system. Legacy Auto Bot support will be gradually discontinued after **Strategy One (September 2025)**.
:::
diff --git a/docs/common-workflows/common-workflows.md b/docs/common-workflows/common-workflows.md
index aafa4547..9f35fbf8 100644
--- a/docs/common-workflows/common-workflows.md
+++ b/docs/common-workflows/common-workflows.md
@@ -15,8 +15,9 @@ The first step in a typical Strategy REST API workflow is authenticating the use
REST API request sequences with descriptions and code samples have been provided for the following common Strategy REST API workflows.
-Our workflows are arranged in 3 sections:
+Our workflows are arranged in 4 sections:
- [Analytics](analytics/analytics.md) - used for handling data and objects such as reports, datasets, documents, dashboards, and projects.
- [Modeling](modeling/modeling.md) - used for handling schema and application objects.
- [Administration](administration/administration.md) - used for handling administration related workflows.
+- [Mosaic](mosaic/mosaic.md) - used for handling Mosaic data model related workflows.
diff --git a/docs/common-workflows/mosaic/manage-data-model-attribute-objects/manage-data-model-attribute-objects.md b/docs/common-workflows/mosaic/manage-data-model-attributes/manage-data-model-attributes.md
similarity index 53%
rename from docs/common-workflows/mosaic/manage-data-model-attribute-objects/manage-data-model-attribute-objects.md
rename to docs/common-workflows/mosaic/manage-data-model-attributes/manage-data-model-attributes.md
index a61159fa..93ade52f 100644
--- a/docs/common-workflows/mosaic/manage-data-model-attribute-objects/manage-data-model-attribute-objects.md
+++ b/docs/common-workflows/mosaic/manage-data-model-attributes/manage-data-model-attributes.md
@@ -1,6 +1,6 @@
---
title: Manage data model attribute objects
-description: You can use REST API requests to retrieve an attribute's elements in data model.
+description: You can use REST API requests to retrieve an attribute's elements in a data model.
---
@@ -13,8 +13,12 @@ Learn more about Strategy REST API Playground [here](/docs/getting-started/playg
:::
-You can use REST API requests to retrieve an attribute's elements in data model:
+You can use REST API requests to retrieve an attribute's elements in a data model:
-- [Retrieve an Attribute's Elements in Data Model](retrieve-an-attributes-elements-in-data-model.md)
+- [Retrieve an Attribute's Elements in a Data Model](retrieve-an-attributes-elements-in-data-model.md)
+- [Retrieve Data Model Attributes](retrieve-data-model-attributes.md)
+- [Retrieve an Attribute's Relationships in a Data Model](retrieve-an-attributes-relationships-in-data-model.md)
+- [Retrieve Smart Attributes for an attribute in a Data Model](retrieve-smart-attributes-for-an-attribute-in-data-model.md)
+- [Retrieve Smart Attribute Templates for an attribute in a Data Model](retrieve-smart-attribute-templates-for-an-attribute-in-data-model.md)
For more information about the Modeling service, see [Configuring the Modeling Service](https://www2.microstrategy.com/producthelp/Current/InstallConfig/en-us/Content/modeling_service.htm).
diff --git a/docs/common-workflows/mosaic/manage-data-model-attribute-objects/retrieve-an-attributes-elements-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-elements-in-data-model.md
similarity index 97%
rename from docs/common-workflows/mosaic/manage-data-model-attribute-objects/retrieve-an-attributes-elements-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-elements-in-data-model.md
index 6eceaa65..1ecb72ef 100644
--- a/docs/common-workflows/mosaic/manage-data-model-attribute-objects/retrieve-an-attributes-elements-in-data-model.md
+++ b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-elements-in-data-model.md
@@ -1,5 +1,5 @@
---
-title: Retrieve an attribute's elements in data model
+title: Retrieve an attribute's elements in a data model
sidebar_label: Retrieve an attribute's elements in data model
description: This workflow sample demonstrates how to retrieve an attribute's elements in data model.
---
diff --git a/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-relationships-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-relationships-in-data-model.md
new file mode 100644
index 00000000..592c6361
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-relationships-in-data-model.md
@@ -0,0 +1,127 @@
+---
+title: Retrieve an attribute's relationships in a data model
+description: This workflow demonstrates how to retrieve an attribute's relationships in a data model using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve an attribute's relationship in a data model with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+You can retrieve an attribute's relationships in a data model using the following endpoint: [GET /api/model/dataModels/\{dataModelId}/attributes/\{attributeId}/relationships](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelAttributeRelationships)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/attributes/EE709099BFB74E3A879A1F5B5ABBB037/relationships' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/attributes/EE709099BFB74E3A879A1F5B5ABBB037/relationships' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response Body:
+
+```json
+{
+ "relationships": [
+ {
+ "parent": {
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year"
+ },
+ "child": {
+ "objectId": "10DF161DF9C74FAEBA32795E7EE40E36",
+ "subType": "attribute",
+ "name": "Year Date"
+ },
+ "relationshipTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ },
+ "relationshipType": "one_to_many"
+ },
+ {
+ "parent": {
+ "objectId": "ACAB111A1C5E46539D672CA380729B90",
+ "subType": "attribute",
+ "name": "Previous Year"
+ },
+ "child": {
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year"
+ },
+ "relationshipTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ },
+ "relationshipType": "one_to_many"
+ },
+ {
+ "parent": {
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year"
+ },
+ "child": {
+ "objectId": "F0A2CB8C9DA44CFAAC3F2BD4A0D0DBDD",
+ "subType": "attribute",
+ "name": "Last Year Quarter"
+ },
+ "relationshipTable": {
+ "objectId": "2249F3085D67417E904FBF789EBAFDC8",
+ "subType": "logical_table",
+ "name": "lu_quarter"
+ },
+ "relationshipType": "one_to_many"
+ }
+ ]
+}
+```
+
+Response Code: 200 (The attribute's relationships are returned successfully.)
diff --git a/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-data-model-attributes.md b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-data-model-attributes.md
new file mode 100644
index 00000000..269099c5
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-data-model-attributes.md
@@ -0,0 +1,314 @@
+---
+title: Retrieve data model attributes
+description: This workflow demonstrates how to retrieve data model attributes using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve one or more data model attributes using the REST API with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+- [Retrieve a data model attribute](#retrieve-a-data-model-attribute)
+- [Retrieve data model attributes](#retrieve-data-model-attributes)
+
+A detailed description of each step of this workflow is listed below.
+
+## Retrieve a data model attribute
+
+You can retrieve an attribute definition in a data model using the following endpoint: [GET /api/model/dataModels/\{dataModelId}/attributes/\{attributeId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelAttribute)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/attributes/EE709099BFB74E3A879A1F5B5ABBB037' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/attributes/EE709099BFB74E3A879A1F5B5ABBB037' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response Body:
+
+```json
+{
+ "information": {
+ "dateCreated": "2025-08-27T08:45:26.816Z",
+ "dateModified": "2025-08-27T08:45:26.816Z",
+ "versionId": "1538F211514F0DAA243EA09477A0BF3F",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year",
+ "description": "Unique identifier for each year, used for data tracking and analysis.",
+ "destinationFolderId": "73F519E9FCA5413586F3F8C706E1F2EA"
+ },
+ "forms": [
+ {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID",
+ "description": "Unique identifier for each year, used for data tracking and analysis.",
+ "category": "ID",
+ "type": "system",
+ "displayFormat": "number",
+ "dataType": {
+ "type": "integer",
+ "precision": 2,
+ "scale": 0
+ },
+ "expressions": [
+ {
+ "expressionId": "AD0EE30238364DD1AF66ABE703CBD60D",
+ "expression": {
+ "text": "year_id"
+ },
+ "tables": [
+ {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ }
+ ]
+ },
+ {
+ "expressionId": "195B57DCC4544C92BE9AEF6063D09FE3",
+ "expression": {
+ "text": "year_id"
+ },
+ "tables": [
+ {
+ "objectId": "2249F3085D67417E904FBF789EBAFDC8",
+ "subType": "logical_table",
+ "name": "lu_quarter"
+ }
+ ]
+ }
+ ],
+ "alias": "year_id",
+ "lookupTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ }
+ }
+ ],
+ "attributeLookupTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ },
+ "keyForm": {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID"
+ },
+ "displays": {
+ "reportDisplays": [
+ {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID"
+ }
+ ],
+ "browseDisplays": [
+ {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID"
+ }
+ ]
+ },
+ "sorts": {},
+ "relationships": [],
+ "nonAggregatable": false,
+ "autoDetectLookupTable": true
+}
+```
+
+Response Code: 200 (The attribute's definition is returned successfully.)
+
+## Retrieve data model attributes
+
+You can also retrieve data model attributes. Parameters include pagination options such as `limit` and `offset`.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/attributes](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelAttributes)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/attributes' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/attributes' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response Body:
+
+```json
+{
+ "offset": 0,
+ "limit": -1,
+ "total": 1,
+ "attributes": [
+ {
+ "information": {
+ "dateCreated": "2025-08-27T08:45:26.816Z",
+ "dateModified": "2025-08-27T08:45:26.816Z",
+ "versionId": "1538F211514F0DAA243EA09477A0BF3F",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year",
+ "description": "Unique identifier for each year, used for data tracking and analysis.",
+ "destinationFolderId": "73F519E9FCA5413586F3F8C706E1F2EA"
+ },
+ "forms": [
+ {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID",
+ "description": "Unique identifier for each year, used for data tracking and analysis.",
+ "category": "ID",
+ "type": "system",
+ "displayFormat": "number",
+ "dataType": {
+ "type": "integer",
+ "precision": 2,
+ "scale": 0
+ },
+ "expressions": [
+ {
+ "expressionId": "AD0EE30238364DD1AF66ABE703CBD60D",
+ "expression": {
+ "text": "year_id"
+ },
+ "tables": [
+ {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ }
+ ]
+ },
+ {
+ "expressionId": "195B57DCC4544C92BE9AEF6063D09FE3",
+ "expression": {
+ "text": "year_id"
+ },
+ "tables": [
+ {
+ "objectId": "2249F3085D67417E904FBF789EBAFDC8",
+ "subType": "logical_table",
+ "name": "lu_quarter"
+ }
+ ]
+ }
+ ],
+ "alias": "year_id",
+ "lookupTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ }
+ }
+ ],
+ "attributeLookupTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ },
+ "keyForm": {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID"
+ },
+ "displays": {
+ "reportDisplays": [
+ {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID"
+ }
+ ],
+ "browseDisplays": [
+ {
+ "id": "45C11FA478E745FEA08D781CEA190FE5",
+ "name": "Year ID"
+ }
+ ]
+ },
+ "sorts": {},
+ "relationships": [],
+ "nonAggregatable": false,
+ "autoDetectLookupTable": true
+ }
+ ]
+}
+```
+
+Response Code: 200 (All attributes in data model were returned successfully.)
diff --git a/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attribute-templates-for-an-attribute-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attribute-templates-for-an-attribute-in-data-model.md
new file mode 100644
index 00000000..42709b92
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attribute-templates-for-an-attribute-in-data-model.md
@@ -0,0 +1,148 @@
+---
+title: Retrieve smart attribute templates for an attribute in a data model
+sidebar_label: Retrieve smart attribute templates for an attribute in a data model
+description:
+ This workflow sample demonstrates how to retrieve smart attribute templates for an attribute in a data
+ model.
+---
+
+
+
+:::tip
+
+You can try these workflows with
+[REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+This workflow sample demonstrates how to retrieve smart attribute templates for an attribute in a data model.
+
+:::info
+
+Get the authorization token needed to execute the request with
+[POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from
+[GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+Retrieve the attribute's smart attribute templates using
+`GET /api/dataModels/{dataModelId}/attributes/{id}/smartAttributes/templates`.
+
+Sample Request Without Changeset
+
+- Request Header:
+
+```http
+"accept": "application/json"
+"X-MSTR-AuthToken": "4bb7n1dhjo860e7tlpchg57hl"
+"X-MSTR-ProjectID": "B7CA92F04B9FAE8D941C3E9B7E0CD754"
+```
+
+- Curl:
+
+```bash
+curl -X GET "https://demo.microstrategy.com/MicroStrategyLibrary/api/dataModels/7F071F619BE244C7B6CDC2626EBB1C6C/attributes/8D679D5111D3E4981000E787EC6DE8A4/smartAttributes/templates" -H "accept: application/json" -H "X-MSTR-AuthToken: 4bb7n1dhjo860e7tlpchg57hl" -H "X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754"
+```
+
+Sample Request With Changeset
+
+- Request Header:
+
+```http
+"accept": "application/json"
+"X-MSTR-AuthToken": "4bb7n1dhjo860e7tlpchg57hl"
+"X-MSTR-ProjectID": "B7CA92F04B9FAE8D941C3E9B7E0CD754"
+"X-MSTR-MS-Changeset": "C1DB31C15B9FBA8D942B4E0B7E0CD812"
+```
+
+- Curl:
+
+```bash
+curl -X GET "https://demo.microstrategy.com/MicroStrategyLibrary/api/dataModels/7F071F619BE244C7B6CDC2626EBB1C6C/attributes/8D679D5111D3E4981000E787EC6DE8A4/smartAttributes/templates" -H "accept: application/json" -H "X-MSTR-AuthToken: 4bb7n1dhjo860e7tlpchg57hl" -H "X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754" -H "X-MSTR-MS-Changeset: C1DB31C15B9FBA8D942B4E0B7E0CD812"
+```
+
+Sample Response Body:
+
+You can view the smart attribute templates for an attribute in the data model in the response body.
+
+```json
+{
+ "smartAttributeTemplates": [
+ {
+ "subType": "attribute_smart",
+ "name": "15 min interval",
+ "definition": {
+ "smartAttributeType": "15_min_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "subType": "attribute_smart",
+ "name": "30 min interval",
+ "definition": {
+ "smartAttributeType": "30_min_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "subType": "attribute_smart",
+ "name": "Hour interval",
+ "definition": {
+ "smartAttributeType": "hour_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "subType": "attribute_smart",
+ "name": "Day interval",
+ "definition": {
+ "smartAttributeType": "day_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "subType": "attribute_smart",
+ "name": "Month interval",
+ "definition": {
+ "smartAttributeType": "month_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "subType": "attribute_smart",
+ "name": "Quarter interval",
+ "definition": {
+ "smartAttributeType": "quarter_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "subType": "attribute_smart",
+ "name": "Year interval",
+ "definition": {
+ "smartAttributeType": "year_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ }
+ ]
+}
+```
+
+Response Code 200: (The attribute's smart attribute templates is returned successfully.)
diff --git a/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attributes-for-an-attribute-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attributes-for-an-attribute-in-data-model.md
new file mode 100644
index 00000000..af71c800
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attributes-for-an-attribute-in-data-model.md
@@ -0,0 +1,153 @@
+---
+title: Retrieve smart attributes for an attribute in a data model
+sidebar_label: Retrieve smart attributes for an attribute in a data model
+description: This workflow sample demonstrates how to retrieve smart attributes for an attribute in a data model.
+---
+
+
+
+:::tip
+
+You can try these workflows with
+[REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+This workflow sample demonstrates how to retrieve smart attributes for an attribute in a data model.
+
+:::info
+
+Get the authorization token needed to execute the request with
+[POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from
+[GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+Retrieve the attribute's smart attributes using
+`GET /api/dataModels/{dataModelId}/attributes/{id}/smartAttributes`.
+
+Sample Request Without Changeset
+
+- Request Header:
+
+```http
+"accept": "application/json"
+"X-MSTR-AuthToken": "4bb7n1dhjo860e7tlpchg57hl"
+"X-MSTR-ProjectID": "B7CA92F04B9FAE8D941C3E9B7E0CD754"
+```
+
+- Curl:
+
+```bash
+curl -X GET "https://demo.microstrategy.com/MicroStrategyLibrary/api/dataModels/7F071F619BE244C7B6CDC2626EBB1C6C/attributes/8D679D5111D3E4981000E787EC6DE8A4/smartAttributes" -H "accept: application/json" -H "X-MSTR-AuthToken: 4bb7n1dhjo860e7tlpchg57hl" -H "X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754"
+```
+
+Sample Request With Changeset
+
+- Request Header:
+
+```http
+"accept": "application/json"
+"X-MSTR-AuthToken": "4bb7n1dhjo860e7tlpchg57hl"
+"X-MSTR-ProjectID": "B7CA92F04B9FAE8D941C3E9B7E0CD754"
+"X-MSTR-MS-Changeset": "C1DB31C15B9FBA8D942B4E0B7E0CD812"
+```
+
+- Curl:
+
+```bash
+curl -X GET "https://demo.microstrategy.com/MicroStrategyLibrary/api/dataModels/7F071F619BE244C7B6CDC2626EBB1C6C/attributes/8D679D5111D3E4981000E787EC6DE8A4/smartAttributes/templates" -H "accept: application/json" -H "X-MSTR-AuthToken: 4bb7n1dhjo860e7tlpchg57hl" -H "X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754" -H "X-MSTR-MS-Changeset: C1DB31C15B9FBA8D942B4E0B7E0CD812"
+```
+
+Sample Response Body:
+
+You can view the smart attributes of an attribute in the data model in the response body.
+
+```json
+{
+ "smartAttributes": [
+ {
+ "objectId": "621D19985BB145F6A376CE9D3E657A21",
+ "subType": "attribute_smart",
+ "name": "Shipping Date (15 min interval)",
+ "definition": {
+ "smartAttributeType": "15_min_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "objectId": "DEE81CADF87E4734B7AA8D3B9EE3C4E5",
+ "subType": "attribute_smart",
+ "name": "Shipping Date (30 min interval)",
+ "definition": {
+ "smartAttributeType": "30_min_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "objectId": "DA21A19023E043668DC297983CC5DFF0",
+ "subType": "attribute_smart",
+ "name": "Shipping Date (Hour interval)",
+ "definition": {
+ "smartAttributeType": "hour_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "objectId": "687357641F5D446DAE058FA2060B84D7",
+ "subType": "attribute_smart",
+ "name": "Shipping Date (Day interval)",
+ "definition": {
+ "smartAttributeType": "day_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "objectId": "3032722E5B7F4F45B3504D8B2CEF66D4",
+ "subType": "attribute_smart",
+ "name": "Shipping Date (Month interval)",
+ "definition": {
+ "smartAttributeType": "month_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "objectId": "18336EF1CFB542CE9E46BC92817D102C",
+ "subType": "attribute_smart",
+ "name": "Shipping Date (Quarter interval)",
+ "definition": {
+ "smartAttributeType": "quarter_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ },
+ {
+ "objectId": "BC1BF75276C24297B8542020ED654776",
+ "subType": "attribute_smart",
+ "name": "Shipping Date (Year interval)",
+ "definition": {
+ "smartAttributeType": "year_interval",
+ "parameters": [],
+ "ascending": true
+ }
+ }
+ ]
+}
+```
+
+Response Code 200: (The attribute's smart attributes is returned successfully.)
diff --git a/docs/common-workflows/mosaic/manage-data-model-base-metrics/manage-data-model-base-metrics.md b/docs/common-workflows/mosaic/manage-data-model-base-metrics/manage-data-model-base-metrics.md
new file mode 100644
index 00000000..b1df0a89
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-base-metrics/manage-data-model-base-metrics.md
@@ -0,0 +1,18 @@
+---
+title: Manage data model base metrics
+description: You can use REST API requests to manage data model base metrics.
+---
+
+
+
+:::tip
+
+You can try these workflows with [REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+You can use REST API requests to manage data model base metrics.
+
+- [Retrieve Data Model Base Metrics](retrieve-data-model-base-metrics.md)
diff --git a/docs/common-workflows/mosaic/manage-data-model-base-metrics/retrieve-data-model-base-metrics.md b/docs/common-workflows/mosaic/manage-data-model-base-metrics/retrieve-data-model-base-metrics.md
new file mode 100644
index 00000000..62fb5f77
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-base-metrics/retrieve-data-model-base-metrics.md
@@ -0,0 +1,692 @@
+---
+title: Retrieve data model base metrics
+description: This workflow demonstrates how to retrieve data model base metrics using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve one or more data model base metrics using the REST API with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+- [Retrieve a data model base metric](#retrieve-a-data-model-base-metric)
+- [Retrieve data model base metrics](#retrieve-data-model-base-metrics)
+
+A detailed description of each step of this workflow is listed below.
+
+## Retrieve a data model base metric
+
+You can retrieve a base metric's definition in a data model using the following endpoint: [GET /api/model/dataModels/\{dataModelId}/factMetrics/\{factMetricId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelFactMetric)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/factMetrics/8545CACCC1DA4D8F9625718E92B777B6' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/factMetrics/8545CACCC1DA4D8F9625718E92B777B6' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response Body:
+
+```json
+{
+ "information": {
+ "dateCreated": "2025-08-27T08:45:26.816Z",
+ "dateModified": "2025-08-27T08:45:26.816Z",
+ "versionId": "1538F211514F0DAA243EA09477A0BF3F",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "8545CACCC1DA4D8F9625718E92B777B6",
+ "subType": "fact_metric",
+ "name": "Year Duration",
+ "description": "Number of days in the year, accounting for leap years.",
+ "destinationFolderId": "73F519E9FCA5413586F3F8C706E1F2EA"
+ },
+ "fact": {
+ "dataType": {
+ "type": "integer",
+ "precision": 2,
+ "scale": 0
+ },
+ "expressions": [
+ {
+ "expressionId": "7B373D46C174496B8E42B921C6BC29C0",
+ "expression": {
+ "text": "year_duration"
+ },
+ "tables": [
+ {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ }
+ ]
+ }
+ ],
+ "extensions": [],
+ "entryLevel": []
+ },
+ "function": "sum",
+ "functionProperties": [
+ {
+ "name": "UseLookupForAttributes",
+ "value": {
+ "type": "boolean",
+ "value": "false"
+ }
+ }
+ ],
+ "dimty": {
+ "dimtyUnits": [
+ {
+ "dimtyUnitType": "report_base_level",
+ "aggregation": "normal",
+ "filtering": "apply",
+ "groupBy": true
+ }
+ ],
+ "excludeAttribute": false,
+ "allowAddingUnit": true
+ },
+ "metricSubtotals": [
+ {
+ "definition": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "078C50834B484EE29948FA9DD5300ADF",
+ "subType": "system_subtotal",
+ "name": "Count"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B328C60462634223B2387D4ADABEEB53",
+ "subType": "system_subtotal",
+ "name": "Average"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "00B7BFFF967F42C4B71A4B53D90FB095",
+ "subType": "system_subtotal",
+ "name": "Minimum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B1F4AA7DE683441BA559AA6453C5113E",
+ "subType": "system_subtotal",
+ "name": "Maximum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "54E7BFD129514717A92BC44CF1FE5A32",
+ "subType": "system_subtotal",
+ "name": "Product"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "83A663067F7E43B2ABF67FD38ECDC7FE",
+ "subType": "system_subtotal",
+ "name": "Median"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "36226A4048A546139BE0AF5F24737BA8",
+ "subType": "system_subtotal",
+ "name": "Mode"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "7FBA414995194BBAB2CF1BB599209824",
+ "subType": "system_subtotal",
+ "name": "Standard Deviation"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "1769DBFCCF2D4392938E40418C6E065E",
+ "subType": "system_subtotal",
+ "name": "Variance"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "E1853D5A36C74F59A9F8DEFB3F9527A1",
+ "subType": "system_subtotal",
+ "name": "Geometric Mean"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "F225147A4CA0BB97368A5689D9675E73",
+ "subType": "system_subtotal",
+ "name": "Aggregation"
+ },
+ "implementation": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ }
+ ],
+ "format": {
+ "header": [],
+ "values": [
+ {
+ "type": "number_category",
+ "value": "0"
+ },
+ {
+ "type": "number_format",
+ "value": "###0"
+ },
+ {
+ "type": "number_currency_position",
+ "value": "0"
+ },
+ {
+ "type": "number_currency_symbol",
+ "value": ""
+ },
+ {
+ "type": "number_decimal_places",
+ "value": "0"
+ },
+ {
+ "type": "number_negative_numbers",
+ "value": "1"
+ },
+ {
+ "type": "number_thousand_separator",
+ "value": "false"
+ }
+ ]
+ },
+ "metricFormatType": "reserved",
+ "semanticRole": "fixed"
+}
+```
+
+Response Code: 200 (The base metric's definition is returned successfully.)
+
+## Retrieve data model base metrics
+
+You can also retrieve data model base metrics. Parameters include pagination options such as `limit` and `offset`.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/factMetrics](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelFactMetrics)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/factMetrics' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/factMetrics' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response Body:
+
+```json
+{
+ "offset": 0,
+ "limit": -1,
+ "total": 2,
+ "factMetrics": [
+ {
+ "information": {
+ "dateCreated": "2025-08-27T08:45:26.816Z",
+ "dateModified": "2025-08-27T08:45:26.816Z",
+ "versionId": "1538F211514F0DAA243EA09477A0BF3F",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "8545CACCC1DA4D8F9625718E92B777B6",
+ "subType": "fact_metric",
+ "name": "Year Duration",
+ "description": "Number of days in the year, accounting for leap years.",
+ "destinationFolderId": "73F519E9FCA5413586F3F8C706E1F2EA"
+ },
+ "fact": {
+ "dataType": {
+ "type": "integer",
+ "precision": 2,
+ "scale": 0
+ },
+ "expressions": [
+ {
+ "expressionId": "7B373D46C174496B8E42B921C6BC29C0",
+ "expression": {
+ "text": "year_duration"
+ },
+ "tables": [
+ {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ }
+ ]
+ }
+ ],
+ "extensions": [],
+ "entryLevel": []
+ },
+ "function": "sum",
+ "functionProperties": [
+ {
+ "name": "UseLookupForAttributes",
+ "value": {
+ "type": "boolean",
+ "value": "false"
+ }
+ }
+ ],
+ "dimty": {
+ "dimtyUnits": [
+ {
+ "dimtyUnitType": "report_base_level",
+ "aggregation": "normal",
+ "filtering": "apply",
+ "groupBy": true
+ }
+ ],
+ "excludeAttribute": false,
+ "allowAddingUnit": true
+ },
+ "metricSubtotals": [
+ {
+ "definition": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "078C50834B484EE29948FA9DD5300ADF",
+ "subType": "system_subtotal",
+ "name": "Count"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B328C60462634223B2387D4ADABEEB53",
+ "subType": "system_subtotal",
+ "name": "Average"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "00B7BFFF967F42C4B71A4B53D90FB095",
+ "subType": "system_subtotal",
+ "name": "Minimum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B1F4AA7DE683441BA559AA6453C5113E",
+ "subType": "system_subtotal",
+ "name": "Maximum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "54E7BFD129514717A92BC44CF1FE5A32",
+ "subType": "system_subtotal",
+ "name": "Product"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "83A663067F7E43B2ABF67FD38ECDC7FE",
+ "subType": "system_subtotal",
+ "name": "Median"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "36226A4048A546139BE0AF5F24737BA8",
+ "subType": "system_subtotal",
+ "name": "Mode"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "7FBA414995194BBAB2CF1BB599209824",
+ "subType": "system_subtotal",
+ "name": "Standard Deviation"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "1769DBFCCF2D4392938E40418C6E065E",
+ "subType": "system_subtotal",
+ "name": "Variance"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "E1853D5A36C74F59A9F8DEFB3F9527A1",
+ "subType": "system_subtotal",
+ "name": "Geometric Mean"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "F225147A4CA0BB97368A5689D9675E73",
+ "subType": "system_subtotal",
+ "name": "Aggregation"
+ },
+ "implementation": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ }
+ ],
+ "format": {
+ "header": [],
+ "values": [
+ {
+ "type": "number_category",
+ "value": "0"
+ },
+ {
+ "type": "number_format",
+ "value": "###0"
+ },
+ {
+ "type": "number_currency_position",
+ "value": "0"
+ },
+ {
+ "type": "number_currency_symbol",
+ "value": ""
+ },
+ {
+ "type": "number_decimal_places",
+ "value": "0"
+ },
+ {
+ "type": "number_negative_numbers",
+ "value": "1"
+ },
+ {
+ "type": "number_thousand_separator",
+ "value": "false"
+ }
+ ]
+ },
+ "metricFormatType": "reserved",
+ "semanticRole": "fixed"
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-27T08:45:26.816Z",
+ "dateModified": "2025-08-27T08:45:26.816Z",
+ "versionId": "1538F211514F0DAA243EA09477A0BF3F",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "7FE315204CDA4D2984B60C58DAAB876C",
+ "subType": "fact_metric",
+ "name": "Quarter Duration",
+ "description": "Number of days in each quarter for scheduling and analysis.",
+ "destinationFolderId": "73F519E9FCA5413586F3F8C706E1F2EA"
+ },
+ "fact": {
+ "dataType": {
+ "type": "integer",
+ "precision": 2,
+ "scale": 0
+ },
+ "expressions": [
+ {
+ "expressionId": "E2EEC10A0F13412B965293C490CC3961",
+ "expression": {
+ "text": "quarter_duration"
+ },
+ "tables": [
+ {
+ "objectId": "2249F3085D67417E904FBF789EBAFDC8",
+ "subType": "logical_table",
+ "name": "lu_quarter"
+ }
+ ]
+ }
+ ],
+ "extensions": [],
+ "entryLevel": []
+ },
+ "function": "sum",
+ "functionProperties": [
+ {
+ "name": "UseLookupForAttributes",
+ "value": {
+ "type": "boolean",
+ "value": "false"
+ }
+ }
+ ],
+ "dimty": {
+ "dimtyUnits": [
+ {
+ "dimtyUnitType": "report_base_level",
+ "aggregation": "normal",
+ "filtering": "apply",
+ "groupBy": true
+ }
+ ],
+ "excludeAttribute": false,
+ "allowAddingUnit": true
+ },
+ "metricSubtotals": [
+ {
+ "definition": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "078C50834B484EE29948FA9DD5300ADF",
+ "subType": "system_subtotal",
+ "name": "Count"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B328C60462634223B2387D4ADABEEB53",
+ "subType": "system_subtotal",
+ "name": "Average"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "00B7BFFF967F42C4B71A4B53D90FB095",
+ "subType": "system_subtotal",
+ "name": "Minimum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B1F4AA7DE683441BA559AA6453C5113E",
+ "subType": "system_subtotal",
+ "name": "Maximum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "54E7BFD129514717A92BC44CF1FE5A32",
+ "subType": "system_subtotal",
+ "name": "Product"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "83A663067F7E43B2ABF67FD38ECDC7FE",
+ "subType": "system_subtotal",
+ "name": "Median"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "36226A4048A546139BE0AF5F24737BA8",
+ "subType": "system_subtotal",
+ "name": "Mode"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "7FBA414995194BBAB2CF1BB599209824",
+ "subType": "system_subtotal",
+ "name": "Standard Deviation"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "1769DBFCCF2D4392938E40418C6E065E",
+ "subType": "system_subtotal",
+ "name": "Variance"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "E1853D5A36C74F59A9F8DEFB3F9527A1",
+ "subType": "system_subtotal",
+ "name": "Geometric Mean"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "F225147A4CA0BB97368A5689D9675E73",
+ "subType": "system_subtotal",
+ "name": "Aggregation"
+ },
+ "implementation": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ }
+ ],
+ "format": {
+ "header": [],
+ "values": [
+ {
+ "type": "number_category",
+ "value": "9"
+ },
+ {
+ "type": "number_format",
+ "value": "General"
+ },
+ {
+ "type": "number_currency_position",
+ "value": "0"
+ },
+ {
+ "type": "number_currency_symbol",
+ "value": ""
+ },
+ {
+ "type": "number_decimal_places",
+ "value": "0"
+ },
+ {
+ "type": "number_negative_numbers",
+ "value": "1"
+ },
+ {
+ "type": "number_thousand_separator",
+ "value": "false"
+ }
+ ]
+ },
+ "metricFormatType": "reserved",
+ "semanticRole": "automatic"
+ }
+ ]
+}
+```
+
+Response Code: 200 (All base metrics in data model were returned successfully.)
diff --git a/docs/common-workflows/mosaic/manage-data-model-folders/manage-data-model-folders.md b/docs/common-workflows/mosaic/manage-data-model-folders/manage-data-model-folders.md
new file mode 100644
index 00000000..43dc5e26
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-folders/manage-data-model-folders.md
@@ -0,0 +1,18 @@
+---
+title: Manage data model folders
+description: You can use REST API requests to manage data model folders.
+---
+
+
+
+:::tip
+
+You can try these workflows with [REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+You can use REST API requests to manage data model folders.
+
+- [Retrieve Data Model Folders](retrieve-data-model-folders.md)
diff --git a/docs/common-workflows/mosaic/manage-data-model-folders/retrieve-data-model-folders.md b/docs/common-workflows/mosaic/manage-data-model-folders/retrieve-data-model-folders.md
new file mode 100644
index 00000000..7e9699a8
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-folders/retrieve-data-model-folders.md
@@ -0,0 +1,236 @@
+---
+title: Retrieve data model folders
+description: This workflow demonstrates how to retrieve data model folders using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve one or more data model folders using the REST API with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+- [Retrieve a data model folder](#retrieve-a-data-model-folder)
+- [Retrieve data model folders](#retrieve-data-model-folders)
+
+A detailed description of each step of this workflow is listed below.
+
+## Retrieve a data model folder
+
+You can retrieve a specific data model folder including a data model schema or a custom folder. In the response, you can view basic information of the folder and its contents, such as attributes and metrics.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/folders/\{folderId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelFolder)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/folders/06E86BB031E443889CCABC6896D39829' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/folders/06E86BB031E443889CCABC6896D39829' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "information": {
+ "dateCreated": "2025-08-20T06:12:34.264Z",
+ "dateModified": "2025-08-20T06:51:43.639Z",
+ "versionId": "52B000BE44ECFCF688581096E3745FD6",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "06E86BB031E443889CCABC6896D39829",
+ "subType": "folder",
+ "name": "attributes",
+ "destinationFolderId": "3567B6C7338D4CFFB2F03879C4CB831D"
+ },
+ "contents": [
+ {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:12:34.264Z",
+ "versionId": "6324AEB64689D526B216A08F92B96019",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "FF23DFFA45224C3DA18FA1A46672CCCD",
+ "subType": "attribute",
+ "name": "Month",
+ "description": "Represents the year and month (YYYYMM) for tracking sales trends over time."
+ },
+ {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:12:34.264Z",
+ "versionId": "6324AEB64689D526B216A08F92B96019",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "FFA2DF297AAC4EDA9F8DA28A9EC8FBBF",
+ "subType": "attribute",
+ "name": "Call Center",
+ "description": "Unique identifier for the call center, linking sales data to specific call center operations."
+ }
+ ]
+}
+```
+
+- Response Code: 200 (Success: OK)
+
+## Retrieve data model folders
+
+You can also retrieve data model folders. Parameters include pagination options such as `limit` and `offset`.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/folders](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelFolders)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/folders?limit=1&offset=2' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/folders?limit=1&offset=2' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "offset": 2,
+ "limit": 1,
+ "total": 4,
+ "folders": [
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:12:34.264Z",
+ "dateModified": "2025-08-20T06:12:34.264Z",
+ "versionId": "6324AEB64689D526B216A08F92B96019",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "CFD4ECBE2F594F349FE8664283CAA14C",
+ "subType": "folder",
+ "name": "base metrics",
+ "destinationFolderId": "3567B6C7338D4CFFB2F03879C4CB831D"
+ },
+ "contents": [
+ {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:12:34.264Z",
+ "versionId": "6324AEB64689D526B216A08F92B96019",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "43965A41AA8A466C9EE5F3730A2A8692",
+ "subType": "fact_metric",
+ "name": "Gross Dollar Sales",
+ "description": "Gross revenue from sales before deductions, useful for assessing overall sales performance."
+ },
+ {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:12:34.264Z",
+ "versionId": "6324AEB64689D526B216A08F92B96019",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "95D2176A21A44948B54907B9EC9CE01B",
+ "subType": "fact_metric",
+ "name": "Total Cost",
+ "description": "Total cost incurred for the sales, used to calculate profitability and cost management."
+ },
+ {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:12:34.264Z",
+ "versionId": "6324AEB64689D526B216A08F92B96019",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "A11F0A2B932641F684A66FB72F947C98",
+ "subType": "fact_metric",
+ "name": "Total Unit Sales",
+ "description": "Total number of units sold, indicating sales volume for performance tracking."
+ },
+ {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:12:34.264Z",
+ "versionId": "6324AEB64689D526B216A08F92B96019",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "DD7F2A07957144E689F7EB40C7DDE381",
+ "subType": "fact_metric",
+ "name": "Total Dollar Sales",
+ "description": "Total revenue generated from sales in dollars, useful for financial performance analysis."
+ }
+ ]
+ }
+ ]
+}
+```
+
+- Response Code: 200 (Success: OK)
diff --git a/docs/common-workflows/mosaic/manage-data-model-hierarchy/manage-data-model-hierarchy.md b/docs/common-workflows/mosaic/manage-data-model-hierarchy/manage-data-model-hierarchy.md
new file mode 100644
index 00000000..218b970d
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-hierarchy/manage-data-model-hierarchy.md
@@ -0,0 +1,18 @@
+---
+title: Manage data model hierarchy
+description: You can use REST API requests to manage data model hierarchy.
+---
+
+
+
+:::tip
+
+You can try these workflows with [REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+You can use REST API requests to manage data model hierarchy.
+
+- [Retrieve a Data Model Hierarchy](retrieve-a-data-model-hierarchy.md)
diff --git a/docs/common-workflows/mosaic/manage-data-model-hierarchy/retrieve-a-data-model-hierarchy.md b/docs/common-workflows/mosaic/manage-data-model-hierarchy/retrieve-a-data-model-hierarchy.md
new file mode 100644
index 00000000..3af2e0e2
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-hierarchy/retrieve-a-data-model-hierarchy.md
@@ -0,0 +1,174 @@
+---
+title: Retrieve a data model hierarchy
+description: This workflow demonstrates how to retrieve a data model hierarchy's definition using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve a data model hierarchy's definition using the REST API with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+## Get the definition of the specified data model's hierarchy
+
+You can retrieve a specific data model's hierarchy. In the response, you can view relationships between attributes in the hierarchy and isolated attributes that are not part of any relationship.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/hierarchy](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelHierarchy)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/hierarchy' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/04DCF4F028354FC0AE4B8120CB1983A6/hierarchy' \
+-H 'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response Body: You can view the data model hierarchy's definition in the body of the response.
+
+```json
+{
+ "relationships": [
+ {
+ "parent": {
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year"
+ },
+ "child": {
+ "objectId": "10DF161DF9C74FAEBA32795E7EE40E36",
+ "subType": "attribute",
+ "name": "Year Date"
+ },
+ "relationshipTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ },
+ "relationshipType": "one_to_many"
+ },
+ {
+ "parent": {
+ "objectId": "ACAB111A1C5E46539D672CA380729B90",
+ "subType": "attribute",
+ "name": "Previous Year"
+ },
+ "child": {
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year"
+ },
+ "relationshipTable": {
+ "objectId": "EE3E012AE58943B9B4AF84C3BC08888F",
+ "subType": "logical_table",
+ "name": "lu_year"
+ },
+ "relationshipType": "one_to_many"
+ },
+ {
+ "parent": {
+ "objectId": "29D13B51E7DD49999F641399E4C62FA4",
+ "subType": "attribute",
+ "name": "Quarter"
+ },
+ "child": {
+ "objectId": "BBBF9A92A6DA4EADB8F587AFD4BD109C",
+ "subType": "attribute",
+ "name": "Quarter Date"
+ },
+ "relationshipTable": {
+ "objectId": "2249F3085D67417E904FBF789EBAFDC8",
+ "subType": "logical_table",
+ "name": "lu_quarter"
+ },
+ "relationshipType": "one_to_many"
+ },
+ {
+ "parent": {
+ "objectId": "B4EB40B7F8E045849EDAFF4D473C12D1",
+ "subType": "attribute",
+ "name": "Previous Quarter"
+ },
+ "child": {
+ "objectId": "29D13B51E7DD49999F641399E4C62FA4",
+ "subType": "attribute",
+ "name": "Quarter"
+ },
+ "relationshipTable": {
+ "objectId": "2249F3085D67417E904FBF789EBAFDC8",
+ "subType": "logical_table",
+ "name": "lu_quarter"
+ },
+ "relationshipType": "one_to_many"
+ },
+ {
+ "parent": {
+ "objectId": "EE709099BFB74E3A879A1F5B5ABBB037",
+ "subType": "attribute",
+ "name": "Year"
+ },
+ "child": {
+ "objectId": "F0A2CB8C9DA44CFAAC3F2BD4A0D0DBDD",
+ "subType": "attribute",
+ "name": "Last Year Quarter"
+ },
+ "relationshipTable": {
+ "objectId": "2249F3085D67417E904FBF789EBAFDC8",
+ "subType": "logical_table",
+ "name": "lu_quarter"
+ },
+ "relationshipType": "one_to_many"
+ }
+ ],
+ "isolatedAttributes": [
+ {
+ "objectId": "0195EF23D855468BAA2FB27C03F6CCAA",
+ "subType": "attribute",
+ "name": "Quarter Description"
+ }
+ ]
+}
+```
+
+Response Code: 200 (Hierarchy's definition is returned successfully.)
diff --git a/docs/common-workflows/mosaic/manage-data-model-metrics/manage-data-model-metrics.md b/docs/common-workflows/mosaic/manage-data-model-metrics/manage-data-model-metrics.md
new file mode 100644
index 00000000..36d97824
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-metrics/manage-data-model-metrics.md
@@ -0,0 +1,19 @@
+---
+title: Manage data model metrics
+description: You can use REST API requests to manage data model metrics.
+---
+
+
+
+:::tip
+
+You can try these workflows with [REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+You can use REST API requests to manage data model metrics.
+
+- [Retrieve Data Model Metrics](retrieve-data-model-metrics.md)
+- [Retrieve Data Model Metric Embedded Objects](retrieve-a-data-model-metric-embedded-object.md)
diff --git a/docs/common-workflows/mosaic/manage-data-model-metrics/retrieve-a-data-model-metric-embedded-object.md b/docs/common-workflows/mosaic/manage-data-model-metrics/retrieve-a-data-model-metric-embedded-object.md
new file mode 100644
index 00000000..ae898cca
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-metrics/retrieve-a-data-model-metric-embedded-object.md
@@ -0,0 +1,80 @@
+---
+title: Retrieve a data model metric embedded object
+description: This workflow demonstrates how to retrieve a data model metric embedded object using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve a data model metric embedded object using the REST API with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+You can retrieve a specific data model metric embedded object.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/metrics/\{metricId}/embeddedObjects/\{embeddedObjectId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelMetricEmbeddedObject)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: q6pgktbh4160lt38v4dhfsc7po'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics/D0D7ED4D7CCB4535AA7609B24FE2B7FC/embeddedObjects/D5CAE2E2487E529A01E48AB5F8166AAE' \
+-H 'X-MSTR-AuthToken: q6pgktbh4160lt38v4dhfsc7po' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: q6pgktbh4160lt38v4dhfsc7po'
+'X-MSTR-MS-Changeset: DD281585D761452188599CC882A67417'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics/D0D7ED4D7CCB4535AA7609B24FE2B7FC/embeddedObjects/D5CAE2E2487E529A01E48AB5F8166AAE' \
+-H 'X-MSTR-AuthToken: q6pgktbh4160lt38v4dhfsc7po' \
+-H 'X-MSTR-MS-Changeset: DD281585D761452188599CC882A67417'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "id": "D5CAE2E2487E529A01E48AB5F8166AAE",
+ "subType": "agg_metric",
+ "expression": {
+ "text": "Count({Call Center})"
+ }
+}
+```
+
+- Response Code: 200 (Success: OK)
diff --git a/docs/common-workflows/mosaic/manage-data-model-metrics/retrieve-data-model-metrics.md b/docs/common-workflows/mosaic/manage-data-model-metrics/retrieve-data-model-metrics.md
new file mode 100644
index 00000000..42bf597b
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-metrics/retrieve-data-model-metrics.md
@@ -0,0 +1,978 @@
+---
+title: Retrieve data model metrics
+description: This workflow demonstrates how to retrieve data model metrics using REST API.
+---
+
+
+
+This workflow demonstrates how to retrieve data model metrics and their advanced properties using the REST API, with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+- [Retrieve a data model metric](#retrieve-a-data-model-metric)
+- [Retrieve data model metrics](#retrieve-data-model-metrics)
+- [Retrieve data model metric applicable advanced properties](#retrieve-data-model-metric-applicable-advanced-properties)
+
+A detailed description of each step of this workflow is listed below.
+
+## Retrieve a data model metric
+
+You can retrieve a specific data model metric.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/metrics/\{metricId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelMetric)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics/D0D7ED4D7CCB4535AA7609B24FE2B7FC' \
+-H 'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics/D0D7ED4D7CCB4535AA7609B24FE2B7FC' \
+-H 'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "information": {
+ "dateCreated": "2025-08-20T07:40:02.873Z",
+ "dateModified": "2025-08-20T07:40:02.873Z",
+ "versionId": "0FB11BB44E5EAF9AB7B214AF229CF851",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "D0D7ED4D7CCB4535AA7609B24FE2B7FC",
+ "subType": "metric",
+ "name": "New Metric",
+ "destinationFolderId": "3567B6C7338D4CFFB2F03879C4CB831D"
+ },
+ "expression": {
+ "text": "Count({Call Center}) * 10",
+ "inputText": "&count([Call Center])*10",
+ "tokenStreamXml": ""
+ },
+ "metricSubtotals": [
+ {
+ "definition": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "078C50834B484EE29948FA9DD5300ADF",
+ "subType": "system_subtotal",
+ "name": "Count"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B328C60462634223B2387D4ADABEEB53",
+ "subType": "system_subtotal",
+ "name": "Average"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "00B7BFFF967F42C4B71A4B53D90FB095",
+ "subType": "system_subtotal",
+ "name": "Minimum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B1F4AA7DE683441BA559AA6453C5113E",
+ "subType": "system_subtotal",
+ "name": "Maximum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "54E7BFD129514717A92BC44CF1FE5A32",
+ "subType": "system_subtotal",
+ "name": "Product"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "83A663067F7E43B2ABF67FD38ECDC7FE",
+ "subType": "system_subtotal",
+ "name": "Median"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "36226A4048A546139BE0AF5F24737BA8",
+ "subType": "system_subtotal",
+ "name": "Mode"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "7FBA414995194BBAB2CF1BB599209824",
+ "subType": "system_subtotal",
+ "name": "Standard Deviation"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "1769DBFCCF2D4392938E40418C6E065E",
+ "subType": "system_subtotal",
+ "name": "Variance"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "E1853D5A36C74F59A9F8DEFB3F9527A1",
+ "subType": "system_subtotal",
+ "name": "Geometric Mean"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "F225147A4CA0BB97368A5689D9675E73",
+ "subType": "system_subtotal",
+ "name": "Aggregation"
+ }
+ }
+ ],
+ "aggregateFromBase": false,
+ "formulaJoinType": "default",
+ "smartTotal": "decomposable_true",
+ "dataType": {
+ "type": "reserved",
+ "precision": 0,
+ "scale": 0
+ },
+ "format": {
+ "header": [],
+ "values": [
+ {
+ "type": "number_category",
+ "value": "0"
+ },
+ {
+ "type": "number_decimal_places",
+ "value": "0"
+ },
+ {
+ "type": "number_format",
+ "value": "#,##0;(#,##0)"
+ }
+ ]
+ },
+ "subtotalFromBase": false,
+ "metricFormatType": "reserved",
+ "thresholds": [],
+ "embeddedObjects": [
+ {
+ "id": "D5CAE2E2487E529A01E48AB5F8166AAE",
+ "subType": "agg_metric",
+ "expression": {
+ "text": "Count({Call Center})"
+ }
+ },
+ {
+ "id": "E7DAE05F445651112F5A538A2090BEE2",
+ "subType": "metric",
+ "expression": {
+ "text": "Count({Call Center})"
+ },
+ "dimty": {
+ "dimtyUnits": [
+ {
+ "dimtyUnitType": "report_base_level",
+ "aggregation": "normal",
+ "filtering": "apply",
+ "groupBy": true
+ }
+ ],
+ "excludeAttribute": false,
+ "allowAddingUnit": true
+ },
+ "conditionality": {
+ "embedMethod": "report_into_metric_filter",
+ "removeElements": true
+ }
+ }
+ ],
+ "pushDownBehavior": "automatic"
+}
+```
+
+- Response Code: 200 (Success: OK)
+
+## Retrieve data model metrics
+
+You can also retrieve data model metrics. Parameters include pagination options such as `limit` and `offset`.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/metrics](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelMetrics)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics?limit=-1&offset=0' \
+-H 'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics?limit=-1&offset=0' \
+-H 'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "offset": 0,
+ "limit": -1,
+ "total": 2,
+ "metrics": [
+ {
+ "information": {
+ "dateCreated": "2025-08-20T07:40:02.873Z",
+ "dateModified": "2025-08-20T07:40:02.873Z",
+ "versionId": "0FB11BB44E5EAF9AB7B214AF229CF851",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "D0D7ED4D7CCB4535AA7609B24FE2B7FC",
+ "subType": "metric",
+ "name": "New Metric",
+ "destinationFolderId": "3567B6C7338D4CFFB2F03879C4CB831D"
+ },
+ "expression": {
+ "text": "Count({Call Center}) * 10",
+ "inputText": "&count([Call Center])*10",
+ "tokenStreamXml": ""
+ },
+ "metricSubtotals": [
+ {
+ "definition": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "078C50834B484EE29948FA9DD5300ADF",
+ "subType": "system_subtotal",
+ "name": "Count"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B328C60462634223B2387D4ADABEEB53",
+ "subType": "system_subtotal",
+ "name": "Average"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "00B7BFFF967F42C4B71A4B53D90FB095",
+ "subType": "system_subtotal",
+ "name": "Minimum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B1F4AA7DE683441BA559AA6453C5113E",
+ "subType": "system_subtotal",
+ "name": "Maximum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "54E7BFD129514717A92BC44CF1FE5A32",
+ "subType": "system_subtotal",
+ "name": "Product"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "83A663067F7E43B2ABF67FD38ECDC7FE",
+ "subType": "system_subtotal",
+ "name": "Median"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "36226A4048A546139BE0AF5F24737BA8",
+ "subType": "system_subtotal",
+ "name": "Mode"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "7FBA414995194BBAB2CF1BB599209824",
+ "subType": "system_subtotal",
+ "name": "Standard Deviation"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "1769DBFCCF2D4392938E40418C6E065E",
+ "subType": "system_subtotal",
+ "name": "Variance"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "E1853D5A36C74F59A9F8DEFB3F9527A1",
+ "subType": "system_subtotal",
+ "name": "Geometric Mean"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "F225147A4CA0BB97368A5689D9675E73",
+ "subType": "system_subtotal",
+ "name": "Aggregation"
+ }
+ }
+ ],
+ "aggregateFromBase": false,
+ "formulaJoinType": "default",
+ "smartTotal": "decomposable_true",
+ "dataType": {
+ "type": "reserved",
+ "precision": 0,
+ "scale": 0
+ },
+ "format": {
+ "header": [],
+ "values": [
+ {
+ "type": "number_category",
+ "value": "0"
+ },
+ {
+ "type": "number_decimal_places",
+ "value": "0"
+ },
+ {
+ "type": "number_format",
+ "value": "#,##0;(#,##0)"
+ }
+ ]
+ },
+ "subtotalFromBase": false,
+ "metricFormatType": "reserved",
+ "thresholds": [],
+ "embeddedObjects": [
+ {
+ "id": "D5CAE2E2487E529A01E48AB5F8166AAE",
+ "subType": "agg_metric",
+ "expression": {
+ "text": "Count({Call Center})"
+ }
+ },
+ {
+ "id": "E7DAE05F445651112F5A538A2090BEE2",
+ "subType": "metric",
+ "expression": {
+ "text": "Count({Call Center})"
+ },
+ "dimty": {
+ "dimtyUnits": [
+ {
+ "dimtyUnitType": "report_base_level",
+ "aggregation": "normal",
+ "filtering": "apply",
+ "groupBy": true
+ }
+ ],
+ "excludeAttribute": false,
+ "allowAddingUnit": true
+ },
+ "conditionality": {
+ "embedMethod": "report_into_metric_filter",
+ "removeElements": true
+ }
+ }
+ ],
+ "pushDownBehavior": "automatic"
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-20T08:14:31.882Z",
+ "dateModified": "2025-08-20T08:14:31.882Z",
+ "versionId": "5A5B4B744AACDDD2F9E1FEA73CAEE06F",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "D21F3332BEFA4B5B8AC870C6ADC66572",
+ "subType": "metric",
+ "name": "New Metric (1)",
+ "destinationFolderId": "3567B6C7338D4CFFB2F03879C4CB831D"
+ },
+ "expression": {
+ "text": "Count({Call Center})"
+ },
+ "dimty": {
+ "dimtyUnits": [
+ {
+ "dimtyUnitType": "report_base_level",
+ "aggregation": "normal",
+ "filtering": "apply",
+ "groupBy": true
+ }
+ ],
+ "excludeAttribute": false,
+ "allowAddingUnit": true
+ },
+ "conditionality": {
+ "embedMethod": "report_into_metric_filter",
+ "removeElements": true
+ },
+ "metricSubtotals": [
+ {
+ "definition": {
+ "objectId": "96C487AF4D12472A910C1ACACFB56EFB",
+ "subType": "system_subtotal",
+ "name": "Total"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "078C50834B484EE29948FA9DD5300ADF",
+ "subType": "system_subtotal",
+ "name": "Count"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B328C60462634223B2387D4ADABEEB53",
+ "subType": "system_subtotal",
+ "name": "Average"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "00B7BFFF967F42C4B71A4B53D90FB095",
+ "subType": "system_subtotal",
+ "name": "Minimum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "B1F4AA7DE683441BA559AA6453C5113E",
+ "subType": "system_subtotal",
+ "name": "Maximum"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "54E7BFD129514717A92BC44CF1FE5A32",
+ "subType": "system_subtotal",
+ "name": "Product"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "83A663067F7E43B2ABF67FD38ECDC7FE",
+ "subType": "system_subtotal",
+ "name": "Median"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "36226A4048A546139BE0AF5F24737BA8",
+ "subType": "system_subtotal",
+ "name": "Mode"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "7FBA414995194BBAB2CF1BB599209824",
+ "subType": "system_subtotal",
+ "name": "Standard Deviation"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "1769DBFCCF2D4392938E40418C6E065E",
+ "subType": "system_subtotal",
+ "name": "Variance"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "E1853D5A36C74F59A9F8DEFB3F9527A1",
+ "subType": "system_subtotal",
+ "name": "Geometric Mean"
+ }
+ },
+ {
+ "definition": {
+ "objectId": "F225147A4CA0BB97368A5689D9675E73",
+ "subType": "system_subtotal",
+ "name": "Aggregation"
+ }
+ }
+ ],
+ "aggregateFromBase": true,
+ "formulaJoinType": "default",
+ "smartTotal": "decomposable_false",
+ "dataType": {
+ "type": "reserved",
+ "precision": 0,
+ "scale": 0
+ },
+ "format": {
+ "header": [],
+ "values": [
+ {
+ "type": "number_category",
+ "value": "9"
+ }
+ ]
+ },
+ "subtotalFromBase": false,
+ "metricFormatType": "reserved",
+ "thresholds": [],
+ "embeddedObjects": [
+ {
+ "id": "5CF2DFB94113360F7194FCA1B3224326",
+ "subType": "agg_metric",
+ "expression": {
+ "text": "Count({Call Center})"
+ }
+ }
+ ],
+ "pushDownBehavior": "automatic"
+ }
+ ]
+}
+```
+
+- Response Code: 200 (Success: OK)
+
+## Retrieve data model metric applicable advanced properties
+
+You can retrieve applicable advanced properties for a specific data model metric.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/metrics/\{metricId}/applicableAdvancedProperties](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getApplicableAdvancedProperties)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics/D0D7ED4D7CCB4535AA7609B24FE2B7FC/applicableAdvancedProperties?showSqlPreview=false' \
+-H 'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/metrics/D0D7ED4D7CCB4535AA7609B24FE2B7FC/applicableAdvancedProperties?showSqlPreview=false' \
+-H 'X-MSTR-AuthToken: ie09s7dik3vbv8ga9qkodk9luu' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "propertyCount": 12,
+ "applicableProperties": {
+ "[VLDB Function].[Null Check]": {
+ "name": "Null Check",
+ "groupId": 2,
+ "groupName": "Metrics",
+ "maxValue": 2,
+ "displayType": "options",
+ "displayName": "Null Check",
+ "showSqlPreview": true,
+ "options": [
+ {
+ "value": "Do nothing",
+ "optionValue": 0,
+ "sqlPreview": "\n \n create table TEMP1 as\n select a21.STORE_NBR STORE_NBR,\n (sum(a21.REG_SLS_DLR) + sum(a21.PML_SLS_DLR)) TOT_SLS,\n sum(a21.PML_SLS_DLR) PRM_DLR\n from STORE_DIVISION a21\n group by a21.STORE_NBR\n \n create table TEMP2 as\n select a21.REGION_NBR REGION_NBR,\n sum(a21.REG_SLS_DLR) REG_SLS_DLR\n from REGION_DIVISION a21\n group by a21.REGION_NBR\n \n select distinct a22.STORE_NBR STORE_NBR,\n a22.STORE_DESC STORE_DESC,\n a21.TOT_SLS TOT_SLS,\n (a23.REG_SLS_DLR + a21. PRM_DLR) TOT_CALC\n from TEMP1 a21\n join LOOKUP_STORE a22\n on (a21.STORE_NBR = a22.STORE_NBR)\n join TEMP2 a23\n on (a22.REGION_NBR = a23.REGION_NBR)\n \n "
+ },
+ {
+ "value": "Check for NULL in all queries",
+ "optionValue": 1,
+ "sqlPreview": "\n \n create table TEMP1 as\n select a21.STORE_NBR STORE_NBR,\n (VALUE(sum(a21.REG_SLS_DLR), 0) + VALUE(sum(a21.PML_SLS_DLR), 0)) TOT_SLS_DLR,\n sum(a21.PML_SLS_DLR) PRM_DLR\n from STORE_DIVISION a21\n group by a21.STORE_NBR\n \n create table TEMP2 as\n select a21.REGION_NBR REGION_NBR,\n sum(a21.REG_SLS_DLR) REG_SLS_DLR\n from REGION_DIVISION a21\n group by a21.REGION_NBR\n \n select distinct a22.STORE_NBR STORE_NBR,\n a22.STORE_DESC STORE_DESC,\n a21.WJXBFS1 WJXBFS1,\n (VALUE(a23.REG_SLS_DLR, 0) + VALUE(a21.PRM_DLR, 0)) TOT_CALC\n from TEMP1 a21\n join LOOKUP_STORE a22\n on (a21.STORE_NBR = a22.STORE_NBR)\n join TEMP2 a23\n on (a22.REGION_NBR = a23.REGION_NBR)\n \n "
+ },
+ {
+ "value": "Check for NULL in temp table join only",
+ "optionValue": 2,
+ "sqlPreview": "\n \n create table TEMP1 as\n select a21.STORE_NBR STORE_NBR,\n (sum(a21.REG_SLS_DLR) + sum(a21.PML_SLS_DLR)) TOT_SLS_DLR,\n sum(a21.PML_SLS_DLR) PRM_DLR\n from STORE_DIVISION a21\n group by a21.STORE_NBR\n \n create table as\n select a21.REGION_NBR REGION_NBR,\n sum(a21.REG_SLS_DLR) REG_SLS_DLR\n from REGION_DIVISION a21\n group by a21.REGION_NBR\n \n select distinct a22.STORE_NBR STORE_NBR,\n a22.STORE_DESC STORE_DESC,\n a21.WJXBFS1 WJXBFS1,\n (VALUE(a23.REG_SLS_DLR, 0) + VALUE(a21.PRM_DLR, 0)) TOT_CALC\n from TEMP1 a21\n join LOOKUP_STORE a22\n on (a21.STORE_NBR = a22.STORE_NBR)\n join TEMP2 a23\n on (a22.REGION_NBR = a23.REGION_NBR)\n \n "
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 2
+ },
+ "[VLDB Function].[Zero Check]": {
+ "name": "Zero Check",
+ "groupId": 2,
+ "groupName": "Metrics",
+ "maxValue": 2,
+ "displayType": "options",
+ "displayName": "Zero Check",
+ "showSqlPreview": true,
+ "options": [
+ {
+ "value": "Do nothing",
+ "optionValue": 0,
+ "sqlPreview": "\n \n create table TEMP1 as\n select a21.REGION_NBR REGION_NBR,\n sum(a21.REG_SLS_DLR) REG_SLS_DLR\n from REGION_DIVISION a21\n group by a21.REGION_NBR\n \n create table TEMP2 as\n select a21.STORE_NBR STORE_NBR,\n sum(a21.PML_SLS_DLR) PML_SLS_DLR,\n (sum(a21.REG_SLS_DLR) / sum(a21.PML_SLS_DLR)) PCT_CONT\n from STORE_DIVISION a21\n group by a21.STORE_NBR\n \n select distinct a22.STORE_NBR STORE_NBR,\n a22.STORE_DESC STORE_DESC,\n (a23.REG_SLS_DLR / a21.PML_SLS_DLR) DIV_METRIC,\n a21.PCT_CONT PCT_CONT\n from TEMP2 a21\n join LOOKUP_STORE a22\n on (a21.STORE_NBR = a22.STORE_NBR)\n join TEMP1 a23\n on (a22.REGION_NBR = a23.REGION_NBR)\n \n "
+ },
+ {
+ "value": "Check for zero in all queries",
+ "optionValue": 1,
+ "sqlPreview": "\n \n create table TEMP1 as\n select a21.REGION_NBR REGION_NBR,\n sum(a21.REG_SLS_DLR) REG_SLS_DLR\n from REGION_DIVISION a21\n group by a21.REGION_NBR\n \n create table TEMP2 as\n select a21.STORE_NBR STORE_NBR,\n sum(a21.PML_SLS_DLR) PML_SLS_DLR,\n (sum(a21.REG_SLS_DLR) / (CASE\n sum(a21.PML_SLS_DLR) WHEN 0 THEN NULL ELSE sum(a21.PML_SLS_DLR) END)) PCT_CONT\n from STORE_DIVISION a21\n group by a21.STORE_NBR\n \n select distinct a22.STORE_NBR STORE_NBR,\n a22.STORE_DESC STORE_DESC,\n VALUE((a23. REG_SLS_DLR 1 / (CASE a21.PML_SLS_DLR, WHEN 0 THEN NULL ELSE a21.PML_SLS_DLR,)), 0) DIV_METRIC,\n a21.PCT_CONT PCT_CONT\n from TEMP2 a21\n join LOOKUP_STORE a22\n on (a21.STORE_NBR = a22.STORE_NBR)\n join TEMP1 a23\n on (a22.REGION_NBR = a23.REGION_NBR)\n \n "
+ },
+ {
+ "value": "Check for zero in temp table join only",
+ "optionValue": 2,
+ "sqlPreview": "\n \n create table TEMP1 as\n select a21.REGION_NBR REGION_NBR,\n sum(a21.REG_SLS_DLR) REG_SLS_DLR\n from REGION_DIVISION a21\n group by a21.REGION_NBR\n \n create table TEMP2 as\n select a21.STORE_NBR STORE_NBR,\n sum(a21.PML_SLS_DLR) PML_SLS_DLR,\n (sum(a21.REG_SLS_DLR) / sum(a21.PML_SLS_DLR)) PCT_CONT\n from STORE_DIVISION a21\n group by a21.STORE_NBR\n \n select distinct a22.STORE_NBR STORE_NBR,\n a22.STORE_DESC STORE_DESC,\n VALUE((a23.REG_SLS_DLR / (CASE a21.PML_SLS_DLR,WHEN 0 THEN NULL ELSE a21.PML_SLS_DLR,END)), 0) DIV_METRIC,\n a21.PCT_CONT PCT_CONT\n from TEMP2 a21\n join LOOKUP_STORE a22\n on (a21.STORE_NBR = a22.STORE_NBR)\n join TEMP1 a23\n on (a22.REGION_NBR = a23.REGION_NBR)\n \n "
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 1
+ },
+ "[VLDB Select].[Integer Constant In Metric]": {
+ "name": "Integer Constant In Metric",
+ "groupId": 2,
+ "groupName": "Metrics",
+ "maxValue": 1,
+ "displayType": "options",
+ "displayName": "Integer Constant In Metric",
+ "showSqlPreview": true,
+ "options": [
+ {
+ "value": "Add '.0' to integer constants in metric expressions.",
+ "optionValue": 0,
+ "sqlPreview": ""
+ },
+ {
+ "value": "Do not add '.0' to integer constants in metric expressions.",
+ "optionValue": 1,
+ "sqlPreview": ""
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ },
+ "[VLDB Select].[Metric Join Type]": {
+ "name": "Metric Join Type",
+ "groupId": 2,
+ "groupName": "Metrics",
+ "maxValue": 1,
+ "displayType": "options",
+ "displayName": "Metric Join Type",
+ "showSqlPreview": true,
+ "options": [
+ {
+ "value": "Inner Join",
+ "optionValue": 0,
+ "sqlPreview": "All metrics are created with an inner join by default."
+ },
+ {
+ "value": "Outer Join",
+ "optionValue": 1,
+ "sqlPreview": "All metrics are created with an outer by default."
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ },
+ "[VLDB Select].[Smart Metric Transformation]": {
+ "name": "Smart Metric Transformation",
+ "groupId": 2,
+ "groupName": "Metrics",
+ "maxValue": 1,
+ "displayType": "options",
+ "displayName": "Smart Metric Transformation",
+ "showSqlPreview": true,
+ "options": [
+ {
+ "value": "False",
+ "optionValue": 0,
+ "sqlPreview": "\n \n False means Difference/Percentage will be evaluated firstly:\n Smart Metric M3 = Greatest(Metric1, Metric2)\n 1. Transform(M3) = Greatest(Last Year's Metric1, Last Year's Metric2)\n 2. Difference(M3) = Greatest((Metric1 - LY's Metric1), (Metric2 - LY's Metric2))\n 3. Variance Percentage(M3) = Greatest((Metric1 - LY's Metric1)/LY's Metric1, (Metric2 - LY's Metric2)/LY's Metric2)\n \n "
+ },
+ {
+ "value": "True",
+ "optionValue": 1,
+ "sqlPreview": "\n \n True means smart metric will be evaluated firstly:\n Smart Metric M3 = Greatest(Metric1, Metric2)\n 1. Transform(M3) = Greatest(Last Year's Metric1, Last Year's Metric2)\n 2. Difference(M3) = M3 - Transform(M3)\n 3. Variance Percentage(M3) = (M3 - Transform(M3)) / Transform(M3)\n \n "
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ },
+ "[VLDB Select].[Transformable AggMetric]": {
+ "name": "Transformable AggMetric",
+ "groupId": 2,
+ "groupName": "Metrics",
+ "maxValue": 1,
+ "displayType": "options",
+ "displayName": "Transformable AggMetric",
+ "showSqlPreview": false,
+ "options": [
+ {
+ "value": "False",
+ "optionValue": 0,
+ "sqlPreview": "SQL BLOCK"
+ },
+ {
+ "value": "True",
+ "optionValue": 1,
+ "sqlPreview": "SQL BLOCK"
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ },
+ "[VLDB Select].[Use Subtotal Dimty for Dynamic Aggregation]": {
+ "name": "Use Subtotal Dimty for Dynamic Aggregation",
+ "groupId": 2,
+ "groupName": "Metrics",
+ "maxValue": 3,
+ "displayType": "options",
+ "displayName": "Subtotal Dimensionality Use",
+ "showSqlPreview": false,
+ "options": [
+ {
+ "value": "Use only the grouping property of a level metric for dynamic aggregation ",
+ "optionValue": 0,
+ "sqlPreview": "SQL BLOCK"
+ },
+ {
+ "value": "Use only the grouping property of a level subtotal for dynamic aggregation",
+ "optionValue": 1,
+ "sqlPreview": "SQL BLOCK"
+ },
+ {
+ "value": "Use both the grouping and filtering property of a level metric for dynamic aggregation",
+ "optionValue": 2,
+ "sqlPreview": "SQL BLOCK"
+ },
+ {
+ "value": "Use both the grouping and filtering property of a level subtotal for dynamic aggregation",
+ "optionValue": 3,
+ "sqlPreview": "SQL BLOCK"
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ },
+ "[VLDB Report].[Count Distinct with Partitions]": {
+ "name": "Count Distinct with Partitions",
+ "groupId": 4,
+ "groupName": "Query Optimizations",
+ "maxValue": 1,
+ "displayType": "options",
+ "displayName": "Count distinct elements from each partition",
+ "showSqlPreview": false,
+ "options": [
+ {
+ "value": "Disable",
+ "optionValue": 0,
+ "sqlPreview": ""
+ },
+ {
+ "value": "Enable",
+ "optionValue": 1,
+ "sqlPreview": ""
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ },
+ "[AnalyticalEngineProperties].[DerivedMetricDynamicAggAndSubtotal]": {
+ "name": "DerivedMetricDynamicAggAndSubtotal",
+ "groupId": 9,
+ "groupName": "Analytical Engine",
+ "maxValue": 3,
+ "displayType": "options",
+ "displayName": "Metric Push Down Behavior",
+ "showSqlPreview": false,
+ "options": [
+ {
+ "value": "Automatic",
+ "optionValue": 0,
+ "sqlPreview": ""
+ },
+ {
+ "value": "Disable",
+ "optionValue": 3,
+ "sqlPreview": ""
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ },
+ "[AnalyticalEngineProperties].[NullCheckingForAnalyticalEngine]": {
+ "name": "NullCheckingForAnalyticalEngine",
+ "groupId": 9,
+ "groupName": "Analytical Engine",
+ "maxValue": 2,
+ "displayType": "options",
+ "displayName": "Null checking for Analytical Engine",
+ "showSqlPreview": false,
+ "options": [
+ {
+ "value": "Scalar calculations return NULL if any operand is NULL; aggregation calculations ignore NULLs.",
+ "optionValue": 0,
+ "sqlPreview": ""
+ },
+ {
+ "value": "Scalar and aggregation calculations treat NULLs as zero (Deprecated)",
+ "optionValue": 1,
+ "sqlPreview": ""
+ },
+ {
+ "value": "Scalar calculations treat NULLs as zero; aggregation calculations ignore NULLs (metadata upgrade required for this to take effect for versions 10.7 or later).",
+ "optionValue": 2,
+ "sqlPreview": ""
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 2
+ },
+ "[AnalyticalEngineProperties].[SubtotalDimensionalityAware]": {
+ "name": "SubtotalDimensionalityAware",
+ "groupId": 9,
+ "groupName": "Analytical Engine",
+ "maxValue": 1,
+ "displayType": "options",
+ "displayName": "Subtotal Dimensionality Aware",
+ "showSqlPreview": false,
+ "options": [
+ {
+ "value": "False",
+ "optionValue": 0,
+ "sqlPreview": ""
+ },
+ {
+ "value": "True",
+ "optionValue": 1,
+ "sqlPreview": ""
+ }
+ ],
+ "type": "boolean",
+ "defaultValue": true
+ },
+ "[VLDB Select].[No Nulls In Metric For Cube Reuse]": {
+ "name": "No Nulls In Metric For Cube Reuse",
+ "groupId": 11,
+ "groupName": "Dynamic Sourcing",
+ "maxValue": 1,
+ "displayType": "options",
+ "displayName": "Metric Validation",
+ "showSqlPreview": false,
+ "options": [
+ {
+ "value": "Enable dynamic sourcing for metric",
+ "optionValue": 0,
+ "sqlPreview": ""
+ },
+ {
+ "value": "Disable dynamic sourcing for metric",
+ "optionValue": 1,
+ "sqlPreview": ""
+ }
+ ],
+ "type": "int32",
+ "defaultValue": 0
+ }
+ }
+}
+```
+
+- Response Code: 200 (Success: OK)
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/create-a-security-filter-object-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/create-a-security-filter-object-in-data-model.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/create-a-security-filter-object-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/create-a-security-filter-object-in-data-model.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/delete-a-security-filter-object-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/delete-a-security-filter-object-in-data-model.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/delete-a-security-filter-object-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/delete-a-security-filter-object-in-data-model.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/manage-data-model-security-filter-objects.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/manage-data-model-security-filters.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/manage-data-model-security-filter-objects.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/manage-data-model-security-filters.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/modify-a-security-filters-member-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/modify-a-security-filters-member-in-data-model.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/modify-a-security-filters-member-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/modify-a-security-filters-member-in-data-model.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filter-definition-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filter-definition-in-data-model.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filter-definition-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filter-definition-in-data-model.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filters-member-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filters-member-in-data-model.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filters-member-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filters-member-in-data-model.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-all-security-filters-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/retrieve-all-security-filters-in-data-model.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-all-security-filters-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/retrieve-all-security-filters-in-data-model.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-security-filter-objects/update-a-security-filter-object-in-data-model.md b/docs/common-workflows/mosaic/manage-data-model-security-filters/update-a-security-filter-object-in-data-model.md
similarity index 100%
rename from docs/common-workflows/mosaic/manage-data-model-security-filter-objects/update-a-security-filter-object-in-data-model.md
rename to docs/common-workflows/mosaic/manage-data-model-security-filters/update-a-security-filter-object-in-data-model.md
diff --git a/docs/common-workflows/mosaic/manage-data-model-tables/manage-data-model-tables.md b/docs/common-workflows/mosaic/manage-data-model-tables/manage-data-model-tables.md
new file mode 100644
index 00000000..6eb07bb5
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-tables/manage-data-model-tables.md
@@ -0,0 +1,18 @@
+---
+title: Manage data model tables
+description: You can use REST API requests to manage data model tables.
+---
+
+
+
+:::tip
+
+You can try these workflows with [REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+You can use REST API requests to manage data model tables.
+
+- [Retrieve Data Model Tables](retrieve-data-model-tables.md)
diff --git a/docs/common-workflows/mosaic/manage-data-model-tables/retrieve-data-model-tables.md b/docs/common-workflows/mosaic/manage-data-model-tables/retrieve-data-model-tables.md
new file mode 100644
index 00000000..25f0374f
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-model-tables/retrieve-data-model-tables.md
@@ -0,0 +1,405 @@
+---
+title: Retrieve data model tables
+description: This workflow demonstrates how to retrieve data model tables using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve one or more data model tables using the REST API with and without a changeset.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+- [Retrieve a data model table](#retrieve-a-data-model-table)
+- [Retrieve data model tables](#retrieve-data-model-tables)
+
+A detailed description of each step of this workflow is listed below.
+
+## Retrieve a data model table
+
+You can retrieve a specific data model table directly.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/tables/\{tableId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModeltable)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 6bgkcjj4qerlk2v4q153tf4mso'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/tables/EC92E1F465A14840A235C2910B0F9946' \
+-H 'X-MSTR-AuthToken: 6bgkcjj4qerlk2v4q153tf4mso' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 6bgkcjj4qerlk2v4q153tf4mso'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/tables/EC92E1F465A14840A235C2910B0F9946' \
+-H 'X-MSTR-AuthToken: 6bgkcjj4qerlk2v4q153tf4mso' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "EC92E1F465A14840A235C2910B0F9946",
+ "subType": "logical_table",
+ "name": "city_ctr_sls"
+ },
+ "physicalTable": {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "5CA24D7B68DE4840906F76D5DDDF7BD7",
+ "subType": "physical_table",
+ "name": "New DB Table"
+ },
+ "columns": [
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "7C82A85A72654CC39E0BDA54FC730531",
+ "subType": "column",
+ "name": "cust_city_id"
+ },
+ "dataType": {
+ "type": "integer",
+ "precision": 2,
+ "scale": 0
+ },
+ "columnName": "cust_city_id"
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "0C32634BB0844BE190C8F78644273366",
+ "subType": "column",
+ "name": "call_ctr_id"
+ },
+ "dataType": {
+ "type": "integer",
+ "precision": 2,
+ "scale": 0
+ },
+ "columnName": "call_ctr_id"
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "F6F3CF0818F94582986A0BBE89BEF268",
+ "subType": "column",
+ "name": "tot_dollar_sales"
+ },
+ "dataType": {
+ "type": "double",
+ "precision": 1000,
+ "scale": 998
+ },
+ "columnName": "tot_dollar_sales"
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "17E8155FD5B64273ABAACD777C27BF13",
+ "subType": "column",
+ "name": "tot_unit_sales"
+ },
+ "dataType": {
+ "type": "double",
+ "precision": 1000,
+ "scale": 998
+ },
+ "columnName": "tot_unit_sales"
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "3661F3DF126147D9A2504573A4A6F790",
+ "subType": "column",
+ "name": "tot_cost"
+ },
+ "dataType": {
+ "type": "double",
+ "precision": 1000,
+ "scale": 998
+ },
+ "columnName": "tot_cost"
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "7E68647E94B24AF78E84DAA94208C985",
+ "subType": "column",
+ "name": "gross_dollar_sales"
+ },
+ "dataType": {
+ "type": "double",
+ "precision": 1000,
+ "scale": 998
+ },
+ "columnName": "gross_dollar_sales"
+ }
+ ],
+ "type": "pipeline",
+ "pipeline": "{\"id\":\"4E88D3BBA1054BBF9A2C2CE4AB2E8929\",\"rootTable\":{\"id\":\"AB8BE9F5B93E476498342ED25A40AC83\",\"type\":\"root\",\"children\":[{\"columns\":[{\"id\":\"A9DA53AAFD2C4C6093C094FAA20BD686\",\"name\":\"cust_city_id\",\"dataType\":{\"type\":\"integer\",\"precision\":2,\"scale\":0},\"sourceDataType\":{\"type\":\"integer\",\"precision\":2,\"scale\":0}},{\"id\":\"65FBE44CEBD94CA9962AB893BD1587C7\",\"name\":\"call_ctr_id\",\"dataType\":{\"type\":\"integer\",\"precision\":2,\"scale\":0},\"sourceDataType\":{\"type\":\"integer\",\"precision\":2,\"scale\":0}},{\"id\":\"CB7551952BED4E5F8240493187CF5573\",\"name\":\"tot_dollar_sales\",\"dataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998},\"sourceDataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998}},{\"id\":\"577EF28D6B3949F2A1CE496FA6A88518\",\"name\":\"tot_unit_sales\",\"dataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998},\"sourceDataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998}},{\"id\":\"BA6E8EF95CAB4C0BB4B8CEE8104C6681\",\"name\":\"tot_cost\",\"dataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998},\"sourceDataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998}},{\"id\":\"B38C5BE9A7CB4DB69A4B00051440E27E\",\"name\":\"gross_dollar_sales\",\"dataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998},\"sourceDataType\":{\"type\":\"double\",\"precision\":1000,\"scale\":998}}],\"importSource\":{\"type\":\"single_table\",\"dataSourceId\":\"E93B0C144F9EAF781E3993B5C439220D\",\"namespace\":\"public\",\"tableName\":\"city_ctr_sls\",\"sql\":\"\"},\"originalSchema\":\"{\\\"type\\\":\\\"struct\\\",\\\"fields\\\":[{\\\"name\\\":\\\"cust_city_id\\\",\\\"type\\\":\\\"integer\\\",\\\"nullable\\\":true,\\\"metadata\\\":{\\\"precision\\\":5,\\\"dssType\\\":\\\"short\\\",\\\"name\\\":\\\"cust_city_id\\\",\\\"scale\\\":0}},{\\\"name\\\":\\\"call_ctr_id\\\",\\\"type\\\":\\\"integer\\\",\\\"nullable\\\":true,\\\"metadata\\\":{\\\"precision\\\":5,\\\"dssType\\\":\\\"short\\\",\\\"name\\\":\\\"call_ctr_id\\\",\\\"scale\\\":0}},{\\\"name\\\":\\\"tot_dollar_sales\\\",\\\"type\\\":\\\"double\\\",\\\"nullable\\\":true,\\\"metadata\\\":{\\\"precision\\\":1000,\\\"dssType\\\":\\\"double\\\",\\\"name\\\":\\\"tot_dollar_sales\\\",\\\"scale\\\":998}},{\\\"name\\\":\\\"tot_unit_sales\\\",\\\"type\\\":\\\"double\\\",\\\"nullable\\\":true,\\\"metadata\\\":{\\\"precision\\\":1000,\\\"dssType\\\":\\\"double\\\",\\\"name\\\":\\\"tot_unit_sales\\\",\\\"scale\\\":998}},{\\\"name\\\":\\\"tot_cost\\\",\\\"type\\\":\\\"double\\\",\\\"nullable\\\":true,\\\"metadata\\\":{\\\"precision\\\":1000,\\\"dssType\\\":\\\"double\\\",\\\"name\\\":\\\"tot_cost\\\",\\\"scale\\\":998}},{\\\"name\\\":\\\"gross_dollar_sales\\\",\\\"type\\\":\\\"double\\\",\\\"nullable\\\":true,\\\"metadata\\\":{\\\"precision\\\":1000,\\\"dssType\\\":\\\"double\\\",\\\"name\\\":\\\"gross_dollar_sales\\\",\\\"scale\\\":998}}]}\",\"id\":\"1AE7EAA7B6234415888CEA6FE71AEEB5\",\"name\":\"city_ctr_sls\",\"type\":\"source\"}]}}"
+ },
+ "attributes": [
+ {
+ "information": {
+ "objectId": "FFA2DF297AAC4EDA9F8DA28A9EC8FBBF",
+ "subType": "attribute",
+ "name": "Call Center"
+ },
+ "forms": [
+ {
+ "formCategory": {
+ "objectId": "45C11FA478E745FEA08D781CEA190FE5",
+ "subType": "attribute_form_system",
+ "name": "ID"
+ },
+ "name": "Call Center ID",
+ "dataFormat": "number",
+ "isKeyForm": true,
+ "lookupTable": {
+ "objectId": "EC92E1F465A14840A235C2910B0F9946",
+ "subType": "logical_table",
+ "name": "city_ctr_sls"
+ },
+ "expression": {
+ "text": "call_ctr_id"
+ }
+ }
+ ],
+ "nonAggregatable": false
+ },
+ {
+ "information": {
+ "objectId": "DBCA666BB6F54CF38276BA34FB16E54C",
+ "subType": "attribute",
+ "name": "Customer City"
+ },
+ "forms": [
+ {
+ "formCategory": {
+ "objectId": "45C11FA478E745FEA08D781CEA190FE5",
+ "subType": "attribute_form_system",
+ "name": "ID"
+ },
+ "name": "Customer City ID",
+ "dataFormat": "number",
+ "isKeyForm": true,
+ "lookupTable": {
+ "objectId": "EC92E1F465A14840A235C2910B0F9946",
+ "subType": "logical_table",
+ "name": "city_ctr_sls"
+ },
+ "expression": {
+ "text": "cust_city_id"
+ }
+ }
+ ],
+ "nonAggregatable": false
+ }
+ ],
+ "factMetrics": [
+ {
+ "information": {
+ "objectId": "DD7F2A07957144E689F7EB40C7DDE381",
+ "subType": "fact_metric",
+ "name": "Total Dollar Sales"
+ },
+ "expression": {
+ "text": "tot_dollar_sales"
+ },
+ "semanticRole": "fixed"
+ },
+ {
+ "information": {
+ "objectId": "A11F0A2B932641F684A66FB72F947C98",
+ "subType": "fact_metric",
+ "name": "Total Unit Sales"
+ },
+ "expression": {
+ "text": "tot_unit_sales"
+ },
+ "semanticRole": "fixed"
+ },
+ {
+ "information": {
+ "objectId": "95D2176A21A44948B54907B9EC9CE01B",
+ "subType": "fact_metric",
+ "name": "Total Cost"
+ },
+ "expression": {
+ "text": "tot_cost"
+ },
+ "semanticRole": "fixed"
+ },
+ {
+ "information": {
+ "objectId": "43965A41AA8A466C9EE5F3730A2A8692",
+ "subType": "fact_metric",
+ "name": "Gross Dollar Sales"
+ },
+ "expression": {
+ "text": "gross_dollar_sales"
+ },
+ "semanticRole": "fixed"
+ }
+ ],
+ "refreshPolicy": "replace"
+}
+```
+
+- Response Code: 200 (Success: OK)
+
+## Retrieve data model tables
+
+You can also retrieve data model tables. Parameters include pagination options such as `limit` and `offset`.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}/tables](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModelTables)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: l4l41h5dsvcaekn2gbb3h0ke5p'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/tables?offset=0&limit=-1' \
+-H 'X-MSTR-AuthToken: l4l41h5dsvcaekn2gbb3h0ke5p' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: 8cmbn319k4s8fpujoe7lnl3l4q'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C/tables?offset=0&limit=-1' \
+-H 'X-MSTR-AuthToken: l4l41h5dsvcaekn2gbb3h0ke5p' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "offset": 0,
+ "limit": -1,
+ "total": 2,
+ "tables": [
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "EC92E1F465A14840A235C2910B0F9946",
+ "subType": "logical_table",
+ "name": "city_ctr_sls"
+ }
+ },
+ {
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T06:04:55.303Z",
+ "versionId": "0C1EBE8E493E0D1CDDD1398B4FDCC44D",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "D17C13555A77481C8980AF866678855F",
+ "subType": "logical_table",
+ "name": "city_mnth_sls"
+ }
+ }
+ ]
+}
+```
+
+- Response Code: 200 (Success: OK)
diff --git a/docs/common-workflows/mosaic/manage-data-models/manage-data-models.md b/docs/common-workflows/mosaic/manage-data-models/manage-data-models.md
new file mode 100644
index 00000000..87e6c3fb
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-models/manage-data-models.md
@@ -0,0 +1,18 @@
+---
+title: Manage data models
+description: You can use REST API requests to manage data models.
+---
+
+
+
+:::tip
+
+You can try these workflows with [REST API Playground](https://www.postman.com/microstrategysdk/microstrategy-rest-api/collection/5aq5sem/strategy-rest-api-workflows).
+
+Learn more about Strategy REST API Playground [here](/docs/getting-started/playground.md).
+
+:::
+
+You can use REST API requests to manage data models.
+
+- [Retrieve a Data Model](retrieve-a-data-model.md)
diff --git a/docs/common-workflows/mosaic/manage-data-models/retrieve-a-data-model.md b/docs/common-workflows/mosaic/manage-data-models/retrieve-a-data-model.md
new file mode 100644
index 00000000..1f1b200b
--- /dev/null
+++ b/docs/common-workflows/mosaic/manage-data-models/retrieve-a-data-model.md
@@ -0,0 +1,100 @@
+---
+title: Retrieve a data model
+description: This workflow demonstrates how to retrieve a data model using REST API.
+---
+
+
+
+This workflow sample demonstrates how to retrieve a data model either with or without the changeset using the REST API.
+
+:::info
+
+Get the authorization token needed to execute the request with [POST /api/auth/login](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Authentication/postLogin).
+
+Get the project ID from [GET /api/projects](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Projects/getProjects_1).
+
+:::
+
+:::tip
+
+Changesets are used in this workflow. For information on how to create and use changesets, see [Changesets](/docs/common-workflows/modeling/changesets.md).
+
+:::
+
+You can retrieve a data model to view basic information like the data model's name, schema folder ID, and serve mode. Some additional details like enable wrangle recommendations and sampling configuration are also included.
+
+Endpoint: [GET /api/model/dataModels/\{dataModelId}](https://demo.microstrategy.com/MicroStrategyLibrary/api-docs/index.html#/Data%20Model/getDataModel)
+
+Sample Request Without Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: pk2dudliaoqh5hmv240ururl82'
+'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C' \
+-H 'X-MSTR-AuthToken: pk2dudliaoqh5hmv240ururl82' \
+-H 'X-MSTR-ProjectID: B7CA92F04B9FAE8D941C3E9B7E0CD754'
+```
+
+Sample Request With Changeset
+
+- Request Headers
+
+```http
+'Content-Type: application/json'
+'Accept: application/json'
+'X-MSTR-AuthToken: pgho7427r1e6p0tem7e677jivk'
+'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B'
+```
+
+- Curl
+
+```bash
+curl -L -X GET 'http://demo.microstrategy.com/MicroStrategyLibrary/api/model/dataModels/3A82F20B2CC849B0970B289C86D8C83C' \
+-H 'X-MSTR-MS-Changeset: 768A0AA9E94547218BA930DD4245186B' \
+-H 'X-MSTR-AuthToken: 4u8sbmsmegdpr246a1iqr3jahq'
+```
+
+Sample Response
+
+- Response Body:
+
+```json
+{
+ "information": {
+ "dateCreated": "2025-08-20T06:04:55.303Z",
+ "dateModified": "2025-08-20T08:14:31.882Z",
+ "versionId": "5A5B4B744AACDDD2F9E1FEA73CAEE06F",
+ "acg": 255,
+ "primaryLocale": "en-US",
+ "objectId": "3A82F20B2CC849B0970B289C86D8C83C",
+ "subType": "report_emma_cube",
+ "name": "City and Call Center Sales Analysis",
+ "description": "Analyze sales performance by city and call center over time."
+ },
+ "dataServeMode": "in_memory",
+ "schemaFolderId": "3567B6C7338D4CFFB2F03879C4CB831D",
+ "enableWrangleRecommendations": true,
+ "enableAutoHierarchyRelationships": true,
+ "sampling": {
+ "type": "first",
+ "rowCount": 1000
+ },
+ "partition": {
+ "mode": "automatic",
+ "number": 4
+ },
+ "autoJoin": true,
+ "readOnly": false
+}
+```
+
+- Response Code: 200 (Success: OK)
diff --git a/docs/common-workflows/mosaic/mosaic.md b/docs/common-workflows/mosaic/mosaic.md
index 9c319327..5f4351ba 100644
--- a/docs/common-workflows/mosaic/mosaic.md
+++ b/docs/common-workflows/mosaic/mosaic.md
@@ -5,4 +5,6 @@ description: This section contains workflows that utilize the REST API to handle
+Strategy Mosaic Studio is an AI based modeling tool, that streamlines data preparation, modeling, and enrichment, enabling users to transform raw data into actionable insights with ease, efficiency, and accuracy. Almost anyone can utilize Mosaic Studio's AI functionality to easily create Mosaic data models for your business's analysis and reporting needs.
+
This section contains workflows that utilize the REST API to handle Mosaic data model related workflows.
diff --git a/docs/whats-new.md b/docs/whats-new.md
index 0568aa1b..8993ef27 100644
--- a/docs/whats-new.md
+++ b/docs/whats-new.md
@@ -4,18 +4,35 @@ sidebar_label: What's new
Description: What's New in the REST API.
---
+## Strategy ONE (September 2025)
+
+- [Retrieve a Data Model](common-workflows/mosaic/manage-data-models/retrieve-a-data-model.md).
+- [Retrieve Data Model Folders](common-workflows/mosaic/manage-data-model-folders/retrieve-data-model-folders.md).
+- [Retrieve Data Model Tables](common-workflows/mosaic/manage-data-model-tables/retrieve-data-model-tables.md).
+- [Retrieve Data Model Metrics](common-workflows/mosaic/manage-data-model-metrics/retrieve-data-model-metrics.md).
+- [Retrieve a Data Model Metric Embedded Object](common-workflows/mosaic/manage-data-model-metrics/retrieve-a-data-model-metric-embedded-object.md).
+- [Retrieve Data Model Attributes](common-workflows/mosaic/manage-data-model-attributes/retrieve-data-model-attributes.md).
+- [Retrieve an Attribute's Relationships in a Data Model](common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-relationships-in-data-model.md).
+- [Retrieve Smart Attributes for an attribute in a Data Model](common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attributes-for-an-attribute-in-data-model).
+- [Retrieve Smart Attribute Templates for an attribute in a Data Model](common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attribute-templates-for-an-attribute-in-data-model).
+- [Retrieve Data Model Base Metrics](common-workflows/mosaic/manage-data-model-base-metrics/retrieve-data-model-base-metrics.md).
+- [Retrieve a Data Model Hierarchy](common-workflows/mosaic/manage-data-model-hierarchy/retrieve-a-data-model-hierarchy.md).
+- Some of the [Bot APIs](common-workflows/analytics/use-bot-api/use-bot-api.md) have been **deprecated** and will be completely unavailable in the near future.
+- Rename 'Next-Gen AI' to 'Agent'.
+- Merge 'Question with Bot Routing APIs' into 'Agent APIs'.
+
## Strategy ONE (August 2025)
- [Refresh a Data Model](common-workflows/mosaic/publish/refresh-a-data-model.md).
- [Schedule Refresh a Data Model](common-workflows/mosaic/publish/schedule-refresh-a-data-model.md).
-- [Create a Security Filter object in a Data Model](common-workflows/mosaic/manage-data-model-security-filter-objects/create-a-security-filter-object-in-data-model.md).
-- [Update a Security Filter object in a Data Model](common-workflows/mosaic/manage-data-model-security-filter-objects/update-a-security-filter-object-in-data-model.md).
-- [Retrieve a Security Filter Definition in a Data Model](common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filter-definition-in-data-model.md).
-- [Retrieve all Security Filters in a Data Model](common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-all-security-filters-in-data-model.md).
-- [Retrieve a Security Filter's Member in a Data Model](common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filters-member-in-data-model.md).
-- [Modify a Security Filter's Member in a Data Model](common-workflows/mosaic/manage-data-model-security-filter-objects/modify-a-security-filters-member-in-data-model.md).
-- [Delete a Security Filter Object in a Data Model](common-workflows/mosaic/manage-data-model-security-filter-objects/delete-a-security-filter-object-in-data-model.md).
-- [Retrieve an Attribute's Elements in a Data Model](common-workflows/mosaic/manage-data-model-attribute-objects/retrieve-an-attributes-elements-in-data-model.md).
+- [Create a Security Filter object in a Data Model](common-workflows/mosaic/manage-data-model-security-filters/create-a-security-filter-object-in-data-model.md).
+- [Update a Security Filter object in a Data Model](common-workflows/mosaic/manage-data-model-security-filters/update-a-security-filter-object-in-data-model.md).
+- [Retrieve a Security Filter Definition in a Data Model](common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filter-definition-in-data-model.md).
+- [Retrieve all Security Filters in a Data Model](common-workflows/mosaic/manage-data-model-security-filters/retrieve-all-security-filters-in-data-model.md).
+- [Retrieve a Security Filter's Member in a Data Model](common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filters-member-in-data-model.md).
+- [Modify a Security Filter's Member in a Data Model](common-workflows/mosaic/manage-data-model-security-filters/modify-a-security-filters-member-in-data-model.md).
+- [Delete a Security Filter Object in a Data Model](common-workflows/mosaic/manage-data-model-security-filters/delete-a-security-filter-object-in-data-model.md).
+- [Retrieve an Attribute's Elements in a Data Model](common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-elements-in-data-model.md).
- [Get ACL of an object in a Data Model](common-workflows/mosaic/manage-data-model-object-acl/retrieve-a-data-model-object-acl.md).
- [Update ACL of an object in a Data Model](common-workflows/mosaic/manage-data-model-object-acl/update-a-data-model-object-acl.md).
@@ -26,12 +43,12 @@ Description: What's New in the REST API.
## Strategy ONE (June 2025)
-- [Next-Gen AI Image Support](common-workflows/analytics/auto-bot-api/auto-bot-api.md). Request and retrieve images in answer from Next-Gen AI.
+- [Auto Agent APIs Image Support](common-workflows/analytics/auto-bot-api/auto-bot-api.md). Request and retrieve images in answer from Auto Agent APIs.
- [Project Duplication](common-workflows/administration/project-duplication/project-duplication.md). Duplicate a project within the same environment.
## Strategy ONE (March 2025)
-- [Next-Gen AI](common-workflows/analytics/auto-bot-api/auto-bot-api.md). Ask questions, retrieve answers, get historical chat messages and suggested questions from Next-Gen AI.
+- [Auto Agent APIs](common-workflows/analytics/auto-bot-api/auto-bot-api.md). Ask questions, retrieve answers, get historical chat messages and suggested questions from Auto Agent APIs.
## MicroStrategy ONE (September 2024)
@@ -39,7 +56,7 @@ Description: What's New in the REST API.
## MicroStrategy ONE (June 2024)
-- [Question with Bot Routing APIs](common-workflows/analytics/question-with-bot-routing-api/question-api.md). Leverage bot routing to ensure user questions are directed to the most appropriate bot with no need to manually switch bots.
+- [Question with Bot Routing APIs](common-workflows/analytics/auto-bot-api/auto-bot-api.md). Leverage bot routing to ensure user questions are directed to the most appropriate bot with no need to manually switch bots.
## MicroStrategy ONE (March 2024)
diff --git a/sidebars.js b/sidebars.js
index daa70480..71198244 100644
--- a/sidebars.js
+++ b/sidebars.js
@@ -416,7 +416,7 @@ const sidebars = {
type: "doc",
id: "common-workflows/analytics/auto-bot-api/auto-bot-api",
},
- label: "Next-Gen AI",
+ label: "Agent APIs",
items: [
"common-workflows/analytics/auto-bot-api/post-question",
"common-workflows/analytics/auto-bot-api/get-question-by-id",
@@ -443,20 +443,6 @@ const sidebars = {
"common-workflows/analytics/use-bot-api/delete-a-bot-instance",
],
},
- {
- type: "category",
- link: {
- type: "doc",
- id: "common-workflows/analytics/question-with-bot-routing-api/question-api",
- },
- label: "Question with Bot Routing APIs ",
- items: [
- "common-workflows/analytics/question-with-bot-routing-api/ask-question-to-bots-in-the-application",
- "common-workflows/analytics/question-with-bot-routing-api/get-question-from-bots-in-the-application",
- "common-workflows/analytics/question-with-bot-routing-api/get-image-of-answer",
- "common-workflows/analytics/question-with-bot-routing-api/ask-suggested-question-to-bots-in-the-application",
- ],
- },
],
},
{
@@ -1097,42 +1083,111 @@ const sidebars = {
items: [
{
type: "category",
- label: "Publish data models",
+ label: "Manage data models",
link: {
type: "doc",
- id: "common-workflows/mosaic/publish/manage-data-model-publish",
+ id: "common-workflows/mosaic/manage-data-models/manage-data-models",
+ },
+ items: ["common-workflows/mosaic/manage-data-models/retrieve-a-data-model"],
+ },
+ {
+ type: "category",
+ label: "Manage data model tables",
+ link: {
+ type: "doc",
+ id: "common-workflows/mosaic/manage-data-model-tables/manage-data-model-tables",
},
items: [
- "common-workflows/mosaic/publish/refresh-a-data-model",
- "common-workflows/mosaic/publish/schedule-refresh-a-data-model",
+ "common-workflows/mosaic/manage-data-model-tables/retrieve-data-model-tables",
+ ],
+ },
+ {
+ type: "category",
+ label: "Manage data model base metrics",
+ link: {
+ type: "doc",
+ id: "common-workflows/mosaic/manage-data-model-base-metrics/manage-data-model-base-metrics",
+ },
+ items: [
+ "common-workflows/mosaic/manage-data-model-base-metrics/retrieve-data-model-base-metrics",
+ ],
+ },
+ {
+ type: "category",
+ label: "Manage data model metrics",
+ link: {
+ type: "doc",
+ id: "common-workflows/mosaic/manage-data-model-metrics/manage-data-model-metrics",
+ },
+ items: [
+ "common-workflows/mosaic/manage-data-model-metrics/retrieve-data-model-metrics",
+ "common-workflows/mosaic/manage-data-model-metrics/retrieve-a-data-model-metric-embedded-object",
+ ],
+ },
+ {
+ type: "category",
+ label: "Manage data model attributes",
+ link: {
+ type: "doc",
+ id: "common-workflows/mosaic/manage-data-model-attributes/manage-data-model-attributes",
+ },
+ items: [
+ "common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-elements-in-data-model",
+ "common-workflows/mosaic/manage-data-model-attributes/retrieve-data-model-attributes",
+ "common-workflows/mosaic/manage-data-model-attributes/retrieve-an-attributes-relationships-in-data-model",
+ "common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attributes-for-an-attribute-in-data-model",
+ "common-workflows/mosaic/manage-data-model-attributes/retrieve-smart-attribute-templates-for-an-attribute-in-data-model",
],
},
{
type: "category",
- label: "Manage data model security filter objects",
+ label: "Manage data model hierarchy",
link: {
type: "doc",
- id: "common-workflows/mosaic/manage-data-model-security-filter-objects/manage-data-model-security-filter-objects",
+ id: "common-workflows/mosaic/manage-data-model-hierarchy/manage-data-model-hierarchy",
},
items: [
- "common-workflows/mosaic/manage-data-model-security-filter-objects/create-a-security-filter-object-in-data-model",
- "common-workflows/mosaic/manage-data-model-security-filter-objects/update-a-security-filter-object-in-data-model",
- "common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filter-definition-in-data-model",
- "common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-all-security-filters-in-data-model",
- "common-workflows/mosaic/manage-data-model-security-filter-objects/retrieve-a-security-filters-member-in-data-model",
- "common-workflows/mosaic/manage-data-model-security-filter-objects/modify-a-security-filters-member-in-data-model",
- "common-workflows/mosaic/manage-data-model-security-filter-objects/delete-a-security-filter-object-in-data-model",
+ "common-workflows/mosaic/manage-data-model-hierarchy/retrieve-a-data-model-hierarchy",
],
},
{
type: "category",
- label: "Manage data model attributes objects",
+ label: "Manage data model folders",
link: {
type: "doc",
- id: "common-workflows/mosaic/manage-data-model-attribute-objects/manage-data-model-attribute-objects",
+ id: "common-workflows/mosaic/manage-data-model-folders/manage-data-model-folders",
},
items: [
- "common-workflows/mosaic/manage-data-model-attribute-objects/retrieve-an-attributes-elements-in-data-model",
+ "common-workflows/mosaic/manage-data-model-folders/retrieve-data-model-folders",
+ ],
+ },
+ {
+ type: "category",
+ label: "Manage data model security filters",
+ link: {
+ type: "doc",
+ id: "common-workflows/mosaic/manage-data-model-security-filters/manage-data-model-security-filters",
+ },
+ items: [
+ "common-workflows/mosaic/manage-data-model-security-filters/create-a-security-filter-object-in-data-model",
+ "common-workflows/mosaic/manage-data-model-security-filters/update-a-security-filter-object-in-data-model",
+ "common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filter-definition-in-data-model",
+ "common-workflows/mosaic/manage-data-model-security-filters/retrieve-all-security-filters-in-data-model",
+ "common-workflows/mosaic/manage-data-model-security-filters/retrieve-a-security-filters-member-in-data-model",
+ "common-workflows/mosaic/manage-data-model-security-filters/modify-a-security-filters-member-in-data-model",
+ "common-workflows/mosaic/manage-data-model-security-filters/delete-a-security-filter-object-in-data-model",
+ ],
+ },
+ {
+ type: "category",
+ label: "Publish data models",
+ link: {
+ type: "doc",
+ id: "common-workflows/mosaic/publish/manage-data-model-publish",
+ },
+ items: [
+ "common-workflows/mosaic/publish/refresh-a-data-model",
+ "common-workflows/mosaic/publish/schedule-refresh-a-data-model",
],
},
{