pvw-cli 1.2.5__tar.gz → 1.3.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pvw-cli might be problematic. Click here for more details.

Files changed (89) hide show
  1. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/PKG-INFO +268 -32
  2. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/README.md +262 -26
  3. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/__init__.py +1 -1
  4. pvw_cli-1.3.4/purviewcli/cli/lineage.py +1103 -0
  5. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/unified_catalog.py +511 -1
  6. pvw_cli-1.3.4/purviewcli/client/__init__.py +21 -0
  7. pvw_cli-1.3.4/purviewcli/client/_account.py +1877 -0
  8. pvw_cli-1.3.4/purviewcli/client/_collections.py +1761 -0
  9. pvw_cli-1.3.4/purviewcli/client/_domain.py +414 -0
  10. pvw_cli-1.3.4/purviewcli/client/_entity.py +3545 -0
  11. pvw_cli-1.3.4/purviewcli/client/_glossary.py +3233 -0
  12. pvw_cli-1.3.4/purviewcli/client/_health.py +501 -0
  13. pvw_cli-1.3.4/purviewcli/client/_insight.py +2873 -0
  14. pvw_cli-1.3.4/purviewcli/client/_lineage.py +2138 -0
  15. pvw_cli-1.3.4/purviewcli/client/_management.py +2202 -0
  16. pvw_cli-1.3.4/purviewcli/client/_policystore.py +2915 -0
  17. pvw_cli-1.3.4/purviewcli/client/_relationship.py +1351 -0
  18. pvw_cli-1.3.4/purviewcli/client/_scan.py +2607 -0
  19. pvw_cli-1.3.4/purviewcli/client/_search.py +1472 -0
  20. pvw_cli-1.3.4/purviewcli/client/_types.py +2708 -0
  21. pvw_cli-1.3.4/purviewcli/client/_unified_catalog.py +5112 -0
  22. pvw_cli-1.3.4/purviewcli/client/_workflow.py +2734 -0
  23. pvw_cli-1.3.4/purviewcli/client/api_client.py +1295 -0
  24. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/endpoints.py +6 -0
  25. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/sync_client.py +47 -9
  26. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pvw_cli.egg-info/PKG-INFO +268 -32
  27. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pvw_cli.egg-info/SOURCES.txt +4 -1
  28. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pyproject.toml +8 -8
  29. pvw_cli-1.3.4/tests/test_connection.py +107 -0
  30. pvw_cli-1.3.4/tests/test_entity_endpoints.py +86 -0
  31. pvw_cli-1.3.4/tests/test_mcp_server_basic.py +196 -0
  32. pvw_cli-1.2.5/purviewcli/cli/lineage.py +0 -485
  33. pvw_cli-1.2.5/purviewcli/client/__init__.py +0 -1
  34. pvw_cli-1.2.5/purviewcli/client/_account.py +0 -316
  35. pvw_cli-1.2.5/purviewcli/client/_collections.py +0 -288
  36. pvw_cli-1.2.5/purviewcli/client/_domain.py +0 -83
  37. pvw_cli-1.2.5/purviewcli/client/_entity.py +0 -566
  38. pvw_cli-1.2.5/purviewcli/client/_glossary.py +0 -496
  39. pvw_cli-1.2.5/purviewcli/client/_health.py +0 -192
  40. pvw_cli-1.2.5/purviewcli/client/_insight.py +0 -425
  41. pvw_cli-1.2.5/purviewcli/client/_lineage.py +0 -521
  42. pvw_cli-1.2.5/purviewcli/client/_management.py +0 -386
  43. pvw_cli-1.2.5/purviewcli/client/_policystore.py +0 -421
  44. pvw_cli-1.2.5/purviewcli/client/_relationship.py +0 -242
  45. pvw_cli-1.2.5/purviewcli/client/_scan.py +0 -384
  46. pvw_cli-1.2.5/purviewcli/client/_search.py +0 -332
  47. pvw_cli-1.2.5/purviewcli/client/_types.py +0 -392
  48. pvw_cli-1.2.5/purviewcli/client/_unified_catalog.py +0 -1613
  49. pvw_cli-1.2.5/purviewcli/client/_workflow.py +0 -423
  50. pvw_cli-1.2.5/purviewcli/client/api_client.py +0 -566
  51. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/__main__.py +0 -0
  52. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/__init__.py +0 -0
  53. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/account.py +0 -0
  54. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/cli.py +0 -0
  55. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/collections.py +0 -0
  56. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/domain.py +0 -0
  57. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/entity.py +0 -0
  58. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/glossary.py +0 -0
  59. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/health.py +0 -0
  60. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/insight.py +0 -0
  61. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/management.py +0 -0
  62. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/policystore.py +0 -0
  63. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/relationship.py +0 -0
  64. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/scan.py +0 -0
  65. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/search.py +0 -0
  66. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/share.py +0 -0
  67. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/types.py +0 -0
  68. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/cli/workflow.py +0 -0
  69. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/_share.py +0 -0
  70. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/business_rules.py +0 -0
  71. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/config.py +0 -0
  72. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/data_quality.py +0 -0
  73. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/endpoint.py +0 -0
  74. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/exceptions.py +0 -0
  75. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/lineage_visualization.py +0 -0
  76. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/monitoring_dashboard.py +0 -0
  77. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/rate_limiter.py +0 -0
  78. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/retry_handler.py +0 -0
  79. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/scanning_operations.py +0 -0
  80. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/client/settings.py +0 -0
  81. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/plugins/__init__.py +0 -0
  82. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/purviewcli/plugins/plugin_system.py +0 -0
  83. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pvw_cli.egg-info/dependency_links.txt +0 -0
  84. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pvw_cli.egg-info/entry_points.txt +0 -0
  85. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pvw_cli.egg-info/not-zip-safe +0 -0
  86. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pvw_cli.egg-info/requires.txt +0 -0
  87. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/pvw_cli.egg-info/top_level.txt +0 -0
  88. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/setup.cfg +0 -0
  89. {pvw_cli-1.2.5 → pvw_cli-1.3.4}/tests/test_mcp_server.py +0 -0
