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 the Microsoft Graph, please check out https://graph.microsoft.com .

I suggest you ...

(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Restrict permissions to app-only Azure AD applications consuming Office 365 services on resource level

    Large organization start leveraging the Graph API to provide integrations between their third party applications and Office 365. In such companies it is common to delegate the development of integrations from the central IT organization to other business units.
    The current app-only permission priviledges are not appropriate for such types of setups since there is currently no way to limit the permissions for that app to a specific resource in Office 365. This makes such use cases impossible to implement.

    As an example we could consider SharePoint Online. Whever a business unit has to develop a daemon tool that exchanges…

    158 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    16 comments  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →

    Work has started. We plan to build an experience where end users and administrators can pick a specific resource to grant consent to, such as a specific group or site. This will be programmable through Microsoft Graph API.

  2. Send message with a larger than ~3 MB file attachment

    Through Graph, there is NO way to compose or quick send a message having, let's say, a 6 MB PDF brochure. I'm not asking for attachments of hundreds of MB, but the current limitation is a **huge** bug.
    UploadSessions in the context of Messages could be a solution path to the inherent limitation of embedding base64 file content in a Json.
    A

    28 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    11 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  3. Support $select and Schema Extensions on /me/joinedTeams

    We have schema extensions on the Group resource to add metadata to user's Teams. We currently need to call both the /me/joinedTeams and then make time consuming calls to the /groups API in order to fetch the schema extensions for all the Teams that the user is joined to.

    It would be of great help if we could fetch the Schema Extensions directly on the /me/joinedTeams endpoint.

    It would be even better if we could also $filter the joinedTeams to only return the Teams that have a particular schema extension.

    24 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →
  4. allow access to user presence via API

    Please allow access to read and update user presence via API.

    40 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    9 comments  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →
  5. allow the usage of filter to retrieve chat for MS teams chat

    Currently Our project is using the API (mentioned bellow) to read all the messages of particular channel of MS Team

    https://docs.microsoft.com/en-us/graph/api/channel-list-messages?view=graph-rest-beta

    it is ok to hit this API for small conversation but as the conversation becomes lengthy( by the time), then the API takes long to retrieve the message. So please provide enable the filter to retrieve the teams messages by date filter.

    There are filter which can already be applied to message(on mail ) and people.
    Can this filter will also be enabled for channel messages for MS Teams.

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

    We’ll send you updates on this idea

    4 comments  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →
  6. Handle group owners the same as group members over all api's

    Nowadays it's needed to make a group owner also a group member in at least the following cases:
    - List group plans
    - Create group plan

    When you're provisioning groups via code, a very common provisioning scenario, the 'creator' is only added as owner to the group and not as a member. Via the UI you first have to add someone as a member before 'promoting' him/her to an owner. In that case the user will be both owner and member.

    We cannot see the functional need to also add an owner as a member, so we guess it's a…

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

    We’ll send you updates on this idea

    0 comments  ·  Groups  ·  Flag idea as inappropriate…  ·  Admin →
  7. expose “lastModifiedDateTime” on user

    I need to retrieve the last modified date of user profiles in Office 365 from the Graph API.

    Could you please provide the endpoint similar to https://graph.microsoft.com/beta/me/?$select=createdDateTime

    But have it be for the last time the user profile was modified by the user or admin, would be awesome for it to be https://graph.microsoft.com/beta/me/?$select=lastModifiedDateTime

    38 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Users  ·  Flag idea as inappropriate…  ·  Admin →
  8. auditing

    Graph API : How can we Audit mailbox access by Application Permission AD apps that have been granted admin consent. We are logging client-request-id, request-id, timestamp and x-ms-ags-diagnostic from the HTTP response headers of Graph but we have to reach microsoft to get details of these calls.

    For an Azure AD/Office 365 admin, Graph API audit logs should be available in Security and Compliance section.

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

    We’ll send you updates on this idea

    0 comments  ·  Calendar (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  9. Teams Chat log

    Getting mail logs at /me/messages includes Teams chats, but previously Teams chats contained characters that could be identified as "IM" in the Subject.
    Currently, it is set as blank, and it can not be identified as mail log or chat.
    I want you to be able to identify chat logs.

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

    We’ll send you updates on this idea

    2 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  10. Add Application Permission support for Microsoft Graph API for Intune

    Most or all of the APIs related to Devices and Apps (Intune) only support Delegated Permissions. I see a lot of use-cases where I want to use Application Permissions instead of delegated to simplify and secure my integrations.

    14 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Devices and Apps (Intune)  ·  Flag idea as inappropriate…  ·  Admin →
  11. Provide webhooks for Microsoft Teams messages.

    We are integrating Microsoft Teams threaded chat into our product offering. Our users will interact with the channel-based chat using both the Microsoft Teams application and from within our application. To avoid polling, we would like to be able to subscribe to Microsoft Teams related events. Of interest are events related to new channel messages. We found similar subscriptions for files and email, but nothing related to Microsoft Teams.

    See documentation for /subscription endpoints, Change notifications: "Use the Microsoft Graph API to get change notifications"

    25 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    7 comments  ·  Teamwork (Teams)  ·  Flag idea as inappropriate…  ·  Admin →

    This work is on the backlog and currently isn’t scheduled. The feature will be updated here once dev work is started. -EY

  12. Export the Event, Contact items in VCF, iCal format

    Ability to export Events, Contacts in MIME formats (VCF, iCal)

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

    We’ll send you updates on this idea

    3 comments  ·  Mail (Outlook)  ·  Flag idea as inappropriate…  ·  Admin →
  13. Add support to invite user to Team and Group simultaneously/instantaneously w/welcome-mail

    Today, when adding an invited user (guest) to a team, you have to add them to the group and wait up to 24 hours before the "team module" picks up the change. And no welcome mail i sent to the invited user.

    Would be great if Graph exposed the same method as the invite in the GUI uses, which add the user to the group and team simultaneously/instantaneously and sends a welcome email to the user.

    Method in question (from GUI)
    PUT https://teams.microsoft.com/emea/beta/teams/($channelId)/bulkUpdateRoledMembers?allowBotsInChannel=true
    Where you send in userid's w/roles and groupid

    15 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Groups  ·  Flag idea as inappropriate…  ·  Admin →
  14. Enable $filter on group members

    It's very important to be able to filter members of a group, for example to search for employees within an organization by name (e.g. 'startsWith').

    35 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Groups  ·  Flag idea as inappropriate…  ·  Admin →

    Currently this is in our backlog and hasn’t been prioritized against other features we are working on right now. ^JT

  15. Expose New API to work with Company Branding via Graph API

    Expose new API to work with company branding like Sign-in page background image, Sign in page text, Sign-in page background color etc.
    or extend /organization endpoint.

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

    We’ll send you updates on this idea

    0 comments  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →
  16. Graph - Add "isAdmin: true/false" to /me to identify users I can prompt for Admin consent

    My application can be used in a basic mode without Admin permissions. I would like to prompt Administrators for advanced permissions. Currently I cannot detect who is an Admin without already being granted Directory.Read.All permission by an Admin.

    If the "me" route could identify whether the user is an Admin or not it would allow much more control from our application side, without exposing much information

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

    We’ll send you updates on this idea

    0 comments  ·  Identity and Access  ·  Flag idea as inappropriate…  ·  Admin →
  17. Allow signed in user to read AD group memberships with minimal delegated permissions

    Applications that implement group based authorization require the ability to query the group identifiers of the signed in user via minimal delegated permissions. The group based authorization is a common scenario for (multi-tenant) SaaS applications. Oftentimes it's difficult or impossible to get permissions from a customer that can expose a broad set of information. Even if one was able to get the permissions, the implementation would still be sub-optimal and cause unnecessary security risks.

    The current version of user: getMemberGroups function doesn't satisfy the need because it requires broad and even application level permissions.
    https://docs.microsoft.com/en-us/graph/api/user-getmembergroups?view=graph-rest-1.0&tabs=cs

    Please note that the above…

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

    We’ll send you updates on this idea

    0 comments  ·  Groups  ·  Flag idea as inappropriate…  ·  Admin →
  18. Implement $skip for users api or provide previous link

    Pagination issue. There is no way to redirect to previous page If we use $top parameter, it provides next page url using which we can go to next page. We also can not use $skip parameter when we want to get users of an organization. Please provide $skip to use with users api, or provide previous link with $top parameter

    15 votes
    Sign in
    (thinking…)
    Sign in with: oidc
    Signed in as (Sign out)

    We’ll send you updates on this idea

    Needs more information  ·  1 comment  ·  Users  ·  Flag idea as inappropriate…  ·  Admin →
  19. Planner data in Graph Data connect

    One dataset I was missing is the task data from Planner. It would help a lot for enterprise reporting if we could extract the planner data easily for reporting purposes, maybe filtered on O365 group level and of course plan level.

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

    We’ll send you updates on this idea

    0 comments  ·  Data Access (Data Connect)  ·  Flag idea as inappropriate…  ·  Admin →
  20. Ability to Initialize AuthorizationCodeProvider with AccessToken & Refresh Token.

    Right now we can initiliaze AuthorizationCodeProvider with only AuthorizationCode recieved from Ist Leg of oauth2 flow. However in applications, where user authorizes you app once and your app needs to make graph api calls in the background. In this case, persisting Refresh Token in the database is the easiest and then be able to initialize new AuthorizationCodeProvider Instance using these refresh tokens.

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

    We’ll send you updates on this idea

    2 comments  ·  SDKs and Tooling  ·  Flag idea as inappropriate…  ·  Admin →
← Previous 1 3 4 5 34 35
  • Don't see your idea?

Feedback and Knowledge Base