{ "swagger": "2.0", "info": { "title": "Platform REST APIs", "version": "v1" }, "schemes": [ "https" ], "host": "api.fabric.microsoft.com", "basePath": "/v1", "paths": { "/workspaces": { "post": { "summary": "Creates a new workspace.", "description": "## Permissions\n\n- The caller must have permission to create workspaces granted by Fabric administrator. For more information see: [create workspaces](/fabric/admin/portal-workspace#create-workspaces-new-workspace-experience).\n- The caller must have *contributor* permissions or be an Admin on the capacity. For more information, see: [capacity user permissions](/power-bi/enterprise/service-admin-premium-manage#manage-user-permissions).\n- Service Principals must have permission granted by Fabric administrator. For more information see: [Service principals can create workspaces, connections, and deployment pipelines](/fabric/admin/service-admin-portal-developer#service-principals-can-create-workspaces-connections-and-deployment-pipelines). \n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 200 calls/min |\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": [ "Workspaces" ], "operationId": "Workspaces_CreateWorkspace", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "createWorkspaceRequest", "description": "Create workspace request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/CreateWorkspaceRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created.", "headers": { "Location": { "description": "The URL of the newly created workspace.", "type": "string" } }, "schema": { "$ref": "./definitions/platform.json#/definitions/Workspace" } }, "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* DomainNotFound - The provided domain was not found\n\n* InsufficientPermissionsToDomain - User permission to the domain is not sufficient to perform the operation\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create a workspace example": { "$ref": "./examples/platform/CreateWorkspaceRequiredOnly.json" } } }, "get": { "summary": "Returns a list of workspaces the principal can access. Use the roles query parameter to filter results by the principal workspace role.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 500 calls/min |\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": [ "Workspaces" ], "operationId": "Workspaces_ListWorkspaces", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "roles", "description": "A list of [roles](/power-bi/collaborate-share/service-roles-new-workspaces#workspace-roles). Separate values using a comma. If not provided, all workspaces are returned.", "type": "string", "required": false }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false }, { "in": "query", "name": "preferWorkspaceSpecificEndpoints", "description": "A setting that controls whether to include the workspace-specific API endpoint per workspace. True - Include the workspace-specific API endpoint, False - Do not include the workspace-specific API endpoint.", "type": "boolean", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Workspaces" } }, "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* InvalidParameter - Invalid workspace role.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List workspaces example": { "$ref": "./examples/platform/ListWorkspaces.json" }, "List workspaces with roles filter example": { "$ref": "./examples/platform/ListWorkspacesWithWorkspaceRoleFilter.json" }, "List workspaces with continuation example": { "$ref": "./examples/platform/ListWorkspacesWithContinuation.json" }, "List workspaces with preferWorkspaceSpecificEndpoints example": { "$ref": "./examples/platform/ListWorkspacesWithPreferWorkspaceSpecificEndpoints.json" } } } }, "/workspaces/{workspaceId}": { "get": { "summary": "Returns specified workspace information.", "description": "## Permissions\n\n The caller must have *viewer* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 500 calls/min |\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": [ "Workspaces" ], "operationId": "Workspaces_GetWorkspace", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "preferWorkspaceSpecificEndpoints", "description": "A setting that controls whether to include workspace-specific or general public endpoints for API and OneLake access. True - Include workspace-specific endpoints for API and OneLake access, False - Include general public endpoints for OneLake access.", "type": "boolean", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/WorkspaceInfo" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get a workspace example": { "$ref": "./examples/platform/GetWorkspace.json" }, "Get a workspace with preferWorkspaceSpecificEndpoints example": { "$ref": "./examples/platform/GetWorkspaceWithPreferWorkspaceSpecificEndpoints.json" } } }, "patch": { "summary": "Updates the specified workspace properties.", "description": "## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 200 calls/min |\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": [ "Workspaces" ], "operationId": "Workspaces_UpdateWorkspace", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateWorkspaceRequest", "description": "Update workspace request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateWorkspaceRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Workspace" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update a workspace example": { "$ref": "./examples/platform/UpdateWorkspace.json" } } }, "delete": { "summary": "Deletes the specified workspace and the items under it.", "description": "## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 200 calls/min |\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": [ "Workspaces" ], "operationId": "Workspaces_DeleteWorkspace", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete a workspace example": { "$ref": "./examples/platform/DeleteWorkspace.json" } } } }, "/workspaces/{workspaceId}/roleAssignments": { "post": { "summary": "Adds a workspace role assignment.", "description": "To get the principal user object ID required for request body, see [Find the user object ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must have *member* or higher workspace role. \n- Members can add members or others with lower permissions. For more information see: [workspace roles](/power-bi/collaborate-share/service-roles-new-workspaces#workspace-roles).\n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Limitations\n\n- Each workspace is limited to a maximum of 1,000 users or groups in workspace roles (Admin, Member, Contributor, Viewer). The number of users within a group is not limited. The limitation also covers external guests.\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": [ "Workspaces" ], "operationId": "Workspaces_AddWorkspaceRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "workspaceRoleAssignmentRequest", "description": "Add workspace role assignment request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/AddWorkspaceRoleAssignmentRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created.", "headers": { "Location": { "description": "The URL of the newly created workspace role assignment.", "type": "string" } }, "schema": { "$ref": "./definitions/platform.json#/definitions/WorkspaceRoleAssignment" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Add workspace role assignment example": { "$ref": "./examples/platform/AddWorkspaceRoleAssignment.json" } } }, "get": { "summary": "Returns a list of workspace role assignments.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\n The caller must have *member* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_ListWorkspaceRoleAssignments", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/WorkspaceRoleAssignments" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace role assignments example": { "$ref": "./examples/platform/GetWorkspaceRoleAssignments.json" }, "Get workspace role assignments with continuation example": { "$ref": "./examples/platform/GetWorkspaceRoleAssignmentsWithContinuation.json" } } } }, "/workspaces/{workspaceId}/roleAssignments/{workspaceRoleAssignmentId}": { "delete": { "summary": "Deletes the specified workspace role assignment.", "description": "The role assignment of the last admin can't be deleted.\n\n## Permissions\n\n The caller must have *admin* workspace role.\n\n## Required Delegated Scopes\n\n Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_DeleteWorkspaceRoleAssignment", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "workspaceRoleAssignmentId", "description": "The workspace role assignment ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete workspace role assignment example": { "$ref": "./examples/platform/DeleteWorkspaceRoleAssignment.json" } } }, "patch": { "summary": "Updates a workspace role assignment.", "description": "The role assignment of the last admin can't be changed.\n\n## Permissions\n\nThe caller must have *admin* role on the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_UpdateWorkspaceRoleAssignment", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "workspaceRoleAssignmentId", "description": "The workspace role assignment ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateWorkspaceRoleAssignmentRequest", "description": "Update workspace role assignment request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateWorkspaceRoleAssignmentRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/WorkspaceRoleAssignment" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update workspace role assignment example": { "$ref": "./examples/platform/UpdateWorkspaceRoleAssignment.json" } } }, "get": { "summary": "Returns information of a workspace role assignment.", "description": "## Permissions\n\n The caller must have *member* or higher role on the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetWorkspaceRoleAssignment", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "workspaceRoleAssignmentId", "description": "The workspace role assignment ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/WorkspaceRoleAssignment" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace role assignment example": { "$ref": "./examples/platform/GetWorkspaceRoleAssignment.json" } } } }, "/workspaces/{workspaceId}/items": { "get": { "summary": "Returns a list of items from the specified workspace.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\n The caller must have a *viewer* workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.ReadWrite.All\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 500 calls/min |\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_ListItems", "produces": [ "application/json" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "type", "description": "The item's type.", "type": "string", "required": false }, { "in": "query", "name": "recursive", "description": "Lists items in a folder and its nested folders, or just a folder only. True - All items in the folder and its nested folders are listed, False - Only items in the folder are listed. The default value is true.", "type": "boolean", "required": false }, { "in": "query", "name": "rootFolderId", "description": "This parameter allows users to filter items based on a specific root folder. If not provided, the workspace is used as the root folder.", "type": "string", "format": "uuid", "required": false }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false }, { "in": "query", "name": "include", "description": "Specifies which item properties to include in the response as a comma-separated list. Additional values may be added over time.", "type": "array", "collectionFormat": "csv", "items": { "type": "string", "enum": [ "DefaultIdentity" ], "x-ms-enum": { "name": "ItemIncludeOption", "modelAsString": true, "values": [ { "value": "DefaultIdentity", "description": "Includes the default identity" } ] } }, "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Items" } }, "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* InvalidItemType - Invalid item type.\n\n* FolderNotFound - Could not find the requested folder.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List all items in workspace example": { "$ref": "./examples/platform/ListItemsInWorkspace.json" }, "List all items in workspace by type query parameter example": { "$ref": "./examples/platform/ListItemsInWorkspaceByType.json" }, "List direct items in workspace example": { "$ref": "./examples/platform/ListDirectItemsInWorkspace.json" }, "List all items in a specific folder example": { "$ref": "./examples/platform/ListAllItemsInFolder.json" }, "List direct items in a specific folder example": { "$ref": "./examples/platform/ListDirectItemsInFolder.json" }, "List items in workspace with continuation example": { "$ref": "./examples/platform/ListItemsInWorkspaceWithContinuation.json" }, "List items with include option example": { "$ref": "./examples/platform/ListItemsWithDefaultIdentity.json" } } }, "post": { "summary": "Creates an item in the specified workspace.", "description": "This API is supported for a number of item types, find the supported item types in [Item management overview](/rest/api/fabric/articles/item-management/item-management-overview). You can use [Get item definition API](/rest/api/fabric/core/items/get-item-definition) to get an item definition. \n\nThis API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n ## Permissions \n The caller must have a *contributor* workspace role.\n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes). \n\n## Limitations \n- To create a non-PowerBI Fabric item the workspace must be on a supported Fabric capacity. For more information see [Microsoft Fabric license types](/fabric/enterprise/licenses#microsoft-fabric-license-types). \n- To create a PowerBI item, the user must have the appropriate license. For more information see [Microsoft Fabric license types](/fabric/enterprise/licenses#microsoft-fabric-license-types). \n- When creating an item, use either `creationPayload` or `definition`, but do not use both at the same time. \n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 200 calls/min |\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) | When the item type in the call is supported. Check the corresponding API for the item type you're calling, to see if your call is supported. For example, semantic models are supported. |\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_CreateItem", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "createItemRequest", "description": "Create item request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/CreateItemRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created", "schema": { "$ref": "../common/definitions.json#/definitions/Item" } }, "202": { "description": "Request accepted, item provisioning in progress", "headers": { "Location": { "description": "The URL of the operation status which tracks the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* InvalidItemType - Item type is invalid.\n\n* ItemDisplayNameAlreadyInUse - Item display name is already used.\n\n* CorruptedPayload - The provided payload is corrupted.\n\n* FolderNotFound - Could not find the requested folder.\n\n* WorkspaceItemsLimitExceeded - Workspace item limit exceeded.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create an item example": { "$ref": "./examples/platform/CreateItemRequiredOnly.json" }, "Create an item in folder example": { "$ref": "./examples/platform/CreateItemInFolder.json" }, "Create an item with sensitivity label strategy example": { "$ref": "./examples/platform/CreateItemWithSensitivityLabelStrategy.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}": { "get": { "summary": "Returns properties of the specified item.", "description": "This API is supported for a number of item types, find the supported item types in [Item management overview](/rest/api/fabric/articles/item-management/item-management-overview). \n\nFor retrieving additional type specific properties, refer to the get API reference page of the specific item type.\n\n## Permissions\n\n The caller must have *read* permissions for the item. \n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.Read.All or Item.ReadWrite.All \n- Specific scope: *itemType*.Read.All or *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see: [scopes article](/rest/api/fabric/articles/scopes).\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 500 calls/min |\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_GetItem", "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": "query", "name": "include", "description": "Specifies which item properties to include in the response as a comma-separated list. Additional values may be added over time.", "type": "array", "collectionFormat": "csv", "items": { "type": "string", "enum": [ "DefaultIdentity" ], "x-ms-enum": { "name": "ItemIncludeOption", "modelAsString": true, "values": [ { "value": "DefaultIdentity", "description": "Includes the default identity" } ] } }, "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "../common/definitions.json#/definitions/Item" } }, "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.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get an item example": { "$ref": "./examples/platform/GetItem.json" }, "Get an item with include default Identity option example": { "$ref": "./examples/platform/GetItemWithDefaultIdentity.json" } } }, "patch": { "summary": "Updates the properties of the specified item.", "description": "This API is supported for a number of item types, find the supported item types and information about their definition structure in [Item management overview](/rest/api/fabric/articles/item-management/item-management-overview).\n\n## Permissions\n\n The caller must have *read and write* permissions for the item.\n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see: [scopes article](/rest/api/fabric/articles/scopes).\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 200 calls/min |\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) | When the item type in the call is supported. Check the corresponding API for the item type you're calling, to see if your call is supported. For example, semantic models are supported. |\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_UpdateItem", "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": "updateItemRequest", "description": "Update item request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateItemRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "../common/definitions.json#/definitions/Item" } }, "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* InvalidRequest - Invalid update request.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update an item example": { "$ref": "./examples/platform/UpdateItem.json" } } }, "delete": { "summary": "Deletes the specified item.", "description": "This API is supported for a number of item types, find the supported item types and information about their definition structure in [Item management overview](/rest/api/fabric/articles/item-management/item-management-overview). The default behavior is to soft delete the item for supported item types.\n\n> [!NOTE]\n> The soft-deleted items will be counted toward the maximum number of items allowed in each workspace.\n\n## Permissions\n\nThe caller must have *write* permissions for the item for soft deletion.\nThe caller must have workspace *Admin* role assigned for hard/permanent deletion.\n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified Quota for Platform APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 200 calls/min |\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) | When the item type in the call is supported. Check the corresponding API for the item type you're calling, to see if your call is supported. For example, semantic models are supported. |\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_DeleteItem", "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": "query", "name": "hardDelete", "description": "Specifies whether to perform a hard delete. When set to `true`, the item is permanently deleted and cannot be recovered. When set to `false` or not specified, the item is soft-deleted if the item type supports it.", "type": "boolean", "required": false } ], "responses": { "200": { "description": "Request completed successfully." }, "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* InsufficientWorkspaceRole - User doesn't have sufficient workspace role.\n\n* FeatureNotAvailable - This could be due to the soft deletion feature not being available.\n\n* UnsupportedItemType - This could be due to the soft deletion feature not supported by the requested item type.\n\n* TenantSwitchDisabled - This could be due to the soft deletion feature being disabled by the tenant admin.\n\n* InvalidTargetItemStateForSoftDeletion - The item is in invalid states for soft deletion.\n\n* InvalidParentItemStateForSoftDeletion - The item's parent item is not in Active state.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete an item example": { "$ref": "./examples/platform/DeleteItem.json" }, "Hard delete an item example": { "$ref": "./examples/platform/HardDeleteItem.json" } } } }, "/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.", "description": "This API is supported for a number of item types, find the supported item types and information about their definition structure in [Item definition overview](/rest/api/fabric/articles/item-management/definitions/item-definition-overview).\nWhen you get an item's definition, the sensitivity label is not a part of the definition.\n\nThis API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\n The caller must have *read and write* permissions for the item. \n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [Scopes article](/rest/api/fabric/articles/scopes). \n\n## Limitations\n\nTo retrieve the definition of an item protected by an encrypted sensitivity label, the caller must have sufficient [usage rights](/fabric/enterprise/powerbi/service-security-sensitivity-label-change-enforcement) to remove the label, as configured in [Microsoft Purview](/purview/purview).\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) | When the item type in the call is supported. Check the corresponding API for the item type you're calling, to see if your call is supported. For example, semantic models are supported. |\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_GetItemDefinition", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "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": "query", "name": "format", "description": "The format of the item definition.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/ItemDefinitionResponse" } }, "202": { "description": "Request accepted. Retrieving the definition is in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID which can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* OperationNotSupportedForItem - Operation not supported for requested item.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get an item definition example": { "$ref": "./examples/platform/GetItemDefinition.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/updateDefinition": { "post": { "summary": "Overrides the definition for the specified item.", "description": "This API is supported for a number of item types, find the supported item types and information about their definition structure in [Item definition overview](/rest/api/fabric/articles/item-management/definitions/item-definition-overview).\nUpdating the item's definition, does not affect its sensitivity label. \n\nThis API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\n The caller must have *read and write* permissions for the item.\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\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) | When the item type in the call is supported. Check the corresponding API for the item type you're calling, to see if your call is supported. For example, semantic models are supported. |\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_UpdateItemDefinition", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "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": "query", "name": "updateMetadata", "description": "When set to true and the .platform file is provided as part of the definition, the item's metadata is updated using the metadata in the .platform file", "type": "boolean", "required": false }, { "in": "body", "name": "updateItemDefinitionRequest", "description": "Update item definition request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateItemDefinitionRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "202": { "description": "Request accepted. Update definition is in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* OperationNotSupportedForItem - Operation not supported for requested item.\n\n* CorruptedPayload - The provided payload is corrupted.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update an item definition example": { "$ref": "./examples/platform/UpdateItemDefinition.json" } } } }, "/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## 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" ], "operationId": "Items_BulkExportItemDefinitions", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "bulkExportItemDefinitionsRequest", "description": "The requested items to export their item definition.", "schema": { "$ref": "./definitions/platform.json#/definitions/BulkExportItemDefinitionsRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/BulkExportItemDefinitionsResponse" } }, "202": { "description": "Request accepted. Retrieving the definitions is in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID which can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* ItemReferencedMoreThanOnce - The same item is being referenced more than once in the request.\n\n* ItemsHaveProtectedLabels - Requested items have protected labels.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Bulk export selected item definitions example": { "$ref": "./examples/platform/BulkExportItemDefinitionsSelective.json" }, "Bulk export all supported item definitions in workspace example": { "$ref": "./examples/platform/BulkExportItemDefinitionsAll.json" } } } }, "/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## 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" ], "operationId": "Items_BulkImportItemDefinitions", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "bulkImportItemDefinitionsRequest", "description": "Import item definitions request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/BulkImportItemDefinitionsRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/BulkImportItemDefinitionsResponse" } }, "202": { "description": "Request accepted. Update definition is in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID which can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* DuplicateDisplayNameAndType - Duplicate items detected having the same display name and type.\n\n* DependenciesCouldNotBeResolved - The request contains items with dependencies that could not be resolved.\n\n* InvalidFilesPath - The request contains definition parts with invalid paths.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Bulk import item definitions example": { "$ref": "./examples/platform/BulkImportItemDefinitions.json" }, "Bulk import item definitions with options example": { "$ref": "./examples/platform/BulkImportItemDefinitionsWithOptions.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/jobs/{jobType}/schedules": { "get": { "summary": "Get scheduling settings for one specific item.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All or Item.Read.All \n- Specific scope: *itemType*.ReadWrite.All or *itemType*.Read.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\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": [ "JobScheduler" ], "operationId": "JobScheduler_ListItemSchedules", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "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": "path", "name": "jobType", "description": "The job type.", "type": "string", "required": true }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Successfully retrieved all item schedules.", "schema": { "$ref": "./definitions/platform.json#/definitions/ItemSchedules" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item\n\n* ItemNotFound - Requested item id not found", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List item schedules example": { "$ref": "./examples/platform/ListItemSchedules.json" } } }, "post": { "summary": "Create a new schedule for an item. An item can create maximum 20 schedulers.", "description": "## Required Delegated Scopes: \n\nItem.Execute.All and Item.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) | Yes |\n\n## Interface", "tags": [ "JobScheduler" ], "operationId": "JobScheduler_CreateItemSchedule", "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": "path", "name": "jobType", "description": "The job type.", "type": "string", "required": true }, { "in": "body", "name": "createScheduleRequest", "description": "A item schedule create request.", "schema": { "$ref": "./definitions/platform.json#/definitions/CreateScheduleRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully create the schedule.", "headers": { "Location": { "description": "The URL of the newly created schedule.", "type": "string" } }, "schema": { "$ref": "./definitions/platform.json#/definitions/ItemSchedule" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item\n\n* ItemNotFound - Requested item id not found\n\n* ScheduleExceedsLimit - The number of created schedules for the item exceeds the limit", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "create item schedule example": { "$ref": "./examples/platform/CreateItemSchedule.json" }, "create item schedule with execution data example": { "$ref": "./examples/platform/CreateItemScheduleWithExecutionData.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/jobs/{jobType}/schedules/{scheduleId}": { "get": { "summary": "Get an existing schedule for an item.", "description": "## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.Read.All or Item.ReadWrite.All\n- Specific scope: *itemType*.Read.All or *itemType*.ReadWrite.All (for example: Notebook.Read.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\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": [ "JobScheduler" ], "operationId": "JobScheduler_GetItemSchedule", "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": "path", "name": "jobType", "description": "The job type.", "type": "string", "required": true }, { "in": "path", "name": "scheduleId", "description": "The item schedule ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Successfully get the schedule.", "schema": { "$ref": "./definitions/platform.json#/definitions/ItemSchedule" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item\n\n* ItemNotFound - Requested item id not found", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "get item schedule example": { "$ref": "./examples/platform/GetItemSchedule.json" }, "get item schedule with execution data example": { "$ref": "./examples/platform/GetItemScheduleWithExecutionData.json" } } }, "patch": { "summary": "Update an existing schedule for an item.", "description": "## Required Delegated Scopes: \n\nItem.Execute.All and Item.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) | Yes |\n\n## Interface", "tags": [ "JobScheduler" ], "operationId": "JobScheduler_UpdateItemSchedule", "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": "path", "name": "jobType", "description": "The job type.", "type": "string", "required": true }, { "in": "path", "name": "scheduleId", "description": "The item schedule ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateScheduleRequest", "description": "A item schedule update request.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateScheduleRequest" }, "required": true } ], "responses": { "200": { "description": "Successfully update the schedule.", "schema": { "$ref": "./definitions/platform.json#/definitions/ItemSchedule" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item\n\n* ItemNotFound - Requested item id not found", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "update item schedule plan example": { "$ref": "./examples/platform/UpdateItemSchedule.json" }, "update item schedule with execution data example": { "$ref": "./examples/platform/UpdateItemScheduleWithExecutionData.json" } } }, "delete": { "summary": "Delete an existing schedule for an item.", "description": "## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All\n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\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": [ "JobScheduler" ], "operationId": "JobScheduler_DeleteItemSchedule", "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": "path", "name": "jobType", "description": "The job type.", "type": "string", "required": true }, { "in": "path", "name": "scheduleId", "description": "The item schedule ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item\n\n* ItemNotFound - Requested item ID not found", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "delete item schedule example": { "$ref": "./examples/platform/DeleteItemSchedule.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}": { "get": { "summary": "Get one item's job instance.", "description": "## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All or Item.Read.All \n- Specific scope: *itemType*.ReadWrite.All or *itemType*.Read.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\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": [ "JobScheduler" ], "operationId": "JobScheduler_GetItemJobInstance", "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": "path", "name": "jobInstanceId", "description": "The job instance ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.\n\n---\n**Headers:**\n\n**Retry-After** `integer` - The number of seconds to wait before checking the status of the job instance.", "schema": { "$ref": "./definitions/platform.json#/definitions/ItemJobInstance" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item.\n\n* ItemNotFound - Requested item id not found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get item job instance example": { "$ref": "./examples/platform/GetItemJobInstance.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/jobs/instances": { "get": { "summary": "Returns a list of job instances for the specified item.", "description": "## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All or Item.Read.All \n- Specific scope: *itemType*.ReadWrite.All or *itemType*.Read.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Limitations\n\n- Most items have a limit of 100 recently completed entities, and there is not limit for active entities.\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": [ "JobScheduler" ], "operationId": "JobScheduler_ListItemJobInstances", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "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": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/ItemJobInstances" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item.\n\n* ItemNotFound - Requested item id not found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List item job instances example": { "$ref": "./examples/platform/ListItemJobInstances.json" }, "List item job instances with continuation example": { "$ref": "./examples/platform/ListItemJobInstancesWithContinuation.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/jobs/{jobType}/instances": { "post": { "summary": "Run on-demand item job instance.", "description": "> [!NOTE]\n> The URL for this API has been updated to include the job type as part of the path, replacing the previous use of a query parameter. For backward compatibility, invocations using the query parameter are still supported.\n\n ## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.Execute.All \n- Specific scope: *itemType*.Execute.All (for example: Notebook.Execute.All) \n\n for more information about scopes, see: [scopes article](/rest/api/fabric/articles/scopes).\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": [ "JobScheduler" ], "operationId": "JobScheduler_RunOnDemandItemJob", "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": "path", "name": "jobType", "description": "Job type", "type": "string", "required": true }, { "in": "body", "name": "runOnDemandItemJobRequest", "description": "Run on-demand item job request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/RunOnDemandItemJobRequest" }, "required": false } ], "responses": { "202": { "description": "Request accepted, job execution is in progress.\n\n---\n**Headers:**\n\n**Location** `string` - The URL to the job instance resource.\n\n**Retry-After** `integer` - The number of seconds the client should wait before polling the job status for the first time. Clients must use this value to determine when to check the job status and should wait at least this many seconds before the first status poll." }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to run job instance.\n\n* InvalidJobType - The requested job type is invalid.\n\n* TooManyRequestsForJobs - The caller requests too many on-demand job requests.\n\n* ItemNotFound - Requested item ID not found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Run item job instance with no request body example": { "$ref": "./examples/platform/RunOnDemandItemJob.json" }, "Run item job instance with request body containing executionData example": { "$ref": "./examples/platform/RunOnDemandItemJob2.json" }, "Run item job instance with request body containing parameters example": { "$ref": "./examples/platform/RunOnDemandItemJob3.json" }, "Run item job instance with request body containing both executionData and parameters example": { "$ref": "./examples/platform/RunOnDemandItemJob4.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}/cancel": { "post": { "summary": "Cancel an item's job instance.", "description": "## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.Execute.All \n- Specific scope: *itemType*.Execute.All (for example: Notebook.Execute.All) \n\n for more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\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": [ "JobScheduler" ], "operationId": "JobScheduler_CancelItemJobInstance", "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": "path", "name": "jobInstanceId", "description": "The job instance ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "202": { "description": "Request accepted, canceling a job is in progress.", "headers": { "Location": { "type": "string", "description": "The URL to the job instance resource." }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to cancel job instance.\n\n* ItemNotFound - Requested item id not found.\n\n* JobAlreadyCompleted - Requested cancellation can not take be processed as job instance run has completed.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Cancel item job instance example": { "$ref": "./examples/platform/CancelItemJobInstance.json" } } } }, "/workspaces/{workspaceId}/assignToCapacity": { "post": { "summary": "Assigns the specified workspace to the specified capacity.", "description": "## Permissions\n\n- The caller must have *contributor* permissions or be an capacity Admin. \n- The caller must have *admin* workspace role.\n\n## Required Scope\n\nCapacity.ReadWrite.All and Workspace.ReadWrite.All\n\n## Limitations \n\n- Fabric items (non-PowerBI) don't support migration across region. For more information see [moving data around](/fabric/admin/portal-workspaces#moving-data-around). \n- Workspaces with Fabric items (non-PowerBI) can only be assigned to Fabric, Fabric trial or Power BI Premium capacity. For more information see [Microsoft Fabric license types](/fabric/enterprise/licenses#microsoft-fabric-license-types).\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": [ "Workspaces" ], "operationId": "Workspaces_AssignToCapacity", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "assignWorkspaceToCapacityRequest", "description": "Assign to capacity parameters", "required": true, "schema": { "$ref": "./definitions/platform.json#/definitions/AssignWorkspaceToCapacityRequest" } } ], "responses": { "202": { "description": "Request accepted, assignment is in progress." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Assign a workspace to capacity example": { "$ref": "./examples/platform/AssignWorkspaceToCapacity.json" } } } }, "/workspaces/{workspaceId}/unassignFromCapacity": { "post": { "summary": "Unassigns the specified workspace from capacity.", "description": "## Permissions\n\n The caller must have *admin* role on the workspace. \n\n## Required Delegated Scopes\n\nCapacity.ReadWrite.All and Workspace.ReadWrite.All\n\n## Limitations \n\n Workspaces with Fabric items (non-PowerBI) cannot be unassigned from capacity of supported type. For more information see: [moving data around](/fabric/admin/portal-workspaces#moving-data-around).\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": [ "Workspaces" ], "operationId": "Workspaces_UnassignFromCapacity", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "202": { "description": "Request accepted, unassignment is in progress." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Assign a workspace to capacity example": { "$ref": "./examples/platform/UnassignWorkspaceFromCapacity.json" } } } }, "/workspaces/{workspaceId}/assignToDomain": { "post": { "summary": "Assigns the specified workspace to the specified domain.", "description": "## Permissions\n\n- The caller must have contributor permissions or be a domain Admin. \n- The caller must have workspace admin role.\n\n## Required Scope\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_AssignToDomain", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "assignWorkspaceToDomainRequest", "description": "Assign to domain parameters", "required": true, "schema": { "$ref": "./definitions/platform.json#/definitions/AssignWorkspaceToDomainRequest" } } ], "responses": { "200": { "description": "Request completed successfully." }, "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* DomainNotFound - The provided domain was not found\n\n* WorkspaceNotFound - The provided workspace was not found\n\n* InsufficientPermissionsToDomain - Caller doesn't have enough permissions to the domain to perform the operation\n\n* InsufficientWorkspaceRole - Caller doesn't have enough permissions to the workspace to perform the operation\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Assign a workspace to a domain example": { "$ref": "./examples/platform/AssignWorkspaceToDomain.json" } } } }, "/workspaces/{workspaceId}/unassignFromDomain": { "post": { "summary": "Unassigns the specified workspace from domain.", "description": "## Permissions\n\n The caller must have workspace admin role. \n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_UnassignFromDomain", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* WorkspaceNotFound - The provided workspace was not found\n\n* InsufficientWorkspaceRole - Caller doesn't have enough permissions to the workspace to perform the operation\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Unassign a workspace from a domain example": { "$ref": "./examples/platform/UnassignWorkspaceFromDomain.json" } } } }, "/workspaces/{workspaceId}/git/connection": { "get": { "summary": "Returns git connection details for the specified workspace.", "description": "## Permissions\n\nThe caller must have a *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_GetConnection", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/GitConnection" } }, "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* UnknownError - An error occurred.\n\n* InsufficientPrivileges - The caller does not have sufficient workspace permissions.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Git connection details example": { "$ref": "./examples/gitIntegration/GetConnection.json" }, "Workspace not connected to git example": { "$ref": "./examples/gitIntegration/GetConnection_NotConnected.json" } } } }, "/workspaces/{workspaceId}/git/connect": { "post": { "summary": "Connect a specific workspace to a git repository and branch.", "description": "This operation does not sync between the workspace and the connected branch. To complete the sync, use the [Initialize Connection](/rest/api/fabric/core/git/initialize-connection) operation and follow with either the [Commit To Git](/rest/api/fabric/core/git/commit-to-git) or the [Update From Git](/rest/api/fabric/core/git/update-from-git) operation.\n\nTo get started with GitHub, see: [Get started with Git integration](/fabric/cicd/git-integration/git-get-started?tabs=github).\n\nTo get the connection ID, see [Automate Git integration](/fabric/cicd/git-integration/git-automation#get-or-create-git-provider-credentials-connection).\n\n## Permissions\n\nThe caller must have an *admin* role for the workspace.\n\nFor configured connection Git credentials, the caller must have permission for the connection.\n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Limitations \n When using Automatic credentials source, this API is blocked for GitHub provider and for Service Principal.\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) | Supported only when myGitCredentials.source is ConfiguredConnection |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_Connect", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "gitConnectRequest", "description": "Connect to the Git request payload.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/GitConnectRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.\n\n* WorkspaceAlreadyConnectedToGit - Workspace is already connected to git.\n\n* WorkspaceHasNoCapacityAssigned - No capacity assigned to workspace.\n\n* InsufficientPrivileges - Caller has insufficient workspace permissions.\n\n* PrincipalTypeNotSupported - Caller identity type is not supported.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Connect a workspace to Azure DevOps example": { "$ref": "./examples/gitIntegration/ConnectToAzureDevOps.json" }, "Connect a workspace to Azure DevOps using configured connection example": { "$ref": "./examples/gitIntegration/ConnectToAzureDevOpsUsingConfiguredConnection.json" }, "Connect a workspace to GitHub example": { "$ref": "./examples/gitIntegration/ConnectToGitHub.json" }, "Connect a workspace to GitHub example - GitHub Enterprise With Data Residency (ghe.com)": { "$ref": "./examples/gitIntegration/ConnectToGitHubEnterpriseWithDataResidency.json" }, "Connect a workspace to Azure DevOps with connection settings example": { "$ref": "./examples/gitIntegration/ConnectToAzureDevOpsWithConnectionSettings.json" } } } }, "/workspaces/{workspaceId}/git/disconnect": { "post": { "summary": "Disconnect a specific workspace from the Git repository and branch it is connected to.", "description": "## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_Disconnect", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.\n\n* WorkspaceNotConnectedToGit - Workspace is not connected to git.\n\n* InsufficientPrivileges - Caller has insufficient workspace permissions.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Disconnect a workspace from a Git example": { "$ref": "./examples/gitIntegration/Disconnect.json" } } } }, "/workspaces/{workspaceId}/git/initializeConnection": { "post": { "summary": "Initialize a connection for a workspace that's connected to Git.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\nTo use this API, the caller's Git credentials must be configured using [Update My Git Credentials](/rest/api/fabric/core/git/update-my-git-credentials) API. You can use the [Get My Git Credentials](/rest/api/fabric/core/git/get-my-git-credentials) API to check the Git credentials configuration.\n\nThis API should be called after a successful call to the [Connect](/rest/api/fabric/core/git/connect) API. To complete a full sync of the workspace, use the [Required Action](initialize-connection#requiredaction) operation to call the relevant sync operation, either [Commit To Git](/rest/api/fabric/core/git/commit-to-git) or [Update From Git](/rest/api/fabric/core/git/update-from-git).\n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_InitializeConnection", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "gitInitializeConnectionRequest", "description": "Initialize the connection request payload.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/InitializeGitConnectionRequest" } } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/InitializeGitConnectionResponse" } }, "202": { "description": "Request accepted, initialize connection in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID which can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* WorkspaceNotConnectedToGit - Workspace is not connected to git.\n\n* WorkspaceHasNoCapacityAssigned - No capacity assigned to Workspace.\n\n* MissingInitializationPolicy - Initialization policy is missing.\n\n* InsufficientPrivileges - The caller does not have sufficient permissions on the workspace.\n\n* PrincipalTypeNotSupported - Caller identity type is not supported.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Initialize the connection of a workspace connected to a Git example": { "$ref": "./examples/gitIntegration/InitializeConnection.json" } } } }, "/workspaces/{workspaceId}/git/updateFromGit": { "post": { "summary": "Updates the workspace with commits pushed to the connected branch.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\nTo use this API, the caller's Git credentials must be configured using [Update My Git Credentials](/rest/api/fabric/core/git/update-my-git-credentials) API. You can use the [Get My Git Credentials](/rest/api/fabric/core/git/get-my-git-credentials) API to check the Git credentials configuration.\n\nThe update only affects items in the workspace that were changed in those commits. If called after the [Connect](/rest/api/fabric/core/git/connect) and [Initialize Connection](/rest/api/fabric/core/git/initialize-connection) APIs, it will perform a full update of the entire workspace.\n\n## Permissions\n\nThe caller must have a *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.GitUpdate.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 supported when all the [items](/rest/api/fabric/articles/item-management/item-management-overview) involved in the operation support service principals |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_UpdateFromGit", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateFromGitRequest", "description": "Update from a Git request payload.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/UpdateFromGitRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "202": { "description": "Request accepted, update from Git in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID which can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* WorkspaceNotConnectedToGit - Workspace is not connected to git.\n\n* WorkspaceHasNoCapacityAssigned - No capacity assigned to workspace.\n\n* WorkspaceHeadMismatch - Head in the request doesn't match the head in the system.\n\n* WorkspacePreviousOperationInProgress - Previous operation is still in progress.\n\n* MissingDependency - A dependency is missing in the update operation.\n\n* PotentialDuplicateDisplayNameAndType - Update operation will create a duplicate display name and type.\n\n* DependencyDeletionFailed - Update operation will delete hard dependency.\n\n* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* PrincipalTypeNotSupported - Caller identity type is not supported.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update a workspace using data from a Git example": { "$ref": "./examples/gitIntegration/UpdateFromGit.json" }, "Update a workspace from Git with options example": { "$ref": "./examples/gitIntegration/UpdateFromGitWithOptions.json" } } } }, "/workspaces/{workspaceId}/git/status": { "get": { "summary": "Returns the `Git status` of items in the workspace, that can be committed to Git.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\nThe status indicates changes to items since the last workspace and remote branch sync. If the remote and workspace items were both modified, the API flags a conflict. \n The API should not be called while [Update From Git](/rest/api/fabric/core/git/update-from-git) operation is executing.\n\nTo use this API, the caller's Git credentials must be configured using [Update My Git Credentials](/rest/api/fabric/core/git/update-my-git-credentials) API. You can use the [Get My Git Credentials](/rest/api/fabric/core/git/get-my-git-credentials) API to check the Git credentials configuration.\n\n## Permissions\n\nThe caller must have a *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.GitUpdate.All or Workspace.GitCommit.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_GetStatus", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "includeFilesDetails", "description": "When true, each item change in the response includes a fileChanges array with per-file change details.", "type": "boolean", "default": false, "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/GitStatusResponse" } }, "202": { "description": "Request accepted, get status in progress.", "headers": { "Location": { "description": "The URL of the operation status used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* WorkspaceNotConnectedToGit - Workspace is not connected to git.\n\n* WorkspaceHasNoCapacityAssigned - Workspace is not on capacity.\n\n* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* PrincipalTypeNotSupported - Caller identity type is not supported.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get status example": { "$ref": "./examples/gitIntegration/GetStatus.json" }, "Get status no changes example": { "$ref": "./examples/gitIntegration/GetStatus_NoChanges.json" }, "Get status with conflict example": { "$ref": "./examples/gitIntegration/GetStatus_Conflict.json" }, "Get status with file details example": { "$ref": "./examples/gitIntegration/GetStatus_WithFileDetails.json" } } } }, "/workspaces/{workspaceId}/git/commitToGit": { "post": { "summary": "Commits the changes made in the workspace to the connected remote branch.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\nTo use this API, the caller's Git credentials must be configured using [Update My Git Credentials](/rest/api/fabric/core/git/update-my-git-credentials) API. You can use the [Get My Git Credentials](/rest/api/fabric/core/git/get-my-git-credentials) API to check the Git credentials configuration.\n\nYou can choose to commit all changes, specific items, or specific files within items using the FileLevelSelective mode. To sync the workspace for the first time, use this API after the [Connect](/rest/api/fabric/core/git/connect) and [Initialize Connection](/rest/api/fabric/core/git/initialize-connection) APIs.\n\n## Permissions\n\nThe caller must have a *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.GitCommit.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 supported when all the [items](/rest/api/fabric/articles/item-management/item-management-overview) involved in the operation support service principals |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_CommitToGit", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "commitToGitRequest", "description": "Commit to the Git request payload.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/CommitToGitRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "202": { "description": "Request accepted, commit to Git in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* WorkspaceNotConnectedToGit - Workspace is not connected to git.\n\n* WorkspaceHasNoCapacityAssigned - No capacity assinged to workspace.\n\n* WorkspaceHeadMismatch - Head in the request doesn't match the head in the system.\n\n* WorkspacePreviousOperationInProgress - Previous operation is still in progress.\n\n* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* PrincipalTypeNotSupported - Caller identity type is not supported.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Commit all to Git example": { "$ref": "./examples/gitIntegration/CommitToGit_All.json" }, "Commit selective items to Git example": { "$ref": "./examples/gitIntegration/CommitToGit_Selective.json" }, "Commit file-level selective to Git example": { "$ref": "./examples/gitIntegration/CommitToGit_FileLevelSelective.json" } } } }, "/workspaces/{workspaceId}/git/myGitCredentials": { "get": { "summary": "Returns the user's Git credentials configuration details.", "description": "Indicates how the user's credentials are obtained for accessing the relevant Git provider, automatically or through configured connection. If the user's credentials aren't configured, go to [Update My Git Credentials](/rest/api/fabric/core/git/update-my-git-credentials) API.\n\n## Permissions\n\nThe caller must have a *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_GetMyGitCredentials", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/GitCredentialsConfigurationResponse" } }, "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* UnknownError - An error occurred.\n\n* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* WorkspaceNotConnectedToGit - Workspace is not connected to git.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get the user's Git credentials configuration for Azure DevOps when it is automatic example": { "$ref": "./examples/gitIntegration/GetMyGitCredentials_Automatic.json" }, "Get the user's Git credentials configuration when it is configured by connection example": { "$ref": "./examples/gitIntegration/GetMyGitCredentials_ConfiguredConnection.json" }, "Get the user's Git credentials configuration when it is not configured example": { "$ref": "./examples/gitIntegration/GetMyGitCredentials_None.json" } } }, "patch": { "summary": "Updates the user's Git credentials configuration details.", "description": "Each user in the workspace has their own configured Git credentials. You can use [Get My Git Credentials](/rest/api/fabric/core/git/get-my-git-credentials) API to get the Git credentials configuration.\n\nTo get the connection ID, see [Automate Git integration](/fabric/cicd/git-integration/git-automation#get-or-create-git-provider-credentials-connection).\n\n## Permissions\n\nThe caller must have a *contributor* or higher workspace role.\n\nFor configured connection Git credentials, the caller must have permission for the connection.\n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Limitations \n When using Automatic credentials source, this API is blocked for GitHub provider and for Service Principal.\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) | Supported only when source is ConfiguredConnection or None |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_UpdateMyGitCredentials", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateGitCredentialsRequest", "description": "Updates the user's Git credentials request payload.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/UpdateGitCredentialsRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/GitCredentialsConfigurationResponse" } }, "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* UnknownError - An error occurred.\n\n* InsufficientPrivileges - Caller has insufficient workspace permissions.\n\n* WorkspaceNotConnectedToGit - Workspace is not connected to git.\n\n* ConnectionNotFound - The specified connection was not found.\n\n* ConnectionMismatch - The connection does not match the Git provider details.\n\n* PrincipalTypeNotSupported - Caller identity type is not supported.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update user's Git credentials to ConfiguredConnection example": { "$ref": "./examples/gitIntegration/UpdateMyGitCredentials_ToConfiguredConnection.json" }, "Update user's Git credentials to Automatic example": { "$ref": "./examples/gitIntegration/UpdateMyGitCredentials_ToAutomatic.json" }, "Update user's Git credentials to None example": { "$ref": "./examples/gitIntegration/UpdateMyGitCredentials_ToNone.json" } } } }, "/workspaces/{workspaceId}/git/workspaceRelations": { "get": { "summary": "Returns a list of workspace relations for the specified workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\nThis API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\nThe caller must have a *viewer* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_ListWorkspaceRelations", "produces": [ "application/json" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/WorkspaceRelations" } }, "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* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* WorkspaceNotFound - The specified workspace was not found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List workspace relations example": { "$ref": "./examples/gitIntegration/ListWorkspaceRelations.json" } } }, "post": { "summary": "Creates a workspace relation between the specified workspace and a related workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\nCreates a branching relation between a branch workspace and its base workspace.\n\n## Permissions\n\nThe caller must have an *admin* role on the branch workspace and a *contributor* or higher role on the base workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_CreateWorkspaceRelation", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "createWorkspaceRelationRequest", "description": "Create workspace relation request payload.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/CreateWorkspaceRelationRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/WorkspaceRelation" } }, "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* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* WorkspaceNotFound - The specified workspace was not found.\n\n* WorkspaceRelationAlreadyExists - A relation between the specified workspaces already exists.\n\n* WorkspaceRelationBidirectionalExists - A relation between these workspaces already exists in the opposite direction.\n\n* WorkspaceRelationInvalidArgument - Invalid arguments provided for workspace relation operation.\n\n* WorkspaceRelationInvalidType - Invalid workspace relation type.\n\n* WorkspaceRelationSelfReferencing - A workspace cannot be related to itself.\n\n* WorkspaceRelationBaseIsBranch - The base workspace is already a branch of another workspace.\n\n* WorkspaceRelationTargetHasBranches - The target workspace already has branch workspaces.\n\n* WorkspaceRelationDifferentBase - The target workspace has a different base workspace.\n\n* WorkspaceRelationRootDirectoryMismatch - The workspaces are not connected to the same Git repository root.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create a workspace relation example": { "$ref": "./examples/gitIntegration/CreateWorkspaceRelation.json" } } } }, "/workspaces/{workspaceId}/git/workspaceRelations/{workspaceRelationId}": { "delete": { "summary": "Deletes a workspace relation.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\nDeletes an existing workspace relation between two workspaces, identified by the relation ID. The provided workspace ID can be either a base workspace or a branch workspace.\n\n## Permissions\n\nThe caller must have an *admin* workspace role on the specified workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_DeleteWorkspaceRelation", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "workspaceRelationId", "description": "The workspace relation ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* WorkspaceNotFound - The specified workspace was not found.\n\n* WorkspaceRelationNotFound - The specified workspace relation was not found.\n\n* WorkspaceNotInvolvedInRelation - The workspace is not involved in the specified relation.\n\n* WorkspaceRelationTypeNotBranch - The relation is not a branch relation and cannot be deleted through this endpoint.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete a workspace relation example": { "$ref": "./examples/gitIntegration/DeleteWorkspaceRelation.json" } } } }, "/workspaces/{workspaceId}/git/connectionSettings": { "get": { "summary": "Gets the connection settings for a Git-connected workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use. [Learn more](/fabric/fundamentals/preview).\n\nReturns the connection settings for a Git-connected workspace.\n\n## Permissions\n\nThe caller must have a *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_GetConnectionSettings", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/GitConnectionSettings" } }, "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* UnknownError - An error occurred.\n\n* InsufficientPrivileges - The caller does not have sufficient workspace permissions.\n\n* WorkspaceNotConnectedToGit - Workspace is not connected to git.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get connection settings example": { "$ref": "./examples/gitIntegration/GetConnectionSettings.json" } } }, "patch": { "summary": "Updates the connection settings for a Git-connected workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use. [Learn more](/fabric/fundamentals/preview).\n\nUpdates the connection settings for a Git-connected workspace. Only properties included in the request body are updated; omitted properties remain unchanged.\n\n## Permissions\n\nThe caller must have an *admin* role for the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Git" ], "operationId": "Git_UpdateConnectionSettings", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateGitConnectionSettingsRequest", "description": "The update connection settings request payload.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/UpdateGitConnectionSettingsRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gitIntegration.json#/definitions/GitConnectionSettings" } }, "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* UnknownError - An error occurred.\n\n* InsufficientPrivileges - The caller does not have an admin role for the workspace.\n\n* WorkspaceNotConnectedToGit - Workspace is not connected to git.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update connection settings example": { "$ref": "./examples/gitIntegration/UpdateConnectionSettings.json" } } } }, "/capacities": { "get": { "summary": "Returns a list of capacities the principal can access (either administrator or a contributor).", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Required Delegated Scopes\n\nCapacity.Read.All or Capacity.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) | Yes |\n\n## Interface", "tags": [ "Capacities" ], "operationId": "Capacities_ListCapacities", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Capacities" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List capacities example": { "$ref": "./examples/platform/ListCapacities.json" }, "List capacities with continuation example": { "$ref": "./examples/platform/ListCapacitiesWithContinuation.json" } } } }, "/capacities/{capacityId}": { "get": { "summary": "Returns specified capacity information.", "description": "## Permissions\n\nThe caller must have *administrator* or *contributor* permissions on the capacity.\n\n## Required Delegated Scopes\n\nCapacity.Read.All or Capacity.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) | Yes |\n\n## Interface", "tags": [ "Capacities" ], "operationId": "Capacities_GetCapacity", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "capacityId", "description": "The capacity ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Capacity" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get a capacity example": { "$ref": "./examples/platform/GetCapacity.json" } } } }, "/capacities/{capacityId}/surgeProtection": { "get": { "summary": "Returns the surge protection configuration for the specified capacity.", "description": "Surge protection lets a capacity administrator set utilization thresholds that proactively reject background operations to prevent the capacity from entering deep throttling states. A capacity with no configured surge protection returns `state` set to `Disabled` with the threshold properties omitted.\n\n## Permissions\n\nThe caller must have *administrator* permissions on the capacity.\n\n## Required Delegated Scopes\n\nCapacity.Read.All or Capacity.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) | Yes |\n\n## Interface", "tags": [ "SurgeProtection" ], "operationId": "SurgeProtection_GetCapacitySurgeProtection", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "capacityId", "description": "The capacity ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/surgeProtection.json#/definitions/CapacitySurgeProtection" } }, "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* UnknownError - An error occurred.\n\n* InsufficientPrivileges - The caller does not have sufficient capacity permissions.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get the surge protection configuration of a capacity that has it enabled example": { "$ref": "./examples/surgeProtection/GetCapacitySurgeProtection_Enabled.json" }, "Get the surge protection configuration of a capacity that has no configuration example": { "$ref": "./examples/surgeProtection/GetCapacitySurgeProtection_Disabled.json" } } }, "patch": { "summary": "Updates the surge protection configuration for the specified capacity.", "description": "Updates the surge protection configuration for the specified capacity.\n\n## Permissions\n\nThe caller must have *administrator* permissions on the capacity.\n\n## Required Delegated Scopes\n\nCapacity.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) | Yes |\n\n## Interface", "tags": [ "SurgeProtection" ], "operationId": "SurgeProtection_UpdateCapacitySurgeProtection", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "capacityId", "description": "The capacity ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateCapacitySurgeProtectionRequest", "description": "The update capacity surge protection request payload.", "schema": { "$ref": "./definitions/surgeProtection.json#/definitions/UpdateCapacitySurgeProtectionRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/surgeProtection.json#/definitions/CapacitySurgeProtection" } }, "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* UnknownError - An error occurred.\n\n* InvalidParameter - A request parameter is invalid (for example, a threshold is outside the allowed range or thresholds are missing when enabling surge protection on an unconfigured capacity).\n\n* InsufficientPrivileges - The caller does not have sufficient capacity permissions.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Enable surge protection on a capacity example": { "$ref": "./examples/surgeProtection/UpdateCapacitySurgeProtection_Enable.json" }, "Adjust thresholds on a capacity that already has surge protection enabled example": { "$ref": "./examples/surgeProtection/UpdateCapacitySurgeProtection_AdjustThresholds.json" }, "Disable surge protection on a capacity example": { "$ref": "./examples/surgeProtection/UpdateCapacitySurgeProtection_Disable.json" } } } }, "/capacities/{capacityId}/overageConfiguration": { "get": { "summary": "Gets the overage configuration for the specified capacity.", "description": "> [!NOTE]\n> Capacity overage configuration is currently in Preview.\n\n## Permissions\n\nThe caller must have *admin* permissions on the capacity.\n\n## Required Delegated Scopes\n\nCapacity.Read.All or Capacity.ReadWrite.All\n\n## Limitations\n\nNone.\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": [ "Capacities" ], "operationId": "Capacities_GetOverageConfiguration", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "capacityId", "description": "The capacity ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/CapacityOverageConfiguration" } }, "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* CapacityNotFound - The specified capacity was not found.\n\n* Unauthorized - The caller doesn't have permission to call the API.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get overage configuration example": { "$ref": "./examples/platform/GetOverageConfiguration.json" } } }, "patch": { "summary": "Updates the overage configuration for the specified capacity.", "description": "> [!NOTE]\n> Capacity overage configuration is currently in Preview.\n\n## Permissions\n\nThe caller must have *admin* permissions on the capacity.\n\n## Required Delegated Scopes\n\nCapacity.ReadWrite.All\n\n## Limitations\n\nNone.\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": [ "Capacities" ], "operationId": "Capacities_UpdateOverageConfiguration", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "capacityId", "description": "The capacity ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateOverageConfigurationRequest", "description": "The update overage configuration request payload.", "required": true, "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateCapacityOverageConfigurationRequest" } } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/CapacityOverageConfiguration" } }, "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* CapacityNotFound - The specified capacity was not found.\n\n* Unauthorized - The caller doesn't have permission to call the API.\n\n* InvalidRequest - The request payload is invalid.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update overage configuration example": { "$ref": "./examples/platform/UpdateOverageConfiguration.json" } } } }, "/operations/{operationId}": { "get": { "tags": [ "LongRunningOperations" ], "summary": "Returns the current state of the long running operation.", "description": "You get the operationId from x-ms-operation-id header return by the API that initiated the operation. \n Once the operation status is 'Succeeded' use the [Get Operation Result API](/rest/api/fabric/core/long-running-operations/get-operation-result) to retrieve the result.\n\n## Permissions \n\nSame as the permissions required for the API that initiated the operation. \n\n## Required Delegated Scope \n\nSame as the scopes required for the API that initiated the operation.\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified quota for Long-Running operations APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 500 calls/min |\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", "operationId": "LongRunningOperations_GetOperationState", "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "operationId", "in": "path", "required": true, "description": "The operation ID", "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "Location": { "description": "The URL for polling the operation status or retrieving the result in case the operation status is Succeeded.", "type": "string" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." }, "x-ms-operation-id": { "description": "The Operation ID.", "type": "string", "format": "uuid" } }, "schema": { "$ref": "./definitions/platform.json#/definitions/OperationState" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get active long running operation example": { "$ref": "./examples/platform/GetLongRunningOperationStateRunning.json" }, "Get completed long running operation example": { "$ref": "./examples/platform/GetLongRunningOperationStateCompleted.json" } } } }, "/operations/{operationId}/result": { "get": { "tags": [ "LongRunningOperations" ], "summary": "Returns the result of the long running operation.", "description": "You get the operationId from x-ms-operation-id header return by the API that initiated the operation.\n\n## Permissions \n\nSame as the permissions required for the API that initiated the operation. \n\n## Required Delegated Scope \n\nSame as the scopes required for the API that initiated the operation.\n\n## Throttling limits\n\n| Limit Type | Value |\n|-|-|\n| [Unified quota for Long-Running operations APIs](https://learn.microsoft.com/en-us/rest/api/fabric/articles/throttling#how-the-quota-model-works) | 500 calls/min |\n| API limit | 500 calls/min |\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", "operationId": "LongRunningOperations_GetOperationResult", "consumes": [], "produces": [ "application/json", "application/octet-stream" ], "parameters": [ { "name": "operationId", "in": "path", "required": true, "description": "The operation ID", "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "type": "file" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get long running operation result example": { "$ref": "./examples/platform/GetLongRunningOperationResult.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/shortcuts/bulkCreate": { "post": { "summary": "Creates bulk shortcuts.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Required Delegated Scopes\n\nOneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeShortcuts" ], "operationId": "OneLakeShortcuts_CreatesShortcutsInBulk", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The ID of the workspace.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the data item.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "shortcutConflictPolicy", "description": "When provided, it defines the action to take when a shortcut with the same name and path already exists. The default action is 'Abort'. Additional ShortcutConflictPolicy types may be added over time.", "type": "string", "enum": [ "Abort", "GenerateUniqueName", "CreateOrOverwrite", "OverwriteOnly" ], "x-ms-enum": { "name": "ShortcutConflictPolicy", "modelAsString": true, "values": [ { "value": "Abort", "description": "When a shortcut with the same name and path already exists the shortcut creation will be cancelled." }, { "value": "GenerateUniqueName", "description": "When a shortcut with the same name and path already exists the shortcut creation will continue with a new unique shortcut name." }, { "value": "CreateOrOverwrite", "description": "When a shortcut with the same name and path already exists the shortcut creation will overwrite the existing shortcut. Create shortcut if it does not exist." }, { "value": "OverwriteOnly", "description": "When a shortcut with the same name and path already exists the shortcut creation will overwrite the existing shortcut." } ] }, "required": false }, { "in": "body", "name": "bulkCreateShortcutsRequest", "description": "A shortcut bulk create request includes an array of shortcut objects, each representing a reference pointing to internal or external storage locations within OneLake.", "schema": { "$ref": "./definitions/platform.json#/definitions/BulkCreateShortcutsRequest" }, "required": true } ], "responses": { "202": { "description": "Request accepted. Shortcut creation is in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "Retry-After": { "description": "The number of seconds to wait before retrying the request.", "type": "integer" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" } } }, "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/BulkCreateShortcutResponse" } }, "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 - Server cannot find the requested item.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create bulk shortcut example": { "$ref": "./examples/platform/CreateBulkShortcutOneLakeTargetCsvToDeltaTransform.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/shortcuts": { "get": { "summary": "Returns a list of shortcuts for the item, including all the subfolders exhaustively.", "description": "## Required Delegated Scopes\n\n OneLake.Read.All or OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeShortcuts" ], "operationId": "OneLakeShortcuts_ListShortcuts", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "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": "query", "name": "parentPath", "description": "The starting path from which to retrieve the shortcuts", "type": "string", "required": false }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Shortcuts" } }, "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 - Server cannot find the requested item.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List shortcuts example": { "$ref": "./examples/platform/ListShortcuts.json" }, "List shortcuts with continuation example": { "$ref": "./examples/platform/ListShortcutsWithContinuation.json" }, "List shortcuts with shortcut transforms example": { "$ref": "./examples/platform/ListShortcutsWithShortcutTransforms.json" } } }, "post": { "summary": "Creates a new shortcut or updates an existing shortcut.", "description": "## Required Delegated Scopes\n\nOneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeShortcuts" ], "operationId": "OneLakeShortcuts_CreateShortcut", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The ID of the workspace.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the data item.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "shortcutConflictPolicy", "description": "When provided, it defines the action to take when a shortcut with the same name and path already exists. The default action is 'Abort'. Additional ShortcutConflictPolicy types may be added over time.", "type": "string", "enum": [ "Abort", "GenerateUniqueName", "CreateOrOverwrite", "OverwriteOnly" ], "x-ms-enum": { "name": "ShortcutConflictPolicy", "modelAsString": true, "values": [ { "value": "Abort", "description": "When a shortcut with the same name and path already exists the shortcut creation will be cancelled." }, { "value": "GenerateUniqueName", "description": "When a shortcut with the same name and path already exists the shortcut creation will continue with a new unique shortcut name." }, { "value": "CreateOrOverwrite", "description": "When a shortcut with the same name and path already exists the shortcut creation will overwrite the existing shortcut. Create shortcut if it does not exist." }, { "value": "OverwriteOnly", "description": "When a shortcut with the same name and path already exists the shortcut creation will overwrite the existing shortcut." } ] }, "required": false }, { "in": "body", "name": "createShortcutRequest", "description": "A shortcut create request includes a shortcut object representing a reference pointing to internal or external storage locations within OneLake. The shortcut is defined by its name, the path where it's created, and the target indicating the destination storage location.", "schema": { "$ref": "./definitions/platform.json#/definitions/CreateShortcutRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created.", "headers": { "Location": { "description": "The URL of the newly created shortcut.", "type": "string" } }, "schema": { "$ref": "./definitions/platform.json#/definitions/Shortcut" } }, "200": { "description": "Successfully updated.", "headers": { "Location": { "description": "The URL of the updated shortcut.", "type": "string" } }, "schema": { "$ref": "./definitions/platform.json#/definitions/Shortcut" } }, "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 - Server cannot find the requested item.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create shortcut One Lake target example": { "$ref": "./examples/platform/CreateShortcutOneLakeTarget.json" }, "Create shortcut AdlsGen2 target example": { "$ref": "./examples/platform/CreateShortcutAdlsGen2Target.json" }, "Create shortcut AmazonS3 target example": { "$ref": "./examples/platform/CreateShortcutAmazonS3Target.json" }, "Create shortcut Google Cloud Storage target example": { "$ref": "./examples/platform/CreateShortcutGoogleCloudStorageTarget.json" }, "Create shortcut S3 Compatible target example": { "$ref": "./examples/platform/CreateShortcutS3CompatibleTarget.json" }, "Create shortcut Azure Blob Storage target example": { "$ref": "./examples/platform/CreateShortcutAzureBlobStorageTarget.json" }, "Create shortcut OneDriveSharePoint or OneDrive for Business or SharePoint Online target example": { "$ref": "./examples/platform/CreateShortcutOneDriveSharePointTarget.json" }, "Create or update shortcut target to OneLake": { "$ref": "./examples/platform/CreateOrOverwriteShortcutOneLakeTarget.json" }, "Update shortcut target to OneLake": { "$ref": "./examples/platform/OverwriteShortcutOneLakeTarget.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/shortcuts/{shortcutPath}/{shortcutName}": { "get": { "summary": "Returns shortcut properties.", "description": "## Required Delegated Scopes\n\n OneLake.Read.All or OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeShortcuts" ], "operationId": "OneLakeShortcuts_GetShortcut", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The ID of the workspace.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the data item.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "shortcutPath", "description": "The creation path of the shortcut. For more information see: [Directory and file names](/rest/api/storageservices/Naming-and-Referencing-Shares--Directories--Files--and-Metadata#directory-and-file-names).", "type": "string", "required": true }, { "in": "path", "name": "shortcutName", "description": "The name of the shortcut. For more information see: [Directory and file names](/rest/api/storageservices/Naming-and-Referencing-Shares--Directories--Files--and-Metadata#directory-and-file-names).", "type": "string", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Shortcut" } }, "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 - Server cannot find the requested item.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get shortcut One Lake target example": { "$ref": "./examples/platform/GetShortcutOneLakeTarget.json" }, "Get shortcut Google Cloud Storage target example": { "$ref": "./examples/platform/GetShortcutGoogleCloudStorageTarget.json" }, "Get shortcut S3 Compatible target example": { "$ref": "./examples/platform/GetShortcutS3CompatibleTarget.json" }, "Get shortcut ExternalDataShare target example": { "$ref": "./examples/platform/GetShortcutExternalDataShareTarget.json" }, "Get shortcut AzureBlobStorage target example": { "$ref": "./examples/platform/GetShortcutAzureBlobStorageTarget.json" }, "Get shortcut transform with One Lake target example": { "$ref": "./examples/platform/GetShortcutTransformOneLakeTarget.json" }, "Get shortcut OneDriveSharePoint or OneDrive for Business or SharePoint Online target example": { "$ref": "./examples/platform/GetShortcutOneDriveSharePointTarget.json" } } }, "delete": { "summary": "Deletes the shortcut but does not delete the destination storage folder.", "description": "## Required Delegated Scopes\n\n OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeShortcuts" ], "operationId": "OneLakeShortcuts_DeleteShortcut", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The ID of the workspace.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the data item.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "shortcutPath", "description": "The path of the shortcut to be deleted. For more information see: [Directory and file names](/rest/api/storageservices/Naming-and-Referencing-Shares--Directories--Files--and-Metadata#directory-and-file-names).", "type": "string", "required": true }, { "in": "path", "name": "shortcutName", "description": "The name of the shortcut to delete. For more information see: [Directory and file names](/rest/api/storageservices/Naming-and-Referencing-Shares--Directories--Files--and-Metadata#directory-and-file-names).", "type": "string", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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 - Server cannot find the requested item.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete shortcut One Lake target example": { "$ref": "./examples/platform/DeleteShortcutOneLakeTarget.json" } } } }, "/tags": { "get": { "summary": "Returns a list of all the tenant's tags.", "description": "## Required Delegated Scopes\n\nTag.Read.All\n\n## Limitations\n\nMaximum 25 requests per one minute per principal. \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": [ "Tags" ], "operationId": "Tags_ListTags", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "The request was successful.", "schema": { "$ref": "../common/definitions.json#/definitions/Tags" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List of all tenant's tags example": { "$ref": "./examples/tags/ListTags.json" }, "List of all tenant's tags with continuation example": { "$ref": "./examples/tags/ListTagsWithContinuation.json" } } } }, "/domains": { "get": { "summary": "Returns a list of all the tenant's domains.", "description": "## Required Delegated Scopes\n\nDomain.Read.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) | Yes |\n\n## Interface", "tags": [ "Domains" ], "operationId": "Domains_ListDomains", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "The request was successful.", "schema": { "$ref": "./definitions/platform.json#/definitions/Domains" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List of all tenant's domains example": { "$ref": "./examples/domains/ListDomains.json" }, "List of all tenant's domains with continuation example": { "$ref": "./examples/domains/ListDomainsWithContinuation.json" } } } }, "/domains/{domainId}": { "get": { "summary": "Returns specified domain information.", "description": "## Required Delegated Scopes\n\nDomain.Read.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) | Yes |\n\n## Interface", "tags": [ "Domains" ], "operationId": "Domains_GetDomain", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "domainId", "description": "The domain ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "The request was successful.", "schema": { "$ref": "./definitions/platform.json#/definitions/Domain" } }, "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* DomainNotFound - The provided domain was not found\n\n* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get domain example": { "$ref": "./examples/domains/GetDomain.json" } } } }, "/workspaces/{workspaceId}/onelake/resetShortcutCache": { "post": { "summary": "Deletes any cached files that were stored while reading from shortcuts.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation). \n\n## Required Delegated Scopes\n\nOneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeShortcuts" ], "operationId": "OneLakeShortcuts_ResetShortcutCache", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The ID of the workspace.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "202": { "description": "Request accepted. Cache reset is in progress.", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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 - Server cannot find the requested item.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Reset shortcut cache example": { "$ref": "./examples/platform/ResetShortcutCache.json" } } } }, "/workspaces/{workspaceId}/onelake/settings": { "get": { "summary": "Get workspace OneLake settings.", "description": "## Permissions\n\nThe caller must have an *admin* workspace role.\n\n ## Required Delegated Scopes\n\n OneLake.Read.All or OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeSettings" ], "operationId": "OneLakeSettings_GetSettings", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": false, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/GetOneLakeSettingsResponse" } }, "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* UnknownError - An error occurred. \n\n* WorkspaceNotFound - Workspace not found. \n\n * UserNotAuthorizedSourceWorkspace - User is not authorized for the workspace.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get OneLake Settings with diagnostics enabled example": { "$ref": "./examples/platform/GetOneLakeDiagnosticSettingWithDiagnosticSetting.json" }, "Get OneLake Settings with diagnostics disabled example": { "$ref": "./examples/platform/GetOneLakeDiagnosticSettingWithoutDiagnosticSetting.json" }, "Get OneLake Settings with immutability policy example": { "$ref": "./examples/platform/GetOneLakeSettingsWithImmutabilityPolicy.json" }, "Get OneLake Settings without immutability policy example": { "$ref": "./examples/platform/GetOneLakeSettingsWithoutImmutabilityPolicy.json" }, "Get OneLake Settings with all settings example": { "$ref": "./examples/platform/GetOneLakeSettingsWithAllSettings.json" } } } }, "/workspaces/{workspaceId}/onelake/settings/modifyDiagnostics": { "post": { "summary": "Enables or disables workspace OneLake diagnostic settings.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation). \n\n ## Permissions\n\n* The caller must have an *admin* workspace role on the source workspace. \n\n * The caller must have *contributor* or above workspace role on the destination workspace. \n\n ## Required Delegated Scopes\n\nOneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeSettings" ], "operationId": "OneLakeSettings_ModifyDiagnostics", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "modifyOneLakeDiagnosticSettingRequest", "description": "The OneLake diagnostic setting object.", "required": false, "schema": { "$ref": "./definitions/platform.json#/definitions/ModifyOneLakeDiagnosticSettingRequest" } } ], "responses": { "200": { "description": "Request completed successfully." }, "202": { "description": "Request accepted. Modify diagnostic settings is in progress.", "headers": { "Location": { "description": "The URL of the operation status. Can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID. Can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* UnknownError - An error occurred. \n\n* WorkspaceNotFound - Source Workspace not found. \n\n * UserNotAuthorizedSourceWorkspace - User is not authorized for the source workspace.\n\n * UserNotAuthorizedDestinationItem - User is not authorized for the destination workspace.\n\n * DestinationWorkspaceNotFound - Destination Workspace not found.\n\n * DestinationItemNotFound -Destination item not found.\n\n * WorkspaceNotInSameCapacity - Source and destination workspace not in same capacity.\n\n * SettingsNotAllowedOnWorkspace - Diagnostic setting not allowed on workspace.\n\n * RequiredDestination - Destination is required when enabling diagnostics for first time.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create OneLake Diagnostic Setting for Workspace example": { "$ref": "./examples/platform/ModifyOneLakeDiagnosticSettingCreate.json" }, "Disable OneLake Diagnostic Setting for Workspace example": { "$ref": "./examples/platform/ModifyOneLakeDiagnosticSettingDisable.json" }, "Replace OneLake Diagnostic Setting Destination for Workspace example": { "$ref": "./examples/platform/ModifyOneLakeDiagnosticSettingReplace.json" }, "Remove OneLake Diagnostic Setting Destination for Workspace example": { "$ref": "./examples/platform/ModifyOneLakeDiagnosticSettingRemove.json" } } } }, "/workspaces/{workspaceId}/onelake/settings/modifyImmutabilityPolicy": { "post": { "summary": "Create or update OneLake immutability settings.", "description": "Set immutability policy for data stored in OneLake. Currently, this feature supports configuring a retention period specifically for diagnostic logs within a workspace, ensuring they remain unaltered once written.\n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nOneLake.ReadWrite.All\n\n## Limitations\n\nCan be applied only if:\n- The current workspace is storing diagnostic logs from other workspaces.\n- There is already a retention period applied to the diagnostics logs 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": [ "OneLakeSettings" ], "operationId": "OneLakeSettings_ModifyImmutabilityPolicy", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": false, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "immutabilityPolicyRequest", "description": "The immutability policy request object.", "required": true, "schema": { "$ref": "./definitions/platform.json#/definitions/ImmutabilityPolicyRequest" } } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UserNotAuthorized - User must be an admin of the workspace to enable diagnostics settings.\n\n* WorkspaceNotFound - Workspace not found.\n\n* RetentionDaysReductionNotAllowed - Retention days cannot be reduced than what is already set.\n\n* WorkspaceNotSupported - Workspace is not supported for setting diagnostic immutability policy.\n\n* InternalServerError - Other Internal Errors.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Enable immutability for diagnostic logs example": { "$ref": "./examples/platform/ModifyOneLakeImmutabilityPolicyEnable.json" }, "Reduce retention days example (error case)": { "$ref": "./examples/platform/ModifyOneLakeImmutabilityPolicyError.json" } } } }, "/workspaces/{workspaceId}/onelake/settings/modifyDefaultTier": { "post": { "summary": "Modifies the default OneLake storage tier for a workspace.", "description": "All files without an explicitly set tier will be moved to the new default tier. You will be billed for any transactions resulting from movement between tiers.\n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nOneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeSettings" ], "operationId": "OneLakeSettings_ModifyDefaultTier", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": false, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "defaultTier", "description": "The new default access tier for the workspace. Additional access tier values may be added over time.", "type": "string", "enum": [ "Hot", "Cool", "Cold" ], "x-ms-enum": { "name": "OneLakeAccessTier", "modelAsString": true, "values": [ { "value": "Hot", "description": "Hot access tier." }, { "value": "Cool", "description": "Cool access tier." }, { "value": "Cold", "description": "Cold access tier." } ] }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/ModifyOneLakeWorkspaceDefaultTierResponse" } }, "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* UnknownError - An error occurred.\n\n* EntityNotFound - Workspace not found.\n\n* InvalidInput - Invalid request input.\n\n* UserNotAuthorizedForWorkspaceLifecycle - User is not authorized for the workspace.\n\n* LifecycleNotAllowedForMyWorkspace - Lifecycle settings are not allowed on My Workspace.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Modify default tier to Cool example": { "$ref": "./examples/platform/ModifyOneLakeDefaultTierToCool.json" }, "Modify default tier to Hot example": { "$ref": "./examples/platform/ModifyOneLakeDefaultTierToHot.json" } } } }, "/workspaces/{workspaceId}/onelake/settings/modifyAccessTimeTracking": { "post": { "summary": "Enables or disables OneLake access time tracking for a workspace.", "description": "Enables or disables Azure Storage `LastAccessTime` tracking for OneLake files in the workspace. When enabled, file reads and writes update the file's last access timestamp; metadata-only operations, such as checking properties, metadata, or tags, do not. Changes take effect immediately.\n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nOneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeSettings" ], "operationId": "OneLakeSettings_ModifyAccessTimeTracking", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": false, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "modifyAccessTimeTrackingRequest", "description": "The modify access time tracking request object.", "required": true, "schema": { "$ref": "./definitions/platform.json#/definitions/ModifyAccessTimeTrackingRequest" } } ], "responses": { "200": { "description": "Request completed successfully." }, "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* WorkspaceNotFound - Workspace not found.\n\n* UserNotAuthorized - User is not authorized. The caller must have an *admin* workspace role.\n\n* OneLakeNotProvisioned - The workspace has no items, so OneLake storage is not provisioned.\n\n* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Enable access time tracking example": { "$ref": "./examples/platform/ModifyOneLakeAccessTimeTrackingEnable.json" }, "Disable access time tracking example": { "$ref": "./examples/platform/ModifyOneLakeAccessTimeTrackingDisable.json" } } } }, "/workspaces/{workspaceId}/onelake/lifecycle/exportPolicy": { "post": { "summary": "Exports the OneLake lifecycle management policy for a workspace.", "description": "Returns the lifecycle management policy for a workspace. A lifecycle policy is made up of rules, which are made up of filters, actions, and conditions. A prefixMatch of \"*/diagnosticLogs\" applies the rule to all diagnostic events routed to that workspace.\n\nOneLake supports the same lifecycle policy structure as [Azure Storage lifecycle management](https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview), with the following exceptions:\n\n- OneLake does not support the TierToArchive action.\n- OneLake does not support the Delete action.\n- OneLake does not support the blobIndexMatch filter.\n\nFor more information, see [OneLake lifecycle management](https://aka.ms/OneLakeLCM).\n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nOneLake.Read.All or OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeLifecyclePolicy" ], "operationId": "OneLakeLifecyclePolicy_ExportPolicy", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": false, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/OneLakeWorkspaceLifecyclePolicyResponse" } }, "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* UnknownError - An error occurred.\n\n* EntityNotFound - Workspace not found.\n\n* UserNotAuthorizedForWorkspaceLifecycle - User is not authorized for the workspace.\n\n* LifecycleNotAllowedForMyWorkspace - Lifecycle settings are not allowed on My Workspace.\n\n* PolicyNotFound - No lifecycle policy exists for this workspace.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Export OneLake lifecycle policy example": { "$ref": "./examples/platform/ExportOneLakeLifecyclePolicy.json" } } } }, "/workspaces/{workspaceId}/onelake/lifecycle/importPolicy": { "post": { "summary": "Imports a OneLake lifecycle management policy for a workspace.", "description": "Creates or replaces the OneLake lifecycle management policy for a workspace. The policy must be sent in full as a complete replacement. To delete an existing policy, send a request with an empty rules array.\n\nIn OneLake, lifecycle rules are scoped to the workspace. The prefixMatch filter starts at the item level, so prefixMatch values must begin with a valid item name or item ID (for example, \"MyLakehouse.Lakehouse/Files/data\"). Setting the prefixMatch to \"*/diagnosticLogs\" applies the rule to all diagnostic events routed to that workspace.\n\nOneLake supports the same lifecycle policy structure as [Azure Storage lifecycle management](https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview), with the following exceptions:\n\n- OneLake does not support the TierToArchive action.\n- OneLake does not support the Delete action.\n- OneLake does not support the blobIndexMatch filter.\n\nFor more information, see [OneLake lifecycle management](https://aka.ms/OneLakeLCM).\n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nOneLake.ReadWrite.All\n\n## Limitations\n\n- The `tierToArchive` action is not supported.\n- The `delete` action is not supported.\n- The `blobIndexMatch` filter is not supported.\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": [ "OneLakeLifecyclePolicy" ], "operationId": "OneLakeLifecyclePolicy_ImportPolicy", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": false, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "importOneLakeWorkspaceLifecyclePolicyRequest", "description": "The lifecycle policy to import.", "required": true, "schema": { "$ref": "./definitions/platform.json#/definitions/ImportOneLakeWorkspaceLifecyclePolicyRequest" } } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/OneLakeWorkspaceLifecyclePolicyResponse" } }, "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* UnknownError - An error occurred.\n\n* EntityNotFound - Workspace not found.\n\n* InvalidInput - Invalid request body.\n\n* UserNotAuthorizedForWorkspaceLifecycle - User is not authorized for the workspace.\n\n* LifecycleNotAllowedForMyWorkspace - Lifecycle settings are not allowed on My Workspace.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Import OneLake lifecycle policy create example": { "$ref": "./examples/platform/ImportOneLakeLifecyclePolicyCreate.json" }, "Import empty OneLake lifecycle policy (delete) example": { "$ref": "./examples/platform/ImportOneLakeLifecyclePolicyDelete.json" }, "Import OneLake lifecycle policy with multiple actions example": { "$ref": "./examples/platform/ImportOneLakeLifecyclePolicyMultiTier.json" }, "Import OneLake lifecycle policy with multiple rules example": { "$ref": "./examples/platform/ImportOneLakeLifecyclePolicyMultipleRules.json" }, "Import OneLake lifecycle policy with diagnostic events scope example": { "$ref": "./examples/platform/ImportOneLakeLifecyclePolicyWithPrefixMatch.json" } } } }, "/deploymentPipelines": { "get": { "summary": "Returns a list of deployment pipelines the user can access.", "description": "## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_ListDeploymentPipelines", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelines" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List deployment pipelines example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelines.json" }, "List deployment pipelines with continuation example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelinesWithContinuation.json" } } }, "post": { "summary": "Creates a new deployment pipeline.", "description": "\n## Permissions\n\n Service Principals must have permission granted by Fabric administrator. For more information see: [Service principals can create workspaces, connections, and deployment pipelines](/fabric/admin/service-admin-portal-developer#service-principals-can-create-workspaces-connections-and-deployment-pipelines). \n## Required Delegated Scopes\n\nPipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_CreateDeploymentPipeline", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "createDeploymentPipelineRequest", "in": "body", "description": "The create pipeline request.", "required": true, "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/CreateDeploymentPipelineRequest" } } ], "responses": { "201": { "description": "Successfuly created.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineExtendedInfo" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/CreateDeploymentPipeline.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}": { "get": { "summary": "Returns the specified deployment pipeline metadata.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_GetDeploymentPipeline", "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineExtendedInfo" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/GetDeploymentPipeline.json" } } }, "patch": { "summary": "Updates the properties of the specified deployment pipeline.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_UpdateDeploymentPipeline", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "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/deploymentPipelines.json#/definitions/UpdateDeploymentPipelineRequest" } } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineExtendedInfo" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/UpdateDeploymentPipeline.json" } } }, "delete": { "summary": "Deletes the specified deployment pipeline.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\nThis operation will fail if there's an active deployment operation.\n\n## Required Delegated Scopes\n\nPipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_DeleteDeploymentPipeline", "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/DeleteDeploymentPipeline.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/roleAssignments": { "get": { "tags": [ "DeploymentPipelines" ], "summary": "Returns a list of deployment pipeline role assignments.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "operationId": "DeploymentPipelines_ListDeploymentPipelineRoleAssignments", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "required": true, "description": "The deployment pipeline ID.", "type": "string", "format": "uuid" }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineRoleAssignments" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List role assignments of a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineRoleAssignments.json" }, "List role assignments of a deployment pipeline with continuation example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineRoleAssignmentsWithContinuation.json" } } }, "post": { "tags": [ "DeploymentPipelines" ], "summary": "Adds a deployment pipeline role assignment.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.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) | Yes |\n\n## Interface", "operationId": "DeploymentPipelines_AddDeploymentPipelineRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "required": true, "description": "The deployment pipeline ID.", "type": "string", "format": "uuid" }, { "in": "body", "name": "deploymentPipelineRoleAssignmentRequest", "description": "Add deployment pipeline role assignment request payload.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/AddDeploymentPipelineRoleAssignmentRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineRoleAssignment" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Add a user role assignment to a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/AddDeploymentPipelineUserRoleAssignment.json" }, "Add a group role assignment to a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/AddDeploymentPipelineGroupRoleAssignment.json" }, "Add a service principal role assignment to a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/AddDeploymentPipelineServicePrincipalRoleAssignment.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/roleAssignments/{principalId}": { "delete": { "summary": "Deletes the specified deployment pipeline role assignment.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_DeleteDeploymentPipelineRoleAssignment", "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "required": true, "description": "The deployment pipeline ID.", "type": "string", "format": "uuid" }, { "in": "path", "name": "principalId", "description": "The principal ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Remove group role assignment from a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/DeleteDeploymentPipelineUserGroupRoleAssignment.json" }, "Remove service principal role assignment from a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/DeleteDeploymentPipelineUserPrincipalRoleAssignment.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/operations": { "get": { "summary": "Returns a list of the up-to-20 most recent deploy operations performed on the specified deployment pipeline.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_ListDeploymentPipelineOperations", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineOperations" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List deployment pipeline operations example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineOperations.json" }, "List deployment pipeline operations with continuation example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineOperationsWithContinuation.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/operations/{operationId}": { "get": { "summary": "Returns the details of the specified deploy operation performed on the specified deployment pipeline, including the deployment execution plan.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_GetDeploymentPipelineOperation", "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "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": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineOperationExtendedInfo" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get a deployment pipeline operation example": { "$ref": "./examples/deploymentPipelines/GetDeploymentPipelineOperation.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/stages": { "get": { "summary": "Returns the specified deployment pipeline stages.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_ListDeploymentPipelineStages", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineStages" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List the deployment pipeline stages example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineStages.json" }, "List the deployment pipeline stages with a continuation token example": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineStagesWithContinuation.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/stages/{stageId}": { "get": { "summary": "Returns the specified deployment pipeline stage metadata.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_GetDeploymentPipelineStage", "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" }, { "name": "stageId", "in": "path", "description": "The deployment pipeline stage ID.", "required": true, "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineStage" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get a deployment pipeline stage example": { "$ref": "./examples/deploymentPipelines/GetDeploymentPipelineStage.json" } } }, "patch": { "summary": "Updates the properties of the specified deployment pipeline stage.", "description": "## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_UpdateDeploymentPipelineStage", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" }, { "name": "stageId", "in": "path", "description": "The deployment pipeline stage ID.", "required": true, "type": "string", "format": "uuid" }, { "name": "updatePipelineStageRequest", "in": "body", "description": "The update pipeline stage request.", "required": true, "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineStageRequest" } } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineStage" } }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update a deployment pipeline stage example": { "$ref": "./examples/deploymentPipelines/UpdateDeploymentPipelineStage.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/stages/{stageId}/items": { "get": { "summary": "Returns the supported items from the workspace assigned to the specified stage of the specified deployment pipeline.", "description": "To learn about items that are supported in deployment pipelines, see: [Supported items](/fabric/cicd/deployment-pipelines/intro-to-deployment-pipelines#supported-items).\n\n## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\nThe user must be at least a workspace contributor assigned to the specified stage. For more information, see: [Permissions](https://go.microsoft.com/fwlink/?linkid=2235654).\n\n## Required Delegated Scopes\n\nPipeline.Read.All or Pipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_ListDeploymentPipelineStageItems", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" }, { "name": "stageId", "in": "path", "description": "The deployment pipeline stage ID.", "required": true, "type": "string", "format": "uuid" }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineStageItems" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example of listing a deployment pipeline stage Fabric items": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineStageItems.json" }, "Example of listing a deployment pipeline stage Fabric items with a continuation token": { "$ref": "./examples/deploymentPipelines/ListDeploymentPipelineStageItemsWithContinuation.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/deploy": { "post": { "summary": "Deploys items from the specified stage of the specified deployment pipeline.", "description": "To learn about items that are supported in deployment pipelines, see: [Supported items](/fabric/cicd/deployment-pipelines/intro-to-deployment-pipelines#supported-items).\n\nThis API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\nThe user must be at least a contributor on both source and target deployment workspaces. For more information, see: [Permissions](https://go.microsoft.com/fwlink/?linkid=2235654).\n\n## Required Delegated Scopes\n\nPipeline.Deploy\n\n## Limitations\n\nMaximum 300 deployed items per request.\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 supported when all the [items](/rest/api/fabric/articles/item-management/item-management-overview) involved in the operation support service principals |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_DeployStageContent", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "name": "deploymentPipelineId", "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/deploymentPipelines.json#/definitions/DeployRequest" } } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineOperationExtendedInfo" } }, "202": { "description": "Request accepted, deployment is in progress.", "headers": { "Location": { "description": "The URL of the operation status. Can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID. Can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "deployment-id": { "description": "The deployment ID. Can be used with deployment pipeline operations APIs to track deployment operations history.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* UnknownError - An error occurred.\n\n* PrincipalTypeNotSupported - Caller identity type is not supported.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example of deploying specific Fabric items (such as reports or dashboards) from a deployment pipeline stage": { "$ref": "./examples/deploymentPipelines/SelectiveDeploy.json" }, "Example of deploying all Fabric items (such as reports or dashboards) from a deployment pipeline stage": { "$ref": "./examples/deploymentPipelines/DeployAll.json" }, "Example of deploying with options": { "$ref": "./examples/deploymentPipelines/DeployWithOptions.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/stages/{stageId}/assignWorkspace": { "post": { "summary": "Assigns the specified workspace to the specified deployment pipeline stage.", "description": "This operation will fail if there's an active deployment operation.\n\n## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes\n\nPipeline.ReadWrite.All and Workspace.ReadWrite.All\n\n## Limitations\n\n - The specified deployment pipeline stage must not be assigned to any other workspace.\n - Only workspace admins can assign it to a deployment pipeline stage.\n - The specified workspace isn't assigned to any other deployment pipeline stage.\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": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_AssignWorkspaceToStage", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" }, { "name": "stageId", "in": "path", "description": "The deployment pipeline stage ID.", "required": true, "type": "string", "format": "uuid" }, { "name": "deploymentPipelineAssignWorkspaceRequest", "in": "body", "description": "The assign workspace request.", "required": true, "schema": { "$ref": "./definitions/deploymentPipelines.json#/definitions/DeploymentPipelineAssignWorkspaceRequest" } } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Assign a workspace to a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/AssignWorkspaceToStage.json" } } } }, "/deploymentPipelines/{deploymentPipelineId}/stages/{stageId}/unassignWorkspace": { "post": { "summary": "Unassigns the workspace from the specified stage in the specified deployment pipeline.", "description": "This operation will fail if there's an active deployment operation.\n\n## Permissions\n\nThe caller must have an *admin* deployment pipelines role.\n\n## Required Delegated Scopes\n\nPipeline.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) | Yes |\n\n## Interface", "tags": [ "DeploymentPipelines" ], "operationId": "DeploymentPipelines_UnassignWorkspaceFromStage", "consumes": [], "produces": [ "application/json" ], "parameters": [ { "name": "deploymentPipelineId", "in": "path", "description": "The deployment pipeline ID.", "required": true, "type": "string", "format": "uuid" }, { "name": "stageId", "in": "path", "description": "The deployment pipeline stage ID.", "required": true, "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Unassign a workspace from a deployment pipeline example": { "$ref": "./examples/deploymentPipelines/UnassignWorkspaceFromStage.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/dataAccessRoles": { "get": { "summary": "Returns a list of OneLake roles.", "description": "## Required Delegated Scopes\n\n OneLake.Read.All or OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeDataAccessSecurity" ], "operationId": "OneLakeDataAccessSecurity_ListDataAccessRoles", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the Fabric item to put the roles.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/DataAccessRoles" }, "headers": { "Etag": { "type": "string" } } }, "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 - Indicates that the server cannot find the requested item.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List data access roles multiple pages example": { "$ref": "./examples/platform/ListDataAccessRolesWithContinuationExample.json" }, "List default data access roles example": { "$ref": "./examples/platform/ListDefaultDataAccessRolesExample.json" }, "List data access roles single page example": { "$ref": "./examples/platform/ListDataAccessRolesSinglePageExample.json" }, "List data access roles with constraints example": { "$ref": "./examples/platform/ListDefaultDataAccessRolesWithConstraints.json" } } }, "put": { "summary": "Creates or updates data access roles in OneLake.", "description": "## Required Delegated Scopes\n\n OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeDataAccessSecurity" ], "operationId": "OneLakeDataAccessSecurity_CreateOrUpdateDataAccessRoles", "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 ID of the Fabric item to put the roles.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "dryRun", "description": "Used to trigger a dry run of the API call. True - The API call will trigger a dry run and no roles will be changed. False - Will not trigger a dry run and roles will be updated.", "type": "boolean", "required": false }, { "in": "body", "name": "createOrUpdateDataAccessRolesRequest", "description": "Contains definition of roles used to manage data access security and ensure that only authorized users can view, edit, or delete certain data. Calling this API updates role definitions and creates, updates, or deletes roles to match the provided payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/CreateOrUpdateDataAccessRolesRequest" }, "required": true }, { "in": "header", "name": "If-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag matches the provided ETag.", "required": false, "type": "string" }, { "in": "header", "name": "If-None-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag doesn't match the provided ETag.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "Etag": { "type": "string" } } }, "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 - Indicates that the server can't find the requested item.\n\n* PreconditionFailed -Indicates that the current resource ETag doesn't match the value specified in the If-Match header.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create or update data access roles example": { "$ref": "./examples/platform/CreateOrUpdateDataAccessRolesExample.json" }, "Create or update data access roles with tables path example": { "$ref": "./examples/platform/CreateOrUpdateDataAccessRolesWithTablesPathExample.json" }, "Create or update data access roles with constraints example": { "$ref": "./examples/platform/CreateOrUpdateDataAccessRolesWithConstraints.json" } } }, "post": { "summary": "Creates or updates (upserts) a single data access role.", "description": "**When calling this API, callers must specify `true` as the value for the query parameter `preview`.**\n\n## Permissions\n\n The caller must have *member* or higher role on the workspace.\n\n## Required Delegated Scopes\n\n OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeDataAccessSecurity" ], "operationId": "OneLakeDataAccessSecurity_CreateOrUpdateSingleDataAccessRole", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the Fabric item to create or update the role on.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "dataAccessRoleConflictPolicy", "description": "Determines the behavior when there are conflicting data access role assignments. Overwrite means new assignments replace existing ones. Abort means the operation fails if there are conflicts. Additional dataAccessRoleConflictPolicy types may be added over time.", "type": "string", "enum": [ "Overwrite", "Abort" ], "x-ms-enum": { "name": "DataAccessRoleConflictPolicy", "modelAsString": true, "values": [ { "value": "Overwrite", "description": "Create a new role or overwrite existing role with the provided definition." }, { "value": "Abort", "description": "Abort the operation when there is a conflict with an existing role." } ] }, "required": false }, { "in": "body", "name": "createOrUpdateSingleDataAccessRoleRequest", "description": "A single data access role definition (without id).", "schema": { "$ref": "./definitions/platform.json#/definitions/DataAccessRoleBase" }, "required": true }, { "in": "header", "name": "If-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag matches the provided ETag.", "required": false, "type": "string" }, { "in": "header", "name": "If-None-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag doesn't match the provided ETag.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "ETag": { "type": "string", "description": "Unique identifier for the resource, used for concurrency control" }, "Location": { "type": "string", "description": "URL of the created role resource." } } }, "201": { "description": "Role created successfully.", "headers": { "ETag": { "type": "string", "description": "Unique identifier for the resource, used for concurrency control" }, "Location": { "type": "string", "description": "URL of the created role resource." } } }, "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 - Indicates that the server cannot find the requested item.\n\n* PreconditionFailed - Indicates that the current resource ETag doesn't match the value specified in the If-Match header.\n\n* Conflict - There are conflicting role assignments and the conflict policy is set to Abort.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create or update single data access role example": { "$ref": "./examples/platform/CreateOrUpdateSingleDataAccessRole.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/dataAccessRoles/{roleName}": { "get": { "summary": "Returns data access role details for the given role name.", "description": "**When calling this API, callers must specify `true` as the value for the query parameter `preview`.**\n\n## Permissions\n\n The caller must have *member* or higher role on the workspace.\n\n## Required Delegated Scopes\n\n OneLake.Read.All or OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeDataAccessSecurity" ], "operationId": "OneLakeDataAccessSecurity_GetDataAccessRole", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the Fabric item to get the role from.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "roleName", "description": "The name of the role to retrieve.", "type": "string", "required": true }, { "in": "header", "name": "If-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag matches the provided ETag.", "required": false, "type": "string" }, { "in": "header", "name": "If-None-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag doesn't match the provided ETag.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/DataAccessRoleBase" }, "headers": { "ETag": { "type": "string", "description": "Unique identifier for the resource, used for concurrency control" } } }, "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 - Indicates that the server cannot find the requested item.\n\n* RoleNotFound - Indicates that the specified role was not found.\n\n* PreconditionFailed - Indicates that the current resource ETag doesn't match the value specified in the If-Match header.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get data access role example": { "$ref": "./examples/platform/GetDataAccessRole.json" } } }, "delete": { "summary": "Deletes a single data access role.", "description": "**When calling this API, callers must specify `true` as the value for the query parameter `preview`.**\n\n## Permissions\n\n The caller must have *member* or higher role on the workspace.\n\n## Required Delegated Scopes\n\n OneLake.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) | Yes |\n\n## Interface", "tags": [ "OneLakeDataAccessSecurity" ], "operationId": "OneLakeDataAccessSecurity_DeleteDataAccessRole", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The ID of the Fabric item to delete the role from.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "roleName", "description": "The name of the role to delete.", "type": "string", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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 - Indicates that the server cannot find the requested item.\n\n* RoleNotFound - Indicates that the specified role was not found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete data access role example": { "$ref": "./examples/platform/DeleteDataAccessRole.json" } } } }, "/workspaces/{workspaceId}/provisionIdentity": { "post": { "summary": "Provision a workspace identity for a workspace.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n ## Permissions\n\n The caller must have an *admin* role in the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_ProvisionIdentity", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The ID of the workspace.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Successfully provisioned", "schema": { "$ref": "./definitions/platform.json#/definitions/WorkspaceIdentity" } }, "202": { "description": "Request accepted, identity provisioning in progress", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID, which can be used with LRO APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Provision workspace identity example": { "$ref": "./examples/platform/ProvisionWorkspaceIdentity.json" } } } }, "/workspaces/{workspaceId}/deprovisionIdentity": { "post": { "summary": "Deprovision a workspace identity.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n ## Permissions\n\n The caller must have an *admin* role in the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_DeprovisionIdentity", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The ID of the workspace.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Successfully deprovisioned" }, "202": { "description": "Request accepted, identity deprovisioning in progress", "headers": { "Location": { "description": "The URL of the operation status, which can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID, which can be used with LRO APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Deprovision workspace identity example": { "$ref": "./examples/platform/DeprovisionWorkspaceIdentity.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/externalDataShares": { "post": { "summary": "Creates an external data share for a given path or list of paths in the specified item.", "description": "## Permissions\n\nThe caller must have *read* and *reshare* permissions on the item.\n\n## Required Delegated Scopes\n\nItem APIs can have one of these scopes in their token:\n- Generic scope: Item.ExternalDataShare.All\n- Specific scope: *itemType*.ExternalDataShare.All, for example: Lakehouse.ExternalDataShare.All\n\n For more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Required Tenant Settings\n\nTo use this API, enable the *External data sharing* admin switch for the calling principal.\n\n## Limitations\n\nMaximum 10 requests per minute.\n\nSupported item types: See [External data sharing in Microsoft Fabric - Supported item types](/fabric/governance/external-data-sharing-overview#supported-fabric-item-types).\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": [ "ExternalDataSharesProvider" ], "operationId": "ExternalDataSharesProvider_CreateExternalDataShare", "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": "createExternalDataShareRequest", "description": "The request payload for creating an external data share.", "required": true, "schema": { "$ref": "./definitions/externaldatasharing.json#/definitions/CreateExternalDataShareRequest" } } ], "responses": { "201": { "description": "Successfully created.", "headers": { "Location": { "description": "The URL of the newly created external data share.", "type": "string" } }, "schema": { "$ref": "./definitions/externaldatasharing.json#/definitions/ExternalDataShare" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create an external data share example": { "$ref": "./examples/externaldatasharing/CreateExternalDataShare.json" }, "Create an external data share with a specific recipient tenant ID example": { "$ref": "./examples/externaldatasharing/CreateExternalDataShareWithRecipientTenantID.json" }, "Create an external data share with recipient object ID example": { "$ref": "./examples/externaldatasharing/CreateExternalDataShareWithRecipientObjectId.json" }, "Create an external data share with multiple paths example": { "$ref": "./examples/externaldatasharing/CreateExternalDataShareWithMultiplePaths.json" } } }, "get": { "summary": "Returns a list of the external data shares that exist for the specified item.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\nThe caller must have *read* and *reshare* permissions on the item.\n\n## Required Delegated Scopes\n\nItem APIs can have one of these scopes in their token:\n- Generic scope: Item.ExternalDataShare.All\n- Specific scope: *itemType*.ExternalDataShare.All, for example: Lakehouse.ExternalDataShare.All\n\n For more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Required Tenant Settings\n\nTo use this API, enable the *External data sharing* admin switch for the calling principal.\n\n## Limitations\n\nMaximum 10 requests per minute.\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": [ "ExternalDataSharesProvider" ], "operationId": "ExternalDataSharesProvider_ListExternalDataSharesInItem", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "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": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/externaldatasharing.json#/definitions/ExternalDataShares" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List external data shares of an item example": { "$ref": "./examples/externaldatasharing/ListExternalDataSharesInItem.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/externalDataShares/{externalDataShareId}": { "get": { "summary": "Returns the details of the specified external data share.", "description": "## Permissions\n\nThe caller must have *read* and *reshare* permissions on the item.\n\n## Required Delegated Scopes\n\nItem APIs can have one of these scopes in their token:\n- Generic scope: Item.ExternalDataShare.All\n- Specific scope: *itemType*.ExternalDataShare.All, for example: Lakehouse.ExternalDataShare.All\n\n For more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Required Tenant Settings\n\nTo use this API, enable the *External data sharing* admin switch for the calling principal.\n\n## Limitations\n\nMaximum 10 requests per minute.\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": [ "ExternalDataSharesProvider" ], "operationId": "ExternalDataSharesProvider_GetExternalDataShare", "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": "path", "name": "externalDataShareId", "description": "The external data share ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/externaldatasharing.json#/definitions/ExternalDataShare" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get external data share example": { "$ref": "./examples/externaldatasharing/GetExternalDataShare.json" } } }, "delete": { "summary": "Deletes the specified external data share.", "description": "## Permissions\n\nThe caller must have *read* and *reshare* permissions on the item.\n\n## Required Delegated Scopes\n\nItem APIs can have one of these scopes in their token:\n- Generic scope: Item.ExternalDataShare.All\n- Specific scope: *itemType*.ExternalDataShare.All, for example: Lakehouse.ExternalDataShare.All\n\n For more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Required Tenant Settings\n\nTo use this API, enable the *External data sharing* admin switch for the calling principal.\n\n## Limitations\n\nMaximum 10 requests per minute.\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": [ "ExternalDataSharesProvider" ], "operationId": "ExternalDataSharesProvider_DeleteExternalDataShare", "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": "path", "name": "externalDataShareId", "description": "The external data share ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete external data share example": { "$ref": "./examples/externaldatasharing/DeleteExternalDataShare.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/externalDataShares/{externalDataShareId}/revoke": { "post": { "summary": "Revokes the specified external data share. This action cannot be undone.", "description": "## Permissions\n\nThe caller must have *read* and *reshare* permissions on the item.\n\n## Required Delegated Scopes\n\nItem APIs can have one of these scopes in their token:\n- Generic scope: Item.ExternalDataShare.All\n- Specific scope: *itemType*.ExternalDataShare.All, for example: Lakehouse.ExternalDataShare.All\n\n For more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Required Tenant Settings\n\nTo use this API, enable the *External data sharing* admin switch for the calling principal.\n\n## Limitations\n\nMaximum 10 requests per minute.\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": [ "ExternalDataSharesProvider" ], "operationId": "ExternalDataSharesProvider_RevokeExternalDataShare", "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": "path", "name": "externalDataShareId", "description": "The external data share ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Revoke external data share example": { "$ref": "./examples/externaldatasharing/RevokeExternalDataShare.json" } } } }, "/externalDataShares/invitations/{invitationId}": { "get": { "summary": "Returns information about an external data share invitation.", "description": "## Required Delegated Scopes\n\nExternalDataShare.Accept.All\n\n## Required Tenant Settings\n\nTo use this API, enable the *Users can accept external data shares* admin switch for the calling principal.\n\n## Limitations\n\nMaximum 10 requests per minute.\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": [ "ExternalDataSharesRecipient" ], "operationId": "ExternalDataSharesRecipient_GetExternalDataShareInvitationDetails", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "invitationId", "description": "The external data share invitation ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "providerTenantId", "description": "The external data share provider tenant ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/externaldatasharing.json#/definitions/ExternalDataShareInvitationDetails" } }, "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* ExternalDataShareCannotBeAcceptedInTheSameTenant - An External Data Share cannot be accepted in the same tenant", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get external data share invitation details example": { "$ref": "./examples/externaldatasharing/GetExternalDataShareInvitationDetails.json" } } } }, "/externalDataShares/invitations/{invitationId}/accept": { "post": { "summary": "Accepts an external data share invitation into a specified data item.", "description": "## Permissions\n\nThe caller must have *write* permissions on the item.\n\n## Required Delegated Scopes\n\nExternalDataShare.Accept.All and for the specified item, one of the 2 types of scopes:\n- Generic scope: Item.ReadWrite.All\n- Specific scope: *itemType*.ReadWrite.All (for example: Lakehouse.ReadWrite.All)\n\n For more information about scopes, see [scopes article](/rest/api/fabric/articles/scopes).\n\n## Required Tenant Settings\n\nTo use this API, enable the *Users can accept external data shares* admin switch for the calling principal.\n\n## Limitations\n\nMaximum 10 requests per minute.\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": [ "ExternalDataSharesRecipient" ], "operationId": "ExternalDataSharesRecipient_AcceptExternalDataShareInvitation", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "invitationId", "description": "The external data share invitation ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "acceptExternalDataShareRequest", "description": "The request payload for accepting an external data share invitation.", "required": true, "schema": { "$ref": "./definitions/externaldatasharing.json#/definitions/AcceptExternalDataShareInvitationRequest" } } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/externaldatasharing.json#/definitions/AcceptExternalDataShareInvitationResponse" } }, "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* ExternalDataShareCannotBeAcceptedInTheSameTenant - An External Data Share cannot be accepted in the same tenant\n\n* ExternalDataShareOperationNotSupportedForItemType - Item type is not supported for this operation", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Accept external data share invitation example": { "$ref": "./examples/externaldatasharing/AcceptExternalDataShareInvitation.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/connections": { "get": { "summary": "Returns the list of connections that the specified item is connected to.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\n The caller must have *read and write* permissions for the item. \n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see [Scopes article](/rest/api/fabric/articles/scopes).\n\n## Limitations\n\n This API is blocked for an item with a protected sensitivity label, unless the caller has the usage rights to delete the sensitivity label.\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_ListItemConnections", "produces": [ "application/json" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "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": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/connections.json#/definitions/ItemConnections" } }, "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 - Indicates that the server cannot find the requested item.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List item connections example": { "$ref": "./examples/platform/ListItemConnections.json" }, "List item connections with continuation example": { "$ref": "./examples/platform/ListItemConnectionsVirtualConnection.json" }, "List item connections - Semantic Model Direct Lake example": { "$ref": "./examples/platform/ListItemConnectionsVirtualConnection.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/applyTags": { "post": { "summary": "Apply tags on an item.", "description": "## Permissions\n\n The caller must have *contributor* or higher role on the workspace. \n\n## Required Delegated Scopes\n\n ItemMetadata.ReadWrite.All or these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n For more information about scopes, see [Scopes article](/rest/api/fabric/articles/scopes).\n\n## Limitations\n\nMaximum 25 requests per one minute per principal.\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": [ "Tags" ], "operationId": "Tags_ApplyTags", "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": "applyTagsRequest", "description": "The request payload for applying tags.", "schema": { "$ref": "./definitions/tags.json#/definitions/ApplyTagsRequest" }, "required": true } ], "responses": { "200": { "description": "Tags were applied successfully." }, "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 - Indicates that the server cannot find the requested item \n\n* EntityNotFound - Tag ID does not exist \n\n* InvalidInputs - Invalid input was provided", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Apply tags example": { "$ref": "./examples/platform/ApplyTags.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/unapplyTags": { "post": { "summary": "Unapply tags from an item.", "description": "## Permissions\n\n The caller must have *contributor* or higher role on the workspace. \n\n## Required Delegated Scopes\n\n ItemMetadata.ReadWrite.All or these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n For more information about scopes, see [Scopes article](/rest/api/fabric/articles/scopes).\n\n## Limitations\n\nMaximum 25 requests per one minute per principal.\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": [ "Tags" ], "operationId": "Tags_UnapplyTags", "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": "unapplyTagsRequest", "description": "The request payload for unapplying tags.", "schema": { "$ref": "./definitions/tags.json#/definitions/UnapplyTagsRequest" }, "required": true } ], "responses": { "200": { "description": "Tags were unapplied successfully." }, "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 - Indicates that the server cannot find the requested item \n\n* EntityNotFound - Tag ID does not exist \n\n* InvalidInputs - Invalid input was provided", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Unapply tags example": { "$ref": "./examples/platform/UnapplyTags.json" } } } }, "/workspaces/{workspaceId}/applyTags": { "post": { "summary": "Apply tags to a workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\n## Permissions\n\nThe caller must have admin permissions on the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_ApplyWorkspaceTags", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "applyTagsRequest", "description": "The request payload for applying tags.", "required": true, "schema": { "$ref": "./definitions/tags.json#/definitions/ApplyWorkspaceTagsRequest" } } ], "responses": { "200": { "description": "Tags were applied successfully." }, "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* WorkspaceNotFound - Indicates that the server cannot find the requested workspace \n\n* EntityNotFound - Tag ID does not exist \n\n* InvalidInputs - Invalid input was provided", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Apply workspace tags example": { "$ref": "./examples/platform/ApplyWorkspaceTags.json" } } } }, "/workspaces/{workspaceId}/unapplyTags": { "post": { "summary": "Unapply tags from a workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\n## Permissions\n\nThe caller must be a Fabric administrator or authenticate using a service principal.\n\n## Required Delegated Scopes\n\nTenant.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_UnapplyWorkspaceTags", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "unapplyTagsRequest", "description": "The request payload for unapplying tags.", "required": true, "schema": { "$ref": "./definitions/tags.json#/definitions/UnapplyWorkspaceTagsRequest" } } ], "responses": { "200": { "description": "Tags were unapplied successfully." }, "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* WorkspaceNotFound - Indicates that the server cannot find the requested workspace \n\n* EntityNotFound - Tag ID does not exist \n\n* InvalidInputs - Invalid input was provided", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Unapply workspace tags example": { "$ref": "./examples/platform/UnapplyWorkspaceTags.json" } } } }, "/workspaces/{workspaceId}/folders": { "get": { "summary": "Returns a list of folders from the specified workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\nThis API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\n The caller must have *viewer* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Folders" ], "operationId": "Folders_ListFolders", "produces": [ "application/json" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "rootFolderId", "description": "This parameter allows users to filter folders based on a specific root folder. If not provided, the workspace is used as the root folder.", "type": "string", "format": "uuid", "required": false }, { "in": "query", "name": "recursive", "description": "Lists folders in a folder and its nested folders, or just a folder only. True - All folders in the folder and its nested folders are listed, False - Only folders in the folder are listed. The default value is true.", "type": "boolean", "required": false }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/Folders" } }, "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* FolderNotFound - Could not find the requested folder.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List all folders in workspace example": { "$ref": "./examples/platform/ListAllFoldersInWorkspace.json" }, "List folders under parent folder recursively example": { "$ref": "./examples/platform/ListFoldersUnderParentFolderRecursively.json" }, "List direct children folders under parent folder example": { "$ref": "./examples/platform/ListDirectChildrenFoldersUnderParentFolder.json" }, "List all folders in workspace with continuation example": { "$ref": "./examples/platform/ListFoldersInWorkspaceWithContinuation.json" } } }, "post": { "summary": "Creates a folder in the specified workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\n## Permissions\n\n The caller must have *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Folders" ], "operationId": "Folders_CreateFolder", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "createFolderRequest", "description": "Create folder request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/CreateFolderRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created", "schema": { "$ref": "../common/definitions.json#/definitions/Folder" } }, "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* FolderDisplayNameAlreadyInUse - Folder display name is already used.\n\n* FolderNotFound - The requested folder was not found in the workspace.\n\n* InvalidFolderDisplayName - The provided folder display name is invalid.\n\n* FolderDepthOutOfRange - The parent folder has achieved max depth, can't create a new subfolder.\n\n* WorkspaceNotSupported - The specified workspace type doesn't support Folder\n\n.* TooManyFolders - The specified workspace has reached the max count of folders, can't create any more.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create a folder with the workspace as its parent folder example": { "$ref": "./examples/platform/CreateFolderWithWorkspaceAsParentFolder.json" }, "Create a folder under another folder example": { "$ref": "./examples/platform/CreateFolderUnderAnotherFolder.json" } } } }, "/workspaces/{workspaceId}/folders/{folderId}": { "get": { "summary": "Returns the properties of the specified folder.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\n## Permissions\n\n The caller must have *viewer* or higher role on the workspace. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Folders" ], "operationId": "Folders_GetFolder", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "folderId", "description": "The folder ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "../common/definitions.json#/definitions/Folder" } }, "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* FolderNotFound - The requested folder was not found in the workspace.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get a folder example": { "$ref": "./examples/platform/GetFolder.json" } } }, "patch": { "summary": "Updates the properties of the specified folder.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\n## Permissions\n\n The caller must have *contributor* or higher role on the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Folders" ], "operationId": "Folders_UpdateFolder", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "folderId", "description": "The folder ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateFolderRequest", "description": "Update folder request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateFolderRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "../common/definitions.json#/definitions/Folder" } }, "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* FolderNotFound - The requested folder was not found in the workspace.\n\n* FolderDisplayNameAlreadyInUse - Folder display name is already used.\n\n* InvalidFolderDisplayName - The provided folder name is invalid, such as including invalid chars.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update a folder example": { "$ref": "./examples/platform/UpdateFolder.json" } } }, "delete": { "summary": "Deletes the specified folder.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\n## Permissions\n\n The caller must have *contributor* or higher workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Limitations \n- This API is supported only for the empty folder. Deleting a folder with any items or nested folders inside is not allowed, and returns a FolderNotEmpty error response.\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": [ "Folders" ], "operationId": "Folders_DeleteFolder", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "folderId", "description": "The folder ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* FolderNotFound - The requested folder was not found in the workspace.\n\n* FolderNotEmpty - The requested folder was not empty.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete a folder example": { "$ref": "./examples/platform/DeleteFolder.json" } } } }, "/workspaces/{workspaceId}/folders/{folderId}/move": { "post": { "summary": "Moves the specified folder within the same workspace.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n\n## Permissions\n\n The caller must have *contributor* or higher role on the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Folders" ], "operationId": "Folders_MoveFolder", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "folderId", "description": "The folder ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "moveFolderRequest", "description": "Move folder request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/MoveFolderRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "../common/definitions.json#/definitions/Folder" } }, "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* FolderNotFound - Could not find the requested folder.\n\n* FolderDepthOutOfRange - The parent folder has achieved max depth, can't create a new subfolder.\n\n* InfiniteFolderHierarchyLoop - The folder can't be moved into any of its descents.\n\n* FolderDisplayNameAlreadyInUse - Folder display name is already used.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Move a folder into another folder example": { "$ref": "./examples/platform/MoveFolderIntoAnotherFolder.json" }, "Move a folder with the workspace as the destination example": { "$ref": "./examples/platform/MoveFolderWithWorkspaceAsDestination.json" } } } }, "/workspaces/{workspaceId}/items/bulkMove": { "post": { "summary": "Moves multiple items to a folder.", "description": "Moves multiple items to a folder. Child items are moved with their parent items. You can't move a child item without its parent item.\n\n## Permissions\n\n The caller must have *contributor* or higher role on the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.ReadWrite.All\n\n## Limitations\n\n A single request can't contain more than 50 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) | Yes |\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_BulkMoveItems", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "bulkMoveItemsRequest", "description": "Bulk move items request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/BulkMoveItemsRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully and all the items are moved.", "schema": { "$ref": "./definitions/platform.json#/definitions/MovedItems" } }, "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* FolderNotFound - Could not find the requested folder.\n\n* CannotMoveChildOnly - Child item can't be moved without its parent item.\n\n If request failed, no items are moved.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Bulk move items into folder example": { "$ref": "./examples/platform/BulkMoveItemsIntoFolder.json" }, "Bulk move items with the workspace as the destination example": { "$ref": "./examples/platform/BulkMoveItemsWithWorkspaceAsDestination.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/move": { "post": { "summary": "Moves the specified item to a folder.", "description": "Moves the specified item to a folder within the same workspace. Child items are moved with their parent item. You can't move a child item without its parent item.\n\n## Permissions\n\n The caller must have *contributor* or higher role on the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_MoveItem", "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": "moveItemRequest", "description": "Move item request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/MoveItemRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/MovedItems" } }, "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* FolderNotFound - Could not find the requested folder.\n\n* CannotMoveChildOnly - Child item can't be moved without its parent item.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Move an item into folder example": { "$ref": "./examples/platform/MoveItemIntoFolder.json" }, "Move an item with the workspace as the destination example": { "$ref": "./examples/platform/MoveItemWithWorkspaceAsDestination.json" } } } }, "/workspaces/{workspaceId}/managedPrivateEndpoints": { "get": { "summary": "Returns a list of managed private endpoints associated with the specified workspace.", "description": "## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "ManagedPrivateEndpoints" ], "operationId": "ManagedPrivateEndpoints_ListWorkspaceManagedPrivateEndpoints", "x-ms-pageable": { "nextLinkName": "continuationUri" }, "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/managedPrivateEndpoint.json#/definitions/ManagedPrivateEndpoints" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List managed private endpoints in workspace example": { "$ref": "./examples/managedPrivateEndpoint/ListManagedPrivateEndpointsInWorkspace.json" }, "List managed private endpoints in workspace with continuation example": { "$ref": "./examples/managedPrivateEndpoint/ListManagedPrivateEndpointsInWorkspaceWithContinuation.json" } } }, "post": { "summary": "Creates a managed private endpoint in the specified workspace.", "description": "## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes \n\nWorkspace.ReadWrite.All.\n\n## Limitations \n- To create managed private endpoint the workspace must be on a supported Fabric capacity. For more information see: [Microsoft Fabric license types](/fabric/enterprise/licenses#microsoft-fabric-license-types).\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": [ "ManagedPrivateEndpoints" ], "operationId": "ManagedPrivateEndpoints_CreateWorkspaceManagedPrivateEndpoint", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "createManagedPrivateEndpointRequest", "description": "Create managed private endpoint request payload.", "schema": { "$ref": "./definitions/managedPrivateEndpoint.json#/definitions/CreateManagedPrivateEndpointRequest" }, "required": true } ], "responses": { "201": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/managedPrivateEndpoint.json#/definitions/ManagedPrivateEndpoint" }, "headers": { "Location": { "description": "The URL of the created managed private endpoint.", "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create a managed private endpoint example": { "$ref": "./examples/managedPrivateEndpoint/CreateManagedPrivateEndpoint.json" } } } }, "/workspaces/{workspaceId}/managedPrivateEndpoints/{managedPrivateEndpointId}": { "delete": { "summary": "Deletes the specified managed private endpoint.", "description": "## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes \n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "ManagedPrivateEndpoints" ], "operationId": "ManagedPrivateEndpoints_DeleteWorkspaceManagedPrivateEndpoint", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "managedPrivateEndpointId", "description": "The managed private endpoint ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete managed private endpoint example": { "$ref": "./examples/managedPrivateEndpoint/DeleteManagedPrivateEndpoint.json" } } }, "get": { "summary": "Gets the specified managed private endpoint.", "description": "## Permissions\n\nThe caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes \n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "ManagedPrivateEndpoints" ], "operationId": "ManagedPrivateEndpoints_GetWorkspaceManagedPrivateEndpoint", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "managedPrivateEndpointId", "description": "The managed private endpoint ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/managedPrivateEndpoint.json#/definitions/ManagedPrivateEndpoint" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get managed private endpoint example": { "$ref": "./examples/managedPrivateEndpoint/GetManagedPrivateEndpoint.json" } } } }, "/connections": { "get": { "summary": "Returns a list of on-premises, virtual network and cloud connections the user has permission for.", "description": "## Permissions\n\nThe caller must have permission for the connection.\n\n## Required Delegated Scopes\n\nConnection.Read.All or Connection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "operationId": "Connections_ListConnections", "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/connections.json#/definitions/ListConnectionsResponse" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/connections/ListConnections.json" } } }, "post": { "summary": "Creates a connection.", "description": "To encrypt credentials, see [Configure credentials programmatically](/power-bi/developer/embedded/configure-credentials).\n\n## Permissions\n\n- If creating a gateway connection, the caller must have permissions for the gateway..\n- Service Principals must have permission granted by Fabric administrator. For more information see: [Service principals can create workspaces, connections, and deployment pipelines](/fabric/admin/service-admin-portal-developer#service-principals-can-create-workspaces-connections-and-deployment-pipelines). \n\n## Required Delegated Scopes\n\nConnection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_CreateConnection", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "createConnectionRequest", "description": "The request payload for creating the connection", "schema": { "$ref": "./definitions/connections.json#/definitions/CreateConnectionRequest" }, "required": true } ], "responses": { "201": { "description": "Created. The operation was successful.", "schema": { "$ref": "./definitions/connections.json#/definitions/Connection" } }, "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* DuplicateConnectionName - The connection name is already in use.\n\n* InvalidConnectionDetails - The ConnectionDetails input provided is not valid.\n\n* InvalidCredentialDetails - The CredentialDetails input provided is not valid.\n\n* IncorrectCredentials - Failed to establish connection using the Credentials input.\n\n* CreateGatewayConnectionFailed - Failed to create gateway connection.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "On-premises gateway example": { "$ref": "./examples/connections/CreateOnPremisesGatewayConnection.json" }, "Virtual network gateway example": { "$ref": "./examples/connections/CreateVirtualNetworkGatewayConnection.json" }, "Streaming virtual network gateway example": { "$ref": "./examples/connections/CreateStreamingVirtualNetworkGatewayConnection.json" }, "Cloud example": { "$ref": "./examples/connections/CreateCloudConnection.json" }, "Cloud example with KeyPair credentials": { "$ref": "./examples/connections/CreateCloudConnectionWithKeyPair.json" } } } }, "/connections/{connectionId}": { "get": { "summary": "Get connection by ID.", "description": "## Permissions\n\nThe caller must have permission for the connection or admin permission for the gateway of the connection.\n\n## Required Delegated Scopes\n\nConnection.Read.All or Connection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_GetConnection", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "connectionId", "description": "The ID of the connection.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/connections.json#/definitions/Connection" } }, "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* EntityNotFound - The requested resource could not be found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/connections/GetConnection.json" } } }, "patch": { "summary": "Updates connection by ID.", "description": "To encrypt credentials, see [Configure credentials programmatically](/power-bi/developer/embedded/configure-credentials).\n\n## Permissions\n\nThe caller must have permission for the connection or admin permission for the gateway of the connection.\n\n## Required Delegated Scopes\n\nConnection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_UpdateConnection", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "connectionId", "description": "The ID of the connection.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateConnectionRequest", "description": "The request payload for updating the connection", "schema": { "$ref": "./definitions/connections.json#/definitions/UpdateConnectionRequest" }, "required": true } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/connections.json#/definitions/Connection" } }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageConnection - The caller has insufficient permissions to manage this connection.\n\n* DuplicateConnectionName - The connection name is already in use.\n\n* IncorrectCredentials - Failed to establish connection using the Credentials input.\n\n* UpdateGatewayConnectionFailed - Failed to update gateway connection.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "On-premises gateway example": { "$ref": "./examples/connections/UpdateOnPremisesGatewayConnection.json" }, "On-premises gateway (personal mode) example": { "$ref": "./examples/connections/UpdateOnPremisesGatewayPersonalConnection.json" }, "Virtual network gateway example": { "$ref": "./examples/connections/UpdateVirtualNetworkGatewayConnection.json" }, "Streaming virtual network gateway example": { "$ref": "./examples/connections/UpdateStreamingVirtualNetworkGatewayConnection.json" }, "Shareable cloud example": { "$ref": "./examples/connections/UpdateShareableCloudConnection.json" }, "Personal cloud example": { "$ref": "./examples/connections/UpdatePersonalCloudConnection.json" } } }, "delete": { "summary": "Delete connection by ID.", "description": "## Permissions\n\nThe caller must have owner permission for the connection or admin permission for the gateway of the connection.\n\n## Required Delegated Scopes\n\nConnection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_DeleteConnection", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "connectionId", "description": "The ID of the connection.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageConnection - The caller has insufficient permissions to manage this connection.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/connections/DeleteConnection.json" } } } }, "/connections/{connectionId}/testConnection": { "post": { "summary": "Tests the connection.", "description": "Provides the status of the specified connection.\n\nThis API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n[!NOTE]\n> Connections that route through a streaming virtual network gateway (`connectivityType` = `StreamingVirtualNetworkGateway`) are not supported.\n\n## Permissions\n\nPermission to read the connection, or admin permission for the gateway that hosts the connection.\n\n## Required Delegated Scopes \n\nConnection.Read.All or Connection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_TestConnection", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "connectionId", "description": "The ID of the connection.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "OK. The Status of the connection has been fetched.", "schema": { "$ref": "./definitions/connections.json#/definitions/ConnectionStatusResponse" } }, "202": { "description": "Request accepted, fetching the status of the connection.", "headers": { "Location": { "description": "The URL of the operation status which tracks the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageConnection - The caller has insufficient permissions to manage this connection.\n\n* IncorrectCredentials - Failed to establish connection using the Credentials input.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "OnlineExample": { "$ref": "./examples/connections/TestConnection.json" }, "OfflineExample": { "$ref": "./examples/connections/TestConnectionOffline.json" } } } }, "/connections/supportedConnectionTypes": { "get": { "summary": "Lists supported connection types.", "description": "## Permissions\n\nIf called with gatewayId, the caller must have permission for the gateway.\n\n## Required Delegated Scopes\n\nConnection.Read.All or Connection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "operationId": "Connections_ListSupportedConnectionTypes", "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "gatewayId", "description": "The gateway to list supported connection types. If omitted, the API lists supported connection types in the cloud.", "type": "string", "required": false, "format": "uuid" }, { "in": "query", "name": "showAllCreationMethods", "description": "Setting that controls whether to show all creation methods. True - Show all creation methods, False - Show only recommended creation methods.", "type": "boolean", "required": false }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/connections.json#/definitions/ListSupportedConnectionTypesResponse" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/connections/ListSupportedConnectionTypes.json" } } } }, "/gateways": { "get": { "summary": "Returns a list of all gateways the user has permission for, including on-premises, on-premises (personal mode), and virtual network gateways.", "description": "## Permissions\n\nThe caller must have permissions for the gateway.\n\n## Required Delegated Scopes\n\nGateway.Read.All or Gateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "operationId": "Gateways_ListGateways", "produces": [ "application/json" ], "parameters": [ { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/gateways.json#/definitions/ListGatewaysResponse" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/ListGateways.json" } } }, "post": { "summary": "Creates a gateway.", "description": "## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_CreateGateway", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "createGatewayRequest", "description": "The request payload for creating the gateway", "schema": { "$ref": "./definitions/gateways.json#/definitions/CreateGatewayRequest" }, "required": true } ], "responses": { "201": { "description": "Created. The operation was successful.", "schema": { "$ref": "./definitions/gateways.json#/definitions/Gateway" } }, "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* DuplicateGatewayName - The gateway name is already in use.\n\n* InvalidCapacityState - The Capacity's state is invalid.\n\n* InvalidCapacitySKU - The Capacity's SKU is invalid.\n\n* PowerPlatformVirtualNetworkSubnetNotConfiguredForDelegation - The Power Platform virtual network is not configured for delegation.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Virtual network gateway example": { "$ref": "./examples/gateways/CreateVirtualNetworkGateway.json" }, "Virtual network gateway example with invalid parameters": { "$ref": "./examples/gateways/CreateVirtualNetworkGatewayInvalidBothParameters.json" }, "Streaming virtual network gateway example": { "$ref": "./examples/gateways/CreateStreamingVirtualNetworkGateway.json" } } } }, "/gateways/{gatewayId}": { "get": { "summary": "Get gateway by ID.", "description": "## Permissions\n\nThe caller must have permissions for the gateway.\n\n## Required Delegated Scopes\n\nGateway.Read.All or Gateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_GetGateway", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/gateways.json#/definitions/Gateway" } }, "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* EntityNotFound - The requested resource could not be found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/GetGateway.json" } } }, "patch": { "summary": "Updates gateway by ID.", "description": "## Permissions\n\nThe caller must have admin permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_UpdateGateway", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateGatewayRequest", "description": "The request payload for updating the gateway", "schema": { "$ref": "./definitions/gateways.json#/definitions/UpdateGatewayRequest" }, "required": true } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/gateways.json#/definitions/Gateway" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "On-premises gateway example": { "$ref": "./examples/gateways/UpdateOnPremisesGateway.json" }, "Virtual network gateway example": { "$ref": "./examples/gateways/UpdateVirtualNetworkGateway.json" }, "Streaming virtual network gateway example": { "$ref": "./examples/gateways/UpdateStreamingVirtualNetworkGateway.json" } } }, "delete": { "summary": "Delete gateway by ID.", "description": "## Permissions\n\nThe caller must have admin permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_DeleteGateway", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageGateway - The caller has insufficient permissions to manage this gateway.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/DeleteGateway.json" } } } }, "/gateways/{gatewayId}/members": { "get": { "summary": "Lists gateway members of an OnPremisesGateway by ID.", "description": "## Permissions\n\n- The caller must have permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.Read.All or Gateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_ListGatewayMembers", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/gateways.json#/definitions/ListGatewayMembersResponse" } }, "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* EntityNotFound - The requested resource could not be found.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/ListGatewayMembers.json" } } } }, "/gateways/{gatewayId}/members/{gatewayMemberId}": { "patch": { "summary": "Updates gateway member of an OnPremisesGateway by ID.", "description": "## Permissions\n\nThe caller must have admin permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_UpdateGatewayMember", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "gatewayMemberId", "description": "The ID of the gateway member.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "updateGatewayMemberRequest", "description": "The request payload for updating the gateway member", "schema": { "$ref": "./definitions/gateways.json#/definitions/UpdateGatewayMemberRequest" }, "required": true } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/gateways.json#/definitions/OnPremisesGatewayMember" } }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageGateway - The caller has insufficient permissions to manage this gateway.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/UpdateGatewayMember.json" } } }, "delete": { "summary": "Delete gateway member of an OnPremisesGateway by ID.", "description": "## Permissions\n\nThe caller must have admin permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_DeleteGatewayMember", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "gatewayMemberId", "description": "The ID of the gateway member.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageGateway - The caller has insufficient permissions to manage this gateway.\n\n* CannotDeletePrimaryGatewayIfClusterMemberExists - Cannot delete the primary gateway while another member gateway exists.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/DeleteGatewayMember.json" } } } }, "/gateways/{gatewayId}/checkStatus": { "post": { "summary": "Checks the status of the specified gateway.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\nThe caller must have permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.Read.All or Gateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_CheckGatewayStatus", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gateways.json#/definitions/GatewayStatusResponse" } }, "202": { "description": "Request accepted, status check is in progress.", "headers": { "Location": { "description": "The URL of the operation status. Can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID. Can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageGateway - The caller has insufficient permissions to manage this gateway.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Virtual network gateway example": { "$ref": "./examples/gateways/CheckGatewayStatusVnet.json" }, "On premise data gateway example when gateway cluster is online but one of the gateway member encounters an error": { "$ref": "./examples/gateways/CheckGatewayStatusOnPremise.json" } } } }, "/gateways/{gatewayId}/members/{gatewayMemberId}/checkStatus": { "post": { "summary": "Checks the status of the specified gateway member.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\nThe caller must have permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.Read.All or Gateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_CheckGatewayMemberStatus", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "gatewayMemberId", "description": "The ID of the gateway member.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gateways.json#/definitions/GatewayStatusResponse" } }, "202": { "description": "Request accepted, status check is in progress.", "headers": { "Location": { "description": "The URL of the operation status. Can be used to track the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID. Can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageGateway - The caller has insufficient permissions to manage this gateway.\n\n* UnsupportedGatewayType - This operation is not supported for the vnet gateway type.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Online gateway member example": { "$ref": "./examples/gateways/CheckGatewayMemberStatus.json" }, "Offline gateway member example": { "$ref": "./examples/gateways/CheckGatewayMemberStatusOffline.json" } } } }, "/gateways/{gatewayId}/restart": { "post": { "summary": "Restarts the specified gateway.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\nThe caller must have admin permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.ReadWrite.All\n\n## Limitations\n\nThis operation is only supported for vnet data gateway.\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": [ "Gateways" ], "operationId": "Gateways_RestartGateway", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Successfully restarted." }, "202": { "description": "Accepted. Gateway restart operation has been initiated.", "headers": { "Location": { "description": "The URI to call to fetch status on the execution job.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID. Can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "Number of seconds to wait before next call to fetch the status." } } }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageGateway - The caller has insufficient permissions to manage this gateway.\n\n* UnsupportedGatewayType - This operation is not supported for on-premise data gateways.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/RestartGateway.json" } } } }, "/gateways/{gatewayId}/roleAssignments": { "get": { "summary": "Returns a list of gateway role assignments.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\n- The caller must have *ConnectionCreator* or higher role on the gateway.\n\n## Required Delegated Scopes\n\nGateway.Read.All or Gateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_ListGatewayRoleAssignments", "produces": [ "application/json" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/gateways.json#/definitions/GatewayRoleAssignments" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List gateway role assignment example": { "$ref": "./examples/gateways/ListGatewayRoleAssignments.json" }, "List gateway role assignment with continuation example": { "$ref": "./examples/gateways/ListGatewayRoleAssignmentsWithContinuation.json" } } }, "post": { "summary": "Adds a gateway role assignment.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Service Principal Profiles are not supported for Gateway Role Assignments. \n\n## Permissions\n\n- The caller must have *ConnectionCreatorWithResharing* or higher role on the gateway.\n\n## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_AddGatewayRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "addGatewayRoleAssignmentRequest", "description": "The request payload for adding a gateway role assignment", "schema": { "$ref": "./definitions/gateways.json#/definitions/AddGatewayRoleAssignmentRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created.", "headers": { "Location": { "description": "The URL of the newly created gateway role assignment.", "type": "string" } }, "schema": { "$ref": "./definitions/gateways.json#/definitions/GatewayRoleAssignment" } }, "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* BadRequest - Missing required parameter.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Add gateway role assignment example": { "$ref": "./examples/gateways/AddGatewayRoleAssignment.json" } } } }, "/gateways/{gatewayId}/roleAssignments/{gatewayRoleAssignmentId}": { "get": { "summary": "Returns the principal's role assignment for the gateway.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must have *ConnectionCreator* or higher role on the gateway.\n\n## Required Delegated Scopes\n\nGateway.Read.All or Gateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_GetGatewayRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "gatewayId", "in": "path", "required": true, "description": "The ID of the gateway", "type": "string", "format": "uuid" }, { "in": "path", "name": "gatewayRoleAssignmentId", "description": "The ID of the gateway role assignment.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gateways.json#/definitions/GatewayRoleAssignment" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/GetGatewayRoleAssignment.json" } } }, "patch": { "summary": "Updates the principal's role assignment for the gateway.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must have *Admin* role on the gateway.\n\n## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_UpdateGatewayRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "gatewayId", "in": "path", "description": "The ID of the gateway", "required": true, "type": "string", "format": "uuid" }, { "name": "gatewayRoleAssignmentId", "in": "path", "description": "The ID of the role assignment", "required": true, "type": "string", "format": "uuid" }, { "in": "body", "name": "updateGatewayRoleAssignmentRequest", "description": "Update gateway role assignment request payload.", "schema": { "$ref": "./definitions/gateways.json#/definitions/UpdateGatewayRoleAssignmentRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/gateways.json#/definitions/GatewayRoleAssignment" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update gateway role assignment example": { "$ref": "./examples/gateways/UpdateGatewayRoleAssignment.json" } } }, "delete": { "summary": "Delete the specified role assignment for the gateway.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must have *Admin* role on the gateway.\n\n## Required Delegated Scopes\n\nGateway.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) | Yes |\n\n## Interface", "tags": [ "Gateways" ], "operationId": "Gateways_DeleteGatewayRoleAssignment", "produces": [ "application/json" ], "parameters": [ { "name": "gatewayId", "in": "path", "description": "The ID of the gateway", "required": true, "type": "string", "format": "uuid" }, { "name": "gatewayRoleAssignmentId", "in": "path", "description": "The ID of the role assignment", "required": true, "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete gateway role assignment example": { "$ref": "./examples/gateways/DeleteGatewayRoleAssignment.json" } } } }, "/gateways/{gatewayId}/shutdown": { "post": { "summary": "Shuts down the specified gateway.", "description": "This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\nThe caller must have admin permission for the gateway.\n\n## Required Delegated Scopes\n\nGateway.ReadWrite.All\n\n## Limitations\n\nThis operation is only supported for vnet data gateway.\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": [ "Gateways" ], "operationId": "Gateways_ShutdownGateway", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "gatewayId", "description": "The ID of the gateway.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Successfully shutdown." }, "202": { "description": "Accepted. Gateway shutdown operation has been initiated.", "headers": { "Location": { "description": "The URI to call to fetch status on the execution job.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID. Can be used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "Number of seconds to wait before next call to fetch the status." } } }, "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* EntityNotFound - The requested resource could not be found.\n\n* InsufficientPermissionsToManageGateway - The caller has insufficient permissions to manage this gateway.\n\n* UnsupportedGatewayType - This operation is not supported for on-premise data gateways.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/gateways/ShutdownGateway.json" } } } }, "/connections/{connectionId}/roleAssignments": { "get": { "summary": "Returns a list of connection role assignments.", "description": "This API supports [pagination](/rest/api/fabric/articles/pagination).\n\n## Permissions\n\n- The caller must have *User* or higher role on the connection or be an *Admin* on the gateway that's bound to the connection.\n\n## Required Delegated Scopes\n\nConnection.Read.All or Connection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_ListConnectionRoleAssignments", "produces": [ "application/json" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "parameters": [ { "in": "path", "name": "connectionId", "description": "The ID of the connection.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "./definitions/connections.json#/definitions/ConnectionRoleAssignments" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List connection role assignment example": { "$ref": "./examples/connections/ListConnectionRoleAssignments.json" }, "List connection role assignment with continuation example": { "$ref": "./examples/connections/ListConnectionRoleAssignmentsWithContinuation.json" } } }, "post": { "summary": "Adds a connection role assignment.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must have *UserWithReshare* or higher role on the connection or be an *Admin* on the gateway that's bound to the connection.\n\n## Required Delegated Scopes\n\nConnection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_AddConnectionRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "connectionId", "description": "The ID of the connection.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "addConnectionRoleAssignmentRequest", "description": "The request payload for adding a connection role assignment", "schema": { "$ref": "./definitions/connections.json#/definitions/AddConnectionRoleAssignmentRequest" }, "required": true } ], "responses": { "201": { "description": "Successfully created.", "headers": { "Location": { "description": "The URL of the newly created connection role assignment.", "type": "string" } }, "schema": { "$ref": "./definitions/connections.json#/definitions/ConnectionRoleAssignment" } }, "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* BadRequest - Missing required parameter.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Add connection role assignment example": { "$ref": "./examples/connections/AddConnectionRoleAssignment.json" } } } }, "/connections/{connectionId}/roleAssignments/{connectionRoleAssignmentId}": { "get": { "summary": "Returns the principal's role assignment for the connection.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must have *User* or higher role on the connection or be an *Admin* on the gateway that's bound to the connection.\n\n## Required Delegated Scopes\n\nConnection.Read.All or Connection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_GetConnectionRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "connectionId", "in": "path", "required": true, "description": "The ID of the connection", "type": "string", "format": "uuid" }, { "name": "connectionRoleAssignmentId", "in": "path", "required": true, "description": "The ID of the connection role assignment", "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/connections.json#/definitions/ConnectionRoleAssignment" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example": { "$ref": "./examples/connections/GetConnectionRoleAssignment.json" } } }, "patch": { "summary": "Updates the principal's role assignment for the connection.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must be an *Owner* of the connection or be an *Admin* on the gateway that's bound to the connection.\n\n## Required Delegated Scopes\n\nConnection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_UpdateConnectionRoleAssignment", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "connectionId", "in": "path", "description": "The ID of the connection", "required": true, "type": "string", "format": "uuid" }, { "name": "connectionRoleAssignmentId", "in": "path", "description": "The ID of the role assignment", "required": true, "type": "string", "format": "uuid" }, { "in": "body", "name": "updateConnectionRoleAssignmentRequest", "description": "Update connection role assignment request payload.", "schema": { "$ref": "./definitions/connections.json#/definitions/UpdateConnectionRoleAssignmentRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/connections.json#/definitions/ConnectionRoleAssignment" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update connection role assignment example": { "$ref": "./examples/connections/UpdateConnectionRoleAssignment.json" } } }, "delete": { "summary": "Delete the specified role assignment for the connection.", "description": "To get the principal user ID required for request body, see [Find the user ID](/partner-center/find-ids-and-domain-names#find-the-user-object-id).\n\n## Permissions\n\n- The caller must be an *Owner* of the connection or be an *Admin* on the gateway that's bound to the connection.\n\n## Required Delegated Scopes\n\nConnection.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) | Yes |\n\n## Interface", "tags": [ "Connections" ], "operationId": "Connections_DeleteConnectionRoleAssignment", "produces": [ "application/json" ], "parameters": [ { "name": "connectionId", "in": "path", "description": "The ID of the connection", "required": true, "type": "string", "format": "uuid" }, { "name": "connectionRoleAssignmentId", "in": "path", "description": "The ID of the role assignment", "required": true, "type": "string", "format": "uuid" } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete connection role assignment example": { "$ref": "./examples/connections/DeleteConnectionRoleAssignment.json" } } } }, "/workspaces/{workspaceId}/networking/communicationPolicy": { "get": { "summary": "Returns the networking communication policy for the specified workspace.", "description": "## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetNetworkCommunicationPolicy", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceNetworkingCommunicationPolicy" }, "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace networking communication policy example": { "$ref": "./examples/platform/GetWorkspaceNetworkingCommunicationPolicy.json" } } }, "put": { "summary": "Sets the networking communication policy for the specified workspace.", "description": "This API uses the PUT method and overwrites all settings. If only a partial policy is provided in the request body, remaining settings are set to the default values. Always call the Get Network Communication Policy operation first and provide the full policy in the request body.\n\n> [!NOTE]\n> If `defaultAction` is omitted from the request body, it defaults to `Allow`, which may unintentionally open inbound and outbound network access. Always explicitly specify `defaultAction` in every PUT request body.\n\n## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_SetNetworkCommunicationPolicy", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "SetWorkspaceNetworkingCommunicationPolicy", "description": "Set workspace networking communication policy request payload.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceNetworkingCommunicationPolicy" }, "required": true }, { "in": "header", "name": "If-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag matches the provided ETag.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Set workspace networking communication policy example": { "$ref": "./examples/platform/SetWorkspaceNetworkingCommunicationPolicy.json" } } } }, "/workspaces/{workspaceId}/networking/communicationPolicy/outbound/connections": { "get": { "summary": "Returns the cloud connection rules for the workspace enabled with Outbound Access Protection (OAP).", "description": "This API helps workspace administrators view the effective outbound network communication policies enforced for cloud connections. Cloud connection rules are returned and applied only if the workspace’s network communication policy has `outbound.publicAccessRules.defaultAction` set to `Deny`. If OAP is not enabled for the workspace, the API fails because outbound connections are not being restricted.\n\n## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetOutboundCloudConnectionRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "Unique identifier of the workspace whose outbound rules are being queried.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceOutboundConnections" }, "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace outbound access protection cloud connection rule for example": { "$ref": "./examples/platform/GetWorkspaceOutboundConnections.json" } } }, "put": { "summary": "Sets the outbound access protection cloud connection rules for the workspace.", "description": "This API enables workspace administrators to set a collection of outbound network communication rules that control which cloud connection types and, where applicable, their external endpoints/workspaces are allowed from the workspace.\n\n> [!NOTE]\n> Outbound access protection rules are only enforced if the workspace's network communication policy has `outbound.publicAccessRules.defaultAction` set to `Deny`. If OAP is not enabled on the workspace, the API fails because outbound connections are not restricted.\n\n> [!NOTE]\n> This API uses the PUT method and overwrites all outbound access connections for the workspace. Always call the Get Outbound Cloud Connection Rules operation first and provide the full policy in the request body.\n\n> [!NOTE]\n> If `defaultAction` is omitted from the request body, it defaults to `Allow`, which may unintentionally permit all outbound cloud connections. Always explicitly specify `defaultAction` in every PUT request body.\n\n## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_SetOutboundCloudConnectionRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "Unique identifier of the workspace to update.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "WorkspaceOutboundConnections", "description": "Set outbound access protection cloud connection rules for the workspace request payload.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceOutboundConnections" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Set workspace outbound access protection cloud connection rule for example": { "$ref": "./examples/platform/SetWorkspaceOutboundConnections.json" } } } }, "/workspaces/{workspaceId}/networking/communicationPolicy/outbound/gateways": { "get": { "summary": "Returns the gateway rules for the workspace enabled with Outbound Access Protection (OAP).", "description": "This API helps workspace administrators view the effective outbound network communication policies enforced for on-premises and VNet data gateways. Gateway rules are returned and applied only if the workspace’s network communication policy has `outbound.publicAccessRules.defaultAction` set to `Deny`. If OAP is not enabled for the workspace, the API fails because outbound connections are not being restricted.\n\n## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetOutboundGatewayRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "Unique identifier of the workspace whose outbound rules are being queried.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceOutboundGateways" }, "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace outbound access protection gateway rule for example": { "$ref": "./examples/platform/GetWorkspaceOutboundGateways.json" } } }, "put": { "summary": "Sets the gateway rules for the workspace enabled with Outbound Access Protection (OAP).", "description": "This API enables workspace administrators to define, replace, or override the set of outbound network communication policies that control which on-prem /Vnet Data Gateways are to be allowed from the current workspace.\n\n> [!NOTE]\n> Outbound access protection rules are only enforced if the workspace’s network communication policy has `outbound.publicAccessRules.defaultAction` set to `Deny`. If OAP is not enabled on the workspace, the API fails because outbound connections are not restricted.\n\n> [!NOTE]\n> This API uses the PUT method and overwrites all outbound access gateways for the workspace. Always call the Get Gateway Rules operation first and provide the full policy in the request body.\n\n> [!NOTE]\n> If `defaultAction` is omitted from the request body, it defaults to `Allow`, which may unintentionally permit all outbound gateway connections. Always explicitly specify `defaultAction` in every PUT request body.\n\n## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_SetOutboundGatewayRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "Unique identifier of the workspace to update.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "WorkspaceOutboundGateways", "description": "Set outbound access protection gateway rules for the workspace request payload.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceOutboundGateways" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Set workspace outbound access protection gateway rule for example": { "$ref": "./examples/platform/SetWorkspaceOutboundGateways.json" } } } }, "/workspaces/{workspaceId}/networking/communicationPolicy/outbound/git": { "get": { "summary": "Returns Git Outbound policy for the specified workspace.", "description": "In cases the workspace restricts outbound policy, a workspace admin needs to allow the use of Git integration on the specified workspace. \n\n## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetGitOutboundPolicy", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/NetworkRules" }, "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace networking communication policy example": { "$ref": "./examples/platform/GetWorkspaceGitNetworkingCommunicationPolicy.json" } } }, "put": { "summary": "Sets Git Outbound policy for the specified workspace, when Outbound policy is set to 'Deny'.", "description": "This API uses the PUT method and overwrites all settings. When the workspace restricts outbound policy, a workspace admin needs to allow the use of Git integration on the specified workspace. When there's no outbound restriction on the workspace, changing this property will fail and will not impact the Git integration setting. Always call the Get Git Outbound Policy operation first and provide the full policy in the request body.\n\n> [!NOTE]\n> If `defaultAction` is omitted from the request body, it defaults to `Allow`, which may unintentionally permit Git integration when outbound access should be restricted. Always explicitly specify `defaultAction` in every PUT request body.\n\n## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_SetGitOutboundPolicy", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "SetWorkspaceGitNetworkingCommunicationPolicy", "description": "Set workspace Git outbound policy request payload.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/NetworkRules" }, "required": true }, { "in": "header", "name": "If-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag matches the provided ETag.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Set workspace networking communication policy example": { "$ref": "./examples/platform/SetWorkspacegitNetworkingCommunicationPolicy.json" } } } }, "/workspaces/{workspaceId}/networking/communicationPolicy/inbound/azureResources": { "get": { "summary": "Returns the inbound Azure resource instance rules for a workspace. This API is designed to help workspace administrators view the effective inbound Azure resource instance rules in their workspace settings. This feature is currently in preview.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use. \n\n## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetInboundAzureResourceRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceInboundAzureResourceRules" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace resource instance example": { "$ref": "./examples/platform/GetWorkspaceInboundAzureResourceInstanceRules.json" } } }, "put": { "summary": "Sets the inbound Azure resource instance rules for a workspace. This API enables workspace administrators to set inbound Azure resource instance rules that control which Azure resource instances are in the allowed list for a workspace. This feature is currently in preview.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use. \n\n## Permissions\n\n The caller must have *admin* workspace role. \n\n## Required Delegated Scopes\n\n Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_SetInboundAzureResourceRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "WorkspaceInboundAzureResourceRules", "description": "The request payload containing the list of inbound Azure resource instance rules to set for the workspace.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceInboundAzureResourceRules" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Set workspace resource instance example": { "$ref": "./examples/platform/SetWorkspaceInboundAzureResourceInstanceRules.json" } } } }, "/workspaces/{workspaceId}/networking/communicationPolicy/inbound/externalDataShares": { "get": { "summary": "Returns the inbound External Data Shares bypass policy for a workspace. This API is designed to help workspace administrators view whether External Data Shares traffic is allowed to bypass inbound networking restrictions.", "description": "## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetInboundExternalDataSharesPolicy", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceInboundExternalDataSharesPolicy" }, "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace inbound External Data Shares policy example": { "$ref": "./examples/platform/GetWorkspaceInboundExternalDataSharesPolicy.json" } } }, "put": { "summary": "Sets the inbound External Data Shares bypass policy for a workspace. This API enables workspace administrators to allow or deny External Data Shares traffic to bypass inbound networking restrictions. This feature is currently in preview.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use. \n\n## Permissions\n\n The caller must have *admin* workspace role. \n\n## Required Delegated Scopes\n\n Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_SetInboundExternalDataSharesPolicy", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "WorkspaceInboundExternalDataSharesPolicy", "description": "The request payload for setting the inbound External Data Shares bypass policy for the workspace.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/WorkspaceInboundExternalDataSharesPolicy" }, "required": true }, { "in": "header", "name": "If-Match", "description": "An ETag value. The ETag must be specified in quotes. If provided, the call will succeed only if the resource's ETag matches the provided ETag.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Request completed successfully.", "headers": { "ETag": { "type": "string" } } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Set workspace inbound External Data Shares policy example": { "$ref": "./examples/platform/SetWorkspaceInboundExternalDataSharesPolicy.json" } } } }, "/catalog/search": { "post": { "summary": "The Catalog Search API enables programmatic discovery of OneLake catalog entries across workspaces. It supports cross-workspace search over catalog metadata and returns results filtered to entries the calling principal is authorized to access. Search results include stable identifiers that are intended to be used with complementary Fabric APIs to retrieve additional details or perform supported actions.", "description": "> [!NOTE]\n> Catalog search is currently in Preview ([learn more](/fabric/fundamentals/preview)).\n\nA CatalogEntry is a discoverable metadata representation of a Microsoft Fabric entity, currently scoped to workspace items. Catalog entries are intended for metadata discovery only and do not grant access to underlying data or item content.\n\n## Permissions\n\nThe caller can only discover catalog entries for workspaces and items that the caller is authorized to access.\n\n## Required Delegated Scopes\n\nCatalog.Read.All\n\n## Limitations\n\n* `continuationToken` must not be combined with `search` or `filter`. The token already carries those values from the originating request.\n\n* `pageSize` must be between 1 and 1000.\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": [ "Catalog" ], "operationId": "Catalog_Search", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "catalogQueryRequest", "description": "The search query request payload.", "schema": { "$ref": "./definitions/catalog.json#/definitions/CatalogQueryRequest" }, "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "./definitions/catalog.json#/definitions/CatalogQueryResponse" } }, "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* InvalidRequest - The request body was not provided, or is otherwise invalid.\n\n* InvalidSearch - The `search` value could not be parsed.\n\n* InvalidFilter - The `filter` could not be parsed, or a filter value is malformed or exceeds its maximum length.\n\n* InvalidFilterProperty - The `filter` references a property that is not supported.\n\n* FilterTooManyValues - The `filter` specifies more values for a property than that property allows.\n\n* FilterNotSupported - Filtering is not supported.\n\n* ConflictingFilterParameters - `continuationToken` was combined with `search` or `filter`.\n\n* InvalidPageSize - `pageSize` is outside the range 1 to 1000.\n\n* InvalidContinuationToken - The `continuationToken` is not valid.\n\n* ContinuationTokenTooLong - The `continuationToken` exceeds the maximum length.\n\n* TypeNotFound - The `filter` references an item type that does not exist.\n\n* Unauthorized - Missing or invalid authentication\n\n* Internal Server Error - Unexpected service failure.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Search example": { "$ref": "./examples/platform/CatalogSearch.json" }, "Search within a workspace example": { "$ref": "./examples/platform/CatalogSearchByWorkspace.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/identities/default/assign?beta=true": { "post": { "summary": "Associates the default identity with an item.", "description": "> [!NOTE]\n> This API is part of a Beta release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n**When calling this API, callers must specify `true` as the value for the query parameter `beta`.**\n\n This API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n This API is supported for a number of item types, find the supported item types and information about their definition structure in [Item management overview](/rest/api/fabric/articles/item-management/item-management-overview).\n\n## Permissions\n\n The caller must have *read and write* permissions for the item.\n\n## Required Delegated Scopes\n\n For item APIs use these scope types: \n- Generic scope: Item.ReadWrite.All \n- Specific scope: *itemType*.ReadWrite.All (for example: Notebook.ReadWrite.All) \n\n for more information about scopes, see: [scopes article](/rest/api/fabric/articles/scopes).\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) | When the item type in the call is supported. Check the corresponding API for the item type you're calling, to see if your call is supported.|\n\n## Interface", "tags": [ "Items" ], "operationId": "Items_Associate_Identity_(beta)", "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "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": "updateItemIdentityRequest", "description": "Associate identity request payload.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateItemIdentityRequest" }, "required": true }, { "name": "beta", "in": "query", "required": true, "type": "boolean", "description": "This required parameter must be set to `true` to access this API, which is currently in beta." } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/UpdateItemIdentityResponse" } }, "202": { "description": "Request accepted, identity association is in progress.", "headers": { "Location": { "type": "string", "description": "The URL to the job instance resource" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request" } } }, "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* InvalidRequest - Invalid association request.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Associate identity example": { "$ref": "./examples/platform/UpdateItemIdentity.json" } } } }, "/workspaces/{workspaceId}/encryption": { "get": { "summary": "Gets the workspace Customer-Managed Key (CMK) encryption settings.", "description": "Returns the CMK encryption settings and status for the specified workspace. \n\n## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetWorkspaceEncryption", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully. If encryption is in progress, the response includes a `Retry-After` header.\n\n---\n**Headers:**\n\n**Retry-After** `integer` - Indicates the number of seconds after which the client can retry to get the encryption status.", "schema": { "$ref": "./definitions/workspaceCmk.json#/definitions/WorkspaceEncryptionDetail" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get workspace CMK encryption active example": { "$ref": "./examples/platform/GetWorkspaceEncryptionSuccessResult.json" }, "Get workspace CMK encryption in progress example": { "$ref": "./examples/platform/GetWorkspaceEncryptionInprogressSuccessResult.json" } } } }, "/workspaces/{workspaceId}/encryption/assign": { "post": { "summary": "Assigns a Customer-Managed Key (CMK) to a workspace.", "description": "Enables CMK encryption for the workspace or rotates the encryption key for the workspace. \n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes \n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_AssignWorkspaceEncryption", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "assignWorkspaceEncryptionRequest", "description": "Assign workspace encryption request payload.", "schema": { "$ref": "./definitions/workspaceCmk.json#/definitions/AssignWorkspaceEncryptionRequest" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Assign workspace CMK encryption example": { "$ref": "./examples/platform/AssignWorkspaceEncryption.json" } } } }, "/workspaces/{workspaceId}/encryption/reset": { "post": { "summary": "Resets the workspace encryption by removing the Customer-Managed Key (CMK) encryption configuration.", "description": "After reset, the workspace data remains encrypted using Fabric's default Microsoft-managed keys. \n\n## Permissions\n\nThe caller must have an *admin* workspace role.\n\n## Required Delegated Scopes \n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_ResetWorkspaceEncryption", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Reset workspace CMK encryption example": { "$ref": "./examples/platform/ResetWorkspaceEncryption.json" } } } }, "/workspaces/{workspaceId}/networking/communicationPolicy/inbound/firewall": { "get": { "summary": "Returns the IP firewall rules for the workspace. This API is designed to help workspace administrators view the effective IP firewall rules. This feature is currently in preview.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use. \n\n## Permissions\n\n The caller must have *viewer* or higher workspace role. \n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_GetFirewallRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "Unique identifier of the workspace whose firewall rules are being queried.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully.\n\n---\n**Headers:**\n\n**ETag** `string` - The current ETag of the firewall configuration. Use this value in a subsequent PUT call's `If-Match` header to apply optimistic concurrency control.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/InboundFirewallConfiguration" } }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example for getting workspace firewall rules": { "$ref": "./examples/platform/GetFirewallRules.json" } } }, "put": { "summary": "Sets the IP firewall rules for the workspace. This API enables workspace administrators to set IP firewall rules that control which IP addresses are to be allowed to connect to the workspace. This feature is currently in preview.", "description": "> [!NOTE]\n> This API is part of a Preview release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use. \n\n> [!NOTE]\n> Firewall rules are only enforced if the workspace’s network communication policy has inbound.publicAccessRules.defaultAction set to Deny. If public access is not blocked on workspace, API calls to this workspace will not be restricted. \n\n> [!NOTE]\n> This API uses the PUT method and will overwrite all IP firewall rules for the workspace. Always run Get first and provide all IP firewall rules in the request body.\n\n## Permissions\n\nThe caller must have *admin* workspace role.\n\n## Required Delegated Scopes \n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "Workspaces" ], "operationId": "Workspaces_SetFirewallRules", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "Unique identifier of the workspace to update.", "type": "string", "format": "uuid", "required": true }, { "in": "body", "name": "FirewallRulesRequest", "description": "Request payload for setting IP firewall rules for the workspace.", "schema": { "$ref": "./definitions/workspaceNetworkingPolicy.json#/definitions/InboundFirewallConfiguration" }, "required": true } ], "responses": { "200": { "description": "Request completed successfully and has no content in the response body.\n\n---\n**Headers:**\n\n**ETag** `string` - The new ETag of the firewall configuration after the update. Use this value in a subsequent PUT call's `If-Match` header to apply optimistic concurrency control." }, "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* UnknownError - An error occurred.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Example for setting workspace firewall rules": { "$ref": "./examples/platform/SetFirewallRules.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/relations/downstream?beta=true": { "get": { "tags": [ "Items" ], "summary": "Gets downstream relations for an item.", "description": "> [!NOTE]\n> This API is part of a Beta release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n**When calling this API, callers must specify `true` as the value for the query parameter `beta`.**\n\nReturns all items that are downstream of the specified item, including the relation edges and referenced workspaces.\n\n## Permissions\n\nThe caller must have *read* permissions for the item.\n\n## Required Delegated Scopes\n\nItem.Read.All or Item.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) | Yes |\n\n## Interface", "operationId": "Items_Get_Downstream_Relations_(beta)", "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": "query", "name": "beta", "description": "This required parameter must be set to `true` to access this API, which is currently in beta.", "type": "boolean", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/relations.json#/definitions/RelationsResponse" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get downstream relations example": { "$ref": "./examples/platform/GetDownstreamRelations.json" } } } }, "/workspaces/{workspaceId}/items/{itemId}/relations/upstream?beta=true": { "get": { "tags": [ "Items" ], "summary": "Gets upstream relations for an item.", "description": "> [!NOTE]\n> This API is part of a Beta release and is provided for evaluation and development purposes only. It may change based on feedback and is not recommended for production use.\n**When calling this API, callers must specify `true` as the value for the query parameter `beta`.**\n\nReturns all items that are upstream of the specified item, including the relation edges and referenced workspaces.\n\n## Permissions\n\nThe caller must have *read* permissions for the item.\n\n## Required Delegated Scopes\n\nItem.Read.All or Item.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) | Yes |\n\n## Interface", "operationId": "Items_Get_Upstream_Relations_(beta)", "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": "query", "name": "beta", "description": "This required parameter must be set to `true` to access this API, which is currently in beta.", "type": "boolean", "required": true } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/relations.json#/definitions/RelationsResponse" } }, "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* InsufficientPrivileges - The caller does not have sufficient permissions to access the item.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get upstream relations example": { "$ref": "./examples/platform/GetUpstreamRelations.json" } } } }, "/workspaces/{workspaceId}/recoverableItems": { "get": { "summary": "Lists recoverable items in a workspace.", "description": "## Permissions\n\nThe caller must have a *viewer* workspace role.\n\n## Required Delegated Scopes\n\nWorkspace.Read.All or Workspace.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) | Yes |\n\n## Interface", "tags": [ "RecoverableItems" ], "operationId": "RecoverableItems_ListRecoverableItems", "produces": [ "application/json" ], "x-ms-pageable": { "nextLinkName": "continuationUri" }, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "query", "name": "type", "description": "The recoverable item's type.", "type": "string", "required": false }, { "in": "query", "name": "continuationToken", "description": "A token for retrieving the next page of results.", "type": "string", "required": false }, { "in": "query", "name": "recoverableByMe", "description": "When set to true, only items that can be immediately recovered by the caller are returned.", "type": "boolean", "required": false } ], "responses": { "200": { "description": "Request completed successfully.", "schema": { "$ref": "./definitions/platform.json#/definitions/RecoverableItems" } }, "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* InsufficientWorkspaceRole - User doesn't have sufficient workspace role.\n\n* InvalidItemType - Item type is invalid.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List recoverable items in workspace example": { "$ref": "./examples/platform/ListRecoverableItemsInWorkspace.json" }, "List recoverable items in workspace by type query parameter example": { "$ref": "./examples/platform/ListRecoverableItemsInWorkspaceByType.json" }, "List recoverable items in workspace with continuation example": { "$ref": "./examples/platform/ListRecoverableItemsInWorkspaceWithContinuation.json" } } } }, "/workspaces/{workspaceId}/recoverableItems/{itemId}": { "delete": { "summary": "Permanently deletes a recoverable item.", "description": "## Permissions\n\nThe caller must have *write* permissions for the workspace.\n\n## Required Delegated Scopes\n\nWorkspace.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) | Yes |\n\n## Interface", "tags": [ "RecoverableItems" ], "operationId": "RecoverableItems_DeleteRecoverableItem", "produces": [ "application/json" ], "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The recoverable item ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Request completed successfully." }, "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* InsufficientWorkspaceRole - User doesn't have sufficient workspace role.\n\n* ItemNotFound - The requested item was not found.\n\n* InvalidTargetItemStateForSoftDeletion - The item is in invalid states for soft deletion.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete recoverable item example": { "$ref": "./examples/platform/DeleteRecoverableItem.json" } } } }, "/workspaces/{workspaceId}/recoverableItems/{itemId}/recover": { "post": { "summary": "Recovers a soft-deleted item in the specified workspace.", "description": "Recovers a soft-deleted Fabric item to the Active provision state in the specified workspace. If the item has child items, all of them are recovered as well.\n\nThis API supports [long running operations (LRO)](/rest/api/fabric/articles/long-running-operation).\n\n## Permissions\n\nThe caller must have one of the workspace roles: *Admin*, *Member* or *Contributor*.\n\n## Required Delegated Scopes\n\nFor item APIs use these scope types: \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 article](/rest/api/fabric/articles/scopes).\n\n> [!NOTE]\n> - This operation supports partial success. If, during the recovery operation, a child item fails to be recovered, that child item and all its descendants won't be recovered and will stay in the soft-deleted state. The other items that are not descendants of this failed child item will be recovered regardless.\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) | When the item type in the call is supported. Check the corresponding API for the item type you're calling, to see if your call is supported. For example, semantic models are supported. |\n\n## Interface", "tags": [ "RecoverableItems" ], "operationId": "RecoverableItems_RecoverItem", "consumes": [ "application/json" ], "produces": [ "application/json" ], "x-ms-fabric-sdk-long-running-operation": true, "parameters": [ { "in": "path", "name": "workspaceId", "description": "The workspace ID.", "type": "string", "format": "uuid", "required": true }, { "in": "path", "name": "itemId", "description": "The recoverable item ID.", "type": "string", "format": "uuid", "required": true } ], "responses": { "200": { "description": "Successfully recovered the soft-deleted item", "schema": { "$ref": "./definitions/platform.json#/definitions/Items" } }, "202": { "description": "Request accepted, item recovery in progress", "headers": { "Location": { "description": "The URL of the operation status which tracks the operation state.", "type": "string" }, "x-ms-operation-id": { "description": "The operation ID used with long running operations (LRO) APIs to track the operation state and get the result.", "type": "string", "format": "uuid" }, "Retry-After": { "type": "integer", "description": "The number of seconds to wait before retrying the request." } } }, "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* InsufficientWorkspaceRole - User doesn't have sufficient workspace role.\n\n* ItemNotFound - The requested item was not found.\n\n* UnsupportedCapacitySKU - The item is not supported on the current capacity of the workspace.\n\n* WorkspaceHasNoCapacityAssigned - The workspace has no capacity assigned.\n\n* ItemDisplayNameAlreadyInUse - Item display name is already in use.\n\n* InvalidParentItemStateForRecovery - The item's parent item is not in Active state.\n\n* InvalidTargetItemStateForRecovery - The item's state is not valid for recovery.", "schema": { "$ref": "../common/definitions.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Recover a soft-deleted item example": { "$ref": "./examples/platform/RecoverItem.json" } } } } }, "responses": {}, "security": [], "tags": [] }