{
"swagger": "2.0",
"info": {
"version": "v1.0",
"title": "Power BI Client"
},
"host": "api.powerbi.com",
"schemes": [
"https"
],
"consumes": [],
"produces": [],
"paths": {
"/v1.0/myorg/datasets": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of datasets from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDatasets",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasets"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"PushDatasets"
],
"summary": "Creates a new dataset on **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThis API call only supports **push datasets**. For a complete list of limitations, see [Push datasets limitations](/power-bi/developer/embedded/push-datasets-limitations).\n
",
"operationId": "Datasets_PostDataset",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dataset",
"in": "body",
"description": "Dataset definition to create",
"required": true,
"schema": {
"$ref": "#/definitions/CreateDatasetRequest"
}
},
{
"name": "defaultRetentionPolicy",
"description": "The default retention policy",
"in": "query",
"required": false,
"type": "string",
"enum": [
"None",
"basicFIFO"
],
"x-ms-enum": {
"name": "DefaultRetentionPolicy",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "None"
},
{
"value": "basicFIFO",
"description": "basicFIFO"
}
]
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/Dataset"
}
},
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Dataset"
}
}
},
"x-ms-examples": {
"Push example": {
"parameters": {
"defaultRetentionPolicy": "basicFIFO",
"dataset": {
"name": "SalesMarketing",
"defaultMode": "Push",
"tables": [
{
"name": "Product",
"columns": [
{
"name": "ProductID",
"dataType": "Int64"
},
{
"name": "Name",
"dataType": "string"
},
{
"name": "Category",
"dataType": "string"
},
{
"name": "IsCompete",
"dataType": "bool"
},
{
"name": "ManufacturedOn",
"dataType": "DateTime"
},
{
"name": "Sales",
"dataType": "Int64",
"formatString": "Currency"
}
]
}
]
}
},
"responses": {
"201": {
"body": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"defaultRetentionPolicy": "basicFIFO"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDataset",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dataset"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": true,
"isEffectiveIdentityRolesRequired": true,
"isOnPremGatewayRequired": false
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Datasets"
],
"summary": "Updates the properties for the specified dataset from **My workspace**.",
"description": "\n## Permissions\n\nThe user must be the dataset owner.\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_UpdateDataset",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "updateDatasetRequest",
"in": "body",
"description": "Update dataset request parameters",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateDatasetRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example of changing the dataset storage mode to support large datasets": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasetRequest": {
"targetStorageMode": "PremiumFiles"
}
},
"responses": {
"200": {}
}
},
"Example of changing the dataset storage mode to support small datasets": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasetRequest": {
"targetStorageMode": "Abf"
}
},
"responses": {
"200": {}
}
},
"Example of updating scale-out settings of a dataset": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasetRequest": {
"queryScaleOutSettings": {
"autoSyncReadOnlyReplicas": false,
"maxReadOnlyReplicas": -1
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Datasets"
],
"summary": "Deletes the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_DeleteDataset",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/executeQueries": {
"post": {
"tags": [
"Datasets"
],
"summary": "Executes Data Analysis Expressions (DAX) queries against the provided dataset. The dataset must reside in **My workspace** or another workspace.",
"description": "\nDAX query errors will result in:\n\n- A response error, such as `DAX query failure`.\n- A failure HTTP status code (400).\n\nA query that requests more than one table, or more than the allowed number of table rows, will result in:\n\n- Limited data being returned.\n- A response error, such as `More than one result table in a query` or `More than {allowed number} rows in a query result`.\n- A successful HTTP status code (200).\n\nColumns that are fully qualified in the query will be returned with a fully qualified name, for example, `MyTable[MyColumn]`. Columns that are renamed or created in the query will be returned within square bracket, for example, `[MyNewColumn]`.\n\n## Permissions\n\nThe tenant setting **Dataset Execute Queries REST API**, found under **Integration settings**, must be enabled.\n\nThe user must have dataset read and build permissions. For more information, see [Manage dataset access permissions](/power-bi/connect-data/service-datasets-manage-access-permissions).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\n- Datasets that are hosted in Azure Analysis Services or that have a live connection to an on-premises Azure Analysis Services model aren't supported.\n- One query per API call.\n- One table request per query.\n- Maximum of 100,000 rows or 1,000,000 values per query (whichever is hit first). For example if you query for 5 columns, you can get back max 100,000 rows. If you query for 20 columns, you can get back max 50,000 rows (1 million divided by 20).\n- Maximum of 15MB of data per query. Once 15MB is exceeded, the current row will be completed but no additional rows will be written.\n- There's a limit of 120 query requests per minute per user, regardless of the dataset that's queried.\n- To use Service Principals, make sure the admin tenant setting [_Allow service principals to use Power BI APIs_](/power-bi/admin/service-admin-portal-developer#allow-service-principals-to-use-power-bi-apis) under _Developer settings_ is enabled. However, regardless of the admin tenant setting, Service Principals aren't supported for datasets with RLS per [RLS limitations](/power-bi/admin/service-admin-rls#considerations-and-limitations) or datasets with SSO enabled.\n- Only DAX queries are supported at this time. MDX and DMV queries are not supported. \n
",
"operationId": "Datasets_ExecuteQueries",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "requestMessage",
"description": "The request message",
"required": true,
"schema": {
"$ref": "#/definitions/DatasetExecuteQueriesRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetExecuteQueriesResponse"
}
}
},
"deprecated": false,
"x-ms-examples": {
"Execute queries example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"requestMessage": {
"queries": [
{
"query": "EVALUATE VALUES(MyTable)"
}
],
"serializerSettings": {
"includeNulls": true
},
"impersonatedUserName": "someuser@mycompany.com"
}
},
"responses": {
"200": {
"body": {
"results": [
{
"tables": [
{
"rows": [
{
"MyTable[Year]": 2010,
"MyTable[Quarter]": "Q1"
},
{
"MyTable[Year]": 2010,
"MyTable[Quarter]": "Q2"
},
{
"MyTable[Year]": 2011,
"MyTable[Quarter]": "Q1"
}
]
}
]
}
]
}
}
}
}
}
}
},
"/v1.0/myorg/datasets/{datasetId}/tables": {
"get": {
"tags": [
"PushDatasets"
],
"summary": "Returns a list of tables within the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nThis API call only supports **push datasets**. For a complete list of limitations, see [Push datasets limitations](/power-bi/developer/embedded/push-datasets-limitations).\n
",
"operationId": "Datasets_GetTables",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tables"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/tables/{tableName}": {
"put": {
"tags": [
"PushDatasets"
],
"summary": "Updates the metadata and schema for the specified table within the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThis API call only supports **push datasets**.\n
",
"operationId": "Datasets_PutTable",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "tableName",
"in": "path",
"description": "The table name",
"required": true,
"type": "string"
},
{
"name": "requestMessage",
"in": "body",
"description": "Table name and columns to update existing table",
"required": true,
"schema": {
"$ref": "#/definitions/Table"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Table"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"tableName": "Product",
"requestMessage": {
"name": "Product",
"columns": [
{
"name": "ProductID",
"dataType": "Int64"
},
{
"name": "Name",
"dataType": "string"
},
{
"name": "Category",
"dataType": "string"
},
{
"name": "IsCompete",
"dataType": "bool"
},
{
"name": "ManufacturedOn",
"dataType": "DateTime"
},
{
"name": "NewColumn",
"dataType": "string"
}
]
}
},
"responses": {
"200": {
"body": {
"name": "Product"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/tables/{tableName}/rows": {
"post": {
"tags": [
"PushDatasets"
],
"summary": "Adds new data rows to the specified table within the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- This API call only supports **push datasets**.\n- See [Power BI REST API limitations](/power-bi/developer/automation/api-rest-api-limitations).\n
",
"operationId": "Datasets_PostRows",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"in": "path",
"required": true,
"description": "The dataset ID",
"type": "string"
},
{
"name": "tableName",
"in": "path",
"description": "The table name",
"required": true,
"type": "string"
},
{
"name": "requestMessage",
"in": "body",
"description": "The request message",
"required": true,
"schema": {
"$ref": "#/definitions/PostRowsRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"tableName": "Product",
"requestMessage": {
"rows": [
{
"ProductID": 1,
"Name": "Adjustable Race",
"Category": "Components",
"IsCompete": true,
"ManufacturedOn": "07/30/2014"
},
{
"ProductID": 2,
"Name": "LL Crankarm",
"Category": "Components",
"IsCompete": true,
"ManufacturedOn": "07/30/2014"
},
{
"ProductID": 3,
"Name": "HL Mountain Frame - Silver",
"Category": "Bikes",
"IsCompete": true,
"ManufacturedOn": "07/30/2014"
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"PushDatasets"
],
"summary": "Deletes all rows from the specified table within the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThis API call only supports **push datasets**. For a complete list of limitations, see [Push datasets limitations](/power-bi/developer/embedded/push-datasets-limitations).\n
",
"operationId": "Datasets_DeleteRows",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "tableName",
"in": "path",
"description": "The table name",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"tableName": "Product"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/refreshes": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the refresh history for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nOneDrive refresh history isn't returned.\n\nThere are always between 20–60 available refresh history entries for each dataset, depending on the number of refreshes in the last 3 days. \nThe most recent 60 are kept if they are all less than 3 days old. \nEntries more than 3 days old are deleted when there are more than 20 entries.\n
",
"operationId": "Datasets_GetRefreshHistory",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "$top",
"description": "The requested number of entries in the refresh history. If not provided, the default is the last available 60 entries.",
"in": "query",
"required": false,
"type": "integer",
"minimum": 1
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshes"
}
}
},
"x-ms-examples": {
"In-progress refresh example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"$top": 1
},
"responses": {
"200": {
"body": {
"value": [
{
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"status": "Unknown",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
}
]
}
}
}
},
"Completed refresh example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"$top": 1
},
"responses": {
"200": {
"body": {
"value": [
{
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1",
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:40.153Z",
"type": "Data"
},
{
"attemptId": 1,
"startTime": "2017-06-13T09:31:40.156Z",
"endTime": "2017-06-13T09:31:43.153Z",
"type": "Query"
}
]
}
]
}
}
}
},
"Failed refresh example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"$top": 1
},
"responses": {
"200": {
"body": {
"value": [
{
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"serviceExceptionJson": "{\"errorCode\":\"ModelRefreshFailed_CredentialsNotSpecified\"}",
"status": "Failed",
"requestId": "11bf290a-346b-48b7-8973-c5df149337ff",
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"serviceExceptionJson": "{\"errorCode\":\"ModelRefreshFailed_CredentialsNotSpecified\"}",
"type": "Data"
}
]
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Datasets"
],
"summary": "Triggers a refresh for the specified dataset from **My workspace**. An [enhanced refresh](/power-bi/connect-data/asynchronous-refresh) is triggered only if a request payload other than `notifyOption` is set.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- For Shared capacities, a maximum of eight requests per day, including refreshes executed by using scheduled refresh, can be initiated.\n- For Shared capacities, only `notifyOption` can be specified in the request body.\n- Enhanced refresh is not supported for shared capacities.\n- For enhanced refresh, `notifyOption` is not required and must be excluded from the request body. However, one or more parameters other than `notifyOption` are required.\n- For Premium capacities, the maximum requests per day is only limited by the available resources in the capacity. If available resources are overloaded, refreshes are throttled until the load is reduced. The refresh will fail if throttling exceeds 1 hour.\n
",
"operationId": "Datasets_RefreshDataset",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "datasetRefreshRequest",
"in": "body",
"required": false,
"schema": {
"$ref": "#/definitions/DatasetRefreshRequest"
}
}
],
"responses": {
"202": {
"description": "Accepted",
"headers": {
"x-ms-request-id": {
"description": "The `refreshId` for [getting refresh execution details](#/operationId/Datasets_GetRefreshExecutionDetails) or [cancelling refresh](/rest/api/power-bi/datasets/cancel-refresh). This would be returned only if any request payload except `notifyOption` is set.",
"type": "string",
"format": "uuid"
},
"Location": {
"description": "The full URI for [getting refresh execution details](#/operationId/Datasets_GetRefreshExecutionDetails) or [cancelling refresh](/rest/api/power-bi/datasets/cancel-refresh). This would be returned only if any request payload except `notifyOption` is set.",
"type": "string",
"format": "url"
}
}
}
},
"x-ms-examples": {
"Example of refreshing a dataset": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"refreshRequest": {
"notifyOption": "MailOnFailure",
"retryCount": 3
}
},
"responses": {
"202": {
"headers": {
"x-ms-request-id": "03f22bb5-2e98-4ae8-8113-329bec3987b1",
"Location": "https://api.powerbi.com/v1.0/myorg/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229/refreshes/03f22bb5-2e98-4ae8-8113-329bec3987b1"
}
}
}
},
"Example of refreshing one partition": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetRefreshRequest": {
"type": "full",
"commitMode": "transactional",
"objects": [
{
"table": "Customer",
"partition": "Robert"
}
],
"applyRefreshPolicy": "false"
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/refreshes/{refreshId}": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns execution details of an [enhanced refresh operation](/power-bi/connect-data/asynchronous-refresh) for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetRefreshExecutionDetails",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshId",
"description": "The refresh ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK (this response is returned when the refresh operation has completed or failed)",
"schema": {
"$ref": "#/definitions/DatasetRefreshDetail"
}
},
"202": {
"description": "Accepted (this response is returned when the refresh operation is still in progress)",
"schema": {
"$ref": "#/definitions/DatasetRefreshDetail"
}
}
},
"x-ms-examples": {
"In progress refresh example": {
"parameters": {
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "630110f5-8f93-49c2-afee-bfc87072460c"
},
"responses": {
"202": {
"body": {
"startTime": "2021-12-14T03:46:04.833",
"type": "Full",
"commitMode": "Transactional",
"status": "Unknown",
"extendedStatus": "NotStarted",
"currentRefreshType": "Full",
"numberOfAttempts": 0
}
}
}
},
"Completed refresh example": {
"parameters": {
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "87f31ef7-1e3a-4006-9b0b-191693e79e9e"
},
"responses": {
"200": {
"body": {
"startTime": "2021-12-10T08:40:31.57",
"endTime": "2021-12-10T08:40:43.87",
"type": "Full",
"commitMode": "Transactional",
"status": "Completed",
"extendedStatus": "Completed",
"currentRefreshType": "Full",
"numberOfAttempts": 0,
"objects": [
{
"table": "DateTableTemplate_78e78207-b3fb-41b5-8b95-e5efca989067",
"partition": "DateTableTemplate_78e78207-b3fb-41b5-8b95-e5efca989067-ae306fb4-3b7e-4a41-824d-cb3b452fedfc",
"status": "Completed"
},
{
"table": "LocalDateTable_e9d8a66b-4018-4d16-be8c-402b2037c051",
"partition": "LocalDateTable_e9d8a66b-4018-4d16-be8c-402b2037c051-59bc07f8-85c9-456a-ad36-18e1de4d77ed",
"status": "Completed"
},
{
"table": "LocalDateTable_55935f6b-04d1-4cfe-8856-ed9f9e73ab2e",
"partition": "LocalDateTable_55935f6b-04d1-4cfe-8856-ed9f9e73ab2e-d95ae7f7-19c9-48a8-9c16-fcab26558bc2",
"status": "Completed"
},
{
"table": "LocalDateTable_ff25f80e-eb04-4229-986d-b40223c04f1c",
"partition": "LocalDateTable_ff25f80e-eb04-4229-986d-b40223c04f1c-6606fc4c-4cda-49e1-8acd-e55a6ec36cb3",
"status": "Completed"
},
{
"table": "DimCurrency",
"partition": "DimCurrency-e5524cc4-a898-433b-91aa-c001b9a6d676",
"status": "Completed"
},
{
"table": "DimCustomer",
"partition": "DimCustomer-a31bbd93-e20a-4dee-a33c-7afa27785953",
"status": "Completed"
},
{
"table": "LocalDateTable_fa65a206-f320-4d5d-abcc-1dc0f051ca7d",
"partition": "LocalDateTable_fa65a206-f320-4d5d-abcc-1dc0f051ca7d-06a48a0a-a32b-48a3-b113-924aafd6363c",
"status": "Completed"
},
{
"table": "LocalDateTable_78a4e1b7-a2e5-4bbf-ab68-7c87961b68a2",
"partition": "LocalDateTable_78a4e1b7-a2e5-4bbf-ab68-7c87961b68a2-5b3ba715-7c84-4e52-b310-485b93cfbe6d",
"status": "Completed"
},
{
"table": "DimDate",
"partition": "DimDate-62e2f91b-53e5-4ed3-8618-fec74dba5e0d",
"status": "Completed"
},
{
"table": "LocalDateTable_e72c294f-0a06-4051-b943-e6bf8389e2c3",
"partition": "LocalDateTable_e72c294f-0a06-4051-b943-e6bf8389e2c3-891a0e68-d414-4ba3-9c4b-e6f1ec73d4f3",
"status": "Completed"
},
{
"table": "DimProduct",
"partition": "DimProduct-3d07cc89-2bd7-4a98-bb37-3368c1562f98",
"status": "Completed"
},
{
"table": "LocalDateTable_e37e4431-8c1a-449c-8796-b704df200a92",
"partition": "LocalDateTable_e37e4431-8c1a-449c-8796-b704df200a92-8596ebb8-418f-4e50-a921-dac88c6f1339",
"status": "Completed"
},
{
"table": "LocalDateTable_73faffeb-a0c7-4ea1-83dc-530823b0fea0",
"partition": "LocalDateTable_73faffeb-a0c7-4ea1-83dc-530823b0fea0-13795c4e-708f-4ddc-8ea3-5a2f39ae2253",
"status": "Completed"
},
{
"table": "DimPromotion",
"partition": "DimPromotion-21e6c333-430e-4350-8c94-cdceb362c4c7",
"status": "Completed"
},
{
"table": "LocalDateTable_9c19746b-db7d-4b7e-b95d-c66e4b8fefc8",
"partition": "LocalDateTable_9c19746b-db7d-4b7e-b95d-c66e4b8fefc8-395de144-ad53-41c0-9ec0-68bab6158d99",
"status": "Completed"
},
{
"table": "LocalDateTable_d96435dd-6110-4246-996c-616c96125e71",
"partition": "LocalDateTable_d96435dd-6110-4246-996c-616c96125e71-891737ee-c46c-4b9f-bfa8-e4555004e20f",
"status": "Completed"
},
{
"table": "DimSalesTerritory",
"partition": "DimSalesTerritory-6d88f938-13d5-49f8-899c-d11b3d346ad5",
"status": "Completed"
},
{
"table": "FactInternetSales",
"status": "Completed"
}
],
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2021-12-10T08:40:31.57",
"endTime": "2021-12-10T08:40:43.87",
"type": "Data"
}
]
}
}
}
},
"Failed refresh example": {
"parameters": {
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "351f7113-59bb-4e5e-8c1e-e15ae7414121"
},
"responses": {
"200": {
"body": {
"startTime": "2021-12-10T08:39:28.517",
"endTime": "2021-12-10T08:39:30.04",
"type": "Full",
"commitMode": "PartialBatch",
"status": "Failed",
"extendedStatus": "Failed",
"currentRefreshType": "Full",
"numberOfAttempts": 0,
"messages": [
{
"message": "RefreshApiRequest for table refresh using refresh policy must have the property 'CommitMode' = 'Transactional' instead of 'PartialBatch'.",
"type": "Error"
}
],
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2021-12-10T08:39:28.517",
"endTime": "2021-12-10T08:39:30.04",
"serviceExceptionJson": "{\"errorCode\":\"ModelRefresh_ShortMessage_ProcessingError\",\"errorDescription\":\"0xC112001C: Expression.Error: Forced Error. . The exception was raised by the IDbCommand interface.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\\n0xC11C0006: The current operation was cancelled because another operation in the transaction failed.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\"}",
"type": "Data"
}
]
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Datasets"
],
"summary": "Cancels the specified refresh operation for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_CancelRefresh",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshId",
"description": "The refresh ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "87f31ef7-1e3a-4006-9b0b-191693e79e9e"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/refreshSchedule": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the refresh schedule for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetRefreshSchedule",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/RefreshSchedule"
}
}
},
"x-ms-examples": {
"Refresh schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Datasets"
],
"summary": "Updates the refresh schedule for the specified dataset from **My workspace**.",
"description": "\nA request that disables the refresh schedule should contain no other changes.\n\nAt least one day must be specified. If no times are specified, then Power BI will use a default single time per day.\n\n## Permissions\n\nThe user must be the dataset owner.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThe limit on the number of time slots per day depends on whether a [Premium](/power-bi/admin/service-premium-what-is) or Shared capacity is used.\n
",
"operationId": "Datasets_UpdateRefreshSchedule",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "datasetModelRefreshScheduleRequest",
"description": "Update Refresh Schedule parameters, by specifying all or some of the parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/RefreshScheduleRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Change the notification option of a refresh schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"notifyOption": "NoNotification"
}
}
},
"responses": {
"200": {}
}
},
"Change the days and times of a refresh schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"days": [
"Sunday",
"Tuesday",
"Friday",
"Saturday"
],
"times": [
"07:00",
"11:30",
"16:00",
"23:30"
],
"localTimeZoneId": "UTC"
}
}
},
"responses": {
"200": {}
}
},
"Update the times of a refresh schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"times": [
"08:00",
"16:00"
]
}
}
},
"responses": {
"200": {}
}
},
"Disable a scheduled refresh example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"enabled": false
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/directQueryRefreshSchedule": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the refresh schedule for a specified [DirectQuery](/power-bi/connect-data/desktop-directquery-about) or [LiveConnection](/power-bi/connect-data/desktop-directquery-about#live-connections) dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDirectQueryRefreshSchedule",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DirectQueryRefreshSchedule"
}
}
},
"x-ms-examples": {
"Days and times schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"localTimeZoneId": "UTC"
}
}
}
},
"Frequency schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"frequency": 15,
"days": [],
"times": [],
"localTimeZoneId": "UTC"
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Datasets"
],
"summary": "Updates the refresh schedule for a specified [DirectQuery](/power-bi/connect-data/desktop-directquery-about) or [LiveConnection](/power-bi/connect-data/desktop-directquery-about#live-connections) dataset from **My workspace**.",
"description": "\nA request should contain either a set of days and times *or* a valid frequency, but not both. If you choose a set of days without specifying any times, then Power BI will use a default single time per day. Setting the frequency will automatically overwrite the days and times setting.\n\n## Permissions\n\nThe user must be the dataset owner.\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_UpdateDirectQueryRefreshSchedule",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "datasetDQRefreshScheduleRequest",
"description": "Patch DirectQuery or LiveConnection Refresh Schedule parameters, by specifying all or some of the parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/DirectQueryRefreshScheduleRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Set a frequency based schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetDQRefreshScheduleRequest": {
"value": {
"frequency": 30
}
}
},
"responses": {
"200": {}
}
},
"Set a days and times based schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetDQRefreshScheduleRequest": {
"value": {
"days": [
"Sunday",
"Tuesday",
"Friday",
"Saturday"
],
"times": [
"07:00",
"11:30",
"16:00",
"23:30"
],
"localTimeZoneId": "UTC"
}
}
},
"responses": {
"200": {}
}
},
"Update the times of a days and times based schedule example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetDQRefreshScheduleRequest": {
"value": {
"times": [
"07:00",
"16:30",
"23:30"
]
}
}
},
"responses": {
"200": {}
}
},
"Disable a scheduled refresh example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetDQRefreshScheduleRequest": {
"value": {
"enabled": false
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/parameters": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of parameters for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n\n## Limitations\n\n- Datasets with SQL, Oracle, Teradata, and SAP HANA [DirectQuery](/power-bi/connect-data/desktop-directquery-about) connections aren't supported.\n- Datasets created or modified using the public [XMLA endpoint](/power-bi/admin/service-premium-connect-tools) aren't supported.\n
",
"operationId": "Datasets_GetParameters",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MashupParameters"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"name": "ServerName",
"type": "Text",
"isRequired": true,
"currentValue": "MyTest.database.windows.net"
},
{
"name": "DatabaseName",
"type": "Text",
"isRequired": true,
"currentValue": "MyTestDB"
},
{
"name": "FromDate",
"type": "DateTime",
"isRequired": true,
"currentValue": "2/8/2002 12:00:00 AM"
},
{
"name": "FilterBlanks",
"type": "Logical",
"isRequired": true,
"currentValue": "TRUE"
},
{
"name": "MaxId",
"type": "Number",
"isRequired": true,
"currentValue": "77"
},
{
"name": "AnyParam",
"type": "Any",
"isRequired": true,
"currentValue": "uu63"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/Default.UpdateParameters": {
"post": {
"tags": [
"Datasets"
],
"summary": "Updates the parameters values for the specified dataset from **My workspace**.",
"description": "\n> [!NOTE]\n> We recommend using [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata) with this API call.\n\n> [!IMPORTANT]\n>\n> - If you're using **enhanced dataset metadata**, refresh the dataset to apply the new parameter values.\n> - If you're not using **enhanced dataset metadata**, wait 30 minutes for the update data sources operation to complete, and then refresh the dataset.\n\n## Permissions\n\nThe user must be the dataset owner.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- Datasets created or modified using the public [XMLA endpoint](/power-bi/admin/service-premium-connect-tools) aren't supported. To make changes to those datasets, the admin must use the Azure Analysis Services client library for Tabular Object Model.\n- [DirectQuery](/power-bi/connect-data/desktop-directquery-about) connections are only supported with [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata).\n- Datasets with Azure Analysis Services live connections aren't supported.\n- Maximum of 100 parameters per request.\n- All specified parameters must exist in the dataset.\n- Parameters values should be of the expected type.\n- The parameter list can't be empty or include duplicate parameters.\n- Parameters names are case-sensitive.\n- Parameter `IsRequired` must have a non-empty value.\n- The parameter types `Any` and `Binary` can't be updated.\n
",
"operationId": "Datasets_UpdateParameters",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "updateMashupParametersRequest",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateMashupParametersRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateMashupParametersRequest": {
"updateDetails": [
{
"name": "DatabaseName",
"newValue": "NewDB"
},
{
"name": "MaxId",
"newValue": "5678"
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/datasources": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of data sources for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDatasources",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasources"
}
}
},
"x-ms-examples": {
"Analysis Services example": {
"parameters": {},
"responses": {
"200": {
"body": {
"@odata.context": "http://api.powerbi.com/v1.0/myorg/groups/222f0f33-3abc-4a57-9f98-ff01bd2aaabb/$metadata#datasources",
"value": [
{
"datasourceType": "AnalysisServices",
"connectionDetails": {
"server": "My-As-Server",
"database": "My-As-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"SQL example": {
"parameters": {},
"responses": {
"200": {
"body": {
"@odata.context": "http://api.powerbi.com/v1.0/myorg/groups/222f0f33-3abc-4a57-9f98-ff01bd2aaabb/$metadata#datasources",
"value": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "My-As-Server",
"database": "My-As-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"Excel example": {
"parameters": {},
"responses": {
"200": {
"body": {
"@odata.context": "http://api.powerbi.com/v1.0/myorg/groups/222f0f33-3abc-4a57-9f98-ff01bd2aaabb/$metadata#datasources",
"value": [
{
"datasourceType": "File",
"connectionDetails": {
"path": "c:\\users\\username\\documents\\orders1.xlsx"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"OData example": {
"parameters": {},
"responses": {
"200": {
"body": {
"@odata.context": "http://api.powerbi.com/v1.0/myorg/groups/222f0f33-3abc-4a57-9f98-ff01bd2aaabb/$metadata#datasources",
"value": [
{
"datasourceType": "OData",
"connectionDetails": {
"url": "http://services.odata.org/MyOdata/MyOdata.svc"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"SharePoint example": {
"parameters": {},
"responses": {
"200": {
"body": {
"@odata.context": "http://api.powerbi.com/v1.0/myorg/groups/222f0f33-3abc-4a57-9f98-ff01bd2aaabb/$metadata#datasources",
"value": [
{
"datasourceType": "SharePointList",
"connectionDetails": {
"url": "https://microsoft.sharepoint.com/hello/myproj/"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"SAP HANA example": {
"parameters": {},
"responses": {
"200": {
"@odata.context": "http://api.powerbi.com/v1.0/myorg/groups/222f0f33-3abc-4a57-9f98-ff01bd2aaabb/$metadata#datasources",
"value": [
{
"datasourceType": "SAPHana",
"connectionDetails": {
"server": "My-SapHana-Server",
"database": "My-SapHana-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
},
"Oracle example": {
"parameters": {},
"responses": {
"200": {
"@odata.context": "http://api.powerbi.com/v1.0/myorg/groups/222f0f33-3abc-4a57-9f98-ff01bd2aaabb/$metadata#datasources",
"value": [
{
"datasourceType": "Oracle",
"connectionDetails": {
"server": "My-Oracle-Server",
"database": "My-Oracle-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
},
"Extension datasource example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Extension",
"datasourceId": "70540d95-4c8e-41ae-88c6-27a103b12841",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"kind": "AzureDataExplorer",
"path": "https://myserver.kusto.windows.net"
}
}
]
}
}
}
},
"Microsoft Exchange datasource example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Exchange",
"datasourceId": "4d126fc8-1568-46aa-ba16-ccf19b18f012",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"emailAddress": "john@contoso.com"
}
}
]
}
}
}
},
"Salesforce datasource example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Salesforce",
"datasourceId": "e8a6e0f5-b244-402a-ba5a-4d578609ede3",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"classInfo": "report-detail",
"loginServer": "https://login.salesforce.com/"
}
}
]
}
}
}
},
"Azure Blobs datasource example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "AzureBlobs",
"datasourceId": "e0315274-90b6-4fc0-abf2-2d60d448cb04",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"account": "myAccount",
"domain": "blob.core.windows.net"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/Default.UpdateDatasources": {
"post": {
"tags": [
"Datasets"
],
"summary": "Updates the data sources of the specified dataset from **My workspace**.",
"description": "\n> [!NOTE]\n> We recommend using [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata) with this API call.\n\n> [!IMPORTANT]\n>\n> - The original data source and the new data source must have the exact same schema.\n> - If you're using **enhanced dataset metadata**, refresh the dataset to get data from the new data sources.\n> - If you're not using **enhanced dataset metadata**, wait 30 minutes for the update data sources operation to complete, and then refresh the dataset.\n\n## Permissions\n\nThe user must be the dataset owner.\n\n## Limitations\n\n- Datasets created or modified using the public [XMLA endpoint](/power-bi/admin/service-premium-connect-tools) aren't supported. To make changes to those data sources, the admin must use the Azure Analysis Services client library for Tabular Object Model.\n- Only these data sources are supported: SQL Server, Azure SQL Server, Azure Analysis Services, Azure Synapse, OData, SharePoint, Teradata, and SAP HANA. For other data sources, use the [Update Parameters](/rest/api/power-bi/datasets/update-parameters) API call.\n- Changing the data source type isn't supported.\n- Data sources that contain parameters in the connection string aren't supported.\n- Updating data sources that are part of merged or joined tables is only supported if you're using [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata).\n- For an Advanced Query that references multiple data sources, only the first data source will be updated. To overcome this limitation, define the data source as a parameter and use the [Update Parameters](/rest/api/power-bi/datasets/update-parameters) API call.\n- Datasets with incremental refresh policy are not fully supported, calling this API may not work as expected and result of partial datasources update, to overcome this you can try run a dataset refresh before calling this API.\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_UpdateDatasources",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "updateDatasourcesRequest",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateDatasourcesRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasourcesRequest": {
"updateDetails": [
{
"datasourceSelector": {
"datasourceType": "Sql",
"connectionDetails": {
"server": "My-Sql-Server",
"database": "My-Sql-Database"
}
},
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
},
{
"datasourceSelector": {
"datasourceType": "OData",
"connectionDetails": {
"url": "http://services.odata.org/V4/Northwind/Northwind.svc"
}
},
"connectionDetails": {
"url": "http://services.odata.org/V4/Odata/Northwind.svc"
}
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/Default.SetAllConnections": {
"post": {
"tags": [
"Datasets"
],
"summary": "Updates all connections for the specified dataset from **My workspace**. This API call only supports SQL DirectQuery datasets.",
"description": "\n> [!IMPORTANT]\n> This API call is deprecated and no longer supported. This API call isn't compatible with [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata).\n>\n> Instead use:\n>\n> - [Update Parameters](/rest/api/power-bi/datasets/update-parameters) to update connections for SQL, Azure Synapse, OData, and SharePoint data sources.\n> - [Update Datasources](/rest/api/power-bi/datasets/update-datasources) to connections for other data sources.\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_SetAllDatasetConnections",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "parameters",
"in": "body",
"description": "The body",
"required": true,
"schema": {
"$ref": "#/definitions/ConnectionDetails"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"parameters": {
"connectionString": "data source=MyServer.database.windows.net;initial catalog=MyDatabase;persist security info=True;encrypt=True;trustservercertificate=False"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": true
}
},
"/v1.0/myorg/datasets/{datasetId}/Default.BindToGateway": {
"post": {
"tags": [
"Datasets"
],
"summary": "Binds the specified dataset from **My workspace** to the specified gateway, optionally with a given set of data source IDs. If you don't supply a specific data source ID, the dataset will be bound to the first matching data source in the gateway.",
"description": "\n> [!IMPORTANT]\n> Add the API caller principal as a data source user on the gateway.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nOnly supports the on-premises data gateway\n
",
"operationId": "Datasets_BindToGateway",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "bindToGatewayRequest",
"in": "body",
"description": "The bind to gateway request",
"required": true,
"schema": {
"$ref": "#/definitions/BindToGatewayRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example without 'datasourceObjectIds'": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"bindToGatewayRequest": {
"gatewayObjectId": "1f69e798-5852-4fdd-ab01-33bb14b6e934"
}
},
"responses": {
"200": {}
}
},
"Example with 'datasourceObjectIds'": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"bindToGatewayRequest": {
"gatewayObjectId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceObjectIds": [
"dc2f2dac-e5e2-4c37-af76-2a0bc10f16cb",
"3bfe5d33-ab7d-4d24-b0b5-e2bb8eb01cf5"
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/Default.GetBoundGatewayDatasources": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of gateway data sources for the specified dataset from **My workspace**.",
"description": "\n> [!IMPORTANT]\n> This API call is deprecated, use [Get Datasources](/rest/api/power-bi/datasets/get-datasources) instead.\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetGatewayDatasources",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GatewayDatasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "16a54ccd-620d-4af3-9197-0b8c779a9a6d",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"datasourceType": "Sql",
"connectionDetails": "{\"server\":\"MyServer.database.windows.net\",\"database\":\"MyDatabase\"}"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/Default.DiscoverGateways": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of gateways that the specified dataset from **My workspace** can be bound to.",
"description": "\nThis API call is only relevant to datasets that have at least one on-premises connection. For datasets with cloud-only connections, this API call returns an empty list.\n\n## Required Scope\n\nDataset.Read.All\n
",
"operationId": "Datasets_DiscoverGateways",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Gateways"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"name": "ContosoGateway",
"type": "Resource",
"publicKey": {
"exponent": "AQAB",
"modulus": "o6j2....cLk="
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/queryScaleOut/syncStatus": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the query scale-out sync status for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetQueryScaleOutSyncStatus",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetQueryScaleOutSyncStatus"
}
}
},
"deprecated": false,
"x-ms-examples": {
"Get query scale-out sync status example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"commitVersion": 133186221251720662,
"commitTimestamp": "2023-01-19T17:15:25.1720662Z",
"targetSyncVersion": 133184583205771509,
"targetSyncTimestamp": "2023-01-17T19:45:20.5771509Z",
"triggerReason": "explicit",
"syncStartTime": "2023-01-17T20:37:49.9625479Z",
"syncEndTime": "2023-01-17T20:37:50.6029293Z",
"minActiveReadVersion": 133184583205771509,
"minActiveReadTimestamp": "2023-01-17T19:45:20.5771509Z",
"scaleOutStatus": "Enabled"
}
}
}
}
}
}
},
"/v1.0/myorg/datasets/{datasetId}/queryScaleOut/sync": {
"post": {
"tags": [
"Datasets"
],
"summary": "Triggers a query scale-out sync of read-only replicas for the specified dataset from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_TriggerQueryScaleOutSync",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetQueryScaleOutSyncStatus"
}
}
},
"deprecated": false,
"x-ms-examples": {
"Trigger query scale-out sync example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"commitVersion": 133186221251720662,
"commitTimestamp": "2023-01-19T17:15:25.1720662Z",
"targetSyncVersion": 133184583205771509,
"targetSyncTimestamp": "2023-01-17T19:45:20.5771509Z",
"triggerReason": "explicit",
"syncStartTime": "2023-01-17T20:37:49.9625479Z",
"syncEndTime": "2023-01-17T20:37:50.6029293Z",
"minActiveReadVersion": 133184583205771509,
"minActiveReadTimestamp": "2023-01-17T19:45:20.5771509Z",
"scaleOutStatus": "Enabled"
}
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/users": {
"post": {
"tags": [
"Datasets"
],
"summary": "Grants the specified user's permissions to the specified dataset.",
"description": "\nWhen user permissions to a dataset have been recently updated, the new permissions might not be immediately available through API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n\n\n## Required Scope\n\nDataset.ReadWrite.All\n## Limitations\n\n- Adding permissions to service principals (app principalType) isn't supported\n- Caller must have ReadReshare permissions on the dataset.\n- This API call can't be used to grant dataset Write permission on the dataset\n
",
"operationId": "Datasets_PostDatasetUserInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/PostDatasetUserAccess"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "john@contoso.com",
"principalType": "User",
"datasetUserAccessRight": "Read"
}
},
"responses": {
"200": {}
}
},
"Example for granting ReadExplore right to a security group": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"principalType": "Group",
"datasetUserAccessRight": "ReadReshare"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"Datasets"
],
"summary": "Updates the existing dataset permissions of the specified user to the specified permissions.",
"description": "\nWhen user permissions to a dataset have been recently updated, the new permissions might not be immediately available through API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\nThis API call can be used to remove all the dataset permissions of the specified user by using `datasetUserAccessRight: None`\n\n## Required Scope\n\nDataset.ReadWrite.All\n## Permissions\n\nThe permissions for this API call are listed in [Datasets permissions](/power-bi/developer/embedded/datasets-permissions).\n## Limitations\n\n- Updating permissions to service principals (app principalType) isn't supported\n- Caller must have ReadWriteReshare permissions on the dataset. That is, folder admins, members and contributors with Reshare permissions, or dataset owners.\n- This API can't be used to add or remove *write* permission.\n- This API can't be used to remove folder-level inherited permissions. For folder admins and members, the ReadWriteReshareExplore permission on the folder's datasets is inherited. For folder contributors, the ReadWriteExplore permission on the folder's datasets is inherited. For folder viewers, the Read permission on the folder's datasets is inherited.\n
",
"operationId": "Datasets_PutDatasetUserInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/DatasetUserAccess"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "john@contoso.com",
"principalType": "User",
"datasetUserAccessRight": "Read"
}
},
"responses": {
"200": {}
}
},
"Example for updating security group dataset permissions to ReadExplore": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"principalType": "Group",
"datasetUserAccessRight": "ReadReshare"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of principals that have access to the specified dataset.",
"description": "\nWhen user permissions to a dataset have been recently updated, the new permissions might not be immediately available through API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n\n## Permissions\n\nThe permissions for this API call are listed in [Datasets permissions](/power-bi/developer/embedded/datasets-permissions).\n\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n## Limitations\n\nCaller must have ReadWriteReshare permissions on the dataset. That is, folder admins, members and contributors with Reshare permissions, or dataset owners.\n
",
"operationId": "Datasets_GetDatasetUsersInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetUsersAccess"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"identifier": "john@contoso.com",
"principalType": "User",
"datasetUserAccessRight": "Read"
},
{
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"principalType": "Group",
"datasetUserAccessRight": "ReadReshare"
},
{
"identifier": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"principalType": "App",
"datasetUserAccessRight": "ReadWriteReshareExplore"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/datasets/{datasetId}/users": {
"post": {
"tags": [
"Datasets"
],
"summary": "Grants the specified user's permissions to the specified dataset.",
"description": "\nWhen user permissions to a dataset have been recently updated, the new permissions might not be immediately available through API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n\n\n## Required Scope\n\nDataset.ReadWrite.All\n## Limitations\n\n- Adding permissions to service principals (app principalType) isn't supported\n- Caller must have ReadReshare permissions on the dataset.\n- This API call can't be used to grant dataset Write permission on the dataset\n
",
"operationId": "Datasets_PostDatasetUser",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/PostDatasetUserAccess"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "john@contoso.com",
"principalType": "User",
"datasetUserAccessRight": "Read"
}
},
"responses": {
"200": {}
}
},
"Example for granting ReadExplore right to a security group": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"principalType": "Group",
"datasetUserAccessRight": "ReadReshare"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"Datasets"
],
"summary": "Updates the existing dataset permissions of the specified user to the specified permissions.",
"description": "\nWhen user permissions to a dataset have been recently updated, the new permissions might not be immediately available through API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\nThis API call can be used to remove all the dataset permissions of the specified user by using `datasetUserAccessRight: None`\n\n## Required Scope\n\nDataset.ReadWrite.All\n## Permissions\n\nThe permissions for this API call are listed in [Datasets permissions](/power-bi/developer/embedded/datasets-permissions).\n\n## Limitations\n\n- Updating permissions to service principals (app principalType) isn't supported\n- Caller must have ReadWriteReshare permissions on the dataset. That is, folder admins, members and contributors with Reshare permissions, or dataset owners.\n- This API can't be used to add or remove *write* permission.\n- This API can't be used to remove folder-level inherited permissions. For folder admins and members, the ReadWriteReshareExplore permission on the folder's datasets is inherited. For folder contributors, the ReadWriteExplore permission on the folder's datasets is inherited. For folder viewers, the Read permission on the folder's datasets is inherited.\n
",
"operationId": "Datasets_PutDatasetUser",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/DatasetUserAccess"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "john@contoso.com",
"principalType": "User",
"datasetUserAccessRight": "Read"
}
},
"responses": {
"200": {}
}
},
"Example for updating security group dataset permissions to ReadExplore": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"userDetails": {
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"principalType": "Group",
"datasetUserAccessRight": "ReadReshare"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of principals that have access to the specified dataset.",
"description": "\nWhen user permissions to a dataset have been recently updated, the new permissions might not be immediately available through API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n\n## Permissions\n\nThe permissions for this API call are listed in [Datasets permissions](/power-bi/developer/embedded/datasets-permissions).\n\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n## Limitations\n\n Caller must have ReadWriteReshare permissions on the dataset. That is, folder admins, members and contributors with Reshare permissions, or dataset owners.\n
",
"operationId": "Datasets_GetDatasetUsers",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetUsersAccess"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"identifier": "john@contoso.com",
"principalType": "User",
"datasetUserAccessRight": "Read"
},
{
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"principalType": "Group",
"datasetUserAccessRight": "ReadReshare"
},
{
"identifier": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"principalType": "App",
"datasetUserAccessRight": "ReadWriteReshareExplore"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/RefreshUserPermissions": {
"post": {
"tags": [
"Users"
],
"summary": "Refreshes user permissions in Power BI.",
"description": "\nWhen a user is granted permissions to a workspace, app, or Power BI item (such as a report or a dashboard), the new permissions might not be immediately available through API calls. This operation refreshes user permissions to ensure they're fully updated.\n\n> [!IMPORTANT]\n>\n> - Call **Refresh User Permissions** before making other API calls.\n> - Since it takes about two minutes for the permissions to get refreshed, wait for two minutes before making other API calls.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Limitations\n\nMaximum one call per user per hour.\n
",
"operationId": "Users_RefreshUserPermissions",
"consumes": [],
"produces": [],
"parameters": [],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/imports": {
"get": {
"tags": [
"Imports"
],
"summary": "Returns a list of imports from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Imports_GetImports",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Imports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"importState": "Succeeded",
"createdDateTime": "2018-05-08T14:56:18.477Z",
"updatedDateTime": "2018-05-08T14:56:18.477Z",
"name": "SalesMarketing",
"connectionType": "import",
"source": "Upload",
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715"
}
]
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Imports"
],
"summary": "Creates new content in **My workspace**.",
"description": "\nSee the [Import Large Files](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/Import%20Large%20Files) PowerShell script for an example of using this API.\n\n> [!NOTE]\n> Supported content:\n> - Power BI .pbix files\n> - JSON files (.json)\n> - Excel files (.xlsx)\n> - RDL files (.rdl)\n\n- To import a file, specify the content type **multipart/form-data** in the request headers and encode the file as [form data](https://www.w3.org/TR/html401/interact/forms.html) in the request body.\n- To import an .rdl file, include the file extension in the name specified by `datasetDisplayName`, as described in [URI parameters](/rest/api/power-bi/imports/post-import-in-group#uri-parameters).\n- To import an .xlsx file from OneDrive for Business, include the content type **application/json** in the request headers. Include [ImportInfo](/rest/api/power-bi/imports/post-import-in-group#importinfo) with `filePath` set to the .xlsx file path in the request body.\n- To import large Power BI .pbix files that are between 1 GB and 10 GB in size, see [Create Temporary Upload Location](/rest/api/power-bi/imports/create-temporary-upload-location). This is only supported for Premium capacity workspaces.\n- To create a dataflow from a model.json file, set `datasetDisplayName` to *model.json*, as described in [URI parameters](/rest/api/power-bi/imports/post-import-in-group#uri-parameters).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- Dataflows with service principal aren't supported.\n- Importing a Power BI .pbix file from OneDrive isn't supported.\n- Importing a file that has a **protected** sensitivity label isn't supported for service principals.\n
",
"operationId": "Imports_PostImport",
"consumes": [
"application/json",
"multipart/form-data"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetDisplayName",
"in": "query",
"required": true,
"description": "The display name of the dataset, should include file extension. Not supported when importing from OneDrive for Business.",
"type": "string"
},
{
"name": "nameConflict",
"in": "query",
"required": false,
"description": "Specifies what to do if a dataset with the same name already exists. The default value is `Ignore`. For RDL files, `Abort` and `Overwrite` are the only supported options.",
"type": "string",
"enum": [
"Ignore",
"Abort",
"Overwrite",
"CreateOrOverwrite",
"GenerateUniqueName"
],
"x-ms-enum": {
"name": "ImportConflictHandlerMode",
"modelAsExtensible": true,
"values": [
{
"value": "Ignore",
"description": "If a dataset with the same name already exists, the import operation will create a new dataset with the same name."
},
{
"value": "Abort",
"description": "If a dataset with the same name already exists, the import operation will be cancelled."
},
{
"value": "Overwrite",
"description": "If a dataset with the same name already exists, the import operation will replace the existing dataset with the new one. The import operation will fail if there's no conflict or if there's more than one existing dataset with the same name."
},
{
"value": "CreateOrOverwrite",
"description": "If a dataset with the same name already exists, the import operation will replace the existing dataset with the new one. The import operation will fail if there's more than one existing dataset with the same name."
},
{
"value": "GenerateUniqueName",
"description": "If a dataflow with the same name already exists, the import operation will generate a new unique name for the new dataflow."
}
]
}
},
{
"name": "skipReport",
"in": "query",
"required": false,
"description": "Whether to skip report import. If specified, the value must be `true`. Only supported for Power BI .pbix files.",
"type": "boolean"
},
{
"name": "overrideReportLabel",
"in": "query",
"required": false,
"description": "Whether to override the existing report label when republishing a Power BI .pbix file. The service default value is `true`.",
"type": "boolean"
},
{
"name": "overrideModelLabel",
"in": "query",
"required": false,
"description": "Whether to override the existing label on a model when republishing a Power BI .pbix file. The service default value is `true`.",
"type": "boolean"
},
{
"name": "subfolderObjectId",
"in": "query",
"required": false,
"description": "The subfolder ID to import the file to subfolder.",
"type": "string",
"format": "uuid"
},
{
"name": "importInfo",
"in": "body",
"description": "The import to post",
"required": true,
"schema": {
"$ref": "#/definitions/ImportInfo"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Import"
}
},
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Import"
}
}
},
"x-ms-examples": {
"Post import example": {
"parameters": {
"consumes": "multipart/form-data;",
"boundary": "f05e5244-f876-43b9-bc87-d71598f6b32a",
"paramType": "form",
"datasetDisplayName": "MyReport",
"nameConflict": "Ignore",
"importInfo": {
"value": "--f05e5244-f876-43b9-bc87-d71598f6b32a Content-Disposition: form-data AA...ZZ --f05e5244-f876-43b9-bc87-d71598f6b32a--"
}
},
"responses": {
"202": {
"body": {
"id": "d02b8896-e247-4d83-ae5a-014028cb0665"
}
}
}
},
"Post import with 'skipReport' example": {
"parameters": {
"consumes": "multipart/form-data;",
"boundary": "f05e5244-f876-43b9-bc87-d71598f6b32a",
"paramType": "form",
"datasetDisplayName": "MyReport",
"nameConflict": "Ignore",
"skipReport": true,
"overrideReportLabel": true,
"overrideModelLabel": true,
"importInfo": {
"value": "--f05e5244-f876-43b9-bc87-d71598f6b32a Content-Disposition: form-data AA...ZZ --f05e5244-f876-43b9-bc87-d71598f6b32a--"
}
},
"responses": {
"202": {
"body": {
"id": "d02b8896-e247-4d83-ae5a-014028cb0665"
}
}
}
},
"Import dataflow example": {
"parameters": {
"consumes": "multipart/form-data;",
"boundary": "f05e5244-f876-43b9-bc87-d71598f6b32a",
"paramType": "form",
"datasetDisplayName": "model.json",
"nameConflict": "Abort",
"importInfo": {
"value": "--f05e5244-f876-43b9-bc87-d71598f6b32a Content-Disposition: form-data name=model.json; filename=model.json Content-Type: application/json [Contents of Model JSON Encoded] --f05e5244-f876-43b9-bc87-d71598f6b32a--"
}
},
"responses": {
"202": {
"body": {
"id": "d02b8896-e247-4d83-ae5a-014028cb0665"
}
}
}
}
}
}
},
"/v1.0/myorg/imports/{importId}": {
"get": {
"tags": [
"Imports"
],
"summary": "Returns the specified import from **My workspace**.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Imports_GetImport",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "importId",
"in": "path",
"required": true,
"description": "The import ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Import"
}
}
},
"x-ms-examples": {
"In-progress import example": {
"parameters": {
"importId": "82d9a37a-2b45-4221-b012-cb109b8e30c7"
},
"responses": {
"200": {
"body": {
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"importState": "Publishing",
"createdDateTime": "2018-05-08T14:56:18.477Z",
"updatedDateTime": "2018-05-08T14:56:18.477Z",
"name": "SalesMarketing",
"connectionType": "import",
"source": "Upload",
"datasets": [],
"reports": []
}
}
}
},
"Completed import example": {
"parameters": {
"importId": "82d9a37a-2b45-4221-b012-cb109b8e30c7"
},
"responses": {
"200": {
"body": {
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"importState": "Succeeded",
"createdDateTime": "2018-05-08T14:56:18.477Z",
"updatedDateTime": "2018-05-08T14:56:18.477Z",
"name": "SalesMarketing",
"connectionType": "import",
"source": "Upload",
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/imports/createTemporaryUploadLocation": {
"post": {
"tags": [
"Imports"
],
"summary": "Creates a temporary blob storage upload location for importing large Power BI .pbix files that are between 1 GB and 10 GB in size.",
"description": "\nTo import large Power BI .pbix files:\n\n1. Create a temporary upload location using this API call.\n1. Upload the Power BI .pbix files using the *shared access signature* URL from the API call response.\n1. Call [Post Import In Group](/rest/api/power-bi/imports/post-import), specifying the *shared access signature* URL in the `fileUrl` parameter of the [request body](/rest/api/power-bi/imports/post-import#request-body).\n\nSee the [Import Large Files](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/Import%20Large%20Files) PowerShell script for an example of using this API.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nImporting large Power BI .pbix files between 1 GB and 10 GB in size is only available for Premium capacity workspaces.\n
",
"operationId": "Imports_CreateTemporaryUploadLocation",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/TemporaryUploadLocation"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns a list of reports from **My workspace**.",
"description": "\nThis API also returns shared reports and reports from shared apps. Reports that reside in shared workspaces can be accessed using the [Get Reports In Group API](/rest/api/power-bi/reports/get-reports-in-group).\n\nSince paginated reports (RDL) don't have a dataset, the dataset ID value in the API response for paginated reports isn't displayed.\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetReports",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Reports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com//reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the specified report from **My workspace**.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetReport",
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Report"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "5b218778-e7a5-4d73-8187-f10824047715"
},
"responses": {
"200": {
"body": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com//reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715"
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Reports"
],
"summary": "Deletes the specified report from **My workspace**.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All\n
",
"operationId": "Reports_DeleteReport",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "5b218778-e7a5-4d73-8187-f10824047715"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/Clone": {
"post": {
"tags": [
"Reports"
],
"summary": "Clones the specified report from **My workspace**.",
"description": "\n- If the dataset for a cloned report resides in two different workspaces or in **My workspace**, then a shared dataset will be created in the report's workspace.\n- When cloned, reports with a [live connection](/power-bi/desktop-report-lifecycle-datasets) will lose that connection and instead have a direct binding to the target dataset.\n\n## Permissions\n\nThe user must have all of the following, unless a requirement doesn't apply:\n\n- **Write** permission on the specified report.\n- **Build** permission on the target dataset, required if the `targetModelId` parameter is used.\n\n## Required Scope\n\nContent.Create\n
",
"operationId": "Reports_CloneReport",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Clone report parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CloneReportRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Report"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"requestParameters": {
"name": "New Report Name",
"targetModelId": "8e4d5880-81d6-4804-ab97-054665050799",
"targetWorkspaceId": "2f42a406-a075-4a15-bbf2-97ef958c94cb"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/Export": {
"get": {
"tags": [
"Reports"
],
"summary": "Exports the specified report from **My workspace** to a Power BI .pbix or .rdl file.",
"description": "\n- For .pbix reports - \n As a [workaround](/power-bi/developer/embedded/troubleshoot-rest-api#fix-timeout-exceptions-when-using-import-and-export-apis) for timeout issues, set the `preferClientRouting` URL query parameter to `true`.\n- Large files are downloaded to a temporary blob. Their URL is returned in the response, and stored in the locally downloaded Power BI .pbix file.\n- For more information on requirements and limitations, see [Download a report from the Power BI service to Power BI Desktop](/power-bi/create-reports/service-export-to-pbix).\n\n> [!NOTE]\n> Try-it feature is not supported for this API.\n See [Export Power BI Report](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/Export-PowerBIReport.ps1) Powershell script for an example of how to use this API.\n\n## Required Scope\n\nReport.ReadWrite.All or both Report.Read.All and Dataset.Read.All\n\n## Limitations\n\nFor .pbix report, after calling [Rebind Report](/rest/api/power-bi/reports/rebind-report), export of a report with a [Power BI service live connection](/power-bi/desktop-report-lifecycle-datasets) isn't supported.\n
",
"operationId": "Reports_ExportReport",
"consumes": [],
"produces": [
"application/zip",
"application/octet-stream"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"schema": {
"type": "file"
},
"description": "Exported File"
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/UpdateReportContent": {
"post": {
"tags": [
"Reports"
],
"summary": "Updates the content of the specified report from **My workspace** with the content of a specified source report.",
"description": "\nSpecify the source report in the request body.\n\n## Required Scope\n\nReport.ReadWrite.All\n
",
"operationId": "Reports_UpdateReportContent",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "UpdateReportContent parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateReportContentRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Report"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"sourceReport": {
"sourceReportId": "8e4d5880-81d6-4804-ab97-054665050799",
"sourceWorkspaceId": "2f42a406-a075-4a15-bbf2-97ef958c94cb"
},
"sourceType": "ExistingReport"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/Rebind": {
"post": {
"tags": [
"Reports"
],
"summary": "Rebinds the specified report from **My workspace** to the specified dataset.",
"description": "\n- If the specified dataset resides in a different workspace than the report, then a shared dataset will be created in **My workspace**.\n- On rebind, reports with a [live connection](/power-bi/desktop-report-lifecycle-datasets) will lose that connection and instead have a direct binding to the target dataset.\n\n## Permissions\n\nThe user must have all of the following:\n\n- **Write** permission on the specified report.\n- **Build** permission on the target dataset.\n\n## Required Scope\n\nReport.ReadWrite.All\n
",
"operationId": "Reports_RebindReport",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Rebind report parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/RebindReportRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/pages": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns a list of pages within the specified report from **My workspace**.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetPages",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Pages"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "879445d6-3a9e-4a74-b5ae-7c0ddabf0f11"
},
"responses": {
"200": {
"body": {
"value": [
{
"displayName": "Regional Sales Analysis",
"name": "ReportSection",
"order": "0"
},
{
"displayName": "Geographic Analysis",
"name": "ReportSection1",
"order": "1"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/pages/{pageName}": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the specified page within the specified report from **My workspace**.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetPage",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "pageName",
"in": "path",
"required": true,
"description": "The page name",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Page"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "879445d6-3a9e-4a74-b5ae-7c0ddabf0f11",
"pageName": "ReportSection"
},
"responses": {
"200": {
"body": {
"displayName": "Regional Sales Analysis",
"name": "ReportSection",
"order": "0"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/datasources": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns a list of data sources for the specified paginated report (RDL) from **My workspace**.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetDatasources",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff228"
},
"responses": {
"200": {
"body": {
"value": [
{
"name": "MyDatasource",
"datasourceType": "AnalysisServices",
"datasourceId": "f8c56590-43cb-43bf-8daa-233ba2520f51",
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e931",
"connectionDetails": {
"server": "My-As-Server",
"database": "My-As-Database"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/Default.UpdateDatasources": {
"post": {
"tags": [
"Reports"
],
"summary": "Updates the data sources of the specified paginated report (RDL) from **My workspace**.",
"description": "\n> [!IMPORTANT]\n> Both the original data source and the new data source must have the exact same schema.\n\n## Permissions\n\nThe user must be the data source owner.\n\n## Required Scope\n\nReports.ReadWrite.All\n\n## Limitations\n\n- Only supports paginated reports.\n- Changing the data source type isn't supported.\n
",
"operationId": "Reports_UpdateDatasources",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "updateRdlDatasourcesRequest",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateRdlDatasourcesRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateRdlDatasourcesRequest": {
"updateDetails": [
{
"datasourceName": "SqlDatasource",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
},
{
"datasourceName": "SqlAzureDatasource",
"connectionDetails": {
"server": "New-SqlAzure-Server.windows.net",
"database": "New-SqlAzure-Database"
}
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/ExportTo": {
"post": {
"tags": [
"Reports"
],
"summary": "Exports the specified report from **My workspace** to the requested [file format](/rest/api/power-bi/reports/export-to-file#fileformat).",
"description": "\nThe API is asynchronous. When the API is called, it triggers an export job. After triggering an export job, use [GetExportToFileStatus API](/rest/api/power-bi/reports/get-export-to-file-status) to track the job status. \nRead more about the entire flow: [Export Power BI reports](/power-bi/developer/embedded/export-to) and [Export Paginated reports](/power-bi/developer/embedded/export-paginated-report)\n\n## Required Scope\n\nAll of the following:\n\n- Report.ReadWrite.All or Report.Read.All\n- Dataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nCheck the limitations in [Export Power BI report to file](/power-bi/developer/embedded/export-to#considerations-and-limitations) and [Export paginated report to file](/power-bi/developer/embedded/export-paginated-report#considerations-and-limitations).\n
",
"operationId": "Reports_ExportToFile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Export to file request parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/ExportReportRequest"
}
}
],
"responses": {
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Export"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/exports/{exportId}": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the current status of the [Export to File](/rest/api/power-bi/reports/export-to-file) job for the specified report from **My workspace**.",
"description": "\nWhen the export job status is 'Succeeded' use the [GetFileOfExportToFile API](/rest/api/power-bi/reports/get-file-of-export-to-file) to retrieve the file.\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetExportToFileStatus",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "exportId",
"in": "path",
"required": true,
"description": "The export ID",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Export"
}
},
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Export"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"id": "Mi9C5419i....PS4=",
"createdDateTime": "2021-12-08T10:26:09.3069086Z",
"lastActionDateTime": "2021-12-08T10:26:38.016851Z",
"reportId": "cad51cfa-e740-324f-acbb-8ca43c40a2d4",
"reportName": "Report name",
"status": "Succeeded",
"percentComplete": 100,
"resourceLocation": "...Mi9C5419i....PS4=/file",
"resourceFileExtension": ".pptx",
"expirationTime": "2021-12-09T10:26:11.586756Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/exports/{exportId}/file": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the file from the [Export to File](/rest/api/power-bi/reports/export-to-file) job for the specified report from **My workspace**.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetFileOfExportToFile",
"consumes": [],
"produces": [
"application/*",
"image/*",
"text/csv",
"text/xml",
"multipart/related"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "exportId",
"in": "path",
"required": true,
"description": "The export ID",
"type": "string"
}
],
"responses": {
"200": {
"schema": {
"type": "file"
},
"description": "The exported file"
}
},
"deprecated": false
}
},
"/v1.0/myorg/reports/{reportId}/Default.BindToGateway": {
"post": {
"tags": [
"Reports"
],
"summary": "Binds the specified data source of the paginated report from **My workspace** to the specified gateway, optionally with a given data source ID. If you don't supply a specific data source ID, the data source will be bound to the first matching data source in the gateway.",
"description": "\n## Permissions\n\n This API call can be called by a service principal profile. \n\n## Required Delegated Scopes\n\nReport.ReadWrite.All or Report.Read.All\n\n## Limitations\n\nOnly supports on-premises data gateway\n
",
"operationId": "Reports_BindToGateway",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"type": "string",
"format": "uuid",
"required": true
},
{
"name": "rdlBindToGatewayRequest",
"in": "body",
"description": "The bind to gateway request payload.",
"schema": {
"$ref": "#/definitions/RdlBindToGatewayRequest"
},
"required": true
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"rdlBindToGatewayRequest": {
"gatewayObjectId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"bindDetails": [
{
"dataSourceName": "DataSource1",
"dataSourceObjectId": "dc2f2dac-e5e2-4c37-af76-2a0bc10f16cb"
},
{
"dataSourceName": "DataSource2",
"dataSourceObjectId": "3bfe5d33-ab7d-4d24-b0b5-e2bb8eb01cf5"
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/dashboards": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns a list of dashboards from **My workspace**.",
"description": "\nThis API also returns shared dashboards and dashboards from shared apps. Dashboards that reside in shared workspaces can be accessed using the [Get Dashboards In Group API](/rest/api/power-bi/dashboards/get-dashboards-in-group).\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n
",
"operationId": "Dashboards_GetDashboards",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboards"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"isReadOnly": false
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Dashboards"
],
"summary": "Creates a new empty dashboard in **My workspace**.",
"description": "\n## Required Scope\n\nContent.Create\n
",
"operationId": "Dashboards_AddDashboard",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "requestParameters",
"description": "Add dashboard parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/AddDashboardRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"requestParameters": {
"name": "SalesMarketing"
}
},
"responses": {
"200": {
"body": {
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"isReadOnly": false
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/dashboards/{dashboardId}": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns the specified dashboard from **My workspace**.",
"description": "\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n
",
"operationId": "Dashboards_GetDashboard",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af"
},
"responses": {
"200": {
"body": {
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"isReadOnly": false
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Dashboards"
],
"summary": "Deletes the specified dashboard from **My workspace**.",
"description": "\n## Required Scope\n\nDashboard.ReadWrite.All\n
",
"operationId": "Dashboards_DeleteDashboard",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"dashboardId": "7a463f03-22df-48be-9c00-56067f2fb75f"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/dashboards/{dashboardId}/tiles": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns a list of tiles within the specified dashboard from **My workspace**.",
"description": "\nSupported tiles include datasets and live tiles that contain an entire report page.\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nTitles that are edited in the report before the visual is added to the dashboard, are not returned. To return these titles, edit them in the dashboard.\n
",
"operationId": "Dashboards_GetTiles",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tiles"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"title": "SalesMarketingTile",
"embedUrl": "https://app.powerbi.com/embed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&tileId=312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"rowSpan": 0,
"colSpan": 0,
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/dashboards/{dashboardId}/tiles/{tileId}": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns the specified tile within the specified dashboard from **My workspace**.",
"description": "\nSupported tiles include datasets and live tiles that contain an entire report page.\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nTitles that are edited in the report before the visual is added to the dashboard, are not returned. To return these titles, edit them in the dashboard.\n
",
"operationId": "Dashboards_GetTile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "tileId",
"description": "The tile ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tile"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"tileId": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b"
},
"responses": {
"200": {
"body": {
"id": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"title": "SalesMarketingTile",
"embedUrl": "https://app.powerbi.com/embed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&tileId=312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"rowSpan": 0,
"colSpan": 0,
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/dashboards/{dashboardId}/tiles/{tileId}/Clone": {
"post": {
"tags": [
"Dashboards"
],
"summary": "Clones the specified tile from **My workspace**.",
"description": "\nWhen a tile is cloned to another workspace and bound to another report and dataset, it's cloned as is with its underlying query containing the original report filters.\n\nIf the target report ID and target dataset are missing, the following can occur:\n- If you're cloning a tile within the same workspace, the report and dataset links will be cloned from the source tile.\n- If you're cloning a tile within a different workspace, report and dataset links will be removed, and the tile will be broken.\n\n## Required Scope\n\nDashboard.ReadWrite.All\n
",
"operationId": "Dashboards_CloneTile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "tileId",
"description": "The tile ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Clone tile parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CloneTileRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tile"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of datasets from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDatasetsInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasets"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"PushDatasets"
],
"summary": "Creates a new dataset in the specified workspace.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThis API call only supports **push datasets**. For a complete list of limitations, see [Push datasets limitations](/power-bi/developer/embedded/push-datasets-limitations).\n
",
"operationId": "Datasets_PostDatasetInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "dataset",
"in": "body",
"description": "Create dataset parameters",
"required": true,
"schema": {
"$ref": "#/definitions/CreateDatasetRequest"
}
},
{
"name": "defaultRetentionPolicy",
"description": "The default retention policy",
"in": "query",
"required": false,
"type": "string",
"enum": [
"None",
"basicFIFO"
],
"x-ms-enum": {
"name": "DefaultRetentionPolicy",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "None"
},
{
"value": "basicFIFO",
"description": "basicFIFO"
}
]
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/Dataset"
}
},
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Dataset"
}
}
},
"x-ms-examples": {
"Push example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"defaultRetentionPolicy": "basicFIFO",
"dataset": {
"name": "SalesMarketing",
"defaultMode": "Push",
"tables": [
{
"name": "Product",
"columns": [
{
"name": "ProductID",
"dataType": "Int64"
},
{
"name": "Name",
"dataType": "string"
},
{
"name": "Category",
"dataType": "string"
},
{
"name": "IsCompete",
"dataType": "bool"
},
{
"name": "ManufacturedOn",
"dataType": "DateTime"
},
{
"name": "Sales",
"dataType": "Int64",
"formatString": "Currency"
}
]
}
]
}
},
"responses": {
"201": {
"body": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"defaultRetentionPolicy": "basicFIFO"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/upstreamDataflows": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of upstream dataflows for datasets from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDatasetToDataflowsLinksInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetToDataflowLinksResponse"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDatasetInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dataset"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": true,
"isEffectiveIdentityRolesRequired": true,
"isOnPremGatewayRequired": false,
"targetStorageMode": "Abf"
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Datasets"
],
"summary": "Updates the properties for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThe user must be the dataset owner.\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_UpdateDatasetInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "updateDatasetRequest",
"in": "body",
"description": "Update dataset request parameters",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateDatasetRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example of changing the dataset storage mode to support large datasets": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasetRequest": {
"targetStorageMode": "PremiumFiles"
}
},
"responses": {
"200": {}
}
},
"Example of changing the dataset storage mode to support small datasets": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasetRequest": {
"targetStorageMode": "Abf"
}
},
"responses": {
"200": {}
}
},
"Example of updating scale-out settings of a dataset": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasetRequest": {
"queryScaleOutSettings": {
"autoSyncReadOnlyReplicas": false,
"maxReadOnlyReplicas": -1
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Datasets"
],
"summary": "Deletes the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_DeleteDatasetInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/tables": {
"get": {
"tags": [
"PushDatasets"
],
"summary": "Returns a list of tables within the specified dataset from the specified workspace.",
"description": "\n## Required Scope\n\n## Limitations\n\nThis API call only supports **push datasets**. For a complete list of limitations, see [Push datasets limitations](/power-bi/developer/embedded/push-datasets-limitations).\n
",
"operationId": "Datasets_GetTablesInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tables"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/tables/{tableName}": {
"put": {
"tags": [
"PushDatasets"
],
"summary": "Updates the metadata and schema for the specified table within the specified dataset from the specified workspace.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThis API call only supports **push datasets**.\n
",
"operationId": "Datasets_PutTableInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "tableName",
"in": "path",
"description": "The table name",
"required": true,
"type": "string"
},
{
"name": "requestMessage",
"in": "body",
"description": "The request message",
"required": true,
"schema": {
"$ref": "#/definitions/Table"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Table"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"tableName": "Product",
"requestMessage": {
"name": "Product",
"columns": [
{
"name": "ProductID",
"dataType": "Int64"
},
{
"name": "Name",
"dataType": "string"
},
{
"name": "Category",
"dataType": "string"
},
{
"name": "IsCompete",
"dataType": "bool"
},
{
"name": "ManufacturedOn",
"dataType": "DateTime"
},
{
"name": "NewColumn",
"dataType": "string"
}
]
}
},
"responses": {
"200": {
"body": {
"name": "Product"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/tables/{tableName}/rows": {
"post": {
"tags": [
"PushDatasets"
],
"summary": "Adds new data rows to the specified table within the specified dataset from the specified workspace.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- This API call only supports **push datasets**.\n- See [Power BI REST API limitations](/power-bi/developer/automation/api-rest-api-limitations).\n
",
"operationId": "Datasets_PostRowsInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"required": true,
"description": "The dataset ID",
"type": "string"
},
{
"name": "tableName",
"in": "path",
"description": "The table name",
"required": true,
"type": "string"
},
{
"name": "requestMessage",
"in": "body",
"description": "The request message",
"required": true,
"schema": {
"$ref": "#/definitions/PostRowsRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"tableName": "Product",
"requestMessage": {
"rows": [
{
"ProductID": 1,
"Name": "Adjustable Race",
"Category": "Components",
"IsCompete": true,
"ManufacturedOn": "07/30/2014"
},
{
"ProductID": 2,
"Name": "LL Crankarm",
"Category": "Components",
"IsCompete": true,
"ManufacturedOn": "07/30/2014"
},
{
"ProductID": 3,
"Name": "HL Mountain Frame - Silver",
"Category": "Bikes",
"IsCompete": true,
"ManufacturedOn": "07/30/2014"
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"PushDatasets"
],
"summary": "Deletes all rows from the specified table within the specified dataset from the specified workspace.",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThis API call only supports **push datasets**. For a complete list of limitations, see [Push datasets limitations](/power-bi/developer/embedded/push-datasets-limitations).\n
",
"operationId": "Datasets_DeleteRowsInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "tableName",
"in": "path",
"description": "The table name",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"tableName": "Product"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/refreshes": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the refresh history for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nOneDrive refresh history isn't returned.\n
",
"operationId": "Datasets_GetRefreshHistoryInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "$top",
"description": "The requested number of entries in the refresh history. If not provided, the default is the last available 60 entries.",
"in": "query",
"required": false,
"type": "integer",
"minimum": 1
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshes"
}
}
},
"x-ms-examples": {
"In-progress refresh example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"$top": 1
},
"responses": {
"200": {
"body": {
"value": [
{
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"status": "Unknown",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
}
]
}
}
}
},
"Completed refresh example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"$top": 1
},
"responses": {
"200": {
"body": {
"value": [
{
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1",
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:40.153Z",
"type": "Data"
},
{
"attemptId": 1,
"startTime": "2017-06-13T09:31:40.156Z",
"endTime": "2017-06-13T09:31:43.153Z",
"type": "Query"
}
]
}
]
}
}
}
},
"Failed refresh example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"$top": 1
},
"responses": {
"200": {
"body": {
"value": [
{
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"serviceExceptionJson": "{\"errorCode\":\"ModelRefreshFailed_CredentialsNotSpecified\"}",
"status": "Failed",
"requestId": "11bf290a-346b-48b7-8973-c5df149337ff",
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"serviceExceptionJson": "{\"errorCode\":\"ModelRefreshFailed_CredentialsNotSpecified\"}",
"type": "Data"
}
]
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Datasets"
],
"summary": "Triggers a refresh for the specified dataset from the specified workspace. An [enhanced refresh](/power-bi/connect-data/asynchronous-refresh) is triggered only if a request payload other than `notifyOption` is set.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- For Shared capacities, a maximum of eight requests per day, including refreshes executed by using scheduled refresh, can be initiated.\n- For Shared capacities, only `notifyOption` can be specified in the request body.\n- Enhanced refresh is not supported for shared capacities.\n- For enhanced refresh, `notifyOption` is not required and must be excluded from the request body. However, one or more parameters other than `notifyOption` are required.\n- For Premium capacities, the maximum requests per day is only limited by the available resources in the capacity. If available resources are overloaded, refreshes are throttled until the load is reduced. The refresh will fail if throttling exceeds 1 hour.\n
",
"operationId": "Datasets_RefreshDatasetInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "datasetRefreshRequest",
"in": "body",
"required": false,
"schema": {
"$ref": "#/definitions/DatasetRefreshRequest"
}
}
],
"responses": {
"202": {
"description": "Accepted",
"headers": {
"x-ms-request-id": {
"description": "The `refreshId` for [getting refresh execution details in group](#/operationId/Datasets_GetRefreshExecutionDetailsInGroup) or [cancelling refresh in group](/rest/api/power-bi/datasets/cancel-refresh-in-group). This would be returned only if any request payload except `notifyOption` is set.",
"type": "string",
"format": "url"
},
"Location": {
"description": "The full URI for [getting refresh execution details in group](#/operationId/Datasets_GetRefreshExecutionDetailsInGroup) or [cancelling refresh in group](/rest/api/power-bi/datasets/cancel-refresh-in-group). This would be returned only if any request payload except `notifyOption` is set.",
"type": "string",
"format": "url"
}
}
}
},
"x-ms-examples": {
"Example of refreshing a dataset": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetRefreshRequest": {
"notifyOption": "MailOnFailure",
"retryCount": 3
}
},
"responses": {
"202": {
"headers": {
"x-ms-request-id": "87f31ef7-1e3a-4006-9b0b-191693e79e9e",
"Location": "https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229/refreshes/87f31ef7-1e3a-4006-9b0b-191693e79e9e"
}
}
}
},
"Example of refreshing one partition": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetRefreshRequest": {
"type": "full",
"commitMode": "transactional",
"objects": [
{
"table": "Customer",
"partition": "Robert"
}
],
"applyRefreshPolicy": "false"
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/refreshes/{refreshId}": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns execution details of an [enhanced refresh operation](/power-bi/connect-data/asynchronous-refresh) for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetRefreshExecutionDetailsInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"description": "The workspace ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshId",
"description": "The refresh ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK (this response is returned when the refresh operation has completed or failed)",
"schema": {
"$ref": "#/definitions/DatasetRefreshDetail"
}
},
"202": {
"description": "Accepted (this response is returned when the refresh operation is still in progress)",
"schema": {
"$ref": "#/definitions/DatasetRefreshDetail"
}
}
},
"x-ms-examples": {
"In progress refresh example": {
"parameters": {
"groupId": "fdb91b8f-0a9b-44c1-b6c0-0cb185c6ebfb",
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "630110f5-8f93-49c2-afee-bfc87072460c"
},
"responses": {
"202": {
"body": {
"startTime": "2021-12-14T03:46:04.833",
"type": "Full",
"commitMode": "Transactional",
"status": "Unknown",
"extendedStatus": "NotStarted",
"currentRefreshType": "Full",
"numberOfAttempts": 0
}
}
}
},
"Completed refresh example": {
"parameters": {
"groupId": "fdb91b8f-0a9b-44c1-b6c0-0cb185c6ebfb",
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "87f31ef7-1e3a-4006-9b0b-191693e79e9e"
},
"responses": {
"200": {
"body": {
"startTime": "2021-12-10T08:40:31.57",
"endTime": "2021-12-10T08:40:43.87",
"type": "Full",
"commitMode": "Transactional",
"status": "Completed",
"extendedStatus": "Completed",
"currentRefreshType": "Full",
"numberOfAttempts": 0,
"objects": [
{
"table": "DateTableTemplate_78e78207-b3fb-41b5-8b95-e5efca989067",
"partition": "DateTableTemplate_78e78207-b3fb-41b5-8b95-e5efca989067-ae306fb4-3b7e-4a41-824d-cb3b452fedfc",
"status": "Completed"
},
{
"table": "LocalDateTable_e9d8a66b-4018-4d16-be8c-402b2037c051",
"partition": "LocalDateTable_e9d8a66b-4018-4d16-be8c-402b2037c051-59bc07f8-85c9-456a-ad36-18e1de4d77ed",
"status": "Completed"
},
{
"table": "LocalDateTable_55935f6b-04d1-4cfe-8856-ed9f9e73ab2e",
"partition": "LocalDateTable_55935f6b-04d1-4cfe-8856-ed9f9e73ab2e-d95ae7f7-19c9-48a8-9c16-fcab26558bc2",
"status": "Completed"
},
{
"table": "LocalDateTable_ff25f80e-eb04-4229-986d-b40223c04f1c",
"partition": "LocalDateTable_ff25f80e-eb04-4229-986d-b40223c04f1c-6606fc4c-4cda-49e1-8acd-e55a6ec36cb3",
"status": "Completed"
},
{
"table": "DimCurrency",
"partition": "DimCurrency-e5524cc4-a898-433b-91aa-c001b9a6d676",
"status": "Completed"
},
{
"table": "DimCustomer",
"partition": "DimCustomer-a31bbd93-e20a-4dee-a33c-7afa27785953",
"status": "Completed"
},
{
"table": "LocalDateTable_fa65a206-f320-4d5d-abcc-1dc0f051ca7d",
"partition": "LocalDateTable_fa65a206-f320-4d5d-abcc-1dc0f051ca7d-06a48a0a-a32b-48a3-b113-924aafd6363c",
"status": "Completed"
},
{
"table": "LocalDateTable_78a4e1b7-a2e5-4bbf-ab68-7c87961b68a2",
"partition": "LocalDateTable_78a4e1b7-a2e5-4bbf-ab68-7c87961b68a2-5b3ba715-7c84-4e52-b310-485b93cfbe6d",
"status": "Completed"
},
{
"table": "DimDate",
"partition": "DimDate-62e2f91b-53e5-4ed3-8618-fec74dba5e0d",
"status": "Completed"
},
{
"table": "LocalDateTable_e72c294f-0a06-4051-b943-e6bf8389e2c3",
"partition": "LocalDateTable_e72c294f-0a06-4051-b943-e6bf8389e2c3-891a0e68-d414-4ba3-9c4b-e6f1ec73d4f3",
"status": "Completed"
},
{
"table": "DimProduct",
"partition": "DimProduct-3d07cc89-2bd7-4a98-bb37-3368c1562f98",
"status": "Completed"
},
{
"table": "LocalDateTable_e37e4431-8c1a-449c-8796-b704df200a92",
"partition": "LocalDateTable_e37e4431-8c1a-449c-8796-b704df200a92-8596ebb8-418f-4e50-a921-dac88c6f1339",
"status": "Completed"
},
{
"table": "LocalDateTable_73faffeb-a0c7-4ea1-83dc-530823b0fea0",
"partition": "LocalDateTable_73faffeb-a0c7-4ea1-83dc-530823b0fea0-13795c4e-708f-4ddc-8ea3-5a2f39ae2253",
"status": "Completed"
},
{
"table": "DimPromotion",
"partition": "DimPromotion-21e6c333-430e-4350-8c94-cdceb362c4c7",
"status": "Completed"
},
{
"table": "LocalDateTable_9c19746b-db7d-4b7e-b95d-c66e4b8fefc8",
"partition": "LocalDateTable_9c19746b-db7d-4b7e-b95d-c66e4b8fefc8-395de144-ad53-41c0-9ec0-68bab6158d99",
"status": "Completed"
},
{
"table": "LocalDateTable_d96435dd-6110-4246-996c-616c96125e71",
"partition": "LocalDateTable_d96435dd-6110-4246-996c-616c96125e71-891737ee-c46c-4b9f-bfa8-e4555004e20f",
"status": "Completed"
},
{
"table": "DimSalesTerritory",
"partition": "DimSalesTerritory-6d88f938-13d5-49f8-899c-d11b3d346ad5",
"status": "Completed"
},
{
"table": "FactInternetSales",
"status": "Completed"
}
],
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2021-12-10T08:40:31.57",
"endTime": "2021-12-10T08:40:43.87",
"type": "Data"
}
]
}
}
}
},
"Failed refresh example": {
"parameters": {
"groupId": "fdb91b8f-0a9b-44c1-b6c0-0cb185c6ebfb",
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "351f7113-59bb-4e5e-8c1e-e15ae7414121"
},
"responses": {
"200": {
"body": {
"startTime": "2021-12-10T08:39:28.517",
"endTime": "2021-12-10T08:39:30.04",
"type": "Full",
"commitMode": "PartialBatch",
"status": "Failed",
"extendedStatus": "Failed",
"currentRefreshType": "Full",
"numberOfAttempts": 0,
"messages": [
{
"message": "RefreshApiRequest for table refresh using refresh policy must have the property 'CommitMode' = 'Transactional' instead of 'PartialBatch'.",
"type": "Error"
}
],
"refreshAttempts": [
{
"attemptId": 1,
"startTime": "2021-12-10T08:39:28.517",
"endTime": "2021-12-10T08:39:30.04",
"serviceExceptionJson": "{\"errorCode\":\"ModelRefresh_ShortMessage_ProcessingError\",\"errorDescription\":\"0xC112001C: Expression.Error: Forced Error. . The exception was raised by the IDbCommand interface.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\\n0xC11C0006: The current operation was cancelled because another operation in the transaction failed.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\\n0xC112001C: The command has been canceled.. The exception was raised by the IDbCommand interface.\"}",
"type": "Data"
}
]
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Datasets"
],
"summary": "Cancels the specified refresh operation for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_CancelRefreshInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"description": "The workspace ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshId",
"description": "The refresh ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "fdb91b8f-0a9b-44c1-b6c0-0cb185c6ebfb",
"datasetId": "f7fc6510-e151-42a3-850b-d0805a391db0",
"refreshId": "87f31ef7-1e3a-4006-9b0b-191693e79e9e"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/refreshSchedule": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the refresh schedule for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetRefreshScheduleInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/RefreshSchedule"
}
}
},
"x-ms-examples": {
"Refresh schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Datasets"
],
"summary": "Updates the refresh schedule for the specified dataset from the specified workspace.",
"description": "\nA request that disables the refresh schedule should contain no other changes.\n\nAt least one day must be specified. If no times are specified, then Power BI will use a default single time per day.\n\n## Permissions\n\n- The user must be the dataset owner.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nThe limit on the number of time slots per day depends on whether a [Premium](/power-bi/admin/service-premium-what-is) or Shared capacity is used.\n
",
"operationId": "Datasets_UpdateRefreshScheduleInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "datasetModelRefreshScheduleRequest",
"description": "Update Refresh Schedule parameters, by specifying all or some of the parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/RefreshScheduleRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Change the notification option of a refresh schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"notifyOption": "NoNotification"
}
}
},
"responses": {
"200": {}
}
},
"Change the days and times of a refresh schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"days": [
"Sunday",
"Tuesday",
"Friday",
"Saturday"
],
"times": [
"07:00",
"11:30",
"16:00",
"23:30"
],
"localTimeZoneId": "UTC"
}
}
},
"responses": {
"200": {}
}
},
"Update the times of a refresh schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"times": [
"08:00",
"16:00"
]
}
}
},
"responses": {
"200": {}
}
},
"Disable a scheduled refresh example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetModelRefreshScheduleRequest": {
"value": {
"enabled": false
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/directQueryRefreshSchedule": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the refresh schedule for a specified [DirectQuery](/power-bi/connect-data/desktop-directquery-about) or [LiveConnection](/power-bi/connect-data/desktop-directquery-about#live-connections) dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDirectQueryRefreshScheduleInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DirectQueryRefreshSchedule"
}
}
},
"x-ms-examples": {
"Days and times schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"localTimeZoneId": "UTC"
}
}
}
},
"Frequency schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"frequency": 15,
"days": [],
"times": [],
"localTimeZoneId": "UTC"
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Datasets"
],
"summary": "Updates the refresh schedule for a specified [DirectQuery](/power-bi/connect-data/desktop-directquery-about) or [LiveConnection](/power-bi/connect-data/desktop-directquery-about#live-connections) dataset from the specified workspace.",
"description": "\nA request should contain either a set of days and times *or* a valid frequency, but not both. If you choose a set of days without specifying any times, then Power BI will use a default single time per day. Setting the frequency will automatically overwrite the days and times setting.\n\n## Permissions\n\n- The user must be the dataset owner.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_UpdateDirectQueryRefreshScheduleInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "datasetDQRefreshScheduleRequest",
"description": "Patch DirectQuery or LiveConnection Refresh Schedule parameters, by specifying all or some of the parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/DirectQueryRefreshScheduleRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Set a frequency based schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetDQRefreshScheduleRequest": {
"value": {
"frequency": 30
}
}
},
"responses": {
"200": {}
}
},
"Set a days and times based schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetDQRefreshScheduleRequest": {
"value": {
"days": [
"Sunday",
"Tuesday",
"Friday",
"Saturday"
],
"times": [
"07:00",
"11:30",
"16:00",
"23:30"
],
"localTimeZoneId": "UTC"
}
}
},
"responses": {
"200": {}
}
},
"Update the times of an existing days and times based schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"datasetDQRefreshScheduleRequest": {
"value": {
"times": [
"07:00",
"16:30",
"23:30"
]
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/parameters": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of parameters for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n\n## Limitations\n\n- Datasets with SQL, Oracle, Teradata, and SAP HANA [DirectQuery](/power-bi/connect-data/desktop-directquery-about) connections aren't supported.\n- Datasets created or modified using the public [XMLA endpoint](/power-bi/admin/service-premium-connect-tools) aren't supported.\n
",
"operationId": "Datasets_GetParametersInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MashupParameters"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"name": "ServerName",
"type": "Text",
"isRequired": true,
"currentValue": "MyTest.database.windows.net"
},
{
"name": "DatabaseName",
"type": "Text",
"isRequired": true,
"currentValue": "MyTestDB"
},
{
"name": "FromDate",
"type": "DateTime",
"isRequired": true,
"currentValue": "2/8/2002 12:00:00 AM"
},
{
"name": "FilterBlanks",
"type": "Logical",
"isRequired": true,
"currentValue": "TRUE"
},
{
"name": "MaxId",
"type": "Number",
"isRequired": true,
"currentValue": "77"
},
{
"name": "AnyParam",
"type": "Any",
"isRequired": true,
"currentValue": "uu63"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/Default.UpdateParameters": {
"post": {
"tags": [
"Datasets"
],
"summary": "Updates the parameters values for the specified dataset from the specified workspace.",
"description": "\n> [!NOTE]\n> We recommend using [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata) with this API call.\n\n> [!IMPORTANT]\n>\n> - If you're using **enhanced dataset metadata**, refresh the dataset to apply the new parameter values.\n> - If you're not using **enhanced dataset metadata**, wait 30 minutes for the update data sources operation to complete, and then refresh the dataset.\n\n## Permissions\n\n- The user must be the dataset owner.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- Datasets created or modified using the public [XMLA endpoint](/power-bi/admin/service-premium-connect-tools) aren't supported. To make changes to those datasets, the admin must use the Azure Analysis Services client library for Tabular Object Model.\n- [DirectQuery](/power-bi/connect-data/desktop-directquery-about) connections are only supported with [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata).\n- Datasets with Azure Analysis Services live connections aren't supported.\n- Maximum of 100 parameters per request.\n- All specified parameters must exist in the dataset.\n- Parameters values should be of the expected type.\n- The parameter list can't be empty or include duplicate parameters.\n- Parameters names are case-sensitive.\n- Parameter `IsRequired` must have a non-empty value.\n- The parameter types `Any` and `Binary` can't be updated.\n
",
"operationId": "Datasets_UpdateParametersInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "updateMashupParametersRequest",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateMashupParametersRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateMashupParametersRequest": {
"updateDetails": [
{
"name": "DatabaseName",
"newValue": "NewDB"
},
{
"name": "MaxId",
"newValue": "5678"
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/datasources": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of data sources for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetDatasourcesInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasources"
}
}
},
"x-ms-examples": {
"Analysis Services example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "AnalysisServices",
"connectionDetails": {
"server": "My-As-Server",
"database": "My-As-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"SQL example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "My-As-Server",
"database": "My-As-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"Excel example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "File",
"connectionDetails": {
"path": "c:\\users\\username\\documents\\orders1.xlsx"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"OData example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "OData",
"connectionDetails": {
"url": "http://services.odata.org/MyOdata/MyOdata.svc"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"SharePoint example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "SharePointList",
"connectionDetails": {
"url": "https://microsoft.sharepoint.com/hello/myproj/"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
}
},
"SAP HANA example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"value": [
{
"datasourceType": "SAPHana",
"connectionDetails": {
"server": "My-SapHana-Server",
"database": "My-SapHana-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
},
"Oracle example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"value": [
{
"datasourceType": "Oracle",
"connectionDetails": {
"server": "My-Oracle-Server",
"database": "My-Oracle-Database"
},
"datasourceId": "33cc5222-3fb9-44f7-b19d-ffbff18aaaf5",
"gatewayId": "0a2dafe6-0e93-4120-8d2c-fae123c111b1"
}
]
}
}
},
"Extension datasource example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Extension",
"datasourceId": "70540d95-4c8e-41ae-88c6-27a103b12841",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"kind": "AzureDataExplorer",
"path": "https://myserver.kusto.windows.net"
}
}
]
}
}
}
},
"Microsoft Exchange datasource example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Exchange",
"datasourceId": "4d126fc8-1568-46aa-ba16-ccf19b18f012",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"emailAddress": "john@contoso.com"
}
}
]
}
}
}
},
"Salesforce datasource example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Salesforce",
"datasourceId": "e8a6e0f5-b244-402a-ba5a-4d578609ede3",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"classInfo": "report-detail",
"loginServer": "https://login.salesforce.com/"
}
}
]
}
}
}
},
"Azure Blobs datasource example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "AzureBlobs",
"datasourceId": "e0315274-90b6-4fc0-abf2-2d60d448cb04",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"account": "myAccount",
"domain": "blob.core.windows.net"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/Default.UpdateDatasources": {
"post": {
"tags": [
"Datasets"
],
"summary": "Updates the data sources of the specified dataset from the specified workspace.",
"description": "\n> [!NOTE]\n> We recommend using [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata) with this API call.\n\n> [!IMPORTANT]\n>\n> - The original data source and the new data source must have the exact same schema.\n> - If you're using **enhanced dataset metadata**, refresh the dataset to get data from the new data sources.\n> - If you're not using **enhanced dataset metadata**, wait 30 minutes for the update data sources operation to complete, and then refresh the dataset.\n\n## Permissions\n\n- The user must be the dataset owner.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- Datasets created or modified using the public [XMLA endpoint](/power-bi/admin/service-premium-connect-tools) aren't supported. To make changes to those data sources, the admin must use the Azure Analysis Services client library for Tabular Object Model.\n- Only these data sources are supported: SQL Server, Azure SQL Server, Azure Analysis Services, Azure Synapse, OData, SharePoint, Teradata, and SAP HANA. For other data sources, use the [Update Parameters In Group](/rest/api/power-bi/datasets/update-parameters-in-group) API call.\n- Changing the data source type isn't supported.\n- Data sources that contain parameters in the connection string aren't supported.\n- Updating data sources that are part of merged or joined tables is only supported if you're using [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata).\n- For an Advanced Query that reference multiple data sources, only the first data source will be updated. To overcome this limitation, define the data source as a parameter and use the [Update Parameters In Group](/rest/api/power-bi/datasets/update-parameters-in-group) API call.\n- Datasets with incremental refresh policy are not fully supported, calling this API may not work as expected and result of partial datasources update, to overcome this you can try run a dataset refresh before calling this API.\n
",
"operationId": "Datasets_UpdateDatasourcesInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "updateDatasourcesRequest",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateDatasourcesRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateDatasourcesRequest": {
"updateDetails": [
{
"datasourceSelector": {
"datasourceType": "Sql",
"connectionDetails": {
"server": "My-Sql-Server",
"database": "My-Sql-Database"
}
},
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
},
{
"datasourceSelector": {
"datasourceType": "OData",
"connectionDetails": {
"url": "http://services.odata.org/V4/Northwind/Northwind.svc"
}
},
"connectionDetails": {
"url": "http://services.odata.org/V4/Odata/Northwind.svc"
}
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/Default.SetAllConnections": {
"post": {
"tags": [
"Datasets"
],
"summary": "Updates all connections for the specified dataset from the specified workspace. This API call only supports SQL DirectQuery datasets.",
"description": "\n> [!IMPORTANT]\n> This API call is deprecated and no longer supported. This API call isn't compatible with [enhanced dataset metadata](/power-bi/connect-data/desktop-enhanced-dataset-metadata).\n>\n> Instead use:\n>\n> - [Update Parameters In Group](/rest/api/power-bi/datasets/update-parameters-in-group) to update connections for SQL, Azure Synapse, OData, and SharePoint data sources.\n> - [Update Datasources In Group](/rest/api/power-bi/datasets/update-datasources-in-group) to connections for other data sources.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nSupports SQL DirectQuery datasets.\n
",
"operationId": "Datasets_SetAllDatasetConnectionsInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "parameters",
"in": "body",
"description": "The body",
"required": true,
"schema": {
"$ref": "#/definitions/ConnectionDetails"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"parameters": {
"connectionString": "data source=MyServer.database.windows.net;initial catalog=MyDatabase;persist security info=True;encrypt=True;trustservercertificate=False"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": true
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/Default.BindToGateway": {
"post": {
"tags": [
"Datasets"
],
"summary": "Binds the specified dataset from the specified workspace to the specified gateway, optionally with a given set of data source IDs. If you don't supply a specific data source ID, the dataset will be bound to the first matching data source in the gateway.",
"description": "\n> [!IMPORTANT]\n> Add the API caller principal as a data source user on the gateway.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nOnly supports the on-premises data gateway\n
",
"operationId": "Datasets_BindToGatewayInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"name": "bindToGatewayRequest",
"in": "body",
"description": "The bind to gateway request",
"required": true,
"schema": {
"$ref": "#/definitions/BindToGatewayRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example without 'datasourceObjectIds'": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"bindToGatewayRequest": {
"gatewayObjectId": "1f69e798-5852-4fdd-ab01-33bb14b6e934"
}
},
"responses": {
"200": {}
}
},
"Example with 'datasourceObjectIds'": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"bindToGatewayRequest": {
"gatewayObjectId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceObjectIds": [
"dc2f2dac-e5e2-4c37-af76-2a0bc10f16cb",
"3bfe5d33-ab7d-4d24-b0b5-e2bb8eb01cf5"
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/Default.GetBoundGatewayDatasources": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of gateway data sources for the specified dataset from the specified workspace.",
"description": "\n> [!IMPORTANT]\n> This API call is deprecated, use [Get Datasources In Group](/rest/api/power-bi/datasets/get-datasources-in-group) instead.\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetGatewayDatasourcesInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GatewayDatasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "16a54ccd-620d-4af3-9197-0b8c779a9a6d",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"datasourceType": "Sql",
"connectionDetails": "{\"server\":\"MyServer.database.windows.net\",\"database\":\"MyDatabase\"}"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/Default.DiscoverGateways": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns a list of gateways that the specified dataset from the specified workspace can be bound to.",
"description": "\nThis API call is only relevant to datasets that have at least one on-premises connection. For datasets with cloud-only connections, this API call returns an empty list.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.Read.All\n
",
"operationId": "Datasets_DiscoverGatewaysInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Gateways"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"name": "My_Sample_Gateway",
"type": "Resource",
"publicKey": {
"exponent": "AQAB",
"modulus": "o6j2....cLk="
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/Default.TakeOver": {
"post": {
"tags": [
"Datasets"
],
"summary": "Transfers ownership over the specified dataset to the current authorized user.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_TakeOverInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/executeQueries": {
"post": {
"tags": [
"Datasets"
],
"summary": "Executes Data Analysis Expressions (DAX) queries against the provided dataset.",
"description": "\nDAX query errors will result in:\n\n- A response error, such as `DAX query failure`.\n- A failure HTTP status code (400).\n\nA query that requests more than one table, or more than the allowed number of table rows, will result in:\n\n- Limited data being returned.\n- A response error, such as `More than one result table in a query` or `More than {allowed number} rows in a query result`.\n- A successful HTTP status code (200).\n\nColumns that are fully qualified in the query will be returned with a fully qualified name, for example, `MyTable[MyColumn]`. Columns that are renamed or created in the query will be returned within square bracket, for example, `[MyNewColumn]`.\n\n## Permissions\n\nThe tenant setting **Dataset Execute Queries REST API**, found under **Integration settings**, must be enabled.\n\nThe user must have access to the workspace, and dataset read and build permissions. For more information, see [Manage dataset access permissions](/power-bi/connect-data/service-datasets-manage-access-permissions).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\n- Datasets that are hosted in Azure Analysis Services or that have a live connection to an on-premises Azure Analysis Services model aren't supported.\n- One query per API call.\n- One table request per query.\n- Maximum of 100,000 rows or 1,000,000 values per query (whichever is hit first). For example if you query for 5 columns, you can get back max 100,000 rows. If you query for 20 columns, you can get back max 50,000 rows (1 million divided by 20).\n- Maximum of 15MB of data per query. Once 15MB is exceeded, the current row will be completed but no additional rows will be written.\n- There's a limit of 120 query requests per minute per user, regardless of the dataset that's queried.\n- To use Service Principals, make sure the admin tenant setting [_Allow service principals to use Power BI APIs_](/power-bi/admin/service-admin-portal-developer#allow-service-principals-to-use-power-bi-apis) under _Developer settings_ is enabled. However, regardless of the admin tenant setting, Service Principals aren't supported for datasets with RLS per [RLS limitations](/power-bi/admin/service-admin-rls#considerations-and-limitations) or datasets with SSO enabled.\n- Only DAX queries are supported at this time. MDX and DMV queries are not supported. \n
",
"operationId": "Datasets_ExecuteQueriesInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "requestMessage",
"description": "The request message",
"required": true,
"schema": {
"$ref": "#/definitions/DatasetExecuteQueriesRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetExecuteQueriesResponse"
}
}
},
"deprecated": false,
"x-ms-examples": {
"Execute queries example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"requestMessage": {
"queries": [
{
"query": "EVALUATE VALUES(MyTable)"
}
],
"serializerSettings": {
"includeNulls": true
},
"impersonatedUserName": "someuser@mycompany.com"
}
},
"responses": {
"200": {
"body": {
"results": [
{
"tables": [
{
"rows": [
{
"MyTable[Year]": 2010,
"MyTable[Quarter]": "Q1"
},
{
"MyTable[Year]": 2010,
"MyTable[Quarter]": "Q2"
},
{
"MyTable[Year]": 2011,
"MyTable[Quarter]": "Q1"
}
]
}
]
}
]
}
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/queryScaleOut/syncStatus": {
"get": {
"tags": [
"Datasets"
],
"summary": "Returns the query scale-out sync status for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GetQueryScaleOutSyncStatusInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetQueryScaleOutSyncStatus"
}
}
},
"deprecated": false,
"x-ms-examples": {
"Get query scale-out sync status example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"commitVersion": 133186221251720662,
"commitTimestamp": "2023-01-19T17:15:25.1720662Z",
"targetSyncVersion": 133184583205771509,
"targetSyncTimestamp": "2023-01-17T19:45:20.5771509Z",
"triggerReason": "explicit",
"syncStartTime": "2023-01-17T20:37:49.9625479Z",
"syncEndTime": "2023-01-17T20:37:50.6029293Z",
"minActiveReadVersion": 133184583205771509,
"minActiveReadTimestamp": "2023-01-17T19:45:20.5771509Z",
"scaleOutStatus": "Enabled"
}
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/queryScaleOut/sync": {
"post": {
"tags": [
"Datasets"
],
"summary": "Triggers a query scale-out sync of read-only replicas for the specified dataset from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"operationId": "Datasets_TriggerQueryScaleOutSyncInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"in": "path",
"description": "The dataset ID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetQueryScaleOutSyncStatus"
}
}
},
"deprecated": false,
"x-ms-examples": {
"Trigger query scale-out sync example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"commitVersion": 133186221251720662,
"commitTimestamp": "2023-01-19T17:15:25.1720662Z",
"targetSyncVersion": 133184583205771509,
"targetSyncTimestamp": "2023-01-17T19:45:20.5771509Z",
"triggerReason": "explicit",
"syncStartTime": "2023-01-17T20:37:49.9625479Z",
"syncEndTime": "2023-01-17T20:37:50.6029293Z",
"minActiveReadVersion": 133184583205771509,
"minActiveReadTimestamp": "2023-01-17T19:45:20.5771509Z",
"scaleOutStatus": "Enabled"
}
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/imports": {
"get": {
"tags": [
"Imports"
],
"summary": "Returns a list of imports from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nImporting Power BI .pbix files from OneDrive isn't supported.\n
",
"operationId": "Imports_GetImportsInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Imports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"importState": "Succeeded",
"createdDateTime": "2018-05-08T14:56:18.477Z",
"updatedDateTime": "2018-05-08T14:56:18.477Z",
"name": "SalesMarketing",
"connectionType": "import",
"source": "Upload",
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48"
}
]
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Imports"
],
"summary": "Creates new content in the specified workspace.",
"description": "\n> [!NOTE]\n> Supported content:\n>\n> - Power BI .pbix files\n> - JSON files (.json)\n> - Excel files (.xlsx)\n> - SQL Server Report Definition Language files (.rdl)\n\n- To import a file, specify the content type **multipart/form-data** in the request headers and encode the file as [form data](https://www.w3.org/TR/html401/interact/forms.html) in the request body.\n- To import an .rdl file, include the file extension in the name specified by `datasetDisplayName`, as described in [URI parameters](/rest/api/power-bi/imports/post-import-in-group#uri-parameters).\n- To import an .xlsx file from OneDrive for Business, include the content type **application/json** in the request headers. Include [ImportInfo](/rest/api/power-bi/imports/post-import-in-group#importinfo) with `filePath` set to the .xlsx file path in the request body.\n- To import large Power BI .pbix files that are between 1 GB and 10 GB in size, see [Create Temporary Upload Location In Group](/rest/api/power-bi/imports/create-temporary-upload-location-in-group) and the [Import Large Files](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/Import%20Large%20Files) PowerShell script. This is only supported for Premium capacity workspaces.\n- To create a dataflow from a model.json file, set `datasetDisplayName` to *model.json*, as described in [URI parameters](/rest/api/power-bi/imports/post-import-in-group#uri-parameters).\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- Dataflows with service principal aren't supported.\n- Importing a Power BI .pbix file from OneDrive isn't supported.\n- Importing a file that has a **protected** sensitivity label isn't supported for service principals.\n
",
"operationId": "Imports_PostImportInGroup",
"consumes": [
"application/json",
"multipart/form-data"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetDisplayName",
"in": "query",
"required": true,
"description": "The display name of the dataset should include file extension. Not supported when importing from OneDrive for Business. For importing or creating dataflows, this parameter should be hardcoded to model.json.",
"type": "string"
},
{
"name": "nameConflict",
"in": "query",
"required": false,
"description": "Specifies what to do if a dataset with the same name already exists. The default value is `Ignore`. For RDL files, `Abort` and `Overwrite` are the only supported options. For dataflow model.json files, `Abort` and `GenerateUniqueName` are the only supported options.",
"type": "string",
"enum": [
"Ignore",
"Abort",
"Overwrite",
"CreateOrOverwrite",
"GenerateUniqueName"
],
"x-ms-enum": {
"name": "ImportConflictHandlerMode",
"modelAsExtensible": true,
"values": [
{
"value": "Ignore",
"description": "If a dataset with the same name already exists, the import operation will create a new dataset with the same name."
},
{
"value": "Abort",
"description": "If dataset or dataflow with the same name already exists, the import operation will be cancelled."
},
{
"value": "Overwrite",
"description": "If a dataset with the same name already exists, the import operation will replace the existing dataset with the new one. The import operation will fail if there's no conflict or if there's more than one existing dataset with the same name."
},
{
"value": "CreateOrOverwrite",
"description": "If a dataset with the same name already exists, the import operation will replace the existing dataset with the new one. The import operation will fail if there's more than one existing dataset with the same name."
},
{
"value": "GenerateUniqueName",
"description": "If a dataflow with the same name already exists, the import operation will generate a new unique name for the new dataflow."
}
]
}
},
{
"name": "skipReport",
"in": "query",
"required": false,
"description": "Whether to skip report import. If specified, the value must be `true`. Only supported for Power BI .pbix files.",
"type": "boolean"
},
{
"name": "overrideReportLabel",
"in": "query",
"required": false,
"description": "Whether to override the existing label on a report when republishing a Power BI .pbix file. The service default value is `true`.",
"type": "boolean"
},
{
"name": "overrideModelLabel",
"in": "query",
"required": false,
"description": "Determines whether to override the existing label on a model when republishing a Power BI .pbix file. The service default value is `true`.",
"type": "boolean"
},
{
"name": "subfolderObjectId",
"in": "query",
"required": false,
"description": "The subfolder ID to import the file to subfolder.",
"type": "string",
"format": "uuid"
},
{
"name": "importInfo",
"in": "body",
"description": "The import to post",
"required": true,
"schema": {
"$ref": "#/definitions/ImportInfo"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Import"
}
},
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Import"
}
}
},
"x-ms-examples": {
"Post import example": {
"parameters": {
"groupId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"consumes": "multipart/form-data;",
"boundary": "f05e5244-f876-43b9-bc87-d71598f6b32a",
"paramType": "form",
"datasetDisplayName": "MyReport",
"nameConflict": "Ignore",
"importInfo": {
"value": "--f05e5244-f876-43b9-bc87-d71598f6b32a Content-Disposition: form-data AA...ZZ --f05e5244-f876-43b9-bc87-d71598f6b32a--"
}
},
"responses": {
"202": {
"body": {
"id": "d02b8896-e247-4d83-ae5a-014028cb0665"
}
}
}
},
"Post import skip report example": {
"parameters": {
"groupId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"consumes": "multipart/form-data;",
"boundary": "f05e5244-f876-43b9-bc87-d71598f6b32a",
"paramType": "form",
"datasetDisplayName": "MyReport",
"nameConflict": "Ignore",
"skipReport": true,
"overrideReportLabel": true,
"overrideModelLabel": true,
"importInfo": {
"value": "--f05e5244-f876-43b9-bc87-d71598f6b32a Content-Disposition: form-data AA...ZZ --f05e5244-f876-43b9-bc87-d71598f6b32a--"
}
},
"responses": {
"202": {
"body": {
"id": "d02b8896-e247-4d83-ae5a-014028cb0665"
}
}
}
},
"Import dataflow model.json example": {
"parameters": {
"groupId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"consumes": "multipart/form-data;",
"boundary": "f05e5244-f876-43b9-bc87-d71598f6b32a",
"paramType": "form",
"datasetDisplayName": "model.json",
"nameConflict": "Abort",
"skipReport": true,
"importInfo": {
"value": "--f05e5244-f876-43b9-bc87-d71598f6b32a Content-Disposition: form-data name=model.json; filename=model.json Content-Type: application/json [Contents of Model JSON Encoded] --f05e5244-f876-43b9-bc87-d71598f6b32a--"
}
},
"responses": {
"202": {
"body": {
"id": "d02b8896-e247-4d83-ae5a-014028cb0665"
}
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/imports/{importId}": {
"get": {
"tags": [
"Imports"
],
"summary": "Returns the specified import from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Imports_GetImportInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "importId",
"in": "path",
"required": true,
"description": "The import ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Import"
}
}
},
"x-ms-examples": {
"In-progress import example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"importId": "82d9a37a-2b45-4221-b012-cb109b8e30c7"
},
"responses": {
"200": {
"body": {
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"importState": "Publishing",
"createdDateTime": "2018-05-08T14:56:18.477Z",
"updatedDateTime": "2018-05-08T14:56:18.477Z",
"name": "SalesMarketing",
"connectionType": "import",
"source": "Upload",
"datasets": [],
"reports": []
}
}
}
},
"Completed import example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"importId": "82d9a37a-2b45-4221-b012-cb109b8e30c7"
},
"responses": {
"200": {
"body": {
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"importState": "Succeeded",
"createdDateTime": "2018-05-08T14:56:18.477Z",
"updatedDateTime": "2018-05-08T14:56:18.477Z",
"name": "SalesMarketing",
"connectionType": "import",
"source": "Upload",
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/imports/createTemporaryUploadLocation": {
"post": {
"tags": [
"Imports"
],
"summary": "Creates a temporary blob storage upload location for importing large Power BI .pbix files that are between 1 GB and 10 GB in size.",
"description": "\nTo import large Power BI .pbix files:\n\n1. Create a temporary upload location using this API call.\n1. Upload the Power BI .pbix files using the *shared access signature* URL from the API call response.\n1. Call [Post Import In Group](/rest/api/power-bi/imports/post-import-in-group), specifying the *shared access signature* URL in the `fileUrl` parameter of the [request body](/rest/api/power-bi/imports/post-import-in-group#request-body).\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nImporting large Power BI .pbix files between 1 GB and 10 GB in size is only available for Premium capacity workspaces.\n
",
"operationId": "Imports_CreateTemporaryUploadLocationInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/TemporaryUploadLocation"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns a list of reports from the specified workspace.",
"description": "\nSince paginated reports (RDL) don't have a dataset, the dataset ID value in the API response for paginated reports isn't displayed.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetReportsInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Reports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the specified report from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetReportInGroup",
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Report"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715"
},
"responses": {
"200": {
"body": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48"
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Reports"
],
"summary": "Deletes the specified report from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All\n
",
"operationId": "Reports_DeleteReportInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/Clone": {
"post": {
"tags": [
"Reports"
],
"summary": "Clones the specified report from the specified workspace.",
"description": "\n- If the dataset for a cloned report resides in two different workspaces or in **My workspace**, then a shared dataset will be created in the report's workspace.\n- When cloned, reports with a [live connection](/power-bi/desktop-report-lifecycle-datasets) will lose that connection and instead have a direct binding to the target dataset.\n\n## Permissions\n\n- The user must have all of the following, unless a requirement doesn't apply:\n\n - **Write** permission on the specified report.\n - **Build** permission on the target dataset, required if the `targetModelId` parameter is used.\n\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nContent.Create\n
",
"operationId": "Reports_CloneReportInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Clone report parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CloneReportRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Report"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"requestParameters": {
"name": "New Report Name",
"targetModelId": "8e4d5880-81d6-4804-ab97-054665050799",
"targetWorkspaceId": "2f42a406-a075-4a15-bbf2-97ef958c94cb"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/Export": {
"get": {
"tags": [
"Reports"
],
"summary": "Exports the specified report from the specified workspace to a Power BI .pbix or .rdl file.",
"description": "\n- For .pbix reports - \n You can set the `preferClientRouting` URL query parameter to `true` as a [workaround](/power-bi/developer/embedded/troubleshoot-rest-api#fix-timeout-exceptions-when-using-import-and-export-apis) for timeout issues.\n- Large files are downloaded to a temporary blob. Their URL is returned in the response and stored in the locally downloaded Power BI .pbix file.\n- For more information on requirements and limitations, see [Download a report from the Power BI service to Power BI Desktop](/power-bi/create-reports/service-export-to-pbix).\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n> [!NOTE]\n> Try-it feature is not supported for this API.\n See [Export Power BI Report](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/Export-PowerBIReport.ps1) Powershell script for an example of how to use this API.\n\n## Required Scope\n\nReport.ReadWrite.All or both Report.Read.All and Dataset.Read.All\n\n## Limitations\n\nFor .pbix reports, exporting a report with a [Power BI service live connection](/power-bi/desktop-report-lifecycle-datasets) isn't supported after calling [Rebind Report](/rest/api/power-bi/reports/rebind-report).\n
",
"operationId": "Reports_ExportReportInGroup",
"consumes": [],
"produces": [
"application/zip",
"application/octet-stream"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"required": true,
"description": "The report ID",
"type": "string",
"format": "uuid"
},
{
"name": "downloadType",
"description": "The type of download. Valid values are LiveConnect and IncludeModel",
"in": "query",
"required": false,
"type": "string",
"enum": [
"IncludeModel",
"LiveConnect"
],
"x-ms-enum": {
"name": "DownloadType",
"modelAsExtensible": true,
"values": [
{
"value": "IncludeModel",
"description": "Export the report with the semantic model included."
},
{
"value": "LiveConnect",
"description": "Export the report with a live connection to the semantic model."
}
]
}
}
],
"responses": {
"200": {
"schema": {
"type": "file"
},
"description": "Exported File"
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/UpdateReportContent": {
"post": {
"tags": [
"Reports"
],
"summary": "Updates the content of the specified report from the specified workspace with the content of a specified source report.",
"description": "\nSpecify the source report in the request body.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All\n
",
"operationId": "Reports_UpdateReportContentInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "UpdateReportContent parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateReportContentRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Report"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"sourceReport": {
"sourceReportId": "8e4d5880-81d6-4804-ab97-054665050799",
"sourceWorkspaceId": "2f42a406-a075-4a15-bbf2-97ef958c94cb"
},
"sourceType": "ExistingReport"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/Rebind": {
"post": {
"tags": [
"Reports"
],
"summary": "Rebinds the specified report from the specified workspace to the specified dataset.",
"description": "\n- If the specified dataset resides in a different workspace than the report or in **My workspace**, then a shared dataset will be created in the report's workspace.\n- On rebind, reports with a [live connection](/power-bi/desktop-report-lifecycle-datasets) will lose that connection and instead have a direct binding to the target dataset.\n\n## Permissions\n\n- The user must have all of the following:\n\n - **Write** permission on the specified report.\n - **Build** permission on the target dataset.\n\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All\n\n## Limitations\n\nPaginated reports are not supported.
",
"operationId": "Reports_RebindReportInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Rebind report parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/RebindReportRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/pages": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns a list of pages within the specified report from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetPagesInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Pages"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "879445d6-3a9e-4a74-b5ae-7c0ddabf0f11"
},
"responses": {
"200": {
"body": {
"value": [
{
"displayName": "Regional Sales Analysis",
"name": "ReportSection",
"order": "0"
},
{
"displayName": "Geographic Analysis",
"name": "ReportSection1",
"order": "1"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/pages/{pageName}": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the specified page within the specified report from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetPageInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "pageName",
"in": "path",
"required": true,
"description": "The page name",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Page"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "879445d6-3a9e-4a74-b5ae-7c0ddabf0f11",
"pageName": "ReportSection"
},
"responses": {
"200": {
"body": {
"displayName": "Regional Sales Analysis",
"name": "ReportSection",
"order": "0"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/datasources": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns a list of data sources for the specified paginated report (RDL) from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetDatasourcesInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "AnalysisServices",
"datasourceId": "f8c56590-43cb-43bf-8daa-233ba2520f55",
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"connectionDetails": {
"server": "My-As-Server",
"database": "My-As-Database"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/Default.UpdateDatasources": {
"post": {
"tags": [
"Reports"
],
"summary": "Updates the data sources of the specified paginated report (RDL) from the specified workspace.",
"description": "\n> [!IMPORTANT]\n> Both the original data source and the new data source must have the exact same schema.\n\n## Permissions\n\n- The user must be the data source owner.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReports.ReadWrite.All\n\n## Limitations\n\n- Only supports paginated reports.\n- Changing the data source type isn't supported.\n
",
"operationId": "Reports_UpdateDatasourcesInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "updateRdlDatasourcesRequest",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateRdlDatasourcesRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"updateRdlDatasourcesRequest": {
"updateDetails": [
{
"datasourceName": "SqlDatasource",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
},
{
"datasourceName": "SqlAzureDatasource",
"connectionDetails": {
"server": "New-SqlAzure-Server.windows.net",
"database": "New-SqlAzure-Database"
}
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/ExportTo": {
"post": {
"tags": [
"Reports"
],
"summary": "Exports the specified report from the specified workspace to the requested [file format](/rest/api/power-bi/reports/export-to-file-in-group#fileformat).",
"description": "\nThe API is asynchronous. When the API is called, it triggers an export job. After triggering an export job, use [GetExportToFileStatus API](/rest/api/power-bi/reports/get-export-to-file-status-in-group) to track the job status. \nRead more about the entire flow: [Export Power BI reports](/power-bi/developer/embedded/export-to) and [Export Paginated reports](/power-bi/developer/embedded/export-paginated-report)\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nAll of the following:\n\n- Report.ReadWrite.All or Report.Read.All\n- Dataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nCheck the limitations in [Export Power BI report to file](/power-bi/developer/embedded/export-to#considerations-and-limitations) and [Export paginated report to file](/power-bi/developer/embedded/export-paginated-report#considerations-and-limitations).\n
",
"operationId": "Reports_ExportToFileInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Export to file request parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/ExportReportRequest"
}
}
],
"responses": {
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Export"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/exports/{exportId}": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the current status of the [Export to File In Group](/rest/api/power-bi/reports/export-to-file-in-group) job for the specified report from the specified workspace.",
"description": "\nWhen the export job status is 'Succeeded' use the [GetFileOfExportToFile API](/rest/api/power-bi/reports/get-file-of-export-to-file-in-group) to retrieve the file.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetExportToFileStatusInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "exportId",
"in": "path",
"required": true,
"description": "The export ID",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Export"
}
},
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/Export"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"id": "Mi9C5419i....PS4=",
"createdDateTime": "2021-12-08T10:26:09.3069086Z",
"lastActionDateTime": "2021-12-08T10:26:38.016851Z",
"reportId": "cad51cfa-e740-324f-acbb-8ca43c40a2d4",
"reportName": "Report name",
"status": "Succeeded",
"percentComplete": 100,
"resourceLocation": "...Mi9C5419i....PS4=/file",
"resourceFileExtension": ".pptx",
"expirationTime": "2021-12-09T10:26:11.586756Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/exports/{exportId}/file": {
"get": {
"tags": [
"Reports"
],
"summary": "Returns the file from the [Export to File In Group](/rest/api/power-bi/reports/export-to-file-in-group) job for the specified report from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n
",
"operationId": "Reports_GetFileOfExportToFileInGroup",
"consumes": [],
"produces": [
"application/*",
"image/*",
"text/csv",
"text/xml",
"multipart/related"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "exportId",
"in": "path",
"required": true,
"description": "The export ID",
"type": "string"
}
],
"responses": {
"200": {
"schema": {
"type": "file"
},
"description": "The exported file"
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dashboards": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns a list of dashboards from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n
",
"operationId": "Dashboards_GetDashboardsInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboards"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isReadOnly": false
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Dashboards"
],
"summary": "Creates a new empty dashboard in the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nContent.Create\n
",
"operationId": "Dashboards_AddDashboardInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Add dashboard parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/AddDashboardRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"requestParameters": {
"name": "SalesMarketing"
}
},
"responses": {
"200": {
"body": {
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isReadOnly": false
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dashboards/{dashboardId}": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns the specified dashboard from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n
",
"operationId": "Dashboards_GetDashboardInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af"
},
"responses": {
"200": {
"body": {
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isReadOnly": false
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Dashboards"
],
"summary": "Deletes the specified dashboard from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDashboard.ReadWrite.All\n
",
"operationId": "Dashboards_DeleteDashboardInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "d81d5fa5-17d9-4ae4-90a6-d038876c19bd",
"dashboardId": "7a463f03-22df-48be-9c00-56067f2fb75f"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dashboards/{dashboardId}/tiles": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns a list of tiles within the specified dashboard from the specified workspace.",
"description": "\nSupported tiles include datasets and live tiles that contain an entire report page.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nTitles that are edited in the report before the visual is added to the dashboard, are not returned. To return these titles, edit them in the dashboard.\n
",
"operationId": "Dashboards_GetTilesInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tiles"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"title": "SalesMarketingTile",
"embedUrl": "https://app.powerbi.com/embed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&tileId=312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48",
"rowSpan": 0,
"colSpan": 0,
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dashboards/{dashboardId}/tiles/{tileId}": {
"get": {
"tags": [
"Dashboards"
],
"summary": "Returns the specified tile within the specified dashboard from the specified workspace.",
"description": "\nSupported tiles include datasets and live tiles that contain an entire report page.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nTitles that are edited in the report before the visual is added to the dashboard, are not returned. To return these titles, edit them in the dashboard.\n
",
"operationId": "Dashboards_GetTileInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "tileId",
"description": "The tile ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tile"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"tileId": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b"
},
"responses": {
"200": {
"body": {
"id": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"title": "SalesMarketingTile",
"embedUrl": "https://app.powerbi.com/embed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&tileId=312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48",
"rowSpan": 0,
"colSpan": 0,
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dashboards/{dashboardId}/tiles/{tileId}/Clone": {
"post": {
"tags": [
"Dashboards"
],
"summary": "Clones the specified tile from the specified workspace.",
"description": "\nWhen a tile is cloned to another workspace and bound to another report and dataset, it's cloned as is with its underlying query containing the original report filters.\n\nIf the target report ID and target dataset are missing, the following can occur:\n- If you're cloning a tile within the same workspace, the report and dataset links will be cloned from the source tile.\n- If you're cloning a tile within a different workspace, report and dataset links will be removed, and the tile will be broken.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDashboard.ReadWrite.All\n
",
"operationId": "Dashboards_CloneTileInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "tileId",
"description": "The tile ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Clone tile parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CloneTileRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tile"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/GenerateToken": {
"post": {
"tags": [
"EmbedToken"
],
"summary": "Generates an embed token to allow report creation in the specified workspace based on the specified dataset.",
"description": "\n> [!TIP]\n> To create embed tokens, it's recommended to use the latest API, [Generate Token](/rest/api/power-bi/embed-token/generate-token). Generate token supports additional functions, such as creating a token for multiple items. \n\n> [!IMPORTANT]\n> This API call is only relevant to the [embed for your customers](/power-bi/developer/embed-sample-for-customers) scenario. To learn more about using this API, see [Considerations when generating an embed token](/power-bi/developer/embedded/generate-embed-token).\n\n## Permissions\n\n- When using a service principal for authentication, refer to [Embed Power BI content with service principal](/power-bi/developer/embed-service-principal) and [Considerations and limitations](/power-bi/developer/embedded/embed-service-principal#considerations-and-limitations).\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nAll of the following:\n\n- Content.Create\n- Report.ReadWrite.All or Report.Read.All\n- Dataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nFor Azure Analysis Services or Analysis Services on-premises live connection reports, generating an embed token with row-level security may not work for several minutes after a [Rebind Report](/rest/api/power-bi/reports/rebind-report) api call.\n
",
"operationId": "Reports_GenerateTokenForCreateInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Generate token parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GenerateTokenRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/EmbedToken"
}
}
},
"x-ms-examples": {
"Generate an embed token for report creation based on a specified dataset example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"requestParameters": {
"accessLevel": "Create",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate an embed token for report creation based on a specified dataset example. The embed token uses an effective identity.": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"requestParameters": {
"accessLevel": "Create",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/GenerateToken": {
"post": {
"tags": [
"EmbedToken"
],
"summary": "Generates an embed token to view or edit the specified report from the specified workspace.",
"description": "\n> [!TIP]\n> To create embed tokens, it's recommended to use the latest API, [Generate Token](/rest/api/power-bi/embed-token/generate-token). Generate token supports additional functions, such as creating a token for multiple items. \n\n> [!IMPORTANT]\n> This API call is only relevant to the [embed for your customers](/power-bi/developer/embed-sample-for-customers) scenario. To learn more about using this API, see [Considerations when generating an embed token](/power-bi/developer/embedded/generate-embed-token).\n\n## Permissions\n\n- When using a service principal for authentication, refer to [Embed Power BI content with service principal](/power-bi/developer/embed-service-principal) and [Considerations and limitations](/power-bi/developer/embedded/embed-service-principal#considerations-and-limitations).\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nAll of the following, unless a requirement doesn't apply:\n\n- Report.ReadWrite.All or Report.Read.All\n- Dataset.ReadWrite.All or Dataset.Read.All\n- Content.Create, required if the `allowSaveAs` flag is specified in [GenerateTokenRequest](/rest/api/power-bi/embed-token/reports-generate-token-for-create-in-group#generatetokenrequest)\n\n## Limitations\n\nFor Azure Analysis Services or Analysis Services on-premises live connection reports, generating an embed token with row-level security may not work for several minutes after a [Rebind Report](/rest/api/power-bi/reports/rebind-report).\n
",
"operationId": "Reports_GenerateTokenInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Generate token parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GenerateTokenRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/EmbedToken"
}
}
},
"x-ms-examples": {
"Generate a report embed token using an effective identity example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a report embed token using an effective identity with custom data for Azure Analysis Services example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"customData": "john_contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a report embed token using an effective identity with multiple roles example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales",
"marketing"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a report embed token using an effective identity with an identity blob example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
],
"identityBlob": {
"value": "eyJ0eX....AAA="
}
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a report embed token for editing example. The embed token uses an effective identity.": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"accessLevel": "Edit",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a report embed token for viewing a report and saving to a new report example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"accessLevel": "View",
"allowSaveAs": "true"
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a paginated report embed token using an effective identity example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"username": "John Smith",
"reports": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/GenerateToken": {
"post": {
"tags": [
"EmbedToken"
],
"summary": "Generates an embed token based on the specified dataset from the specified workspace.",
"description": "\n> [!TIP]\n> To create embed tokens, it's recommended to use the latest API, [Generate Token](/rest/api/power-bi/embed-token/generate-token). Generate token supports additional functions, such as creating a token for multiple items. \n\n> [!NOTE]\n> An embed token can be used to [embed Q&A](/power-bi/developer/qanda) within your application.\n\n> [!IMPORTANT]\n> This API call is only relevant to the [embed for your customers](/power-bi/developer/embed-sample-for-customers) scenario. To learn more about using this API, see [Considerations when generating an embed token](/power-bi/developer/embedded/generate-embed-token).\n\n## Permissions\n\n- When using a service principal for authentication, refer to [Embed Power BI content with service principal](/power-bi/developer/embed-service-principal) and [Considerations and limitations](/power-bi/developer/embedded/embed-service-principal#considerations-and-limitations).\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Datasets_GenerateTokenInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "requestParameters",
"description": "Generate token parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GenerateTokenRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/EmbedToken"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"requestParameters": {
"accessLevel": "View"
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dashboards/{dashboardId}/GenerateToken": {
"post": {
"tags": [
"EmbedToken"
],
"summary": "Generates an embed token to view the specified dashboard from the specified workspace.",
"description": "\n> [!IMPORTANT]\n> This API call is only relevant to the [embed for your customers](/power-bi/developer/embed-sample-for-customers) scenario. To learn more about using this API, see [Considerations when generating an embed token](/power-bi/developer/embedded/generate-embed-token).\n\n## Permissions\n\n- When using a service principal for authentication, refer to [Embed Power BI content with service principal](/power-bi/developer/embed-service-principal) and [Considerations and limitations](/power-bi/developer/embedded/embed-service-principal#considerations-and-limitations).\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nAll of the following:\n\n- Dashboard.ReadWrite.All or Dashboard.Read.All\n- Report.ReadWrite.All or Report.Read.All\n- Dataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Dashboards_GenerateTokenInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Generate token parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GenerateTokenRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/EmbedToken"
}
}
},
"x-ms-examples": {
"Generate a dashboard embed token with multiple identities example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
},
{
"username": "john_contoso",
"roles": [
"product"
],
"datasets": [
"a8b062ca-5730-468f-9df7-43c2ba76bf5e"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a dashboard embed token using an effective identity with an identity blob example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
],
"identityBlob": {
"value": "eyJ0eX....AAA="
}
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dashboards/{dashboardId}/tiles/{tileId}/GenerateToken": {
"post": {
"tags": [
"EmbedToken"
],
"summary": "Generates an embed token to view the specified tile from the specified workspace.",
"description": "\n> [!IMPORTANT]\n> This API call is only relevant to the [embed for your customers](/power-bi/developer/embed-sample-for-customers) scenario. To learn more about using this API, see [Considerations when generating an embed token](/power-bi/developer/embedded/generate-embed-token).\n\n## Permissions\n\n- When using a service principal for authentication, refer to [Embed Power BI content with service principal](/power-bi/developer/embed-service-principal) and [Considerations and limitations](/power-bi/developer/embedded/embed-service-principal#considerations-and-limitations).\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nAll of the following:\n\n- Dashboard.ReadWrite.All or Dashboard.Read.All\n- Report.ReadWrite.All or Report.Read.All\n- Dataset.ReadWrite.All or Dataset.Read.All\n
",
"operationId": "Tiles_GenerateTokenInGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "tileId",
"description": "The tile ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"description": "Generate token parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GenerateTokenRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/EmbedToken"
}
}
},
"x-ms-examples": {
"Generate a tile embed token using an effective identity example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"tileId": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a tile embed token using an effective identity with custom data for Azure Analysis Services example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"tileId": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"customData": "john_contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Generate a tile embed token using an effective identity with an identity blob example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"tileId": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"requestParameters": {
"accessLevel": "View",
"identities": [
{
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
],
"identityBlob": {
"value": "eyJ0eX....AAA="
}
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/Default.BindToGateway": {
"post": {
"tags": [
"Reports"
],
"summary": "Binds the specified data source of the paginated report from the specified workspace to the specified gateway, optionally with a given data source ID. If you don't supply a specific data source ID, the data source will be bound to the first matching data source in the gateway.",
"description": "\n## Permissions\n\n This API call can be called by a service principal profile. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Limitations\n\nOnly supports the on-premises data gateway\n
",
"operationId": "Reports_BindToGatewayInGroup",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"type": "string",
"format": "uuid",
"required": true
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"type": "string",
"format": "uuid",
"required": true
},
{
"name": "rdlBindToGatewayRequest",
"in": "body",
"description": "The bind to gateway request payload.",
"schema": {
"$ref": "#/definitions/RdlBindToGatewayRequest"
},
"required": true
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"rdlBindToGatewayRequest": {
"gatewayObjectId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"bindDetails": [
{
"dataSourceName": "DataSource1",
"dataSourceObjectId": "dc2f2dac-e5e2-4c37-af76-2a0bc10f16cb"
},
{
"dataSourceName": "DataSource2",
"dataSourceObjectId": "3bfe5d33-ab7d-4d24-b0b5-e2bb8eb01cf5"
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns a list of installed apps.",
"description": "\n## Required Scope\n\nApp.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetApps",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Apps"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"description": "The finance app",
"name": "Finance",
"publishedBy": "Bill",
"lastUpdate": "2019-01-13T09:46:53.094+02:00"
},
{
"id": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"description": "The marketing app",
"name": "Marketing",
"publishedBy": "Ben",
"lastUpdate": "2018-11-13T09:46:53.094+02:00"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps/{appId}": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns the specified installed app.",
"description": "\n## Required Scope\n\nApp.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetApp",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"description": "The app ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/App"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"id": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"description": "The finance app",
"name": "Finance",
"publishedBy": "Bill",
"lastUpdate": "2019-01-13T09:46:53.094+02:00"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps/{appId}/reports": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns a list of reports from the specified app.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetReports",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"description": "The app ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Reports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd"
},
"responses": {
"200": {
"body": {
"value": [
{
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "66b2570c-d9d3-40b2-83d9-1095c6700041",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/reports/66b2570c-d9d3-40b2-83d9-1095c6700041",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=66b2570c-d9d3-40b2-83d9-1095c6700041&appId=3d9b93c6-7b6d-4801-a491-1738910904fd&config=eyJjbHVzdGVyVXJsIjoiaHR0cHM6Ly9XQUJJLVNPVVRILUNFTlRSQUwtVVMtcmVkaXJlY3QuYW5hbHlzaXMud2luZG93cy5uZXQifQ"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps/{appId}/reports/{reportId}": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns the specified report from the specified app.",
"description": "\n## Required Scope\n\nReport.ReadWrite.All or Report.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetReport",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"description": "The app ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"description": "The report ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Report"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd"
},
"responses": {
"200": {
"body": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "66b2570c-d9d3-40b2-83d9-1095c6700041",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/reports/66b2570c-d9d3-40b2-83d9-1095c6700041",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=66b2570c-d9d3-40b2-83d9-1095c6700041&appId=3d9b93c6-7b6d-4801-a491-1738910904fd&config=eyJjbHVzdGVyVXJsIjoiaHR0cHM6Ly9XQUJJLVNPVVRILUNFTlRSQUwtVVMtcmVkaXJlY3QuYW5hbHlzaXMud2luZG93cy5uZXQifQ"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps/{appId}/dashboards": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns a list of dashboards from the specified app.",
"description": "\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetDashboards",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"description": "The app ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboards"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd"
},
"responses": {
"200": {
"body": {
"value": [
{
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"id": "03dac094-2ff8-47e8-b2b9-dedbbc4d22ac",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=335aee4b-7b38-48fd-9e2f-306c3fd67482&appId=3d9b93c6-7b6d-4801-a491-1738910904fd&config=eyJjbHVzdGVyVXJsIjoiaHR0cHM6Ly9XQUJJLVNPVVRILUNFTlRSQUwtVVMtcmVkaXJlY3QuYW5hbHlzaXMud2luZG93cy5uZXQifQ%3d%3d",
"isReadOnly": false
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps/{appId}/dashboards/{dashboardId}": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns the specified dashboard from the specified app.",
"description": "\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetDashboard",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"description": "The app ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dashboard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"dashboardKey": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af"
},
"responses": {
"200": {
"body": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"id": "03dac094-2ff8-47e8-b2b9-dedbbc4d22ac",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=335aee4b-7b38-48fd-9e2f-306c3fd67482&appId=3d9b93c6-7b6d-4801-a491-1738910904fd&config=eyJjbHVzdGVyVXJsIjoiaHR0cHM6Ly9XQUJJLVNPVVRILUNFTlRSQUwtVVMtcmVkaXJlY3QuYW5hbHlzaXMud2luZG93cy5uZXQifQ%3d%3d",
"isReadOnly": false
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps/{appId}/dashboards/{dashboardId}/tiles": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns a list of tiles within the specified dashboard from the specified app.",
"description": "\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetTiles",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"description": "The app ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tiles"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"dashboardKey": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"title": "SalesMarketingTile",
"embedUrl": "https://app.powerbi.com/embed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&tileId=312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b&config=eyJjbHVzdGVyVXJsIjoiaHR0cHM6Ly9XQUJJLVNPVVRILUNFTlRSQUwtVVMtcmVkaXJlY3QuYW5hbHlzaXMud2luZG93cy5uZXQifQ%3d%3d",
"rowSpan": 0,
"colSpan": 0,
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/apps/{appId}/dashboards/{dashboardId}/tiles/{tileId}": {
"get": {
"tags": [
"Apps"
],
"summary": "Returns the specified tile within the specified dashboard from the specified app.",
"description": "\nSupported tiles include datasets and live tiles that contain an entire report page.\n\n## Required Scope\n\nDashboard.ReadWrite.All or Dashboard.Read.All\n\n## Limitations\n\nService principal authentication isn't supported.\n
",
"operationId": "Apps_GetTile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"description": "The app ID",
"type": "string",
"format": "uuid"
},
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "tileId",
"description": "The tile ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Tile"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"dashboardKey": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"tileKey": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b"
},
"responses": {
"200": {
"body": {
"id": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"title": "SalesMarketingTile",
"embedUrl": "https://app.powerbi.com/embed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&tileId=312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48",
"rowSpan": 0,
"colSpan": 0,
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows/{dataflowId}": {
"get": {
"tags": [
"Dataflows"
],
"summary": "Exports the specified dataflow definition to a JSON file.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataflow.ReadWrite.All or Dataflow.Read.All\n
",
"operationId": "Dataflows_GetDataflow",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "Exported Json file",
"schema": {
"type": "file"
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Dataflows"
],
"summary": "Deletes a dataflow from Power BI data prep storage, including its definition file and model.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataflow.ReadWrite.All\n
",
"operationId": "Dataflows_DeleteDataflow",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "51e47fc5-48fd-4826-89f0-021bd3a80abd",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Dataflows"
],
"summary": "Updates dataflow properties, capabilities and settings.",
"description": "\n## Required Scope\n\nDataflow.ReadWrite.All\n
",
"operationId": "Dataflows_UpdateDataflow",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "dataflowUpdateRequest",
"description": "Patch dataflow properties, capabilities and settings",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/DataflowUpdateRequestMessage"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "51e47fc5-48fd-4826-89f0-021bd3a80abd",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce",
"dataflowUpdateRequest": {
"name": "newDataflowName",
"description": "New dataflow description",
"allowNativeQueries": "false",
"computeEngineBehavior": "computeOptimized"
}
},
"responses": {
"200": {
"description": "Ok"
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows/{dataflowId}/refreshes": {
"post": {
"tags": [
"Dataflows"
],
"summary": "Triggers a refresh for the specified dataflow.",
"description": "\nSupported email notification options are **MailOnFailure** and **NoNotification**. **MailOnCompletion** isn't supported.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataflow.ReadWrite.All\n
",
"operationId": "Dataflows_RefreshDataflow",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshRequest",
"in": "body",
"required": false,
"schema": {
"$ref": "#/definitions/RefreshRequest"
}
},
{
"name": "processType",
"description": "Type of refresh process to use.",
"in": "query",
"required": false,
"type": "string",
"format": "uuid",
"enum": [
"default",
"processFull"
]
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "51e47fc5-48fd-4826-89f0-021bd3a80abd",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce",
"refreshRequest": {
"notifyOption": "MailOnFailure"
},
"processType": "default"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows/{dataflowId}/datasources": {
"get": {
"tags": [
"Dataflows"
],
"summary": "Returns a list of data sources for the specified dataflow.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataflow.ReadWrite.All or Dataflow.Read.All\n
",
"operationId": "Dataflows_GetDataflowDataSources",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "51e47fc5-48fd-4826-89f0-021bd3a80abd",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasourceType": "Sql",
"datasourceId": "16a54ccd-620d-4af3-9197-0b8c779a9a6d",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"server": "MyServer.database.windows.net",
"database": "MyDatabase"
}
},
{
"datasourceType": "OData",
"connectionDetails": {
"url": "https://services.odata.org/V4/Northwind/Northwind.svc"
},
"datasourceId": "16a54ccd-620d-4af3-9197-0b8c779a9a6d",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows": {
"get": {
"tags": [
"Dataflows"
],
"summary": "Returns a list of all dataflows from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataflow.ReadWrite.All or Dataflow.Read.All\n
",
"operationId": "Dataflows_GetDataflows",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dataflows"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "a2f89923-421a-464e-bf4c-25eab39bb09f"
},
"responses": {
"200": {
"body": {
"value": [
{
"objectId": "bd32e5c0-363f-430b-a03b-5535a4804b9b",
"name": "AdventureWorks",
"description": "Our Adventure Works",
"modelUrl": "https://MyDataflowStorageAccount.dfs.core.windows.net/powerbi/contoso/AdventureWorks/model.json"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows/{dataflowId}/upstreamDataflows": {
"get": {
"tags": [
"Dataflows"
],
"summary": "Returns a list of upstream dataflows for the specified dataflow.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataflow.ReadWrite.All or Dataflow.Read.All\n
",
"operationId": "Dataflows_GetUpstreamDataflowsInGroup",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DependentDataflows"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows/{dataflowId}/refreshSchedule": {
"patch": {
"tags": [
"Dataflows"
],
"summary": "Creates or updates the refresh schedule for a specified dataflow.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataflow.ReadWrite.All\n
",
"operationId": "Dataflows_UpdateRefreshSchedule",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshScheduleRequest",
"in": "body",
"description": "The dataflow refresh schedule to create or update",
"required": true,
"schema": {
"$ref": "#/definitions/RefreshScheduleRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Daily refresh schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce",
"refreshScheduleRequest": {
"value": {
"days": [
"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"
],
"times": [
"10:00",
"16:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "NoNotification"
}
}
},
"responses": {
"200": {}
}
},
"Update refresh schedule times example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce",
"refreshScheduleRequest": {
"value": {
"times": [
"10:30",
"16:30"
],
"enabled": true,
"localTimeZoneId": "UTC"
}
}
},
"responses": {
"200": {}
}
},
"Disable refresh schedule example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce",
"refreshScheduleRequest": {
"value": {
"enabled": false,
"times": [],
"localTimeZoneId": "UTC"
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows/{dataflowId}/transactions": {
"get": {
"tags": [
"Dataflows"
],
"summary": "Returns a list of transactions for the specified dataflow.",
"description": "\n## Required Scope\n\nDataflow.ReadWrite.All or Dataflow.Read.All\n
",
"operationId": "Dataflows_GetDataflowTransactions",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DataflowTransactions"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "51e47fc5-48fd-4826-89f0-021bd3a80abd",
"dataflowId": "928228ba-008d-4fd9-864a-92d2752ee5ce"
},
"responses": {
"200": {
"body": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/98674fdf-baab-45e1-a04a-c17ab378dce1/$metadata#transactions",
"value": [
{
"id": "2020-08-27T16:07:47.2487692Z@8dbd8c92-4d16-4947-8329-4172f04f4f93$2"
},
{
"id": "2020-08-26T16:40:55.0968787Z@e33eed4d-5b1a-4bb9-8b5b-dff1cd371109$1",
"refreshType": "OnDemand"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/dataflows/transactions/{transactionId}/cancel": {
"post": {
"tags": [
"Dataflows"
],
"summary": "Attempts to cancel the specified transactions.",
"description": "\n## Required Scope\n\nDataflow.ReadWrite.All\n
",
"operationId": "Dataflows_CancelDataflowTransaction",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "transactionId",
"description": "The transaction ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DataflowTransactionStatus"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "51e47fc5-48fd-4826-89f0-021111110abd",
"transactionId": "2020-09-11T19:21:52.8778432Z@9cc7a369-6112-4dba-97b6-b07ff5699568$1374282"
},
"responses": {
"200": {
"body": {
"transactionId": "2020-09-11T19:21:52.8778432Z@9cc7a369-6112-4dba-97b6-b07ff5699568$1374282",
"status": "SuccessfullyMarked"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/gateways": {
"get": {
"tags": [
"Gateways"
],
"summary": "Returns a list of gateways for which the user is an admin.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_GetGateways",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Gateways"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"name": "My_Sample_Gateway",
"type": "Resource",
"publicKey": {
"exponent": "AQAB",
"modulus": "o6j2....cLk="
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/gateways/{gatewayId}": {
"get": {
"tags": [
"Gateways"
],
"summary": "Returns the specified gateway.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_GetGateway",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Gateway"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934"
},
"responses": {
"200": {
"body": {
"id": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"name": "My_Sample_Gateway",
"type": "Resource",
"publicKey": {
"exponent": "AQAB",
"modulus": "o6j2....cLk="
}
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/gateways/{gatewayId}/datasources": {
"get": {
"tags": [
"Gateways"
],
"summary": "Returns a list of data sources from the specified gateway.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_GetDatasources",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GatewayDatasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceType": "Sql",
"connectionDetails": "{\"server\":\"localSQL\",\"database\":\"salesDB\"}",
"credentialType": "Windows",
"datasourceName": "SQL Datasource"
},
{
"id": "91f8aec2-4b32-476f-909b-3241999620ec",
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceType": "AnalysisServices",
"connectionDetails": "{\"server\":\"localAS\",\"database\":\"marketingDB\"}",
"credentialType": "Windows",
"datasourceName": "AS Datasource"
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Gateways"
],
"summary": "Creates a new data source on the specified on-premises gateway.",
"description": "\n
On premises data source credentials must be encrypted. The `encryptedConnection` parameter must be set to `Encrypted` and the credentials should be encrypted using the gateway public key.\n\nSee the [Create Gateway DataSource](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/CreateDatasource.ps1) PowerShell script for an example of using this API, this script uses the PowerShell script mentioned in the note below for encrypting the credentials.\n\n> [!NOTE]\n> To encrypt credentials, see [Configure credentials programmatically](/power-bi/developer/embedded/configure-credentials) for Power BI and review the EncryptCredentials [.NET Core](https://github.com/microsoft/PowerBI-Developer-Samples/tree/master/.NET%20Core/EncryptCredentials), [Java](https://github.com/microsoft/PowerBI-Developer-Samples/tree/master/Java/EncryptCredentials), [Python](https://github.com/microsoft/PowerBI-Developer-Samples/tree/master/Python/Encrypt%20credentials) and [PowerShell](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/EncryptGatewayCredentials.ps1) examples.\n\n## Permissions\n\nSupports only on-premises gateways and the user must have gateway admin permissions\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- Virtual network (VNet) and Cloud gateways aren't supported.\n- OAuth2 as a credential type isn't supported.\n
",
"operationId": "Gateways_CreateDatasource",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceToGatewayRequest",
"in": "body",
"description": "A request to create a new data source on a gateway",
"required": true,
"schema": {
"$ref": "#/definitions/PublishDatasourceToGatewayRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/GatewayDatasource"
}
}
},
"x-ms-examples": {
"SQL example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"datasourceToGatewayRequest": {
"dataSourceType": "SQL",
"connectionDetails": "{\"server\":\"MyServer\",\"database\":\"MyDatabase\"}",
"datasourceName": "Sample Datasource",
"credentialDetails": {
"credentialType": "Windows",
"credentials": "AB....EF==",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "RSA-OAEP",
"privacyLevel": "None"
}
}
},
"responses": {
"200": {}
}
},
"Azure Analysis Services example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"datasourceToGatewayRequest": {
"dataSourceType": "AnalysisServices",
"connectionDetails": "{\"server\":\"MyServer\",\"database\":\"MyDatabase\"}",
"datasourceName": "Sample Datasource",
"credentialDetails": {
"credentialType": "Windows",
"credentials": "AB....EF==",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "RSA-OAEP",
"privacyLevel": "None"
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}": {
"get": {
"tags": [
"Gateways"
],
"summary": "Returns the specified data source from the specified gateway.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_GetDatasource",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceId",
"in": "path",
"description": "The data source ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GatewayDatasource"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970"
},
"responses": {
"200": {
"body": {
"id": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceType": "Sql",
"connectionDetails": "{\"server\":\"MyServer\",\"database\":\"MyDatabase\"}",
"credentialType": "Windows",
"datasourceName": "Sample Datasource"
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Gateways"
],
"summary": "Deletes the specified data source from the specified gateway.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_DeleteDatasource",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceId",
"in": "path",
"description": "The data source ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Gateways"
],
"summary": "Updates the credentials of the specified data source from the specified gateway.",
"description": "\nOn Premises data source credentials must be encrypted, as described in the [On-premise encrypted credentials example](/rest/api/power-bi/gateways/update-datasource#on-premise-encrypted-credentials-example). \n\n See the [Patch Datasource Credentials](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/PatchDatasourceCredentials.ps1) PowerShell script for an example of using this API, this script uses the PowerShell script mentioned in the note below for encrypting the credentials. \n\n> [!NOTE]\n> - To encrypt credentials, see [Configure credentials programmatically](/power-bi/developer/embedded/configure-credentials) for Power BI and review the EncryptCredentials [.NET Core](https://github.com/microsoft/PowerBI-Developer-Samples/tree/master/.NET%20Core/EncryptCredentials), [Java](https://github.com/microsoft/PowerBI-Developer-Samples/tree/master/Java/EncryptCredentials), [Python](https://github.com/microsoft/PowerBI-Developer-Samples/tree/master/Python/Encrypt%20credentials) and [PowerShell](https://github.com/microsoft/PowerBI-Developer-Samples/blob/master/PowerShell%20Scripts/EncryptGatewayCredentials.ps1) examples.\n> - Windows credentials before encryption look like the credentials in the credentials of [Basic credentials example](/rest/api/power-bi/gateways/update-datasource#basic-credentials-example).\n\nWhen changing from single sign-on to other credential types, such as `Basic` or `OAuth2`, set the parameter `useEndUserOAuth2Credentials` to `false` as described in the [Basic credentials example](/rest/api/power-bi/gateways/update-datasource#basic-credentials-example).\n\nOAuth 2.0 credentials are valid as long as the provided token is valid. When using the OAuth 2.0 credential type, do the following: \n- Set the OAuth 2.0 token audience correctly, according to the data source type. \n- Send the OAuth 2.0 token in the payload as shown in the [OAuth 2.0 credentials example](/rest/api/power-bi/gateways/update-datasource#oauth-2.0-credentials-example).\n- If you're using **Extension** data sources, don't set `useCallerAADIdentity` to `true`.\n\n## Permissions\n\n- With on-premises gateways, the user must have gateway admin permissions.\n- With cloud data sources, user must be the data source owner. Use [Datasets - Take Over API](/rest/api/power-bi/datasets/take-over-in-group) to transfer ownership over the specified dataset or [Paginated reports - Take Over API](/rest/api/power-bi/reports/take-over-in-group) to transfer ownership of the data sources over the specified paginated report.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\n- When setting OAuth credentials, a refresh token isn't incorporated as it is when setting credentials through the UI in Power BI service. Therefore, credentials can only be used for one hour.\n- Virtual network (VNet) gateways aren't supported.\n- SAS Token credentials are supported only with AzureBlobStorage and AzureDataLakeStorage.\n
", "operationId": "Gateways_UpdateDatasource",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceId",
"in": "path",
"description": "The data source ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "updateDatasourceRequest",
"in": "body",
"description": "The update data source request",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateDatasourceRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Basic credentials example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"updateDatasourceRequest": {
"credentialDetails": {
"credentialType": "Basic",
"credentials": "{\"credentialData\":[{\"name\":\"username\", \"value\":\"john\"},{\"name\":\"password\", \"value\":\"*****\"}]}",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "None",
"privacyLevel": "None",
"useEndUserOAuth2Credentials": "False"
}
}
},
"responses": {
"200": {}
}
},
"On-premise encrypted credentials example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"updateDatasourceRequest": {
"credentialDetails": {
"credentialType": "Windows",
"credentials": "AB....EF==",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "RSA-OAEP",
"privacyLevel": "None"
}
}
},
"responses": {
"200": {}
}
},
"Anonymous credentials example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"updateDatasourceRequest": {
"credentialDetails": {
"credentialType": "Anonymous",
"credentials": "{\"credentialData\":\"\"}",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "None",
"privacyLevel": "None"
}
}
},
"responses": {
"200": {}
}
},
"OAuth 2.0 credentials example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"updateDatasourceRequest": {
"credentialDetails": {
"credentialType": "OAuth2",
"credentials": "{\"credentialData\":[{\"name\":\"accessToken\", \"value\":\"eyJ0....fwtQ\"}]}",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "None",
"privacyLevel": "None"
}
}
},
"responses": {
"200": {}
}
},
"Key credentials example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"updateDatasourceRequest": {
"credentialDetails": {
"credentialType": "Key",
"credentials": "{\"credentialData\":[{\"name\":\"key\", \"value\":\"ec....LA=\"}]}",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "None",
"privacyLevel": "None"
}
}
},
"responses": {
"200": {}
}
},
"SAS Token credentials example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"updateDatasourceRequest": {
"credentialDetails": {
"credentialType": "SAS",
"credentials": "{\"credentialData\":[{\"name\":\"token\", \"value\":\"sp=rl&st=2023-01-16T09:37:25Z&se=2023...J0%2F0YVkjKxPtEwsyn\"}]}",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "None",
"privacyLevel": "None"
}
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}/status": {
"get": {
"tags": [
"Gateways"
],
"summary": "Checks the connectivity status of the specified data source from the specified gateway.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_GetDatasourceStatus",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceId",
"in": "path",
"description": "The data source ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Gateway unreachable example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970"
},
"responses": {
"400": {
"body": {
"error": {
"code": "DM_GWPipeline_Client_GatewayUnreachable",
"pbi.error": {
"code": "DM_GWPipeline_Client_GatewayUnreachable",
"parameters": {},
"details": [],
"exceptionCulprit": 1
}
}
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}/users": {
"get": {
"tags": [
"Gateways"
],
"summary": "Returns a list of users who have access to the specified data source.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_GetDatasourceUsers",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceId",
"in": "path",
"description": "The data source ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasourceUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970"
},
"responses": {
"200": {
"value": [
{
"datasourceAccessRight": "Read",
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"identifier": "john@contoso.com",
"principalType": "User"
},
{
"datasourceAccessRight": "ReadOverrideEffectiveIdentity",
"displayName": "ContosoTestApp",
"identifier": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"principalType": "App"
}
]
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Gateways"
],
"summary": "Grants or updates the permissions required to use the specified data source for the specified user.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\nAdding groups through the API is not supported.\n
",
"operationId": "Gateways_AddDatasourceUser",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceId",
"in": "path",
"description": "The data source ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "addUserToDatasourceRequest",
"in": "body",
"description": "The add user to data source request",
"required": true,
"schema": {
"$ref": "#/definitions/DatasourceUser"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"addUserToDatasourceRequest": {
"emailAddress": "john@contoso.com",
"datasourceAccessRight": "Read"
}
},
"responses": {
"200": {}
}
},
"Assign the ReadOverrideEffectiveIdentity user access right to a service principal example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"addUserToDatasourceRequest": {
"identifier": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"datasourceAccessRight": "ReadOverrideEffectiveIdentity"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}/users/{emailAdress}": {
"delete": {
"tags": [
"Gateways"
],
"summary": "Removes the specified user from the specified data source.",
"description": "\n## Permissions\n\nThe user must have gateway admin permissions.\n\n## Required Scope\n\nDataset.ReadWrite.All\n\n## Limitations\n\nVirtual network (VNet) gateways aren't supported.\n
",
"operationId": "Gateways_DeleteDatasourceUser",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "gatewayId",
"in": "path",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "datasourceId",
"in": "path",
"description": "The data source ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "emailAdress",
"in": "path",
"description": "The user's email address or the object ID of the service principal",
"required": true,
"type": "string"
},
{
"name": "profileId",
"in": "query",
"description": "The service principal profile ID to delete",
"required": false,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"gatewayId": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"datasourceId": "252b9de8-d915-4788-aaeb-ec8c2395f970",
"emailAdress": "john@contoso.com"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups": {
"get": {
"tags": [
"Groups"
],
"summary": "Returns a list of workspaces the user has access to.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Limitations\n\n- User permissions for workspaces take time to get updated and may not be immediately available when using API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n
",
"operationId": "Groups_GetGroups",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Groups"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"value": [
{
"id": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "sample group"
},
{
"id": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"isReadOnly": false,
"isOnDedicatedCapacity": true,
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"defaultDatasetStorageFormat": "Small",
"name": "marketing group"
},
{
"id": "a2f89923-421a-464e-bf4c-25eab39bb09f",
"isReadOnly": false,
"isOnDedicatedCapacity": true,
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"defaultDatasetStorageFormat": "Large",
"name": "contoso",
"dataflowStorageId": "d692ae06-708c-485e-9987-06ff0fbdbb1f"
}
]
}
}
},
"Get a list of workspaces using a filter example": {
"parameters": {
"$filter": "contains(name,'marketing')%20or%20name%20eq%20'contoso'"
},
"responses": {
"200": {
"value": [
{
"id": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "marketing group"
},
{
"id": "a2f89923-421a-464e-bf4c-25eab39bb09f",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "contoso",
"dataflowStorageId": "d692ae06-708c-485e-9987-06ff0fbdbb1f"
}
]
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Groups"
],
"summary": "Creates a new workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.ReadWrite.All\n
",
"operationId": "Groups_CreateGroup",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "requestParameters",
"description": "Create group request parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GroupCreationRequest"
}
},
{
"name": "workspaceV2",
"in": "query",
"required": false,
"description": "(Preview feature) Whether to create a workspace. The only supported value is `true`.",
"type": "boolean"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Group"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"requestParameters": {
"name": "sample group"
}
},
"responses": {
"200": {
"value": [
{
"id": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "sample group"
}
]
}
}
},
"Create a workspace example": {
"parameters": {
"requestParameters": {
"name": "sample workspace"
},
"workspaceV2": true
},
"responses": {
"200": {
"value": [
{
"id": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isOnDedicatedCapacity": false,
"name": "sample workspace"
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}": {
"get": {
"tags": [
"Groups"
],
"summary": "Returns a specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Limitations\n\n- User permissions for workspaces take time to get updated and may not be immediately available when using API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n
",
"operationId": "Groups_GetGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Group"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"id": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isReadOnly": false,
"isOnDedicatedCapacity": true,
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"defaultDatasetStorageFormat": "Small",
"name": "Sample Group 1"
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Groups"
],
"summary": "Deletes the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.ReadWrite.All\n
",
"operationId": "Groups_DeleteGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Groups"
],
"summary": "Updates a specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.ReadWrite.All\n\n## Limitations\n\n- For Shared capacities, only the name can be updated.\n- For Premium capacities, only the name and defaultDatasetStorageFormat can be updated.\n- The name must be unique inside an organization.\n
",
"operationId": "Groups_UpdateGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "groupProperties",
"in": "body",
"required": true,
"description": "The properties to update",
"schema": {
"$ref": "#/definitions/UpdateGroupRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "e2284830-c8dc-416b-b19a-8cdcd2729332",
"groupProperties": {
"name": "Updated Sales Results",
"defaultDatasetStorageFormat": "Large"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/users": {
"get": {
"tags": [
"Groups"
],
"summary": "Returns a list of users that have access to the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Limitations\n\n- User permissions for workspaces take time to get updated and may not be immediately available when using API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n
",
"operationId": "Groups_GetGroupUsers",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GroupUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"value": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"groupUserAccessRight": "Admin",
"identifier": "john@contoso.com",
"principalType": "User"
},
{
"displayName": "Adam Wood",
"emailAddress": "Adam@contoso.com",
"groupUserAccessRight": "Member",
"identifier": "Adam@contoso.com",
"principalType": "User"
},
{
"displayName": "ContosoTestApp",
"groupUserAccessRight": "Admin",
"identifier": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"principalType": "App"
}
]
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Groups"
],
"summary": "Grants the specified user the specified permissions to the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.ReadWrite.All\n\n## Limitations\n\n- User permissions for workspaces take time to get updated and may not be immediately available when using API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n
",
"operationId": "Groups_AddGroupUser",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/GroupUser"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"userDetails": {
"emailAddress": "john@contoso.com",
"groupUserAccessRight": "Admin"
}
},
"responses": {
"200": {}
}
},
"Assign administrator user access rights to a service principal example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"userDetails": {
"identifier": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"groupUserAccessRight": "Admin",
"principalType": "App"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"Groups"
],
"summary": "Updates the specified user permissions to the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.ReadWrite.All\n\n## Limitations\n\n- User permissions for workspaces take time to get updated and may not be immediately available when using API calls. To refresh user permissions, use the [Refresh User Permissions](/rest/api/power-bi/users/refresh-user-permissions) API call.\n
",
"operationId": "Groups_UpdateGroupUser",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/GroupUser"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"userDetails": {
"emailAddress": "john@contoso.com",
"groupUserAccessRight": "Admin"
}
},
"responses": {
"200": {}
}
},
"Assign administrator user access rights to a service principal example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"userDetails": {
"identifier": "1f69e798-5852-4fdd-ab01-33bb14b6e934",
"groupUserAccessRight": "Admin",
"principalType": "App"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/users/{user}": {
"delete": {
"tags": [
"Groups"
],
"summary": "Deletes the specified user permissions from the specified workspace.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.ReadWrite.All\n
",
"operationId": "Groups_DeleteUserInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "user",
"in": "path",
"required": true,
"description": "The email address of the user or object ID of the service principal to delete",
"type": "string"
},
{
"name": "profileId",
"in": "query",
"description": "The service principal profile ID to delete",
"required": false,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"user": "john@contoso.com"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/capacities": {
"get": {
"tags": [
"Capacities"
],
"summary": "Returns a list of capacities that the user has access to.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy). The profile creator must have capacity permissions.\n\n## Required Scope\n\nCapacity.Read.All or Capacity.ReadWrite.All\n
",
"operationId": "Capacities_GetCapacities",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Capacities"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"value": [
{
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"admins": [
"john@contoso.com"
],
"sku": "A1",
"state": "Active",
"region": "West Central US",
"capacityUserAccessRight": "Admin"
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/capacities/{capacityId}/Workloads": {
"get": {
"tags": [
"Capacities"
],
"summary": "Returns the current state of the specified capacity workloads. If a workload is enabled, the percentage of maximum memory that the workload can consume is also returned.",
"description": "\nWorkload APIs aren't relevant for [Gen2](/power-bi/developer/embedded/power-bi-embedded-generation-2) capacities.\n\n## Required Scope\n\nCapacity.Read.All or Capacity.ReadWrite.All\n
",
"operationId": "Capacities_GetWorkloads",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "capacityId",
"in": "path",
"description": "The capacity ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Workloads"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2"
},
"responses": {
"200": {
"value": [
{
"state": "Enabled",
"name": "Dataflows",
"maxMemoryPercentageSetByUser": "66"
},
{
"state": "Disabled",
"name": "PaginatedReports"
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/capacities/{capacityId}/Workloads/{workloadName}": {
"get": {
"tags": [
"Capacities"
],
"summary": "Returns the current state of a workload. If the workload is enabled, the percentage of maximum memory that the workload can consume is also returned.",
"description": "\nWorkload APIs aren't relevant for [Gen2](/power-bi/developer/embedded/power-bi-embedded-generation-2) capacities.\n\n## Required Scope\n\nCapacity.Read.All or Capacity.ReadWrite.All\n
",
"operationId": "Capacities_GetWorkload",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "capacityId",
"in": "path",
"description": "The capacity ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "workloadName",
"in": "path",
"description": "The name of the workload",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Workload"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"workloadName": "Dataflows"
},
"responses": {
"200": {
"value": {
"state": "Enabled",
"name": "Dataflows",
"maxMemoryPercentageSetByUser": "66"
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Capacities"
],
"summary": "Changes the state of a specific workload to *Enabled* or *Disabled*. When enabling a workload, specify the percentage of maximum memory that the workload can consume.",
"description": "\nWorkload APIs aren't relevant for [Gen2](/power-bi/developer/embedded/power-bi-embedded-generation-2) capacities.\n\n## Required Scope\n\nCapacity.ReadWrite.All\n
",
"operationId": "Capacities_PatchWorkload",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "capacityId",
"in": "path",
"description": "The capacity ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "workloadName",
"in": "path",
"description": "The name of the workload",
"required": true,
"type": "string"
},
{
"name": "workload",
"in": "body",
"description": "Patch workload parameters",
"required": true,
"schema": {
"$ref": "#/definitions/PatchWorkloadRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"workloadName": "Dataflows",
"workload": {
"state": "Enabled",
"maxMemoryPercentageSetByUser": "66"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/capacities/refreshables": {
"get": {
"tags": [
"Capacities"
],
"summary": "Returns a list of refreshables for all capacities that the user has access to.",
"description": "\nPower BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.\n\n## Required Scope\n\nCapacity.Read.All or Capacity.ReadWrite.All\n
",
"operationId": "Capacities_GetRefreshables",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `capacity` and `group`.",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results.",
"required": true,
"minimum": 1,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results. Use with top to fetch results beyond the first 1000.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshables"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
},
"Get refreshables with their 'capacity' and 'group' expanded example": {
"parameters": {
"$expand": "capacity,group"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
],
"capacity": {
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"sku": "A1"
},
"group": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing"
}
}
]
}
}
}
},
"Get refreshables, filtering for an average refresh duration of greater than 30 minutes example.": {
"parameters": {
"$filter": "averageDuration gt 1800"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 3289.3814,
"medianDuration": 2268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:58:05.221Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/capacities/{capacityId}/refreshables": {
"get": {
"tags": [
"Capacities"
],
"summary": "Returns a list of refreshables for the specified capacity that the user has access to.",
"description": "\nPower BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.\n\n## Required Scope\n\nCapacity.Read.All or Capacity.ReadWrite.All\n
",
"operationId": "Capacities_GetRefreshablesForCapacity",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "capacityId",
"description": "The capacity ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `capacities` and `groups`.",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results.",
"required": true,
"minimum": 1,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results. Use with top to fetch results beyond the first 1000.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshables"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
},
"Get refreshables with their 'capacity' and 'group' expanded example": {
"parameters": {
"$expand": "capacity,group"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
],
"capacity": {
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"sku": "A1"
},
"group": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing"
}
}
]
}
}
}
},
"Get refreshables, filtering for an average refresh duration of greater than 30 minutes example.": {
"parameters": {
"$filter": "averageDuration gt 1800"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 3289.3814,
"medianDuration": 2268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:58:05.221Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/capacities/{capacityId}/refreshables/{refreshableId}": {
"get": {
"tags": [
"Capacities"
],
"summary": "Returns the specified refreshable for the specified capacity that the user has access to.",
"description": "\nPower BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.\n\n## Required Scope\n\nCapacity.Read.All or Capacity.ReadWrite.All\n
",
"operationId": "Capacities_GetRefreshableForCapacity",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "capacityId",
"description": "The capacity ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshableId",
"description": "The refreshable ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `capacities` and `groups`.",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshables"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
},
"Get refreshables with their 'capacity' and 'group' expanded example": {
"parameters": {
"$expand": "capacity,group"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
],
"capacity": {
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"sku": "A1"
},
"group": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/AssignToCapacity": {
"post": {
"tags": [
"Capacities"
],
"summary": "Assigns **My workspace** to the specified capacity.",
"description": "\nTo unassign **My workspace** from a capacity, provide an empty GUID (`00000000-0000-0000-0000-000000000000`) as the `capacityId`.\n\n## Permissions\n\nThe user must have administrator rights or Assign permission on the capacity.\n\n## Required Scope\n\nCapacity.ReadWrite.All and Workspace.ReadWrite.All\n
",
"operationId": "Groups_AssignMyWorkspaceToCapacity",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "requestParameters",
"in": "body",
"description": "Assign to capacity parameters",
"required": true,
"schema": {
"$ref": "#/definitions/AssignToCapacityRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"requestParameters": {
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/AssignToCapacity": {
"post": {
"tags": [
"Capacities"
],
"summary": "Assigns the specified workspace to the specified capacity.",
"description": "\nTo unassign **My workspace** from a capacity, provide an empty GUID (`00000000-0000-0000-0000-000000000000`) as the `capacityId`.\n\n## Permissions\n\n- The user must have administrator rights or assign permissions on the capacity.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nCapacity.ReadWrite.All and Workspace.ReadWrite.All\n
",
"operationId": "Groups_AssignToCapacity",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"in": "body",
"description": "Assign to capacity parameters",
"required": true,
"schema": {
"$ref": "#/definitions/AssignToCapacityRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"requestParameters": {
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/CapacityAssignmentStatus": {
"get": {
"tags": [
"Capacities"
],
"summary": "Gets the status of the **My workspace** assignment-to-capacity operation.",
"description": "\n## Required Scope\n\nWorkspace.Read.All and Workspace.ReadWrite.All\n
",
"operationId": "Groups_CapacityAssignmentStatusMyWorkspace",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/WorkspaceCapacityAssignmentStatus"
}
}
},
"x-ms-examples": {
"Completed assignment status example": {
"parameters": {},
"responses": {
"200": {
"body": {
"status": "CompletedSuccessfully",
"activityId": "dec4010c-9aad-edb6-0063-94b313cfe121",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:26:43.153Z",
"capacityId": "00000000-0000-0000-0000-000000000000"
}
}
}
},
"In-progress assignment status example": {
"parameters": {},
"responses": {
"200": {
"body": {
"status": "InProgress",
"startTime": "2017-06-13T09:25:43.153Z",
"capacityId": "EC719732-EC80-4034-8053-0026BD5996D4"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/CapacityAssignmentStatus": {
"get": {
"tags": [
"Capacities"
],
"summary": "Gets the status of the assignment-to-capacity operation for the specified workspace.",
"description": "\n## Permissions\n\n- The user must have administrator rights or assign permissions on the capacity.\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nWorkspace.Read.All and Workspace.ReadWrite.All\n
",
"operationId": "Groups_CapacityAssignmentStatus",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/WorkspaceCapacityAssignmentStatus"
}
}
},
"x-ms-examples": {
"Completed assignment status example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"status": "CompletedSuccessfully",
"activityId": "dec4010c-9aad-edb6-0063-94b313cfe121",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:26:43.153Z",
"capacityId": "EC719732-EC80-4034-8053-0026BD5996D4"
}
}
}
},
"In-progress assignment status example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"status": "InProgress",
"startTime": "2017-06-13T09:25:43.153Z",
"capacityId": "EC719732-EC80-4034-8053-0026BD5996D4"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/availableFeatures": {
"get": {
"tags": [
"AvailableFeatures"
],
"summary": "Returns a list of available features for the user.",
"description": "\nThis API call doesn't require any scopes.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n
",
"operationId": "AvailableFeatures_GetAvailableFeatures",
"consumes": [],
"produces": [
"application/json"
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AvailableFeatures"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"features": [
{
"name": "embedTrial",
"state": "Enabled",
"extendedState": "Enabled",
"additionalInfo": {
"usage": 65
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/availableFeatures(featureName='{featureName}')": {
"get": {
"tags": [
"AvailableFeatures"
],
"summary": "Returns the specified available feature for the user by name.",
"description": "\nThis API call doesn't require any scopes.\n\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n
",
"operationId": "AvailableFeatures_GetAvailableFeatureByName",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "featureName",
"description": "The feature name",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AvailableFeature"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"featureName": "embedTrial"
},
"responses": {
"200": {
"body": {
"name": "embedTrial",
"state": "Enabled",
"extendedState": "Enabled",
"additionalInfo": {
"usage": 65
}
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines": {
"get": {
"tags": [
"Pipelines"
],
"summary": "Returns a list of deployment pipelines that the user has access to.",
"description": "\n## Required Scope\n\nPipeline.Read.All or Pipeline.ReadWrite.All\n
",
"operationId": "Pipelines_GetPipelines",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Pipelines"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"value": [
{
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "Marketing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage marketing reports"
}
]
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Pipelines"
],
"summary": "Creates a new deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All\n
",
"operationId": "Pipelines_CreatePipeline",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "createPipelineRequest",
"in": "body",
"description": "The create pipeline request",
"required": true,
"schema": {
"$ref": "#/definitions/CreatePipelineRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/Pipeline"
}
}
},
"x-ms-examples": {
"Create a deployment pipeline example": {
"parameters": {
"createPipelineRequest": {
"displayName": "My Deployment Pipeline Name",
"description": "My deployment pipeline description"
}
},
"responses": {
"201": {
"body": {
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "My Deployment Pipeline Name",
"description": "My deployment pipeline description"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}": {
"get": {
"tags": [
"Pipelines"
],
"summary": "Returns the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All or Pipeline.Read.All\n
",
"operationId": "Pipelines_GetPipeline",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "$expand",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `stages`.",
"in": "query",
"type": "string",
"required": false,
"default": "stages"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Pipeline"
}
}
},
"x-ms-examples": {
"Get a deployment pipeline without its 'stages' expanded example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824"
},
"responses": {
"200": {
"body": {
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "Marketing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage marketing reports"
}
}
}
},
"Get a deployment pipeline with its 'stages' expanded example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"$expand": "stages"
},
"responses": {
"200": {
"body": {
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "My Deployment Pipeline",
"description": "My deployment pipeline",
"stages": [
{
"order": 0,
"workspaceId": "4de5bcc4-2c88-4efe-b827-4ee7b289b496",
"workspaceName": "Workspace-Development"
},
{
"order": 1,
"workspaceId": "44b499cf-1eeb-45e2-9ada-63b6ec9d516e"
},
{
"order": 2
}
]
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Pipelines"
],
"summary": "Updates the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All\n
",
"operationId": "Pipelines_UpdatePipeline",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "updatePipelineRequest",
"in": "body",
"description": "The update pipeline request",
"required": true,
"schema": {
"$ref": "#/definitions/UpdatePipelineRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Pipeline"
}
}
},
"x-ms-examples": {
"Update a deployment pipeline example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"updatePipelineRequest": {
"displayName": "Updated Deployment Pipeline Name",
"description": "Updated deployment pipeline description"
}
},
"responses": {
"200": {
"body": {
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "Updated Deployment Pipeline Name",
"description": "Updated deployment pipeline description"
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Pipelines"
],
"summary": "Deletes the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All\n\n## Limitations\n\nThis operation will fail if there's an active deployment operation.\n
",
"operationId": "Pipelines_DeletePipeline",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Delete a deployment pipeline example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/users": {
"get": {
"tags": [
"Pipelines"
],
"summary": "Returns a list of users that have access to the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All or Pipeline.Read.All\n
",
"operationId": "Pipelines_GetPipelineUsers",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PipelineUsers"
}
}
},
"x-ms-examples": {
"Get users of a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523"
},
"responses": {
"200": {
"value": [
{
"identifier": "john@contoso.com",
"accessRight": "Admin",
"principalType": "User"
},
{
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"accessRight": "Admin",
"principalType": "Group"
},
{
"identifier": "a35d842b-90d5-59a1-c56a-5f8fcff0bf9d",
"accessRight": "Admin",
"principalType": "App"
}
]
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Pipelines"
],
"summary": "Grants user permissions to the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All\n
",
"operationId": "Pipelines_UpdatePipelineUser",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"required": true,
"description": "The deployment pipeline ID",
"type": "string",
"format": "uuid"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/PipelineUser"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Add a user to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"userDetails": {
"identifier": "john@contoso.com",
"accessRight": "Admin",
"principalType": "User"
}
},
"responses": {
"200": {}
}
},
"Add a group to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"userDetails": {
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"accessRight": "Admin",
"principalType": "Group"
}
},
"responses": {
"200": {}
}
},
"Add a service principal to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"userDetails": {
"identifier": "a35d842b-90d5-59a1-c56a-5f8fcff0bf9d",
"accessRight": "Admin",
"principalType": "App"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/users/{identifier}": {
"delete": {
"tags": [
"Pipelines"
],
"summary": "Removes user permissions from the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All\n
",
"operationId": "Pipelines_DeletePipelineUser",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"required": true,
"description": "The deployment pipeline ID",
"type": "string",
"format": "uuid"
},
{
"name": "identifier",
"in": "path",
"required": true,
"description": "To delete user pipeline permissions, provide the user principal name (UPN) of the user. To delete a service principal or a security group's pipeline permissions, provide the Object ID of the service principal or security group.",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Remove user access to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"identifier": "john@contoso.com"
},
"responses": {
"200": {}
}
},
"Remove group access to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"identifier": "5dba60b0-d9a7-42a3-b12c-6d9d51e7739a"
},
"responses": {
"200": {}
}
},
"Remove service principal access to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"identifier": "a35d842b-90d5-59a1-c56a-5f8fcff0bf9d"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/stages": {
"get": {
"tags": [
"Pipelines"
],
"summary": "Returns the stages of the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All or Pipeline.Read.All\n
",
"operationId": "Pipelines_GetPipelineStages",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PipelineStages"
}
}
},
"x-ms-examples": {
"Get the stages of a deployment pipeline example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824"
},
"responses": {
"200": {
"body": {
"value": [
{
"order": 0,
"workspaceId": "4de5bcc4-2c88-4efe-b827-4ee7b289b496",
"workspaceName": "Workspace-Development"
},
{
"order": 1,
"workspaceId": "44b499cf-1eeb-45e2-9ada-63b6ec9d516e"
},
{
"order": 2
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/stages/{stageOrder}/assignWorkspace": {
"post": {
"tags": [
"Pipelines"
],
"summary": "Assigns the specified workspace to the specified deployment pipeline stage.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All and Workspace.ReadWrite.All\n\n## Limitations\n\n- The specified deployment pipeline stage isn't already assigned.\n- You must be an admin of the specified workspace.\n- The specified workspace isn't assigned to any other deployment pipeline.\n- This operation will fail if there's an active deployment operation.\n
",
"operationId": "Pipelines_AssignWorkspace",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "stageOrder",
"in": "path",
"description": "The deployment pipeline stage order. Development (0), Test (1), Production (2).",
"required": true,
"type": "integer",
"format": "int32"
},
{
"name": "assignWorkspaceRequest",
"in": "body",
"description": "The assign workspace request",
"required": true,
"schema": {
"$ref": "#/definitions/AssignWorkspaceRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Assign a workspace to a deployment pipeline example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"stageOrder": 0,
"assignWorkspaceRequest": {
"workspaceId": "4de5bcc4-2c88-4efe-b827-4ee7b289b496"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/stages/{stageOrder}/unassignWorkspace": {
"post": {
"tags": [
"Pipelines"
],
"summary": "Unassigns the workspace from the specified stage in the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All\n\n## Limitations\n\nThis operation will fail if there's an active deployment operation.\n
",
"operationId": "Pipelines_UnassignWorkspace",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "stageOrder",
"in": "path",
"description": "The deployment pipeline stage order. Development (0), Test (1), Production (2).",
"required": true,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Unassign a workspace from a deployment pipeline example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"stageOrder": 0
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/stages/{stageOrder}/artifacts": {
"get": {
"tags": [
"Pipelines"
],
"summary": "Returns the supported items from the workspace assigned to the specified stage of the specified deployment pipeline.",
"description": "\nTo learn about items that aren't supported in deployment pipelines, see [Unsupported items](/power-bi/create-reports/deployment-pipelines-process#unsupported-items).\n\n## Permissions\n\nThe user must at least be a contributor on the workspace assigned to the specified stage. For more information, see [Permissions](/power-bi/create-reports/deployment-pipelines-process#permissions).\n\n## Required Scope\n\nPipeline.ReadWrite.All or Pipeline.Read.All\n
",
"operationId": "Pipelines_GetPipelineStageArtifacts",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "stageOrder",
"in": "path",
"description": "The deployment pipeline stage order. Development (0), Test (1), Production (2).",
"required": true,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PipelineStageArtifacts"
}
}
},
"x-ms-examples": {
"Example of getting 'Test' stage Power BI items (such as reports or dashboards)": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"stageOrder": 1
},
"responses": {
"200": {
"body": {
"dataflows": [
{
"artifactId": "527700ab-3cdb-4637-8402-912a129b2a92",
"artifactDisplayName": "Sales Dataflow",
"sourceArtifactId": "29efcfb0-0063-44af-a4ed-6c0bee3417d3",
"lastDeploymentTime": "2021-06-06T11:55:59.057Z"
}
],
"datamarts": [
{
"artifactId": "a7654a17-c5d1-4539-b9ec-022075545e50",
"artifactDisplayName": "Sales Datamart",
"sourceArtifactId": "6bfe235c-6d7b-41b7-98a6-2b8276b3e82b",
"lastDeploymentTime": "2021-06-06T11:55:59.057Z"
}
],
"datasets": [
{
"artifactId": "dd3b6aa1-4d40-405c-a19b-48314a27e8ee",
"artifactName": "Sales Dataset",
"sourceArtifactId": "1a201f2a-d1d8-45c0-8c61-1676338517de",
"targetArtifactId": "a5cf347e-7b49-4198-8a2b-0aa92c37d8f8",
"lastDeploymentTime": "2020-12-13T09:26:41.153Z"
}
],
"reports": [
{
"artifactId": "9d5c1f0f-f85c-48f4-8a8e-4c77547116b3",
"artifactName": "Sales Report",
"sourceArtifactId": "2d225191-65f8-4ec3-b77d-06100602b1f7",
"lastDeploymentTime": "2020-12-13T09:26:41.153Z"
}
],
"dashboards": [
{
"artifactId": "9046e4cc-8aea-4a7a-a3b5-1a78b1447d82",
"artifactName": "Sales Dashboard"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/operations": {
"get": {
"tags": [
"Pipelines"
],
"summary": "Returns a list of the up-to-20 most recent deploy operations performed on the specified deployment pipeline.",
"description": "\n## Required Scope\n\nPipeline.ReadWrite.All or Pipeline.Read.All\n
",
"operationId": "Pipelines_GetPipelineOperations",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PipelineOperations"
}
}
},
"x-ms-examples": {
"Get pipeline operations example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824"
},
"responses": {
"200": {
"value": [
{
"id": "1065e6a3-a020-4c0c-ada7-92b5fe99eec5",
"type": "Deploy",
"status": "Succeeded",
"lastUpdatedTime": "2020-12-13T09:26:43.153",
"executionStartTime": "2020-12-13T09:25:43.153Z",
"executionEndTime": "2020-12-13T09:26:43.153Z",
"sourceStageOrder": 0,
"targetStageOrder": 1,
"note": {
"content": "Sample note",
"isTruncated": false
},
"preDeploymentDiffInformation": {
"newArtifactsCount": 0,
"differentArtifactsCount": 0,
"noDifferenceArtifactsCount": 1
},
"performedBy": {
"userPrincipalName": "john@contoso.com",
"principalType": "User"
}
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/operations/{operationId}": {
"get": {
"tags": [
"Pipelines"
],
"summary": "Returns the details of the specified deploy operation performed on the specified deployment pipeline, including the deployment execution plan.",
"description": "\nUse to track the status of a deploy operation.\n\n## Required Scope\n\nPipeline.ReadWrite.All or Pipeline.Read.All\n
",
"operationId": "Pipelines_GetPipelineOperation",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "operationId",
"in": "path",
"description": "The operation ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PipelineOperation"
}
}
},
"x-ms-examples": {
"Get a pipeline operation example": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"operationId": "1065e6a3-a020-4c0c-ada7-92b5fe99eec5"
},
"responses": {
"200": {
"body": {
"id": "1065e6a3-a020-4c0c-ada7-92b5fe99eec5",
"type": "Deploy",
"status": "Succeeded",
"lastUpdatedTime": "2020-12-13T09:26:43.153",
"executionStartTime": "2020-12-13T09:25:43.153Z",
"executionEndTime": "2020-12-13T09:26:43.153Z",
"sourceStageOrder": 0,
"targetStageOrder": 1,
"executionPlan": {
"Steps": [
{
"index": 0,
"type": "DataflowDeployment",
"status": "Succeeded",
"preDeploymentDiffState": "New",
"sourceAndTarget": {
"source": "29efcfb0-0063-44af-a4ed-6c0bee3417d3",
"sourceDisplayName": "Source dataflow",
"type": "dataflow"
}
},
{
"index": 1,
"type": "DatamartDeployment",
"status": "Succeeded",
"preDeploymentDiffState": "New",
"sourceAndTarget": {
"source": "645cd81f-1b21-4006-82b6-54cc7ec0352e",
"sourceDisplayName": "Source datamart",
"type": "datamart"
}
},
{
"index": 2,
"type": "DatasetDeployment",
"status": "Succeeded",
"preDeploymentDiffState": "NoDifference",
"sourceAndTarget": {
"source": "1a201f2a-d1d8-45c0-8c61-1676338517de",
"sourceDisplayName": "Source dataset",
"target": "dd3b6aa1-4d40-405c-a19b-48314a27e8ee",
"targetDisplayName": "Target dataset",
"type": "dataset"
}
},
{
"index": 3,
"type": "ReportDeployment",
"status": "Succeeded",
"preDeploymentDiffState": "Different",
"sourceAndTarget": {
"source": "2d225191-65f8-4ec3-b77d-06100602b1f7",
"sourceDisplayName": "Source report",
"target": "9d5c1f0f-f85c-48f4-8a8e-4c77547116b3",
"targetDisplayName": "Target report",
"type": "report"
}
},
{
"index": 4,
"type": "DashboardDeployment",
"status": "Succeeded",
"preDeploymentDiffState": "New",
"sourceAndTarget": {
"source": "9046e4cc-8aea-4a7a-a3b5-1a78b1447d82",
"sourceDisplayName": "Source dashboard",
"type": "dashboard"
}
}
]
},
"note": {
"content": "Sample note",
"isTruncated": false
},
"preDeploymentDiffInformation": {
"newArtifactsCount": 3,
"differentArtifactsCount": 1,
"noDifferenceArtifactsCount": 1
},
"performedBy": {
"userPrincipalName": "john@contoso.com",
"principalType": "User"
}
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/deployAll": {
"post": {
"tags": [
"Pipelines"
],
"summary": "Deploys all supported items from the source stage of the specified deployment pipeline.",
"description": "\nTo learn about items that aren't supported in deployment pipelines, see [Unsupported items](/power-bi/create-reports/deployment-pipelines-process#unsupported-items).\n\n## Permissions\n\nThe user must at least be a contributor on both source and target deployment workspaces. For more information, see [Permissions](/power-bi/create-reports/deployment-pipelines-process#permissions).\n\n## Required Scope\n\nPipeline.Deploy\n\n## Limitations\n\nMaximum 300 deployed items per request.\n
",
"operationId": "Pipelines_DeployAll",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "deployRequest",
"in": "body",
"description": "The deploy request",
"required": true,
"schema": {
"$ref": "#/definitions/DeployAllRequest"
}
}
],
"responses": {
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/PipelineOperation"
}
}
},
"x-ms-examples": {
"Example of deploying all Power BI items (such as reports or dashboards) from the 'Development' stage": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"deployRequest": {
"sourceStageOrder": 0,
"options": {
"allowOverwriteArtifact": true,
"allowCreateArtifact": true
},
"note": "Deploying business ready items"
}
},
"responses": {
"200": {
"value": [
{
"id": "1065e6a3-a020-4c0c-ada7-92b5fe99eec5",
"type": "Deploy",
"status": "NotStarted",
"lastUpdatedTime": "2020-12-13T09:26:43.153",
"executionStartTime": "2020-12-13T09:25:43.153Z",
"executionEndTime": "2020-12-13T09:26:43.153Z",
"sourceStageOrder": 0,
"targetStageOrder": 1
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/pipelines/{pipelineId}/deploy": {
"post": {
"tags": [
"Pipelines"
],
"summary": "Deploys the specified items from the source stage of the specified deployment pipeline.",
"description": "\n## Permissions\n\nThe user must at least be a contributor on both source and target deployment workspaces. For more information, see [Permissions](/power-bi/create-reports/deployment-pipelines-process#permissions).\n\n## Required Scope\n\nPipeline.Deploy\n\n## Limitations\n\nMaximum 300 deployed items per request.\n
",
"operationId": "Pipelines_SelectiveDeploy",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"description": "The deployment pipeline ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "deployRequest",
"in": "body",
"description": "The selective deploy request",
"required": true,
"schema": {
"$ref": "#/definitions/SelectiveDeployRequest"
}
}
],
"responses": {
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/PipelineOperation"
}
}
},
"x-ms-examples": {
"Example of deploying specific Power BI items (such as reports or dashboards) from the 'Development' stage": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"deployRequest": {
"sourceStageOrder": 0,
"dataflows": [
{
"sourceId": "29efcfb0-0063-44af-a4ed-6c0bee3417d3"
}
],
"datamarts": [
{
"sourceId": "6bfe235c-6d7b-41b7-98a6-2b8276b3e82b"
}
],
"datasets": [
{
"sourceId": "1a201f2a-d1d8-45c0-8c61-1676338517de"
}
],
"reports": [
{
"sourceId": "2d225191-65f8-4ec3-b77d-06100602b1f7"
}
],
"dashboards": [
{
"sourceId": "9046e4cc-8aea-4a7a-a3b5-1a78b1447d82"
},
{
"sourceId": "7f08923c-8f57-49d6-a010-8335bb9cbd1b"
}
],
"options": {
"allowOverwriteArtifact": true,
"allowCreateArtifact": true
},
"note": "Deploying business ready items"
}
},
"responses": {
"200": {
"value": [
{
"id": "1065e6a3-a020-4c0c-ada7-92b5fe99eec5",
"type": "Deploy",
"status": "NotStarted",
"lastUpdatedTime": "2020-12-13T09:26:43.153",
"executionStartTime": "2020-12-13T09:25:43.153Z",
"executionEndTime": "2020-12-13T09:26:43.153Z",
"sourceStageOrder": 0,
"targetStageOrder": 1
}
]
}
}
},
"Example of deploying specific Power BI items with custom options": {
"parameters": {
"pipelineId": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"deployRequest": {
"sourceStageOrder": 0,
"datamarts": [
{
"sourceId": "6bfe235c-6d7b-41b7-98a6-2b8276b3e82b",
"options": {
"allowOverwriteArtifact": true,
"allowCreateArtifact": true
}
}
],
"reports": [
{
"sourceId": "2d225191-65f8-4ec3-b77d-06100602b1f7",
"options": {
"allowOverwriteArtifact": true
}
}
],
"note": "Deploying business ready items"
}
},
"responses": {
"200": {
"value": [
{
"id": "1065e6a3-a020-4c0c-ada7-92b5fe99eec5",
"type": "Deploy",
"status": "NotStarted",
"lastUpdatedTime": "2020-12-13T09:26:43.153",
"executionStartTime": "2020-12-13T09:25:43.153Z",
"executionEndTime": "2020-12-13T09:26:43.153Z",
"sourceStageOrder": 0,
"targetStageOrder": 1
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/dataflowStorageAccounts": {
"get": {
"tags": [
"DataflowStorageAccounts"
],
"summary": "Returns a list of dataflow storage accounts that the user has access to.",
"description": "\n## Required Scope\n\nStorageAccount.Read.All or StorageAccount.ReadWrite.All\n
",
"operationId": "DataflowStorageAccounts_GetDataflowStorageAccounts",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DataflowStorageAccounts"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"value": [
{
"id": "d692ae06-708c-485e-9987-06ff0fbdbb1f",
"name": "MyDataflowStorageAccount",
"isEnabled": true
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/AssignToDataflowStorage": {
"post": {
"tags": [
"DataflowStorageAccounts"
],
"summary": "Assigns the specified workspace to the specified dataflow storage account.",
"description": "\nTo perform this operation, the user must be an admin on the specified workspace and the Power BI dataflow storage account must be enabled.\n\nTo unassign the specified workspace from a Power BI dataflow storage account, provide an empty GUID (`00000000-0000-0000-0000-000000000000`) as the `dataflowStorageId`.\n\n## Required Scope\n\nStorageAccount.ReadWrite.All and Workspace.ReadWrite.All\n
",
"operationId": "Groups_AssignToDataflowStorage",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "requestParameters",
"in": "body",
"description": "Assign to Power BI dataflow storage account parameters",
"required": true,
"schema": {
"$ref": "#/definitions/AssignToDataflowStorageRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"requestParameters": {
"dataflowStorageId": "d692ae06-708c-485e-9987-06ff0fbdbb1f"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/workspaces/getInfo": {
"post": {
"tags": [
"Admin"
],
"summary": "Initiates a call to receive metadata for the requested list of workspaces.",
"description": "\n> [!IMPORTANT]\n> If you set the `datasetSchema` or `datasetExpressions` parameters to `true`, you must fully enable metadata scanning in order for data to be returned. For more information, see [Enable tenant settings for metadata scanning](/power-bi/admin/service-admin-metadata-scanning-setup#enable-tenant-settings-for-metadata-scanning).\n\n## Permissions\n\nThe user must be a Fabric administrator or authenticate using a service principal.\n\nWhen running under service principal authentication, an app **must not** have any admin-consent required permissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\n- Maximum 500 requests per hour.\n- Maximum 16 simultaneous requests.\n
",
"operationId": "WorkspaceInfo_PostWorkspaceInfo",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "requiredWorkspaces",
"in": "body",
"description": "Required workspace IDs to get info for",
"required": true,
"schema": {
"$ref": "#/definitions/RequiredWorkspaces"
}
},
{
"name": "lineage",
"in": "query",
"description": "Whether to return lineage info (upstream dataflows, tiles, data source IDs)",
"required": false,
"type": "boolean"
},
{
"name": "datasourceDetails",
"in": "query",
"description": "Whether to return data source details",
"required": false,
"type": "boolean"
},
{
"name": "datasetSchema",
"in": "query",
"description": "Whether to return dataset schema (tables, columns and measures). If you set this parameter to `true`, you must fully enable metadata scanning in order for data to be returned. For more information, see [Enable tenant settings for metadata scanning](/power-bi/admin/service-admin-metadata-scanning-setup#enable-tenant-settings-for-metadata-scanning).",
"required": false,
"type": "boolean"
},
{
"name": "datasetExpressions",
"in": "query",
"description": "Whether to return dataset expressions (DAX and Mashup queries). If you set this parameter to `true`, you must fully enable metadata scanning in order for data to be returned. For more information, see [Enable tenant settings for metadata scanning](/power-bi/admin/service-admin-metadata-scanning-setup#enable-tenant-settings-for-metadata-scanning).",
"required": false,
"type": "boolean"
},
{
"name": "getArtifactUsers",
"in": "query",
"description": "Whether to return user details for a Power BI item (such as a report or a dashboard)",
"required": false,
"type": "boolean"
}
],
"responses": {
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/ScanRequest"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"lineage": true,
"datasourceDetails": true,
"datasetSchema": true,
"datasetExpressions": true,
"requiredWorkspaces": {
"workspaces": [
"97d03602-4873-4760-b37e-1563ef5358e3",
"67b7e93a-3fb3-493c-9e41-2c5051008f24"
]
}
},
"responses": {
"202": {
"header": "Location",
"body": {
"id": "e7d03602-4873-4760-b37e-1563ef5358e3",
"createdDateTime": "2020-06-15T16:46:28.0487687Z",
"status": "NotStarted"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/workspaces/scanStatus/{scanId}": {
"get": {
"tags": [
"Admin"
],
"summary": "Gets the scan status for the specified scan.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator or authenticate using a service principal.\n\nWhen running under service principal authentication, an app **must not** have any admin-consent required permissions for Power BI set on it in the Azure portal. \n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 10,000 requests per hour.\n
",
"operationId": "WorkspaceInfo_GetScanStatus",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "scanId",
"description": "The scan ID, which is included in the response from the workspaces or the [Admin - WorkspaceInfo PostWorkspaceInfo](/rest/api/power-bi/admin/workspace-info-post-workspace-info) API call that triggered the scan.",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ScanRequest"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"scanId": "e7d03602-4873-4760-b37e-1563ef5358e3"
},
"responses": {
"200": {
"header": "Location",
"body": {
"id": "e7d03602-4873-4760-b37e-1563ef5358e3",
"createdDateTime": "2020-06-15T16:46:28.0487687Z",
"status": "Succeeded"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/workspaces/scanResult/{scanId}": {
"get": {
"tags": [
"Admin"
],
"summary": "Gets the scan result for the specified scan.",
"description": "\nOnly make this API call after a successful [GetScanStatus](/rest/api/power-bi/admin/workspace-info-get-scan-status) API call. The scan result will remain available for 24 hours.\n\n## Permissions\n\nThe user must be a Fabric administrator or authenticate using a service principal.\n\nWhen running under service principal authentication, an app **must not** have any admin-consent required permissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 500 requests per hour.\n
",
"operationId": "WorkspaceInfo_GetScanResult",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "scanId",
"description": "The scan ID, which is included in the response from the workspaces or the [Admin - WorkspaceInfo PostWorkspaceInfo](/rest/api/power-bi/admin/workspace-info-post-workspace-info) API call that triggered the scan.",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/WorkspaceInfoResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"scanId": "e7d03602-4873-4760-b37e-1563ef5358e3"
},
"responses": {
"200": {
"body": {
"workspaces": [
{
"id": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"name": "V2 shared",
"type": "Workspace",
"state": "Active",
"isOnDedicatedCapacity": true,
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"defaultDatasetStorageFormat": "Small",
"reports": [
{
"id": "c6d072d1-ed20-4b60-8329-16c4b934203b",
"name": "CompositeModelParams-RLS",
"datasetId": "132593c4-bf8d-4548-8f25-1ebb16a1613c",
"createdDateTime": "2020-06-16T08:22:49.14",
"modifiedDateTime": "2020-06-16T08:22:49.14",
"modifiedBy": "john@contoso.com",
"reportType": "PaginatedReport",
"endorsementDetails": {
"endorsement": "Certified",
"certifiedBy": "john@contoso.com"
},
"sensitivityLabel": {
"labelId": "85b38049-4259-43a2-8feb-244e222d96c0"
},
"users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"appUserAccessRight": "ReadExplore",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
],
"dashboards": [
{
"id": "80814ece-9302-49e3-b6bc-bad2f7a86c1a",
"displayName": "CompositeModelParamsDashboard",
"isReadOnly": false,
"tiles": [
{
"id": "e687cc21-5b32-48f5-8c5e-4b844f190579",
"title": "CompositeModelParamsDashboard",
"reportId": "c6d072d1-ed20-4b60-8329-16c4b934203b",
"datasetId": "132593c4-bf8d-4548-8f25-1ebb16a1613c"
}
],
"sensitivityLabel": {
"labelId": "d9b9581a-0594-4c39-81c5-91ddf40baeda"
},
"users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"appUserAccessRight": "ReadExplore",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
],
"datasets": [
{
"id": "e7e8a355-e77b-4418-a7b8-ae5972fdaa03",
"name": "ExportB",
"tables": [
{
"name": "DW_Revenues",
"columns": [
{
"name": "RowNumber-2662979B-1795-4F74-8F37-6A1BA8059B61",
"dataType": "Int64",
"isHidden": true
}
],
"measures": [
{
"name": "MyMeasure",
"expression": "CALCULATE(SELECTEDVALUE('DW_Revenues DW_RevenuesTestToBeDeleted'[Numbers])*10)",
"description": "My measure",
"isHidden": false
}
],
"isHidden": false,
"description": "My table",
"source": [
{
"expression": "let\n Source = Revenues,\n Param = RevenuesParam\nin\n Source"
}
]
}
],
"relationships": [],
"configuredBy": "john@contoso.com",
"targetStorageMode": "Abf",
"endorsementDetails": {
"endorsement": "Certified",
"certifiedBy": "john@contoso.com"
},
"expressions": [
{
"name": "Revenues",
"description": "revenues",
"expression": "let\n Source = Sql.Database(\"sqlserver.database.windows.net\", \"DB\"),\n RevenuesTable = Source{[Schema=\"DB_SCHEMA\",Item=\"DB_SCHEMA_ITEM\"]}[Data]\nin\n RevenuesTable"
},
{
"name": "RevenuesParam",
"description": "revenues param",
"expression": "\"revenues param value\" meta [IsParameterQuery=true, Type=\"Text\", IsParameterQueryRequired=true]"
}
],
"roles": [
{
"name": "Teams",
"modelPermission": "Read",
"members": [
{
"memberName": "john@contoso.com",
"memberId": "ee96296b-fb71-4f65-a8af-c0ec5a7daced",
"memberType": "User",
"identityProvider": "AzureAD"
},
{
"memberName": "group@contoso.com",
"memberId": "0a1cdbc3-f82c-4001-8b96-be04ae9d25a3",
"memberType": "Group",
"identityProvider": "AzureAD"
}
],
"tablePermissions": [
{
"name": "DW_Revenues DW_RevenuesTest",
"filterExpression": "[InTeams] = \"True\""
}
]
}
],
"upstreamDataflows": [
{
"targetDataflowId": "a842dbb1-32ca-46b0-9648-498b2c2d5e38",
"groupId": "b7416115-7421-42c0-b525-1505ce40d2f0"
},
{
"targetDataflowId": "06898194-2eaf-4122-bacc-133db1f8585d",
"groupId": "7263838d-80d7-4b8d-a1f6-50fc27e74a97"
}
],
"datasourceUsages": [
{
"datasourceInstanceId": "c79ad907-df19-43fe-a0f7-d9f365d67070"
}
],
"misconfiguredDatasourceUsages": [
{
"datasourceInstanceId": "80ec28bc-fe81-43ea-be52-a07a95cfbcab"
}
],
"sensitivityLabel": {
"labelId": "bf3dc57d-d796-41c0-bbe9-a47f5ee3331e"
},
"users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"appUserAccessRight": "ReadExplore",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
],
"dataflows": [
{
"objectId": "a842dbb1-32ca-46b0-9648-498b2c2d5e38",
"name": "Azure SQL",
"description": "Azure SQL dataflow",
"configuredBy": "john@contoso.com",
"modifiedBy": "john@contoso.com",
"modifiedDateTime": "2020-06-16T08:27:47.783Z",
"endorsementDetails": {
"endorsement": "Certified",
"certifiedBy": "john@contoso.com"
},
"datasourceUsages": [
{
"datasourceInstanceId": "c79ad907-df19-43fe-a0f7-d9f365d67070"
}
],
"misconfiguredDatasourceUsages": [
{
"datasourceInstanceId": "80ec28bc-fe81-43ea-be52-a07a95cfbcab"
}
],
"sensitivityLabel": {
"labelId": "5c9f8c24-2a94-4fd2-a105-9a8b096c5af1"
},
"users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"appUserAccessRight": "ReadExplore",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
],
"datamarts": [
{
"id": "9df8d63c-db5b-44c3-a8e3-9f8c8ec1eec2",
"name": "MyDatamart",
"description": "SQL datamart",
"type": "Sql",
"configuredBy": "john@contoso.com",
"configuredById": "5c9f8c24-2a94-4fd2-a105-9a8b096cdsew",
"modifiedBy": "john@contoso.com",
"modifiedDateTime": "2020-06-16T08:27:47.783Z",
"sensitivityLabel": {
"labelId": "5c9f8c24-2a94-4fd2-a105-9a8b096c5af1"
},
"endorsementDetails": {
"endorsement": "Certified",
"certifiedBy": "john@contoso.com"
},
"UpstreamDataflows": [
{
"targetDataflowId": "5c9f8c24-2a94-34fd-a105-9a8b096c4555",
"groupId": "5c9f8c24-4dsc-4fd2-a105-9a8b096c4fgt"
}
],
"datasourceUsages": [
{
"datasourceInstanceId": "c79ad907-df19-43fe-a0f7-d9f365d67070"
}
],
"Users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User",
"userType": "User",
"profile": {
"id": "45416453",
"displayName": "John's profile"
},
"datamartUserAccessRight": "Read"
}
]
}
],
"users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"appUserAccessRight": "ReadExplore",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
],
"datasourceInstances": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "qlserver.database.windows.net",
"database": "dbo.largest_table"
},
"datasourceId": "c79ad907-df19-43fe-a0f7-d9f365d67070",
"gatewayId": "e820592e-f8cf-4a6f-b1ed-566799d29565"
}
],
"misconfiguredDatasourceInstances": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "sqlserver.database.windows.net",
"database": "dbo.table"
},
"datasourceId": "80ec28bc-fe81-43ea-be52-a07a95cfbcab",
"gatewayId": "505a19c1-4190-4e8e-a4f6-dd72722feced"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/workspaces/modified": {
"get": {
"tags": [
"Admin"
],
"summary": "Gets a list of workspace IDs in the organization.",
"description": "\nIf the optional `modifiedSince` parameter is set to a date-time, only the IDs of workspaces that changed after that date-time are returned. If the `modifiedSince` parameter isn't used, the IDs of all workspaces in the organization are returned. The date-time specified by the `modifiedSince` parameter must be in the range of 30 minutes (to allow workspace changes to take effect) to 30 days prior to the current time.\n\n## Permissions\n\nThe user must be a Fabric administrator or authenticate using a service principal.\n\nWhen running under service principal authentication, an app **must not** have any admin-consent required permissions for Power BI set on it in the Azure portal. \n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 30 requests per hour.\n
",
"operationId": "WorkspaceInfo_GetModifiedWorkspaces",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "modifiedSince",
"in": "query",
"description": "Last modified date (must be in ISO 8601 compliant UTC format)",
"required": false,
"type": "string",
"format": "date-time"
},
{
"name": "excludePersonalWorkspaces",
"in": "query",
"description": "Whether to exclude personal workspaces",
"required": false,
"type": "boolean"
},
{
"name": "excludeInActiveWorkspaces",
"in": "query",
"description": "Whether to exclude inactive workspaces",
"required": false,
"type": "boolean"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"description": "The modified workspaces list",
"items": {
"$ref": "#/definitions/ModifiedWorkspace"
}
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"modifiedSince": "2020-10-02T05:51:30.0000000Z",
"excludePersonalWorkspaces": true,
"excludeInActiveWorkspaces": true
},
"responses": {
"200": {
"body": [
{
"id": "3740504d-1f93-42f9-8e9d-c8ba9b787a3b"
},
{
"id": "19cb346c-9839-4e19-81e6-76364d0b836f"
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities/AssignWorkspaces": {
"post": {
"tags": [
"Admin"
],
"summary": "Assigns the specified workspaces to the specified Premium capacity.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Capacities_AssignWorkspacesToCapacity",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "requestParameters",
"in": "body",
"description": "Admin assign workspaces capacity parameters",
"required": true,
"schema": {
"$ref": "#/definitions/AssignWorkspacesToCapacityRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"AssignWorkspacesToCapacityRequest": {
"capacityMigrationAssignments": [
{
"targetCapacityObjectId": "FA5923C2-A23f-4C0B-8345-9BA8645F883E",
"workspacesToAssign": [
"0ebb517c-c6f5-4aa8-9f1d-42bd547e6297"
]
}
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities/UnassignWorkspaces": {
"post": {
"tags": [
"Admin"
],
"summary": "Unassigns the specified workspaces from capacity.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Capacities_UnassignWorkspacesFromCapacity",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "requestParameters",
"in": "body",
"description": "Admin assign workspaces to shared capacity parameters",
"required": true,
"schema": {
"$ref": "#/definitions/UnassignWorkspacesCapacityRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"UnassignWorkspacesCapacityRequest": {
"WorkspacesToUnassign": [
"0ebb517c-c6f5-4aa8-9f1d-42bd547e6297"
]
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/datasets": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of datasets for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal. \n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 50 requests per hour or 5 requests per minute, per tenant.\n
",
"operationId": "Datasets_GetDatasetsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminDatasets"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false,
"isInPlaceSharingEnabled": false,
"workspaceId": "5c968528-70b6-4588-809f-ce811ffa5c23"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/datasets/{datasetId}/datasources": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of data sources for the specified dataset.",
"description": "\nEach request takes 0.5 seconds to process, during which time other requests are queued.\n\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal. \n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n
",
"operationId": "Datasets_GetDatasourcesAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"in": "path",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"name": "301",
"connectionString": "data source=MyServer.database.windows.net;initial catalog=MyDatabase;persist security info=True;encrypt=True;trustservercertificate=False",
"datasourceType": "Sql",
"datasourceId": "16a54ccd-620d-4af3-9197-0b8c779a9a6d",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"server": "MyServer.database.windows.net",
"database": "MyDatabase"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/datasets/{datasetId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to the specified dataset.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n- The permissions for this API call are listed in [Datasets permissions](/power-bi/developer/embedded/datasets-permissions).\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Datasets_GetDatasetUsersAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "datasetId",
"description": "The dataset ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"datasetUserAccessRight": "ReadWriteReshareExplore",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of workspaces for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal. \n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 50 requests per hour or 15 requests per minute, per tenant. This call will also time out after 30 seconds to prevent adverse effect on the Power BI service.\n
",
"operationId": "Groups_GetGroupsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `users`, `reports`, `dashboards`, `datasets`, `dataflows`, and `workbooks`.",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results. This parameter is mandatory and must be in the range of 1-5000.",
"required": true,
"minimum": 1,
"maximum": 5000,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results. Use with top to fetch results beyond the first 5000.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminGroups"
}
}
},
"x-ms-examples": {
"Get workspaces with their 'users' expanded example.": {
"parameters": {
"$expand": "users",
"$top": 100
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "e380d1d0-1fa6-460b-9a90-1a5c6b02414c",
"isReadOnly": false,
"isOnDedicatedCapacity": true,
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"defaultDatasetStorageFormat": "Small",
"name": "Sample Group 1",
"description": "Sample group",
"type": "Workspace",
"state": "Active",
"hasWorkspaceLevelSettings": false,
"users": [
{
"emailAddress": "john@contoso.com",
"groupUserAccessRight": "Admin"
}
]
},
{
"id": "183dcf10-47b8-48c4-84aa-f0bf9d5f8fcf",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "Sample Group 2",
"description": "Deleted sample group",
"type": "Workspace",
"state": "Deleted",
"users": []
}
]
}
}
}
},
"Get orphaned workspaces example.": {
"parameters": {
"$expand": "users",
"$top": 100,
"$filter": "(not users/any()) or (not users/any(u: u/groupUserAccessRight eq Microsoft.PowerBI.ServiceContracts.Api.GroupUserAccessRight'Admin'))"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "d5caa808-8c91-400a-911d-06af08dbcc31",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "Orphaned Group",
"description": "Sample orphan group",
"type": "Workspace",
"state": "Active",
"hasWorkspaceLevelSettings": false,
"users": []
}
]
}
}
}
},
"Get workspaces with their 'reports' expanded example": {
"parameters": {
"$expand": "reports",
"$top": 100,
"skip": 0
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "EC1EE11F-845D-495E-82A3-9DAC2072305A",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"capacityMigrationStatus": "Migrated",
"description": "cvcv",
"type": "Workspace",
"state": "Active",
"name": "WSv2Test12",
"hasWorkspaceLevelSettings": true,
"reports": []
},
{
"id": "94E57E92-CEE2-486D-8CC8-218C97200579",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"capacityMigrationStatus": "Migrated",
"description": "shorter description",
"type": "Workspace",
"state": "Removing",
"name": "a",
"hasWorkspaceLevelSettings": false,
"reports": [
{
"id": "5DBA60B0-D9A7-42AE-B12C-6D9D51E7739A",
"reportType": "PowerBIReport",
"name": "SQlAzure-Refresh",
"datasetId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523"
},
{
"id": "197E5C3C-D2F3-42D8-A536-875FB6D7D48C",
"reportType": "PowerBIReport",
"name": "NESGames",
"datasetId": "7d6a4f72-1906-4e08-a469-bd6bc1ab7b69"
}
]
}
]
}
}
}
},
"Get workspaces with their 'dashboards' expanded example": {
"parameters": {
"$expand": "dashboards",
"$top": 100,
"skip": 0
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "94E57E92-CEE2-486D-8CC8-218C97200579",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"capacityMigrationStatus": "Migrated",
"description": "shorter description",
"type": "Workspace",
"state": "Removing",
"name": "a",
"hasWorkspaceLevelSettings": false,
"dashboards": [
{
"id": "4668133c-ae3f-42fb-ad7c-214a8623280c",
"displayName": "SQlAzure-Refresh.pbix",
"isReadOnly": false
},
{
"id": "a8f18ca7-63e8-4220-bc1c-f576ec180b98",
"displayName": "cdvc",
"isReadOnly": false
}
]
}
]
}
}
}
},
"Get workspaces with their 'datasets' expanded example": {
"parameters": {
"$expand": "datasets",
"$top": 100,
"skip": 0
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "94E57E92-CEE2-486D-8CC8-218C97200579",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"capacityMigrationStatus": "Migrated",
"description": "shorter description",
"type": "Workspace",
"state": "Removing",
"name": "a",
"hasWorkspaceLevelSettings": false,
"datasets": [
{
"id": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"name": "SQlAzure-Refresh",
"addRowsAPIEnabled": false,
"configuredBy": "admin@granularcontrols.ccsctp.net",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false,
"targetStorageMode": "Abf",
"createdDate": "2019-04-30T21:35:15.867-07:00",
"ContentProviderType": "PbixInImportMode",
"isInPlaceSharingEnabled": false
},
{
"id": "7d6a4f72-1906-4e08-a469-bd6bc1ab7b69",
"name": "NESGames",
"addRowsAPIEnabled": false,
"configuredBy": "admin@granularcontrols.ccsctp.net",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false,
"targetStorageMode": "Abf",
"createdDate": "2019-04-30T21:35:15.867-07:00",
"ContentProviderType": "PbixInImportMode",
"isInPlaceSharingEnabled": false
}
]
}
]
}
}
}
},
"Get deleted workspaces example.": {
"parameters": {
"$top": 100,
"$filter": "state eq 'Deleted'"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "183dcf10-47b8-48c4-84aa-f0bf9d5f8fcf",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "Sample Group 2",
"description": "Deleted sample group",
"type": "Workspace",
"state": "Deleted"
}
]
}
}
}
},
"Get workspaces with their 'datasets' expanded example.": {
"parameters": {
"$expand": "datasets"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "e380d1d0-1fa6-460b-9a90-1a5c6b02414c",
"isReadOnly": false,
"isOnDedicatedCapacity": true,
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"defaultDatasetStorageFormat": "Small",
"name": "Sample Group 1",
"description": "Sample group",
"type": "Workspace",
"state": "Active",
"hasWorkspaceLevelSettings": true,
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false,
"isInPlaceSharingEnabled": false,
"encryption": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"encryptionStatus": "InSyncWithWorkspace"
}
}
]
},
{
"id": "183dcf10-47b8-48c4-84aa-f0bf9d5f8fcf",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"name": "Sample Group 2",
"description": "Deleted sample group",
"type": "Workspace",
"state": "Deleted",
"datasets": []
}
]
}
}
}
},
"Get workspaces with their 'workbooks' expanded example": {
"parameters": {
"$expand": "workbooks",
"$top": 100,
"skip": 0
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "94E57E92-CEE2-486D-8CC8-218C97200579",
"isReadOnly": false,
"isOnDedicatedCapacity": false,
"description": "shorter description",
"type": "Workspace",
"state": "Removing",
"hasWorkspaceLevelSettings": false,
"name": "a",
"workbooks": [
{
"name": "My Excel sheet",
"datasetId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523"
}
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a workspace for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Groups_GetGroupAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `users`, `reports`, `dashboards`, `datasets`, `dataflows`, and `workbooks`.",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminGroup"
}
}
},
"x-ms-examples": {
"Get workspaces with their 'users' expanded example.": {
"parameters": {
"$expand": "users"
},
"responses": {
"200": {
"body": {
"id": "e380d1d0-1fa6-460b-9a90-1a5c6b02414c",
"isReadOnly": false,
"isOnDedicatedCapacity": true,
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"defaultDatasetStorageFormat": "Small",
"name": "Sample Group 1",
"description": "Sample group",
"type": "Workspace",
"state": "Active",
"users": [
{
"emailAddress": "john@contoso.com",
"groupUserAccessRight": "Admin"
}
]
}
}
}
}
},
"deprecated": false
},
"patch": {
"tags": [
"Admin"
],
"summary": "Updates the properties of the specified workspace.",
"description": "\nTo unassign a Log Analytics workspace, explicitly set the value to null.\n\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\n- Maximum 200 requests per hour.\n- For Shared capacities, only the name and description can be updated.\n- For Premium capacities, only the name, description, defaultDatasetStorageFormat and Log Analytics workspace can be updated.\n- The name must be unique inside an organization.\n
",
"operationId": "Groups_UpdateGroupAsAdmin",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "groupProperties",
"in": "body",
"required": true,
"description": "The properties to update",
"schema": {
"$ref": "#/definitions/AdminGroup"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example of updating group description and defaultDatasetStorageFormat": {
"parameters": {
"groupId": "e2284830-c8dc-416b-b19a-8cdcd2729332",
"groupProperties": {
"name": "Updated Sales Results",
"description": "Refreshed sales numbers",
"defaultDatasetStorageFormat": "Large"
}
},
"responses": {
"200": {}
}
},
"Example of assigning Log Analytics workspace": {
"parameters": {
"groupId": "e2284830-c8dc-416b-b19a-8cdcd2729332",
"groupProperties": {
"logAnalyticsWorkspace": {
"subscriptionId": "d778934f-bda2-41d9-b5c7-6cf41372c1a0",
"resourceGroup": "myResourceGroup",
"resourceName": "myLogAnalyticsWorkspace"
}
}
},
"responses": {
"200": {}
}
},
"Example of unassigning Log Analytics workspace": {
"parameters": {
"groupId": "e2284830-c8dc-416b-b19a-8cdcd2729332",
"groupProperties": {
"logAnalyticsWorkspace": null
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to the specified workspace.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Groups_GetGroupUsersAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GroupUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"value": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"groupUserAccessRight": "Admin",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
},
{
"displayName": "Adam Wood",
"emailAddress": "Adam@contoso.com",
"groupUserAccessRight": "Member",
"identifier": "Adam@contoso.com",
"graphId": "785e192c-0f1f-41ca-ae7a-a85da28e565a",
"principalType": "User"
},
{
"displayName": "ContosoTestApp",
"groupUserAccessRight": "Admin",
"identifier": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"graphId": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"principalType": "App"
}
]
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Admin"
],
"summary": "Grants user permissions to the specified workspace.",
"description": "\nThis API call only supports adding a user, security group, M365 group and service principal.\n\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Groups_AddUserAsAdmin",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/GroupUser"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Add user to group example": {
"parameters": {
"groupId": "206d27ca-94e8-4a69-855b-5c32bdd458a8",
"userDetails": {
"emailAddress": "john@contoso.com",
"groupUserAccessRight": "Admin"
}
},
"responses": {
"200": {}
}
},
"Add security group to workspace example": {
"parameters": {
"groupId": "206d27ca-94e8-4a69-855b-5c32bdd458a8",
"userDetails": {
"identifier": "ece007fa-2f19-4df1-bdd5-539881ec5f83",
"principalType": "Group",
"groupUserAccessRight": "Member"
}
},
"responses": {
"200": {}
}
},
"Add service principal to workspace example": {
"parameters": {
"groupId": "206d27ca-94e8-4a69-855b-5c32bdd458a8",
"userDetails": {
"identifier": "84c468ad-12f1-471e-af6f-0999da422391",
"principalType": "App",
"groupUserAccessRight": "Viewer"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/users/{user}": {
"delete": {
"tags": [
"Admin"
],
"summary": "Removes user permissions from the specified workspace.",
"description": "\nThis API call supports removing a user, security group, M365 group and service principal.Please use email address or UPN for user, group object Id for group and app object Id for service principal to delete.\n\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Groups_DeleteUserAsAdmin",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID.",
"type": "string",
"format": "uuid"
},
{
"name": "user",
"in": "path",
"required": true,
"description": "The user principal name (UPN) of the user or group object Id of the group or app object Id of the service principal to delete.",
"type": "string"
},
{
"name": "profileId",
"in": "query",
"description": "The service principal profile ID to delete.",
"required": false,
"type": "string",
"format": "uuid"
},
{
"name": "isGroup",
"in": "query",
"description": "Whether a given user is a group or not. This parameter is required when user to delete is group.",
"required": false,
"type": "boolean"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Delete user example": {
"parameters": {
"groupId": "f7d76f5a-7190-43c6-bf12-7a135c6c2d69",
"user": "john@contoso.com"
},
"responses": {
"200": {}
}
},
"Delete group example": {
"parameters": {
"groupId": "f7d76f5a-7190-43c6-bf12-7a135c6c2d23",
"user": "23476f5a-7190-43c6-bf12-7a135c6c2d23",
"isGroup": true
},
"responses": {
"200": {}
}
},
"Delete service principal example": {
"parameters": {
"groupId": "f7d76f5a-7190-43c6-bf12-7a135c6c2d23",
"user": "23476f5a-7190-43c6-bf12-7a135c6c2d23"
},
"responses": {
"200": {}
}
},
"Delete guest user example": {
"parameters": {
"groupId": "f7d76f5a-7190-43c6-bf12-7a135c6c2d23",
"user": "john_contoso.com%23EXT%23@test.com"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/restore": {
"post": {
"tags": [
"Admin"
],
"summary": "Restores a deleted workspace.",
"description": "\nUse this API call to restore workspaces.\n\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Groups_RestoreDeletedGroupAsAdmin",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "groupRestoreRequest",
"in": "body",
"description": "Details of the group restore request",
"required": true,
"schema": {
"$ref": "#/definitions/GroupRestoreRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "3bec11ee-48a9-490c-8e4d-1ebba90d491a",
"groupRestoreRequest": {
"name": "Restored Workspace",
"emailAddress": "john@contoso.com"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/dataflows/{dataflowId}/upstreamDataflows": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of upstream dataflows for the specified dataflow.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Dataflows_GetUpstreamDataflowsInGroupAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "dataflowId",
"in": "path",
"required": true,
"description": "The dataflow ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DependentDataflows"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"dataflowId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"targetDataflowId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
{
"targetDataflowId": "67a4529b-0cdd-4584-9867-5c0e77d57a2f",
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/dashboards": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of dashboards from the specified workspace.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Dashboards_GetDashboardsInGroupAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminDashboards"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48",
"isReadOnly": false
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/reports": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of reports from the specified workspace.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Reports_GetReportsInGroupAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminReports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715&groupId=f089354e-8366-4e18-aea3-4cb4a3a50b48"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/datasets": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of datasets from the specified workspace.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Datasets_GetDatasetsInGroupAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$expand",
"in": "query",
"description": "Expands related entities inline",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminDatasets"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false,
"isInPlaceSharingEnabled": false
}
]
}
}
}
},
"Example with expand on encryption": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"$expand": "encryption"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"addRowsAPIEnabled": false,
"configuredBy": "john@contoso.com",
"isRefreshable": true,
"isEffectiveIdentityRequired": false,
"isEffectiveIdentityRolesRequired": false,
"isOnPremGatewayRequired": false,
"isInPlaceSharingEnabled": false,
"encryption": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"encryptionStatus": "InSyncWithWorkspace"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/datasets/upstreamDataflows": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of upstream dataflows for datasets from the specified workspace.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Datasets_GetDatasetToDataflowsLinksInGroupAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DatasetToDataflowLinksResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"datasetObjectId": "0d6e2a35-c606-4fb7-8690-1b3a5370a294",
"dataflowObjectId": "4caab73a-2660-4255-8e53-de6745f3d92c",
"workspaceObjectId": "358240c2-b8f3-4817-aa7a-0efa03687a7b"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/dataflows": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of dataflows from the specified workspace.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Dataflows_GetDataflowsInGroupAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Dataflows"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"value": [
{
"objectId": "bd32e5c0-363f-430b-a03b-5535a4804b9b",
"name": "AdventureWorks",
"description": "Our Adventure Works",
"modelUrl": "https://MyDataflowStorageAccount.dfs.core.windows.net/powerbi/contoso/AdventureWorks/model.json",
"configuredBy": "john@contoso.com"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/groups/{groupId}/unused": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of datasets, reports, and dashboards that have not been used within 30 days for the specified workspace. This is a preview API call.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Groups_GetUnusedArtifactsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "groupId",
"in": "path",
"description": "The workspace ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "continuationToken",
"in": "query",
"description": "Token required to get the next chunk of the result set",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/UnusedArtifactsResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"unusedArtifactEntities": [
{
"artifactId": "a987f160-96aa-43cf-b9db-a4ca0fc6b7c4",
"displayName": "Sample",
"artifactType": "Dataset",
"artifactSizeInMB": 9,
"createdDateTime": "2020-09-01T22:40:52.197Z",
"lastAccessedDateTime": "2021-07-01T22:40:52.953Z"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/unused?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/reports": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of reports for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 50 requests per hour or 5 requests per minute, per tenant.\n
",
"operationId": "Reports_GetReportsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminReports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com//reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715",
"workspaceId": "278e22a3-2aee-4057-886d-c3225423bc10"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/reports/{reportId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to the specified report.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Reports_GetReportUsersAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ReportUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"reportUserAccessRight": "Owner",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/reports/{reportId}/subscriptions": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of report subscriptions along with subscriber details. This is a preview API call.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Reports_GetReportSubscriptionsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Subscriptions"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "18b746fe-c6d5-4a00-9523-05dc91424274",
"title": "TestReportSubscription-1",
"artifactId": "7b71b90a-a333-4006-b12c-ef3d767fa4e9",
"artifactDisplayName": "Customer Profitability Sample",
"subArtifactDisplayName": "Team Scorecard",
"artifactType": "Report",
"isEnabled": true,
"frequency": "Daily",
"startDate": "10/13/2021 12:00:00 AM",
"endDate": "10/13/2022 12:00:00 AM",
"linkToContent": true,
"previewImage": true,
"attachmentFormat": "PNG",
"users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dashboards": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of dashboards for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 50 requests per hour or 5 requests per minute, per tenant.\n
",
"operationId": "Dashboards_GetDashboardsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `tiles`.",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminDashboards"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"displayName": "SalesMarketing",
"embedUrl": "https://app.powerbi.com/dashboardEmbed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af",
"isReadOnly": false,
"workspaceId": "abfbdc89-2659-43c1-9142-93e8378eac96"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dashboards/{dashboardId}/tiles": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of tiles within the specified dashboard.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Dashboards_GetTilesAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminTiles"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"dashboardId": "69ffaa6c-b36d-4d01-96f5-1ed67c64d4af"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"title": "SalesMarketingTile",
"embedUrl": "https://app.powerbi.com/embed?dashboardId=69ffaa6c-b36d-4d01-96f5-1ed67c64d4af&tileId=312fbfe9-2eda-44e0-9ed0-ab5dc571bb4b",
"rowSpan": 0,
"colSpan": 0,
"reportId": "5b218778-e7a5-4d73-8187-f10824047715",
"datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dashboards/{dashboardId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to the specified dashboard.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal. \n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Dashboards_GetDashboardUsersAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dashboardId",
"description": "The dashboard ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DashboardUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"dashboardUserAccessRight": "Owner",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dashboards/{dashboardId}/subscriptions": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of dashboard subscriptions along with subscriber details. This is a preview API call.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Dashboards_GetDashboardSubscriptionsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dashboardId",
"in": "path",
"description": "The dashboard ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Subscriptions"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "18b746fe-c6d5-4a00-9523-05dc91424275",
"title": "TestDashboardSubscription-1",
"artifactId": "7b71b90a-a333-4006-b12c-ef3d767fa4e9",
"artifactDisplayName": "Customer Profitability Sample",
"artifactType": "Dashboard",
"isEnabled": true,
"frequency": "Daily",
"startDate": "10/13/2021 12:00:00 AM",
"endDate": "10/13/2022 12:00:00 AM",
"linkToContent": true,
"previewImage": false,
"users": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/widelySharedArtifacts/linksSharedToWholeOrganization": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of Power BI reports that are shared with the whole organization through links.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "WidelySharedArtifacts_LinksSharedToWholeOrganization",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "continuationToken",
"in": "query",
"description": "Token required to get the next chunk of the result set",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ArtifactAccessResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"artifactAccessEntities": [
{
"artifactId": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"displayName": "test report",
"artifactType": "Report",
"accessRight": "ReadWrite",
"shareType": "Link",
"sharer": {
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/widelySharedArtifacts/linksSharedToWholeOrganization?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/widelySharedArtifacts/publishedToWeb": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of Power BI items (such as reports or dashboards) that are published to the web.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "WidelySharedArtifacts_PublishedToWeb",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "continuationToken",
"in": "query",
"description": "Token required to get the next chunk of the result set",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ArtifactAccessResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"artifactAccessEntities": [
{
"artifactId": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"displayName": "test report",
"artifactType": "Report",
"accessRight": "None",
"shareType": "PublishToWeb",
"sharer": {
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/widelySharedArtifacts/linksSharedToWholeOrganization?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/imports": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of imports for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Imports_GetImportsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$expand",
"in": "query",
"description": "Expands related entities inline",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Imports"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"importState": "Succeeded",
"createdDateTime": "2018-05-08T14:56:18.477Z",
"updatedDateTime": "2018-05-08T14:56:18.477Z",
"name": "SalesMarketing",
"connectionType": "import",
"source": "Upload",
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "5b218778-e7a5-4d73-8187-f10824047715",
"name": "SalesMarketing",
"webUrl": "https://app.powerbi.com/reports/5b218778-e7a5-4d73-8187-f10824047715",
"embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715"
}
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/tenantKeys": {
"post": {
"tags": [
"Admin"
],
"summary": "Adds an encryption key for Power BI workspaces assigned to a capacity.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 600 requests per hour.",
"operationId": "Admin_AddPowerBIEncryptionKey",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "tenantKeyCreationRequest",
"in": "body",
"description": "Tenant key information",
"required": true,
"schema": {
"$ref": "#/definitions/TenantKeyCreationRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/TenantKey"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"tenantKeyCreationRequest": {
"name": "Contoso Sales",
"keyVaultKeyIdentifier": "https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2",
"activate": true,
"isDefault": true
}
},
"responses": {
"200": {
"body": {
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"name": "Contoso Sales",
"keyVaultKeyIdentifier": "https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2",
"isDefault": true,
"createdAt": "2019-04-30T21:35:15.867-07:00",
"updatedAt": "2019-04-30T21:35:15.867-07:00"
}
}
}
}
},
"deprecated": false
},
"get": {
"tags": [
"Admin"
],
"summary": "Returns the encryption keys for the tenant.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Admin_GetPowerBIEncryptionKeys",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/TenantKeys"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"name": "Contoso Sales",
"keyVaultKeyIdentifier": "https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2",
"isDefault": true,
"createdAt": "2019-04-30T21:35:15.867-07:00",
"updatedAt": "2019-04-30T21:35:15.867-07:00"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/tenantKeys/{tenantKeyId}/Default.Rotate": {
"post": {
"tags": [
"Admin"
],
"summary": "Rotate the encryption key for Power BI workspaces assigned to a capacity.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 600 requests per hour.\n
",
"operationId": "Admin_RotatePowerBIEncryptionKey",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "tenantKeyId",
"description": "The tenant key ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "tenantKeyRotationRequest",
"in": "body",
"description": "Tenant key information",
"required": true,
"schema": {
"$ref": "#/definitions/TenantKeyRotationRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/TenantKey"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"tenantKeyId": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"tenantKeyRotationRequest": {
"keyVaultKeyIdentifier": "https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2"
}
},
"responses": {
"200": {
"body": {
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"name": "Contoso Sales",
"keyVaultKeyIdentifier": "https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2",
"isDefault": true,
"createdAt": "2019-04-30T21:35:15.867-07:00",
"updatedAt": "2019-04-30T21:35:15.867-07:00"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of capacities for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Admin_GetCapacitiesAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$expand",
"in": "query",
"description": "Expands related entities inline",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Capacities"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"admins": [
"john@contoso.com"
],
"sku": "A1",
"state": "Active",
"region": "West Central US",
"capacityUserAccessRight": "Admin",
"tenantKeyId": "82d9a37a-2b45-4221-b012-cb109b8e30c7"
}
]
}
}
}
},
"Example with expand on tenant key": {
"parameters": {
"$expand": "tenantKey"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"admins": [
"john@contoso.com"
],
"sku": "A1",
"state": "Active",
"region": "West Central US",
"capacityUserAccessRight": "Admin",
"tenantKeyId": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"tenantKey": {
"id": "82d9a37a-2b45-4221-b012-cb109b8e30c7",
"name": "Contoso Sales",
"keyVaultKeyIdentifier": "https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2",
"isDefault": true,
"createdAt": "2019-04-30T21:35:15.867-07:00",
"updatedAt": "2019-04-30T21:35:15.867-07:00"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities/{capacityId}": {
"patch": {
"tags": [
"Admin"
],
"summary": "Changes specific capacity information. Currently, this API call only supports changing the capacity's encryption key.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Admin_PatchCapacityAsAdmin",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "capacityId",
"description": "The capacity ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "capacityPatchRequest",
"in": "body",
"description": "Patch capacity information",
"required": true,
"schema": {
"$ref": "#/definitions/CapacityPatchRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"capacityId": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"capacityPatchRequest": {
"tenantKeyId": "82d9a37a-2b45-4221-b012-cb109b8e30c7"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities/{capacityId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to the specified workspace.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Capacities_GetCapacityUsersAsAdmin",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "capacityId",
"description": "The capacity ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/CapacityUsers"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities/refreshables": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of refreshables for the organization within a capacity.",
"description": "\nPower BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.\n\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Admin_GetRefreshables",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `capacities` and `groups`.",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results.",
"required": true,
"minimum": 1,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results. Use with top to fetch results beyond the first 1000.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshables"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
},
"Get refreshables with their 'capacity' and 'group' expanded example": {
"parameters": {
"$expand": "capacity,group"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
],
"capacity": {
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"sku": "A1"
},
"group": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing"
}
}
]
}
}
}
},
"Get refreshables, filtering for an average refresh duration of greater than 30 minutes example.": {
"parameters": {
"$filter": "averageDuration gt 1800"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 3289.3814,
"medianDuration": 2268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:58:05.221Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities/{capacityId}/refreshables": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of refreshables for the specified capacity that the user has access to.",
"description": "\nPower BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.\n\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal. \n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Admin_GetRefreshablesForCapacity",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "capacityId",
"description": "The capacity ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `capacities` and `groups`.",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results.",
"required": true,
"minimum": 1,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results. Use with top to fetch results beyond the first 1000.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshables"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
},
"Get refreshables with their 'capacity' and 'group' expanded example": {
"parameters": {
"$expand": "capacity,group"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
],
"capacity": {
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"sku": "A1"
},
"group": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing"
}
}
]
}
}
}
},
"Get refreshables, filtering for an average refresh duration of greater than 30 minutes example.": {
"parameters": {
"$filter": "averageDuration gt 1800"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 3289.3814,
"medianDuration": 2268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:58:05.221Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/capacities/{capacityId}/refreshables/{refreshableId}": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns the specified refreshable for the specified capacity that the user has access to.",
"description": "\nPower BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.\n\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Admin_GetRefreshableForCapacity",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "capacityId",
"description": "The capacity ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "refreshableId",
"description": "The refreshable ID",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `capacities` and `groups`.",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Refreshables"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
]
}
]
}
}
}
},
"Get a refreshable with its 'capacity' and 'group' expanded example": {
"parameters": {
"$expand": "capacity,group"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing",
"kind": "Dataset",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-19T11:22:32.445Z",
"refreshCount": 22,
"refreshFailures": 0,
"averageDuration": 289.3814,
"medianDuration": 268.6245,
"refreshesPerDay": 11,
"lastRefresh": {
"refreshType": "ViaApi",
"startTime": "2017-06-13T09:25:43.153Z",
"endTime": "2017-06-13T09:31:43.153Z",
"status": "Completed",
"requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
},
"refreshSchedule": {
"days": [
"Sunday",
"Friday",
"Saturday"
],
"times": [
"05:00",
"11:30",
"17:30",
"23:00"
],
"enabled": true,
"localTimeZoneId": "UTC",
"notifyOption": "MailOnFailure"
},
"configuredBy": [
"john@contoso.com"
],
"capacity": {
"id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
"displayName": "MyCapacity",
"sku": "A1"
},
"group": {
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"name": "SalesMarketing"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dataflows": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of dataflows for the organization.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Dataflows_GetDataflowsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$filter",
"in": "query",
"description": "Returns a subset of a results based on [Odata](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html#sec_SystemQueryOptions) filter query parameter condition.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminDataflows"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"objectId": "bd32e5c0-363f-430b-a03b-5535a4804b9b",
"name": "AdventureWorks",
"description": "Our Adventure Works",
"modelUrl": "https://MyDataflowStorageAccount.dfs.core.windows.net/powerbi/contoso/AdventureWorks/model.json",
"configuredBy": "john@contoso.com",
"workspaceId": "6369a442-4bc4-425c-916d-460c42be746b"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dataflows/{dataflowId}/export": {
"get": {
"tags": [
"Admin"
],
"summary": "Exports the definition for the specified dataflow to a JSON file.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Dataflows_ExportDataflowAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "Exported Json file",
"schema": {
"type": "file"
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dataflows/{dataflowId}/datasources": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of data sources for the specified dataflow.",
"description": "\nDeleted data sources will still appear in the response. This may include both cloud and on-premise data gateway sources. For more information see [Dataflows considerations and limitations](/power-bi/transform-model/dataflows/dataflows-features-limitations).\n\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n
",
"operationId": "Dataflows_GetDataflowDatasourcesAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Datasources"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"dataflowId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {
"body": {
"value": [
{
"name": "301",
"connectionString": "data source=MyServer.database.windows.net;initial catalog=MyDatabase;persist security info=True;encrypt=True;trustservercertificate=False",
"datasourceType": "Sql",
"datasourceId": "16a54ccd-620d-4af3-9197-0b8c779a9a6d",
"gatewayId": "7f1c4e55-544b-403f-b132-da0d3a024674",
"connectionDetails": {
"server": "MyServer.database.windows.net",
"database": "MyDatabase"
}
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/dataflows/{dataflowId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to the specified dataflow.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Dataflows_GetDataflowUsersAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "dataflowId",
"description": "The dataflow ID",
"in": "path",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DataflowUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"dataflowUserAccessRight": "ReadWrite",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/GenerateToken": {
"post": {
"tags": [
"EmbedToken"
],
"summary": "Generates an embed token for multiple reports, datasets, and target workspaces.",
"description": "\n- Reports and datasets don't have to be related.\n- You can bind a report to a dataset during embedding.\n- You can only create a report in workspaces specified by the `targetWorkspaces` parameter.\n\n> [!IMPORTANT]\n> This API call is only relevant to the [embed for your customers](/power-bi/developer/embed-sample-for-customers) scenario. To learn more about using this API, see [Considerations when generating an embed token](/power-bi/developer/embedded/generate-embed-token).\n\n## Permissions\n\n- When using a service principal for authentication, refer to [Embed Power BI content with service principal](/power-bi/developer/embed-service-principal) and [Considerations and limitations](/power-bi/developer/embedded/embed-service-principal#considerations-and-limitations).\n- For Power BI reports with a paginated visual, include the paginated report ID in the API call. For more information, see [example](/rest/api/power-bi/embed-token/generate-token#examples).\n- This API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nAll of the following, unless a requirement doesn't apply:\n\n- Content.Create, required if a target workspace is specified in [GenerateTokenRequestV2](/rest/api/power-bi/embed-token/generate-token#generatetokenrequestv2).\n- Report.ReadWrite.All or Report.Read.All, required if a report is specified in [GenerateTokenRequestV2](/rest/api/power-bi/embed-token/generate-token#generatetokenrequestv2).\n- Report.ReadWrite.All, required if the `allowEdit` flag is specified for at least one report in [GenerateTokenRequestV2](/rest/api/power-bi/embed-token/generate-token#generatetokenrequestv2).\n- Dataset.ReadWrite.All or Dataset.Read.All\n\n## Limitations\n\n- You can only create a report in workspaces specified by the `targetWorkspaces` parameter.\n- All reports and datasets must reside in a **V2** workspace.\n- All target workspaces must be **V2** workspaces.\n- Maximum 50 reports.\n- Maximum 50 datasets.\n- Maximum 50 target workspaces.\n- For Azure Analysis Services or Analysis Services on-premises live connection reports, generating an embed token with row-level security (RLS) might not work for several minutes after a [rebind](/rest/api/power-bi/reports/rebind-report).\n
",
"operationId": "EmbedToken_GenerateToken",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "requestParameters",
"description": "Generate token parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GenerateTokenRequestV2"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/EmbedToken"
}
}
},
"x-ms-examples": {
"Example of generating an embed token for two datasets with RLS identities and a single report with read-only permissions. The embed token lets you view the report, which is dynamically bound to two different datasets.": {
"parameters": {
"requestParameters": {
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
{
"id": "e75afc47-1150-45e0-aba7-4eb04e4876e5"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
},
{
"username": "iris@contoso.com",
"roles": [
"executive"
],
"datasets": [
"e75afc47-1150-45e0-aba7-4eb04e4876e5"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2028-07-29T17:58:19Z"
}
}
}
},
"Example of generating an embed token for a dataset and two reports example. Only one of the reports can be edited.": {
"parameters": {
"requestParameters": {
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"allowEdit": true,
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
},
{
"id": "759908bb-ead8-4a43-9645-7ffbf921c68d"
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Example of generating an embed token that expires no later than ten minutes from the API call": {
"parameters": {
"requestParameters": {
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
],
"lifetimeInMinutes": 10
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2028-07-29T17:58:19Z"
}
}
}
},
"Example of generating an embed token for a Power BI report with a paginated visual. The paginated report ID ('...4850') of the paginated visual must be included in the 'reports' section of the request.": {
"parameters": {
"requestParameters": {
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
},
{
"id": "f904e89a-7ebe-4aa0-8647-e409063b4850"
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
}
}
},
"Example of generating an embed token for a Power BI report with a dataset which is connected with DirectQuery to another Power BI dataset. All related dataset IDs must be specified in the request with 'xmlaPermissions' set to 'ReadOnly'. IdentityBlobs for all SSO-enabled data sources must be provided in the 'datasourceIdentities' array": {
"parameters": {
"requestParameters": {
"datasets": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd",
"xmlaPermissions": "ReadOnly"
},
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"xmlaPermissions": "ReadOnly"
}
],
"reports": [
{
"id": "f904e89a-7ebe-4aa0-8647-e409063b4850"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "Best-Sql-Server",
"database": "Database3"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "ab4d49ae-c054-4c29-af52-93b5c80619ff",
"expiration": "2022-06-10T12:41:11Z"
}
}
}
},
"Example of generating an embed token for a paginated report which has a Power BI dataset as a datasource. The ID of the dataset must be specified in the request. The report and dataset can each have its own identity": {
"parameters": {
"requestParameters": {
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"xmlaPermissions": "ReadOnly"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
},
{
"username": "john@contoso.com",
"reports": [
"b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
]
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
}
}
},
"Example of generating an embed token for a paginated report with a data source identity": {
"parameters": {
"requestParameters": {
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
}
}
},
"Example of generating an embed token for a paginated report with multiple data source identities and a single identity blob": {
"parameters": {
"requestParameters": {
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
},
{
"datasourceType": "MySql",
"connectionDetails": {
"server": "New-MySql-Server",
"database": "New-MySql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
}
}
},
"Example of generating an embed token for a paginated report with multiple data source identities and multiple identity blobs": {
"parameters": {
"requestParameters": {
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
},
{
"datasources": [
{
"datasourceType": "MySql",
"connectionDetails": {
"server": "New-MySql-Server",
"database": "New-MySql-Database"
}
}
],
"identityBlob": "eyJ0dW....AAA="
}
]
}
},
"responses": {
"200": {
"body": {
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/apps": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of apps in the organization.",
"description": "\nThe query parameter $top is required.\n\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Apps_GetAppsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$top",
"description": "The requested number of apps.",
"in": "query",
"required": true,
"type": "integer",
"minimum": 1
},
{
"name": "$skip",
"description": "The number entries to be skipped.",
"in": "query",
"required": false,
"type": "integer",
"minimum": 1
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminApps"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"$top": 10
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"description": "The finance app",
"name": "Finance",
"publishedBy": "Bill",
"lastUpdate": "2019-01-13T09:46:53.094+02:00"
},
{
"id": "3d9b93c6-7b6d-4801-a491-1738910904fd",
"description": "The marketing app",
"name": "Marketing",
"publishedBy": "Ben",
"lastUpdate": "2018-11-13T09:46:53.094+02:00"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/apps/{appId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to the specified app.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Apps_GetAppUsersAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "appId",
"in": "path",
"description": "The app ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AppUsers"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"appId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"value": [
{
"displayName": "John Nick",
"emailAddress": "john@contoso.com",
"appUserAccessRight": "ReadExplore",
"identifier": "john@contoso.com",
"graphId": "3fadb6e4-130c-4a8f-aeac-416e38b66756",
"principalType": "User"
}
]
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/users/{userId}/artifactAccess": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of Power BI items (such as reports or dashboards) that the specified user has access to.",
"description": "\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Users_GetUserArtifactAccessAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "userId",
"in": "path",
"description": "The graph ID or user principal name (UPN) of the user",
"required": true,
"type": "string"
},
{
"name": "continuationToken",
"in": "query",
"description": "Token required to get the next chunk of the result set",
"required": false,
"type": "string"
},
{
"name": "artifactTypes",
"in": "query",
"description": "Comma separated list of artifact types.",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ArtifactAccessResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"userId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"artifactAccessEntities": [
{
"artifactId": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"displayName": "test report",
"artifactType": "Report",
"accessRight": "ReadWrite"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/users/f089354e-8366-4e18-aea3-4cb4a3a50b48/artifactAccess?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
},
"Example with UPN": {
"parameters": {
"userId": "testUser@microsoft.com"
},
"responses": {
"200": {
"body": {
"artifactAccessEntities": [
{
"artifactId": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"displayName": "test report",
"artifactType": "Report",
"accessRight": "ReadWrite"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/users/testUser%40microsoft.com/artifactAccess?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
},
"Example with artifactTypes": {
"parameters": {
"userId": "testUser@microsoft.com",
"artifactTypes": "Dataflow,Dashboard"
},
"responses": {
"200": {
"body": {
"artifactAccessEntities": [
{
"artifactId": "09ce06d1-e81b-fea0-1c6d-8fe3dd2f8e87",
"displayName": "Test Dataflow",
"artifactType": "Dataflow",
"accessRight": "ReadWrite"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/users/testUser%40microsoft.com/artifactAccess?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
},
"Example with Guest User": {
"parameters": {
"userId": "testUser_microsoft.com%23EXT%23@contoso.com"
},
"responses": {
"200": {
"body": {
"artifactAccessEntities": [
{
"artifactId": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"displayName": "test report",
"artifactType": "Report",
"accessRight": "ReadWrite"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/users/testUser_microsoft.com%23EXT%23%40contoso.com/artifactAccess?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/users/{userId}/subscriptions": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of subscriptions for the specified user. This is a preview API call.",
"description": "\n### Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Users_GetUserSubscriptionsAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "userId",
"in": "path",
"description": "The graph ID or user principal name (UPN) of the user",
"required": true,
"type": "string"
},
{
"name": "continuationToken",
"in": "query",
"description": "Token required to get the next chunk of the result set",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/SubscriptionsByUserResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"userId": "f089354e-8366-4e18-aea3-4cb4a3a50b48"
},
"responses": {
"200": {
"body": {
"subscriptionEntities": [
{
"id": "9225d0bc-9f5e-4819-a637-799c0c4fh3f1",
"title": "Team Scorecard-test",
"artifactId": "0b50f0bf-b22b-4685-83b9-b6d17f7f4e46",
"artifactDisplayName": "Customer Profitability Sample",
"subArtifactDisplayName": "Team Scorecard",
"artifactType": "Report",
"isEnabled": false,
"frequency": "Daily",
"startDate": "8/10/2021 12:00:00 AM",
"endDate": "8/10/2022 12:00:00 AM",
"linkToContent": false,
"previewImage": true,
"attachmentFormat": "PNG",
"users": []
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/users/f089354e-8366-4e18-aea3-4cb4a3a50b48/subscriptions?continuationToken='LDEsMTAwMDAwLDA%3D'",
"continuationToken": "LDEsMTAwMDAwLDA%3D"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/activityevents": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of audit activity events for a tenant.",
"description": "\nProvide either a continuation token or both a start and end date time. `StartDateTime` and `EndDateTime` must be in the same UTC day and should be wrapped in single quotes.\n\n## Permissions\n\n- The user must be a Fabric administrator or authenticate using a service principal.\n- Delegated permissions are supported.\n\nWhen running under service prinicipal authentication, an app **must not** have any admin-consent required premissions for Power BI set on it in the Azure portal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\nRelevant only when authenticating via a standard delegated admin access token. Must not be present when authentication via a service principal is used.\n\n## Limitations\n\n- Maximum 200 requests per hour.\n- Activity logging isn't supported for Microsoft Cloud Deutschland.\n
",
"operationId": "Admin_GetActivityEvents",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "startDateTime",
"in": "query",
"description": "Start date and time of the window for audit event results. Must be in ISO 8601 compliant UTC format.",
"required": false,
"type": "string"
},
{
"name": "endDateTime",
"in": "query",
"description": "End date and time of the window for audit event results. Must be in ISO 8601 compliant UTC format.",
"required": false,
"type": "string"
},
{
"name": "continuationToken",
"in": "query",
"description": "Token required to get the next chunk of the result set",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Filters the results based on a boolean condition, using 'Activity', 'UserId', or both properties. Supports only 'eq' and 'and' operators.",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ActivityEventResponse"
}
}
},
"x-ms-examples": {
"Get audit activity events within a time window example": {
"parameters": {
"startDateTime": "'2019-08-13T07:55:00.000Z'",
"endDateTime": "'2019-08-13T08:55:00.000Z'"
},
"responses": {
"200": {
"body": {
"activityEventEntities": [
{
"Id": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"CreationTime": "2019-08-13T07:55:15",
"Operation": "ViewReport",
"OrganizationId": "e43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "779438769",
"Activity": "ViewReport",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "127.0.0.1"
},
{
"Id": "c632aa64-70fc-4e80-88f3-9fc2cdcacce8",
"CreationTime": "2019-08-13T07:55:10",
"Operation": "ViewDashboard",
"OrganizationId": "e43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "321HK34324",
"Activity": "ViewDashboard",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "131.107.160.240",
"CapacityId": "zy5bad4z-x1a2-491a-9f0c-f012171ee02e",
"CapacityName": "Shared On Premium - Reserved",
"WorkspaceId": "bf10ae91-c4f6-494e-b538-e2454229a765"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/activityevents?continuationToken='%2BRID%3A244SAKlHY7YGAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AAQYAAAAAAAAAFwAAAAAAAAA%3D'",
"continuationToken": "%2BRID%3A244SAKlHY7YGAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AAQYAAAAAAAAAFwAAAAAAAAA%3D"
}
}
}
},
"Get audit activity events within a time window and for a specific activity type example": {
"parameters": {
"startDateTime": "'2019-08-13T07:55:00.000Z'",
"endDateTime": "'2019-08-13T08:55:00.000Z'",
"$filter": "Activity eq 'ViewReport'"
},
"responses": {
"200": {
"body": {
"activityEventEntities": [
{
"Id": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"CreationTime": "2019-08-13T07:55:15",
"Operation": "ViewReport",
"OrganizationId": "e43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "123456",
"Activity": "ViewReport",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "127.0.0.1"
},
{
"Id": "c632aa64-70fc-4e80-88f3-9fc2cdcacce8",
"CreationTime": "2019-08-13T07:55:10",
"Operation": "ViewReport",
"OrganizationId": "e43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "42343KJK53K45J",
"Activity": "ViewReport",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "131.107.160.240",
"CapacityId": "zy5bad4z-x1a2-491a-9f0c-f012171ee02e",
"CapacityName": "Shared On Premium - Reserved",
"WorkspaceId": "bf10ae91-c4f6-494e-b538-e2454229a765"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/activityevents?continuationToken='%2BRID%3A244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D'&$filter=Activity eq 'ViewReport'",
"continuationToken": "%2BRID%3A244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D"
}
}
}
},
"Get audit activity events within a time window and for a specific user ID example": {
"parameters": {
"startDateTime": "'2019-08-13T07:55:00.000Z'",
"endDateTime": "'2019-08-13T08:55:00.000Z'",
"$filter": "UserId eq 'john@contoso.com'"
},
"responses": {
"200": {
"body": {
"activityEventEntities": [
{
"Id": "41ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"CreationTime": "2019-08-13T07:55:15",
"Operation": "ViewReport",
"OrganizationId": "e43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "123456",
"Activity": "ViewReport",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "127.0.0.1"
},
{
"Id": "c632aa64-70fc-4e80-88f3-9fc2cdcacce8",
"CreationTime": "2019-08-13T07:55:10",
"Operation": "ViewReport",
"OrganizationId": "e43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "42343KJK53K45J",
"Activity": "ViewReport",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "131.107.160.240",
"CapacityId": "zy5bad4z-x1a2-491a-9f0c-f012171ee02e",
"CapacityName": "Shared On Premium - Reserved",
"WorkspaceId": "bf10ae91-c4f6-494e-b538-e2454229a765"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/activityevents?continuationToken='%2BRID%3A244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D'&$filter=Activity eq 'ViewReport'",
"continuationToken": "%2BRID%3A244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D"
}
}
}
},
"Get audit activity events within a time window and for a specific activity type and user ID example": {
"parameters": {
"startDateTime": "'2019-08-13T07:55:00.000Z'",
"endDateTime": "'2019-08-13T08:55:00.000Z'",
"$filter": "Activity eq 'viewreport' and UserId eq 'john@contoso.com'"
},
"responses": {
"200": {
"body": {
"activityEventEntities": [
{
"Id": "8fb974dc-739e-41e4-a219-b5801e28095e",
"RecordType": 20,
"CreationTime": "2023-05-23T08:06:47",
"Operation": "GetSnapshots",
"OrganizationId": "98c45f19-7cac-4002-8702-97d943a5ccb4",
"UserType": 0,
"UserKey": "10033FFF8929F27A",
"Workload": "PowerBI",
"UserId": "abc@contoso.onmicrosoft.com",
"ClientIP": "185.175.34.186",
"UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 Edg/113.0.1774.50",
"Activity": "GetSnapshots",
"IsSuccess": true,
"RequestId": "ee4b5af1-9aa3-34fe-a163-7b188e865ef1",
"ActivityId": "cc1db5c9-ca04-484e-a6f2-f21de20bc000",
"ModelsSnapshots": []
},
{
"Id": "1db4c464-3e5d-4a89-b412-c2ce6fbae88e",
"CreationTime": "2023-05-23T08:43:34",
"Operation": "ViewReport",
"ClientIP": "122.172.83.253",
"Activity": "ViewReport",
"ItemName": "Capacity Metrics Analysis",
"WorkSpaceName": "Premium Capacity Utilization And Metrics 5/19/2023 11:57:07 AM",
"DatasetName": "Capacity Metrics Analysis",
"ReportName": "Capacity Metrics Analysis",
"CapacityId": "zy5bad4z-x1a2-491a-9f0c-f012171ee02e",
"CapacityName": "Shared On Premium - Reserved",
"WorkspaceId": "bf10ae91-c4f6-494e-b538-e2454229a765",
"AppName": "Premium Capacity Utilization And Metrics",
"ObjectId": "fb8a915c-b720-4a77-9e55-3a12fc42efcd",
"DatasetId": "5760cb34-a245-4eb7-a4e3-4ecae264a577",
"ReportId": "ae596344-7fe6-43cb-baa7-c7ddc63271c8",
"ArtifactId": "ae596344-7fe6-43cb-baa7-c7ddc63271c8",
"ArtifactName": "Capacity Metrics Analysis",
"ReportType": "PowerBIReport",
"RequestId": "9b8a4e32-b0c8-febf-c3c3-f25d45f682a4",
"ActivityId": "67c2dd35-242a-7053-4e92-8a7d78db9704",
"AppReportId": "3f87e0bd-a95d-40a4-bab5-5e206d643f8f",
"DistributionMethod": "Apps",
"ConsumptionMethod": "Power BI Web",
"ArtifactKind": "Report"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/activityevents?continuationToken='%2BRID%3A244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D'&$filter=Activity eq 'ViewReport'",
"continuationToken": "%2BRID%3A244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D"
}
}
}
},
"Get the next set of audit activity events by sending the continuation token to the API example": {
"parameters": {
"continuationToken": "%2BRID%3A244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D"
},
"responses": {
"200": {
"body": {
"activityEventEntities": [
{
"Id": "91ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"CreationTime": "2019-08-13T08:55:15",
"Operation": "ViewReport",
"OrganizationId": "d43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "1236",
"Activity": "ViewReport",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "127.0.0.1"
},
{
"Id": "g632bb64-70fc-4e80-88f3-9fc2cdcacce8",
"CreationTime": "2019-08-13T09:55:10",
"Operation": "ViewReport",
"OrganizationId": "e43e3248-3d83-44aa-a94d-c836bd7f9b79",
"UserKey": "42343KJK55J",
"Activity": "ViewReport",
"Workload": "PowerBI",
"UserId": "john@contoso.com",
"ClientIP": "131.107.160.240",
"CapacityId": "zy5bad4z-x1a2-491a-9f0c-f012171ee02e",
"CapacityName": "Shared On Premium - Reserved",
"WorkspaceId": "bf10ae91-c4f6-494e-b538-e2454229a765"
}
],
"continuationUri": "https://api.powerbi.com/v1.0/myorg/admin/activityevents?continuationToken='%2BRID%$4Z244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D'",
"continuationToken": "%2BRID%$4Z244SAKlHY7YQAAAAAAAAAA%3D%3D%23RT%3A1%23TRC%3A5%23FPC%3AARAAAAAAAAAAFwAAAAAAAAA%3D"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/informationprotection/removeLabels": {
"post": {
"tags": [
"Admin"
],
"summary": "Remove sensitivity labels from Power BI items (such as reports or dashboards) by item ID.",
"description": "\nFor a usage example, see [Set or remove sensitivity labels](/power-bi/admin/service-security-sensitivity-label-inheritance-set-remove-api).\n\n## Permissions\n\n- The user must be a Fabric administrator.\n- The admin user must have sufficient [usage rights](/azure/information-protection/configure-usage-rights) to delete labels.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\n- Maximum 25 requests per hour.\n- Each request can update up to 2,000 Power BI items.\n
",
"operationId": "InformationProtection_RemoveLabelsAsAdmin",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "artifacts",
"description": "A composite of artifact ID lists for each type",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/InformationProtectionArtifactsChangeLabel"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/InformationProtectionChangeLabelResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"artifacts": {
"dashboards": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542a"
},
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8b"
}
],
"reports": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542c"
}
],
"datasets": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542e"
},
{
"id": "myDatabaseName"
}
],
"dataflows": [
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8g"
}
]
}
},
"responses": {
"200": {
"body": {
"dashboards": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542a",
"status": "NotFound"
},
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8b",
"status": "Failed"
}
],
"reports": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542c",
"status": "Succeeded"
}
],
"datasets": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542e",
"status": "InsufficientUsageRights"
},
{
"id": "myDatabaseName",
"status": "FailedToGetUsageRights"
}
],
"dataflows": [
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8g",
"status": "Succeeded"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/informationprotection/setLabels": {
"post": {
"tags": [
"Admin"
],
"summary": "Set sensitivity labels on Power BI items (such as reports or dashboards) by item ID.",
"description": "\nTo set a sensitivity label using this API, the admin user or the delegated user (if provided) must have the label included in their [label policy](/microsoft-365/compliance/create-sensitivity-labels?view=o365-worldwide). For a usage example, see [Set or remove sensitivity labels](/power-bi/admin/service-security-sensitivity-label-inheritance-set-remove-api).\n\n## Permissions\n\n- The user must be a Fabric administrator.\n- The admin user and the delegated user (if provided) must have sufficient [usage rights](/azure/information-protection/configure-usage-rights) to set labels.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\n- Maximum 25 requests per hour.\n- Each request can update up to 2,000 Power BI items.\n
",
"operationId": "InformationProtection_SetLabelsAsAdmin",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "informationProtectionChangeLabelDetails",
"description": "Set label details.",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/InformationProtectionChangeLabelDetails"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/InformationProtectionChangeLabelResponse"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"informationProtectionChangeLabelDetails": {
"artifacts": {
"dashboards": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542a"
},
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8b"
}
],
"reports": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542c"
}
],
"datasets": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542e"
},
{
"id": "myDatabaseName"
}
],
"dataflows": [
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8g"
}
]
},
"labelId": "fe472f5e-636e-4c10-a1c6-7e9edc0b542p",
"assignmentMethod": "Standard",
"delegatedUser": {
"emailAddress": "john@contoso.com"
}
}
},
"responses": {
"200": {
"body": {
"dashboards": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542a",
"status": "NotFound"
},
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8b",
"status": "Failed"
}
],
"reports": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542c",
"status": "Succeeded"
}
],
"datasets": [
{
"id": "fe472f5e-636e-4c10-a1c6-7e9edc0b542e",
"status": "InsufficientUsageRights"
},
{
"id": "myDatabaseName",
"status": "FailedToGetUsageRights"
}
],
"dataflows": [
{
"id": "476fcafe-b514-495d-b13f-ca9a4f0b1d8g",
"status": "Succeeded"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/pipelines": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of deployment pipelines for the organization.",
"description": "\n## Permissions\n\nThe user must have administrator rights or authenticate using a service principal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Pipelines_GetPipelinesAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `users` and `stages`.",
"required": false,
"type": "string"
},
{
"name": "$filter",
"in": "query",
"description": "Filters the results based on a boolean condition. This API only supports filtering for [orphaned deployment pipelines](#get-orphaned-deployment-pipelines-example). Unsupported filters will return unfiltered results.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results. This parameter must be in the range of 1-5000.",
"required": false,
"minimum": 1,
"maximum": 5000,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results. Use with top to fetch results beyond the first 5000.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminPipelines"
}
}
},
"x-ms-examples": {
"Get deployment pipelines example": {
"parameters": {},
"responses": {
"200": {
"value": [
{
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "Marketing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage marketing reports"
},
{
"id": "183dcf10-47b8-48c4-84aa-f0bf9d5f8fcf",
"displayName": "Financing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage financing reports"
}
]
}
}
},
"Get deployment pipelines with their 'users' expanded example": {
"parameters": {
"$expand": "users",
"$top": 100
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "Marketing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage marketing reports",
"users": [
{
"identifier": "john@contoso.com",
"accessRight": "Admin",
"principalType": "User"
},
{
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"accessRight": "Admin",
"principalType": "Group"
},
{
"identifier": "a35d842b-90d5-59a1-c56a-5f8fcff0bf9d",
"accessRight": "Admin",
"principalType": "App"
}
]
},
{
"id": "183dcf10-47b8-48c4-84aa-f0bf9d5f8fcf",
"displayName": "Financing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage financing reports",
"users": []
}
]
}
}
}
},
"Get orphaned deployment pipelines example": {
"parameters": {
"$expand": "users",
"$top": 100,
"$filter": "(not users/any())"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "183dcf10-47b8-48c4-84aa-f0bf9d5f8fcf",
"displayName": "Financing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage financing reports",
"users": []
}
]
}
}
}
},
"Get deployment pipelines with their 'stages' expanded example": {
"parameters": {
"$expand": "stages",
"$top": 100,
"skip": 0
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "a5ded933-57b7-41f4-b072-ed4c1f9d5824",
"displayName": "Marketing Deployment Pipeline",
"description": "Power BI deployment pipeline to manage marketing reports",
"stages": [
{
"order": "0",
"workspaceId": "5dba60b0-d9a7-42a3-b12c-6d9d51e7739a",
"workspaceName": "SQlAzure-Refresh"
},
{
"order": "1",
"workspaceId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"workspaceName": "SQlAzure-Refresh[Test]"
},
{
"order": "2"
}
]
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/pipelines/{pipelineId}/users": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of users that have access to a specified deployment pipeline.",
"description": "\n## Permissions\n\nThe user must have administrator rights or authenticate using a service principal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Pipelines_GetPipelineUsersAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"required": true,
"description": "The deployment pipeline ID",
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PipelineUsers"
}
}
},
"x-ms-examples": {
"Get users of a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523"
},
"responses": {
"200": {
"value": [
{
"identifier": "john@contoso.com",
"accessRight": "Admin",
"principalType": "User"
},
{
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"accessRight": "Admin",
"principalType": "Group"
},
{
"identifier": "a35d842b-90d5-59a1-c56a-5f8fcff0bf9d",
"accessRight": "Admin",
"principalType": "App"
}
]
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Admin"
],
"summary": "Grants user permissions to a specified deployment pipeline.",
"description": "\n## Permissions\n\nThe user must have administrator rights.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Pipelines_UpdateUserAsAdmin",
"consumes": [
"application/json"
],
"produces": [],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"required": true,
"description": "The deployment pipeline ID",
"type": "string",
"format": "uuid"
},
{
"name": "userDetails",
"in": "body",
"description": "Details of user access right",
"required": true,
"schema": {
"$ref": "#/definitions/PipelineUser"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Add a user to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"userDetails": {
"identifier": "john@contoso.com",
"accessRight": "Admin",
"principalType": "User"
}
},
"responses": {
"200": {}
}
},
"Add a group to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"userDetails": {
"identifier": "154aef10-47b8-48c4-ab97-f0bf9d5f8fcf",
"accessRight": "Admin",
"principalType": "Group"
}
},
"responses": {
"200": {}
}
},
"Add a service principal to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"userDetails": {
"identifier": "a35d842b-90d5-59a1-c56a-5f8fcff0bf9d",
"accessRight": "Admin",
"principalType": "App"
}
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/pipelines/{pipelineId}/users/{identifier}": {
"delete": {
"tags": [
"Admin"
],
"summary": "Removes user permissions from a specified deployment pipeline.",
"description": "\n## Permissions\n\nThe user must have administrator rights.\n\n## Required Scope\n\nTenant.ReadWrite.All\n\n## Limitations\n\nMaximum 200 requests per hour.\n
",
"operationId": "Pipelines_DeleteUserAsAdmin",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "pipelineId",
"in": "path",
"required": true,
"description": "The deployment pipeline ID",
"type": "string",
"format": "uuid"
},
{
"name": "identifier",
"in": "path",
"required": true,
"description": "For the principal type `User`, provide the user principal name (UPN). Otherwise, provide the [Object ID](/power-bi/developer/embedded/embedded-troubleshoot#what-is-the-difference-between-application-object-id-and-principal-object-id) of the principal.",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Remove user access to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"identifier": "john@contoso.com"
},
"responses": {
"200": {}
}
},
"Remove group access to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"identifier": "5dba60b0-d9a7-42a3-b12c-6d9d51e7739a"
},
"responses": {
"200": {}
}
},
"Remove service principal access to a deployment pipeline example": {
"parameters": {
"pipelineId": "8ce96c50-85a0-4db3-85c6-7ccc3ed46523",
"identifier": "a35d842b-90d5-59a1-c56a-5f8fcff0bf9d"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/profiles": {
"get": {
"tags": [
"Admin"
],
"summary": "Returns a list of service principal profiles for the organization.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator or authenticate using a service principal.\n\n## Required Scope\n\nTenant.Read.All or Tenant.ReadWrite.All\n
\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Profiles_GetProfilesAsAdmin",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$filter",
"in": "query",
"description": "Filters the results based on a boolean condition, using 'id', 'displayName', or 'servicePrincipalId'. Supports only 'eq' operator.",
"required": false,
"type": "string"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results. This parameter must be in the range of 1-5000.",
"required": false,
"minimum": 1,
"maximum": 5000,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results. Use with top to fetch results beyond the first 5000.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AdminServicePrincipalProfiles"
}
}
},
"x-ms-examples": {
"Get a specific service principal profile by id using filter": {
"parameters": {
"$filter": "id%20eq%20'3b211778-e7a5-4d73-8187-f10824047724'"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "3b211778-e7a5-4d73-8187-f10824047724",
"displayName": "My new profile",
"servicePrincipalId": "12345678-e7a5-4d73-8187-f10824041234"
}
]
}
}
}
},
"Get service principal profiles by their parent servicePrincipalId using filter": {
"parameters": {
"$filter": "servicePrincipalId%20eq%20'12345678-e7a5-4d73-8187-f10824041234'"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "3b211778-e7a5-4d73-8187-f10824047724",
"displayName": "My new profile",
"servicePrincipalId": "12345678-e7a5-4d73-8187-f10824041234"
},
{
"id": "43211778-e7a5-4d73-8187-f10824044321",
"displayName": "My new profile2",
"servicePrincipalId": "12345678-e7a5-4d73-8187-f10824041234"
}
]
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/admin/profiles/{profileId}": {
"delete": {
"tags": [
"Admin"
],
"summary": "Deletes the specified service principal profile.",
"description": "\n## Permissions\n\nThe user must be a Fabric administrator.\n\n## Required Scope\n\nTenant.ReadWrite.All\n
\n\n## Limitations\n\nMaximum 200 requests per hour.",
"operationId": "Profiles_DeleteProfileAsAdmin",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "profileId",
"in": "path",
"description": "The service principal profile ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Delete a service principal profile": {
"parameters": {
"profileId": "b3ded933-57b7-21f4-b072-ed4c1f9d5824"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/CreateTemplateAppInstallTicket": {
"post": {
"tags": [
"TemplateApps"
],
"summary": "Generates an installation ticket for the [automated install flow](/power-bi/connect-data/template-apps-auto-install) of the specified template app.",
"description": "\n## Permissions\n\nThe caller must use service principal for authentication. For more information, see [Embed Power BI content with service principal](/power-bi/developer/embed-service-principal) and [Considerations and limitations](/power-bi/developer/embedded/embed-service-principal#considerations-and-limitations).\n\n## Limitations\n\n- The tenant making this API call *must* own the specified template app.\n- The template app must either be published to Microsoft AppSource, or, both the ticket creator and the end-user installing with the ticket must have explicit access to the app.\n- All query parameters in the install ticket *must* be configured.\n
",
"operationId": "TemplateApps_CreateInstallTicket",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "requestParameters",
"description": "Create Install Ticket parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CreateInstallTicketRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/InstallTicket"
}
}
},
"x-ms-examples": {
"Create an install ticket for a template app, specifying two query parameters example.": {
"parameters": {
"requestParameters": {
"appId": "91ce06d1-d81b-4ea0-bc6d-2ce3dd2f8e87",
"packageKey": "g632bb64...OfsoqT56xEM=",
"ownerTenantId": "d43e3248-3d83-44aa-a94d-c836bd7f9b79",
"config": {
"configuration": {
"param1": "value1",
"param2": "value2"
}
}
}
},
"responses": {
"200": {
"body": {
"ticket": "H4sI....AAA=",
"ticketId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2020-07-29T17:58:19Z"
}
},
"401": {
"body": {
"error": {
"code": "ServiceAppApplicationOwnershipValidationFailed",
"pbi.error": {
"code": "ServiceAppApplicationOwnershipValidationFailed",
"parameters": {},
"details": [],
"exceptionCulprit": 1
}
}
}
},
"400": {
"body": {
"error": {
"code": "ServiceAppInstallTicketInvalidConfiguration",
"pbi.error": {
"code": "ServiceAppInstallTicketInvalidConfiguration",
"parameters": {},
"details": [],
"exceptionCulprit": 1
}
}
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/reports/{reportId}/Default.TakeOver": {
"post": {
"tags": [
"Reports"
],
"summary": "Transfers ownership of the data sources for the specified paginated report (RDL) to the current authorized user.",
"description": "\n## Permissions\n\nThis API call can be called by a service principal profile. For more information see: [Service principal profiles in Power BI Embedded](/power-bi/developer/embedded/embed-multi-tenancy).\n\n## Required Scope\n\nReport.ReadWrite.All\n\n## Limitations\n\nOnly supports paginated reports.\n
",
"operationId": "Reports_TakeOverInGroup",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "groupId",
"in": "path",
"required": true,
"description": "The workspace ID",
"type": "string",
"format": "uuid"
},
{
"name": "reportId",
"in": "path",
"description": "The report ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "f089354e-8366-4e18-aea3-4cb4a3a50b48",
"reportId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/profiles": {
"get": {
"tags": [
"Profiles"
],
"summary": "Returns a list of service principal profiles.",
"description": "
Returns a list of profiles that belongs to service principal caller.\n\n## Limitations\n\nCan only be called by a service principal.",
"operationId": "Profiles_GetProfiles",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$skip",
"in": "query",
"description": "Skips the first n results",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "$filter",
"in": "query",
"description": "Get a profile by DisplayName",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ServicePrincipalProfiles"
}
}
},
"x-ms-examples": {
"Get service principal profiles": {
"parameters": {},
"responses": {
"200": {
"body": {
"value": [
{
"id": "3b211778-e7a5-4d73-8187-f10824047724",
"displayName": "My new profile"
}
]
}
}
}
},
"Get a specific profile by displayName using filter": {
"parameters": {
"$filter": "displayName%20eq%20'My%20new%20profile'"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "3b211778-e7a5-4d73-8187-f10824047724",
"displayName": "My new profile"
}
]
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Profiles"
],
"summary": "Creates a new service principal profile.",
"description": "
Creates a new profile that belongs to service principal caller.\n\n## Limitations\n\nCan only be called by a service principal. The maximum number of profiles a single service principal can have, is 100,000.",
"operationId": "Profiles_CreateProfile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "CreateOrUpdateProfileRequest",
"in": "body",
"description": "The create profile request",
"required": true,
"schema": {
"$ref": "#/definitions/CreateOrUpdateProfileRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ServicePrincipalProfile"
}
}
},
"x-ms-examples": {
"Create a service principal profile": {
"parameters": {
"CreateOrUpdateProfileRequest": {
"displayName": "My new profile"
}
},
"responses": {
"200": {
"body": {
"id": "b2ded813-54b7-43f4-b072-ed4c1f9d5824",
"displayName": "My new profile"
}
}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/profiles/{profileId}": {
"get": {
"tags": [
"Profiles"
],
"summary": "Returns the specified service principal profile.",
"description": "
Returns the specified profile if it exists and belongs to service principal caller.\n\n## Limitations\n\nCan only be called by a service principal.",
"operationId": "Profiles_GetProfile",
"consumes": [],
"produces": [
"application/json"
],
"parameters": [
{
"name": "profileId",
"in": "path",
"description": "The service principal profile ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ServicePrincipalProfile"
}
}
},
"x-ms-examples": {
"Get service principal profile": {
"parameters": {
"profileId": "b2ded813-54b7-43f4-b072-ed4c1f9d5824"
},
"responses": {
"200": {
"body": {
"id": "b2ded813-54b7-43f4-b072-ed4c1f9d5824",
"displayName": "My new profile"
}
}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"Profiles"
],
"summary": "Updates the specified service principal profile name.",
"description": "
Updates the specified profile name if it exists and belongs to service principal caller.\n\n## Limitations\n\nCan only be called by a service principal.",
"operationId": "Profiles_UpdateProfile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "profileId",
"in": "path",
"description": "The service principal profile ID",
"required": true,
"type": "string",
"format": "uuid"
},
{
"name": "CreateOrUpdateProfileRequest",
"in": "body",
"description": "The update profile request",
"required": true,
"schema": {
"$ref": "#/definitions/CreateOrUpdateProfileRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ServicePrincipalProfile"
}
}
},
"x-ms-examples": {
"Updates a service principal profile": {
"parameters": {
"profileId": "b3ded933-57b7-21f4-b072-ed4c1f9d5824",
"CreateOrUpdateProfileRequest": {
"displayName": "My updated profile"
}
},
"responses": {
"200": {
"body": {
"id": "b3ded933-57b7-21f4-b072-ed4c1f9d5824",
"displayName": "My updated profile"
}
}
}
}
},
"deprecated": false
},
"delete": {
"tags": [
"Profiles"
],
"summary": "Deletes the specified service principal profile.",
"description": "
Deletes the specified profile if it exists and belongs to service principal caller.\n\n## Limitations\n\nCan only be called by a service principal.",
"operationId": "Profiles_DeleteProfile",
"consumes": [],
"produces": [],
"parameters": [
{
"name": "profileId",
"in": "path",
"description": "The service principal profile ID",
"required": true,
"type": "string",
"format": "uuid"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"x-ms-examples": {
"Delete a service principal profile": {
"parameters": {
"profileId": "b3ded933-57b7-21f4-b072-ed4c1f9d5824"
},
"responses": {
"200": {}
}
}
},
"deprecated": false
}
},
"/v1.0/myorg/groups/{groupId}/scorecards": {
"get": {
"summary": "Returns a list of scorecards from a workspace.",
"operationId": "Scorecards_(Preview)_Get",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"Scorecards_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"name": "$top",
"in": "query",
"description": "Returns only the first n results.",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "A list with scorecards",
"schema": {
"$ref": "#/definitions/Scorecards"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"$top": 30
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards",
"@odata.count": 1,
"value": [
{
"id": "0059003b-fcd4-45e4-92ea-cafa1ab4938a",
"name": "Scorecard1",
"createdTime": "2021-12-10T22:02:51.9130363Z",
"lastModifiedTime": "2021-12-10T22:03:08.8193962Z",
"provisioningStatus": "Completed",
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"datasetId": "efe32352-b00d-488f-8d7d-049a6f2c93b8",
"reportId": "f69e63a2-e241-4cf4-a4b3-97f476a425bd",
"permissions": "ReadWrite",
"columnSettings": [
{
"columnId": 0,
"show": true
},
{
"columnId": 1,
"show": true
},
{
"columnId": 2,
"show": true
},
{
"columnId": 3,
"show": true
},
{
"columnId": 4,
"show": true
},
{
"columnId": 5,
"show": true
},
{
"columnId": 6,
"show": true
}
]
}
]
}
}
}
}
},
"post": {
"summary": "Creates a new scorecard.",
"operationId": "Scorecards_(Preview)_Post",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Scorecards_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"name": "scorecard",
"in": "body",
"required": true,
"description": "The new scorecard properties.",
"schema": {
"$ref": "#/definitions/ScorecardCreateRequest"
}
}
],
"responses": {
"200": {
"description": "The created scorecard properties.",
"schema": {
"$ref": "#/definitions/Scorecard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"requestMessage": {
"name": "Scorecard2"
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards/$entity",
"id": "00b5ee09-e75c-4c48-b8ff-006553007c74",
"name": "Scorecard2",
"createdTime": "2021-12-14T01:37:03.6967868Z",
"lastModifiedTime": "2021-12-14T01:37:03.6967868Z",
"provisioningStatus": "Initialized",
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"permissions": "ReadWrite",
"columnSettings": [
{
"columnId": 0,
"show": true
},
{
"columnId": 1,
"show": true
},
{
"columnId": 2,
"show": true
},
{
"columnId": 3,
"show": true
},
{
"columnId": 4,
"show": true
},
{
"columnId": 5,
"show": true
},
{
"columnId": 6,
"show": true
}
]
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})": {
"get": {
"summary": "Returns a scorecard with ID.",
"operationId": "Scorecards_(Preview)_GetByID",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"Scorecards_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `goals`, `goalValues`, `aggregations`, and `notes`.",
"type": "string"
}
],
"responses": {
"200": {
"description": "The scorecard object.",
"schema": {
"$ref": "#/definitions/Scorecard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "f74738b3-c62d-4487-838c-918d314556ee"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards/$entity",
"id": "f74738b3-c62d-4487-838c-918d314556ee",
"name": "Scorecard3",
"createdTime": "2021-12-14T01:58:41.2730555Z",
"lastModifiedTime": "2021-12-14T01:58:56.9296326Z",
"provisioningStatus": "Completed",
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"datasetId": "b2ee3867-c9ba-466f-951e-d128dc235262",
"reportId": "b6db5449-a577-4c11-a515-da809fad8063",
"description": "Scorecard3 tracks the performance of our server.",
"permissions": "ReadWrite",
"columnSettings": [
{
"columnId": 0,
"show": true
},
{
"columnId": 1,
"show": true
},
{
"columnId": 2,
"show": true
},
{
"columnId": 3,
"show": true
},
{
"columnId": 4,
"show": true
},
{
"columnId": 5,
"show": true
},
{
"columnId": 6,
"show": true
}
]
}
}
}
}
},
"patch": {
"summary": "Updates a scorecard by its ID",
"operationId": "Scorecards_(Preview)_PatchByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Scorecards_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"name": "scorecard",
"in": "body",
"required": true,
"description": "The scorecard properties to patch",
"schema": {
"$ref": "#/definitions/Scorecard"
}
}
],
"responses": {
"200": {
"description": "The scorecard object after patching.",
"schema": {
"$ref": "#/definitions/Scorecard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "f74738b3-c62d-4487-838c-918d314556ee",
"requestMessage": {
"columnSettings": [
{
"columnId": "0",
"show": true
},
{
"columnId": "1",
"show": false
},
{
"columnId": "2",
"show": false
},
{
"columnId": "3",
"show": true
},
{
"columnId": "4",
"show": false
},
{
"columnId": "5",
"show": false
},
{
"columnId": "6",
"show": false
}
]
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards/$entity",
"id": "f74738b3-c62d-4487-838c-918d314556ee",
"name": "Scorecard3",
"createdTime": "2021-12-14T01:58:41.2730555Z",
"lastModifiedTime": "2021-12-14T02:08:29.9512949Z",
"provisioningStatus": "Completed",
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"datasetId": "b2ee3867-c9ba-466f-951e-d128dc235262",
"reportId": "b6db5449-a577-4c11-a515-da809fad8063",
"description": "Scorecard3 tracks the performance of our server.",
"permissions": "None",
"columnSettings": [
{
"columnId": 0,
"show": true
},
{
"columnId": 1,
"show": false
},
{
"columnId": 2,
"show": false
},
{
"columnId": 3,
"show": true
},
{
"columnId": 4,
"show": false
},
{
"columnId": 5,
"show": false
},
{
"columnId": 6,
"show": false
}
]
}
}
}
}
},
"delete": {
"summary": "Deletes a scorecard by its ID.",
"operationId": "Scorecards_(Preview)_DeleteByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Scorecards_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
}
],
"responses": {
"204": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "f74738b3-c62d-4487-838c-918d314556ee"
},
"responses": {
"204": {}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals": {
"get": {
"summary": "Returns a list of goals from a scorecard.",
"operationId": "Goals_(Preview)_Get",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `goalValues` and `aggregations`.",
"type": "string"
},
{
"name": "$select",
"in": "query",
"description": "Allows the clients to select specific properties from the server.",
"type": "string"
}
],
"responses": {
"200": {
"description": "The list of scorecard goals",
"schema": {
"$ref": "#/definitions/Goals"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "bc390256-fa54-4bd8-96a1-2c80df0cf704"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(e399e1d9-6d43-4ccf-b5c2-e8f93335be44)/goals",
"value": [
{
"id": "7e683d36-fce1-41f3-9151-db65cf095001",
"name": "Goal2",
"scorecardId": "e399e1d9-6d43-4ccf-b5c2-e8f93335be44",
"createdTime": "2021-12-14T17:42:07.805447Z",
"lastModifiedTime": "2021-12-14T17:42:15.0711664Z",
"startDate": "2021-12-14T17:42:08Z",
"notesCount": 0,
"hasStatusRules": false,
"permissions": "All",
"level": 0,
"rank": 0
}
]
}
}
}
}
},
"post": {
"summary": "Adds a new goal to a scorecard.",
"operationId": "Goals_(Preview)_Post",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"name": "goal",
"in": "body",
"required": true,
"description": "The properties of the new goal.",
"schema": {
"$ref": "#/definitions/GoalCreateRequest"
}
}
],
"responses": {
"200": {
"description": "The newly created goal.",
"schema": {
"$ref": "#/definitions/Goal"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "d154070d-e872-4d82-8ad6-eeef96d413ec",
"requestMessage": {
"name": "Goal1"
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(d154070d-e872-4d82-8ad6-eeef96d413ec)/goals/$entity",
"id": "c98e22eb-4cee-4989-898e-d84ec4ead046",
"name": "Goal1",
"scorecardId": "d154070d-e872-4d82-8ad6-eeef96d413ec",
"createdTime": "2021-12-14T18:22:02.7875012Z",
"lastModifiedTime": "2021-12-14T18:22:02.7875012Z",
"startDate": "2021-12-14T18:22:03Z",
"notesCount": 0,
"hasStatusRules": false,
"permissions": "All",
"level": 0,
"rank": 0
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})": {
"get": {
"summary": "Returns a goal by ID from a scorecard.",
"operationId": "Goals_(Preview)_GetByID",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"name": "expand",
"in": "query",
"description": "description",
"type": "string"
}
],
"responses": {
"200": {
"description": "The goal object",
"schema": {
"$ref": "#/definitions/Goal"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "bb2b6321-2b84-4b7b-8de3-40f74ca7e586",
"goalId": "62e3794e-6019-4195-8f5e-38d9a6e18c04"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(bb2b6321-2b84-4b7b-8de3-40f74ca7e586)/goals/$entity",
"id": "62e3794e-6019-4195-8f5e-38d9a6e18c04",
"name": "Goal2",
"scorecardId": "bb2b6321-2b84-4b7b-8de3-40f74ca7e586",
"createdTime": "2021-12-14T18:52:39.1066847Z",
"lastModifiedTime": "2021-12-14T18:52:45.6224223Z",
"startDate": "2021-12-14T18:52:39Z",
"notesCount": 0,
"hasStatusRules": false,
"permissions": "All",
"level": 0,
"rank": 0
}
}
}
}
},
"patch": {
"summary": "Updates a goal by ID.",
"operationId": "Goals_(Preview)_PatchByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"name": "goal",
"in": "body",
"required": true,
"description": "The goal properties to patch.",
"schema": {
"$ref": "#/definitions/Goal"
}
}
],
"responses": {
"200": {
"description": "The patched goal object.",
"schema": {
"$ref": "#/definitions/Goal"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "f74738b3-c62d-4487-838c-918d314556ee",
"goalId": "1f482a42-dfc0-44b3-8281-a6f88fb989a3",
"requestMessage": {
"name": "Goal2"
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(10fee5d8-0d37-4a50-8691-ea5b3a8fc8f7)/goals/$entity",
"id": "1f482a42-dfc0-44b3-8281-a6f88fb989a3",
"name": "Goal2",
"scorecardId": "10fee5d8-0d37-4a50-8691-ea5b3a8fc8f7",
"createdTime": "2021-12-14T19:23:59.9727686Z",
"lastModifiedTime": "2021-12-14T19:25:58.1460988Z",
"startDate": "2021-12-14T19:24:00Z",
"notesCount": 0,
"hasStatusRules": false,
"permissions": "All",
"level": 0,
"rank": 0
}
}
}
}
},
"delete": {
"summary": "Deletes a goal from a scorecard by goal ID.",
"operationId": "Goals_(Preview)_DeleteByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"204": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "f74738b3-c62d-4487-838c-918d314556ee",
"goalId": "c07b3600-54be-42ef-9154-39e7922c1bb4"
},
"responses": {
"204": {}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/statusRules": {
"get": {
"summary": "Returns status rules of a goal.",
"operationId": "GoalsStatusRules_(Preview)_Get",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"GoalsStatusRules_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"200": {
"description": "Status rules object.",
"schema": {
"$ref": "#/definitions/Goals.Rules.GoalStatusRules"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "bb2b6321-2b84-4b7b-8de3-40f74ca7e586",
"goalId": "62e3794e-6019-4195-8f5e-38d9a6e18c04"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(fb8a915c-b720-4a77-9e55-3a12fc42efcd)/goals(2bfdeb15-09f7-4bf2-8ab4-c90cbc6b0203)/statusRules",
"rules": [
{
"conditions": [
{
"fieldComparison": {
"field": "Timestamp",
"operator": "Equal",
"value": {
"dateTime": "2021-12-13T00:00:00Z"
}
}
},
{
"fieldComparison": {
"field": "Value",
"operator": "GreaterThan",
"value": {
"percentOf": {
"field": "Target",
"percent": 10.0
}
}
}
}
],
"output": 3
}
],
"defaultOutput": 2,
"scorecardObjectId": "fb8a915c-b720-4a77-9e55-3a12fc42efcd",
"goalObjectId": "2bfdeb15-09f7-4bf2-8ab4-c90cbc6b0203",
"lastModifiedTime": "2021-12-14T20:28:33.3148884Z"
}
}
}
}
},
"post": {
"summary": "Creates or updates status rules of a goal.",
"operationId": "GoalsStatusRules_(Preview)_Post",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalsStatusRules_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"name": "statusRulesUpdateRequest",
"in": "body",
"required": true,
"description": "The status rules definition.",
"schema": {
"$ref": "#/definitions/Goals.Rules.GoalStatusRulesUpdateRequest"
}
}
],
"responses": {
"200": {
"description": "Updated status rules definition.",
"schema": {
"$ref": "#/definitions/Goals.Rules.GoalStatusRules"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "3160d25e-5b63-4f4a-8fc2-ccbb9f2c7f99",
"goalId": "f035c3a0-e0f1-4a2a-bd97-86aea708a8d7",
"requestMessage": {
"rules": [
{
"conditions": [
{
"fieldComparison": {
"field": "Timestamp",
"operator": "Equal",
"value": {
"dateTime": "2021-12-13T00:00:00Z"
}
}
},
{
"fieldComparison": {
"field": "Value",
"operator": "GreaterThan",
"value": {
"percentOf": {
"field": "Target",
"percent": 10.0
}
}
}
}
],
"output": 3
},
{
"conditions": [
{
"fieldComparison": {
"field": "Change",
"operator": "LessThan",
"value": {
"number": 10.0
}
}
}
],
"output": 3
}
],
"defaultOutput": 3
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(3160d25e-5b63-4f4a-8fc2-ccbb9f2c7f99)/goals(f035c3a0-e0f1-4a2a-bd97-86aea708a8d7)/statusRules",
"rules": [
{
"conditions": [
{
"fieldComparison": {
"field": "Timestamp",
"operator": "Equal",
"value": {
"dateTime": "2021-12-13T00:00:00Z"
}
}
},
{
"fieldComparison": {
"field": "Value",
"operator": "GreaterThan",
"value": {
"percentOf": {
"field": "Target",
"percent": 10.0
}
}
}
}
],
"output": 3
},
{
"conditions": [
{
"fieldComparison": {
"field": "Change",
"operator": "LessThan",
"value": {
"number": 10.0
}
}
}
],
"output": 3
}
],
"defaultOutput": 3,
"scorecardObjectId": "3160d25e-5b63-4f4a-8fc2-ccbb9f2c7f99",
"goalObjectId": "f035c3a0-e0f1-4a2a-bd97-86aea708a8d7",
"lastModifiedTime": "2021-12-14T20:37:00.0245696Z"
}
}
}
}
},
"delete": {
"summary": "Removes status rule definitions from a goal.",
"operationId": "GoalsStatusRules_(Preview)_Delete",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalsStatusRules_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"204": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "f74738b3-c62d-4487-838c-918d314556ee",
"goalId": "c07b3600-54be-42ef-9154-39e7922c1bb4"
},
"responses": {
"204": {}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/goalValues": {
"get": {
"summary": "Reads goal value check-ins.",
"operationId": "GoalValues_(Preview)_Get",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"GoalValues_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `notes`.",
"type": "string"
}
],
"responses": {
"200": {
"description": "The goal value check-ins.",
"schema": {
"$ref": "#/definitions/GoalValues"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "299759d9-80d3-45a8-8f13-a0624ea7e388",
"goalId": "de3e8b13-1ba6-4806-871f-2fb1658e0837",
"$expand": "notes"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(299759d9-80d3-45a8-8f13-a0624ea7e388)/goals(de3e8b13-1ba6-4806-871f-2fb1658e0837)/goalValues",
"value": [
{
"timestamp": "2021-12-14T00:00:00Z",
"goalId": "de3e8b13-1ba6-4806-871f-2fb1658e0837",
"scorecardId": "299759d9-80d3-45a8-8f13-a0624ea7e388",
"createdTime": "2021-12-14T21:18:44.4173023Z",
"lastModifiedTime": "2021-12-14T21:18:54.4955734Z",
"value": 200.0,
"target": 200.0,
"status": 2,
"notes@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(299759d9-80d3-45a8-8f13-a0624ea7e388)/goals(de3e8b13-1ba6-4806-871f-2fb1658e0837)/goalValues(2021-12-14T00%3A00%3A00Z)/notes",
"notes": [
{
"id": "1d6f10ef-5f0d-49c7-a511-5f0d6ce0d64e",
"valueTimestamp": "2021-12-14T00:00:00Z",
"goalId": "de3e8b13-1ba6-4806-871f-2fb1658e0837",
"scorecardId": "299759d9-80d3-45a8-8f13-a0624ea7e388",
"lastModifiedTime": "2021-12-14T21:18:59.8863271Z",
"content": "{\"general\":[{\"properties\":{\"paragraphs\":[{\"textRuns\":[{\"value\":\"Testing Notes.\"}]}]}}]}",
"createdTime": "2021-12-14T21:18:59.8863271Z",
"body": "Testing Notes."
}
]
}
]
}
}
}
}
},
"post": {
"summary": "Creates a new goal value check-in.",
"operationId": "GoalValues_(Preview)_Post",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalValues_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"name": "goalValue",
"in": "body",
"required": true,
"description": "Goal value content.",
"schema": {
"$ref": "#/definitions/GoalValueCreateRequest"
}
}
],
"responses": {
"200": {
"description": "Created goal value object.",
"schema": {
"$ref": "#/definitions/GoalValue"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "07943a5a-3c1f-424f-8c1c-144fcfe4431b",
"goalId": "85232f60-18f8-4b57-8c34-042ca6a68f5b",
"requestMessage": {
"timestamp": "2021-12-14T00:00:00Z",
"value": 100.0,
"target": 100.0,
"status": 1
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(07943a5a-3c1f-424f-8c1c-144fcfe4431b)/goals(85232f60-18f8-4b57-8c34-042ca6a68f5b)/goalValues/$entity",
"timestamp": "2021-12-14T00:00:00Z",
"goalId": "85232f60-18f8-4b57-8c34-042ca6a68f5b",
"scorecardId": "07943a5a-3c1f-424f-8c1c-144fcfe4431b",
"createdTime": "2021-12-14T21:29:30.3322292Z",
"lastModifiedTime": "2021-12-14T21:29:30.3322292Z",
"value": 100.0,
"target": 100.0,
"status": 1
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/goalValues({timestamp})": {
"get": {
"summary": "Reads a goal value check-in by a UTC date timestamp.",
"operationId": "GoalValues_(Preview)_GetByID",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"GoalValues_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"$ref": "#/parameters/GoalValueTimestampParameter"
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `notes`.",
"type": "string"
}
],
"responses": {
"200": {
"description": "The goal value check-in.",
"schema": {
"$ref": "#/definitions/GoalValue"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "299759d9-80d3-45a8-8f13-a0624ea7e388",
"goalId": "de3e8b13-1ba6-4806-871f-2fb1658e0837",
"timestamp": "2021-12-14T00:00:00Z",
"$expand": "notes"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(299759d9-80d3-45a8-8f13-a0624ea7e388)/goals(de3e8b13-1ba6-4806-871f-2fb1658e0837)/goalValues",
"value": [
{
"timestamp": "2021-12-14T00:00:00Z",
"goalId": "de3e8b13-1ba6-4806-871f-2fb1658e0837",
"scorecardId": "299759d9-80d3-45a8-8f13-a0624ea7e388",
"createdTime": "2021-12-14T21:18:44.4173023Z",
"lastModifiedTime": "2021-12-14T21:18:54.4955734Z",
"value": 200.0,
"target": 200.0,
"status": 2,
"notes@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(299759d9-80d3-45a8-8f13-a0624ea7e388)/goals(de3e8b13-1ba6-4806-871f-2fb1658e0837)/goalValues(2021-12-14T00%3A00%3A00Z)/notes",
"notes": [
{
"id": "1d6f10ef-5f0d-49c7-a511-5f0d6ce0d64e",
"valueTimestamp": "2021-12-14T00:00:00Z",
"goalId": "de3e8b13-1ba6-4806-871f-2fb1658e0837",
"scorecardId": "299759d9-80d3-45a8-8f13-a0624ea7e388",
"lastModifiedTime": "2021-12-14T21:18:59.8863271Z",
"content": "{\"general\":[{\"properties\":{\"paragraphs\":[{\"textRuns\":[{\"value\":\"Testing Notes.\"}]}]}}]}",
"createdTime": "2021-12-14T21:18:59.8863271Z",
"body": "Testing Notes."
}
]
}
]
}
}
}
}
},
"patch": {
"summary": "Updates a goal value check-in by a UTC date timestamp.",
"operationId": "GoalValues_(Preview)_PatchByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalValues_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"$ref": "#/parameters/GoalValueTimestampParameter"
},
{
"name": "goalValue",
"in": "body",
"required": true,
"description": "The updated content of goal value check-in.",
"schema": {
"$ref": "#/definitions/GoalValue"
}
}
],
"responses": {
"200": {
"description": "The updated goal value check-in.",
"schema": {
"$ref": "#/definitions/GoalValue"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "ecceb276-5d36-4b00-96cb-03f5590ae927",
"goalId": "78a93466-3b30-40d1-8514-875c1464d9c6",
"timestamp": "2021-12-14T00:00:00Z",
"requestMessage": {
"value": 200.0,
"target": 200.0,
"status": 2
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(ecceb276-5d36-4b00-96cb-03f5590ae927)/goals(78a93466-3b30-40d1-8514-875c1464d9c6)/goalValues/$entity",
"timestamp": "2021-12-14T00:00:00Z",
"goalId": "78a93466-3b30-40d1-8514-875c1464d9c6",
"scorecardId": "ecceb276-5d36-4b00-96cb-03f5590ae927",
"createdTime": "2021-12-14T21:41:20.8571366Z",
"lastModifiedTime": "2021-12-14T21:44:00.0154794Z",
"value": 200.0,
"target": 200.0,
"status": 2
}
}
}
}
},
"delete": {
"summary": "Deletes a goal value check-in by a UTC day timestamp.",
"operationId": "GoalValues_(Preview)_DeleteByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalValues_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"$ref": "#/parameters/GoalValueTimestampParameter"
}
],
"responses": {
"204": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "f74738b3-c62d-4487-838c-918d314556ee",
"goalId": "c07b3600-54be-42ef-9154-39e7922c1bb4",
"timestamp": "2021-12-14T00:00:00Z"
},
"responses": {
"204": {}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/goalValues({timestamp})/notes": {
"post": {
"summary": "Adds a new note to a goal value check-in.",
"operationId": "GoalNotes_(Preview)_Post",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalNotes_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"$ref": "#/parameters/GoalValueTimestampParameter"
},
{
"name": "goalNote",
"in": "body",
"required": true,
"description": "The goal check-in note.",
"schema": {
"$ref": "#/definitions/GoalNoteRequest"
}
}
],
"responses": {
"200": {
"description": "The created goal check-in note.",
"schema": {
"$ref": "#/definitions/GoalNote"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "ecb4f7f9-a6f4-422b-a7b8-322a76018546",
"goalId": "039b8d13-332b-475e-ad48-563b40751c16",
"timestamp": "2021-12-14",
"requestMessage": {
"body": "Testing Notes."
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(ecb4f7f9-a6f4-422b-a7b8-322a76018546)/goals(039b8d13-332b-475e-ad48-563b40751c16)/goalValues/$entity",
"@odata.type": "#Microsoft.PowerBI.ServiceContracts.Api.GoalNote",
"id": "81e52c90-7d0f-483e-ac3f-61ddbc19adb9",
"valueTimestamp": "2021-12-14T00:00:00Z",
"goalId": "039b8d13-332b-475e-ad48-563b40751c16",
"scorecardId": "ecb4f7f9-a6f4-422b-a7b8-322a76018546",
"lastModifiedTime": "2021-12-14T23:08:51.9114886Z",
"content": "{\"general\":[{\"properties\":{\"paragraphs\":[{\"textRuns\":[{\"value\":\"Testing Notes.\"}]}]}}]}",
"createdTime": "2021-12-14T23:08:51.9114886Z",
"body": "Testing Notes."
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/goalValues({timestamp})/notes({noteId})": {
"patch": {
"summary": "Updates a goal value check-in note by ID.",
"operationId": "GoalNotes_(Preview)_PatchByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalNotes_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"$ref": "#/parameters/GoalValueTimestampParameter"
},
{
"$ref": "#/parameters/GoalNoteIdParameter"
},
{
"name": "goalNote",
"in": "body",
"required": true,
"description": "The note content to be updated",
"schema": {
"$ref": "#/definitions/GoalNoteRequest"
}
}
],
"responses": {
"200": {
"description": "The updated goal value check-in note",
"schema": {
"$ref": "#/definitions/GoalNote"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "ce4abf44-3c4a-4425-893d-36bcca75a42b",
"goalId": "871f5b6e-e5a3-421f-924d-847b68db239f",
"timestamp": "2021-12-14T00:00:00Z",
"noteId": "4370bfc0-4cad-481d-981f-80848016da97",
"requestMessage": {
"body": "Testing Updated Notes."
}
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(ce4abf44-3c4a-4425-893d-36bcca75a42b)/goals(871f5b6e-e5a3-421f-924d-847b68db239f)/goalValues(2021-12-14T00%3A00%3A00Z)/notes/$entity",
"id": "4370bfc0-4cad-481d-981f-80848016da97",
"valueTimestamp": "2021-12-14T00:00:00Z",
"goalId": "871f5b6e-e5a3-421f-924d-847b68db239f",
"scorecardId": "ce4abf44-3c4a-4425-893d-36bcca75a42b",
"lastModifiedTime": "2021-12-14T23:18:40.4348502Z",
"content": "{\"general\":[{\"properties\":{\"paragraphs\":[{\"textRuns\":[{\"value\":\"Testing Updated Notes.\"}]}]}}]}",
"createdTime": "2021-12-14T23:17:14.8087859Z",
"body": "Testing Updated Notes."
}
}
}
}
},
"delete": {
"summary": "Deletes a goal value check-in note by ID.",
"operationId": "GoalNotes_(Preview)_DeleteByID",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"GoalNotes_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
},
{
"$ref": "#/parameters/GoalValueTimestampParameter"
},
{
"$ref": "#/parameters/GoalNoteIdParameter"
}
],
"responses": {
"204": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "ce4abf44-3c4a-4425-893d-36bcca75a42b",
"goalId": "871f5b6e-e5a3-421f-924d-847b68db239f",
"timestamp": "2021-12-14T00:00:00Z",
"noteId": "4370bfc0-4cad-481d-981f-80848016da97"
},
"responses": {
"204": {}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards/GetScorecardByReportId(reportId={reportId})": {
"get": {
"summary": "Reads a scorecard associated with an internal report ID.",
"operationId": "Scorecards_(Preview)_GetScorecardByReportId",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"Scorecards_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"name": "reportId",
"in": "path",
"description": "The ID of the internal report associated with the scorecard",
"type": "string",
"format": "uuid",
"required": true
},
{
"name": "$expand",
"in": "query",
"description": "Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports `goals`, `goalValues`, and `aggregations`.",
"type": "string"
}
],
"responses": {
"200": {
"description": "The scorecard.",
"schema": {
"$ref": "#/definitions/Scorecard"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"reportId": "312dc8e4-e644-4a3a-93d8-2317c69a86ee",
"$expand": "goals($expand=goalValues, aggregations)"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards/$entity",
"id": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"name": "Test Project",
"createdTime": "2021-12-07T23:57:30.4151537Z",
"lastModifiedTime": "2021-12-07T23:57:45.5872424Z",
"provisioningStatus": "Completed",
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"datasetId": "d570a5d9-2be3-41b8-8850-97a9e73bbe59",
"reportId": "312dc8e4-e644-4a3a-93d8-2317c69a86ee",
"description": "A test project..",
"permissions": "ReadWrite",
"columnSettings": [
{
"columnId": 0,
"show": true
},
{
"columnId": 1,
"show": true
},
{
"columnId": 2,
"show": true
},
{
"columnId": 3,
"show": true
},
{
"columnId": 4,
"show": true
},
{
"columnId": 5,
"show": true
},
{
"columnId": 6,
"show": true
}
],
"goals@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(c3ac3850-5d7f-4a43-a9db-549e1a44ad62)/goals",
"goals": [
{
"id": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"name": "Connected Goal",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"createdTime": "2021-12-07T23:58:48.9003783Z",
"lastModifiedTime": "2021-12-07T23:58:49.6660116Z",
"startDate": "2021-12-07T00:00:00Z",
"completionDate": "2022-01-07T00:00:00Z",
"notesCount": 0,
"valuesFormatString": "0",
"hasStatusRules": false,
"permissions": "All",
"level": 0,
"rank": 0,
"goalValues@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(c3ac3850-5d7f-4a43-a9db-549e1a44ad62)/goals(c26e60d6-58a4-41d0-a0b1-a24127bbbffb)/goalValues",
"goalValues": [
{
"timestamp": "2021-12-07T00:00:00Z",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"createdTime": "2021-12-07T23:58:49.1503802Z",
"lastModifiedTime": "2021-12-14T20:59:01.8078369Z",
"value": 30.0,
"target": 100.0,
"valueDisplayString": "30",
"targetDisplayString": "100",
"status": 0
}
],
"aggregations@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(c3ac3850-5d7f-4a43-a9db-549e1a44ad62)/goals(c26e60d6-58a4-41d0-a0b1-a24127bbbffb)/aggregations",
"aggregations": [
{
"id": "ff781b1c-9152-4438-9a7b-7af74f5c21b0",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"value": 0.0,
"valueDisplayString": "NotStarted",
"type": "Status",
"maxLastModifiedTime": "2021-12-14T20:59:01.8078369Z"
},
{
"id": "42861a20-8e75-44df-9a61-b79ee441ffc8",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"value": 30.0,
"valueDisplayString": "30",
"type": "Value",
"maxLastModifiedTime": "2021-12-14T20:59:01.8078369Z"
},
{
"id": "2b0f4205-6a34-4cbe-8706-3dcc17c6de8e",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"value": 100.0,
"valueDisplayString": "100",
"type": "Target",
"maxLastModifiedTime": "2021-12-14T20:59:01.8078369Z"
},
{
"id": "2799f252-7d22-42a9-b5b5-78aa4e061c01",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"value": 30.0,
"valueDisplayString": "30",
"type": "Sparkline",
"maxLastModifiedTime": "2021-12-14T20:59:01.8078369Z"
}
]
},
{
"id": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"name": "Disconnected Goal",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"createdTime": "2021-12-07T23:59:39.5260233Z",
"lastModifiedTime": "2021-12-08T00:42:30.8824199Z",
"startDate": "2021-12-07T00:00:00Z",
"completionDate": "2022-01-07T00:00:00Z",
"notesCount": 0,
"valuesFormatString": "0",
"hasStatusRules": false,
"permissions": "All",
"level": 0,
"rank": 2,
"goalValues@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(c3ac3850-5d7f-4a43-a9db-549e1a44ad62)/goals(529cc37c-d224-4ff8-9e5e-669c35f3b412)/goalValues",
"goalValues": [
{
"timestamp": "2021-12-07T00:00:00Z",
"goalId": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"createdTime": "2021-12-07T23:59:39.7447666Z",
"lastModifiedTime": "2021-12-08T00:42:30.8824199Z",
"value": 20.0,
"target": 40.0,
"valueDisplayString": "20",
"targetDisplayString": "40",
"status": 0
}
],
"aggregations@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(c3ac3850-5d7f-4a43-a9db-549e1a44ad62)/goals(529cc37c-d224-4ff8-9e5e-669c35f3b412)/aggregations",
"aggregations": [
{
"id": "9f85504c-95f7-4502-9917-ee37a245b24f",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"value": 0.0,
"valueDisplayString": "NotStarted",
"type": "Status",
"maxLastModifiedTime": "2021-12-08T00:42:30.8824199Z"
},
{
"id": "f7184b02-37c4-40c1-9c2e-650ea2795487",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"value": 20.0,
"valueDisplayString": "20",
"type": "Value",
"maxLastModifiedTime": "2021-12-08T00:42:30.8824199Z"
},
{
"id": "8c5ca165-52ad-493f-8e0e-a815d7e00af6",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"value": 40.0,
"valueDisplayString": "40",
"type": "Target",
"maxLastModifiedTime": "2021-12-08T00:42:30.8824199Z"
},
{
"id": "f67b5e3d-cbd7-41e0-b05d-6408508f542b",
"timestamp": "2021-12-07T00:00:00Z",
"calculationTime": "2021-12-15T00:30:40.8829019Z",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"value": 20.0,
"valueDisplayString": "20",
"type": "Sparkline",
"maxLastModifiedTime": "2021-12-08T00:42:30.8824199Z"
}
]
}
]
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/MoveGoals()": {
"post": {
"summary": "Moves goals within the scorecard. Changes their ranks and parents.",
"operationId": "Scorecards_(Preview)_MoveGoals",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Scorecards_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"name": "moveGoalsRequest",
"in": "body",
"description": "The request describing the move operation.",
"required": true,
"schema": {
"$ref": "#/definitions/GoalsMoveRequest"
}
}
],
"responses": {
"204": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Change parent example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "de582f5f-ac1d-4b9d-8232-d1f5781f46ab",
"requestMessage": {
"goalToMove": {
"goalId": "932d97d2-78f9-46bd-8cbd-4148c241688f"
},
"newParent": {
"goalId": "b5e8e0cf-8a9e-45b0-9aba-e73fc7cbb72e"
}
}
},
"responses": {
"204": {}
}
},
"Reverse goal ranks example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "de582f5f-ac1d-4b9d-8232-d1f5781f46ab",
"requestMessage": {
"goalToMove": {
"goalId": "ea8021d6-c7bd-4ed4-9852-dba0c30b4188"
},
"newParent": {
"goalId": "9d7d2ee6-6997-42d9-84b8-60a36bc75d90"
},
"newPrevious": {
"goalId": "afb487fa-5e29-4f33-bae2-b123cf0976c5",
"currentParentId": "9d7d2ee6-6997-42d9-84b8-60a36bc75d90"
}
}
},
"responses": {
"204": {}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/GetRefreshHistory()": {
"get": {
"summary": "Reads refresh history of a connected goal.",
"operationId": "Goals_(Preview)_GetRefreshHistory",
"description": "\n## Required Scope\n\nDataset.Read.All or Dataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"200": {
"description": "The list of goal refresh history objects.",
"schema": {
"$ref": "#/definitions/GoalRefreshHistories"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#Collection(Microsoft.PowerBI.ServiceContracts.Api.GoalRefreshHistory)",
"value": [
{
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"connectionType": "Current",
"status": "Succeeded",
"timestamp": "2021-12-13T20:14:55.9533333Z",
"rootActivityId": "d01c3346-2275-453a-8107-c4b8c3687c1d",
"message": "Goal processing succeeded."
},
{
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"connectionType": "Target",
"status": "Succeeded",
"timestamp": "2021-12-13T20:14:56.7066667Z",
"rootActivityId": "74f053e9-f055-482f-bb52-fc506d1ff304",
"message": "Goal processing succeeded."
},
{
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"connectionType": "Current",
"status": "Succeeded",
"timestamp": "2021-12-13T21:18:31.5433333Z",
"rootActivityId": "5cb886b8-ae64-49f8-8efc-4c3f9aeec892",
"message": "Goal processing succeeded."
},
{
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"connectionType": "Target",
"status": "Succeeded",
"timestamp": "2021-12-13T21:18:31.8Z",
"rootActivityId": "d24a78c6-6c3b-4cd8-87b3-500eebffe8f5",
"message": "Goal processing succeeded."
},
{
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"connectionType": "Current",
"status": "Succeeded",
"timestamp": "2021-12-13T21:41:11.9166667Z",
"rootActivityId": "85c6cb1c-729e-482d-ba70-0dc42a93f504",
"message": "Goal processing succeeded."
},
{
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb",
"connectionType": "Target",
"status": "Succeeded",
"timestamp": "2021-12-13T21:41:12.5033333Z",
"rootActivityId": "bf040071-9ba0-4830-8835-db847fef1caf",
"message": "Goal processing succeeded."
}
]
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/DeleteGoalCurrentValueConnection()": {
"post": {
"summary": "Disconnects the current value of a goal.",
"operationId": "Goals_(Preview)_DeleteGoalCurrentValueConnection",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"200": {
"description": "The updated goal object after disconnect.",
"schema": {
"$ref": "#/definitions/Goal"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "529cc37c-d224-4ff8-9e5e-669c35f3b412"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(c3ac3850-5d7f-4a43-a9db-549e1a44ad62)/goals/$entity",
"id": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"name": "Disconnected Goal",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"createdTime": "2021-12-07T23:59:39.5260233Z",
"lastModifiedTime": "2021-12-15T00:59:43.4061237Z",
"startDate": "2021-12-07T00:00:00Z",
"completionDate": "2022-01-07T00:00:00Z",
"notesCount": 0,
"hasStatusRules": false,
"permissions": "All"
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/DeleteGoalTargetValueConnection()": {
"post": {
"summary": "Disconnects the target value of a goal.",
"operationId": "Goals_(Preview)_DeleteGoalTargetValueConnection",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"200": {
"description": "The updated goal object after disconnect.",
"schema": {
"$ref": "#/definitions/Goal"
}
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "529cc37c-d224-4ff8-9e5e-669c35f3b412"
},
"responses": {
"200": {
"@odata.context": "http://someserver.analysis.windows.net/v1.0/myorg/groups/bc390256-fa54-4bd8-96a1-2c80df0cf704/$metadata#scorecards(c3ac3850-5d7f-4a43-a9db-549e1a44ad62)/goals/$entity",
"id": "529cc37c-d224-4ff8-9e5e-669c35f3b412",
"name": "Disconnected Goal",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"createdTime": "2021-12-07T23:59:39.5260233Z",
"lastModifiedTime": "2021-12-15T00:59:43.4061237Z",
"startDate": "2021-12-07T00:00:00Z",
"completionDate": "2022-01-07T00:00:00Z",
"notesCount": 0,
"hasStatusRules": false,
"permissions": "All"
}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/RefreshGoalCurrentValue()": {
"post": {
"summary": "Schedules a refresh of the connected value of a goal.",
"operationId": "Goals_(Preview)_RefreshGoalCurrentValue",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"202": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb"
},
"responses": {
"200": {}
}
}
}
}
},
"/v1.0/myorg/groups/{groupId}/scorecards({scorecardId})/goals({goalId})/RefreshGoalTargetValue()": {
"post": {
"summary": "Schedules a refresh of the target value of a goal.",
"operationId": "Goals_(Preview)_RefreshGoalTargetValue",
"description": "\n## Required Scope\n\nDataset.ReadWrite.All\n
",
"tags": [
"Goals_(Preview)"
],
"parameters": [
{
"$ref": "#/parameters/GroupIdParameter"
},
{
"$ref": "#/parameters/ScorecardIdParameter"
},
{
"$ref": "#/parameters/GoalIdParameter"
}
],
"responses": {
"202": {
"description": "Empty response"
}
},
"x-ms-examples": {
"Example": {
"parameters": {
"groupId": "bc390256-fa54-4bd8-96a1-2c80df0cf704",
"scorecardId": "c3ac3850-5d7f-4a43-a9db-549e1a44ad62",
"goalId": "c26e60d6-58a4-41d0-a0b1-a24127bbbffb"
},
"responses": {
"200": {}
}
}
}
}
}
},
"definitions": {
"EndorsementDetails": {
"description": "Power BI endorsement details",
"properties": {
"endorsement": {
"type": "string",
"description": "The endorsement status"
},
"certifiedBy": {
"type": "string",
"description": "The user that certified the Power BI item (such as a report or a dashboard)"
}
}
},
"DatasourceUsage": {
"required": [
"datasourceInstanceId"
],
"description": "Data source usage",
"properties": {
"datasourceInstanceId": {
"type": "string",
"format": "uuid",
"description": "The data source instance ID"
}
}
},
"SensitivityLabel": {
"required": [
"labelId"
],
"description": "Sensitivity label info for a Power BI item (such as a report or a dashboard)",
"properties": {
"labelId": {
"type": "string",
"format": "uuid",
"description": "The sensitivity label ID"
}
}
},
"ModifiedWorkspace": {
"required": [
"id"
],
"description": "A modified workspace",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The workspace object ID"
}
}
},
"ScanRequest": {
"description": "A scan request",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The scan ID"
},
"createdDateTime": {
"type": "string",
"format": "date-time",
"description": "The scan creation date and time"
},
"status": {
"type": "string",
"description": "The scan state"
},
"error": {
"$ref": "#/definitions/PowerBIApiErrorResponseDetail",
"description": "The scan error (if any)"
}
}
},
"PowerBIApiErrorResponseDetail": {
"description": "Detailed information about a Power BI error response",
"properties": {
"code": {
"type": "string",
"description": "The error code"
},
"message": {
"type": "string",
"description": "The error message"
},
"target": {
"type": "string",
"description": "The error target"
}
}
},
"RequiredWorkspaces": {
"description": "A required workspaces request",
"properties": {
"workspaces": {
"type": "array",
"description": "The required workspace IDs to be scanned (supports 1 to 100 workspace IDs)",
"items": {
"type": "string",
"format": "uuid",
"description": "Workspace object ID"
}
}
}
},
"WorkspaceInfoResponse": {
"description": "Workspace info response",
"properties": {
"workspaces": {
"type": "array",
"description": "The workspace info associated with this scan",
"items": {
"$ref": "#/definitions/WorkspaceInfo"
}
},
"datasourceInstances": {
"type": "array",
"description": "The data source instances associated with this scan",
"items": {
"$ref": "#/definitions/Datasource"
}
},
"misconfiguredDatasourceInstances": {
"type": "array",
"description": "The data source misconfigured instances associated with this scan",
"items": {
"$ref": "#/definitions/Datasource"
}
}
}
},
"WorkspaceInfo": {
"required": [
"id"
],
"description": "Workspace info details",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The workspace object ID"
},
"name": {
"type": "string",
"description": "The workspace name"
},
"description": {
"type": "string",
"description": "The workspace description"
},
"type": {
"type": "string",
"description": "The workspace type"
},
"state": {
"type": "string",
"description": "The workspace state"
},
"dataRetrievalState": {
"type": "string",
"description": "The workspace data retrieval state"
},
"isOnDedicatedCapacity": {
"type": "boolean",
"description": "Whether the workspace is assigned to a dedicated capacity"
},
"capacityId": {
"type": "string",
"description": "The workspace capacity ID"
},
"defaultDatasetStorageFormat": {
"description": "The default dataset storage format in the workspace. Returned only when `isOnDedicatedCapacity` is `true`",
"$ref": "#/definitions/DefaultDatasetStorageFormat"
},
"reports": {
"type": "array",
"description": "The reports associated with this workspace. The list of report properties returned varies for different API calls, so you might not see all report properties in an API response.",
"items": {
"$ref": "#/definitions/WorkspaceInfoReport"
}
},
"dashboards": {
"type": "array",
"description": "The dashboards associated with this workspace. The list of dashboard properties returned varies for different API calls, so you might not see all dashboard properties in an API response.",
"items": {
"$ref": "#/definitions/WorkspaceInfoDashboard"
}
},
"datasets": {
"type": "array",
"description": "The datasets associated with this workspace. The list of dataset properties returned varies for different API calls, so you might not see all dataset properties in an API response.",
"items": {
"$ref": "#/definitions/WorkspaceInfoDataset"
}
},
"dataflows": {
"type": "array",
"description": "The dataflows associated with this workspace. The list of dataflow properties returned varies for different API calls, so you might not see all dataflow properties in an API response.",
"items": {
"$ref": "#/definitions/WorkspaceInfoDataflow"
}
},
"datamarts": {
"type": "array",
"description": "The datamarts associated with this workspace. The list of datamart properties returned varies for different API calls, so you might not see all datamart properties in an API response.",
"items": {
"$ref": "#/definitions/WorkspaceInfoDatamart"
}
},
"users": {
"type": "array",
"description": "The users with access to the workspace. The list is returned only when explicitly requested. To retrieve a list of users for a classic workspace, use the Azure Active Directory Graph API.",
"items": {
"$ref": "#/definitions/GroupUser"
}
}
}
},
"Import": {
"required": [
"id"
],
"description": "The import object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The import ID"
},
"name": {
"type": "string",
"description": "The import name"
},
"importState": {
"type": "string",
"description": "The import upload state",
"enum": [
"Publishing",
"Succeeded",
"Failed"
]
},
"reports": {
"type": "array",
"description": "The reports associated with this import",
"items": {
"$ref": "#/definitions/Report"
}
},
"datasets": {
"type": "array",
"description": "The datasets associated with this import",
"items": {
"$ref": "#/definitions/Dataset"
}
},
"createdDateTime": {
"type": "string",
"format": "date-time",
"description": "Import creation date and time"
},
"updatedDateTime": {
"type": "string",
"format": "date-time",
"description": "Import last update date and time"
}
}
},
"ImportInfo": {
"description": "The information about the import",
"properties": {
"filePath": {
"type": "string",
"description": "The path of the OneDrive for Business Excel (.xlsx) file to import, which can be absolute or relative. Power BI .pbix files aren't supported."
},
"connectionType": {
"type": "string",
"description": "The import connection type for a OneDrive for Business file",
"enum": [
"import",
"connect"
],
"x-ms-enum": {
"name": "connectionType",
"modelAsExtensible": true
}
},
"fileUrl": {
"type": "string",
"description": "The shared access signature URL of the temporary blob storage used to import large Power BI .pbix files between 1 GB and 10 GB in size."
}
}
},
"Datasets": {
"description": "A dataset OData list wrapper",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The datasets",
"items": {
"$ref": "#/definitions/Dataset"
}
}
}
},
"AdminDatasets": {
"description": "A dataset odata list wrapper",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The datasets",
"items": {
"$ref": "#/definitions/AdminDataset"
}
}
}
},
"DatasetNavigationProperties": {
"description": "A list of navigation related properties of a dataset.",
"properties": {
"CreateReportEmbedURL": {
"type": "string",
"description": "The dataset create report embed URL"
},
"QnaEmbedURL": {
"type": "string",
"description": "The dataset Q&A embed URL"
},
"webUrl": {
"type": "string",
"description": "The web URL of the dataset"
}
}
},
"DatasetBaseProperties": {
"required": [
"id"
],
"description": "A Power BI dataset. The API returns a subset of the following list of dataset properties. The subset depends on the API called, caller permissions, and the availability of the data in the Power BI database.",
"properties": {
"id": {
"type": "string",
"description": "The dataset ID"
},
"name": {
"type": "string",
"description": "The dataset name"
},
"configuredBy": {
"type": "string",
"description": "The dataset owner"
},
"CreatedDate": {
"type": "string",
"format": "date-time",
"description": "The dataset creation date and time"
},
"ContentProviderType": {
"type": "string",
"description": "The content provider type for the dataset"
},
"description": {
"type": "string",
"description": "The dataset description"
},
"upstreamDataflows": {
"type": "array",
"description": "The list of all the dataflows this item depends on",
"items": {
"$ref": "#/definitions/DependentDataflow"
}
}
}
},
"DatasetMiscProperties": {
"description": "A list of miscellaneous properties returned for a dataset. Returned by User and Admin APIs.",
"properties": {
"addRowsAPIEnabled": {
"type": "boolean",
"description": "Whether the dataset allows adding new rows"
},
"IsRefreshable": {
"type": "boolean",
"description": "This field returns `true` when the dataset is either recently refreshed or is configured for automatic refresh, with the connection mode specifically set to 'Import'. The value will return `false` for other connection modes, such as 'DirectQuery' and 'LiveConnection', regardless of whether the dataset is manually refreshed or is set up for automatic refresh."
},
"IsInPlaceSharingEnabled": {
"type": "boolean",
"description": "Whether the dataset can be shared with external users to be consumed in their own tenant"
}
}
},
"DatasetSecurityProperties": {
"description": "A list of security related properties of a Power BI dataset.",
"properties": {
"IsEffectiveIdentityRequired": {
"type": "boolean",
"description": "Whether the dataset requires an effective identity, which you must send in a [GenerateToken](/rest/api/power-bi/embed-token/generate-token) API call."
},
"IsEffectiveIdentityRolesRequired": {
"type": "boolean",
"description": "Whether row-level security is defined inside the Power BI .pbix file. If so, you must specify a role."
},
"IsOnPremGatewayRequired": {
"type": "boolean",
"description": "Whether the dataset requires an on-premises data gateway"
},
"Encryption": {
"$ref": "#/definitions/Encryption",
"description": "Dataset encryption information. Only applicable when `$expand` is specified."
}
}
},
"DatasetUserProperties": {
"properties": {
"users": {
"type": "array",
"description": "(Empty value) The dataset user access details. This property will be removed from the payload response in an upcoming release. You can retrieve user information on a Power BI item (such as a report or a dashboard) by using the [Get Dataset Users as Admin](/rest/api/power-bi/admin/datasets-get-dataset-users-as-admin) API, or the [PostWorkspaceInfo](/rest/api/power-bi/admin/workspace-info-post-workspace-info) API with the `getArtifactUsers` parameter.",
"items": {
"$ref": "#/definitions/DatasetUser"
}
}
}
},
"DatasetSchemaProperties": {
"description": "A list of properties related to the schema of the dataset.",
"properties": {
"tables": {
"type": "array",
"description": "The dataset tables",
"items": {
"$ref": "#/definitions/Table"
}
},
"schemaRetrievalError": {
"type": "string",
"description": "The dataset schema retrieval error"
},
"schemaMayNotBeUpToDate": {
"type": "boolean",
"description": "Whether the dataset schema might not be up to date"
},
"expressions": {
"type": "array",
"description": "The dataset expressions",
"items": {
"$ref": "#/definitions/Expression"
}
},
"roles": {
"type": "array",
"description": "The dataset roles",
"items": {
"$ref": "#/definitions/Role"
}
}
}
},
"DatasetQueryScaleOutSettings": {
"description": "Query scale-out settings of a dataset",
"properties": {
"autoSyncReadOnlyReplicas": {
"type": "boolean",
"description": "Whether the dataset automatically syncs read-only replicas"
},
"maxReadOnlyReplicas": {
"type": "integer",
"minimum": -1,
"maximum": 64,
"description": "Maximum number of read-only replicas for the dataset (0-64, -1 for automatic number of replicas)"
}
}
},
"DatasetStorageMode": {
"properties": {
"targetStorageMode": {
"type": "string",
"description": "The dataset storage mode"
}
}
},
"DatasetWorkspaceIdProperty": {
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The dataset workspace ID. This property will be returned only in GetDatasetsAsAdmin."
}
}
},
"UpdateDatasetRequest": {
"description": "Update dataset request",
"properties": {
"targetStorageMode": {
"type": "string",
"description": "The dataset storage mode"
},
"queryScaleOutSettings": {
"type": "object",
"$ref": "#/definitions/DatasetQueryScaleOutSettings"
}
}
},
"UpstreamDatasetsProperties": {
"properties": {
"upstreamDatasets": {
"type": "array",
"description": "The upstream datasets",
"items": {
"$ref": "#/definitions/DependentDataset"
}
},
"upstreamDatamarts": {
"type": "array",
"description": "The list of all the datamarts this item depends on",
"items": {
"$ref": "#/definitions/DependentDatamart"
}
}
}
},
"Dataset": {
"description": "A Power BI dataset. The API returns a subset of the following list of dataset properties. The subset depends on the API called, caller permissions, and the availability of the data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DatasetBaseProperties"
},
{
"$ref": "#/definitions/DatasetNavigationProperties"
},
{
"$ref": "#/definitions/DatasetSecurityProperties"
},
{
"$ref": "#/definitions/DatasetUserProperties"
},
{
"$ref": "#/definitions/DatasetMiscProperties"
},
{
"$ref": "#/definitions/DatasetStorageMode"
},
{
"properties": {
"queryScaleOutSettings": {
"type": "object",
"$ref": "#/definitions/DatasetQueryScaleOutSettings",
"readOnly": true
}
}
}
]
},
"AdminDataset": {
"description": "A Power BI dataset returned by Admin APIs. The API returns a subset of the following list of dataset properties. The subset depends on the API called, caller permissions, and the availability of the data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DatasetBaseProperties"
},
{
"$ref": "#/definitions/DatasetNavigationProperties"
},
{
"$ref": "#/definitions/DatasetSecurityProperties"
},
{
"$ref": "#/definitions/DatasetUserProperties"
},
{
"$ref": "#/definitions/DatasetMiscProperties"
},
{
"$ref": "#/definitions/DatasetStorageMode"
},
{
"$ref": "#/definitions/DatasetWorkspaceIdProperty"
},
{
"properties": {
"queryScaleOutSettings": {
"type": "object",
"$ref": "#/definitions/DatasetQueryScaleOutSettings",
"readOnly": true
}
}
}
]
},
"WorkspaceInfoDataset": {
"description": "A Power BI dataset returned by WorkspaceInfo APIs. The API returns a subset of the following list of dataset properties. The subset depends on the API called, caller permissions, and the availability of the data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DatasetBaseProperties"
},
{
"$ref": "#/definitions/DatasetSchemaProperties"
},
{
"$ref": "#/definitions/EndorsmentProperties"
},
{
"$ref": "#/definitions/SensitivityProperties"
},
{
"$ref": "#/definitions/DatasetStorageMode"
},
{
"$ref": "#/definitions/WorkspaceInfoDataflowProperties"
},
{
"$ref": "#/definitions/UpstreamDatasetsProperties"
},
{
"$ref": "#/definitions/DatasetUserProperties"
}
]
},
"Encryption": {
"description": "Encryption information for a dataset",
"properties": {
"EncryptionStatus": {
"type": "string",
"description": "Dataset encryption status",
"enum": [
"Unknown",
"NotSupported",
"InSyncWithWorkspace",
"NotInSyncWithWorkspace"
],
"x-ms-enum": {
"name": "EncryptionStatus",
"modelAsExtensible": true,
"values": [
{
"value": "Unknown",
"description": "The encryption status is unknown due to dataset corruption"
},
{
"value": "NotSupported",
"description": "Encryption isn't supported for this dataset"
},
{
"value": "InSyncWithWorkspace",
"description": "Encryption is supported and is in sync with the encryption settings"
},
{
"value": "NotInSyncWithWorkspace",
"description": "Encryption is supported but isn't in sync with the encryption settings"
}
]
}
}
}
},
"CreateDatasetRequest": {
"required": [
"name",
"tables"
],
"description": "A Power BI dataset",
"properties": {
"name": {
"type": "string",
"description": "The dataset name"
},
"tables": {
"type": "array",
"description": "The dataset tables",
"items": {
"$ref": "#/definitions/Table"
}
},
"relationships": {
"type": "array",
"description": "The dataset relationships",
"items": {
"$ref": "#/definitions/Relationship"
}
},
"datasources": {
"type": "array",
"description": "The data sources associated with this dataset",
"items": {
"$ref": "#/definitions/Datasource"
}
},
"defaultMode": {
"type": "string",
"description": "The dataset mode or type",
"enum": [
"AsAzure",
"AsOnPrem",
"Push",
"Streaming",
"PushStreaming"
],
"x-ms-enum": {
"name": "DatasetMode",
"modelAsExtensible": true,
"values": [
{
"value": "AsAzure",
"description": "A dataset with a live connection to Azure Analysis Services"
},
{
"value": "AsOnPrem",
"description": "A dataset with a live connection to on-premises Azure Analysis Services"
},
{
"value": "Push",
"description": "A dataset that allows programmatic access for pushing data into Power BI"
},
{
"value": "Streaming",
"description": "A dataset that supports data streaming. For more information, see [Real-time streaming in Power BI](/power-bi/connect-data/service-real-time-streaming)."
},
{
"value": "PushStreaming",
"description": "A dataset that supports data streaming and allows programmatic access for pushing data into Power BI"
}
]
}
}
}
},
"Table": {
"required": [
"name",
"columns"
],
"description": "A dataset table",
"properties": {
"name": {
"pattern": "^[\\x09\\x0A\\x0D\\x20\\x23\\x2D\\x30-\\x39\\x40-\\x5A\\x5E-\\x5F\\x61-\\x7A\\x7E-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]{1,100}$",
"type": "string",
"description": "The table name"
},
"columns": {
"type": "array",
"description": "The column schema for this table",
"items": {
"$ref": "#/definitions/Column"
}
},
"rows": {
"type": "array",
"description": "The data rows within this table",
"items": {
"$ref": "#/definitions/Row"
}
},
"measures": {
"type": "array",
"description": "The measures within this table",
"items": {
"$ref": "#/definitions/Measure"
}
},
"isHidden": {
"type": "boolean",
"description": "Optional. Whether this dataset table is hidden."
},
"description": {
"type": "string",
"description": "The table description"
},
"source": {
"type": "array",
"description": "The table source",
"items": {
"$ref": "#/definitions/ASMashupExpression"
}
}
}
},
"Expression": {
"description": "A dataset expression",
"required": [
"expression"
],
"properties": {
"expression": {
"type": "string",
"description": "The expression value"
},
"name": {
"type": "string",
"description": "The expression name"
},
"description": {
"type": "string",
"description": "The expression description"
}
}
},
"Role": {
"description": "A role in a dataset’s RLS configuration",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the role"
},
"modelPermission": {
"type": "string",
"description": "The permissions that the role has on the dataset. For example, Read"
},
"members": {
"type": "array",
"description": "An array listing the members of the role",
"$ref": "#/definitions/RoleMember"
},
"tablePermissions": {
"type": "array",
"description": "An array that lists all the filters defined for the role",
"$ref": "#/definitions/RoleTablePermission"
}
}
},
"RoleMember": {
"description": "A role member",
"required": [
"memberName"
],
"properties": {
"memberName": {
"type": "string",
"description": "The name of the role member"
},
"memberId": {
"type": "string",
"description": "The role member GUID as assigned by the identity provider"
},
"memberType": {
"type": "string",
"description": "The role member type (user or group)"
},
"identityProvider": {
"type": "string",
"description": "The role member identity provider"
}
}
},
"RoleTablePermission": {
"description": "A role filter",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the table specified in the filter"
},
"filterExpression": {
"type": "string",
"description": "The expression that filters the table specified in the filter"
}
}
},
"ASMashupExpression": {
"description": "A dataset table source",
"required": [
"expression"
],
"properties": {
"expression": {
"type": "string",
"description": "The source expression"
}
}
},
"PostRowsRequest": {
"description": "",
"properties": {
"rows": {
"type": "array",
"description": "An array of data rows pushed to a dataset table. Each element is a collection of properties represented using key-value format.",
"items": {
"type": "object"
}
}
}
},
"DependentDataflows": {
"description": "The OData response wrapper for a list of Power BI dependent dataflows",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The dependent dataflows",
"items": {
"$ref": "#/definitions/DependentDataflow"
}
}
}
},
"DependentDatasets": {
"description": "The OData response wrapper for a list of Power BI dependent datasets",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The dependent datasets",
"items": {
"$ref": "#/definitions/DependentDataset"
}
}
}
},
"DatasetToDataflowLinksResponse": {
"description": "The OData response wrapper for a list of Power BI dataset to dataflow links",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The dataset to dataflow links ",
"items": {
"$ref": "#/definitions/DatasetToDataflowLinkResponse"
}
}
}
},
"Relationship": {
"required": [
"name",
"fromTable",
"fromColumn",
"toTable",
"toColumn"
],
"description": "A relationship between tables in a dataset",
"properties": {
"name": {
"pattern": "^[\\x09\\x0A\\x0D\\x20\\x23\\x2D\\x30-\\x39\\x40-\\x5A\\x5E-\\x5F\\x61-\\x7A\\x7E-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]{1,100}$",
"type": "string",
"description": "The relationship name and identifier"
},
"crossFilteringBehavior": {
"type": "string",
"description": "The filter direction of the relationship",
"enum": [
"OneDirection",
"BothDirections",
"Automatic"
],
"x-ms-enum": {
"name": "CrossFilteringBehavior",
"modelAsExtensible": true,
"values": [
{
"value": "OneDirection",
"description": "For filtering purposes, the filter will be applied on the table where values are being aggregated."
},
{
"value": "BothDirections",
"description": "For filtering purposes, both tables are treated as a single table."
},
{
"value": "Automatic",
"description": "Cross filtering behavior is automatically defined"
}
]
},
"default": "OneDirection"
},
"fromTable": {
"pattern": "^[\\x09\\x0A\\x0D\\x20\\x23\\x2D\\x30-\\x39\\x40-\\x5A\\x5E-\\x5F\\x61-\\x7A\\x7E-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]{1,100}$",
"type": "string",
"description": "The name of the foreign key table"
},
"fromColumn": {
"pattern": "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]+$",
"type": "string",
"description": "The name of the foreign key column"
},
"toTable": {
"pattern": "^[\\x09\\x0A\\x0D\\x20\\x23\\x2D\\x30-\\x39\\x40-\\x5A\\x5E-\\x5F\\x61-\\x7A\\x7E-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]{1,100}$",
"type": "string",
"description": "The name of the primary key table"
},
"toColumn": {
"pattern": "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]+$",
"type": "string",
"description": "The name of the primary key column"
}
}
},
"Datasource": {
"description": "A Power BI data source",
"properties": {
"name": {
"type": "string",
"description": "(Deprecated) The data source name. Available only for DirectQuery."
},
"connectionString": {
"type": "string",
"description": "(Deprecated) The data source connection string. Available only for DirectQuery."
},
"datasourceType": {
"type": "string",
"description": "The data source type"
},
"connectionDetails": {
"$ref": "#/definitions/DatasourceConnectionDetails",
"description": "The data source connection details"
},
"gatewayId": {
"type": "string",
"format": "uuid",
"description": "The bound gateway ID, which is empty when not bound to a gateway. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster and is similar to the gateway cluster ID."
},
"datasourceId": {
"type": "string",
"format": "uuid",
"description": "The bound data source ID, which is empty when not bound to a gateway"
}
}
},
"DatasourceConnectionDetails": {
"description": "The Power BI data source connection details. See examples in [Get Datasources](/rest/api/power-bi/datasets/get-datasources#examples) or [Get Datasources In Group](/rest/api/power-bi/datasets/get-datasources-in-group#examples).",
"properties": {
"server": {
"type": "string",
"description": "The connection server"
},
"database": {
"type": "string",
"description": "The connection database"
},
"url": {
"type": "string",
"description": "The connection URL"
},
"path": {
"type": "string",
"description": "The connection path"
},
"kind": {
"type": "string",
"description": "The connection kind"
},
"account": {
"type": "string",
"description": "The connection account"
},
"domain": {
"type": "string",
"description": "The connection domain"
},
"emailAddress": {
"type": "string",
"description": "The connection email address"
},
"loginServer": {
"type": "string",
"description": "The connection login server"
},
"classInfo": {
"type": "string",
"description": "The connection class information"
}
}
},
"UpdateDatasourcesRequest": {
"required": [
"updateDetails"
],
"description": "Power BI dataset data sources update request",
"properties": {
"updateDetails": {
"type": "array",
"description": "An array of data source connection update requests",
"items": {
"$ref": "#/definitions/UpdateDatasourceConnectionRequest"
}
}
}
},
"UpdateDatasourceConnectionRequest": {
"required": [
"connectionDetails"
],
"description": "Power BI dataset data source connection update request",
"properties": {
"connectionDetails": {
"$ref": "#/definitions/DatasourceConnectionDetails",
"description": "The target connection details of the updated data source"
},
"datasourceSelector": {
"$ref": "#/definitions/Datasource",
"description": "The connection details of the data source that needs update. This is mandatory when a dataset has more than one data source."
}
}
},
"Column": {
"required": [
"name",
"dataType"
],
"description": "A dataset column",
"properties": {
"name": {
"pattern": "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]+$",
"type": "string",
"description": "The column name"
},
"dataType": {
"type": "string",
"description": "The column data type"
},
"formatString": {
"type": "string",
"description": "Optional. The format of the column as specified in [FORMAT_STRING](https://docs.microsoft.com/analysis-services/multidimensional-models/mdx/mdx-cell-properties-format-string-contents)."
},
"sortByColumn": {
"type": "string",
"description": "Optional. String name of a column in the same table to be used to order the current column."
},
"dataCategory": {
"type": "string",
"description": "Optional. The string value to be used for the data category which describes the data within this column."
},
"isHidden": {
"type": "boolean",
"description": "Optional. Whether the column is hidden. The default is `false`."
},
"summarizeBy": {
"type": "string",
"description": "Optional. The aggregate function to use for summarizing this column."
}
}
},
"Row": {
"description": "A data row in a dataset",
"properties": {
"id": {
"type": "string",
"description": "The unique row ID"
}
}
},
"Measure": {
"required": [
"name",
"expression"
],
"description": "A Power BI measure",
"properties": {
"name": {
"pattern": "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]+$",
"type": "string",
"description": "The measure name"
},
"expression": {
"type": "string",
"description": "A valid DAX expression"
},
"formatString": {
"type": "string",
"description": "Optional. A string describing how the value should be formatted when it's displayed as specified in [FORMAT_STRING](https://docs.microsoft.com/analysis-services/multidimensional-models/mdx/mdx-cell-properties-format-string-contents)."
},
"description": {
"type": "string",
"description": "Optional. The measure description."
},
"isHidden": {
"type": "boolean",
"description": "Optional. Whether the measure is hidden."
}
}
},
"Tables": {
"description": "The OData response wrapper for a Power BI table collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The Power BI tables",
"items": {
"$ref": "#/definitions/Table"
}
}
}
},
"GatewayDatasources": {
"description": "The OData response wrapper for a Power BI gateway data source collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The list of gateway data sources",
"items": {
"$ref": "#/definitions/GatewayDatasource"
}
}
}
},
"GatewayDatasource": {
"required": [
"id",
"gatewayId",
"credentialType"
],
"description": "A Power BI gateway data source",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID for the data source"
},
"gatewayId": {
"type": "string",
"format": "uuid",
"description": "The associated gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster and is similar to the gateway cluster ID."
},
"datasourceName": {
"type": "string",
"description": "The name of the data source"
},
"datasourceType": {
"type": "string",
"description": "The type of [data source](/power-bi/connect-data/power-bi-data-sources).\n\n\n| API name for the data source | | |\n|-|-|-|\n| ActiveDirectory | AdobeAnalytics | AdoDotNet |\n| AnalysisServices | AzureBlobs | AzureDataLakeStorage |\n| AzureMarketplace | AzureTables | BizTalk |\n| CDPA | CustomConnector | CustomHttpApi |\n| DB2 | Essbase | EventHub |\n| Excel | Exchange | Extension |\n| Facebook | File | Folder |\n| GoogleAnalytics | Hdfs | HDInsight |\n| Informix | MQ | MySql |\n| OData | ODBC | OleDb |\n| Oracle | PostgreSql | PowerQueryMashup \n| PubNub | Salesforce | SAPBW |\n| SAPBWMessageServer | SapErp | SAPHana |\n| SharePoint | SharePointDocLib | SharePointList |\n| Sql | Sybase | Teradata |\n| UIFlow | Web |"
},
"connectionDetails": {
"type": "string",
"description": "Connection details in JSON format"
},
"credentialType": {
"type": "string",
"description": "The type of data source [credential](/power-bi/developer/embedded/configure-credentials)",
"enum": [
"Basic",
"Windows",
"Anonymous",
"OAuth2",
"Key",
"SAS"
],
"x-ms-enum": {
"name": "credentialType",
"modelAsExtensible": true
}
},
"credentialDetails": {
"$ref": "#/definitions/GatewayDatasourceCredentialDetails",
"description": "The connection details for the data source that needs update. The connection details are mandatory when the dataset has more than one data source."
}
}
},
"DependentDataflow": {
"description": "A Power BI dependent dataflow",
"properties": {
"targetDataflowId": {
"type": "string",
"description": "The target dataflow ID"
},
"groupId": {
"type": "string",
"description": "The target group ID"
}
}
},
"DependentDatamart": {
"description": "A Power BI dependent datamart",
"properties": {
"targetDatamartId": {
"type": "string",
"description": "The target datamart ID"
},
"groupId": {
"type": "string",
"description": "The target group ID"
}
}
},
"DependentDataset": {
"description": "A Power BI dependent dataset",
"properties": {
"targetDatasetId": {
"type": "string",
"description": "The target dataset ID"
},
"groupId": {
"type": "string",
"description": "The target group ID"
}
}
},
"DatasetToDataflowLinkResponse": {
"description": "A Power BI dataset to dataflow link",
"properties": {
"datasetObjectId": {
"type": "string",
"description": "The dataset object ID"
},
"dataflowObjectId": {
"type": "string",
"description": "The dataflow object ID"
},
"workspaceObjectId": {
"type": "string",
"description": "The workspace object ID"
}
}
},
"Datasources": {
"description": "The OData response wrapper for a Power BI data source collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The data source collection",
"items": {
"$ref": "#/definitions/Datasource"
}
}
}
},
"Reports": {
"description": "The OData response wrapper for a Power BI report collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The report collection",
"items": {
"$ref": "#/definitions/Report"
}
}
}
},
"AdminReports": {
"description": "OData response wrapper for a Power BI Admin report collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The report collection",
"items": {
"$ref": "#/definitions/AdminReport"
}
}
}
},
"Pages": {
"description": "The OData response wrapper for a Power BI page collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The page collection",
"items": {
"$ref": "#/definitions/Page"
}
}
}
},
"Dashboards": {
"description": "The OData response wrapper for a Power BI dashboard collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The dashboard collection",
"items": {
"$ref": "#/definitions/Dashboard"
}
}
}
},
"AdminDashboards": {
"description": "The OData response wrapper for a Power BI dashboard collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The dashboard collection",
"items": {
"$ref": "#/definitions/AdminDashboard"
}
}
}
},
"WorkspaceInfoDashboards": {
"description": "The OData response wrapper for a Power BI dashboard collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The dashboard collection",
"items": {
"$ref": "#/definitions/WorkspaceInfoDashboard"
}
}
}
},
"Tiles": {
"description": "The OData response wrapper for a Power BI tile collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The tile collection",
"items": {
"$ref": "#/definitions/Tile"
}
}
}
},
"AdminTiles": {
"description": "The OData response wrapper for a Power BI tile collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The tile collection",
"items": {
"$ref": "#/definitions/AdminTile"
}
}
}
},
"WorkspaceInfoTiles": {
"description": "The OData response wrapper for a Power BI tile collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The tile collection",
"items": {
"$ref": "#/definitions/WorkspaceInfoTile"
}
}
}
},
"Imports": {
"description": "The OData response wrapper for a Power BI import collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The import collection",
"items": {
"$ref": "#/definitions/Import"
}
}
}
},
"Groups": {
"description": "The OData response wrapper for a list of Power BI groups",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The list of groups",
"items": {
"$ref": "#/definitions/Group"
}
}
}
},
"AdminGroups": {
"description": "The OData response wrapper for a list of Power BI groups returned by Admin APIs",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The list of groups",
"items": {
"$ref": "#/definitions/AdminGroup"
}
}
}
},
"Apps": {
"description": "The OData response wrapper for a list of Power BI installed apps",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The list of installed apps",
"items": {
"$ref": "#/definitions/App"
}
}
}
},
"AdminApps": {
"description": "The OData response wrapper for a list of Power BI installed apps for Admin APIs",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The list of installed apps",
"items": {
"$ref": "#/definitions/AdminApp"
}
}
}
},
"Gateways": {
"description": "The OData response wrapper for a list of Power BI gateways",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of gateways",
"items": {
"$ref": "#/definitions/Gateway"
}
}
}
},
"Refreshes": {
"description": "The OData response wrapper for a Power BI refresh history list",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The refresh history list",
"items": {
"$ref": "#/definitions/Refresh"
}
}
}
},
"DatasourceUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to a data source",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a data source",
"items": {
"$ref": "#/definitions/DatasourceUser"
}
}
}
},
"GroupUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to a workspace",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a workspace",
"items": {
"$ref": "#/definitions/GroupUser"
}
}
}
},
"AppUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to an app",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to an app",
"items": {
"$ref": "#/definitions/AppUser"
}
}
}
},
"CapacityUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to a capacity",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a capacity",
"items": {
"$ref": "#/definitions/CapacityUser"
}
}
}
},
"ReportUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to a report",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a report",
"items": {
"$ref": "#/definitions/ReportUser"
}
}
}
},
"DashboardUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to a dashboard",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a dashboard",
"items": {
"$ref": "#/definitions/DashboardUser"
}
}
}
},
"DatasetUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to a dataset",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a dataset",
"items": {
"$ref": "#/definitions/DatasetUser"
}
}
}
},
"DatasetUsersAccess": {
"description": "The OData response wrapper for a list of Power BI principals with access to a dataset",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a dataset",
"items": {
"$ref": "#/definitions/DatasetUserAccess"
}
}
}
},
"DataflowUsers": {
"description": "The OData response wrapper for a list of Power BI users with access to a dataflow",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of users with access to a dataflow",
"items": {
"$ref": "#/definitions/DataflowUser"
}
}
}
},
"ArtifactAccessResponse": {
"description": "The OData response wrapper for a list of Power BI items (such as reports or dashboards) that a user can access",
"properties": {
"odata.context": {
"type": "string"
},
"artifactAccessEntities": {
"type": "array",
"description": "The list of Power BI items that a user can access",
"items": {
"$ref": "#/definitions/ArtifactAccessEntry"
}
},
"continuationUri": {
"type": "string",
"description": "The URI of the next chunk in the result set"
},
"continuationToken": {
"type": "string",
"description": "The token for the next chunk in the result set"
}
}
},
"EndorsmentProperties": {
"description": "A list of properties returned for a Power BI item (such as a report or a dashboard) by WorkspaceInfo APIs",
"properties": {
"endorsementDetails": {
"$ref": "#/definitions/EndorsementDetails",
"description": "The endorsement details"
}
}
},
"SensitivityProperties": {
"description": "A list of properties returned for a Power BI item (such as a report or a dashboard) by WorkspaceInfo APIs",
"properties": {
"sensitivityLabel": {
"$ref": "#/definitions/SensitivityLabel",
"description": "The sensitivity label"
}
}
},
"SubscriptionsByUserResponse": {
"description": "OData response wrapper for a Power BI subscriptions for user",
"properties": {
"odata.context": {
"type": "string"
},
"subscriptionEntities": {
"type": "array",
"description": "The subscriptions for user",
"items": {
"$ref": "#/definitions/Subscription"
}
},
"continuationUri": {
"type": "string",
"description": "The URI for the next chunk in the result set"
},
"continuationToken": {
"type": "string",
"description": "Token to get the next chunk of the result set"
}
}
},
"ReportBaseProperties": {
"required": [
"id"
],
"description": "Power BI report common properties. The API returns a subset of the following list of report properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The report ID"
},
"name": {
"type": "string",
"description": "The name of the report"
},
"datasetId": {
"type": "string",
"description": "The dataset ID of the report"
},
"appId": {
"type": "string",
"description": "The app ID, returned only if the report belongs to an app"
},
"description": {
"type": "string",
"description": "The report description"
},
"reportType": {
"type": "string",
"description": "The report type",
"enum": [
"PaginatedReport",
"PowerBIReport"
]
},
"originalReportId": {
"type": "string",
"format": "uuid",
"description": "The actual report ID when the workspace is published as an app."
},
"isOwnedByMe": {
"type": "boolean",
"description": "Determine if the report is created by the current user."
}
}
},
"ReportNavigationProperties": {
"description": "A list of navigation related properties of a report.",
"properties": {
"webUrl": {
"type": "string",
"description": "The web URL of the report"
},
"embedUrl": {
"type": "string",
"description": "The embed URL of the report"
}
}
},
"ReportAuthoringProperties": {
"properties": {
"createdBy": {
"type": "string",
"description": "The report owner. Available only for reports created after June 2019."
},
"modifiedBy": {
"type": "string",
"description": "The last user that modified the report"
},
"createdDateTime": {
"type": "string",
"format": "date-time",
"description": "The report creation date and time"
},
"modifiedDateTime": {
"type": "string",
"format": "date-time",
"description": "The date and time that the report was last modified"
}
}
},
"ReportAuthoringPropertiesById": {
"properties": {
"createdById": {
"type": "string",
"description": "The ID of the report owner. Available only for reports created after June 2019."
},
"modifiedById": {
"type": "string",
"description": "The ID of the last user that modified the report"
}
}
},
"ReportUserProperties": {
"properties": {
"users": {
"type": "array",
"description": "(Empty value) The user access details for a Power BI report. This property will be removed from the payload response in an upcoming release. You can retrieve user information on a Power BI report by using the [Get Report Users as Admin](/rest/api/power-bi/admin/reports-get-report-users-as-admin) API call, or the [PostWorkspaceInfo](/rest/api/power-bi/admin/workspace-info-post-workspace-info) API call with the `getArtifactUsers` parameter.",
"items": {
"$ref": "#/definitions/ReportUser"
}
}
}
},
"ReportWorkspaceIdProperty": {
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The workspace ID (GUID) of the report. This property will be returned only in GetReportsAsAdmin."
}
}
},
"DatamartBaseProperties": {
"required": [
"id"
],
"description": "Power BI datamart common properties. The API returns a subset of the following list of datamart properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The datamart ID"
},
"name": {
"type": "string",
"description": "The datamart name"
},
"description": {
"type": "string",
"description": "The datamart description"
},
"type": {
"type": "string",
"description": "The datamart type",
"enum": [
"Unset",
"Ignore",
"Sql",
"Lakehouse",
"Dataverse",
"Datawarehouse"
],
"x-ms-enum": {
"name": "datamartType",
"modelAsExtensible": true,
"values": [
{
"value": "Unset",
"description": "The datamart type was unset"
},
{
"value": "Ignore",
"description": "The datamart has no type"
},
{
"value": "Sql",
"description": "The datamart is of Sql type"
},
{
"value": "Lakehouse",
"description": "The datamart is of Lakehouse type"
},
{
"value": "Dataverse",
"description": "The datamart is of Dataverse type"
},
{
"value": "Datawarehouse",
"description": "The datamart is of Datawarehouse type"
}
]
}
},
"status": {
"type": "string",
"description": "The datamart status",
"enum": [
"Invalid",
"Available",
"SuspendedInCriticalPhase",
"InProgress",
"Error",
"OutOfRegion",
"NoCapacity"
],
"x-ms-enum": {
"name": "datamartStatus",
"modelAsExtensible": true,
"values": [
{
"value": "Invalid",
"description": "The datamart has invalid status"
},
{
"value": "Available",
"description": "The datamart is available"
},
{
"value": "SuspendedInCriticalPhase",
"description": "The datamart is suspended in critical phase"
},
{
"value": "InProgress",
"description": "The datamart is in progress"
},
{
"value": "Error",
"description": "The datamart has error status"
},
{
"value": "OutOfRegion",
"description": "The datamart is out of region"
},
{
"value": "NoCapacity",
"description": "The datamart has no capacity"
}
]
}
},
"state": {
"type": "string",
"description": "The datamart current state",
"enum": [
"Invalid",
"Initialized",
"Active",
"Migrating",
"Evicted",
"Deleted"
],
"x-ms-enum": {
"name": "datamartState",
"modelAsExtensible": true,
"values": [
{
"value": "Invalid",
"description": "The datamart has invalid state"
},
{
"value": "Initialized",
"description": "The datamart was initialized"
},
{
"value": "Active",
"description": "The datamart is active"
},
{
"value": "Migrating",
"description": "The datamart is migrating"
},
{
"value": "Evicted",
"description": "The datamart was evicted"
},
{
"value": "Deleted",
"description": "The datamart was deleted"
}
]
}
},
"suspendedBatchId": {
"type": "string",
"description": "datamart suspended batch id"
}
}
},
"DatamartAuthoringProperties": {
"properties": {
"modifiedBy": {
"type": "string",
"description": "The last user that modified the datamart"
},
"modifiedDateTime": {
"type": "string",
"format": "date-time",
"description": "The date and time that the datamart was last modified"
},
"configuredBy": {
"type": "string",
"description": "The name of the datamart owner"
}
}
},
"DatamartAuthoringPropertiesById": {
"properties": {
"modifiedById": {
"type": "string",
"description": "The ID of the last user that modified the datamart"
},
"configuredById": {
"type": "string",
"description": "The ID of the datamart owner"
}
}
},
"DatamartUpstreamProperties": {
"properties": {
"upstreamDataflows": {
"type": "array",
"description": "The list of all the dataflows this item depends on",
"items": {
"$ref": "#/definitions/DependentDataflow"
}
},
"upstreamDatamarts": {
"type": "array",
"description": "The list of all the datamarts this item depends on",
"items": {
"$ref": "#/definitions/DependentDatamart"
}
}
}
},
"DatamartDatasourceUsagesProperties": {
"properties": {
"datasourceUsages": {
"type": "array",
"description": "The data source usages",
"items": {
"$ref": "#/definitions/DatasourceUsage"
}
}
}
},
"DatamartEndorsmentProperties": {
"properties": {
"endorsementDetails": {
"$ref": "#/definitions/EndorsementDetails",
"description": "The datamart endorsement details"
}
}
},
"DatamartSensitivityLabelProperties": {
"properties": {
"sensitivityLabel": {
"$ref": "#/definitions/SensitivityLabel",
"description": "The datamart sensitivity label"
}
}
},
"DatamartUserProperties": {
"properties": {
"users": {
"type": "array",
"description": "The user access details for a Power BI datamart.",
"items": {
"$ref": "#/definitions/DatamartUser"
}
}
}
},
"SubscriptionProperties": {
"properties": {
"subscriptions": {
"type": "array",
"description": "(Empty Value) The subscription details for a Power BI item (such as a report or a dashboard). This property will be removed from the payload response in an upcoming release. You can retrieve subscription information for a Power BI report by using the [Get Report Subscriptions as Admin](/rest/api/power-bi/admin/reports-get-report-subscriptions-as-admin) API call.",
"items": {
"$ref": "#/definitions/Subscription"
}
}
}
},
"RelatedDatasetProperties": {
"properties": {
"datasetWorkspaceId": {
"type": "string",
"format": "uuid",
"description": "The workspace ID of the related dataset, returned only if the related dataset belongs to a different workspace"
}
}
},
"Report": {
"description": "A Power BI report. The API returns a subset of the following list of report properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/ReportBaseProperties"
},
{
"$ref": "#/definitions/ReportNavigationProperties"
},
{
"$ref": "#/definitions/ReportUserProperties"
},
{
"$ref": "#/definitions/SubscriptionProperties"
}
]
},
"AdminReport": {
"description": "A Power BI report returned by Admin APIs. The API returns a subset of the following list of report properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/ReportBaseProperties"
},
{
"$ref": "#/definitions/ReportNavigationProperties"
},
{
"$ref": "#/definitions/ReportAuthoringProperties"
},
{
"$ref": "#/definitions/ReportUserProperties"
},
{
"$ref": "#/definitions/SubscriptionProperties"
},
{
"$ref": "#/definitions/ReportWorkspaceIdProperty"
}
]
},
"WorkspaceInfoReport": {
"description": "A Power BI report returned by Workspace Info APIs. The API returns a subset of the following list of report properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/ReportBaseProperties"
},
{
"$ref": "#/definitions/ReportAuthoringProperties"
},
{
"$ref": "#/definitions/ReportAuthoringPropertiesById"
},
{
"$ref": "#/definitions/EndorsmentProperties"
},
{
"$ref": "#/definitions/SensitivityProperties"
},
{
"$ref": "#/definitions/ReportUserProperties"
},
{
"$ref": "#/definitions/RelatedDatasetProperties"
}
]
},
"WorkspaceInfoDatamart": {
"description": "A Power BI datamart returned by Workspace Info APIs. The API returns a subset of the following list of datamart properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DatamartBaseProperties"
},
{
"$ref": "#/definitions/DatamartEndorsmentProperties"
},
{
"$ref": "#/definitions/DatamartSensitivityLabelProperties"
},
{
"$ref": "#/definitions/DatamartAuthoringProperties"
},
{
"$ref": "#/definitions/DatamartAuthoringPropertiesById"
},
{
"$ref": "#/definitions/DatamartUpstreamProperties"
},
{
"$ref": "#/definitions/DatamartDatasourceUsagesProperties"
},
{
"$ref": "#/definitions/DatamartUserProperties"
}
]
},
"Page": {
"description": "A Power BI report page",
"properties": {
"name": {
"type": "string",
"description": "The name of the report page"
},
"displayName": {
"type": "string",
"description": "The display name of the report page"
},
"order": {
"type": "integer",
"format": "int32",
"description": "The order of the report page"
}
}
},
"DashboardBaseProperties": {
"required": [
"id"
],
"description": "Power BI dashboard common properties. The API returns a subset of the following list of report properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The dashboard ID"
},
"displayName": {
"type": "string",
"description": "The display name of the dashboard"
},
"isReadOnly": {
"type": "boolean",
"description": "Whether the dashboard is read-only"
},
"appId": {
"type": "string",
"description": "The app ID, returned only if the dashboard belongs to an app"
}
}
},
"DashboardNavigationProperties": {
"description": "A list of navigation related properties of a Dashboard.",
"properties": {
"webUrl": {
"type": "string",
"description": "The web URL of the dashboard"
},
"embedUrl": {
"type": "string",
"description": "The embed URL of the dashboard"
}
}
},
"DashboardUserProperties": {
"properties": {
"users": {
"type": "array",
"description": "(Empty value) The dashboard user access details. This property will be removed from the payload response in an upcoming release. You can retrieve user information on a Power BI dashboard by using the [Get Dashboard Users as Admin](/rest/api/power-bi/admin/dashboards-get-dashboard-users-as-admin) API call, or the [PostWorkspaceInfo](/rest/api/power-bi/admin/workspace-info-post-workspace-info) API call with the `getArtifactUsers` parameter.",
"items": {
"$ref": "#/definitions/DashboardUser"
}
}
}
},
"DataClassificationProperties": {
"properties": {
"dataClassification": {
"type": "string",
"description": "The data classification tag of a Power BI item (such as a report or a dashboard)"
}
}
},
"AdminDashboardTilesProperties": {
"properties": {
"tiles": {
"type": "array",
"description": "The tiles that belong to the dashboard",
"items": {
"$ref": "#/definitions/AdminTile"
}
}
}
},
"WorkspaceInfoDashboardTilesProperties": {
"properties": {
"tiles": {
"type": "array",
"description": "The tiles that belong to the dashboard",
"items": {
"$ref": "#/definitions/WorkspaceInfoTile"
}
}
}
},
"DashboardWorkspaceIdProperty": {
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The workspace ID (GUID) of the dashboard. This property will be returned only in GetDashboardsAsAdmin."
}
}
},
"Dashboard": {
"required": [
"id"
],
"description": "A Power BI dashboard. The API returns a subset of the following list of dashboard properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DashboardBaseProperties"
},
{
"$ref": "#/definitions/DashboardNavigationProperties"
},
{
"$ref": "#/definitions/DashboardUserProperties"
},
{
"$ref": "#/definitions/SubscriptionProperties"
}
]
},
"AdminDashboard": {
"required": [
"id"
],
"description": "A Power BI dashboard returned by Admin APIs. The API returns a subset of the following list of dashboard properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DashboardBaseProperties"
},
{
"$ref": "#/definitions/DashboardNavigationProperties"
},
{
"$ref": "#/definitions/DashboardWorkspaceIdProperty"
},
{
"$ref": "#/definitions/AdminDashboardTilesProperties"
},
{
"$ref": "#/definitions/DashboardUserProperties"
},
{
"$ref": "#/definitions/SubscriptionProperties"
}
]
},
"WorkspaceInfoDashboard": {
"required": [
"id"
],
"description": "A Power BI dashboard returned by WorkspaceInfo APIs. The API returns a subset of the following list of dashboard properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DashboardBaseProperties"
},
{
"$ref": "#/definitions/DataClassificationProperties"
},
{
"$ref": "#/definitions/SensitivityProperties"
},
{
"$ref": "#/definitions/WorkspaceInfoDashboardTilesProperties"
},
{
"$ref": "#/definitions/DashboardUserProperties"
}
]
},
"TileBaseProperties": {
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The tile ID"
},
"title": {
"type": "string",
"description": "The display name of the tile "
},
"reportId": {
"type": "string",
"format": "uuid",
"description": "The report ID. Available only for tiles created from a report."
},
"datasetId": {
"type": "string",
"description": "The dataset ID. Available only for tiles created from a report or by using a dataset, such as Q&A tiles."
}
}
},
"TileLayoutProperties": {
"properties": {
"rowSpan": {
"type": "integer",
"description": "The number of tile span rows"
},
"colSpan": {
"type": "integer",
"description": "The number of tile span columns"
}
}
},
"TileEmbedProperties": {
"properties": {
"embedUrl": {
"type": "string",
"description": "The embed URL of the tile"
},
"embedData": {
"type": "string",
"description": "The embed data for the tile"
}
}
},
"Tile": {
"description": "A Power BI tile",
"allOf": [
{
"$ref": "#/definitions/TileBaseProperties"
},
{
"$ref": "#/definitions/TileLayoutProperties"
},
{
"$ref": "#/definitions/TileEmbedProperties"
}
]
},
"AdminTile": {
"description": "A Power BI tile returned by Admin APIs.",
"allOf": [
{
"$ref": "#/definitions/TileBaseProperties"
},
{
"$ref": "#/definitions/TileLayoutProperties"
},
{
"$ref": "#/definitions/TileEmbedProperties"
}
]
},
"WorkspaceInfoTile": {
"description": "A Power BI tile returned by WorkspaceInfo APIs",
"allOf": [
{
"$ref": "#/definitions/TileBaseProperties"
},
{
"$ref": "#/definitions/RelatedDatasetProperties"
}
]
},
"GroupBaseProperties": {
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The workspace ID"
},
"name": {
"type": "string",
"description": "The group name"
}
}
},
"GroupExtendedProperties": {
"properties": {
"isReadOnly": {
"type": "boolean",
"description": "Whether the group is read-only"
},
"isOnDedicatedCapacity": {
"type": "boolean",
"description": "Whether the group is assigned to a dedicated capacity"
},
"capacityId": {
"type": "string",
"format": "uuid",
"description": "The capacity ID"
},
"dataflowStorageId": {
"type": "string",
"format": "uuid",
"description": "The Power BI dataflow storage account ID"
},
"defaultDatasetStorageFormat": {
"description": "The default dataset storage format in the workspace. Returned only when `isOnDedicatedCapacity` is `true`",
"$ref": "#/definitions/DefaultDatasetStorageFormat"
},
"logAnalyticsWorkspace": {
"description": "The Log Analytics workspace assigned to the group. This is returned only when retrieving a single group.",
"$ref": "#/definitions/AzureResource"
}
}
},
"GroupAdminProperties": {
"properties": {
"description": {
"type": "string",
"description": "The group description"
},
"type": {
"description": "The type of group being returned.",
"$ref": "#/definitions/GroupType"
},
"state": {
"type": "string",
"description": "The group state"
},
"users": {
"type": "array",
"description": "(Empty value) The users that belong to the group and their access rights. This property will be removed from the payload response in an upcoming release. You can retrieve user information on a Power BI item (such as a report or a dashboard) by using the [Get Group Users As Admin](/rest/api/power-bi/admin/groups-get-group-users-as-admin) API call, or the [PostWorkspaceInfo](/rest/api/power-bi/admin/workspace-info-post-workspace-info) API call with the `getArtifactUsers` parameter.",
"items": {
"$ref": "#/definitions/GroupUser"
}
},
"reports": {
"type": "array",
"description": "The reports that belong to the group",
"items": {
"$ref": "#/definitions/AdminReport"
}
},
"dashboards": {
"type": "array",
"description": "The dashboards that belong to the group",
"items": {
"$ref": "#/definitions/AdminDashboard"
}
},
"datasets": {
"type": "array",
"description": "The datasets that belong to the group",
"items": {
"$ref": "#/definitions/AdminDataset"
}
},
"dataflows": {
"type": "array",
"description": "The dataflows that belong to the group",
"items": {
"$ref": "#/definitions/AdminDataflow"
}
},
"workbooks": {
"type": "array",
"description": "The workbooks that belong to the group",
"items": {
"$ref": "#/definitions/Workbook"
}
},
"pipelineId": {
"type": "string",
"format": "uuid",
"description": "The deployment pipeline ID that the workspace is assigned to."
},
"hasWorkspaceLevelSettings": {
"type": "boolean",
"description": "Whether the workspace has custom settings"
}
}
},
"RefreshableGroup": {
"description": "A Power BI group associated to a Refreshable item",
"allOf": [
{
"$ref": "#/definitions/GroupBaseProperties"
}
]
},
"UpdateGroupRequest": {
"description": "An update request for the group",
"properties": {
"name": {
"type": "string",
"description": "The group name"
},
"defaultDatasetStorageFormat": {
"description": "The default dataset storage format in the group",
"$ref": "#/definitions/DefaultDatasetStorageFormat"
}
}
},
"Group": {
"description": "A Power BI group",
"allOf": [
{
"$ref": "#/definitions/GroupBaseProperties"
},
{
"$ref": "#/definitions/GroupExtendedProperties"
}
]
},
"AdminGroup": {
"description": "A Power BI group returned by admin APIs",
"allOf": [
{
"$ref": "#/definitions/GroupBaseProperties"
},
{
"$ref": "#/definitions/GroupExtendedProperties"
},
{
"$ref": "#/definitions/GroupAdminProperties"
}
]
},
"App": {
"required": [
"id"
],
"description": "A Power BI installed app",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The app ID"
},
"name": {
"type": "string",
"description": "The app name"
},
"description": {
"type": "string",
"description": "The app description"
},
"lastUpdate": {
"type": "string",
"format": "date-time",
"description": "The date and time the app was last updated"
},
"publishedBy": {
"type": "string",
"description": "The app publisher"
}
}
},
"AdminApp": {
"allOf": [
{
"$ref": "#/definitions/App"
}
],
"properties": {
"workspaceId": {
"type": "string",
"description": "Associated workspace for the app"
}
}
},
"Subscription": {
"required": [
"id"
],
"description": "An email subscription for a Power BI item (such as a report or a dashboard)",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The subscription ID"
},
"title": {
"type": "string",
"description": "The app name"
},
"artifactId": {
"type": "string",
"format": "uuid",
"description": "The ID of the subscribed Power BI item (such as a report or a dashboard)"
},
"artifactDisplayName": {
"type": "string",
"description": "The name of the subscribed Power BI item (such as a report or a dashboard)"
},
"subArtifactDisplayName": {
"type": "string",
"description": "The page name of the subscribed Power BI item, if it's a report."
},
"artifactType": {
"type": "string",
"description": "The type of Power BI item (for example a `Report`, `Dashboard`, or `Dataset`)"
},
"isEnabled": {
"type": "boolean",
"description": "Whether the email subscription is enabled"
},
"frequency": {
"type": "string",
"description": "The frequency of the email subscription"
},
"startDate": {
"type": "string",
"format": "date-time",
"description": "The start date and time of the email subscription"
},
"endDate": {
"type": "string",
"format": "date-time",
"description": "The end date and time of the email subscription"
},
"linkToContent": {
"type": "boolean",
"description": "Whether a subscription link exists in the email subscription"
},
"previewImage": {
"type": "boolean",
"description": "Whether a screenshot of the report exists in the email subscription"
},
"attachmentFormat": {
"type": "string",
"description": "Format of the report attached in the email subscription"
},
"users": {
"type": "array",
"description": "The details of each email subscriber. When using the [Get User Subscriptions As Admin](/rest/api/power-bi/admin/users-get-user-subscriptions-as-admin) API call, the returned value is an empty array (null). This property will be removed from the payload response in an upcoming release. You can retrieve subscription information on a Power BI report or dashboard by using the [Get Report Subscriptions As Admin](/rest/api/power-bi/admin/reports-get-report-subscriptions-as-admin) or [Get Dashboard Subscriptions As Admin](/rest/api/power-bi/admin/dashboards-get-dashboard-subscriptions-as-admin) API calls.",
"items": {
"$ref": "#/definitions/SubscriptionUser"
}
}
}
},
"Subscriptions": {
"description": "OData response wrapper for a Power BI subscriptions",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "Power BI email subscription",
"items": {
"$ref": "#/definitions/Subscription"
}
}
}
},
"GatewayPublicKey": {
"description": "A Power BI gateway public key",
"properties": {
"exponent": {
"type": "string",
"description": "The public key exponent"
},
"modulus": {
"type": "string",
"description": "The public key modulus"
}
}
},
"Gateway": {
"required": [
"id"
],
"description": "A Power BI gateway",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster and is similar to the gateway cluster ID."
},
"name": {
"type": "string",
"description": "The gateway name"
},
"type": {
"type": "string",
"description": "The gateway type"
},
"gatewayAnnotation": {
"type": "string",
"description": "Gateway metadata in JSON format"
},
"publicKey": {
"$ref": "#/definitions/GatewayPublicKey",
"description": "The gateway public key"
},
"gatewayStatus": {
"type": "string",
"description": "The gateway connectivity status"
}
}
},
"PublishDatasourceToGatewayRequest": {
"required": [
"dataSourceType",
"connectionDetails",
"credentialDetails",
"dataSourceName"
],
"description": "A publish data source to gateway request",
"properties": {
"dataSourceType": {
"type": "string",
"description": "The data source type"
},
"connectionDetails": {
"type": "string",
"description": "The connection details"
},
"credentialDetails": {
"$ref": "#/definitions/CredentialDetails"
},
"dataSourceName": {
"type": "string",
"description": "The data source name"
}
}
},
"CredentialDetails": {
"required": [
"credentials",
"credentialType",
"encryptedConnection",
"encryptionAlgorithm",
"privacyLevel"
],
"description": "The credential details",
"properties": {
"credentials": {
"type": "string",
"description": "The credentials, which depend on the 'credentialType' value. For more information, see [Update Datasource](/rest/api/power-bi/gateways/update-datasource#examples) examples."
},
"credentialType": {
"type": "string",
"description": "The credential type",
"enum": [
"Basic",
"Windows",
"Anonymous",
"OAuth2",
"Key",
"SAS"
],
"x-ms-enum": {
"name": "credentialType",
"modelAsExtensible": true
}
},
"encryptedConnection": {
"type": "string",
"description": "Whether to encrypt the data source connection. The API call will fail if you select encryption and Power BI is unable to establish an encrypted connection with the data source.",
"enum": [
"Encrypted",
"NotEncrypted"
],
"x-ms-enum": {
"name": "encryptedConnection",
"modelAsExtensible": true
}
},
"encryptionAlgorithm": {
"type": "string",
"description": "The encryption algorithm. For a cloud data source, specify `None`. For an on-premises data source, specify `RSA-OAEP` and use the gateway public key to encrypt the credentials.",
"enum": [
"None",
"RSA-OAEP"
],
"x-ms-enum": {
"name": "encryptionAlgorithm",
"modelAsExtensible": true
}
},
"privacyLevel": {
"type": "string",
"description": "The privacy level, which is relevant when combining data from multiple sources.",
"enum": [
"None",
"Public",
"Organizational",
"Private"
],
"x-ms-enum": {
"name": "privacyLevel",
"modelAsExtensible": true
}
},
"useCallerAADIdentity": {
"type": "boolean",
"description": "Whether the Azure AD identity (OAuth 2.0 credentials) of the API caller (which must be the data source owner) will be used to configure data source credentials (the owner OAuth access token). Typically, you would either use this flag or `useEndUserOAuth2Credentials`."
},
"useEndUserOAuth2Credentials": {
"type": "boolean",
"description": "Whether the end-user Azure AD identity (OAuth 2.0 credentials) is used when connecting to the data source in DirectQuery mode. Use with data sources that support [single sign-on (SSO)](/power-bi/connect-data/power-bi-data-sources#single-sign-on-sso-for-directquery-sources). Typically, you would either use this flag or `useCallerAADIdentity`."
}
}
},
"GatewayDatasourceCredentialDetails": {
"description": "The data source credential details",
"properties": {
"useEndUserOAuth2Credentials": {
"type": "boolean",
"description": "Whether the end-user Azure AD identity (OAuth 2.0 credentials) is used when connecting to the data source in DirectQuery mode. Use with data sources that support [single sign-on (SSO)](/power-bi/connect-data/power-bi-data-sources#single-sign-on-sso-for-directquery-sources)."
}
}
},
"UpdateDatasourceRequest": {
"required": [
"credentialDetails"
],
"description": "An update data source to gateway request",
"properties": {
"credentialDetails": {
"$ref": "#/definitions/CredentialDetails"
}
}
},
"BindToGatewayRequest": {
"required": [
"gatewayObjectId"
],
"description": "The bind dataset to gateway request",
"properties": {
"gatewayObjectId": {
"type": "string",
"format": "uuid",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster and is similar to the gateway cluster ID."
},
"datasourceObjectIds": {
"type": "array",
"description": "The unique identifiers for the data sources in the gateway",
"items": {
"type": "string",
"format": "uuid",
"description": "A data source ID"
}
}
}
},
"ConnectionDetails": {
"required": [
"connectionString"
],
"description": "A connection string wrapper",
"properties": {
"connectionString": {
"type": "string",
"description": "A dataset connection string"
}
}
},
"Refresh": {
"description": "A Power BI refresh history entry",
"properties": {
"refreshType": {
"type": "string",
"description": "The type of refresh request",
"enum": [
"Scheduled",
"OnDemand",
"ViaApi",
"ViaXmlaEndpoint",
"ViaEnhancedApi",
"OnDemandTraining"
],
"x-ms-enum": {
"name": "RefreshType",
"modelAsExtensible": true,
"values": [
{
"value": "Scheduled",
"description": "The refresh was triggered by a dataset refresh schedule setting"
},
{
"value": "OnDemand",
"description": "The refresh was triggered interactively through the Power BI portal"
},
{
"value": "ViaApi",
"description": "The refresh was triggered by an API call"
},
{
"value": "ViaXmlaEndpoint",
"description": "The refresh was triggered through Power BI public XMLA endpoint"
},
{
"value": "ViaEnhancedApi",
"description": "The refresh was triggered by an enhanced refresh REST API call"
},
{
"value": "OnDemandTraining",
"description": "The refresh was triggered interactively through the Power BI portal with automatic aggregations training"
}
]
}
},
"startTime": {
"type": "string",
"format": "date-time",
"description": "The start date and time of the refresh"
},
"endTime": {
"type": "string",
"format": "date-time",
"description": "The end date and time of the refresh (may be empty if a refresh is in progress)"
},
"serviceExceptionJson": {
"type": "string",
"description": "Failure error code in JSON format (empty if no error)"
},
"status": {
"type": "string",
"description": "- `Unknown` if the completion state is unknown or a refresh is in progress.\n- `Completed` for a successfully completed refresh.\n- `Failed` for an unsuccessful refresh (`serviceExceptionJson` will contain the error code).\n- `Disabled` if the refresh is disabled by a selective refresh."
},
"requestId": {
"type": "string",
"description": "The identifier of the refresh request. Provide this identifier in all service requests."
},
"refreshAttempts": {
"type": "array",
"description": "The refresh attempt list.",
"items": {
"$ref": "#/definitions/RefreshAttempt"
}
}
}
},
"RefreshAttempt": {
"description": "Power BI automatically makes multiple attempts to refresh a dataset if it experiences a refresh failure. This object contains information about each refresh attempt.",
"properties": {
"attemptId": {
"type": "integer",
"description": "The index of the refresh attempt."
},
"startTime": {
"type": "string",
"format": "date-time",
"description": "The start date and time of the refresh attempt."
},
"endTime": {
"type": "string",
"format": "date-time",
"description": "The end date and time of the refresh attempt. The value is void if the refresh attempt is in progress."
},
"serviceExceptionJson": {
"type": "string",
"description": "Failure error code in JSON format. Void if there's no error."
},
"type": {
"type": "string",
"description": "The type of refresh attempt.",
"enum": [
"Data",
"Query"
],
"x-ms-enum": {
"name": "RefreshAttemptType",
"modelAsExtensible": true,
"values": [
{
"value": "Data",
"description": "The refresh attempt to load data into the dataset."
},
{
"value": "Query",
"description": "The attempt to refresh premium query caches and dashboard tiles.u"
}
]
}
}
}
},
"RefreshRequest": {
"description": "Power BI refresh request",
"properties": {
"notifyOption": {
"type": "string",
"description": "Mail notification options",
"enum": [
"NoNotification",
"MailOnFailure",
"MailOnCompletion"
],
"x-ms-enum": {
"name": "NotifyOption",
"modelAsExtensible": true,
"values": [
{
"value": "NoNotification",
"description": "No notification will be sent"
},
{
"value": "MailOnFailure",
"description": "A mail notification will be sent on refresh failure"
},
{
"value": "MailOnCompletion",
"description": "A mail notification indicating success or failure will be sent on refresh completion"
}
]
}
}
},
"required": [
"notifyOption"
]
},
"DatasetRefreshRequest": {
"description": "Power BI dataset refresh request",
"properties": {
"notifyOption": {
"type": "string",
"description": "Mail notification options. This parameter is not applicable to enhanced refreshes or API operations with a service principal.",
"enum": [
"NoNotification",
"MailOnFailure",
"MailOnCompletion"
],
"x-ms-enum": {
"name": "NotifyOption",
"modelAsExtensible": true,
"values": [
{
"value": "NoNotification",
"description": "No notification will be sent"
},
{
"value": "MailOnFailure",
"description": "A mail notification will be sent on refresh failure"
},
{
"value": "MailOnCompletion",
"description": "A mail notification indicating success or failure will be sent on refresh completion"
}
]
}
},
"type": {
"type": "string",
"description": "The type of processing to perform",
"enum": [
"Full",
"ClearValues",
"Calculate",
"DataOnly",
"Automatic",
"Defragment"
],
"x-ms-enum": {
"name": "DatasetRefreshType",
"modelAsExtensible": true,
"values": [
{
"value": "Full",
"description": "For all partitions in the specified partition, table, or database, refresh data and recalculate all dependents. For a calculation partition, recalculate the partition and all its dependents."
},
{
"value": "ClearValues",
"description": "Clear values in this object and all its dependents"
},
{
"value": "Calculate",
"description": "Recalculate this object and all its dependents, but only if needed. This value doesn't force recalculation, except for volatile formulas."
},
{
"value": "DataOnly",
"description": "Refresh data in this object and clear all dependents"
},
{
"value": "Automatic",
"description": "If the object needs to be refreshed and recalculated, refresh and recalculate the object and all its dependents. Applies if the partition is in a state other than Ready."
},
{
"value": "Defragment",
"description": "Defragment the data in the specified table. As data is added to or removed from a table, the dictionaries of each column can become polluted with values that no longer exist in the actual column values. The defragment option will clean up the values in the dictionaries that are no longer used."
}
]
}
},
"commitMode": {
"type": "string",
"description": "Determines if objects will be committed in batches or only when complete",
"enum": [
"Transactional",
"PartialBatch"
],
"x-ms-enum": {
"name": "DatasetCommitMode",
"modelAsExtensible": true,
"values": [
{
"value": "Transactional",
"description": "Commit the whole refresh operation as a transaction"
},
{
"value": "PartialBatch",
"description": "Commit the refresh operation in batches. When utilizing `partialBatch` mode, the refresh operation does not occur within a transaction. Consequently, each command will be committed individually, and in the event of a failure, the model may end up in a state where only a subset of the data is loaded, or the table is left empty. If you desire to guarantee the preservation of previous data in case of a failure, you should execute the operation with `commitMode = transactional.`"
}
]
}
},
"maxParallelism": {
"type": "integer",
"description": "The maximum number of threads on which to run parallel processing commands"
},
"retryCount": {
"type": "integer",
"description": "Number of times the operation will retry before failing. Temporary internal errors may trigger a retry of the refresh, even when this parameter is set to 0."
},
"objects": {
"type": "array",
"description": "An array of objects to be processed",
"items": {
"$ref": "#/definitions/DatasetRefreshObjects"
}
},
"applyRefreshPolicy": {
"type": "boolean",
"description": "Determine if the policy is applied or not"
},
"effectiveDate": {
"type": "string",
"format": "date-time",
"description": "If an incremental refresh policy is applied, the `effectiveDate` parameter overrides the current date."
}
},
"required": [
"notifyOption"
]
},
"DatasetRefreshDetail": {
"description": "A Power BI refresh detail entry",
"properties": {
"startTime": {
"type": "string",
"format": "date-time",
"description": "The start date and time of the refresh"
},
"endTime": {
"type": "string",
"format": "date-time",
"description": "The end date and time of the refresh (may be empty if a refresh is in progress)"
},
"type": {
"description": "The type of processing to perform",
"$ref": "#/definitions/DatasetRefreshDetailType"
},
"commitMode": {
"type": "string",
"description": "Determines if objects will be committed in batches or only when complete",
"enum": [
"Transactional",
"PartialBatch"
],
"x-ms-enum": {
"name": "DatasetRefreshDetailCommitMode",
"modelAsString": true,
"values": [
{
"value": "Transactional",
"description": "Commit the whole refresh operation as a transaction"
},
{
"value": "PartialBatch",
"description": "Commit the refresh operation in batches"
}
]
}
},
"status": {
"type": "string",
"description": "Dataset operation general status",
"enum": [
"Unknown",
"Completed",
"Failed",
"Disabled"
],
"x-ms-enum": {
"name": "DatasetRefreshDetailStatus",
"modelAsString": true,
"values": [
{
"value": "Unknown",
"description": "The completion state is unknown or a refresh is in progress"
},
{
"value": "Completed",
"description": "The refresh operation is successfully completed"
},
{
"value": "Failed",
"description": "The refresh operation is unsuccessful"
},
{
"value": "Disabled",
"description": "The refresh operation is disabled by a selective refresh"
}
]
}
},
"extendedStatus": {
"type": "string",
"description": "Dataset operation detailed status",
"enum": [
"Unknown",
"NotStarted",
"InProgress",
"Completed",
"TimedOut",
"Failed",
"Disabled",
"Cancelled"
],
"x-ms-enum": {
"name": "DatasetRefreshDetailExtendedStatus",
"modelAsString": true,
"values": [
{
"value": "Unknown",
"description": "The completion state is unknown"
},
{
"value": "NotStarted",
"description": "The refresh operation isn't started"
},
{
"value": "InProgress",
"description": "The refresh operation is in progress"
},
{
"value": "Completed",
"description": "The refresh operation is successfully completed"
},
{
"value": "TimedOut",
"description": "The refresh operation is timed out"
},
{
"value": "Failed",
"description": "The refresh operation is unsuccessful"
},
{
"value": "Disabled",
"description": "The refresh operation is disabled by a selective refresh"
},
{
"value": "Cancelled",
"description": "The refresh operation has been cancelled by customer"
}
]
}
},
"currentRefreshType": {
"description": "The type of processing for the current iteration. This is useful when `commitMode` is set to `PartialBatch`",
"$ref": "#/definitions/DatasetRefreshDetailType"
},
"numberOfAttempts": {
"type": "integer",
"description": "The number of attempts for the refresh request"
},
"objects": {
"type": "array",
"description": "An array of objects included in the refresh request",
"items": {
"$ref": "#/definitions/DatasetRefreshObjects"
}
},
"messages": {
"type": "array",
"description": "An array of engine error or warning messages for the refresh request",
"items": {
"$ref": "#/definitions/EngineMessage"
}
},
"refreshAttempts": {
"type": "array",
"description": "The refresh attempt list.",
"items": {
"$ref": "#/definitions/RefreshAttempt"
}
}
}
},
"DatasetRefreshDetailType": {
"type": "string",
"description": "The type of processing to perform",
"enum": [
"Full",
"ClearValues",
"Calculate",
"DataOnly",
"Automatic",
"Defragment"
],
"x-ms-enum": {
"name": "DatasetRefreshDetailType",
"modelAsString": true,
"values": [
{
"value": "Full",
"description": "For all partitions in the specified partition, table, or database, refresh data and recalculate all dependents. For a calculation partition, recalculate the partition and all its dependents."
},
{
"value": "ClearValues",
"description": "Clear values in this object and all its dependents"
},
{
"value": "Calculate",
"description": "Recalculate this object and all its dependents, but only if needed. This value doesn't force recalculation, except for volatile formulas."
},
{
"value": "DataOnly",
"description": "Refresh data in this object and clear all dependents"
},
{
"value": "Automatic",
"description": "If the object needs to be refreshed and recalculated, refresh and recalculate the object and all its dependents. Applies if the partition is in a state other than Ready."
},
{
"value": "Defragment",
"description": "Defragment the data in the specified table. As data is added to or removed from a table, the dictionaries of each column can become polluted with values that no longer exist in the actual column values. The defragment option will clean up the values in the dictionaries that are no longer used."
}
]
}
},
"EngineMessage": {
"description": "The error or warning message from engine for enhanced refresh",
"properties": {
"code": {
"type": "string",
"description": "The error code in hex format"
},
"message": {
"type": "string",
"description": "The text of error or warning message"
},
"type": {
"type": "string",
"description": "The type of the error",
"enum": [
"Error",
"Warning"
],
"x-ms-enum": {
"name": "RefreshEngineErrorType",
"modelAsString": true,
"values": [
{
"value": "Error",
"description": "Error message"
},
{
"value": "Warning",
"description": "Warning message"
}
]
}
}
}
},
"DatasetRefreshObjects": {
"description": "Power BI dataset refresh target",
"properties": {
"table": {
"type": "string",
"description": "Table to refresh"
},
"partition": {
"type": "string",
"description": "Partition to refresh"
}
}
},
"RefreshScheduleRequest": {
"required": [
"value"
],
"description": "Power BI refresh schedule request",
"properties": {
"value": {
"description": "An object that contains the details of a refresh schedule",
"$ref": "#/definitions/RefreshSchedule"
}
}
},
"RefreshSchedule": {
"description": "A Power BI refresh schedule for [imported model](/power-bi/connect-data/refresh-data#datasets-in-import-mode)",
"properties": {
"days": {
"type": "array",
"description": "The days on which to execute the refresh",
"items": {
"type": "string",
"description": "Days of week",
"enum": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
],
"x-ms-enum": {
"name": "days",
"modelAsExtensible": true
}
}
},
"times": {
"type": "array",
"description": "The times of day to execute the refresh",
"items": {
"type": "string",
"description": "A time of day in the format of `hh:mm`, where `hh` is the hour (from *00* to *23*) and `mm` is the minute (can only be *00* or *30*)."
}
},
"enabled": {
"type": "boolean",
"description": "Whether the refresh is enabled"
},
"localTimeZoneId": {
"type": "string",
"description": "The ID of the time zone to use. For more information, see [Time zone info](/dotnet/api/system.timezoneinfo.id)."
},
"NotifyOption": {
"type": "string",
"description": "The notification option on termination of a scheduled refresh. Service principals only support the `NoNotification` value.",
"enum": [
"NoNotification",
"MailOnFailure"
],
"x-ms-enum": {
"name": "ScheduleNotifyOption",
"modelAsExtensible": true,
"values": [
{
"value": "NoNotification",
"description": "No notification will be sent"
},
{
"value": "MailOnFailure",
"description": "A mail notification will be sent on refresh failure"
}
]
}
}
}
},
"DefaultDatasetStorageFormat": {
"type": "string",
"description": "The default dataset storage format in the group",
"enum": [
"Small",
"Large"
],
"x-ms-enum": {
"name": "DefaultDatasetStorageFormat",
"modelAsString": true,
"values": [
{
"value": "Small",
"description": "Small dataset storage format"
},
{
"value": "Large",
"description": "Large dataset storage format"
}
]
}
},
"DirectQueryRefreshScheduleRequest": {
"required": [
"value"
],
"description": "Power BI refresh schedule request for DirectQuery or LiveConnection ",
"properties": {
"value": {
"description": "An object containing the refresh schedule details for DirectQuery or LiveConnection",
"$ref": "#/definitions/DirectQueryRefreshSchedule"
}
}
},
"DirectQueryRefreshSchedule": {
"description": "A Power BI refresh schedule for DirectQuery or LiveConnection, specifying either the frequency or a combination of days and times.",
"properties": {
"frequency": {
"type": "integer",
"description": "The interval in minutes between successive refreshes. Supported values are *15*, *30*, *60*, *120*, and *180*."
},
"days": {
"type": "array",
"description": "The days on which to execute the refresh",
"items": {
"type": "string",
"description": "Days of week",
"enum": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
],
"x-ms-enum": {
"name": "days",
"modelAsExtensible": true
}
}
},
"times": {
"type": "array",
"description": "The times of day to execute the refresh",
"items": {
"type": "string",
"description": "A time of day in the format of `hh:mm`, where `hh` is the hour (from *00* to *23*) and `mm` is the minute (can only be *00* or *30*)."
}
},
"localTimeZoneId": {
"type": "string",
"description": "The ID of the time zone to use. For more information, see [Time zone info](/dotnet/api/system.timezoneinfo.id)"
}
}
},
"MashupParameter": {
"description": "A Power BI dataset parameter",
"properties": {
"name": {
"type": "string",
"description": "The parameter name"
},
"type": {
"type": "string",
"description": "The parameter type"
},
"currentValue": {
"type": "string",
"description": "The current value of the parameter"
},
"isRequired": {
"type": "boolean",
"description": "Whether the dataset parameter is required"
},
"suggestedValues": {
"type": "array",
"description": "A list of suggested parameter values",
"items": {
"type": "string"
}
}
},
"required": [
"name",
"type",
"isRequired"
]
},
"UpdateMashupParameterDetails": {
"description": "The update details for a Power BI dataset parameter",
"properties": {
"name": {
"type": "string",
"description": "The parameter name"
},
"newValue": {
"type": "string",
"description": "The new value for the parameter"
}
},
"required": [
"name"
]
},
"UpdateMashupParametersRequest": {
"description": "An update request for a Power BI dataset parameter",
"properties": {
"updateDetails": {
"type": "array",
"description": "A list of dataset parameters to update",
"items": {
"$ref": "#/definitions/UpdateMashupParameterDetails"
}
}
},
"required": [
"updateDetails"
]
},
"MashupParameters": {
"description": "The OData response wrapper for a list of Power BI dataset parameters",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "A list of dataset parameters",
"items": {
"$ref": "#/definitions/MashupParameter"
}
}
}
},
"User": {
"required": [
"principalType",
"identifier"
],
"description": "A Power BI user",
"properties": {
"emailAddress": {
"type": "string",
"description": "Email address of the user"
},
"displayName": {
"type": "string",
"description": "Display name of the principal"
},
"identifier": {
"type": "string",
"description": "Identifier of the principal"
},
"graphId": {
"type": "string",
"description": "Identifier of the principal in Microsoft Graph. Only available for admin APIs."
},
"userType": {
"type": "string",
"description": "Type of the user."
},
"principalType": {
"$ref": "#/definitions/PrincipalType"
},
"profile": {
"$ref": "#/definitions/ServicePrincipalProfile"
}
}
},
"Principal": {
"required": [
"identifier",
"principalType"
],
"description": "A Power BI principal with access to the artifact",
"properties": {
"identifier": {
"type": "string",
"description": "For principal type `User`, provide the *UPN*. Otherwise provide the [object ID](/power-bi/developer/embedded/embedded-troubleshoot#what-is-the-difference-between-application-object-id-and-principal-object-id) of the principal."
},
"principalType": {
"$ref": "#/definitions/PrincipalType"
}
}
},
"DatasourceUser": {
"required": [
"datasourceAccessRight"
],
"description": "A Power BI user with access to the data source",
"properties": {
"datasourceAccessRight": {
"type": "string",
"description": "The access right (permission level) that a user has on the data source",
"enum": [
"None",
"Read",
"ReadOverrideEffectiveIdentity"
],
"x-ms-enum": {
"name": "DatasourceUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "No permission to access the data source. Only applies when updating user permissions."
},
{
"value": "Read",
"description": "Datasets owned by the user have read access to the data source"
},
{
"value": "ReadOverrideEffectiveIdentity",
"description": "The user can override the effective identity for Power BI Embedded. Applicable only for on-premises Analysis Services data sources."
}
]
}
},
"emailAddress": {
"type": "string",
"description": "The email address of the user"
},
"displayName": {
"type": "string",
"description": "The display name of the principal"
},
"identifier": {
"type": "string",
"description": "The [object ID](/power-bi/developer/embedded/embedded-troubleshoot#what-is-the-difference-between-application-object-id-and-principal-object-id) of the principal"
},
"principalType": {
"$ref": "#/definitions/PrincipalType"
},
"profile": {
"$ref": "#/definitions/ServicePrincipalProfile"
}
}
},
"ServicePrincipalProfiles": {
"description": "Odata response wrapper for a Power BI service principal profile collection.",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The service principal profile collection",
"items": {
"$ref": "#/definitions/ServicePrincipalProfile"
}
}
}
},
"AdminServicePrincipalProfiles": {
"description": "Odata response wrapper for a Power BI service principal profile collection.",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The service principal profile collection",
"items": {
"$ref": "#/definitions/AdminServicePrincipalProfile"
}
}
}
},
"ServicePrincipalProfile": {
"required": [
"id"
],
"description": "A Power BI service principal profile. Only relevant for [Power BI Embedded multi-tenancy solution](/power-bi/developer/embedded/embed-multi-tenancy).",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The service principal profile ID"
},
"displayName": {
"type": "string",
"description": "The service principal profile name"
}
}
},
"AdminServicePrincipalProfile": {
"required": [
"id"
],
"description": "A Power BI service principal profile. Only relevant for [Power BI Embedded multi-tenancy solution](/power-bi/developer/embedded/embed-multi-tenancy).",
"allOf": [
{
"$ref": "#/definitions/ServicePrincipalProfile"
}
],
"properties": {
"servicePrincipalId": {
"type": "string",
"format": "uuid",
"description": "The service principal ID"
}
}
},
"CreateOrUpdateProfileRequest": {
"required": [
"id"
],
"description": "A Power BI service principal profile create or update request",
"properties": {
"displayName": {
"type": "string",
"description": "The service principal profile name"
}
}
},
"GroupUser": {
"required": [
"groupUserAccessRight"
],
"description": "A Power BI user with access to the workspace",
"properties": {
"groupUserAccessRight": {
"type": "string",
"description": "The access right (permission level) that a user has on the workspace",
"enum": [
"None",
"Member",
"Admin",
"Contributor",
"Viewer"
],
"x-ms-enum": {
"name": "GroupUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "No access to workspace content"
},
{
"value": "Member",
"description": "Read, reshare and explore (ReadReshareExplore) access rights to workspace content"
},
{
"value": "Admin",
"description": "Administrator rights to workspace content"
},
{
"value": "Contributor",
"description": "Read and explore (ReadExplore) access to workspace content"
},
{
"value": "Viewer",
"description": "Read-only (Read) access to workspace content"
}
]
}
}
},
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"AppUser": {
"required": [
"appUserAccessRight"
],
"description": "A Power BI user access right entry for an app",
"properties": {
"appUserAccessRight": {
"type": "string",
"description": "The access right that the user has for the app",
"enum": [
"None",
"Read",
"ReadWrite",
"ReadReshare",
"ReadWriteReshare",
"ReadExplore",
"ReadCopy",
"ReadExploreCopy",
"ReadReshareExplore",
"ReadReshareExploreCopy",
"ReadWriteExplore",
"ReadWriteReshareExplore",
"ReadWriteExploreCopy",
"ReadReshareCopy",
"All"
],
"x-ms-enum": {
"name": "AppUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "No permission to content in app"
},
{
"value": "Read",
"description": "Grants Read access to content in app"
},
{
"value": "ReadWrite",
"description": "Grants Read and Write access to content in app"
},
{
"value": "ReadReshare",
"description": "Grants Read and Reshare access to content in app"
},
{
"value": "ReadWriteReshare",
"description": "Grants Read, Write and Reshare access to content in app"
},
{
"value": "ReadExplore",
"description": "Grants Read and Explore access to content in app"
},
{
"value": "ReadCopy",
"description": "Grants Read and Copy access to content in app"
},
{
"value": "ReadExploreCopy",
"description": "Grants Read, Explore and Copy access to content in app"
},
{
"value": "ReadReshareExploreCopy",
"description": "Grants Read, Reshare, Explore and Copy access to content in app"
},
{
"value": "ReadReshareExplore",
"description": "Grants Read, Reshare and Explore access to content in app"
},
{
"value": "ReadWriteExplore",
"description": "Grants Read, Write and Explore access to content in app"
},
{
"value": "ReadWriteReshareExplore",
"description": "Grants Read, Write, Reshare and Explore access to content in app"
},
{
"value": "ReadWriteExploreCopy",
"description": "Grants Read, Write, Explore and Copy access to content in app"
},
{
"value": "ReadReshareCopy",
"description": "Grants Read, Reshare, and Copy access to content in app"
},
{
"value": "All",
"description": "Grants Read, Write, Explore, Reshare and Copy access to content in app"
}
]
}
},
"emailAddress": {
"type": "string",
"description": "Email address of the user"
},
"displayName": {
"type": "string",
"description": "Display name of the principal"
},
"identifier": {
"type": "string",
"description": "Identifier of the principal"
},
"graphId": {
"type": "string",
"description": "Identifier of the principal in Microsoft Graph. Only available for admin APIs."
},
"principalType": {
"$ref": "#/definitions/PrincipalType"
}
}
},
"CapacityUser": {
"required": [
"capacityUserAccessRight"
],
"description": "A Power BI user access right entry for a capacity",
"properties": {
"capacityUserAccessRight": {
"type": "string",
"description": "The access right that the user has on the capacity",
"enum": [
"None",
"Assign",
"Admin"
],
"x-ms-enum": {
"name": "capacityUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "User doesn't have access to the capacity"
},
{
"value": "Assign",
"description": "User has contributor rights and can assign workspaces to the capacity"
},
{
"value": "Admin",
"description": "User has administrator rights on the capacity"
}
]
}
}
},
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"ReportUser": {
"required": [
"reportUserAccessRight"
],
"description": "A Power BI user access right entry for a report",
"properties": {
"reportUserAccessRight": {
"type": "string",
"description": "The access right that the user has for the report (permission level)",
"enum": [
"None",
"Read",
"ReadWrite",
"ReadReshare",
"ReadCopy",
"Owner"
],
"x-ms-enum": {
"name": "ReportUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "No permission to content in report"
},
{
"value": "Read",
"description": "Grants Read access to content in report"
},
{
"value": "ReadWrite",
"description": "Grants Read and Write access to content in report"
},
{
"value": "ReadReshare",
"description": "Grants Read and Reshare access to content in report"
},
{
"value": "ReadCopy",
"description": "Grants Read and Copy access to content in report"
},
{
"value": "Owner",
"description": "Grants Read, Write and Reshare access to content in report"
}
]
}
}
},
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"DatamartUser": {
"required": [
"datamartUserAccessRight"
],
"description": "A Power BI user access right entry for a report",
"properties": {
"datamartUserAccessRight": {
"type": "string",
"description": "The access right that the user has for the datamart (permission level)",
"enum": [
"None",
"Read",
"Write",
"Reshare",
"Explore",
"ReadWrite",
"ReadReshare",
"ReadWriteReshare",
"ReadExplore",
"ReadReshareExplore",
"ReadWriteExplore",
"ReadWriteReshareExplore"
],
"x-ms-enum": {
"name": "DatamartUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "No permission to content in datamart"
},
{
"value": "Read",
"description": "Grants Read access to content in datamart"
},
{
"value": "Write",
"description": "Grants write access to content in datamart"
},
{
"value": "Reshare",
"description": "Grants reshare access to content in datamart"
},
{
"value": "Explore",
"description": "Grants explore access to content in datamart"
},
{
"value": "ReadWrite",
"description": "Grants read and write access to content in datamart"
},
{
"value": "ReadReshare",
"description": "Grants read and reshare access to content in datamart"
},
{
"value": "ReadWriteReshare",
"description": "Grants read and write and reshare access to content in datamart"
},
{
"value": "ReadExplore",
"description": "Grants read and explore access to content in datamart"
},
{
"value": "ReadReshareExplore",
"description": "Grants read and reshare and explore access to content in datamart"
},
{
"value": "ReadWriteExplore",
"description": "Grants read and write and explore access to content in datamart"
},
{
"value": "ReadWriteReshareExplore",
"description": "Grants read and write and reshare and explore access to content in datamart"
}
]
}
}
},
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"DashboardUser": {
"required": [
"dashboardUserAccessRight"
],
"description": "A Power BI user access right entry for a dashboard",
"properties": {
"dashboardUserAccessRight": {
"type": "string",
"description": "The access right that the user has for the dashboard (permission level)",
"enum": [
"None",
"Read",
"ReadWrite",
"ReadReshare",
"ReadCopy",
"Owner"
],
"x-ms-enum": {
"name": "DashboardUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "No permission to content in dashboard"
},
{
"value": "Read",
"description": "Grants Read access to content in dashboard"
},
{
"value": "ReadWrite",
"description": "Grants Read and Write access to content in dashboard"
},
{
"value": "ReadReshare",
"description": "Grants Read and Reshare access to content in dashboard"
},
{
"value": "ReadCopy",
"description": "Grants Read and Copy access to content in dashboard"
},
{
"value": "Owner",
"description": "Grants Read, Write and Reshare access to content in report"
}
]
}
}
},
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"DatasetUser": {
"required": [
"datasetUserAccessRight"
],
"description": "A Power BI user access right entry for a dataset",
"properties": {
"datasetUserAccessRight": {
"type": "string",
"description": "The access right that the user has for the dataset (permission level)",
"enum": [
"None",
"Read",
"ReadWrite",
"ReadReshare",
"ReadWriteReshare",
"ReadExplore",
"ReadReshareExplore",
"ReadWriteExplore",
"ReadWriteReshareExplore"
],
"x-ms-enum": {
"name": "DatasetUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "Removes permission to the content in the dataset"
},
{
"value": "Read",
"description": "Grants Read access to the content in the dataset"
},
{
"value": "ReadWrite",
"description": "Grants Read and Write access to the content in the dataset"
},
{
"value": "ReadReshare",
"description": "Grants Read and Reshare access to the content in the dataset"
},
{
"value": "ReadWriteReshare",
"description": "Grants Read, Write, and Reshare access to the content in the dataset"
},
{
"value": "ReadExplore",
"description": "Grants Read and Explore access to the content in the dataset"
},
{
"value": "ReadReshareExplore",
"description": "Grants Read, Reshare, and Explore access to the content in the dataset"
},
{
"value": "ReadWriteExplore",
"description": "Grants Read, Write, and Explore access to the content in the dataset"
},
{
"value": "ReadWriteReshareExplore",
"description": "Grants Read, Write, Reshare, and Explore access to the content in the dataset"
}
]
}
}
},
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"PostDatasetUserAccess": {
"required": [
"identifier",
"principalType",
"datasetUserAccessRight"
],
"description": "A Power BI user access right entry for a dataset",
"allOf": [
{
"$ref": "#/definitions/Principal"
}
],
"properties": {
"datasetUserAccessRight": {
"type": "string",
"description": "Required. The access right to grant to the user for the dataset.",
"enum": [
"Read",
"ReadReshare",
"ReadExplore",
"ReadReshareExplore"
],
"x-ms-enum": {
"name": "DatasetUserAccessRightEntry",
"modelAsExtensible": true,
"values": [
{
"value": "Read",
"description": "Grants Read access to the content in the dataset"
},
{
"value": "ReadReshare",
"description": "Grants Read and Reshare access to the content in the dataset"
},
{
"value": "ReadExplore",
"description": "Grants Read and Explore access to the content in the dataset"
},
{
"value": "ReadReshareExplore",
"description": "Grants Read, Reshare, and Explore access to the content in the dataset"
}
]
}
}
}
},
"DatasetUserAccess": {
"required": [
"identifier",
"principalType",
"datasetUserAccessRight"
],
"description": "A Power BI principal access right entry for a dataset",
"allOf": [
{
"$ref": "#/definitions/Principal"
}
],
"properties": {
"datasetUserAccessRight": {
"type": "string",
"description": "The access rights to assign to the user for the dataset (permission level)",
"enum": [
"None",
"Read",
"ReadWrite",
"ReadReshare",
"ReadWriteReshare",
"ReadExplore",
"ReadReshareExplore",
"ReadWriteExplore",
"ReadWriteReshareExplore"
],
"x-ms-enum": {
"name": "DatasetUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "Removes permission to content in dataset"
},
{
"value": "Read",
"description": "Grants Read access to the content in the dataset"
},
{
"value": "ReadWrite",
"description": "Grants Read and Write access to the content in the dataset"
},
{
"value": "ReadReshare",
"description": "Grants Read and Reshare access to the content in the dataset"
},
{
"value": "ReadWriteReshare",
"description": "Grants Read, Write, and Reshare access to the content in the dataset"
},
{
"value": "ReadExplore",
"description": "Grants Read and Explore access to the content in the dataset"
},
{
"value": "ReadReshareExplore",
"description": "Grants Read, Reshare, and Explore access to the content in the dataset"
},
{
"value": "ReadWriteExplore",
"description": "Grants Read, Write, and Explore access to the content in the dataset"
},
{
"value": "ReadWriteReshareExplore",
"description": "Grants Read, Write, Reshare, and Explore access to the content in the dataset"
}
]
}
}
}
},
"DataflowUser": {
"required": [
"dataflowUserAccessRight"
],
"description": "A Power BI user access right entry for a dataflow",
"properties": {
"DataflowUserAccessRight": {
"type": "string",
"description": "The access right that a user has for the dataflow (permission level)",
"enum": [
"None",
"Read",
"ReadWrite",
"ReadReshare",
"Owner"
],
"x-ms-enum": {
"name": "DataflowUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "Removes permission to content in dataflow"
},
{
"value": "Read",
"description": "Grants Read access to content in dataflow"
},
{
"value": "ReadWrite",
"description": "Grants Read and Write access to content in dataflow"
},
{
"value": "ReadReshare",
"description": "Grants Read and Reshare access to content in dataflow"
},
{
"value": "Owner",
"description": "Grants Read, Write and Reshare access to content in dataflow"
}
]
}
}
},
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"SubscriptionUser": {
"required": [
"emailAddress",
"principalType",
"identifier"
],
"description": "A Power BI email subscription user",
"allOf": [
{
"$ref": "#/definitions/User"
}
]
},
"ArtifactAccessEntry": {
"required": [
"artifactId",
"displayName",
"artifactType",
"accessRight"
],
"description": "A user access entry for a Power BI item",
"properties": {
"artifactId": {
"type": "string",
"description": "The Power BI item ID"
},
"displayName": {
"type": "string",
"description": "The display name of the Power BI item"
},
"artifactType": {
"$ref": "#/definitions/ArtifactType",
"description": "The type of Power BI item"
},
"accessRight": {
"type": "string",
"description": "The access right that the user has for the Power BI item"
},
"shareType": {
"type": "string",
"description": "The type of how the access is given to the Power BI item. Only available for widely shared artifacts APIs."
},
"sharer": {
"$ref": "#/definitions/User",
"description": "The user who shared the Power BI item. Only available for widely shared artifacts APIs."
}
}
},
"ArtifactType": {
"type": "string",
"description": "The artifact type",
"enum": [
"Report",
"PaginatedReport",
"Dashboard",
"Dataset",
"Dataflow",
"PersonalGroup",
"Group",
"Workspace",
"Capacity",
"App"
],
"x-ms-enum": {
"name": "ArtifactType",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "Report",
"description": "Power BI Report"
},
{
"value": "PaginatedReport",
"description": "Power BI Paginated Report"
},
{
"value": "Dashboard",
"description": "Power BI Dashboard"
},
{
"value": "Dataset",
"description": "Power BI Dataset"
},
{
"value": "Dataflow",
"description": "Power BI Dataflow "
},
{
"value": "PersonalGroup",
"description": "My workspace object"
},
{
"value": "Group",
"description": "V1 shared workspace object"
},
{
"value": "Workspace",
"description": "Shared workspace object"
},
{
"value": "Capacity",
"description": "Capacity object"
},
{
"value": "App",
"description": "Power BI Apps"
}
]
}
},
"PrincipalType": {
"type": "string",
"description": "The principal type",
"enum": [
"None",
"User",
"Group",
"App"
],
"x-ms-enum": {
"name": "PrincipalType",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "No principal type. Use for whole organization level access."
},
{
"value": "User",
"description": "User principal type"
},
{
"value": "Group",
"description": "Group principal type"
},
{
"value": "App",
"description": "Service principal type"
}
]
}
},
"GroupType": {
"type": "string",
"description": "The group type",
"enum": [
"PersonalGroup",
"Personal",
"Group",
"Workspace"
],
"x-ms-enum": {
"name": "GroupType",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "PersonalGroup",
"description": "“My workspace”, also known as personal workspace"
},
{
"value": "Personal",
"description": "Special type of workspace meant for SharePoint list and OneDrive integration"
},
{
"value": "Workspace",
"description": "Shared workspace or simple workspace used to share content with other users in the organization"
},
{
"value": "Group",
"description": "V1 version of shared workspace. This type of workspaces will be deprecated as Microsoft migrate all workspaces to latest version of shared workspace"
}
]
}
},
"CloneReportRequest": {
"required": [
"name"
],
"description": "Power BI clone report request",
"properties": {
"name": {
"type": "string",
"description": "The new report name"
},
"targetWorkspaceId": {
"type": "string",
"format": "uuid",
"description": "Optional. Parameter for specifying the target workspace ID. An empty GUID (`00000000-0000-0000-0000-000000000000`) indicates **My workspace**. If this parameter isn't provided, the new report will be cloned within the same workspace as the source report."
},
"targetModelId": {
"type": "string",
"description": "Optional. Parameter for specifying the target associated dataset ID. If not provided, the new report will be associated with the same dataset as the source report."
}
}
},
"RebindReportRequest": {
"required": [
"datasetId"
],
"description": "Power BI rebind report request",
"properties": {
"datasetId": {
"type": "string",
"description": "The new dataset for the rebound report. If the dataset resides in a different workspace than the report, a shared dataset will be created in the report's workspace."
}
}
},
"ExportReportRequest": {
"required": [
"format"
],
"description": "The export to file request",
"properties": {
"format": {
"type": "string",
"description": "The requested format for the exported file",
"enum": [
"PPTX",
"PDF",
"PNG",
"IMAGE",
"XLSX",
"DOCX",
"CSV",
"XML",
"MHTML",
"ACCESSIBLEPDF"
],
"x-ms-enum": {
"name": "FileFormat",
"values": [
{
"value": "PPTX",
"description": "Microsoft PowerPoint"
},
{
"value": "PDF",
"description": "PDF"
},
{
"value": "PNG",
"description": "PNG (only supported for Power BI reports)"
},
{
"value": "IMAGE",
"description": "BMP, EMF, GIF, JPEG, PNG, or TIFF [image](/sql/reporting-services/image-device-information-settings) formats (only supported for paginated reports)"
},
{
"value": "XLSX",
"description": "Microsoft Excel (only supported for paginated reports)"
},
{
"value": "DOCX",
"description": "Microsoft Word (only supported for paginated reports)"
},
{
"value": "CSV",
"description": "CSV (only supported for paginated reports)"
},
{
"value": "XML",
"description": "XML (only supported for paginated reports)"
},
{
"value": "MHTML",
"description": "MHTML (only supported for paginated reports)"
},
{
"value": "ACCESSIBLEPDF",
"description": "Accessible PDF (only supported for paginated reports)"
}
]
}
},
"powerBIReportConfiguration": {
"$ref": "#/definitions/PowerBIReportExportConfiguration",
"description": "The configuration used to export a Power BI report"
},
"paginatedReportConfiguration": {
"$ref": "#/definitions/PaginatedReportExportConfiguration",
"description": "The configuration used to export a paginated report"
}
}
},
"PowerBIReportExportConfiguration": {
"description": "The export to file configuration for a Power BI report",
"properties": {
"settings": {
"$ref": "#/definitions/ExportReportSettings",
"description": "The settings to be applied for the export to file job"
},
"datasetToBind": {
"type": "string",
"description": "The dataset ID to export the report with. Only needed if exporting with a dataset other than the report's default dataset."
},
"defaultBookmark": {
"$ref": "#/definitions/PageBookmark",
"description": "A default bookmark to apply on all pages that don't have a specific bookmark"
},
"reportLevelFilters": {
"type": "array",
"description": "A list of report level filters to apply. Currently, only one filter is supported.",
"items": {
"$ref": "#/definitions/ExportFilter"
}
},
"pages": {
"type": "array",
"description": "A list of pages to export and their properties. The same page may appear more than once with different visuals.",
"items": {
"$ref": "#/definitions/ExportReportPage"
}
},
"identities": {
"type": "array",
"description": "A list of identities to use for row-level security rules",
"items": {
"$ref": "#/definitions/EffectiveIdentity"
}
}
}
},
"PaginatedReportExportConfiguration": {
"description": "The export to file configuration for a paginated report ",
"properties": {
"identities": {
"type": "array",
"description": "The single identity to use when exporting a report. Required when a report uses a Power BI dataset or an Azure Analysis Services data source.",
"items": {
"$ref": "#/definitions/EffectiveIdentity"
}
},
"formatSettings": {
"type": "object",
"description": "A dictionary of format settings. The keys are the device information property names for the requested file format.",
"additionalProperties": {
"type": "string"
}
},
"parameterValues": {
"type": "array",
"description": "A list of report parameters",
"items": {
"$ref": "#/definitions/ParameterValue"
}
}
}
},
"ExportReportSettings": {
"description": "Export to file request settings",
"properties": {
"locale": {
"type": "string",
"description": "The locale to apply"
},
"includeHiddenPages": {
"type": "boolean",
"description": "Whether to include hidden pages when exporting an entire report. If not provided, the default behavior is to exclude hidden pages. This property will be ignored when specific pages are exported."
}
}
},
"ExportReportPage": {
"description": "A single page configuration for the export request",
"required": [
"pageName"
],
"properties": {
"pageName": {
"type": "string",
"description": "The page name"
},
"visualName": {
"type": "string",
"description": "The name of the visual to export. Specify a name, in case only a single visual from this page is exported."
},
"bookmark": {
"$ref": "#/definitions/PageBookmark",
"description": "The bookmark to apply on the page"
}
}
},
"PageBookmark": {
"description": "The bookmark to apply on a single page. Provide name or state, but not both.",
"properties": {
"name": {
"type": "string",
"description": "The bookmark name"
},
"state": {
"type": "string",
"description": "The bookmark state"
}
}
},
"ExportFilter": {
"description": "A filter to be applied during the export operation",
"properties": {
"filter": {
"type": "string",
"description": "The filter to apply. For information about the filter syntax, see [Filter a report](/power-bi/collaborate-share/service-url-filters)."
}
}
},
"ParameterValue": {
"description": "Data contract for paginated report parameters",
"properties": {
"name": {
"type": "string",
"description": "The parameter name"
},
"value": {
"type": "string",
"description": "The parameter value"
}
}
},
"GroupCreationRequest": {
"required": [
"name"
],
"description": "A Power BI request to create a new group",
"properties": {
"name": {
"type": "string",
"description": "The name of the newly created group"
}
}
},
"GroupRestoreRequest": {
"description": "A Power BI request to restore a deleted group",
"properties": {
"name": {
"type": "string",
"description": "The name of the group to be restored"
},
"emailAddress": {
"type": "string",
"description": "The email address of the owner of the group to be restored"
}
},
"required": [
"emailAddress"
]
},
"IdentityBlob": {
"required": [
"value"
],
"description": "A blob for specifying an identity. Only supported for datasets with a DirectQuery connection to Azure SQL",
"properties": {
"value": {
"type": "string",
"description": "An OAuth 2.0 access token for Azure SQL"
}
}
},
"EffectiveIdentity": {
"required": [
"username"
],
"description": "Defines the user identity and roles. For more information, see [Row-level security with Power BI Embedded](/power-bi/developer/embedded/embedded-row-level-security).",
"properties": {
"username": {
"type": "string",
"description": "The effective username within a token that applies row-level security rules. For an on-premises model, the username can contain alphanumeric or any of the following characters `.`, `-`, `_`, `!`, `#`, `^`, `~`, `\\\\`, `@`. For cloud models, the username can contain any ASCII character. For either model, the username length must not exceed 256 characters, and the username shouldn't contain spaces."
},
"auditableContext": {
"type": "string",
"description": "The EffectiveIdentity auditable context. If this parameter is provided and isn't empty, it will enable auditing of the EffectiveIdentity and its value will be set to the username in the audit record. Otherwise, the EffectiveIdentity context will be omitted from the GenerateToken audit record."
},
"datasets": {
"type": "array",
"description": "An array of datasets for which this identity applies",
"items": {
"type": "string"
}
},
"roles": {
"type": "array",
"description": "An array of row-level security (RLS) roles within a token that applies RLS rules. An identity can contain up to 50 roles. A role can contain any character except `,`, and its length must not exceed 50 characters.",
"items": {
"type": "string"
}
},
"customData": {
"type": "string",
"description": "[Custom data](/power-bi/developer/embedded/embedded-row-level-security#using-the-customdata-feature) that's used to apply row-level security rules. Supported for live connection to Azure Analysis Services models and cloud models only."
},
"identityBlob": {
"$ref": "#/definitions/IdentityBlob",
"description": "A blob that specifies an [identity](/power-bi/developer/embedded/embedded-row-level-security#token-based-identity-sdk-additions). Only supported for datasets with a DirectQuery connection to Azure SQL."
},
"reports": {
"type": "array",
"description": "An array of reports for which this identity applies. Only supported for paginated reports.",
"items": {
"type": "string"
}
}
}
},
"DatasourceIdentity": {
"required": [
"identityBlob",
"datasources"
],
"description": "Effective identity for connecting DirectQuery data sources with single sign-on (SSO) enabled.",
"properties": {
"identityBlob": {
"type": "string",
"description": "A blob for specifying the identity."
},
"datasources": {
"type": "array",
"description": "An array of data sources that this identity applies to.",
"items": {
"$ref": "#/definitions/DatasourceSelector"
}
}
}
},
"DatasourceSelector": {
"required": [
"datasourceType",
"connectionDetails"
],
"description": "An object that uniquely identifies a single data source by its connection details.",
"properties": {
"datasourceType": {
"type": "string",
"description": "The type of the [data source](/power-bi/connect-data/power-bi-data-sources).\n\n\n| API name for the data source | | |\n|-|-|-|\n| ActiveDirectory | AdobeAnalytics | AdoDotNet |\n| AnalysisServices | AzureBlobs | AzureDataLakeStorage |\n| AzureMarketplace | AzureTables | BizTalk |\n| CDPA | CustomConnector | CustomHttpApi |\n| DB2 | Essbase | EventHub |\n| Excel | Exchange | Extension |\n| Facebook | File | Folder |\n| GoogleAnalytics | Hdfs | HDInsight |\n| Informix | MQ | MySql |\n| OData | ODBC | OleDb |\n| Oracle | PostgreSql | PowerQueryMashup \n| PubNub | Salesforce | SAPBW |\n| SAPBWMessageServer | SapErp | SAPHana |\n| SharePoint | SharePointDocLib | SharePointList |\n| Sql | Sybase | Teradata |\n| UIFlow | Web |"
},
"connectionDetails": {
"$ref": "#/definitions/DatasourceConnectionDetails",
"description": "The data source connection details. \nYou can obtain the connection details using [Get Datasources for paginated reports](/rest/api/power-bi/reports/get-datasources-in-group) and [Get Datasources for powerbi reports](/rest/api/power-bi/datasets/get-datasources-in-group) APIs."
}
}
},
"GenerateTokenRequestV2Dataset": {
"required": [
"id"
],
"description": "A dataset object in [GenerateTokenRequestV2](#generatetokenrequestv2)",
"properties": {
"id": {
"type": "string",
"description": "The dataset ID"
},
"xmlaPermissions": {
"type": "string",
"description": "XMLA Permissions",
"enum": [
"Off",
"ReadOnly"
],
"x-ms-enum": {
"name": "XmlaPermissions",
"modelAsExtensible": true,
"values": [
{
"value": "Off",
"description": "Indicates that the generated embed token doesn't grant access permissions to the dataset's XMLA endpoint."
},
{
"value": "ReadOnly",
"description": "Indicates that the generated embed token grants Read access permissions to the dataset's XMLA endpoint."
}
]
}
}
}
},
"GenerateTokenRequestV2TargetWorkspace": {
"required": [
"id"
],
"description": "A workspace object in [GenerateTokenRequestV2](#generatetokenrequestv2)",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The workspace ID"
}
}
},
"GenerateTokenRequestV2Report": {
"required": [
"id"
],
"description": "A report object in [GenerateTokenRequestV2](#generatetokenrequestv2)",
"properties": {
"allowEdit": {
"type": "boolean",
"description": "Whether the generated embed token supports report editing"
},
"id": {
"type": "string",
"format": "uuid",
"description": "The report ID"
}
}
},
"GenerateTokenRequest": {
"description": "Power BI Generate Token Request",
"properties": {
"accessLevel": {
"type": "string",
"description": "The required access level for embed token generation",
"enum": [
"View",
"Edit",
"Create"
],
"x-ms-enum": {
"name": "TokenAccessLevel",
"modelAsExtensible": true,
"values": [
{
"value": "View",
"description": "Indicates that the generated embed token grants view-only permission"
},
{
"value": "Edit",
"description": "Indicates that the generated embed token grants view and edit permissions. Only applies when you generate an embed token for report embedding."
},
{
"value": "Create",
"description": "Indicates that the generated embed token grants create permission. Only applies when you generate an embed token for report creation."
}
]
}
},
"datasetId": {
"type": "string",
"description": "The dataset ID used for report creation. Only applies when you generate an embed token for report creation."
},
"allowSaveAs": {
"type": "boolean",
"description": "Whether an embedded report can be saved as a new report. The default value is `false`. Only applies when you generate an embed token for report embedding."
},
"identities": {
"type": "array",
"description": "A list of identities to use for row-level security rules",
"items": {
"$ref": "#/definitions/EffectiveIdentity"
}
},
"lifetimeInMinutes": {
"type": "integer",
"description": "The maximum lifetime of the token in minutes, starting from the time it was generated. Can be used to shorten the expiration time of a token, but not to extend it. The value must be a positive integer. Zero (0) is equivalent to null and will be ignored, resulting in the default expiration time."
}
}
},
"GenerateTokenRequestV2": {
"description": "Power BI Generate Token Request V2",
"properties": {
"datasets": {
"type": "array",
"description": "A list of datasets",
"items": {
"$ref": "#/definitions/GenerateTokenRequestV2Dataset"
}
},
"reports": {
"type": "array",
"description": "A list of reports",
"items": {
"$ref": "#/definitions/GenerateTokenRequestV2Report"
}
},
"targetWorkspaces": {
"type": "array",
"description": "The list of workspaces that the embed token will allow saving to",
"items": {
"$ref": "#/definitions/GenerateTokenRequestV2TargetWorkspace"
}
},
"identities": {
"type": "array",
"description": "The list of identities to use for row-level security rules",
"items": {
"$ref": "#/definitions/EffectiveIdentity"
}
},
"lifetimeInMinutes": {
"type": "integer",
"description": "The maximum lifetime of the token in minutes, starting from the time it was generated. Can be used to shorten the token's expiration time, but not to extend it. The value must be a positive integer. Zero (`0`) is equivalent to `null`, and will set the default expiration time."
},
"datasourceIdentities": {
"type": "array",
"description": "List of identities to use when connecting to data sources with Single Sign-On (SSO) enabled.",
"items": {
"$ref": "#/definitions/DatasourceIdentity"
}
}
}
},
"EmbedToken": {
"required": [
"token",
"tokenId",
"expiration"
],
"description": "A Power BI embed token",
"properties": {
"token": {
"type": "string",
"description": "The embed token"
},
"tokenId": {
"type": "string",
"format": "uuid",
"description": "The unique token ID. Through audit logs, the token ID can be used to correlate operations that use the token with the generate operation."
},
"expiration": {
"type": "string",
"format": "date-time",
"description": "The date and time (UTC) of token expiration"
}
}
},
"CloneTileRequest": {
"required": [
"targetDashboardId"
],
"description": " A Power BI request to clone a tile",
"properties": {
"targetDashboardId": {
"type": "string",
"format": "uuid",
"description": "The target dashboard ID"
},
"targetWorkspaceId": {
"type": "string",
"format": "uuid",
"description": "Optional. A parameter for specifying a target workspace ID. An empty GUID (`00000000-0000-0000-0000-000000000000`) indicates **My workspace**. If this parameter isn't provided, the tile will be cloned within the same workspace as the source tile."
},
"targetReportId": {
"type": "string",
"format": "uuid",
"description": "Optional. A parameter for specifying a target report ID. When cloning a tile linked to a report, pass the target report ID to rebind the new tile to a different report."
},
"targetModelId": {
"type": "string",
"description": "Optional. A parameter for specifying a target model ID. When cloning a tile linked to a dataset, pass the target model ID to rebind the new tile to a different dataset."
},
"positionConflictAction": {
"type": "string",
"description": "Optional. A parameter for specifying an action in case of a position conflict. If there's a conflict and this parameter isn't provided, then the default value `Tail` will be applied. If there's no conflict, then the cloned tile will have the same position as in the source.",
"enum": [
"Tail",
"Abort"
],
"x-ms-enum": {
"name": "positionConflictAction",
"modelAsExtensible": true,
"values": [
{
"value": "Tail",
"description": "In the event of position conflict, the tile will be added at the end of the specified dashboard."
},
{
"value": "Abort",
"description": "In the event of position conflict, the request will be cancelled."
}
]
}
}
}
},
"AddDashboardRequest": {
"required": [
"name"
],
"description": "A Power BI request to add a dashboard",
"properties": {
"name": {
"type": "string",
"description": "The name of the new dashboard"
}
}
},
"SourceReport": {
"required": [
"sourceReportId"
],
"description": "An existing source report",
"properties": {
"sourceReportId": {
"type": "string",
"format": "uuid",
"description": "The source report ID"
},
"sourceWorkspaceId": {
"type": "string",
"format": "uuid",
"description": "The source workspace ID"
}
}
},
"UpdateReportContentRequest": {
"required": [
"sourceType",
"sourceReport"
],
"description": "A Power BI request to update the content of a report",
"properties": {
"sourceType": {
"type": "string",
"description": "The source type of the content update",
"enum": [
"ExistingReport"
],
"x-ms-enum": {
"name": "sourceType",
"modelAsExtensible": true,
"values": [
{
"value": "ExistingReport",
"description": "Use an existing report as the source of the content used to update a target report"
}
]
}
},
"sourceReport": {
"$ref": "#/definitions/SourceReport"
}
}
},
"Capacity": {
"required": [
"id",
"state",
"capacityUserAccessRight"
],
"description": "A Power BI capacity",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The capacity ID"
},
"displayName": {
"type": "string",
"description": "The display name of the capacity"
},
"admins": {
"type": "array",
"description": "An array of capacity admins",
"items": {
"type": "string"
}
},
"sku": {
"type": "string",
"description": "The capacity SKU"
},
"state": {
"type": "string",
"description": "The capacity state",
"enum": [
"NotActivated",
"Active",
"Provisioning",
"ProvisionFailed",
"PreSuspended",
"Suspended",
"Deleting",
"Deleted",
"Invalid",
"UpdatingSku"
],
"x-ms-enum": {
"name": "CapacityState",
"modelAsExtensible": true,
"values": [
{
"value": "NotActivated",
"description": "Unsupported"
},
{
"value": "Active",
"description": "The capacity is ready to use"
},
{
"value": "Provisioning",
"description": "Activation of the capacity is in progress"
},
{
"value": "ProvisionFailed",
"description": "Provisioning of the capacity failed"
},
{
"value": "Suspended",
"description": "Use of the capacity is suspended"
},
{
"value": "PreSuspended",
"description": "Unsupported"
},
{
"value": "Deleting",
"description": "Deletion of the capacity is in progress"
},
{
"value": "Deleted",
"description": "The capacity was deleted and is unavailable"
},
{
"value": "Invalid",
"description": "The capacity can't be used"
},
{
"value": "UpdatingSku",
"description": "A capacity SKU change is in progress"
}
]
}
},
"capacityUserAccessRight": {
"type": "string",
"description": "The access right a user has on the capacity",
"enum": [
"None",
"Assign",
"Admin"
],
"x-ms-enum": {
"name": "capacityUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "None",
"description": "User doesn't have access to the capacity"
},
{
"value": "Assign",
"description": "User has contributor rights and can assign workspaces to the capacity"
},
{
"value": "Admin",
"description": "User has administrator rights on the capacity"
}
]
}
},
"region": {
"type": "string",
"description": "The Azure region where the capacity was provisioned"
},
"tenantKeyId": {
"type": "string",
"format": "uuid",
"description": "The ID of an encryption key (only applicable to the admin route)"
},
"tenantKey": {
"$ref": "#/definitions/TenantKey",
"description": "Encryption key information (only applies to admin routes)"
}
}
},
"Capacities": {
"description": "OData response wrapper for a Power BI capacity list",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The capacity list",
"items": {
"$ref": "#/definitions/Capacity"
}
}
}
},
"AvailableFeatures": {
"description": "OData response wrapper for a Power BI available features list",
"properties": {
"odata.context": {
"type": "string"
},
"features": {
"type": "array",
"description": "The available features list",
"items": {
"$ref": "#/definitions/AvailableFeature"
}
}
}
},
"AvailableFeature": {
"required": [
"name",
"state",
"extendedState"
],
"description": "A Power BI available feature",
"properties": {
"name": {
"type": "string",
"description": "The feature name"
},
"state": {
"type": "string",
"enum": [
"Enabled",
"Disabled"
],
"x-ms-enum": {
"name": "FeatureState",
"modelAsExtensible": true
},
"description": "The feature state"
},
"extendedState": {
"type": "string",
"enum": [
"Enabled",
"DisabledByAdmin",
"UserNotLicensed"
],
"x-ms-enum": {
"name": "FeatureExtendedState",
"modelAsExtensible": true
},
"description": "The feature extended state"
},
"additionalInfo": {
"description": "Additional feature information",
"$ref": "#/definitions/AdditionalFeatureInfo"
}
}
},
"AdditionalFeatureInfo": {
"description": "Additional feature information",
"properties": {
"Usage": {
"type": "integer",
"description": "Workspaces that aren't assigned to a capacity get a limited amount of [embed tokens](/power-bi/developer/embedded/embed-tokens#embed-token), to allow experimenting with the APIs. The `Usage` value represents the percentage of embed tokens that have been consumed. The `Usage` value only applies to the **embed trial** feature. For more information, see [Development testing](/power-bi/developer/embedded/move-to-production#development-testing)."
}
}
},
"AssignToCapacityRequest": {
"required": [
"capacityId"
],
"description": "A Power BI assign-to-capacity request",
"properties": {
"capacityId": {
"type": "string",
"format": "uuid",
"description": "The capacity ID. To unassign from a capacity, use an empty GUID (`00000000-0000-0000-0000-000000000000`)."
}
}
},
"WorkspaceCapacityAssignmentStatus": {
"required": [
"status"
],
"description": "A Power BI response with the status of a workspace assign-to-capacity operation",
"properties": {
"status": {
"type": "string",
"description": "The status of a workspace assign-to-capacity operation",
"enum": [
"Pending",
"InProgress",
"CompletedSuccessfully",
"AssignmentFailed"
],
"x-ms-enum": {
"name": "AssignmentStatus",
"modelAsExtensible": true,
"values": [
{
"value": "Pending",
"description": "The assignment request was received, but the assignment operation hasn't started."
},
{
"value": "InProgress",
"description": "The assignment operation is in progress"
},
{
"value": "CompletedSuccessfully",
"description": "The assignment operation has completed successfully"
},
{
"value": "AssignmentFailed",
"description": "The assignment operation failed"
}
]
}
},
"startTime": {
"type": "string",
"format": "date-time",
"description": "The start date and time of a workspace assignment operation"
},
"endTime": {
"type": "string",
"format": "date-time",
"description": "The end date and time of a workspace assignment operation"
},
"capacityId": {
"type": "string",
"format": "uuid",
"description": "The capacity ID"
},
"activityId": {
"type": "string",
"format": "uuid",
"description": "The activity ID of the assignment operation (provided in case of an assignment failure)."
}
}
},
"AzureResource": {
"required": [
"subscriptionId",
"resourceGroup",
"resourceName"
],
"description": "A response detailing a user-owned Azure resource such as a Log Analytics workspace.",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "An identifier for the resource within Power BI.",
"readOnly": true
},
"subscriptionId": {
"type": "string",
"format": "uuid",
"description": "The Azure subscription where the resource resides."
},
"resourceGroup": {
"type": "string",
"description": "The resource group within the subscription where the resource resides."
},
"resourceName": {
"type": "string",
"description": "The name of the resource."
}
}
},
"TemporaryUploadLocation": {
"required": [
"Url",
"ExpirationTime"
],
"description": "A Power BI update report content request",
"properties": {
"Url": {
"type": "string",
"description": "The shared access signature URL for the temporary blob storage"
},
"ExpirationTime": {
"type": "string",
"format": "date-time",
"description": "The expiration date and time of the shared access signature URL"
}
}
},
"Workloads": {
"description": "OData response wrapper for capacity workload settings list",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The list of capacity workload settings",
"items": {
"$ref": "#/definitions/Workload"
}
}
}
},
"WorkloadState": {
"type": "string",
"enum": [
"Disabled",
"Enabled",
"Unsupported"
],
"x-ms-enum": {
"name": "WorkloadState",
"modelAsExtensible": true,
"values": [
{
"value": "Disabled",
"description": "The workload is disabled"
},
{
"value": "Enabled",
"description": "The workload is enabled"
},
{
"value": "Unsupported",
"description": "The workload is unsupported by the current capacity SKU and can't be enabled. This value can't be set by the user in a [Patch Workload](/rest/api/power-bi/capacities/patch-workload) API call."
}
]
},
"description": "The capacity workload state"
},
"Workload": {
"required": [
"state"
],
"description": "A capacity workload setting",
"properties": {
"name": {
"type": "string",
"description": "The workload name"
},
"state": {
"$ref": "#/definitions/WorkloadState"
},
"maxMemoryPercentageSetByUser": {
"type": "integer",
"description": "The percentage of the maximum memory that a workload can consume (set by the user)"
}
}
},
"PatchWorkloadRequest": {
"required": [
"state"
],
"description": "Patch workload setting request",
"properties": {
"state": {
"$ref": "#/definitions/WorkloadState"
},
"maxMemoryPercentageSetByUser": {
"type": "integer",
"description": "The percentage of the maximum memory that a workload can consume (set by the user)"
}
}
},
"DataflowBaseProperties": {
"required": [
"objectId"
],
"description": "The metadata of a dataflow. The API returns a subset of the following list of dataflow properties. The subset depends on the API called, caller permissions, and the availability of data in the Power BI database.",
"properties": {
"objectId": {
"type": "string",
"format": "uuid",
"description": "The dataflow ID"
},
"name": {
"type": "string",
"description": "The dataflow name"
},
"description": {
"type": "string",
"description": "The dataflow description"
},
"modelUrl": {
"type": "string",
"description": "A URL to the dataflow definition file (model.json)"
},
"configuredBy": {
"type": "string",
"description": "The dataflow owner"
},
"users": {
"type": "array",
"description": "(Empty value) The dataflow user access details. This property will be removed from the payload response in an upcoming release. You can retrieve user information on a Power BI dataflow by using the [Get Dataflow Users as Admin](/rest/api/power-bi/admin/dataflows-get-dataflow-users-as-admin) API call, or the [PostWorkspaceInfo](/rest/api/power-bi/admin/workspace-info-post-workspace-info) API call with the `getArtifactUser` parameter.",
"items": {
"$ref": "#/definitions/DataflowUser"
}
}
}
},
"WorkspaceInfoDataflowProperties": {
"properties": {
"datasourceUsages": {
"type": "array",
"description": "The data source usages",
"items": {
"$ref": "#/definitions/DatasourceUsage"
}
},
"misconfiguredDatasourceUsages": {
"type": "array",
"description": "The data source misconfigured usages",
"items": {
"$ref": "#/definitions/DatasourceUsage"
}
},
"upstreamDataflows": {
"type": "array",
"description": "The list of all the dataflows this item depends on",
"items": {
"$ref": "#/definitions/DependentDataflow"
}
},
"upstreamDatamarts": {
"type": "array",
"description": "The list of all the datamarts this item depends on",
"items": {
"$ref": "#/definitions/DependentDatamart"
}
}
}
},
"DataflowWorkspaceIdProperty": {
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The dataflow workspace ID."
}
}
},
"Dataflow": {
"description": "The metadata of a dataflow. Below is a list of properties that may be returned for a dataflow. Only a subset of the properties will be returned depending on the API called, the caller permissions and the availability of the data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DataflowBaseProperties"
}
]
},
"AdminDataflow": {
"description": "The metadata of a dataflow returned by Admin APIs. Below is a list of properties that may be returned for a dataflow. Only a subset of the properties will be returned depending on the API called, the caller permissions and the availability of the data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DataflowBaseProperties"
},
{
"$ref": "#/definitions/DataflowWorkspaceIdProperty"
}
]
},
"WorkspaceInfoDataflow": {
"description": "The metadata of a dataflow returned by Workspace Info APIs. Below is a list of properties that may be returned for a dataflow. Only a subset of the properties will be returned depending on the API called, the caller permissions and the availability of the data in the Power BI database.",
"allOf": [
{
"$ref": "#/definitions/DataflowBaseProperties"
},
{
"$ref": "#/definitions/WorkspaceInfoDataflowProperties"
},
{
"$ref": "#/definitions/EndorsmentProperties"
},
{
"$ref": "#/definitions/SensitivityProperties"
}
]
},
"Dataflows": {
"description": "OData response wrapper for a dataflow metadata list",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The dataflow metadata list",
"items": {
"$ref": "#/definitions/Dataflow"
}
}
}
},
"AdminDataflows": {
"description": "OData response wrapper for a Power BI Admin dataflow collection",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The report collection",
"items": {
"$ref": "#/definitions/AdminDataflow"
}
}
}
},
"DataflowStorageAccount": {
"required": [
"id",
"isEnabled"
],
"description": "A Power BI dataflow storage account",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The Power BI dataflow storage account ID"
},
"name": {
"type": "string",
"description": "The Power BI dataflow storage account name"
},
"isEnabled": {
"type": "boolean",
"description": "Whether workspaces can be assigned to this storage account"
}
}
},
"DataflowStorageAccounts": {
"description": "OData response wrapper for Power BI dataflow storage account list",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "The Power BI dataflow storage account list",
"items": {
"$ref": "#/definitions/DataflowStorageAccount"
}
}
}
},
"AssignToDataflowStorageRequest": {
"required": [
"dataflowStorageId"
],
"description": "A Power BI assign to dataflow storage account request",
"properties": {
"dataflowStorageId": {
"type": "string",
"format": "uuid",
"description": "The Power BI dataflow storage account ID. To unassign the specified workspace from a Power BI dataflow storage account, use an empty GUID (`00000000-0000-0000-0000-000000000000`)."
}
}
},
"Export": {
"description": "An object describing the details and current state of an export to file job",
"properties": {
"id": {
"type": "string",
"description": "The export to file job ID"
},
"createdDateTime": {
"type": "string",
"format": "date-time",
"description": "The start date and time of the export to file job"
},
"lastActionDateTime": {
"type": "string",
"format": "date-time",
"description": "The date and time of the last change to the export to file job"
},
"reportId": {
"type": "string",
"format": "uuid",
"description": "The ID of the exported report"
},
"reportName": {
"type": "string",
"description": "The name of the exported report"
},
"status": {
"type": "string",
"description": "The current state of the export to file job",
"enum": [
"Undefined",
"NotStarted",
"Running",
"Succeeded",
"Failed"
],
"x-ms-enum": {
"name": "ExportState",
"values": [
{
"value": "Undefined",
"description": "The state of the export to file job is undefined"
},
{
"value": "NotStarted",
"description": "The export to file job didn't start"
},
{
"value": "Running",
"description": "The export to file job is running"
},
{
"value": "Succeeded",
"description": "The export to file job finished successfully"
},
{
"value": "Failed",
"description": "The export to file job failed"
}
]
}
},
"percentComplete": {
"type": "integer",
"description": "Job progress as a percentage",
"format": "int32",
"minimum": 0,
"maximum": 100
},
"resourceLocation": {
"type": "string",
"description": "The retrieval URL for the exported file"
},
"ResourceFileExtension": {
"type": "string",
"description": "The extension of the exported file"
},
"expirationTime": {
"type": "string",
"format": "date-time",
"description": "The expiration date and time of the retrieval URL"
}
}
},
"TenantKeyCreationRequest": {
"description": "Add encryption key request",
"properties": {
"name": {
"type": "string",
"description": "The name of the encryption key"
},
"keyVaultKeyIdentifier": {
"type": "string",
"description": "The URI that uniquely specifies an encryption key in Azure Key Vault"
},
"isDefault": {
"type": "boolean",
"description": "Whether an encryption key is the default key for the entire tenant. Any newly created capacity inherits the default key."
},
"activate": {
"type": "boolean",
"description": "Whether to activate any inactivated capacities and to use this key for its encryption"
}
}
},
"TenantKeys": {
"description": "Encryption keys information",
"properties": {
"odata.context": {
"type": "string"
},
"value": {
"type": "array",
"description": "Encryption keys",
"items": {
"$ref": "#/definitions/TenantKey"
}
}
}
},
"TenantKey": {
"description": "Encryption key information",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The ID of the encryption key"
},
"name": {
"type": "string",
"description": "The name of the encryption key"
},
"keyVaultKeyIdentifier": {
"type": "string",
"description": "The URI that uniquely specifies the encryption key in Azure Key Vault"
},
"isDefault": {
"type": "boolean",
"description": "Whether the encryption key is the default key for the entire tenant. Any newly created capacity inherits the default key."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "The creation date and time of the encryption key"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "The last update date and time of the encryption key"
}
}
},
"TenantKeyRotationRequest": {
"description": "A request to rotate an encryption key",
"properties": {
"keyVaultKeyIdentifier": {
"type": "string",
"description": "The URI that uniquely specifies the encryption key in Azure Key Vault"
}
}
},
"CapacityPatchRequest": {
"description": "A patch capacity request",
"properties": {
"tenantKeyId": {
"type": "string",
"format": "uuid",
"description": "The ID of the encryption key"
}
}
},
"AssignWorkspacesToCapacityRequest": {
"description": "A request to assign workspaces to a premium capacity",
"properties": {
"capacityMigrationAssignments": {
"type": "array",
"items": {
"$ref": "#/definitions/CapacityMigrationAssignment"
}
}
}
},
"CapacityMigrationAssignment": {
"required": [
"workspacesToAssign",
"targetCapacityObjectId"
],
"description": "Assignment contract for migrating workspaces to a premium capacity as tenant admin",
"properties": {
"workspacesToAssign": {
"type": "array",
"description": "The workspace IDs to migrate to a premium capacity",
"items": {
"type": "string",
"description": "The workspace ID"
}
},
"targetCapacityObjectId": {
"type": "string",
"description": "The premium capacity ID"
}
}
},
"UnassignWorkspacesCapacityRequest": {
"required": [
"workspacesToUnassign"
],
"description": "A request for migrating workspaces to a shared capacity as tenant admin",
"properties": {
"workspacesToUnassign": {
"type": "array",
"description": "The workspaces to migrate to a shared capacity",
"items": {
"type": "string",
"description": "The workspace ID"
}
}
}
},
"ActivityEventResponse": {
"description": "OData response wrapper for audit activity events list",
"properties": {
"activityEventEntities": {
"type": "array",
"description": "An array of activity event objects. To learn more about an activity event (which is a collection of event properties) refer to [Microsoft 365 Management Activity schema](https://learn.microsoft.com/en-us/office/office-365-management-api/office-365-management-activity-api-schema#power-bi-schema).",
"items": {
"type": "object"
}
},
"continuationUri": {
"type": "string",
"description": "The URI for the next chunk in the result set"
},
"continuationToken": {
"type": "string",
"description": "Token to get the next chunk of the result set"
}
}
},
"UnusedArtifactsResponse": {
"description": "OData response wrapper for unused Power BI item (such as a report or a dashboard) entities",
"properties": {
"unusedArtifactEntities": {
"type": "array",
"description": "The unused Power BI item entities",
"items": {
"$ref": "#/definitions/UnusedArtifactEntity"
}
},
"continuationUri": {
"type": "string",
"description": "The URI for the next chunk in the result set"
},
"continuationToken": {
"type": "string",
"description": "Token to get the next chunk of the result set"
}
}
},
"UnusedArtifactEntity": {
"required": [
"artifactId",
"displayName",
"artifactType"
],
"description": "The unused Power BI item entity",
"properties": {
"artifactId": {
"type": "string",
"description": "The ID of the Power BI item"
},
"displayName": {
"type": "string",
"description": "The display name of the Power BI item"
},
"artifactType": {
"type": "string",
"description": "The Power BI item type"
},
"artifactSizeInMB": {
"type": "integer",
"description": "The size of the Power BI item in megabytes (if applicable)"
},
"createdDateTime": {
"type": "string",
"format": "date-time",
"description": "The creation time of the Power BI item (if applicable)"
},
"lastAccessedDateTime": {
"type": "string",
"format": "date-time",
"description": "The last access time of the Power BI item (if applicable)"
}
}
},
"Workbooks": {
"description": "A Power BI workbook list",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The workbooks",
"items": {
"$ref": "#/definitions/Workbook"
}
}
}
},
"Workbook": {
"description": "A Power BI workbook",
"properties": {
"name": {
"type": "string",
"description": "The workbook name"
},
"datasetId": {
"type": "string",
"description": "The ID of the dataset associated with a workbook. Only applies if the workbook has an associated dataset."
}
}
},
"Refreshables": {
"description": "A Power BI refreshables list",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The refreshables",
"items": {
"$ref": "#/definitions/Refreshable"
}
}
}
},
"Refreshable": {
"description": "A Power BI refreshable is a dataset that's been refreshed at least once, or for which a valid refresh schedule exists. If a dataset doesn't meet either of these conditions, then it won't show up in the API response. Power BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.",
"properties": {
"id": {
"type": "string",
"description": "The object ID of the refreshable"
},
"name": {
"type": "string",
"description": "The display name of the refreshable"
},
"kind": {
"type": "string",
"description": "The refreshable kind",
"enum": [
"Dataset"
],
"x-ms-enum": {
"name": "RefreshableKind",
"modelAsExtensible": true,
"values": [
{
"value": "Dataset",
"description": "Dataset"
}
]
}
},
"startTime": {
"type": "string",
"format": "date-time",
"description": "The start time of the window for which refresh data exists"
},
"endTime": {
"type": "string",
"format": "date-time",
"description": "The end time of the window for which refresh data exists"
},
"refreshCount": {
"type": "integer",
"description": "The number of refreshes within the time window for which refresh data exists"
},
"refreshFailures": {
"type": "integer",
"description": "The number of refresh failures within the time window for which refresh data exists"
},
"averageDuration": {
"type": "number",
"description": "The average duration in seconds of a refresh during the time window for which refresh data exists"
},
"medianDuration": {
"type": "number",
"description": "The median duration in seconds of a refresh within the time window for which refresh data exists"
},
"refreshesPerDay": {
"type": "integer",
"description": "The number of refreshes per day (scheduled and on-demand) within the time window for which refresh data exists"
},
"lastRefresh": {
"$ref": "#/definitions/Refresh",
"description": "The last Power BI refresh history entry for the refreshable item"
},
"refreshSchedule": {
"$ref": "#/definitions/RefreshSchedule",
"description": "The refresh schedule for the refreshable item"
},
"configuredBy": {
"type": "array",
"description": "The refreshable owners",
"items": {
"type": "string"
}
},
"capacity": {
"$ref": "#/definitions/Capacity",
"description": "The capacity for the refreshable item"
},
"group": {
"$ref": "#/definitions/RefreshableGroup",
"description": "The associated group for the refreshable item"
}
}
},
"UpdateRdlDatasourcesRequest": {
"required": [
"updateDetails"
],
"description": "A request to update the data sources of a paginated report",
"properties": {
"updateDetails": {
"type": "array",
"description": "The update details for the data sources of the paginated report",
"items": {
"$ref": "#/definitions/UpdateRdlDatasourceDetails"
}
}
}
},
"UpdateRdlDatasourceDetails": {
"required": [
"connectionDetails",
"datasourceName"
],
"description": "Update details for a paginated report data source",
"properties": {
"connectionDetails": {
"$ref": "#/definitions/RdlDatasourceConnectionDetails",
"description": "The new connection details for the paginated report data source"
},
"datasourceName": {
"type": "string",
"description": "The name of the paginated report data source"
}
}
},
"RdlDatasourceConnectionDetails": {
"description": "The connection details for a paginated report data source",
"properties": {
"server": {
"type": "string",
"description": "The connection server"
},
"database": {
"type": "string",
"description": "The connection database"
}
}
},
"RdlBindToGatewayRequest": {
"required": [
"gatewayObjectId",
"bindDetails"
],
"description": "Paginated report bind data source to gateway request",
"properties": {
"gatewayObjectId": {
"type": "string",
"format": "uuid",
"description": "The gateway ID. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster and is similar to the gateway cluster ID."
},
"bindDetails": {
"description": "List of bind details",
"type": "array",
"items": {
"$ref": "#/definitions/RdlBindDetail",
"description": "BindDetail for each data source in the paginated report"
}
}
}
},
"RdlBindDetail": {
"description": "BindDetail for each data source in a paginated report",
"required": ["dataSourceName"],
"properties": {
"dataSourceName": {
"description": "Name of the data source in the paginated report",
"type": "string"
},
"dataSourceObjectId": {
"description": "The unique identifier for the data source in the gateway",
"type": "string",
"format": "uuid"
}
}
},
"DataflowTransactions": {
"description": "Odata response wrapper for dataflow transactions",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The dataflow transactions",
"items": {
"$ref": "#/definitions/DataflowTransaction"
}
}
}
},
"DataflowTransaction": {
"required": [
"id"
],
"description": "A Power BI dataflow transaction",
"properties": {
"id": {
"type": "string",
"description": "The transaction ID"
},
"refreshType": {
"type": "string",
"description": "The type of refresh transaction"
},
"startTime": {
"type": "string",
"description": "The start time of the transaction"
},
"endTime": {
"type": "string",
"description": "The end time of the transaction"
},
"status": {
"type": "string",
"description": "The status of the transaction"
}
}
},
"DataflowTransactionStatus": {
"description": "The status of a dataflow refresh transaction",
"properties": {
"transactionId": {
"description": "The transaction ID",
"type": "string"
},
"status": {
"description": "The transaction status",
"type": "string",
"enum": [
"invalid",
"successfullyMarked",
"alreadyConcluded",
"notFound"
]
}
}
},
"DataflowUpdateRequestMessage": {
"description": "A request to update dataflow information",
"properties": {
"name": {
"description": "The new name for the dataflow",
"type": "string"
},
"description": {
"description": "The new description for the dataflow",
"type": "string"
},
"allowNativeQueries": {
"description": "Whether to allow native queries",
"type": "boolean"
},
"computeEngineBehavior": {
"description": "The behavior of the compute engine",
"type": "string",
"enum": [
"computeOptimized",
"computeOn",
"computeDisabled"
]
}
}
},
"CreateInstallTicketRequest": {
"description": "A request to create a Power BI install ticket",
"properties": {
"installDetails": {
"type": "array",
"description": "List of install details",
"items": {
"$ref": "#/definitions/TemplateAppInstallDetails"
}
}
}
},
"TemplateAppInstallDetails": {
"required": [
"appId",
"packageKey",
"ownerTenantId"
],
"description": "The install details for a Power BI template app",
"properties": {
"appId": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the Power BI template app"
},
"packageKey": {
"type": "string",
"description": "The secure key for the Power BI template app version"
},
"ownerTenantId": {
"type": "string",
"format": "uuid",
"description": "The tenant ID of the Power BI template app owner"
},
"config": {
"$ref": "#/definitions/TemplateAppConfigurationRequest",
"description": "The automated install configuration"
}
}
},
"TemplateAppConfigurationRequest": {
"description": "An automated install configuration for a Power BI template app (dictionary of name-value pairs)",
"properties": {
"configuration": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"example": {
"param1": "value1",
"param2": "value2"
}
}
}
},
"InstallTicket": {
"required": [
"ticket",
"ticketId",
"expiration"
],
"description": "An automated install ticket for a Power BI template app",
"properties": {
"ticket": {
"type": "string",
"description": "Install ticket"
},
"ticketId": {
"type": "string",
"format": "uuid",
"description": "The unique ID of an install ticket. Audit logs can be used to correlate operations that use this ticket with the generate ticket operation."
},
"expiration": {
"type": "string",
"format": "date-time",
"description": "The expiration date and time (UTC) of the ticket"
}
}
},
"ArtifactId": {
"description": "The unique ID of a Power BI item in UUID format. Dashboard, report, and dataflow IDs are in UUID format, and dataset IDs can be in UUID or string format.",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "An ID in UUID format"
}
}
},
"ArtifactStringId": {
"description": "The unique ID of a Power BI item in string or UUID format. Dashboard, report, and dataflow IDs are in UUID format, and dataset IDs can be in UUID or string format.",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "An ID in string or UUID format"
}
}
},
"InformationProtectionArtifactsChangeLabel": {
"description": "A composite of Power BI item IDs for each item type. The IDs specify which Power BI items require an information protection label update.",
"properties": {
"dashboards": {
"type": "array",
"description": "A list of unique dashboard IDs",
"items": {
"$ref": "#/definitions/ArtifactId"
}
},
"reports": {
"type": "array",
"description": "A list of unique report IDs",
"items": {
"$ref": "#/definitions/ArtifactId"
}
},
"datasets": {
"type": "array",
"description": "A list of unique dataset IDs",
"items": {
"$ref": "#/definitions/ArtifactStringId"
}
},
"dataflows": {
"type": "array",
"description": "A list of unique dataflow IDs",
"items": {
"$ref": "#/definitions/ArtifactId"
}
}
}
},
"InformationProtectionChangeLabelResponse": {
"description": "A composite of the ID and information protection label change status for one or more Power BI items organized by type",
"properties": {
"dashboards": {
"type": "array",
"description": "A list containing the unique ID and information protection label change status of one or more dashboards",
"items": {
"$ref": "#/definitions/ChangeLabelStatus"
}
},
"reports": {
"type": "array",
"description": "A list containing the unique ID and information protection label change status of one or more reports",
"items": {
"$ref": "#/definitions/ChangeLabelStatus"
}
},
"dataflows": {
"type": "array",
"description": "A list containing the unique ID and information protection label change status of one or more dataflows",
"items": {
"$ref": "#/definitions/ChangeLabelStatus"
}
},
"datasets": {
"type": "array",
"description": "A list containing the unique ID and information protection label change status of one or more datasets",
"items": {
"$ref": "#/definitions/ChangeLabelStatus"
}
}
}
},
"ChangeLabelStatus": {
"description": "The unique ID and information protection label change status of a Power BI item",
"required": [
"id",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "The unique ID of a Power BI item. The ID is in UUID format for dashboards, reports, and dataflows; and in UUID or string format for datasets."
},
"status": {
"type": "string",
"description": "The status of an information protection label change operation",
"enum": [
"Failed",
"FailedToGetUsageRights",
"InsufficientUsageRights",
"NotFound",
"Succeeded"
],
"x-ms-enum": {
"name": "status",
"modelAsExtensible": true,
"values": [
{
"value": "Failed",
"description": "Failed to set a new label. Please retry."
},
{
"value": "FailedToGetUsageRights",
"description": "Failed to set a new label. The Power BI item has a sensitivity label with protection settings, and Power BI was unable to verify that the user has sufficient usage rights to change the label."
},
{
"value": "InsufficientUsageRights",
"description": "Failed to set a new label. The Power BI item has a sensitivity label with protection settings, and the admin user (and the delegated user, if provided) doesn't have sufficient usage rights to change the label."
},
{
"value": "NotFound",
"description": "The Power BI item ID or label wasn't found"
},
{
"value": "Succeeded",
"description": "The Power BI item label was changed"
}
]
}
}
}
},
"InformationProtectionChangeLabelDetails": {
"description": "A composite of label information required to update an information protection label",
"required": [
"artifacts",
"labelId"
],
"properties": {
"artifacts": {
"description": "A composite of Power BI item IDs for each item type",
"$ref": "#/definitions/InformationProtectionArtifactsChangeLabel"
},
"labelId": {
"type": "string",
"format": "uuid",
"description": "The label ID, which must be in the user's label policy."
},
"delegatedUser": {
"description": "Delegated user details. A delegated user is a user within an organization whose admin sets a label on behalf of the user. Although the admin sets the label, the delegated user is marked as the label issuer.",
"$ref": "#/definitions/DelegatedUser"
},
"assignmentMethod": {
"type": "string",
"enum": [
"Standard",
"Priviledged"
],
"x-ms-enum": {
"name": "assignmentMethod",
"modelAsExtensible": true,
"values": [
{
"value": "Standard",
"description": "The label was set by an automated process (default value)"
},
{
"value": "Priviledged",
"description": "The label was set manually"
}
]
},
"description": "Specifies whether the assigned label was set by an automated process or manually."
}
}
},
"DelegatedUser": {
"description": "Delegated user details. The user must be an existing user in Power BI and Azure AAD, and must have signed in to Power BI during the last three months.",
"required": [
"emailAddress"
],
"properties": {
"emailAddress": {
"description": "The email address of the delegated user",
"type": "string"
}
}
},
"Pipelines": {
"description": "OData response wrapper for a collection of Power BI deployment pipelines",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The collection of deployment pipelines",
"items": {
"$ref": "#/definitions/Pipeline"
}
}
}
},
"AdminPipelines": {
"description": "OData response wrapper for a collection of Power BI deployment pipelines",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The collection of deployment pipelines",
"items": {
"$ref": "#/definitions/AdminPipeline"
}
}
}
},
"PipelineBaseProperties": {
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The deployment pipeline ID"
},
"displayName": {
"type": "string",
"description": "The deployment pipeline display name"
},
"description": {
"type": "string",
"description": "The deployment pipeline description"
},
"stages": {
"type": "array",
"description": "The collection of deployment pipeline stages. Only returned when `$expand` is set to `stages` in the request.",
"items": {
"$ref": "#/definitions/PipelineStage"
}
}
}
},
"PipelineUsersProperties": {
"properties": {
"users": {
"type": "array",
"description": "The collection of deployment pipeline users. Only returned when `$expand` is set to `users` in the request.",
"items": {
"$ref": "#/definitions/PipelineUser"
}
}
}
},
"Pipeline": {
"description": "A Power BI pipeline",
"allOf": [
{
"$ref": "#/definitions/PipelineBaseProperties"
}
]
},
"AdminPipeline": {
"description": "A Power BI pipeline returned by user APIs",
"allOf": [
{
"$ref": "#/definitions/PipelineBaseProperties"
},
{
"$ref": "#/definitions/PipelineUsersProperties"
}
]
},
"PipelineStages": {
"description": "OData response wrapper for a collection of Power BI deployment pipeline stages.",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The collection of deployment pipeline stages",
"items": {
"$ref": "#/definitions/PipelineStage"
}
}
}
},
"PipelineStage": {
"required": [
"order"
],
"description": "A Power BI deployment pipeline stage",
"properties": {
"order": {
"type": "integer",
"description": "The stage order, starting from zero."
},
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The assigned workspace ID. Only applicable when there's an assigned workspace."
},
"workspaceName": {
"type": "string",
"description": "The assigned workspace name. Only applicable when there's an assigned workspace and the user has access to the workspace."
}
}
},
"PipelineStageArtifacts": {
"description": "Supported items from a workspace that's assigned to a deployment pipeline stage",
"properties": {
"datasets": {
"type": "array",
"description": "The datasets collection",
"items": {
"$ref": "#/definitions/PipelineStageDataset"
}
},
"reports": {
"type": "array",
"description": "The reports collection",
"items": {
"$ref": "#/definitions/PipelineStageReport"
}
},
"dashboards": {
"type": "array",
"description": "The dashboards collection",
"items": {
"$ref": "#/definitions/PipelineStageDashboard"
}
},
"dataflows": {
"type": "array",
"description": "The dataflows collection",
"items": {
"$ref": "#/definitions/PipelineStageDataflow"
}
},
"datamarts": {
"type": "array",
"description": "The datamarts collection",
"items": {
"$ref": "#/definitions/PipelineStageDatamart"
}
}
}
},
"PipelineStageArtifactBase": {
"required": [
"artifactId"
],
"description": "Power BI item metadata for a deployment pipeline stage",
"properties": {
"artifactId": {
"type": "string",
"format": "uuid",
"description": "The Power BI item ID"
},
"artifactDisplayName": {
"type": "string",
"description": "The Power BI item display name"
},
"sourceArtifactId": {
"type": "string",
"format": "uuid",
"description": "The ID of the Power BI item (such as a report or a dashboard) from the workspace assigned to the source stage, which will update the current Power BI item upon deployment. Applicable only when the user has at least contributor access to the source stage workspace."
},
"targetArtifactId": {
"type": "string",
"format": "uuid",
"description": "The ID of the Power BI item (such as a report or a dashboard) from the workspace of the target stage, which will be updated by the current Power BI item upon deployment. Applicable only when the user has at least contributor access to the target stage workspace."
},
"lastDeploymentTime": {
"type": "string",
"format": "date-time",
"description": "The last deployment date and time of the Power BI item"
}
}
},
"PipelineStageDataflow": {
"description": "The metadata for a deployment pipeline dataflow",
"allOf": [
{
"$ref": "#/definitions/PipelineStageArtifactBase"
}
]
},
"PipelineStageDatamart": {
"description": "The metadata for a deployment pipeline datamart",
"allOf": [
{
"$ref": "#/definitions/PipelineStageArtifactBase"
}
]
},
"PipelineStageDataset": {
"description": "The metadata for a deployment pipeline dataset",
"allOf": [
{
"$ref": "#/definitions/PipelineStageArtifactBase"
}
]
},
"PipelineStageReport": {
"description": "The metadata for a deployment pipeline report",
"allOf": [
{
"$ref": "#/definitions/PipelineStageArtifactBase"
}
]
},
"PipelineStageDashboard": {
"description": "The metadata for a deployment pipeline dashboard",
"allOf": [
{
"$ref": "#/definitions/PipelineStageArtifactBase"
}
]
},
"PipelineOperations": {
"description": "OData response wrapper for a collection of Power BI deployment pipeline operations",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The collection of deployment pipeline operations",
"items": {
"$ref": "#/definitions/PipelineOperation"
}
}
}
},
"PipelineOperation": {
"required": [
"id",
"status",
"lastUpdatedTime"
],
"description": "A Power BI deployment pipeline operation",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The operation ID"
},
"type": {
"type": "string",
"description": "The operation type",
"enum": [
"Deploy"
],
"x-ms-enum": {
"name": "PipelineOperationType",
"modelAsExtensible": true,
"values": [
{
"value": "Deploy",
"description": "Deploy content between stages"
}
]
}
},
"status": {
"type": "string",
"description": "The pipeline operation status",
"enum": [
"NotStarted",
"Executing",
"Succeeded",
"Failed"
],
"x-ms-enum": {
"name": "PipelineOperationStatus",
"modelAsExtensible": true,
"values": [
{
"value": "NotStarted",
"description": "Operation not started"
},
{
"value": "Executing",
"description": "Operation executing"
},
{
"value": "Succeeded",
"description": "Operation succeeded"
},
{
"value": "Failed",
"description": "Operation failed"
}
]
}
},
"lastUpdatedTime": {
"type": "string",
"format": "date-time",
"description": "The date and time that the operation was last updated"
},
"executionStartTime": {
"type": "string",
"format": "date-time",
"description": "The date and time that the operation started"
},
"executionEndTime": {
"type": "string",
"format": "date-time",
"description": "The date and time that the operation ended"
},
"sourceStageOrder": {
"type": "integer",
"description": "The numeric identifier of a source pipeline deployment stage. Development (0), Test (1), Production (2)."
},
"targetStageOrder": {
"type": "integer",
"description": "The numeric identifier of a target pipeline deployment stage. Development (0), Test (1), Production (2)."
},
"performedBy": {
"description": "User or service principal that performed the pipeline operation.",
"$ref": "#/definitions/PipelineOperationUser"
},
"note": {
"description": "A note representing a description of the operation.",
"$ref": "#/definitions/PipelineOperationNote"
},
"executionPlan": {
"description": "The deployment execution plan. Only applicable to a single pipeline operation.",
"$ref": "#/definitions/DeploymentExecutionPlan"
},
"preDeploymentDiffInformation": {
"description": "The amount of deployed items in the source stage, that are new, identical or different to items in the target stage, before deployment.",
"$ref": "#/definitions/PreDeploymentDiffInformation"
}
}
},
"PipelineOperationUser": {
"description": "User or service principal that performed the pipeline operation.",
"required": [
"principalType"
],
"properties": {
"userPrincipalName": {
"type": "string",
"description": "The UPN of the user who performed the deployment."
},
"principalObjectID": {
"type": "string",
"format": "uuid",
"description": "The ID of the service principal that performed the deployment."
},
"principalType": {
"description": "The type of user who performed the deployment.",
"$ref": "#/definitions/PrincipalType"
}
}
},
"PipelineOperationNote": {
"description": "A note describing the deployment.",
"required": [
"content",
"isTruncated"
],
"properties": {
"content": {
"type": "string",
"description": "Text describing the deployment."
},
"isTruncated": {
"type": "boolean",
"description": "Indicates if the note is incomplete. True, only part of the note is returned. False, the note is complete."
}
}
},
"DeploymentExecutionPlan": {
"description": "A deployment execution plan",
"properties": {
"steps": {
"type": "array",
"description": "The collection of execution plan steps",
"items": {
"$ref": "#/definitions/DeploymentExecutionStep"
}
}
}
},
"DeploymentExecutionStep": {
"required": [
"index",
"type",
"status",
"lastUpdatedTime"
],
"description": "A deployment execution step",
"properties": {
"index": {
"type": "integer",
"description": "The step index"
},
"type": {
"type": "string",
"description": "The type of deployment step",
"enum": [
"DatasetDeployment",
"ReportDeployment",
"DashboardDeployment",
"DataflowDeployment",
"DatamartDeployment"
],
"x-ms-enum": {
"name": "DeploymentStepType",
"modelAsExtensible": true,
"values": [
{
"value": "DatasetDeployment",
"description": "A step for deploying a single dataset"
},
{
"value": "ReportDeployment",
"description": "A step for deploying a single report"
},
{
"value": "DashboardDeployment",
"description": "A step for deploying a single dashboard"
},
{
"value": "DataflowDeployment",
"description": "A step for deploying a single dataflow"
},
{
"value": "DatamartDeployment",
"description": "A step for deploying a single datamart"
}
]
}
},
"status": {
"type": "string",
"description": "The status of the pipeline operation",
"enum": [
"NotStarted",
"Executing",
"Succeeded",
"Failed"
],
"x-ms-enum": {
"name": "PipelineOperationStatus",
"modelAsExtensible": true,
"values": [
{
"value": "NotStarted",
"description": "The pipeline operation didn't start"
},
{
"value": "Executing",
"description": "The pipeline operation is executing"
},
{
"value": "Succeeded",
"description": "The pipeline operation succeeded"
},
{
"value": "Failed",
"description": "The pipeline operation failed"
}
]
}
},
"preDeploymentDiffState": {
"description": "Is an item new, different or identical to items in the target stage before deployment.",
"$ref": "#/definitions/DeploymentExecutionStepPreDeploymentDiffState"
},
"sourceAndTarget": {
"description": "The source and target items of the step",
"$ref": "#/definitions/DeploymentSourceAndTarget"
},
"error": {
"description": "The error details. Only applicable if the pipeline operation failed.",
"$ref": "#/definitions/DeploymentError"
}
}
},
"DeploymentExecutionStepPreDeploymentDiffState": {
"type": "string",
"description": "Is an item new, different or identical to items in the target stage before deployment.",
"enum": [
"New",
"Different",
"NoDifference"
],
"x-ms-enum": {
"name": "DeploymentExecutionStepPreDeploymentDiffState",
"modelAsExtensible": true,
"values": [
{
"value": "New",
"description": "A new deployed item that doesn't exist in the target stage."
},
{
"value": "Different",
"description": "Before deployment, the item in the source stage wasn't identical to the one in the target stage."
},
{
"value": "NoDifference",
"description": "Before deployment, the item in the source stage was identical to the one in the target stage."
}
]
}
},
"DeploymentSourceAndTarget": {
"required": [
"source"
],
"description": "Source and target items",
"properties": {
"source": {
"type": "string",
"format": "uuid",
"description": "The ID of the Power BI item that's deployed from the source stage"
},
"sourceDisplayName": {
"type": "string",
"description": "The display name of the Power BI item that's deployed from the source stage"
},
"target": {
"type": "string",
"format": "uuid",
"description": "The ID of the Power BI item that will be overwritten in the target stage. Only applies when overwriting a Power BI item."
},
"targetDisplayName": {
"type": "string",
"description": "The name of the Power BI item that will be overwritten in the target stage. Only applies when overwriting a Power BI item."
},
"type": {
"type": "string",
"description": "The type of the Power BI item that will be overwritten in the target stage. Only applies when overwriting a Power BI item."
}
}
},
"DeploymentError": {
"description": "Error details for the deployment step",
"properties": {
"errorCode": {
"type": "string",
"description": "The error code"
},
"errorDetails": {
"type": "string",
"description": "Additional error details"
}
}
},
"PreDeploymentDiffInformation": {
"required": [
"newArtifactsCount",
"differentArtifactsCount",
"noDifferenceArtifactsCount"
],
"description": "The amount of new, different and identical deployed items before deployment.",
"properties": {
"newArtifactsCount": {
"type": "integer",
"description": "The number of new items deployed to the target stage."
},
"differentArtifactsCount": {
"type": "integer",
"description": "The number of deployed items with differences between source and target stages, before deployment."
},
"noDifferenceArtifactsCount": {
"type": "integer",
"description": "The number of identical deployed items in the source and target stages, before deployment."
}
}
},
"DeployRequestBase": {
"required": [
"sourceStageOrder"
],
"description": "Base request to deploy content from a deployment pipeline stage",
"properties": {
"sourceStageOrder": {
"type": "integer",
"description": "The numeric identifier of the pipeline deployment stage that the content should be deployed from. Development (0), Test (1), Production (2)."
},
"isBackwardDeployment": {
"type": "boolean",
"description": "Whether the deployment will be from a later stage in the deployment pipeline, to an earlier one. The default value is `false`."
},
"newWorkspace": {
"description": "The configuration details for creating a new workspace. Required when deploying to a stage that has no assigned workspaces. The deployment will fail if the new workspace configuration details aren't provided when required.",
"$ref": "#/definitions/PipelineNewWorkspaceRequest"
},
"updateAppSettings": {
"description": "Update org app in the target workspace settings",
"$ref": "#/definitions/PipelineUpdateAppSettings"
},
"options": {
"description": "Options that control the behavior of the entire deployment",
"$ref": "#/definitions/DeploymentOptions"
},
"note": {
"type": "string",
"description": "A note describing the deployment."
}
}
},
"DeployAllRequest": {
"description": "A request to deploy all supported items from a deployment pipeline stage",
"allOf": [
{
"$ref": "#/definitions/DeployRequestBase"
}
]
},
"SelectiveDeployRequest": {
"description": "A request to selectively deploy items from a deployment pipeline stage",
"allOf": [
{
"$ref": "#/definitions/DeployRequestBase"
}
],
"properties": {
"datasets": {
"type": "array",
"description": "A list of datasets to be deployed",
"items": {
"$ref": "#/definitions/DeployArtifactRequest"
}
},
"reports": {
"type": "array",
"description": "A list of reports to be deployed",
"items": {
"$ref": "#/definitions/DeployArtifactRequest"
}
},
"dashboards": {
"type": "array",
"description": "A list of dashboards to be deployed",
"items": {
"$ref": "#/definitions/DeployArtifactRequest"
}
},
"dataflows": {
"type": "array",
"description": "A list of dataflows to be deployed",
"items": {
"$ref": "#/definitions/DeployArtifactRequest"
}
},
"datamarts": {
"type": "array",
"description": "A list of datamarts to be deployed",
"items": {
"$ref": "#/definitions/DeployArtifactRequest"
}
}
}
},
"PipelineNewWorkspaceRequest": {
"description": "The configuration details for creating a new workspace. Required when deploying to a stage that has no assigned workspaces.",
"properties": {
"name": {
"type": "string",
"description": "The name of the new workspace"
},
"capacityId": {
"type": "string",
"format": "uuid",
"description": "The ID of the capacity that the new workspace will be assigned to. If unspecified and the API caller has permissions for the source stage workspace capacity, then that capacity will be used. Otherwise, Power BI will select a capacity that the API caller has permissions for."
}
}
},
"PipelineUpdateAppSettings": {
"description": "Configuration update org app after deployment",
"properties": {
"updateAppInTargetWorkspace": {
"type": "boolean",
"description": "Whether to update the app in the target workspace. Only deployed items that already exist in the app are updated. New deployed items are not added to the app."
}
}
},
"DeploymentOptions": {
"description": "Deployment configuration options. Can be specified either for the entire deployment or for a specific Power BI item (such as a report or dashboard). If both are specified, only the deployment options for the Power BI item are used.",
"properties": {
"allowCreateArtifact": {
"type": "boolean",
"description": "Whether creating a new Power BI item (such as a report or a dashboard) in the target stage workspace is allowed. If this option isn't set to `true` when it's required for deployment, the deployment will fail."
},
"allowOverwriteArtifact": {
"type": "boolean",
"description": "Whether overwriting a Power BI item (such as a report or a dashboard) in the target stage workspace is allowed. If this option isn't set to `true` when it's required for deployment, the deployment will fail."
},
"allowSkipTilesWithMissingPrerequisites": {
"type": "boolean",
"description": "Whether to skip tiles that don't have a model or a report in the target stage workspace. If this option isn't set to `true` when it's required for deployment, the deployment will fail."
},
"allowPurgeData": {
"type": "boolean",
"description": "Whether to delete all data from the target Power BI item (such as a report or a dashboard) when there's a schema mismatch. If this option isn't set to `true` when it's required for deployment, the deployment will fail."
},
"allowTakeOver": {
"type": "boolean",
"description": "Whether to allow overriding the previous paginated report owner and becoming the owner of the paginated report. Applicable when deploying a paginated report to a stage that already contains a copy of the paginated report that isn't owned by you. If this option isn't set to `true` when it's required for deployment, the deployment will fail."
},
"allowOverwriteTargetArtifactLabel": {
"type": "boolean",
"description": "Whether the label of a target Power BI item (such as a report or a dashboard) can be changed. The label gets changed when the source is protected but the target isn't. If this option isn't set to `true` when it's required for deployment, the deployment will fail."
}
}
},
"DeployArtifactRequest": {
"required": [
"sourceId"
],
"description": "A request to deploy a Power BI item (such as a report or a dashboard)",
"properties": {
"sourceId": {
"type": "string",
"format": "uuid",
"description": "The ID of the Power BI item (such as a report or a dashboard) to be deployed"
},
"options": {
"description": "The deployment configuration options for a specific Power BI item (such as a report or a dashboard)",
"$ref": "#/definitions/DeploymentOptions"
}
}
},
"CreatePipelineRequest": {
"required": [
"displayName"
],
"description": "A request to create a new deployment pipeline",
"properties": {
"displayName": {
"type": "string",
"description": "The display name for the new deployment pipeline",
"maxLength": 256
},
"description": {
"type": "string",
"description": "The description for the new deployment pipeline",
"maxLength": 1024
}
}
},
"UpdatePipelineRequest": {
"description": "A request to update an existing deployment pipeline. An updated display name and/or a description is required.",
"properties": {
"displayName": {
"type": "string",
"description": "The updated display name for the deployment pipeline",
"maxLength": 256
},
"description": {
"type": "string",
"description": "The updated description for the deployment pipeline",
"maxLength": 1024
}
}
},
"AssignWorkspaceRequest": {
"required": [
"workspaceId"
],
"description": "A request to assign a workspace to a deployment pipeline stage",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The workspace ID."
}
}
},
"PipelineUsers": {
"description": "OData response wrapper for a collection of Power BI deployment pipeline users",
"properties": {
"odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The collection of deployment pipeline users",
"items": {
"$ref": "#/definitions/PipelineUser"
}
}
}
},
"PipelineUser": {
"required": [
"identifier",
"principalType"
],
"description": "A Power BI user access right entry for a deployment pipeline",
"allOf": [
{
"$ref": "#/definitions/Principal"
}
],
"properties": {
"accessRight": {
"type": "string",
"description": "Required. The access right a user has for the deployment pipeline.",
"enum": [
"Admin"
],
"x-ms-enum": {
"name": "PipelineUserAccessRight",
"modelAsExtensible": true,
"values": [
{
"value": "Admin",
"description": "Grants administrator rights to a deployment pipeline"
}
]
}
}
}
},
"DatasetExecuteQueriesRequest": {
"type": "object",
"required": [
"queries"
],
"properties": {
"queries": {
"type": "array",
"description": "The list of dataset queries to execute",
"items": {
"$ref": "#/definitions/DatasetExecuteQueriesQuery"
}
},
"serializerSettings": {
"description": "The serialization settings for the result set",
"$ref": "#/definitions/DatasetExecuteQueriesSerializationSettings"
},
"impersonatedUserName": {
"type": "string",
"description": "The UPN of a user to be impersonated. If the model is not RLS enabled, this will be ignored."
}
},
"description": "A request to execute queries against a dataset"
},
"DatasetExecuteQueriesQuery": {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "The DAX query to be executed"
}
},
"description": "A dataset query"
},
"DatasetExecuteQueriesSerializationSettings": {
"type": "object",
"properties": {
"includeNulls": {
"type": "boolean",
"description": "Whether null (blank) values should be included in the result set. If unspecified, the default value is `false`."
}
},
"description": "The serialization settings for the results of a dataset query"
},
"DatasetExecuteQueriesResponse": {
"type": "object",
"properties": {
"informationProtectionLabel": {
"description": "The details of the information protection label, if any, associated with the dataset.",
"$ref": "#/definitions/DatasetExecuteQueriesInformationProtectionLabel"
},
"results": {
"type": "array",
"description": "The list of results, one per input query.",
"items": {
"$ref": "#/definitions/DatasetExecuteQueriesQueryResult"
}
},
"error": {
"description": "The details of an error, if present.",
"$ref": "#/definitions/DatasetExecuteQueriesError"
}
},
"description": "The response to a dataset execute queries request"
},
"DatasetExecuteQueriesInformationProtectionLabel": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The identifier (guid) of the information protection label"
},
"name": {
"type": "string",
"description": "The display name of the information protection label"
}
},
"description": "The details of the information protection label, if any, associated with the dataset."
},
"DatasetExecuteQueriesQueryResult": {
"type": "object",
"properties": {
"tables": {
"type": "array",
"description": "A list of tables data for a query",
"items": {
"$ref": "#/definitions/DatasetExecuteQueriesTableResult"
}
},
"error": {
"description": "The details of an error, if present.",
"$ref": "#/definitions/DatasetExecuteQueriesError"
}
},
"description": "The results from a single dataset query"
},
"DatasetExecuteQueriesTableResult": {
"type": "object",
"properties": {
"rows": {
"type": "array",
"description": "A list of rows",
"items": {
"$ref": "#/definitions/DatasetExecuteQueriesRowResult"
}
},
"error": {
"description": "The details of an error, if present.",
"$ref": "#/definitions/DatasetExecuteQueriesError"
}
},
"description": "A table of data"
},
"DatasetExecuteQueriesRowResult": {
"type": "object",
"example": {
"Country": "United States",
"Sales": 100.5
},
"description": "A set of key-value pairs representing the column name and a row value. The column name is the key of the pair."
},
"DatasetExecuteQueriesError": {
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "The code associated with the error"
},
"message": {
"type": "string",
"description": "The message of the error. If not present here, this information my also be found in details object nested under the error object."
}
},
"description": "The details of an error, if present."
},
"DatasetQueryScaleOutSyncStatus": {
"description": "Dataset query scale-out sync status",
"type": "object",
"properties": {
"commitVersion": {
"type": "integer",
"format": "int64",
"description": "Latest commit version"
},
"commitTimestamp": {
"type": "string",
"format": "date-time",
"description": "Timestamp indicating the latest commit version"
},
"targetSyncVersion": {
"type": "integer",
"format": "int64",
"description": "Target sync version"
},
"targetSyncTimestamp": {
"type": "string",
"format": "date-time",
"description": "Timestamp indicating the target sync version"
},
"triggerReason": {
"type": "string",
"description": "Query scale-out sync trigger reason",
"enum": [
"explicit",
"automatic",
"system"
],
"x-ms-enum": {
"name": "QueryScaleOutSyncTriggerReason",
"modelAsString": true,
"values": [
{
"value": "explicit",
"description": "Sync was explicitly triggered"
},
{
"value": "automatic",
"description": "Sync was automatically triggered"
},
{
"value": "system",
"description": "Sync was triggered following a system event"
}
]
}
},
"syncStartTime": {
"type": "string",
"format": "date-time",
"description": "Timestamp indicating when last sync started"
},
"syncEndTime": {
"type": "string",
"format": "date-time",
"description": "Timestamp indicating when last sync ended"
},
"minActiveReadVersion": {
"type": "integer",
"format": "int64",
"description": "Minimum active read version"
},
"minActiveReadTimestamp": {
"type": "string",
"format": "date-time",
"description": "Timestamp indicating the minimum active read version"
},
"scaleOutStatus": {
"type": "string",
"description": "Query scale-out status",
"enum": [
"Enabled",
"TenantSettingDisabled",
"StorageModeNotSupported",
"ReadOnlyReplicasDisabled"
],
"x-ms-enum": {
"name": "QueryScaleOutStatus",
"modelAsString": true,
"values": [
{
"value": "Enabled",
"description": "Query scale-out is enabled"
},
{
"value": "TenantSettingDisabled",
"description": "Query scale-out tenant setting is disabled"
},
{
"value": "StorageModeNotSupported",
"description": "Query scale-out is not supported for dataset's storage mode"
},
{
"value": "ReadOnlyReplicasDisabled",
"description": "Query scale-out max read-only replicas is set to 0"
}
]
}
}
}
},
"Scorecards": {
"description": "The OData response wrapper for a Power BI scorecard collection",
"properties": {
"@odata.context": {
"type": "string",
"description": "OData context"
},
"@odata.count": {
"type": "integer"
},
"@odata.nextLink": {
"type": "string",
"description": "Link to the next page results."
},
"value": {
"type": "array",
"description": "The scorecard collection",
"items": {
"$ref": "#/definitions/Scorecard"
}
}
}
},
"ScorecardCreateRequest": {
"description": "A request to create a scorecard",
"required": [
"name"
],
"properties": {
"name": {
"description": "The scorecard name",
"type": "string"
},
"description": {
"description": "Optional. The scorecard description.",
"type": "string"
},
"sensitivityLabelId": {
"description": "Optional. The GUID of a sensitivity label. If you don't want to select a sensitivity label, use a null or empty GUID (`00000000-0000-0000-0000-000000000000`). If default labels are enabled and/or enforced, they will be applied on the scorecard and dataset.",
"type": "string",
"format": "uuid"
}
}
},
"Scorecard": {
"description": "A Power BI scorecard",
"properties": {
"id": {
"description": "The scorecard ID",
"type": "string",
"format": "uuid"
},
"name": {
"description": "The scorecard name",
"type": "string"
},
"createdTime": {
"description": "The UTC time at creation",
"type": "string",
"format": "date-time"
},
"lastModifiedTime": {
"description": "The UTC time at last modification",
"type": "string",
"format": "date-time"
},
"provisioningStatus": {
"type": "string",
"description": "The provisioning status of the scorecard.",
"default": "Initialized",
"enum": [
"Initialized",
"Completed",
"Failed",
"Deprovisioning",
"Deleted"
]
},
"groupId": {
"description": "The ID of the workspace",
"type": "string",
"format": "uuid"
},
"datasetId": {
"description": "The ID of the dataset associated with the scorecard",
"type": "string",
"format": "uuid"
},
"reportId": {
"description": "The ID of the internal report associated with the scorecard",
"type": "string",
"format": "uuid"
},
"description": {
"description": "The scorecard description",
"type": "string"
},
"permissions": {
"description": "The scorecard permissions",
"type": "string",
"enum": [
"None",
"Read",
"Write",
"ReadWrite"
],
"x-ms-enum": {
"name": "ScorecardPermission",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "None",
"description": "No access",
"name": "None"
},
{
"value": "Read",
"description": "Read access",
"name": "Read"
},
{
"value": "Write",
"description": "Write access",
"name": "Write"
},
{
"value": "ReadWrite",
"description": "Read and Write access",
"name": "ReadWrite"
}
]
}
},
"columnSettings": {
"description": "The display settings for columns on a scorecard",
"type": "array",
"items": {
"$ref": "#/definitions/ScorecardColumnSetting"
}
},
"goals": {
"description": "The scorecard goals",
"type": "array",
"items": {
"$ref": "#/definitions/Goal"
}
}
}
},
"Goals": {
"description": "The OData response wrapper for a Power BI goal collection",
"properties": {
"@odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The goal collection",
"items": {
"$ref": "#/definitions/Goal"
}
}
}
},
"GoalRankValidationInfo": {
"description": "The rank validation information for a Power BI goal, to be used with the [Move Goals](/rest/api/power-bi/scorecards_(preview)/move-goals) API request. The caller provides validation information to confirm that they know the existing position of the goal within the hierarchy of goals.",
"properties": {
"goalId": {
"description": "The goal ID",
"type": "string",
"format": "uuid"
},
"currentParentId": {
"description": "The ID of the current parent goal",
"type": "string",
"format": "uuid"
}
}
},
"GoalsMoveRequest": {
"description": "A request object to be used with the [Move Goals](/rest/api/power-bi/scorecards_(preview)/move-goals) API request",
"required": [
"goalToMove"
],
"properties": {
"goalToMove": {
"description": "The rank validation information for the goal to be moved. The caller provides validation information to confirm that they know the existing position of a goal within the hierarchy of goals.",
"$ref": "#/definitions/GoalRankValidationInfo"
},
"newParent": {
"description": "Optional. The rank validation information for the new parent of the goal to be moved. The caller provides validation information to confirm that they know the existing position of a goal within the hierarchy of goals.",
"$ref": "#/definitions/GoalRankValidationInfo"
},
"newPrevious": {
"description": "Optional. The rank validation information for the new previous-sibling of the goal to be moved. The caller provides validation information to confirm that they know the existing position of a goal within the hierarchy of goals.",
"$ref": "#/definitions/GoalRankValidationInfo"
},
"newNext": {
"description": "Optional. The rank validation information for the new next-sibling of the goal to be moved. The caller provides validation information to confirm that they know the existing position of a goal within the hierarchy of goals.",
"$ref": "#/definitions/GoalRankValidationInfo"
}
}
},
"GoalCreateRequest": {
"description": "A Power BI goal create request",
"required": [
"name"
],
"properties": {
"name": {
"description": "The goal name",
"type": "string"
},
"startDate": {
"description": "Optional. The UTC timestamp for the start date of the goal. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"completionDate": {
"description": "Optional. The UTC timestamp for the completion date of the goal. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"parentId": {
"description": "Optional. The ID of the parent goal, if defined.",
"type": "string"
},
"valuesFormatString": {
"description": "Optional. The [custom format string](/power-bi/create-reports/desktop-custom-format-strings) for values.",
"type": "string"
},
"datesFormatString": {
"description": "Optional. The [custom format string](/power-bi/create-reports/desktop-custom-format-strings) for dates.",
"type": "string"
}
}
},
"Goal": {
"description": "A Power BI goal",
"properties": {
"id": {
"description": "The goal ID",
"type": "string",
"format": "uuid"
},
"name": {
"description": "The goal name",
"type": "string"
},
"scorecardId": {
"description": "The scorecard ID",
"type": "string",
"format": "uuid"
},
"createdTime": {
"description": "The UTC time at creation",
"type": "string",
"format": "date-time"
},
"lastModifiedTime": {
"description": "The UTC time at last modification",
"type": "string",
"format": "date-time"
},
"startDate": {
"description": "The UTC timestamp for the start date of the goal. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"completionDate": {
"description": "The UTC timestamp for the completion date of the goal. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"parentId": {
"description": "The ID of the parent goal, if defined.",
"type": "string",
"format": "uuid"
},
"notesCount": {
"description": "notesCount",
"type": "integer",
"format": "int32"
},
"valuesFormatString": {
"description": "valuesFormatString",
"type": "string"
},
"datesFormatString": {
"description": "datesFormatString",
"type": "string"
},
"description": {
"description": "The goal description",
"type": "string"
},
"hasStatusRules": {
"description": "Whether the goal has status rules defined",
"type": "boolean"
},
"statusRules": {
"description": "The goal status rules",
"$ref": "#/definitions/Goals.Rules.GoalRulesContainer"
},
"permissions": {
"description": "The goal permissions",
"type": "string",
"enum": [
"None",
"View",
"UpdateCurrentValue",
"UpdateTargetValue",
"UpdateNotes",
"UpdateStatus",
"UpdateValues",
"All",
"11",
"13",
"15",
"19",
"21",
"23",
"25",
"27",
"29"
],
"x-ms-enum": {
"name": "GoalPermissions",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "None",
"description": "No access.",
"name": "None"
},
{
"value": "View",
"description": "View access only.",
"name": "View"
},
{
"value": "UpdateCurrentValue",
"description": "Current value can be updated.",
"name": "UpdateCurrentValue"
},
{
"value": "UpdateTargetValue",
"description": "Target value can be updated.",
"name": "UpdateTargetValue"
},
{
"value": "UpdateNotes",
"description": "Notes can be updated.",
"name": "UpdateNotes"
},
{
"value": "UpdateStatus",
"description": "Status can be updated.",
"name": "UpdateStatus"
},
{
"value": "UpdateValues",
"description": "Current and target values can be updated.",
"name": "UpdateValues"
},
{
"value": "All",
"description": "Values, notes, and status can be updated.",
"name": "All"
},
{
"value": "11",
"description": "Current value and notes can be updated.",
"name": "UpdateCurrentValueAndNotes"
},
{
"value": "13",
"description": "Target value and notes can be updated.",
"name": "UpdateTargetValueAndNotes"
},
{
"value": "15",
"description": "Current value, target value, and notes can be updated.",
"name": "UpdateCurrentValueAndTargetValueAndNotes"
},
{
"value": "19",
"description": "Current value and status can be updated.",
"name": "UpdateCurrentValueAndStatus"
},
{
"value": "21",
"description": "Target value and status can be updated.",
"name": "UpdateTargetValueAndStatus"
},
{
"value": "23",
"description": "Current value, target value, and status can be updated.",
"name": "UpdateCurrentValueAndTargetValueAndStatus"
},
{
"value": "25",
"description": "Notes and status can be updated.",
"name": "UpdateNotesAndStatus"
},
{
"value": "27",
"description": "Current value, notes, and status can be updated.",
"name": "UpdateCurrentValueAndNotesAndStatus"
},
{
"value": "29",
"description": "Target value, notes, and status can be updated.",
"name": "UpdateTargetValueAndNotesAndStatus"
}
]
}
},
"level": {
"description": "The nested level of the goal in the parent-child hierarchy of scorecard goals",
"type": "integer",
"format": "int32"
},
"rank": {
"description": "The rank of the goal within the ordered set of sibling goals",
"type": "integer",
"format": "int64"
},
"goalValues": {
"description": "The list of goal value check-ins",
"type": "array",
"items": {
"$ref": "#/definitions/GoalValue"
}
},
"aggregations": {
"description": "The list of aggregated properties of the goal",
"type": "array",
"items": {
"$ref": "#/definitions/GoalAggregation"
}
}
}
},
"GoalRefreshHistories": {
"description": "The OData response wrapper for a collection of Power BI goal refresh history entries",
"properties": {
"@odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The goal refresh history entries",
"items": {
"$ref": "#/definitions/GoalRefreshHistory"
}
}
}
},
"GoalRefreshHistory": {
"description": "A refresh history entry for a Power BI goal",
"properties": {
"goalId": {
"description": "The goal ID",
"type": "string",
"format": "uuid"
},
"connectionType": {
"description": "The refresh connection type",
"type": "string",
"enum": [
"Current",
"Target",
"Status"
],
"x-ms-enum": {
"name": "GoalValueType",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "Current",
"description": "Information about the current value of the goal",
"name": "Current"
},
{
"value": "Target",
"description": "Information about the target value of the goal",
"name": "Target"
},
{
"value": "Status",
"description": "Information about the status of the goal",
"name": "Status"
}
]
}
},
"status": {
"description": "The status of the refresh processing.",
"type": "string",
"enum": [
"NotProcessed",
"Succeeded",
"Failed",
"UserNotFound",
"QueryExecutionError",
"QueryResultError",
"BadQueryResultMetadata",
"EmptyGoalValues",
"ConnectedDatasetDeleted",
"UserNotAuthorized",
"ModelNotFound",
"ScorecardNotFound"
],
"x-ms-enum": {
"name": "GoalProcessingStatus",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "NotProcessed",
"description": "Not processed",
"name": "NotProcessed"
},
{
"value": "Succeeded",
"description": "Succeeded",
"name": "Succeeded"
},
{
"value": "Failed",
"description": "Failed",
"name": "Failed"
},
{
"value": "UserNotFound",
"description": "User not found",
"name": "UserNotFound"
},
{
"value": "QueryExecutionError",
"description": "Query execution error",
"name": "QueryExecutionError"
},
{
"value": "QueryResultError",
"description": "Query result error",
"name": "QueryResultError"
},
{
"value": "BadQueryResultMetadata",
"description": "Bad query result metadata",
"name": "BadQueryResultMetadata"
},
{
"value": "EmptyGoalValues",
"description": "Empty goal values",
"name": "EmptyGoalValues"
},
{
"value": "ConnectedDatasetDeleted",
"description": "Connected dataset deleted",
"name": "ConnectedDatasetDeleted"
},
{
"value": "UserNotAuthorized",
"description": "User not authorized",
"name": "UserNotAuthorized"
},
{
"value": "ModelNotFound",
"description": "Model not found",
"name": "ModelNotFound"
},
{
"value": "ScorecardNotFound",
"description": "Scorecard not found",
"name": "ScorecardNotFound"
}
]
}
},
"timestamp": {
"description": "The UTC timestamp of the refresh operation",
"type": "string",
"format": "date-time"
},
"rootActivityId": {
"description": "The root activity ID",
"type": "string",
"format": "uuid"
},
"message": {
"description": "The verbal description of the status of the refresh operation",
"type": "string"
}
}
},
"ScorecardColumnSetting": {
"description": "An entry defining the display settings for columns on a Power BI scorecard",
"required": [
"columnId",
"show"
],
"properties": {
"columnId": {
"description": "The ID for one of the columns on the scorecard control or scorecard Web UI page",
"type": "string",
"format": "int32",
"enum": [
"0",
"1",
"2",
"3",
"4",
"5",
"6"
],
"x-ms-enum": {
"name": "ScorecardColumnId",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "0",
"description": "Name",
"name": "Name"
},
{
"value": "1",
"description": "Owner",
"name": "Owner"
},
{
"value": "2",
"description": "Status",
"name": "Status"
},
{
"value": "3",
"description": "Value",
"name": "Value"
},
{
"value": "4",
"description": "Progress",
"name": "Progress"
},
{
"value": "5",
"description": "DueDate",
"name": "DueDate"
},
{
"value": "6",
"description": "Notes",
"name": "Notes"
}
]
}
},
"show": {
"description": "Whether the column should be visible on the scorecard",
"type": "boolean"
}
}
},
"GoalValues": {
"description": "The OData response wrapper for a Power BI goal value collection",
"properties": {
"@odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The goal value collection",
"items": {
"$ref": "#/definitions/GoalValue"
}
}
}
},
"GoalValueCreateRequest": {
"description": "A creation request for a Power BI goal value check-in",
"required": [
"timestamp"
],
"properties": {
"timestamp": {
"description": "The UTC timestamp of the goal value check-in. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"value": {
"description": "Optional. The current value of the goal.",
"type": "number",
"format": "double"
},
"target": {
"description": "Optional. The target value of the goal.",
"type": "number",
"format": "double"
},
"trend": {
"description": "Optional. The value trend of the goal.",
"type": "integer",
"format": "int32"
},
"forecast": {
"description": "Optional. The value trend forecast of the goal.",
"type": "number",
"format": "double"
},
"status": {
"description": "Optional. The goal status ID.\n\n| ID | Description |\n|-|-|\n| 0 | Not started |\n| 1 | On track |\n| 2 | At risk |\n| 3 | Behind |\n| 4 | Overdue |\n| 5 | Completed |",
"type": "integer",
"format": "int32"
}
}
},
"GoalValue": {
"description": "A Power BI goal value check-in",
"properties": {
"timestamp": {
"description": "The UTC timestamp of the goal value check-in. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"goalId": {
"description": "The goal ID",
"type": "string",
"format": "uuid"
},
"scorecardId": {
"description": "The scorecard ID",
"type": "string",
"format": "uuid"
},
"createdTime": {
"description": "The UTC time at creation",
"type": "string",
"format": "date-time"
},
"lastModifiedTime": {
"description": "The UTC time at last modification",
"type": "string",
"format": "date-time"
},
"value": {
"description": "The goal current value",
"type": "number",
"format": "double"
},
"target": {
"description": "The goal target value",
"type": "number",
"format": "double"
},
"valueDisplayString": {
"description": "The textual representation of the current goal value",
"type": "string"
},
"targetDisplayString": {
"description": "The textual representation of the goal target",
"type": "string"
},
"trend": {
"description": "The goal value trend",
"type": "integer",
"format": "int32"
},
"forecast": {
"description": "The goal value trend forecast",
"type": "number",
"format": "double"
},
"status": {
"description": "The ID of the goal status\n\n| ID | Description |\n|-|-|\n| 0 | Not started |\n| 1 | On track |\n| 2 | At risk |\n| 3 | Behind |\n| 4 | Overdue |\n| 5 | Completed |",
"type": "integer",
"format": "int32"
},
"notes": {
"description": "The notes for the goal",
"type": "array",
"items": {
"$ref": "#/definitions/GoalNote"
}
}
}
},
"GoalAggregation": {
"description": "An entry describing the state of various Power BI goal properties at a specific time (normally current time)",
"required": [
"id",
"timestamp",
"calculationTime",
"scorecardId",
"goalId",
"value",
"type",
"maxLastModifiedTime"
],
"properties": {
"id": {
"description": "The aggregation ID",
"type": "string"
},
"timestamp": {
"description": "The UTC timestamp associated with the aggregated property. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"calculationTime": {
"description": "The UTC timestamp of the aggregation calculation",
"type": "string",
"format": "date-time"
},
"scorecardId": {
"description": "The scorecard ID",
"type": "string",
"format": "uuid"
},
"goalId": {
"description": "The goal ID",
"type": "string",
"format": "uuid"
},
"value": {
"description": "The numeric value of the aggregated property",
"type": "number",
"format": "double"
},
"valueDisplayString": {
"description": "Optional. The alternative text representation of the aggregated property value.",
"type": "string"
},
"type": {
"description": "The type of the aggregated property",
"type": "string",
"enum": [
"Value",
"Target",
"Status",
"Sparkline",
"Change"
],
"x-ms-enum": {
"name": "GoalAggregationType",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "Value",
"description": "Information about the current value of the goal",
"name": "Value"
},
{
"value": "Target",
"description": "Information about the target value of the goal",
"name": "Target"
},
{
"value": "Status",
"description": "Information about the status of the goal",
"name": "Status"
},
{
"value": "Sparkline",
"description": "Information about the sparkline",
"name": "Sparkline"
},
{
"value": "Change",
"description": "Information about the change",
"name": "Change"
}
]
}
},
"maxLastModifiedTime": {
"description": "The UTC timestamp of the latest modification to the aggregated property",
"type": "string",
"format": "date-time"
}
}
},
"GoalNotes": {
"description": "The OData response wrapper for a Power BI goal value note collection",
"properties": {
"@odata.context": {
"type": "string",
"description": "OData context"
},
"value": {
"type": "array",
"description": "The goal value note collection",
"items": {
"$ref": "#/definitions/GoalNote"
}
}
}
},
"GoalNoteRequest": {
"description": "A Power BI goal value check-in note request",
"required": [
"body"
],
"properties": {
"body": {
"description": "The note text",
"type": "string"
}
}
},
"GoalNote": {
"description": "A Power BI goal value check-in note",
"properties": {
"id": {
"description": "The goal value check-in note ID",
"type": "string",
"format": "uuid"
},
"valueTimestamp": {
"description": "The UTC timestamp of the goal value check-in that this note belongs to. The time portion of the timestamp is zero.",
"type": "string",
"format": "date-time"
},
"goalId": {
"description": "The goal ID",
"type": "string",
"format": "uuid"
},
"scorecardId": {
"description": "The scorecard ID",
"type": "string",
"format": "uuid"
},
"lastModifiedTime": {
"description": "The UTC time at last modification",
"type": "string",
"format": "date-time"
},
"content": {
"description": "The content of this note in special format",
"type": "string"
},
"createdTime": {
"description": "The UTC time at creation",
"type": "string",
"format": "date-time"
},
"body": {
"description": "The note text",
"type": "string"
}
}
},
"Goals.Rules.GoalStatusRulesUpdateRequest": {
"description": "The request data to be used when updating rules for a Power BI goal",
"required": [
"defaultOutput"
],
"properties": {
"rules": {
"description": "Optional. The list of rules.",
"type": "array",
"items": {
"$ref": "#/definitions/Goals.Rules.Rule_1OfInt32"
}
},
"defaultOutput": {
"description": "The status ID when no rule matches\n\n| ID | Description |\n|-|-|\n| 0 | Not started |\n| 1 | On track |\n| 2 | At risk |\n| 3 | Behind |\n| 4 | Overdue |\n| 5 | Completed |",
"type": "integer",
"format": "int32"
}
}
},
"Goals.Rules.GoalStatusRules": {
"description": "The request data to be used when defining or reporting rules for the status of a Power BI goal",
"properties": {
"rules": {
"description": "The list of rules",
"type": "array",
"items": {
"$ref": "#/definitions/Goals.Rules.Rule_1OfInt32"
}
},
"defaultOutput": {
"description": "The status ID when no rule matches\n\n| ID | Description |\n|-|-|\n| 0 | Not started |\n| 1 | On track |\n| 2 | At risk |\n| 3 | Behind |\n| 4 | Overdue |\n| 5 | Completed |",
"type": "integer",
"format": "int32"
},
"scorecardObjectId": {
"description": "The scorecard ID",
"type": "string"
},
"goalObjectId": {
"description": "The goal ID",
"type": "string"
},
"lastModifiedTime": {
"description": "The UTC time at last modification",
"type": "string",
"format": "date-time"
}
}
},
"Goals.Rules.Rule_1OfInt32": {
"description": "A status rule object for the Power BI goal",
"properties": {
"conditions": {
"description": "The list of status rule conditions",
"type": "array",
"items": {
"$ref": "#/definitions/Goals.Rules.RuleCondition"
}
},
"output": {
"description": "The status ID when conditions are met\n\n| ID | Description |\n|-|-|\n| 0 | Not started |\n| 1 | On track |\n| 2 | At risk |\n| 3 | Behind |\n| 4 | Overdue |\n| 5 | Completed |",
"type": "integer",
"format": "int32"
}
}
},
"Goals.Rules.GoalRulesContainer": {
"description": "A container for JSON definitions of status rules on a Power BI goal",
"properties": {
"scorecardObjectId": {
"description": "The scorecard ID",
"type": "string",
"format": "uuid"
},
"goalObjectId": {
"description": "The goal ID",
"type": "string",
"format": "uuid"
},
"lastModifiedTime": {
"description": "The UTC time at last modification",
"type": "string",
"format": "date-time"
},
"rules": {
"description": "The list of rules",
"type": "string"
}
}
},
"Goals.Rules.RuleCondition": {
"description": "A Power BI goal status rule",
"properties": {
"fieldComparison": {
"description": "The field comparison definition when `expression` isn't defined",
"$ref": "#/definitions/Goals.Rules.FieldComparison"
},
"expression": {
"description": "The rule condition expression when `fieldComparison` isn't defined",
"type": "string"
}
}
},
"Goals.Rules.FieldComparison": {
"description": "A field comparison specification for Power BI goal status rule",
"properties": {
"field": {
"description": "The name of the field, such as `Timestamp`, `Value`, or `Change`.",
"type": "string"
},
"operator": {
"description": "The comparison operator",
"type": "string",
"enum": [
"Equal",
"GreaterThan",
"GreaterThanOrEqual",
"LessThan",
"LessThanOrEqual"
],
"x-ms-enum": {
"name": "GoalRulesFieldComparisonKind",
"modelAsExtensible": true,
"modelAsString": false,
"values": [
{
"value": "Equal",
"description": "Are equal",
"name": "Equal"
},
{
"value": "GreaterThan",
"description": "Is greater than",
"name": "GreaterThan"
},
{
"value": "GreaterThanOrEqual",
"description": "Is greater than or equal",
"name": "GreaterThanOrEqual"
},
{
"value": "LessThan",
"description": "Is less than",
"name": "LessThan"
},
{
"value": "LessThanOrEqual",
"description": "Is less than or equal",
"name": "LessThanOrEqual"
}
]
}
},
"value": {
"description": "The rule value",
"$ref": "#/definitions/Goals.Rules.RuleValue"
}
}
},
"Goals.Rules.RuleValue": {
"description": "A specification for a condition in a Power BI goal status rule",
"properties": {
"percentOf": {
"description": "An entry defining a percentage of some target metric",
"$ref": "#/definitions/Goals.Rules.PercentOf"
},
"field": {
"description": "The rule value",
"type": "string"
},
"dateTime": {
"description": "The rule value timestamp",
"type": "string",
"format": "date-time"
},
"number": {
"description": "The rule value number",
"type": "number",
"format": "double"
}
}
},
"Goals.Rules.PercentOf": {
"description": "An entry defining a percentage of some target metric in a condition for Power BI goal status rule",
"properties": {
"field": {
"description": "The field for which the percent value is computed",
"type": "string"
},
"percent": {
"description": "The percent value",
"type": "number",
"format": "double"
}
}
}
},
"parameters": {
"ScorecardIdParameter": {
"name": "scorecardId",
"in": "path",
"description": "The unique identifier of the scorecard",
"type": "string",
"format": "uuid",
"required": true
},
"GoalIdParameter": {
"name": "goalId",
"in": "path",
"description": "The unique identifier of the goal",
"type": "string",
"format": "uuid",
"required": true
},
"GroupIdParameter": {
"name": "groupId",
"in": "path",
"required": true,
"type": "string",
"format": "uuid",
"description": "The unique identifier of the workspace"
},
"GoalValueTimestampParameter": {
"name": "timestamp",
"in": "path",
"type": "string",
"format": "date",
"description": "The timestamp for the value of the goal",
"required": true
},
"GoalNoteIdParameter": {
"name": "noteId",
"in": "path",
"description": "The unique identifier of the goal check-in note",
"type": "string",
"format": "uuid",
"required": true
}
},
"responses": {},
"security": [],
"tags": []
}