Microsoft Fabric One Lake Lifecycle Policy API
The OneLakeLifecyclePolicy API from Microsoft Fabric — 2 operation(s) for onelakelifecyclepolicy.
The OneLakeLifecyclePolicy API from Microsoft Fabric — 2 operation(s) for onelakelifecyclepolicy.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/microsoft-fabric:microsoft-fabric-onelakelifecyclepolicy-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Microsoft Fabric Platform REST One Lake Lifecycle Policy API
version: v1
x-source: 'https://github.com/microsoft/fabric-rest-api-specs (bundled from openapi/_original/fabric-rest-api-specs: platform/swagger.json)'
servers:
- url: https://api.fabric.microsoft.com/v1
security: []
tags:
- name: OneLakeLifecyclePolicy
paths:
/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.
OneLake supports the same lifecycle policy structure as Azure Storage lifecycle management, with the following exceptions:
- OneLake does not support the TierToArchive action.
- OneLake does not support the Delete action.
- OneLake does not support the blobIndexMatch filter.
For more information, see OneLake lifecycle management.
## Permissions
The caller must have an *admin* workspace role.
## Required Delegated Scopes
OneLake.Read.All or OneLake.ReadWrite.All
## Microsoft Entra supported identities
This API supports the Microsoft identities listed in this section.
| Identity | Support |
|-|-|
| User | Yes |
| Service principal and Managed identities | Yes |
## Interface'
tags:
- OneLakeLifecyclePolicy
operationId: OneLakeLifecyclePolicy_ExportPolicy
x-ms-fabric-sdk-long-running-operation: false
parameters:
- in: path
name: workspaceId
description: The workspace ID.
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/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:
description: The number of seconds to wait before retrying the request.
schema:
type: integer
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
default:
description: 'Common error codes:
* UnknownError - An error occurred.
* EntityNotFound - Workspace not found.
* UserNotAuthorizedForWorkspaceLifecycle - User is not authorized for the workspace.
* LifecycleNotAllowedForMyWorkspace - Lifecycle settings are not allowed on My Workspace.
* PolicyNotFound - No lifecycle policy exists for this workspace.'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/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.
In 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.
OneLake supports the same lifecycle policy structure as Azure Storage lifecycle management, with the following exceptions:
- OneLake does not support the TierToArchive action.
- OneLake does not support the Delete action.
- OneLake does not support the blobIndexMatch filter.
For more information, see OneLake lifecycle management.
## Permissions
The caller must have an *admin* workspace role.
## Required Delegated Scopes
OneLake.ReadWrite.All
## Limitations
- The `tierToArchive` action is not supported.
- The `delete` action is not supported.
- The `blobIndexMatch` filter is not supported.
## Microsoft Entra supported identities
This API supports the Microsoft identities listed in this section.
| Identity | Support |
|-|-|
| User | Yes |
| Service principal and Managed identities | Yes |
## Interface'
tags:
- OneLakeLifecyclePolicy
operationId: OneLakeLifecyclePolicy_ImportPolicy
x-ms-fabric-sdk-long-running-operation: false
parameters:
- in: path
name: workspaceId
description: The workspace ID.
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/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:
description: The number of seconds to wait before retrying the request.
schema:
type: integer
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
default:
description: 'Common error codes:
* UnknownError - An error occurred.
* EntityNotFound - Workspace not found.
* InvalidInput - Invalid request body.
* UserNotAuthorizedForWorkspaceLifecycle - User is not authorized for the workspace.
* LifecycleNotAllowedForMyWorkspace - Lifecycle settings are not allowed on My Workspace.'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ImportOneLakeWorkspaceLifecyclePolicyRequest'
description: The lifecycle policy to import.
required: true
components:
schemas:
ErrorResponse:
description: The error response.
required:
- message
- errorCode
allOf:
- $ref: '#/components/schemas/ErrorResponseDetails'
properties:
requestId:
type: string
format: uuid
description: ID of the request associated with the error.
readOnly: true
moreDetails:
description: List of additional error details.
type: array
items:
$ref: '#/components/schemas/ErrorResponseDetails'
readOnly: true
isRetriable:
type: boolean
description: When true, the request can be retried. Use the `Retry-After` response header to determine the delay, if available.
readOnly: true
OneLakeWorkspaceLifecyclePolicyResponse:
description: The OneLake workspace lifecycle policy response. Contains the policy properties and type as returned by [Azure Storage lifecycle management](https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview).
type: object
required:
- properties
properties:
properties:
description: The lifecycle policy properties. The structure follows [Azure Storage lifecycle management](https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview).
type: object
type:
description: The ARM resource type, as returned by [Azure Storage lifecycle management](https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview).
type: string
ErrorResponseDetails:
description: The error response details.
type: object
required:
- message
- errorCode
properties:
errorCode:
type: string
description: A specific identifier that provides information about an error condition, allowing for standardized communication between our service and its users.
readOnly: true
message:
type: string
description: A human readable representation of the error.
readOnly: true
relatedResource:
$ref: '#/components/schemas/ErrorRelatedResource'
parameters:
description: Structured parameters providing additional machine-readable context about the error.
type: array
items:
$ref: '#/components/schemas/ErrorParameter'
readOnly: true
ImportOneLakeWorkspaceLifecyclePolicyRequest:
description: Request for importing a OneLake workspace lifecycle policy. The request body follows the same structure as [Azure Storage lifecycle management](https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview). Send an empty rules array to delete the existing policy.
type: object
required:
- properties
properties:
properties:
description: The lifecycle policy properties. The structure follows [Azure Storage lifecycle management](https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview).
type: object
ErrorRelatedResource:
description: The error related resource details object.
type: object
required:
- resourceId
- resourceType
properties:
resourceId:
type: string
description: The resource ID that's involved in the error.
readOnly: true
resourceType:
type: string
description: The type of the resource that's involved in the error.
readOnly: true
ErrorParameter:
description: A structured parameter providing additional machine-readable context about an error.
type: object
properties:
name:
type: string
description: The parameter identifier.
readOnly: true
value:
type: string
description: The parameter value.
readOnly: true
message:
type: string
description: A human-readable description of the parameter's meaning.
readOnly: true