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. Get open shifts and assign people to them

    We can get assigned Shifts through Graph (and Power Automate / Flow). But we can't get open shifts. It is essential for us as an organization, that we can run through open shifts and offering them to users.

    9 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 →
  2. Combine 3 calls to list items into one using the list URL

    Today, to get items for a given list, I need to do it in 3 calls and 3 statements:
    1. Get the Site then take the site ID

    2. Get the lists for the site (there is no filter) then filter by name.
    3. Get the items and fields.

    Instead, there should be a call that takes the list's URL as parameter "https://contoso.sharepoint.com/sites/HR/Lists/MyList" for example.
    The graph processor should be able to dicier the site and list and just give the item like it does now.
    There will be 1/3 the network traffic.

    2 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 →
  3. 3 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  SDKs and Tooling  ·  Flag idea as inappropriate…  ·  Admin →
  4. Docx to PDF file conversion: update table of contents

    Converting to PDF using /content?format=pdf doesn't update toc entries or toc page number values before generating the PDF. It would be great if it could be made to do so.

    It would be useful to have the option to update other fields as well.

    It would be great if these options could also be used to update a docx file, in order to download as a docx (as opposed to pdf).

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

    We’ll send you updates on this idea

    0 comments  ·  Files (OneDrive)  ·  Flag idea as inappropriate…  ·  Admin →
  5. Get Users List with Presence

    There should be an API which returns all the users with their presence or it's better if we can add presence details in current get users API.

    Thanks & Regards,
    Umesh

    10 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 →
  6. User Query filter by OnPremisesExtensionAttributes.ExtensionAttribute

    Allow User query filtering by one of the 15 extension attributes found in the User.OnPremisesExtensionAttributes collection.
    - add allow the user collection to be ordered by an attribute as well (indexed)
    We need to be able to store a generated login name for a B2B guest user in say ExtensionAttribute5 to handle legacy application SSO operations.

    (Use Case) It would be nice to query Users on OnPremisesExtensionAttributes .ExtensionAttribute5 eq 'targetValue' without iterating through thousands of users. This would let us determine whether or not the generated name was unique in our domain. (i.e. used before)

    7 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 →
  7. Enable $orderBy on me/chats endpoint

    We need to get the most recent (MS Teams) chats for a user and need to order by lastUpdatedDateTime (or at least createdDateTime). Please allow this.

    The error when using $orderBy for the me/chats endpoint currently is:

    "Query option 'OrderBy' is not allowed. To allow it, set the 'AllowedQueryOptions' property on EnableQueryAttribute or QueryValidationSettings."

    4 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 →
  8. have a statistics report for shared mailboxes

    Currently GET /reports/getMailboxUsageDetail will give me a csv with usage statistics for USER mailboxes only.

    We really need to see shared mailboxes and public folders also. Can we either have a report that includes these items, or just as good, get a separate report for them?

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

    We’ll send you updates on this idea

    1 comment  ·  Reports  ·  Flag idea as inappropriate…  ·  Admin →
  9. Provide a programmatic way to request Azure MFA verification of users.

    Provide a programmatic way to request verification of users (e.g. push, sms, etc) via Azure MFA.

    I would use this in two ways:

    a. Custom step-up authentication in our custom applications, where we want to do a push auth, but we don’t want the user to enter a password.

    b. Allowing help desk analysts to authenticate users remotely before providing assistance.

    A competitor has a similar restful API:
    https://duo.com/docs/authapi#/auth

    5 votes
    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 →
  10. Ability to query historical records from Callrecord API

    We currently have a webhook to receive notifications of new callrecords from Teams. In cases where we missed notifications, or in cases where we need to go back in time, it would be useful to have the ability to query callids based on date and time. For example, get all IDs between datetime and previous datetime.

    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 →
  11. Pinned Channels in Microsoft Teams

    With the announcement at Ignite 2019 of Pinned Channels it would be great if we could get access to them via the Graph API. You could add a property to the Channel called 'isPinned' and/or make a call to get all pinned channels in one hit e.g. me/pinnedChannels

    21 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 →
  12. Add Application permission to support AppCatalog.ReadWrite.All

    According to https://docs.microsoft.com/en-us/graph/api/resources/teamsapp?view=graph-rest-beta, only delegated permission is supported to manipulate Teams AppCatalog which means a sign-in user is needed when taking use of those APIs. However, the Application permission can provide the ability to make related actions more automatically and support more meaningful and realistic use-cases.

    For example, my use-case is to provided an application to automatically install a new Bot, created in Azure, to Teams. So I really think the Application permission is needed.

    16 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. Message Copy: Allow to copy message to another mailbox.

    The Current Message Copy functionality is only limited to create a copy of mail under the same mailbox where mail resides.

    This should be expanded to Copy a message from the current mailbox to another user's mailbox

    11 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 →
  14. Add support for creating chat messages on the user endpoint

    In the current graph beta, user chats and their messages can be enumerated using GET /users/{id}/chats and GET /users/{id}/chats/{id}/messages. However, new messages cannot be posted to the messages endpoint i.e POST /users/{id}/chats/{id}/messages . Please add this functionality.

    The desired functionality exists for team channel messages by posting to the channel messages endpoint (POST /teams/{id}/channels/{id}/messages). Replicating this for user chats using the same json payload would seem to be the most appropriate solution.

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

    We’ll send you updates on this idea

    In Backlog  ·  5 comments  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →
  15. Allow custom tags in OneNote

    It's really annoying not being able to use custom note tags in MS Graph. It means that either I don't use Graph (which would be a real shame because it's very interesting for automation) or I don't use custom tags, which I'd really miss. If it's too difficult to add full support, if there were at least some way of updating (replacing) a paragraph without removing its tag, that would be a good start

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

    We’ll send you updates on this idea

    0 comments  ·  Notes (OneNote)  ·  Flag idea as inappropriate…  ·  Admin →
  16. Allow custom tags in OneNote

    It's really annoying not being able to use custom note tags in MS Graph. It means that either I don't use Graph (which would be a real shame because it's very interesting for automation) or I don't use custom tags, which I'd really miss. If it's too difficult to add full support, if there were at least some way of updating (replacing) a paragraph without removing its tag, that would be a good start

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

    We’ll send you updates on this idea

    1 comment  ·  Notes (OneNote)  ·  Flag idea as inappropriate…  ·  Admin →
  17. Working with Teams without admin consent

    To make automated tests of MS Teams, you need to use the designated list of Graph API requests.
    But the Graph API requests all require the access type “Group.ReadWrite.All” using admin consent, which is not useful for our customers.
    The proposal would be to add one more access type, for example with the name “Group.ReadWrite”, which will allow the creation of a team, creation of a channel in the team, sending a message to the channel and replying to that message.
    The same user needs to be able to delete the channel and the team previously created.
    This is be…

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

    We’ll send you updates on this idea

    1 comment  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →
  18. Get sharing reports for SPO sites

    Usage of the Graph API to get sharing reports for SPO (and ODB) sites in bulk - https://docs.microsoft.com/en-us/sharepoint/sharing-reports

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

    We’ll send you updates on this idea

    2 comments  ·  Sites and Lists (SharePoint)  ·  Flag idea as inappropriate…  ·  Admin →
  19. Allow access to recycle bin in OneDrive for business, and permanently delete or restore files from there

    Currently, the only related API is a beta API to restore deleted OneDrive Personal items.

    Managing OneDrive for Business documents isn't really complete without options to restore or permanently delete recycle bin items.

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

    We’ll send you updates on this idea

    1 comment  ·  Files (OneDrive)  ·  Flag idea as inappropriate…  ·  Admin →
  20. 34 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

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

Feedback and Knowledge Base