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. Graph API /passwordAuthenticationMethod/resetPassword - Option to not prompt users for password change

    When using the /passwordAuthenticationMethod/resetPassword Graph API endpoint, we need an option to not prompt users to change their password upon login. This option is available via MSOL powershell, as well as in admin.microsoft.com, but not via this Graph endpoint.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →
  2. Allow Set of presence via publishnote

    Would love to be able to edit the status (ie Gone for lunch - back at 2pm) via api.
    Seems to exist via presence.teams.microsoft.com/v1/me/publishnote but at the very best this is currently an undocumented API
    Business case - call center or helpdesk updating the status with the ticket they are currently working on, updating the status when back from lunch etc.

    16 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  Cloud Communications  ·  Flag idea as inappropriate…  ·  Admin →
  3. Peer To Peer call without the bot

    incorporation of peer to peer calls as a replacement to a traditional click to dial calling. Lots of 3rd party systems have click to dial. The idea is to place a call from person A to person B (teams or PSTN) and the bot does the mediation but the user does not see "Bot" is trying to call you, it says Person A is trying to call you. Basically the bot is performing the work but silently.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Cloud Communications  ·  Flag idea as inappropriate…  ·  Admin →
  4. Call decline event

    When the bot calls the user, the teams app responds with "xxxx" is trying to call you. If I press decline i don't receive any event except established. But the call wasn't established, it was declined. I have to wait for the media agent to send the terminated event.

    The use case is simple, I want to connect Person A to Person B. Before I dial person B I want to make sure that person A has connected. If i only get the Call established state I cannot detect if Person A declined the call. Declined should be part of…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Cloud Communications  ·  Flag idea as inappropriate…  ·  Admin →
  5. Add "Retry-After" to the "Access-Control-Expose-Headers"

    At the moment, it is impossible for single-page apps to implement proper throttling after a 429 response. CORS policies prevent the javascript in the page to read the Retry-After-header.

    This can be solved easily by adding Retry-After to the Access-Control-Expose-Headers list in the preflight OPTIONS request.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
  6. Make it possible to expand manager for groups with only GroupMember.Read.All

    Recently it was made possible to request managers information when querying data from all users in Azure AD, using just the User.Read.All permission. When requesting the same information for the members of a group GroupMember.Read.All is not sufficient, and the least permission I've found that successfully can run the query is Directory.Read.All, which is considered not acceptable by many of our customers.

    Would it be possible to expand the manager fields when query data from a list of group members just using the GroupMember.Read.All permission?
    Example query:
    GET https://graph.microsoft.com/v1.0/groups/[groupId]/members/microsoft.graph.user?$select=id&$expand=manager

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →
  7. Access a list of Meetings/Call Data via GraphAPI

    For us to use teams as our primary communication tool we need to integrate into our CRM and obtain stats on its use both internally and with external users.

    I can currently subscribe to a webhook https://docs.microsoft.com/en-us/graph/api/subscription-post-subscriptions?view=graph-rest-1.0&tabs=http

    That sends us individual call ID and I can get the call data via the API on a call by call basis (https://docs.microsoft.com/en-us/graph/api/resources/callrecords-callrecord?view=graph-rest-1.0)

    But I cannot get data if a webhook was missed, there was a communcation error or not setup at the time. Webhooks have a short expiry time so it seems are not intended for long term use?

    Teams…

    4 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Cloud Communications  ·  Flag idea as inappropriate…  ·  Admin →
  8. Add webhook support to prevent/reroute a mail before sending to client

    This enhancement request is to allow a validated webhook callback in graph API to receive notifications of incoming emails before they are sent to the mailbox client, and to allow the callback to potentially modify/block/reroute said mail.
    This would allow additional scanning/screening/prepending etc (location privacy laws permitting) such that the webhook receiver could:
    * Remove certain URLs and/or links
    * Change/prepend the subject (e.g. add a warning or Compliance tag)
    * Block and/or reroute the mail if it is deemed for example:

     - dangerous (phishing)
    
    - inapproriate
    - contravenes company policy

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  9. Consistent Graph Report Usage Column Headers for Devices

    Dear Microsoft, I have found the device type headers for the Graph Device Usage User Detail reports inconsistent.

    For example:
    SkypeForBusiness & Yammer reports have column headers 'Used iPhone' and 'Used iPad'. Teams as 'Used iOS'. Exchange has no specific device column header (just 'Outlook For Mobile' and 'Other For Mobile')
    SkypeForBusiness, Teams, Yammer have 'Used Android Phone' and Exchange does not.

    I am suggesting that consistent device type headers be established for all Graph Device Usage User Detail reports. This will help to provide better insights into the devices and platforms that users are using to access the MS365…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Reports  ·  Flag idea as inappropriate…  ·  Admin →
  10. We want sand secure email from the java program application. when recipient's read the mail then it ask for the key to read the message.

    We want sand secure email from the java program application. when recipient's read the mail then it ask for the key to read the message. Is it possible in graph API?

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Security  ·  Flag idea as inappropriate…  ·  Admin →
  11. Make AAD Portal configuration options queryable via supported API

    It's surprising that there are Azure AD options that are configurable only in the portal, including account lockout/smart lockout and the 'restrict access to AAD admin portal' option. When working on an infrastructure-as-code environment, it's disruptive when there are portal-only actions that you want to inspect or set.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →
  12. Need support to add multiple linked resource in To Do Task

    As per the API available, We can't link more than 1 linked resource for a task. When we try to create the second linked resource on that same task, it throws an error :

        "code": "invalidRequest",
    
    "message": "Linked Resource already exists.",

    Request you to enable this feature as linked resource value response is available in array.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  To Do  ·  Flag idea as inappropriate…  ·  Admin →
  13. Enable $skip query param for task list API

    Please add additional query parameters including $skip, $search, $count for optimal results.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  To Do  ·  Flag idea as inappropriate…  ·  Admin →
  14. Delete meeting from calendar without sending cancellation

    It's not currently possible to remove or delete a calendar entry from a calendar without sending out a cancellation to the attendees. This would be a nice feature to have

    4 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Calendar (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  15. Authentication Methods Phone

    It would be nice to have the ability to manage (CRUD) the authentication methods phone number with the application permission type. Currently the only option is to utilize the Delegated (work or school account) to be able to do these type of changes. We have a case where we would like to pre-load the MFA phone numbers for the users as well as in our testing environment to be able to populate test users including their MFA phone numbers. Being able to do this via a automated process/script would be hugely beneficial.

    https://docs.microsoft.com/en-us/graph/api/authentication-post-phonemethods?view=graph-rest-beta&tabs=http

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Users  ·  Flag idea as inappropriate…  ·  Admin →
  16. Improve Multiple User Group Add

    Multiple user add to group is documented at https://github.com/microsoftgraph/microsoft-graph-docs/blob/master/api-reference/v1.0/api/group-post-members.md#example-2-add-multiple-members-to-a-group-in-a-single-request and while functional in the ideal case of all new users, it returns a "400" error when there are collisions with any existing users.

    I suggest that this operation be improved to:
    1) Report a 409 or 422 instead of 400 as the request is not "malformed", just not "processable" due to the existing users
    2) Be idempotent with a 207 status that includes specific details about each individual operation

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Groups  ·  Flag idea as inappropriate…  ·  Admin →
  17. Enable OnlineMeeting recording - attendeeReport for non-broadcast Events

    Enable /recording and /attendeeReport for events which are not marked as 'Live events' (isBroadcast = false).

    Currently when trying to access:
    https://graph.microsoft.com/beta/me/onlineMeetings/id/recording
    or
    https://graph.microsoft.com/beta/me/onlineMeetings/id/attendeeReport

    for such event, we get StatusCode 500. It should be achievable as during the event, attendeeReport can be downloaded for organizer and also after the event the recordings are saved to organizer's oneDrive.

    (those calls work when the onlineMeeting is marked as Live Event, but those are different and it's not an option for us to use them)

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Cloud Communications  ·  Flag idea as inappropriate…  ·  Admin →
  18. 23 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  SDKs and Tooling  ·  Flag idea as inappropriate…  ·  Admin →
  19. Reading columns/fields of a content type

    Ability to read Columns/Fields of a document library content type. This would allow to construct a profile on the go regardless of what content type user wants to add the document as.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Sites and Lists (SharePoint)  ·  Flag idea as inappropriate…  ·  Admin →
  20. calls

    The ability to subscribe to calls, so we can pull customer records from our CRM on call answer.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Cloud Communications  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base