@@ -1,15 +1,15 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pvw-cli
3
- Version: 1.2.5
3
+ Version: 1.3.4
4
4
  Summary: Microsoft Purview CLI with comprehensive automation capabilities
5
5
  Author-email: AYOUB KEBAILI <keayoub@msn.com>
6
6
  Maintainer-email: AYOUB KEBAILI <keayoub@msn.com>
7
7
  License-Expression: MIT
8
- Project-URL: Homepage, https://github.com/Keayoub/Purview_cli
9
- Project-URL: Documentation, https://github.com/Keayoub/Purview_cli/wiki
10
- Project-URL: Repository, https://github.com/Keayoub/Purview_cli.git
11
- Project-URL: Bug Tracker, https://github.com/Keayoub/Purview_cli/issues
12
- Project-URL: Source, https://github.com/Keayoub/Purview_cli
8
+ Project-URL: Homepage, https://github.com/Keayoub/pvw-cli
9
+ Project-URL: Documentation, https://github.com/Keayoub/pvw-cli/wiki
10
+ Project-URL: Repository, https://github.com/Keayoub/pvw-cli.git
11
+ Project-URL: Bug Tracker, https://github.com/Keayoub/pvw-cli/issues
12
+ Project-URL: Source, https://github.com/Keayoub/pvw-cli
13
13
  Keywords: azure,purview,cli,data,catalog,governance,automation,pvw
14
14
  Classifier: Development Status :: 4 - Beta
15
15
  Classifier: Intended Audience :: Developers
@@ -56,37 +56,74 @@ Requires-Dist: pytest-asyncio>=0.20.0; extra == "test"
56
56
  Requires-Dist: pytest-cov>=4.0.0; extra == "test"
57
57
  Requires-Dist: requests-mock>=1.9.0; extra == "test"
58
58
 
59
- # PURVIEW CLI v1.2.5 - Microsoft Purview Automation & Data Governance
59
+ # PURVIEW CLI v1.3.4 - Microsoft Purview Automation & Data Governance
60
60
 
