Microsoft Purview · Arazzo Workflow

Microsoft Purview Classify a Data Asset Entity

Version 1.0.0

Register a catalog entity, confirm it, then apply and verify a classification.

1 workflow 1 source API 1 provider
View Spec View on GitHub ComplianceData CatalogData ClassificationData GovernanceData Loss PreventionInformation ProtectionArazzoWorkflows

Provider

microsoft-purview

Workflows

classify-entity
Create a catalog entity and apply a classification to it.
Creates or updates an Atlas entity, resolves the GUID the service assigned, adds a classification to that entity, and confirms the classification is present on the entity.
4 steps inputs: authorization, classificationTypeName, entity outputs: classifications, entityGuid
1
createEntity
Create or update the data asset entity. Purview matches on the supplied guid or on unique attributes such as qualifiedName.
2
getEntity
Read the created entity back by its assigned GUID to confirm it exists.
3
addClassification
Attach the requested classification to the entity, propagating it according to the classification's defaults.
4
listClassifications
List the classifications on the entity to verify the new one is present.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Microsoft Purview Classify a Data Asset Entity
  summary: Register a catalog entity, confirm it, then apply and verify a classification.
  description: >-
    A foundational data governance flow in the Purview Atlas catalog. The
    workflow creates or updates a data asset entity, reads it back by its
    assigned GUID to confirm it landed, attaches one or more classifications to
    the entity, and then lists the classifications to verify they were applied.
    Every step spells out its request inline — including the inline OAuth2
    bearer token — so the flow can be read and executed without opening the
    underlying OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-610.10
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-610.10
      capability_name: Data Governance Management
      spec: microsoft-purview-entity-api-openapi.yml
      confidence: 0.7
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: entityApi
  url: ../openapi/microsoft-purview-entity-api-openapi.yml
  type: openapi
workflows:
- workflowId: classify-entity
  summary: Create a catalog entity and apply a classification to it.
  description: >-
    Creates or updates an Atlas entity, resolves the GUID the service assigned,
    adds a classification to that entity, and confirms the classification is
    present on the entity.
  inputs:
    type: object
    required:
    - authorization
    - entity
    - classificationTypeName
    properties:
      authorization:
        type: string
        description: The OAuth2 bearer token value, e.g. "Bearer eyJ0...".
      entity:
        type: object
        description: The AtlasEntity object to create or update (typeName + attributes).
      classificationTypeName:
        type: string
        description: The classification type name to apply, e.g. "MICROSOFT.PERSONAL.EMAIL".
  steps:
  - stepId: createEntity
    description: >-
      Create or update the data asset entity. Purview matches on the supplied
      guid or on unique attributes such as qualifiedName.
    operationId: createOrUpdateEntity
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    requestBody:
      contentType: application/json
      payload:
        entity: $inputs.entity
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      guidAssignments: $response.body#/guidAssignments
  - stepId: getEntity
    description: Read the created entity back by its assigned GUID to confirm it exists.
    operationId: getEntityByGuid
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: guid
      in: path
      value: $steps.createEntity.outputs.guidAssignments
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      entityGuid: $response.body#/entity/guid
      typeName: $response.body#/entity/typeName
  - stepId: addClassification
    description: >-
      Attach the requested classification to the entity, propagating it
      according to the classification's defaults.
    operationId: addEntityClassifications
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: guid
      in: path
      value: $steps.getEntity.outputs.entityGuid
    requestBody:
      contentType: application/json
      payload:
      - typeName: $inputs.classificationTypeName
        entityGuid: $steps.getEntity.outputs.entityGuid
        propagate: true
    successCriteria:
    - condition: $statusCode == 204
  - stepId: listClassifications
    description: List the classifications on the entity to verify the new one is present.
    operationId: listEntityClassifications
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: guid
      in: path
      value: $steps.getEntity.outputs.entityGuid
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      classifications: $response.body#/list
  outputs:
    entityGuid: $steps.getEntity.outputs.entityGuid
    classifications: $steps.listClassifications.outputs.classifications

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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 workflow
curl "https://apis.io/api/v1/arazzo/microsoft-purview-classify-entity-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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.