From 36c12f02c1a286f5d121a0fa814d782e41e0fa0b Mon Sep 17 00:00:00 2001 From: Fabric-APIs-Publish-Specification-Pipeline Date: Tue, 22 Sep 2026 22:09:08 +0000 Subject: [PATCH] Updating swagger files. --- common/definitions.json | 7 +- platform/definitions/platform.json | 27 ++++++- .../examples/platform/CreateItemInFolder.json | 1 + .../platform/CreateItemRequiredOnly.json | 3 +- ...reateItemWithSensitivityLabelStrategy.json | 1 + platform/examples/platform/GetItem.json | 1 + .../platform/GetItemWithDefaultIdentity.json | 1 + .../platform/ListAllItemsInFolder.json | 6 +- .../platform/ListDirectItemsInFolder.json | 3 +- .../platform/ListDirectItemsInWorkspace.json | 3 +- .../platform/ListItemsInWorkspace.json | 6 +- .../platform/ListItemsInWorkspaceByType.json | 3 +- .../ListItemsInWorkspaceWithContinuation.json | 6 +- .../ListItemsWithDefaultIdentity.json | 2 + platform/examples/platform/UpdateItem.json | 1 + .../examples/platform/UpdateLogicalId.json | 16 ++++ platform/swagger.json | 79 ++++++++++++++++++- 17 files changed, 152 insertions(+), 14 deletions(-) create mode 100644 platform/examples/platform/UpdateLogicalId.json diff --git a/common/definitions.json b/common/definitions.json index 141e06e..a770421 100644 --- a/common/definitions.json +++ b/common/definitions.json @@ -599,6 +599,12 @@ "format": "uuid", "readOnly": true }, + "logicalId": { + "description": "The item's logical identifier. Corresponding item instances share the same logical ID. The value is null when no logical ID has been assigned.", + "type": "string", + "format": "uuid", + "readOnly": true + }, "displayName": { "description": "The item display name.", "type": "string", @@ -1313,4 +1319,3 @@ } } } - diff --git a/platform/definitions/platform.json b/platform/definitions/platform.json index d3e9e48..f5c21f5 100644 --- a/platform/definitions/platform.json +++ b/platform/definitions/platform.json @@ -967,6 +967,32 @@ } } }, + "UpdateLogicalIdRequest": { + "description": "Update logical ID request payload.", + "type": "object", + "required": [ "logicalId" ], + "properties": { + "logicalId": { + "description": "The logical ID to update for the item.", + "type": "string", + "format": "uuid", + "readOnly": false + } + } + }, + "LogicalIdResponse": { + "description": "Logical ID response.", + "type": "object", + "required": [ "logicalId" ], + "properties": { + "logicalId": { + "description": "The logical ID of the item.", + "type": "string", + "format": "uuid", + "readOnly": true + } + } + }, "ItemDefinition": { "description": "An item definition object.", "type": "object", @@ -2811,4 +2837,3 @@ } } } - diff --git a/platform/examples/platform/CreateItemInFolder.json b/platform/examples/platform/CreateItemInFolder.json index 46e20a5..92c8ab9 100644 --- a/platform/examples/platform/CreateItemInFolder.json +++ b/platform/examples/platform/CreateItemInFolder.json @@ -16,6 +16,7 @@ "folderId": "bbbbbbbb-1111-2222-3333-cccccccccccc", "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "id": "cccccccc-2222-3333-4444-dddddddddddd", + "logicalId": null, "sensitivityLabel": { "id": "b7b4f4d9-3f0d-4b3e-8f3d-4f6d3f4f3f4f" } diff --git a/platform/examples/platform/CreateItemRequiredOnly.json b/platform/examples/platform/CreateItemRequiredOnly.json index 0facdfc..c7c984c 100644 --- a/platform/examples/platform/CreateItemRequiredOnly.json +++ b/platform/examples/platform/CreateItemRequiredOnly.json @@ -13,7 +13,8 @@ "description": "", "type": "Lakehouse", "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", - "id": "5b218778-e7a5-4d73-8187-f10824047715" + "id": "5b218778-e7a5-4d73-8187-f10824047715", + "logicalId": null } }, "202": { diff --git a/platform/examples/platform/CreateItemWithSensitivityLabelStrategy.json b/platform/examples/platform/CreateItemWithSensitivityLabelStrategy.json index 6be5aaa..36c7bfb 100644 --- a/platform/examples/platform/CreateItemWithSensitivityLabelStrategy.json +++ b/platform/examples/platform/CreateItemWithSensitivityLabelStrategy.json @@ -18,6 +18,7 @@ "type": "Lakehouse", "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", "id": "5b218778-e7a5-4d73-8187-f10824047715", + "logicalId": null, "sensitivityLabel": { "id": "b7b4f4d9-3f0d-4b3e-8f3d-4f6d3f4f3f4f" } diff --git a/platform/examples/platform/GetItem.json b/platform/examples/platform/GetItem.json index 18a3b54..46b68ae 100644 --- a/platform/examples/platform/GetItem.json +++ b/platform/examples/platform/GetItem.json @@ -11,6 +11,7 @@ "type": "Lakehouse", "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", "id": "5b218778-e7a5-4d73-8187-f10824047715", + "logicalId": "1423f3b4-dba5-44c1-a94f-6ae4d776369a", "sensitivityLabel": { "id": "b7b4f4d9-3f0d-4b3e-8f3d-4f6d3f4f3f4f" } diff --git a/platform/examples/platform/GetItemWithDefaultIdentity.json b/platform/examples/platform/GetItemWithDefaultIdentity.json index 8f391a6..38dceae 100644 --- a/platform/examples/platform/GetItemWithDefaultIdentity.json +++ b/platform/examples/platform/GetItemWithDefaultIdentity.json @@ -12,6 +12,7 @@ "type": "Lakehouse", "workspaceId": "0c7ac00e-7b1a-4b7f-ac0f-95636b0c6081", "id": "56f028cd-fa09-46e6-b9b6-82b14185216d", + "logicalId": null, "defaultIdentity": { "id": "ce44af2b-7f4b-4975-979b-4d4d8c43c117", "displayName": "Caleb Foster", diff --git a/platform/examples/platform/ListAllItemsInFolder.json b/platform/examples/platform/ListAllItemsInFolder.json index fe737f5..1ff5508 100644 --- a/platform/examples/platform/ListAllItemsInFolder.json +++ b/platform/examples/platform/ListAllItemsInFolder.json @@ -14,7 +14,8 @@ "description": "A lakehouse used by the sales team.", "type": "Lakehouse", "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", - "folderId": "bbbbbbbb-1111-2222-3333-cccccccccccc" + "folderId": "bbbbbbbb-1111-2222-3333-cccccccccccc", + "logicalId": "1423f3b4-dba5-44c1-a94f-6ae4d776369a" }, { "id": "dddddddd-3333-4444-5555-eeeeeeeeeeee", @@ -22,7 +23,8 @@ "description": "A notebook for refining Q1 of year 2024 sales data analysis through machine learning algorithms.", "type": "Notebook", "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", - "folderId": "cccccccc-8888-9999-0000-dddddddddddd" + "folderId": "cccccccc-8888-9999-0000-dddddddddddd", + "logicalId": null } ] } diff --git a/platform/examples/platform/ListDirectItemsInFolder.json b/platform/examples/platform/ListDirectItemsInFolder.json index 8301d57..df9bc21 100644 --- a/platform/examples/platform/ListDirectItemsInFolder.json +++ b/platform/examples/platform/ListDirectItemsInFolder.json @@ -15,7 +15,8 @@ "description": "A notebook for refining year 2024 sales data analysis through machine learning algorithms.", "type": "Notebook", "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", - "folderId": "bbbbbbbb-1111-2222-3333-cccccccccccc" + "folderId": "bbbbbbbb-1111-2222-3333-cccccccccccc", + "logicalId": null } ] } diff --git a/platform/examples/platform/ListDirectItemsInWorkspace.json b/platform/examples/platform/ListDirectItemsInWorkspace.json index 634ba1e..2d2e702 100644 --- a/platform/examples/platform/ListDirectItemsInWorkspace.json +++ b/platform/examples/platform/ListDirectItemsInWorkspace.json @@ -13,7 +13,8 @@ "displayName": "Lakehouse", "description": "A lakehouse shared by the all teams.", "type": "Lakehouse", - "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb" + "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", + "logicalId": null } ] } diff --git a/platform/examples/platform/ListItemsInWorkspace.json b/platform/examples/platform/ListItemsInWorkspace.json index 0baf145..96eb857 100644 --- a/platform/examples/platform/ListItemsInWorkspace.json +++ b/platform/examples/platform/ListItemsInWorkspace.json @@ -12,14 +12,16 @@ "displayName": "Lakehouse", "description": "A lakehouse used by the analytics team.", "type": "Lakehouse", - "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229" + "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", + "logicalId": "1423f3b4-dba5-44c1-a94f-6ae4d776369a" }, { "id": "58fa1eac-9694-4a6b-ba25-3520288e8fea", "displayName": "Notebook", "description": "A notebook for refining medical data analysis through machine learning algorithms.", "type": "KustoDashboard", - "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229" + "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", + "logicalId": null } ] } diff --git a/platform/examples/platform/ListItemsInWorkspaceByType.json b/platform/examples/platform/ListItemsInWorkspaceByType.json index 5ab0065..abd7b90 100644 --- a/platform/examples/platform/ListItemsInWorkspaceByType.json +++ b/platform/examples/platform/ListItemsInWorkspaceByType.json @@ -12,7 +12,8 @@ "displayName": "Lakehouse Name 1", "description": "A lakehouse used by the analytics team.", "type": "Lakehouse", - "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229" + "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", + "logicalId": "1423f3b4-dba5-44c1-a94f-6ae4d776369a" } ] } diff --git a/platform/examples/platform/ListItemsInWorkspaceWithContinuation.json b/platform/examples/platform/ListItemsInWorkspaceWithContinuation.json index c48fe52..27924bf 100644 --- a/platform/examples/platform/ListItemsInWorkspaceWithContinuation.json +++ b/platform/examples/platform/ListItemsInWorkspaceWithContinuation.json @@ -12,14 +12,16 @@ "displayName": "Lakehouse", "description": "A lakehouse used by the analytics team.", "type": "Lakehouse", - "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229" + "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", + "logicalId": "1423f3b4-dba5-44c1-a94f-6ae4d776369a" }, { "id": "58fa1eac-9694-4a6b-ba25-3520288e8fea", "displayName": "Notebook", "description": "A notebook for refining medical data analysis through machine learning algorithms.", "type": "KustoDashboard", - "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229" + "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", + "logicalId": null } ], "continuationToken": "LDEsMTAwMDAwLDA%3D", diff --git a/platform/examples/platform/ListItemsWithDefaultIdentity.json b/platform/examples/platform/ListItemsWithDefaultIdentity.json index 14d5d46..88d0613 100644 --- a/platform/examples/platform/ListItemsWithDefaultIdentity.json +++ b/platform/examples/platform/ListItemsWithDefaultIdentity.json @@ -16,6 +16,7 @@ "type": "Lakehouse", "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "folderId": "bbbbbbbb-1111-2222-3333-cccccccccccc", + "logicalId": "1423f3b4-dba5-44c1-a94f-6ae4d776369a", "defaultIdentity": { "id": "f3052d1c-61a9-46fb-8df9-0d78916ae041", "displayName": "Caleb Foster", @@ -32,6 +33,7 @@ "type": "Notebook", "workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "folderId": "cccccccc-8888-9999-0000-dddddddddddd", + "logicalId": null, "defaultIdentity": { "id": "f3052d1c-61a9-46fb-8df9-0d78916ae041", "displayName": "Caleb Foster", diff --git a/platform/examples/platform/UpdateItem.json b/platform/examples/platform/UpdateItem.json index 62699fe..51c6ba9 100644 --- a/platform/examples/platform/UpdateItem.json +++ b/platform/examples/platform/UpdateItem.json @@ -15,6 +15,7 @@ "type": "Lakehouse", "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", "id": "5b218778-e7a5-4d73-8187-f10824047715", + "logicalId": "1423f3b4-dba5-44c1-a94f-6ae4d776369a", "sensitivityLabel": { "id": "b7b4f4d9-3f0d-4b3e-8f3d-4f6d3f4f3f4f" } diff --git a/platform/examples/platform/UpdateLogicalId.json b/platform/examples/platform/UpdateLogicalId.json new file mode 100644 index 0000000..4e5a185 --- /dev/null +++ b/platform/examples/platform/UpdateLogicalId.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "workspaceId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229", + "itemId": "5b218778-e7a5-4d73-8187-f10824047715", + "updateLogicalIdRequest": { + "logicalId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229" + } + }, + "responses": { + "200": { + "body": { + "logicalId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229" + } + } + } +} diff --git a/platform/swagger.json b/platform/swagger.json index f4e92a6..c3c68b7 100644 --- a/platform/swagger.json +++ b/platform/swagger.json @@ -1113,6 +1113,81 @@ } } }, + "/workspaces/{workspaceId}/items/{itemId}/logicalId": { + "patch": { + "summary": "Updates the logical ID for the specified item.", + "description": "Corresponding item instances share the same logical ID. Use this operation to resolve logical ID conflicts. Before changing the logical ID, review any automations that rely on its current value and update them as needed. Otherwise, those automations might fail to locate the item or fail because of a duplicate display name. For more information, see [Resolve logical ID conflicts in Microsoft Fabric](/fabric/cicd/git-integration/logical-id-conflict-resolution).\n\n## Permissions\n\nThe caller must have *read and write* permissions for the item.\n\n## Required Delegated Scopes\n\nFor item APIs, use one of the following scope types:\n\n- Generic scope: Item.ReadWrite.All.\n- Specific scope: *itemType*.ReadWrite.All (for example, Notebook.ReadWrite.All).\n\nFor more information about scopes, see [Scopes](/rest/api/fabric/articles/scopes).\n\n## Limitations\n\n- The logical ID can't be an empty GUID (`00000000-0000-0000-0000-000000000000`).\n- The logical ID must be unique within the workspace.\n- The operation isn't supported while a CI/CD operation is active in the workspace.\n\n## Microsoft Entra supported identities\n\nThis API supports the Microsoft [identities](/rest/api/fabric/articles/identity-support) listed in this section.\n\n| Identity | Support |\n|-|-|\n| User | Yes |\n| [Service principal](/entra/identity-platform/app-objects-and-service-principals#service-principal-object) and [Managed identities](/entra/identity/managed-identities-azure-resources/overview) | Yes |\n\n## Interface", + "tags": [ + "Items" + ], + "operationId": "Items_UpdateLogicalId", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "workspaceId", + "description": "The workspace ID.", + "type": "string", + "format": "uuid", + "required": true + }, + { + "in": "path", + "name": "itemId", + "description": "The item ID.", + "type": "string", + "format": "uuid", + "required": true + }, + { + "in": "body", + "name": "updateLogicalIdRequest", + "description": "Update logical ID request payload.", + "schema": { + "$ref": "./definitions/platform.json#/definitions/UpdateLogicalIdRequest" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Request completed successfully.", + "schema": { + "$ref": "./definitions/platform.json#/definitions/LogicalIdResponse" + } + }, + "429": { + "description": "The service rate limit was exceeded. The server returns a `Retry-After` header indicating, in seconds, how long the client must wait before sending additional requests.", + "x-ms-error-response": true, + "headers": { + "Retry-After": { + "type": "integer", + "description": "The number of seconds to wait before retrying the request." + } + }, + "schema": { + "$ref": "../common/definitions.json#/definitions/ErrorResponse" + } + }, + "default": { + "description": "Common error codes:\n\n* ItemNotFound - The requested item was not found.\n\n* ActiveCiCdOperationInProgress - A CI/CD operation is active in the workspace.", + "schema": { + "$ref": "../common/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update logical ID example": { + "$ref": "./examples/platform/UpdateLogicalId.json" + } + } + } + }, "/workspaces/{workspaceId}/items/{itemId}/getDefinition": { "post": { "summary": "Returns the specified item definition.", @@ -1300,7 +1375,7 @@ "/workspaces/{workspaceId}/items/bulkExportDefinitions": { "post": { "summary": "Bulk export item definitions from the workspace.", - "description": "Exports item definitions from multiple items in a workspace in a single operation. This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation). You can export all supported item definitions or selectively export specific items from the specified workspace. To see the supported item types, see [Item definition overview](/rest/api/fabric/articles/item-management/definitions/item-definition-overview).\n\n## Permissions\n\nThe caller must have a *contributor* or higher role for the workspace.\n\nWhen exporting all items in a workspace: Only the Items that the caller has both *read* and *write* permissions for are exported.\n\nWhen exporting specific items: The caller must have *read* and *write* permissions for **all** specified items.\n\n## Required Delegated Scopes\n\nItem.ReadWrite.All.\n\n## Microsoft Entra supported identities\n\nThis API supports the Microsoft [identities](/rest/api/fabric/articles/identity-support) listed in this section.\n\n| Identity | Support |\n|-|-|\n| User | Yes |\n| [Service principal](/entra/identity-platform/app-objects-and-service-principals#service-principal-object) and [Managed identities](/entra/identity/managed-identities-azure-resources/overview) | Only when all the [items](/rest/api/fabric/articles/item-management/item-management-overview) involved in the operation support service principals |\n\n## Interface", + "description": "Exports item definitions from multiple items in a workspace in a single operation. This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation). You can export all supported item definitions or selectively export specific items from the specified workspace. To see the supported item types, see [Item definition overview](/rest/api/fabric/articles/item-management/definitions/item-definition-overview).\n\n## Permissions\n\nThe caller must have a *contributor* or higher role for the workspace.\n\nWhen exporting all items in a workspace: Only the Items that the caller has both *read* and *write* permissions for are exported.\n\nWhen exporting specific items: The caller must have *read* and *write* permissions for **all** specified items.\n\n## Required Delegated Scopes\n\nItem.ReadWrite.All.\n\n## Limitations\n\n The following limitations apply: \n- The maximum supported request payload size is 128 MB. \n- If the request includes one or more Fabric item types, the workspace must be assigned to a Fabric capacity (F SKU, including Fabric Trial). Power BI Premium capacities are supported only for Power BI items and aren't sufficient for Fabric items.\n\n## Microsoft Entra supported identities\n\nThis API supports the Microsoft [identities](/rest/api/fabric/articles/identity-support) listed in this section.\n\n| Identity | Support |\n|-|-|\n| User | Yes |\n| [Service principal](/entra/identity-platform/app-objects-and-service-principals#service-principal-object) and [Managed identities](/entra/identity/managed-identities-azure-resources/overview) | Only when all the [items](/rest/api/fabric/articles/item-management/item-management-overview) involved in the operation support service principals |\n\n## Interface", "tags": [ "Items" ], @@ -1388,7 +1463,7 @@ "/workspaces/{workspaceId}/items/bulkImportDefinitions": { "post": { "summary": "Bulk import item definitions into the workspace.", - "description": "Imports item definitions for multiple items into a workspace in a single operation. This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation). Each item definition in the request will be processed, creating new items or updating existing ones as determined by the system based on whether the item already exists. To see the supported item types, see [Item definition overview](/rest/api/fabric/articles/item-management/definitions/item-definition-overview).\n\n## Permissions\n\nThe caller must have a *contributor* or higher role for the workspace.\n\nThe caller must have *read and write* permissions for each item being updated.\n\n## Required Delegated Scopes\n\nItem.ReadWrite.All.\n\n## Microsoft Entra supported identities\n\nThis API supports the Microsoft [identities](/rest/api/fabric/articles/identity-support) listed in this section.\n\n| Identity | Support |\n|-|-|\n| User | Yes |\n| [Service principal](/entra/identity-platform/app-objects-and-service-principals#service-principal-object) and [Managed identities](/entra/identity/managed-identities-azure-resources/overview) | Only when all the [items](/rest/api/fabric/articles/item-management/item-management-overview) involved in the operation support service principals |\n\n## Interface", + "description": "Imports item definitions for multiple items into a workspace in a single operation. This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation). Each item definition in the request will be processed, creating new items or updating existing ones as determined by the system based on whether the item already exists. To see the supported item types, see [Item definition overview](/rest/api/fabric/articles/item-management/definitions/item-definition-overview).\n\n## Permissions\n\nThe caller must have a *contributor* or higher role for the workspace.\n\nThe caller must have *read and write* permissions for each item being updated.\n\n## Required Delegated Scopes\n\nItem.ReadWrite.All.\n\n## Limitations\n\n The following limitations apply: \n- The maximum supported request payload size is 128 MB. \n- If the request includes one or more Fabric item types, the workspace must be assigned to a Fabric capacity (F SKU, including Fabric Trial). Power BI Premium capacities are supported only for Power BI items and aren't sufficient for Fabric items.\n\n## Microsoft Entra supported identities\n\nThis API supports the Microsoft [identities](/rest/api/fabric/articles/identity-support) listed in this section.\n\n| Identity | Support |\n|-|-|\n| User | Yes |\n| [Service principal](/entra/identity-platform/app-objects-and-service-principals#service-principal-object) and [Managed identities](/entra/identity/managed-identities-azure-resources/overview) | Only when all the [items](/rest/api/fabric/articles/item-management/item-management-overview) involved in the operation support service principals |\n\n## Interface", "tags": [ "Items" ],