Microsoft Purview · Arazzo Workflow

Microsoft Purview Onboard an Entity into a Collection

Version 1.0.0

Create a Data Map entity, confirm it, move it into a collection, and classify it.

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

Provider

microsoft-purview

Workflows

onboard-entity-to-collection
Create a Data Map entity, file it into a collection, and classify it.
Creates or updates an entity, resolves its GUID, moves it into a collection, and applies a classification to it.
4 steps inputs: apiVersion, authorization, classificationTypeName, collectionId, entity outputs: collectionId, entityGuid
1
createEntity
Create or update the entity in the Data Map.
2
getEntity
Read the entity back by its assigned GUID to confirm it exists.
3
moveToCollection
Move the entity into the target collection.
4
classify
Apply the requested classification to the onboarded entity.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Microsoft Purview Onboard an Entity into a Collection
  summary: Create a Data Map entity, confirm it, move it into a collection, and classify it.
  description: >-
    A governance onboarding flow against the Purview Data Map API. The workflow
    creates or updates an entity, reads it back by its assigned GUID, moves that
    entity into a target collection, and applies a classification to it. Every
    step spells out its request inline — including the inline OAuth2 bearer
    token and the required api-version query parameter — so the flow can be read
    and executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: entityApi
  url: ../openapi/microsoft-purview-entity-api-openapi.yml
  type: openapi
workflows:
- workflowId: onboard-entity-to-collection
  summary: Create a Data Map entity, file it into a collection, and classify it.
  description: >-
    Creates or updates an entity, resolves its GUID, moves it into a collection,
    and applies a classification to it.
  inputs:
    type: object
    required:
    - authorization
    - entity
    - collectionId
    - classificationTypeName
    properties:
      authorization:
        type: string
        description: The OAuth2 bearer token value, e.g. "Bearer eyJ0...".
      apiVersion:
        type: string
        description: The Data Map API version.
        default: '2023-09-01'
      entity:
        type: object
        description: The AtlasEntity object to create or update (typeName + attributes).
      collectionId:
        type: string
        description: The target collection identifier to move the entity into.
      classificationTypeName:
        type: string
        description: The classification type name to apply, e.g. "MICROSOFT.PERSONAL.EMAIL".
  steps:
  - stepId: createEntity
    description: Create or update the entity in the Data Map.
    operationId: createOrUpdateEntity
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: api-version
      in: query
      value: $inputs.apiVersion
    requestBody:
      contentType: application/json
      payload:
        entity: $inputs.entity
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      guidAssignments: $response.body#/guidAssignments
  - stepId: getEntity
    description: Read the 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
    - name: api-version
      in: query
      value: $inputs.apiVersion
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      entityGuid: $response.body#/entity/guid
  - stepId: moveToCollection
    description: Move the entity into the target collection.
    operationId: moveEntitiesToCollection
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: collectionId
      in: path
      value: $inputs.collectionId
    - name: api-version
      in: query
      value: $inputs.apiVersion
    requestBody:
      contentType: application/json
      payload:
        entityGuids:
        - $steps.getEntity.outputs.entityGuid
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      mutatedEntities: $response.body#/mutatedEntities
  - stepId: classify
    description: Apply the requested classification to the onboarded entity.
    operationId: addEntityClassifications
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: guid
      in: path
      value: $steps.getEntity.outputs.entityGuid
    - name: api-version
      in: query
      value: $inputs.apiVersion
    requestBody:
      contentType: application/json
      payload:
      - typeName: $inputs.classificationTypeName
        entityGuid: $steps.getEntity.outputs.entityGuid
        propagate: true
    successCriteria:
    - condition: $statusCode == 204
  outputs:
    entityGuid: $steps.getEntity.outputs.entityGuid
    collectionId: $inputs.collectionId

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-onboard-entity-to-collection-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.