Retrieve information for personal contact lists through EWS or graph

Andreas Davros 71 Reputation points
2025-11-26T19:57:38.45+00:00

Hello,

We currently expand all kind of email lists through this graph endpoint

/v1.0/groups?$filter=displayName

However, we have noticed that no results are returned for personal contact lists. Thus we fallback to Exchanges Web Services to expand those.

Considering Deprecation of Exchange Web Services in Exchange Online in the future, is there a workaround for this issue or expected to be fixed in the meantime..?

P.S. we are not sure if there is a specific setup that justifies this behaviour for this graph endpoint, this is what we observed in a number of tenants

Exchange Online
Exchange Online
A cloud-based service included in Microsoft 365, delivering scalable messaging and collaboration features with simplified management and automatic updates.
0 comments No comments
{count} votes

Answer accepted by question author
  1. Hani-Ng 6,325 Reputation points Microsoft External Staff Moderator
    2025-11-27T01:00:07.9733333+00:00

    Hi Andreas Davros

    Thank you for posting your question in Microsoft Q&A regarding the retrieval of Personal Contact Lists (Contact Groups) via Microsoft Graph.

    Based on your description, I would like to share some information from my side and hope it proves helpful. According to your information, you are absolutely correct that relying on EWS is no longer a viable strategy given the upcoming retirement of the service.

    The behavior you observed /groups returns no results is by design and the /groups endpoint queries Entra ID (formerly Azure AD). It allows you to retrieve organization-level objects (M365 Groups, Security Groups, Distribution Lists).

    Personal Contact Lists are stored locally within a specific user’s Exchange Mailbox. They are not directory objects, so they do not exist in Entra ID and are invisible to the /groups endpoint.

    And Graph Implementation is my recommended solution you can try. Microsoft Graph v1.0 does not currently expose the "members" of a personal distribution list as a standard JSON property. To replace your EWS ExpandDL logic, you must retrieve the raw item content.

    httpGET /users/{user-id}/contactFolders/{folder-id}/items?$filter=singleValueExtendedProperties/Any(ep: ep/id eq 'String 0x001a' and ep/value eq 'IPM.DistList')
    
    httpGET /users/{user-id}/items/{item-id}/$value
    
    • Parse Client-Side: The response will be a binary MIME blob. Your application must parse this stream (using a library like MimeKit for .NET or similar) to extract the email addresses. (Technical Note: Be aware that depending on how the list was created, the members may be stored inside a TNEF attachment (winmail.dat) within that MIME structure).

    Here is some Microsoft official information for your referral:

    I hope these suggestions provide some helpful ideas. If you need further assistance, feel free to ask via comments section.


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".       

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread. 


2 additional answers

Sort by: Most helpful
  1. Q&A Assist
    2025-11-26T19:57:48.66+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    Currently, the Microsoft Graph API does not return results for personal contact lists when using the /v1.0/groups?$filter=displayName endpoint. This limitation is acknowledged, and as of now, there is no specific workaround provided in the context for retrieving personal contact lists through Microsoft Graph.

    Given the deprecation of Exchange Web Services (EWS) in Exchange Online, it is advisable to monitor updates from Microsoft regarding enhancements to the Graph API that may address this issue in the future. Microsoft is actively working to close parity gaps between EWS and Microsoft Graph, which may include improvements in accessing personal contacts.

    For organizations relying on EWS for personal contact lists, it is recommended to start planning for migration to Microsoft Graph as EWS will be disabled globally for all organizations by October 2026.

    You may also want to check for any updates or announcements from Microsoft regarding this functionality as they continue to develop the Graph API.

    0 comments No comments

  2. Deleted

    This answer has been deleted due to a violation of our Code of Conduct. The answer was manually reported or identified through automated detection before action was taken. Please refer to our Code of Conduct for more information.


    Comments have been turned off. Learn more

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.