Share via

Purview CDE (Preview) - Published CDE removed Owner and can't unpublish

Rob Lancashire 0 Reputation points
2026-04-23T09:39:23.4933333+00:00

I initially encountered the same issue not being able to add columns as https://learn.microsoft.com/en-ca/answers/questions/5865866/purview-cde-(preview)-linked-data-assets-not-persi#:~:text=Apr%2020,%202026,%2010:,not%20present%20in%20API%20exports.&text=We%20would%20appreciate%20any%20guidance,the%20linkage%20to%20be%20persisted. (Case 2604210040008838)

I tried to publish the CDE which worked but has removed the Owner and I'm now unable to "set to draft" or "mark as expired" and get an error code
"Request failed with status code 400 Request ID: b4073fd2-7d43-4528-b232-d066c33144fd Property "contacts" is required."

I have all required permissions.

Purview Error

Microsoft Security | Microsoft Purview
0 comments No comments

2 answers

Sort by: Most helpful
  1. Pilladi Padma Sai Manisha 7,710 Reputation points Microsoft External Staff Moderator
    2026-04-23T10:14:25.8133333+00:00

    Hi Rob Lancashire,
    it looks like when you published your CDE in the preview portal, the “Owner” (internally the contacts attribute) got cleared out. Because contacts is a required property on every CDE, any attempt to move it back to Draft/Expired fails with that 400 (“Property ‘contacts’ is required.”).

    Unfortunately the preview UI doesn’t let you re-add an owner on a Published CDE, so you’ll need to use the REST API (or PowerShell/CLI) to inject the missing contacts before you can unpublish. Here’s a high-level walkthrough:

    1. Grab your CDE’s GUID • In the portal URL or via the GET entities API.
    2. Fetch the existing entity definition (optional, but good for context) GET
      
         https://<your-account>.catalog.purview.azure.com/purview/catalog/api/atlas/v2/entity/guid/<CDE-GUID>?minExtInfo=true
      
      
    3. Patch in your contacts (AAD object IDs of the owner(s)) PATCH
      
         https://<your-account>.catalog.purview.azure.com/purview/catalog/api/atlas/v2/entity
      
         Content-Type: application/json
      
         {
      
           "entities": [
      
             {
      
               "typeName": "critical_data_element",
      
               "guid": "<CDE-GUID>",
      
               "attributes": {
      
                 "contacts": [
      
                   "<user-object-id-1>",
      
                   "<user-object-id-2>"    // add as many as you need
      
                 ]
      
               }
      
             }
      
           ]
      
         }
      
      
    4. Now move it back to Draft (or Expired) PUT
      
         https://<your-account>.catalog.purview.azure.com/purview/catalog/api/atlas/v2/entity/guid/<CDE-GUID>/status?status=DRAFT
      
      
      (or ?status=EXPIRED if you prefer)

    Once the contacts attribute is populated, the request should succeed and your CDE will revert to Draft/Expired. From there you can update columns/metadata and re-publish as desired.

    Hope that unblocks you! Let me know if you hit any snags.

    References

    1. Critical data elements REST API overview https://learn.microsoft.com/azure/purview/catalog-critical-data-elements-apis
    2. Purview Catalog REST API reference https://learn.microsoft.com/azure/purview/catalog-rest-api-overview
    3. Manage CDE lifecycle (Draft → Published → Expired) https://learn.microsoft.com/azure/purview/catalog-critical-data-elements-manage

  2. Q&A Assist
    2026-04-23T09:39:50.7166667+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    Critical data elements (CDEs) are governed objects that require an owner/contact and can only be deleted after they are unpublished and fully cleaned up.

    From the current behavior and error message, the CDE is in a Published state with no owner (contacts), and any attempt to change status fails because the contacts property is required. In this preview experience there is no documented workaround in the portal for bypassing that requirement; the supported path is:

    1. Ensure the CDE has all required properties, including owner/contacts.
    2. Unpublish the CDE.
    3. Remove all linked columns and related glossary terms.
    4. Delete the CDE.

    The documentation describes the dependency chain but does not expose a way to repair a CDE that has lost its required contacts while published. Because of that, this specific failure mode (Published CDE with missing contacts that cannot be edited/unpublished) requires product-side remediation.

    The only supported resolution is to open a Microsoft support case for Microsoft Purview so the service team can either:

    • Restore or inject a valid contact/owner on the affected CDE, or
    • Remove/unpublish the problematic CDE from the backend.

    After support has corrected the object, use the documented lifecycle going forward:

    1. To update a CDE (including owner/contacts), use Edit on the CDE details page. Required fields (such as owner) must be populated before saving.
    2. To delete a CDE:
      • First set its status to Draft or Expired (unpublish).
      • Remove all mapped columns (Overview → columns → ...Remove).
      • Remove any related glossary terms (Manage related terms → ...Remove).
      • Then select Delete.

    This avoids getting into a state where a required property is missing on a Published CDE.


    References:

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.