Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article provides a breakdown of the definition structure for report items.
Supported formats
Report definitions can use either PBIR or PBIR-Legacy format, but not both at the same time. The report format matches how it is stored in the service - if it’s stored as a PBIR, it will be returned in PBIR format.
By default the PBIR format is used.
Definition parts
| Definition part path | type | Required | Description |
|---|---|---|---|
StaticResources/ |
StaticResources part | false | A folder that includes resource files specific to the report and loaded by the user, like custom themes, images, and custom visuals. |
definition/ |
definition/ parts (PBIR) | true 1 | Definition of the Power BI Report (e.g. pages, visuals, bookmarks) using PBIR JSON format as a folder. |
report.json |
report.json part (PBIR-Legacy) | true 1 | Definition of the Power BI Report (e.g. pages, visuals, bookmarks) using PBIR-Legacy single JSON file. |
semanticModelDiagramLayout.json |
semanticModelDiagramLayout.json part | false | Contains data model diagrams describing the structure of the semantic model associated with the report. |
definition.pbir |
definition.pbir part | true | Overall definition of the report and core settings. Also holds the reference to the semantic model of the report, it's possible to rebind the report to a different semantic model by updating this file. |
1 - The definition/ part is required for PBIR format, while report.json is required for PBIR-Legacy format. These are mutually exclusive - a report uses one format or the other, not both.
Learn more about report definition files in Power BI Project documentation.
Payload example using PBIR format:
Report/
├── StaticResources/
│ ├── RegisteredResources/
│ │ ├── logo.jpg
│ │ ├── CustomTheme4437032645752863.json
├── definition/
│ ├── bookmarks/
│ │ ├── Bookmark7c19b7211ada7de10c30.bookmark.json
│ │ ├── bookmarks.json
│ ├── pages/
│ │ ├── 61481e08c8c340011ce0/
│ │ │ ├── visuals/
│ │ │ │ ├── 3852e5607b224b8ebd1a/
│ │ │ │ │ ├── visual.json
│ │ │ │ │ ├── mobile.json
│ │ │ │ ├── 7df3763f63115a096029/
│ │ │ │ │ ├── visual.json
│ │ │ ├── page.json
│ │ ├── pages.json
│ ├── version.json
│ ├── report.json
├── semanticModelDiagramLayout.json
└── definition.pbir
{
"parts": [
{
"path": "definition/report.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/version.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/pages/pages.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/pages/61481e08c8c340011ce0/page.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/pages/61481e08c8c340011ce0/visuals/3852e5607b224b8ebd1a/visual.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/pages/61481e08c8c340011ce0/visuals/3852e5607b224b8ebd1a/mobile.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/pages/61481e08c8c340011ce0/visuals/7df3763f63115a096029/visual.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/bookmarks/Bookmark7c19b7211ada7de10c30.bookmark.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition/bookmarks/bookmarks.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "StaticResources/RegisteredResources/logo.jpg",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "StaticResources/RegisteredResources/CustomTheme4437032645752863.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": "definition.pbir",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
}
]
}
definition/ part
Example of definition/ folder:
definition/
├── bookmarks/
│ ├── Bookmark7c19b7211ada7de10c30.bookmark.json
│ ├── bookmarks.json
├── pages/
│ ├── 61481e08c8c340011ce0/
│ │ ├── visuals/
│ │ │ ├── 3852e5607b224b8ebd1a/
│ │ │ │ ├── visual.json
│ │ │ │ ├── mobile.json
│ │ │ ├── 7df3763f63115a096029/
│ │ │ │ ├── visual.json
│ │ ├── page.json
│ ├── pages.json
├── version.json
├── report.json
Example of report.json
{
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/report/3.1.0/schema.json",
"themeCollection": {
"baseTheme": {
"name": "CY25SU12",
"reportVersionAtImport": {
"visual": "2.5.0",
"report": "3.1.0",
"page": "2.3.0"
},
"type": "SharedResources"
},
"customTheme": {
"name": "AccessibleCityPark",
"reportVersionAtImport": {
"visual": "2.5.0",
"report": "3.1.0",
"page": "2.3.0"
},
"type": "SharedResources"
}
},
"objects": {
"outspacePane": [
{
"properties": {
"expanded": {
"expr": {
"Literal": {
"Value": "false"
}
}
},
"visible": {
"expr": {
"Literal": {
"Value": "true"
}
}
}
}
}
]
},
"publicCustomVisuals": [
"Gantt1448688115699" // Unique name of the custom visual. This name is used in the `visual.visualType` property of the `visual.json` files.
],
"resourcePackages": [
{
"name": "SharedResources",
"type": "SharedResources",
"items": [
{
"name": "CY25SU12",
"path": "BaseThemes/CY25SU12.json",
"type": "BaseTheme"
},
{
"name": "AccessibleCityPark",
"path": "BuiltInThemes/AccessibleCityPark.json",
"type": "CustomTheme"
}
]
},
{
"name": "RegisteredResources",
"type": "RegisteredResources",
"items": [
{
"name": "fabric_48_color21993586118811193.svg",
"path": "fabric_48_color21993586118811193.svg",
"type": "Image"
}
]
}
],
"settings": {
"useStylableVisualContainerHeader": true,
"defaultFilterActionIsDataFilter": true,
"defaultDrillFilterOtherVisuals": true,
"allowChangeFilterTypes": true,
"allowInlineExploration": true,
"useEnhancedTooltips": true
},
"slowDataSourceSettings": {
"isCrossHighlightingDisabled": false,
"isSlicerSelectionsButtonEnabled": false,
"isFilterSelectionsButtonEnabled": false,
"isFieldWellButtonEnabled": false,
"isApplyAllButtonEnabled": false
}
}
Example of pages/61481e08c8c340011ce0/page.json
{
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/page/2.0.0/schema.json",
"name": "61481e08c8c340011ce0",
"displayName": "Page 1",
"displayOption": "FitToPage",
"height": 720,
"width": 1280
}
Example of pages/61481e08c8c340011ce0/visuals/3852e5607b224b8ebd1a/visual.json
{
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/visualContainer/2.0.0/schema.json",
"name": "3852e5607b224b8ebd1a",
"position": {
"x": 479.17437557394328,
"y": 210.50760538349616,
"z": 1000,
"height": 272.09459029940882,
"width": 341.09465386815845,
"tabOrder": 1000
},
"visual": {
"visualType": "barChart",
"query": {
"queryState": {
"Category": {
"projections": [
{
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Product"
}
},
"Property": "Brand"
}
},
"queryRef": "Product.Brand",
"active": true
},
{
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Product"
}
},
"Property": "Product"
}
},
"queryRef": "Product.Product",
"active": false
}
]
},
"Series": {
"projections": [
{
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Customer"
}
},
"Property": "Gender"
}
},
"queryRef": "Customer.Gender"
}
]
},
"Y": {
"projections": [
{
"field": {
"Measure": {
"Expression": {
"SourceRef": {
"Entity": "Sales"
}
},
"Property": "Sales Amount"
}
},
"queryRef": "Measure Table.Sales Amount"
}
]
}
},
"sortDefinition": {
"sort": [
{
"field": {
"Measure": {
"Expression": {
"SourceRef": {
"Entity": "Sales"
}
},
"Property": "Sales Amount"
}
},
"direction": "Descending"
}
]
}
},
"drillFilterOtherVisuals": true
},
"filterConfig": {
"filters": [
{
"name": "Filter",
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Calendar"
}
},
"Property": "Year"
}
},
"type": "Categorical",
"howCreated": "User"
}
]
}
}
definition.pbir part
Example of definition.pbir file targeting a local semantic model folder:
{
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definitionProperties/2.0.0/schema.json",
"version": "4.0",
"datasetReference": {
"byPath": {
"path": "../Sales.SemanticModel"
}
}
}
Example of definition.pbir file targeting a semantic model in a workspace:
{
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definitionProperties/2.0.0/schema.json",
"version": "4.0",
"datasetReference": {
"byConnection": {
"connectionString": "semanticmodelid=[SemanticModelId]"
}
}
}
semanticModelDiagramLayout.json part
Example of semanticModelDiagramLayout.json file:
{
"version": "1.1.0",
"diagrams": [
{
"ordinal": 0,
"scrollPosition": {
"x": 0,
"y": 74.883720930232556
},
"nodes": [
{
"location": {
"x": 942.5095849858792,
"y": 14.090768666666882
},
"nodeIndex": "[Table Name]",
"nodeLineageTag": "[Table Lineage Tag]",
"size": {
"height": 1000,
"width": 254
},
"zIndex": 5
},
{
"location": {
"x": 537.83428438628755,
"y": 836.33418866666739
},
"nodeIndex": "[Table Name]",
"nodeLineageTag": "[Table Lineage Tag]",
"size": {
"height": 481,
"width": 276
},
"zIndex": 2
}
],
"name": "All tables",
"zoomValue": 74.782608695652172,
"pinKeyFieldsToTop": false,
"showExtraHeaderInfo": false,
"hideKeyFieldsWhenCollapsed": false,
"tablesLocked": false
}
],
"selectedDiagram": "All tables",
"defaultDiagram": "All tables"
}