Microsoft Fabric Catalog API

The Catalog API from Microsoft Fabric — 1 operation(s) for catalog.

Operations 1

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/microsoft-fabric:microsoft-fabric-catalog-api"
All apis
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.

Get an API 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 Specification

microsoft-fabric-catalog-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Microsoft Fabric Platform REST Catalog 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: Catalog
paths:
  /catalog/search:
    post:
      summary: The Catalog Search API enables programmatic discovery of OneLake catalog…
      description: '> [!NOTE]

        > Catalog search is currently in Preview (learn more).


        A 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.


        ## Permissions


        The caller can only discover catalog entries for workspaces and items that the caller is authorized to access.


        ## Required Delegated Scopes


        Catalog.Read.All


        ## Limitations


        * `continuationToken` must not be combined with `search` or `filter`. The token already carries those values from the originating request.


        * `pageSize` must be between 1 and 1000.


        ## 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:
      - Catalog
      operationId: Catalog_Search
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/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:
              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:


            * InvalidRequest - The request body was not provided, or is otherwise invalid.


            * InvalidSearch - The `search` value could not be parsed.


            * InvalidFilter - The `filter` could not be parsed, or a filter value is malformed or exceeds its maximum length.


            * InvalidFilterProperty - The `filter` references a property that is not supported.


            * FilterTooManyValues - The `filter` specifies more values for a property than that property allows.


            * FilterNotSupported - Filtering is not supported.


            * ConflictingFilterParameters - `continuationToken` was combined with `search` or `filter`.


            * InvalidPageSize - `pageSize` is outside the range 1 to 1000.


            * InvalidContinuationToken - The `continuationToken` is not valid.


            * ContinuationTokenTooLong - The `continuationToken` exceeds the maximum length.


            * TypeNotFound - The `filter` references an item type that does not exist.


            * Unauthorized - Missing or invalid authentication


            * Internal Server Error - Unexpected service failure.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogQueryRequest'
        description: The search query request payload.
        required: true
components:
  schemas:
    CatalogQueryRequest:
      type: object
      description: The query for the search.
      properties:
        search:
          description: 'The text query for the search. This field supports searching across the display name, workspace display name, and description of the CatalogEntry.


            The search field supports the following operators:


            * " " : Double quotes; match the enclosed words as an exact phrase.


            * \* : Asterisk; wildcard matching zero or more characters.


            * ? : Question mark; wildcard matching a single character.


            * && : Double ampersands; require every search term.


            * Underscores are treated as part of a search term; no escaping is required.


            * Other special characters are ignored and treated as separators.'
          type: string
        pageSize:
          type: integer
          description: The page size that needs to be returned. Page size must be between 1 and 1000. Defaults to 50.
        filter:
          type: string
          description: 'The filter for the search. Additional filter options may be added over time.


            The filter parameter supports the following properties:


            * **Type**: Matches the `type` property of a catalog entry, for example `Report`, `Lakehouse`, or `Workspace`. A single filter can specify at most 500 Type values, each up to 50 characters long.


            * **WorkspaceId**: The ID of the workspace that contains the catalog entry. A single filter can specify at most 12 WorkspaceId values, each of which must be a valid GUID.


            The filter parameter supports the following operators to refine results:


            * eq: Equals; matches the exact value.


            * ne: Not Equals; excludes the specified value.


            * and: Logical AND; matches only if all of the conditions are true.


            * or: Logical OR; matches if any of the conditions are true.


            * ( ): Parentheses; groups expressions to define logical hierarchy.'
        continuationToken:
          type: string
          description: 'The continuation token for the next page.


            A continuation token carries forward the `search`, `filter`, and `pageSize` of the original request, so it may be sent on its own. It must not be combined with `search` or `filter` in the same request; doing so returns an error.'
    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
    CatalogQueryResponse:
      type: object
      description: The results of the search.
      required:
      - value
      properties:
        continuationToken:
          type: string
          description: The continuationToken for the next page.
        value:
          type: array
          description: A list of catalog entries
          items:
            $ref: '#/components/schemas/CatalogEntry'
    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
    CatalogEntry:
      type: object
      description: A catalog entry object.
      required:
      - id
      - catalogEntryType
      - displayName
      discriminator:
        propertyName: catalogEntryType
      properties:
        id:
          type: string
          description: The objectId of the catalog entry.
          format: uuid
        displayName:
          type: string
          description: The catalog entry display name.
        catalogEntryType:
          $ref: '#/components/schemas/CatalogEntryType'
        description:
          type: string
          description: The description of the catalog entry.
    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
    CatalogEntryType:
      type: string
      description: The catalog entry type. Additional `CatalogEntryType` types may be added over time.
      enum:
      - FabricItem
      - Workspace
      x-ms-enum:
        name: CatalogEntryType
        modelAsString: true
        values:
        - value: FabricItem
          description: A Fabric item catalog entry type.
        - value: Workspace
          description: A workspace catalog entry type.
    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