Microsoft Graph Feature Requests

Welcome to the Microsoft Graph UserVoice! Do you have an idea or feature suggestion based on your experience with Microsoft Graph? Please share these with us by submitting your idea below or voting up ideas submitted by other users. This forum will be directly monitored by the Microsoft Graph engineering teams who are working on new features every day.

If you have feedback on a specific API service, please choose the corresponding category. Please submit any broad ideas related to Microsoft Graph or ideas across more than one service to the “General” category.

This site is only for feature suggestions and ideas! If you need technical help, please go to the Microsoft Graph StackOverflow or if you have a Premier support contract raise a support ticket.

For more information on Microsoft Graph, please checkout https://graph.microsoft.com.


  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. add an endpoint to allow managing mail-enabled security-group members with Graph

    Add or remove a member to or from a mail-enabled security group from within a web application. We do know that this works in Powershell with the Add-DistributionGroupMember cmdlet. We want to do the same through Graph

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Groups  ·  Flag idea as inappropriate…  ·  Admin →
  2. Graph API Golang SDK

    Golang is continuously getting good traction among developers in the industry. As of now, the Graph API only have official SDK support for C# and Java. It will be very beneficial to have Golang SDK.

    20 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  0 comments  ·  SDKs and Tooling  ·  Flag idea as inappropriate…  ·  Admin →
  3. Support LT/LE filters for ReceivedDateTime for Messages when using delta query

    I have a local copy of a user's entire mailbox (like Outlook) so that I can avoid delete operations (for audit purposes) performed by the client. The problem is that delta keys seem to be ignored on occasion (different issue???) causing literally thousands of pulls.

    If I had these additional filters then I would store a delta per month. It would at least allow some flexibility in design.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  4. Ability to change the fields "receivedDateTime" and "sentDateTime" of email messages when creating them.

    It is not possible to change the fields "receivedDateTime" and "sentDateTime" of email messages via Graph API. I'd like to change it without using workarounds.

    11 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  5. SharePoint Graph API add "list all sites access for a user"

    Since suppressing a guest user from the Azure AD won't suppress it from all the sites where he has permissions/shared documents we must identify those sites.

    We need to know all the sites on the tenant where the user has shared access to some child elements.

    The Sharepoint part of the graph api is really small.

    10 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Sites and Lists (SharePoint)  ·  Flag idea as inappropriate…  ·  Admin →
  6. Teams usage report Graph REST API

    There is Teams usage report, Teams user activity report, Teams device usage report available in Microsoft Teams admin center. In Microsoft Teams admin center -> Analytics & reports > Usage reports Below is the link to the docs -

    https://docs.microsoft.com/en-US/microsoftteams/teams-analytics-and-reports/teams-usage-report

    I want use report from Graph Rest API

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Reports  ·  Flag idea as inappropriate…  ·  Admin →
  7. Get all calls of a user with

    We are using teams with phones in our company and are now looking for a way to automatically track those calls.
    The goal is a system where we automatically bill calls from certain numbers and more.
    For this we would need the duration of a call in the teams call object as an additional property as well as an function to get all calls on a date.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Cloud Communications  ·  Flag idea as inappropriate…  ·  Admin →
  8. teams/delta call

    At the moment, there is no way to list all teams using a /teams call. You always need to enter a group id (/teams/<guid>).

    That is why we need to resort to
    GET /groups?$select=id,resourceProvisioningOptions

    to filter out all Teams in the organization. However, we cannot deduce from the response if said Team is archived or not. This can only be inferred from the /teams call.

    It is not feasible / wanted / efficient to query 6000+ Teams in an organization on a regular basis to know if they have been archived through the Teams UI.

    That is why a /teams/delta…

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →
  9. Add Archived status in GET /groups/delta request

    When calling GET /groups/delta the "archived" status is not included, nor is it taken into account for the delta results.
    This does seem like an important property to include.
    Please add this to the request output.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Groups  ·  Flag idea as inappropriate…  ·  Admin →
  10. Allow creating itemAttachments with nested attachments via the Graph API

    Suppose my Inbox has 'Email 1', which has attachments on it.
    Outlook allows me to attach 'Email 1' to 'Email 2' as an itemAttachment. I can even attach 'Email 2' to 'Email 3' to get another level of nesting.

    The Graph API allows me to create itemAttachments but appears to strip out nested attachments.

    For example, the following request creates an itemAttachment but strips out the nested attachments (verified via API and Outlook client)

    POST https://graph.microsoft.com/beta/me/messages/{some-msg-id}/attachments
    Content-type: application/json
    Content-length: 200

    {
    "@odata.type": "#microsoft.graph.itemAttachment",
    "name": "Hello world",
    "item": {

    &quot;@odata.type&quot;: &quot;microsoft.graph.message&quot;,
    
    &quot;subject&quot;: &quot;foobar&quot;,
    &quot;body&quot;: {
    &quot;contentType&quot;: &quot;HTML&quot;,
    &quot;content&quot;: &quot;lorem ipsum&quot;
    },
    5 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  11. Enable Quarantine through Graph API

    Recently, ZAP (Zero Hour Autopurge) quarantine was announced, allowing ZAP to move messages entirely out of the user's mailbox into the administrative quarantine. This capability should be rolled out to Graph, allowing security partners to take advantage of similar capabilities - ultimately making mailboxes safer for all users.

    3 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  12. Archival - support shouldSetSpoSiteReadOnlyForMembers setting when using app-only permissions

    When archiving a Team (https://docs.microsoft.com/en-us/graph/api/team-archive?view=graph-rest-1.0) there is an optional parameter shouldSetSpoSiteReadOnlyForMembers to change all user permissions on the content to read-only. This however does not currently work when using Application permissions.

    This should be supported, possibly requiring the Sites.ReadWrite.All application permission.

    This will allow us to archive a team automatically in a background process in response to certain business requirements eg. time elapsed, team status etc.

    6 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →
  13. Ability to filter users with onPremisesSamAccountName with Microsoft Graph API

    would like to have a filter on the users api of Microsoft Graph API, where I will be able to filter the users based on onPremisesSamAccountName, which is currently not available with Graph API.

    We have the internal employee id to be stored with onPremisesSamAccountName variable which is present in users API of Microsoft Graph. We are trying to filter with onPremisesSamAccountName property to filter based on the internal employee id. Currently we are not able to do that with Graph API but we really need this to be workling or would be happy if we get know any possible…

    6 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Users  ·  Flag idea as inappropriate…  ·  Admin →
  14. Enable updating Site Pages via Graph API

    The current beta version of the Graph API for SharePoint Sites, specifically the Page objects, supports GET (read), POST (create), and DELETE (delete) operations, but does not appear to have any support for PUT (update) of an existing Page.

    https://docs.microsoft.com/en-us/graph/api/resources/sitepage?view=graph-rest-beta

    This means that in order to make an update to a page via API, the only option is to GET the current page, update as needed in our application, DELETE the current page, and then POST to create a completely new page (losing all history, original creation date, etc.) with the same name/title... which also results in a new object…

    4 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Sites and Lists (SharePoint)  ·  Flag idea as inappropriate…  ·  Admin →
  15. Remove detectedApps no longer installed on a device

    When $expand=detectedApps is included on the /deviceManagement/managedDevices/{managedDeviceId} endpoint, all apps that have ever been installed on the device are returned. It would be great if only currently installed applications were returned to get an accurate representation of the applications on the device.

    Example from a device in our environment, I only want to know the current version of the IME, not every version that's ever been installed:
    Microsoft Intune Management Extension 1.15.109.0
    Microsoft Intune Management Extension 1.24.114.0
    Microsoft Intune Management Extension 1.15.102.0
    Microsoft Intune Management Extension 1.23.103.0
    Microsoft Intune Management Extension 1.22.107.0

    4 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Devices and Apps (Intune)  ·  Flag idea as inappropriate…  ·  Admin →
  16. Add support for s/mime certificate management through the graph api

    I would like to be able to programmatically add/remove s/mime certificates for contacts through the graph api. This would make it much easier to build products around s/mime that can encourage the use of this technology for secure communications through email.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Personal Contacts (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  17. Add Retention Policy as part of Mail metadata

    Add Retention Policy as part of Mail metadata and can access using Graph API

    3 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  18. Create Shared Mailbox

    Ability to create shared mailboxes and manage their shared users.

    6 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  19. Allow notification for user registration (creation) in Azure B2C tenant

    Applications in a B2C workflow need to be able to know when new users have registered.

    In our current flow a user purchases a license to our product. The billing software will call a webhook to our application which triggers a transactional email with a registration link (this is an azure B2C registration link). We need to be able to know once the user has completed registration (e.g. we need to be able to subscribe to a "user created" event that calls our application whenever the user signs up). This is important to send a welcome email and bootstrap the…

    4 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →
  20. Add the raw user agent to Azure AD audit log scheme

    As of today, only parsed user agent information is available as part of the Azure AD audit log (in sign-in in particular). In many cases, the parsing does not work well and most of the parsed fields are 'null'.
    It will be great if we can get the raw user agent string and use our own parsing.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base