61
- > **LATEST UPDATE v1.2.5 (October 2025):**
61
+ [![Version](https://img.shields.io/badge/version-1.3.3-blue.svg)](https://github.com/Keayoub/pvw-cli/releases/tag/v1.3.4)
62
+ [![API Coverage](https://img.shields.io/badge/UC%20API%20Coverage-86%25-green.svg)](https://github.com/Keayoub/pvw-cli)
63
+ [![Lineage](https://img.shields.io/badge/Lineage-Enhanced-green.svg)](https://github.com/Keayoub/pvw-cli)
64
+ [![Status](https://img.shields.io/badge/status-stable-success.svg)](https://github.com/Keayoub/pvw-cli)
65
+
66
+ > **LATEST UPDATE v1.3.4 (November 3, 2025):**
67
+ >
68
+ > **🔗 Advanced Lineage Features & Column-Level Mapping**
69
+ >
70
+ > **New Lineage Capabilities:**
71
+ > - **[NEW]** Column-level lineage with multi-target support (1 source → N targets)
72
+ > - **[NEW]** Direct lineage (UI-style) - No visible Process entity
73
+ > - **[NEW]** Dual-mode CSV import - Automatic detection of Process vs Direct lineage
74
+ > - **[NEW]** Column mapping in direct relationships - Granular data flow tracking
75
+ > - **[NEW]** Enhanced error handling with SSL retry strategies
76
+ >
77
+ > **New CLI Commands:**
78
+ > ```bash
79
+ > pvw lineage create-column # Column-level lineage (Process-based)
80
+ > pvw lineage create-direct # Direct lineage (UI-style, no Process)
81
+ > pvw lineage list-column # List column lineages
82
+ > pvw lineage delete-column # Delete column lineage
83
+ > ```
84
+ >
85
+ > **What's New:**
86
+ > - ✅ Column mapping visible in Purview UI
87
+ > - ✅ Compatible with manual UI lineage creation
88
+ > - ✅ Type validation (prevent invalid lineage)
89
+ > - ✅ Batch CSV import with 5 sample files
90
+ > - ✅ Comprehensive documentation & examples
62
91
  >
63
- > - **[NEW]** Lineage CSV Import - Bulk import lineage relationships from CSV files with validation and sample generation
64
- > - **[FIXED]** Search API Integration - Fixed `suggest` and `autocomplete` API payload format (HTTP 400 errors resolved)
65
- > - **[ENHANCED]** Collection Display - Improved collection name detection in search results with proper fallback logic
66
- > - **[OK]** All Search Commands - Comprehensive testing of query, browse, suggest, find-table operations
67
- > - **[NEW]** Bulk Term Import/Export - Import multiple terms from CSV/JSON with dry-run support
68
- > - **[NEW]** Bulk Delete Scripts - PowerShell and Python scripts for bulk term deletion
69
- > - **[NEW]** Multiple Output Formats - `--output` flag supports table, json, and jsonc formats
70
- > - **[NEW]** PowerShell Integration - Plain JSON output works with `ConvertFrom-Json`
71
- > - **[OK]** Complete Data Product CRUD - Full update and delete support with smart partial updates
72
- > - **[OK]** Health Monitoring API - Automated governance health checks and recommendations
73
- > - **[OK]** Workflow Management - Approval workflows and business process automation
74
- > - **[OK]** Complete Microsoft Purview Unified Catalog (UC) - Full governance domains, glossary terms, data products, OKRs, and CDEs
92
+ > **Previous Releases:**
93
+ > - **v1.2.6** - Initial lineage improvements
94
+ > - **v1.2.5** - 86% UC API Coverage (45/52 operations) with Relationships, Query, Policies APIs
95
+ >
96
+ > **[Full Release Notes v1.3.4](releases/v1.3.4.md)** | **[v1.2.5 Release Notes](releases/v1.2.5.md)** | **[Migration Guide](releases/v1.3.4.md#migration-guide)**
75
97
 
76
98
  ---
77
99
 
78
100
  ## What is PVW CLI?
79
101
 
80
- **PVW CLI v1.2.5** is a modern, full-featured command-line interface and Python library for Microsoft Purview. It enables automation and management of *all major Purview APIs* including:
102
+ **PVW CLI v1.3.4** is a modern, full-featured command-line interface and Python library for Microsoft Purview. It enables automation and management of *all major Purview APIs* with **86% Unified Catalog API coverage** (45 of 52 operations).
103
+
104
+ ### Key Capabilities
105
+
106
+ **Unified Catalog (UC) Management - 86% Complete**
107
+ - Complete governance domains, glossary terms, data products, OKRs, CDEs
108
+ - Relationships API - Link data products/CDEs/terms to entities and columns
109
+ - Query APIs - Advanced OData filtering with multi-criteria search
110
+ - Policy Management - Complete CRUD for governance and RBAC policies
111
+ - Custom Metadata & Attributes - Extensible business metadata and attributes
81
112
 
82
- - **Unified Catalog (UC) Management** - Complete governance domains, glossary terms, data products, OKRs, CDEs
83
- - **Bulk Operations** - Import/export terms from CSV/JSON, bulk delete scripts with progress tracking
84
- - **Scriptable Output** - Multiple output formats (table, json, jsonc) for PowerShell/bash automation
113
+ **Data Operations**
85
114
  - Entity management (create, update, bulk, import/export)
86
- - Glossary and term management
87
- - Lineage operations
115
+ - Lineage operations with interactive creation and CSV import
116
+ - Advanced search and discovery with fixed suggest/autocomplete
117
+ - Business metadata with proper scope configuration
118
+
119
+ **Automation & Scripting**
120
+ - Bulk Operations - Import/export from CSV/JSON with dry-run support
121
+ - Scriptable Output - Multiple formats (table, json, jsonc) for PowerShell/bash
122
+ - 80+ usage examples and 15+ comprehensive guides
123
+ - PowerShell integration with ConvertFrom-Json support
124
+
125
+ **Legacy API Support**
88
126
  - Collection and account management
89
- - Advanced search and discovery
90
127
  - Data product management (legacy compatibility)
91
128
  - Classification, label, and status management
92
129
 
@@ -103,6 +140,114 @@ The CLI is designed for data engineers, stewards, architects, and platform teams
103
140
 
104
141
  ---
105
142
 
143
+ ## What's New in Recent Releases
144
+
145
+ ### v1.3.4 (November 3, 2025) - Advanced Lineage Features
146
+
147
+ **Column-Level Lineage & Direct Relationships:**
148
+ - Column-level lineage with multi-target support (1→N)
149
+ - Direct lineage creation (UI-style, no visible Process)
150
+ - Dual-mode CSV import with automatic type detection
151
+ - Column mapping in direct relationships
152
+ - Enhanced error handling with SSL retry strategies
153
+
154
+ **New Commands:**
155
+ ```bash
156
+ pvw lineage create-column # Column lineage (Process-based)
157
+ pvw lineage create-direct # Direct lineage (UI-style)
158
+ pvw lineage list-column # List column lineages
159
+ pvw lineage delete-column # Delete lineage
160
+ ```
161
+
162
+ **CSV Import Examples:**
163
+ ```csv
164
+ # Direct lineage with column mapping
165
+ source_entity_guid,target_entity_guid,relationship_type,column_mapping
166
+ guid1,guid2,direct_lineage_dataset_dataset,"[{""Source"":""ID"",""Sink"":""ID""}]"
167
+ ```
168
+
169
+ **[Full v1.3.4 Release Notes](releases/v1.3.4.md)**
170
+
171
+ ---
172
+
173
+ ### v1.2.5 (October 30, 2025) - 86% UC API Coverage
174
+
175
+ Version 1.2.5 achieves **86% coverage** of the Microsoft Purview Unified Catalog API with **35 new operations**:
176
+
177
+ | Resource Type | Coverage | Operations | Status |
178
+ |--------------|----------|------------|---------|
179
+ | **Business Domains** | 100% | 5/5 | ✅ Complete |
180
+ | **Data Products** | 90% | 9/10 | ⚠️ 1 missing (Facets) |
181
+ | **Glossary Terms** | 73% | 8/11 | ⚠️ 3 missing |
182
+ | **Objectives & Key Results** | 92% | 11/12 | ⚠️ 1 missing |
183
+ | **Critical Data Elements** | 90% | 9/10 | ⚠️ 1 missing |
184
+ | **Policies** | 100% | 5/5 | ✅ Complete |
185
+ | **Relationships** | 100% | 6/6 | ✅ Complete |
186
+ | **Query** | 100% | 4/4 | ✅ Complete |
187
+ | **Custom Metadata** | 100% | 5/5 | ✅ Complete |
188
+ | **Custom Attributes** | 100% | 5/5 | ✅ Complete |
189
+ | **TOTAL** | **86%** | **45/52** | 🎯 **A- Grade** |
190
+
191
+ ### 🚀 New APIs Implemented
192
+
193
+ 1. **Relationships API (6 operations)**
194
+ ```bash
195
+ # Link data product to entity
196
+ pvw uc dataproduct link-entity --id <dp-id> --entity-id <guid>
197
+
198
+ # Link CDE to column
199
+ pvw uc cde link-entity --id <cde-id> --entity-id <guid> --column-qualified-name "..."
200
+ ```
201
+
202
+ 2. **Query APIs (4 operations)**
203
+ ```bash
204
+ # Advanced OData filtering
205
+ pvw uc term query --domain-ids "finance" --status Approved --top 50
206
+
207
+ # Multi-criteria search with pagination
208
+ pvw uc dataproduct query --keywords "customer,revenue" --skip 10 --top 25
209
+ ```
210
+
211
+ 3. **Policy Management (5 operations)**
212
+ ```bash
213
+ # Complete policy CRUD
214
+ pvw uc policy list
215
+ pvw uc policy create --payload-file policy.json
216
+ pvw uc policy update --id <policy-id> --payload-file updated.json
217
+ ```
218
+
219
+ 4. **Custom Metadata (5 operations)**
220
+ ```bash
221
+ # Business metadata via Atlas API
222
+ pvw uc custom-metadata import --file metadata.csv
223
+ pvw uc custom-metadata add --guid <entity-guid> --name "BusinessConcept"
224
+ ```
225
+
226
+ 5. **Custom Attributes (5 operations)**
227
+ ```bash
228
+ # Extensible attribute definitions
229
+ pvw uc custom-attribute create --name "Department" --type String
230
+ pvw uc custom-attribute list
231
+ ```
232
+
233
+ ### 🔧 Major Fixes & Improvements
234
+
235
+ - **Lineage Management Overhaul** - Complete rewrite with interactive PowerShell script, real entity support, and proper Process entities
236
+ - **Search API Fixed** - Resolved HTTP 400 errors in suggest and autocomplete endpoints
237
+ - **Business Metadata Scope** - Fixed Business Concept attributes on Glossary Terms with proper applicableEntityTypes
238
+ - **Architecture Refactoring** - Unified endpoints dictionary, zero hardcoded URLs, complete consistency
239
+
240
+ ### 📚 Documentation (3,500+ lines)
241
+
242
+ - 15+ new guides including relationships, query APIs, lineage creation, business metadata
243
+ - 80+ usage examples across all new features
244
+ - Complete API coverage gap analysis
245
+ - Roadmap to 100% with implementation plans
246
+
247
+ **[View Full Release Notes](releases/v1.3.4.md)**
248
+
249
+ ---
250
+
106
251
  ## Getting Started
107
252
 
108
253
  Follow this short flow to get PVW CLI installed and running quickly.
@@ -176,9 +321,100 @@ For more advanced usage, see the documentation in `doc/` or the project docs: <h
176
321
 
177
322
  ---
178
323
 
324
+ ## Quick Start Examples
325
+
326
+ ### v1.3.4 - Column-Level Lineage
327
+
328
+ ```bash
329
+ # Create column-level lineage (Process-based)
330
+ pvw lineage create-column \
331
+ --process-name "ETL_Sales_Transform" \
332
+ --source-table-guid "9ebbd583-4987-4d1b-b4f5-d8f6f6f60000" \
333
+ --target-table-guids "c88126ba-5fb5-4d33-bbe2-5ff6f6f60000" \
334
+ --column-mapping "ProductID:ProductID,Name:Name"
335
+
336
+ # Create direct lineage (UI-style, no visible Process)
337
+ pvw lineage create-direct \
338
+ --source-guid "9ebbd583-4987-4d1b-b4f5-d8f6f6f60000" \
339
+ --target-guid "c88126ba-5fb5-4d33-bbe2-5ff6f6f60000" \
340
+ --column-mapping "ProductID:ProductID,Name:Name,Amount:TotalAmount"
341
+
342
+ # Import lineage from CSV (automatic type detection)
343
+ pvw lineage import samples/csv/lineage_with_columns.csv
344
+
345
+ # List column lineages
346
+ pvw lineage list-column --format table
347
+
348
+ # Delete column lineage
349
+ pvw lineage delete-column --process-guid <guid> --force
350
+ ```
351
+
352
+ ### v1.2.5 - Relationships API
353
+
354
+ ```bash
355
+ # Link data product to SQL table
356
+ pvw uc dataproduct link-entity \
357
+ --id "dp-sales-2024" \
358
+ --entity-id "4fae348b-e960-42f7-834c-38f6f6f60000" \
359
+ --type-name "azure_sql_table"
360
+
361
+ # Link CDE to specific column
362
+ pvw uc cde link-entity \
363
+ --id "cde-customer-email" \
364
+ --entity-id "ea3412c3-7387-4bc1-9923-11f6f6f60000" \
365
+ --column-qualified-name "mssql://server/db/schema/table#EmailAddress"
366
+
367
+ # List all linked entities
368
+ pvw uc dataproduct list-entities --id "dp-sales-2024"
369
+ ```
370
+
371
+ ### v1.2.5 - Query APIs
372
+
373
+ ```bash
374
+ # Query terms by domain and status
375
+ pvw uc term query --domain-ids "finance,sales" --status Approved --top 50
376
+
377
+ # Query data products with keywords
378
+ pvw uc dataproduct query --keywords "customer,revenue" --skip 0 --top 25
379
+
380
+ # Query CDEs by domain with pagination
381
+ pvw uc cde query --domain-ids "compliance" --orderby "name" --top 100
382
+ ```
383
+
384
+ ### v1.2.5 - Policy Management
385
+
386
+ ```bash
387
+ # List all policies
388
+ pvw uc policy list
389
+
390
+ # Create new policy
391
+ pvw uc policy create --payload-file policy-rbac.json
392
+
393
+ # Update existing policy
394
+ pvw uc policy update --id "policy-001" --payload-file updated.json
395
+ ```
396
+
397
+ ### v1.2.5 - Custom Metadata
398
+
399
+ ```bash
400
+ # Import business metadata from CSV
401
+ pvw uc custom-metadata import --file business_concept.csv
402
+
403
+ # Add metadata to entity
404
+ pvw uc custom-metadata add \
405
+ --guid "4fae348b-e960-42f7-834c-38f6f6f60000" \
406
+ --name "BusinessConcept" \
407
+ --attributes '{"Department":"Sales"}'
408
+
409
+ # Create custom attribute
410
+ pvw uc custom-attribute create --name "Department" --type String
411
+ ```
412
+
413
+ ---
414
+
179
415
  ## Overview
180
416
 
181
- **PVW CLI v1.2.5** is a modern command-line interface and Python library for Microsoft Purview, enabling:
417
+ **PVW CLI v1.3.4** is a modern command-line interface and Python library for Microsoft Purview, enabling:
182
418
 
183
419
  - **MCP Server** - Natural language interface for AI assistants (Claude, Cline)
184
420
  - Advanced data catalog search and discovery
@@ -543,7 +779,7 @@ The PVW CLI provides advanced search using the latest Microsoft Purview Discover
543
779
  - Use autocomplete and suggestion endpoints
544
780
  - Perform faceted, time-based, and entity-type-specific queries
545
781
 
546
- **v1.2.5 Improvements:**
782
+ **v1.3.4 Improvements:**
547
783
 
548
784
  - Fixed `suggest` and `autocomplete` API payload format (removed empty filter causing HTTP 400 errors)
549
785
  - Enhanced collection display with robust type checking and fallback logic
@@ -1307,7 +1543,7 @@ PVW CLI includes comprehensive sample files and scripts for bulk operations:
1307
1543
  - Success/failure tracking per term
1308
1544
  - Rate limiting (200ms delay)
1309
1545
 
1310
- ### Critical Fixes (v1.2.5)
1546
+ ### Critical Fixes (v1.3.4)
1311
1547
 
1312
1548
  - **Search API Suggest/Autocomplete:** Fixed HTTP 400 errors by removing empty filter objects from payload
1313
1549
  - **Collection Display:** Enhanced collection name detection with proper fallback logic (isinstance checks)
@@ -1370,9 +1606,9 @@ See [LICENSE](LICENSE) file for details.
1370
1606
 
1371
1607
  ---
1372
1608
 
1373
- **PVW CLI v1.2.5 empowers data engineers, stewards, and architects to automate, scale, and enhance their Microsoft Purview experience with powerful command-line and programmatic capabilities.**
1609
+ **PVW CLI v1.3.4 empowers data engineers, stewards, and architects to automate, scale, and enhance their Microsoft Purview experience with powerful command-line and programmatic capabilities.**
1374
1610
 
1375
- **Latest in v1.2.5:**
1611
+ **Latest in v1.3.4:**
1376
1612
 
1377
1613
  - Fixed Search API suggest/autocomplete (HTTP 400 errors resolved)
1378
1614
  - Enhanced collection display with robust fallback logic