How marcooesterlin/microsoft-purview-unified-catalog works
This repository is a collection of independent Microsoft Purview tools, with Microsoft_Purview_Utility as its main end-to-end product. In that web app, governance users browse catalog assets, select them, and invoke curation or governance operations; the Flask API delegates selected operations to backend modules that interact with Purview. Other documented branches cover metadata export, schema and product retrieval, privacy labeling, cleanup, and inactive-contact audits. Connections from the web UI to the API are shown as unverified because the sampled excerpts do not expose that request wiring; README-described capabilities are retained without asserting unsampled call paths.
Main entry points: api_server.py Flask API · App.tsx Web App Router · BrowseAssets.tsx Asset Browsing · SelectedAssetsContext.tsx Asset Selection
Components 28
Unified Catalog App
- Web App Router
Microsoft_Purview_Utility/src/App.tsx - Asset Browsing
Microsoft_Purview_Utility/src/pages/BrowseAssets.tsx - Type Browsing
Microsoft_Purview_Utility/src/pages/BrowseByAssetType.tsx - Catalog Dashboard
Microsoft_Purview_Utility/src/pages/Dashboard.tsx - Data Products
Microsoft_Purview_Utility/src/pages/DataProducts.tsx - Asset Selection
Microsoft_Purview_Utility/src/contexts/SelectedAssetsContext.tsx
Curation Operations
- Curation Portal
Microsoft_Purview_Utility/src/pages/Curate.tsx - Selected Asset Panel
Microsoft_Purview_Utility/src/components/catalog/SelectedAssetsPanel.tsx - Flask API
Microsoft_Purview_Utility/backend/api_server.py - Asset Catalog Data
Microsoft_Purview_Utility/backend/get_data.py - Tag Management
Microsoft_Purview_Utility/backend/add_tag.py - Classification Curation
Microsoft_Purview_Utility/backend/add_classificiation.py - Auto Classification
Microsoft_Purview_Utility/backend/auto_classify.py - Lineage Discovery
Microsoft_Purview_Utility/backend/create_lineage.py - Glossary Sync
Microsoft_Purview_Utility/backend/sync_glossary.py - Owner and Expert Lookup
Microsoft_Purview_Utility/backend/get_entra_id_users.py
Catalog Utilities
- PII Label Automation
Microsoft_Purview_Add_PII_Label/Add_PII_Label.py - Collection Asset Cleanup
Microsoft_Purview_Delete_Assets_Collection/delete_assets.py - Inactive Contact Audit
Microsoft_Purview_Get_Inactive_Experts_Owners/get_inactive_owner_experts.py
Metadata Extraction
- Asset Schema Retrieval
Microsoft_Purview_Get_Asset_Schema/Get_Data_Asset_Schema.py - Product Retrieval
Microsoft_Purview_Get_Data_Product/get_data_product.py - Azure SQL Export
Microsoft_Purview_Datamap_extractor_Public/datamap_extract_azure_sql.py - Fabric Export
Microsoft_Purview_Datamap_extractor_Public/datamap_extract_fabric_notebook.py
External Services
- Microsoft Purview
- Microsoft Graph
- Azure SQL Database
- Fabric Lakehouse
Other components
- Governance User
Connections 36
- Governance User → Web App Router: uses
README.md - Web App Router → Catalog Dashboard: routes to
Microsoft_Purview_Utility/src/App.tsx - Web App Router → Asset Browsing: routes to
Microsoft_Purview_Utility/src/App.tsx - Web App Router → Type Browsing: routes to
Microsoft_Purview_Utility/src/App.tsx - Web App Router → Data Products: routes to
Microsoft_Purview_Utility/src/App.tsx - Web App Router → Curation Portal: routes to
Microsoft_Purview_Utility/src/App.tsx - Web App Router → Selected Asset Panel: renders
Microsoft_Purview_Utility/src/App.tsx - Web App Router → Asset Selection: provides state
Microsoft_Purview_Utility/src/App.tsx - Asset Browsing → Asset Selection: selects assets
- Type Browsing → Asset Selection: selects assets
- Curation Portal → Flask API: requests operations
- Asset Browsing → Flask API: requests catalog data
- Flask API → Asset Catalog Data: reads catalog
Microsoft_Purview_Utility/backend/api_server.py - Flask API → Tag Management: calls
Microsoft_Purview_Utility/backend/api_server.py - Flask API → Classification Curation: dispatches
Microsoft_Purview_Utility/backend/api_server.py - Flask API → Auto Classification: calls
Microsoft_Purview_Utility/backend/api_server.py - Flask API → Lineage Discovery: dispatches
Microsoft_Purview_Utility/backend/api_server.py - Flask API → Glossary Sync: dispatches
Microsoft_Purview_Utility/backend/api_server.py - Flask API → Owner and Expert Lookup: dispatches
Microsoft_Purview_Utility/backend/api_server.py - Asset Catalog Data → Microsoft Purview: queries
README.md - Tag Management → Microsoft Purview: updates tags
README.md - Classification Curation → Microsoft Purview: updates classifications
README.md - Auto Classification → Microsoft Purview: classifies assets
README.md - Lineage Discovery → Microsoft Purview: manages lineage
README.md - Glossary Sync → Microsoft Purview: syncs terms
README.md - Owner and Expert Lookup → Microsoft Graph: looks up users
README.md - PII Label Automation → Microsoft Purview: labels assets
README.md - Collection Asset Cleanup → Microsoft Purview: deletes assets
README.md - Inactive Contact Audit → Microsoft Purview: checks contacts
README.md - Inactive Contact Audit → Microsoft Graph: checks identities
README.md - Asset Schema Retrieval → Microsoft Purview: retrieves schema
README.md - Product Retrieval → Microsoft Purview: retrieves products
README.md - Azure SQL Export → Microsoft Purview: extracts metadata
README.md - Azure SQL Export → Azure SQL Database: exports metadata
README.md - Fabric Export → Microsoft Purview: extracts metadata
README.md - Fabric Export → Fabric Lakehouse: exports metadata
README.md