Microsoft Graph Feature Requests
Welcome to the Microsoft Graph UserVoice! Do you have anidea or feature suggestion based on your experience with Microsoft Graph?Please share these with us by submitting your idea below or voting up ideassubmitted by other users. This forum will be directly monitored by theMicrosoft Graph engineering teams who are working on new features every day.
If you have feedback on a specific API service, pleasechoose the corresponding category. Please submit any broad ideas related toMicrosoft Graph or ideas across more than one service to the “General”category.
This site is only for feature suggestions and ideas! If youneed 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 checkout https://graph.microsoft.com .
-
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.
27 votes -
Allow $filter on showInAddressList for /users and /groups
I'd love to be able to filter the /users and /groups collection on the showInAddressList property.
This would allow us to get all users and groups that are to be shown in the addressbook, currently this means retrieving them all and filtering afterwards (but that poses issues with pagination).
For groups, there is a dependency on this UserVoice: https://microsoftgraph.uservoice.com/forums/920506-microsoft-graph-feature-requests/suggestions/32677822-support-hiddenfromaddresslistsenabled-property-on
26 votes -
Include "businesePhones" in basic profile
According to https://docs.microsoft.com/en-us/graph/permissions-reference#remarks-23, now with permission:"User.readBasic.All" , only bleow properties would be visible:
- displayName
- givenName
- photo
- surname
- userPrincipalName
Which means "businessPhones" is not included.
So it means normal user (not admin) won't be able to view other users' business phones in Teams, even these "other users" are their colleagues !
You never want to reach your colleague by calling their business phone !? So what's the point to keep business phone invisible to most users in same organization?
Just suggest to include businessPhones in basic profile.
24 votes -
App Authentication to retrieve conversation messages for unified groups
We need the App Authentication model to be able to retrieve conversations for unified groups. This isn't a user specific call so I'm unsure why it's not currently possible?
24 votesCurrently this is in our backlog and hasn’t been prioritized against other features we are working on right now. ^JT
-
Please Provide REST API to fetch all the Site collections, Make REST API as powerful as CSOM API
If I have my base SharePoint url, and I have admin credential, Still I can't fetch all the sites/site collections detail through REST API. Need a REST API, which gives detail about detail about all the site collections.
24 votesWe’re working on delivering this feature to Microsoft Graph. Public announcement made at SharePoint Conference 2019
-
Support $count for group members and owners
Currently $count is not supported on
directoryObjects
like users and groups. Although it would be great to know how much members / owners are in a group. The only way right now is via querying the members or owners endpoint of the group and checking the array length. Depending on the number of members, this could lead to multiple calls.It would be great that the
$count
parameter would be supported so that only one call is required.23 votesThis work has started for both group members and owners. ^JT
-
Add Microsoft Word endpoints to the Microsoft Graph API
Microsoft Graph needs to allow access to Microsoft Word Documents by exposed API endpoints.
Basically, all the analogous functionality present in the excel endpoints should also be exposed for the respective similar functions that Microsoft word has.
Why can we not, create, edit, modify, add tables, etc, etc, in Microsoft Word through Microsoft Graph?
23 votes -
Support for setting SharePoint Managed Metadata (taxonomy) column values and other complex column types on items via the Graph API
It is currently not possible to set the value of a Managed Metadata column on a SharePoint item using the Graph API.
Support for setting values on all standard SharePoint columns types is essential in the Graph API to drive adoption of this API. The following column types are currently not supported and have been raised in other UserVoice requests:
Picture and Hyperlink columns:
https://officespdev.uservoice.com/forums/224641-feature-requests-and-feedback/suggestions/32827402-support-for-sharepoint-hyperlink-or-picture-fieldLookup Item in List columns:
https://officespdev.uservoice.com/forums/224641-feature-requests-and-feedback/suggestions/32293726-support-sharepoint-lookup-fields-when-creating-lisPeople & Groups columns:
https://officespdev.uservoice.com/forums/224641-feature-requests-and-feedback/suggestions/32410633-support-writing-to-personorgroup-columns22 votesThank you for your feedback! This work is on the backlog and currently isn’t scheduled. The feature will be updated here once dev work has started. -EY
-
Get all members of a group including nested group members
Currently in Microsoft Graph, the groups/{id}/members ONLY returns the DIRECT members of the specified group. This is a request for an API that would return all members including nested group members (also known as transitive down closure).
22 votesThis has been shipped into the beta endpoint (https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/group_list_transitivemembers) ^JT
-
Expose in place archive and public folders to graph api
It will be great to expose in place archive folders in user mailbox. Currently, the in place archive folder seems to be hidden.
21 votes -
Create Hide folder inside office 365
Hi all,
With the VSTO and exchange WSDL we have avaibility to create an hidden folder for move mail inside. Whis this feature we have developped an plugins VSTO for a french company and a french law for disconnexion of numeric tools. With the office 365 api, these only parameters that can set when we create a folder is the display name and a single-value extended properties. I have create a folder with a display name, this folder whan correctly create with the name. I have update this folder with the single-value extended properties like in WSDLPOST https://graph.microsoft.com/v1.0/users/{userPrincipalName}/mailFolders/DeletedItems/childFolders/
Body:
…
21 votes -
Add permissions Tasks.Read.All or Tasks.ReadWrite.All
Currently it's not possible to access the tasks of all an organisation members regardless of who is connected to the application. At the moment, you can only access Outlook Tasks using delegated permissions (i.e. on behalf of the current user). You can reach outside their own tasks using the Tasks.Read.Shared scope but again, this only provide additional access to Outlook Tasks that were shared with the current user.
This would be a great add to the Microsoft Graph API to help Managers to follow the progession of their projects with new permissions like Tasks.Read.All or Tasks.readWrite.All.
21 votesWe are currently reviewing what work is required here, before we put it in our backlog. -EY
-
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=csPlease note that the above…
20 votes -
consistent retry-after information accross different workloads
Currently OneDrive, Outlook, and AAD Workloads under the Graph send a retry-after header on 429 and/or 503.
However the documentation doesn't say which workloads support it https://developer.microsoft.com/en-us/graph/docs/concepts/throttling and the other workloads don't support it.
It'd make it easier if that was supported across the board to have a single way to handle those kind of issues.
Same remark for the rate-limit headers
related issues: https://stackoverflow.com/questions/47146598/not-receiving-retry-after-headers-from-ms-graph-api
https://github.com/microsoftgraph/msgraph-sdk-javascript/issues/4220 votesToday, all workloads are supposed to return 429 with a retry-after. We have been working hard to unify this across the API surface.
We are reviewing if 503 should also be consistently used to represent cases when throttling occurs due to service state, as opposed to the specific app/user reaching their own individual limits. -
Allow MS Graph API /messages/delta to include singleValueExtendedProperties
I'm incrementally pulling messages via the /delta query in MS Graph API, v1.0. I'd like to pull a singleValueExtendedProperty in the same way I can for normally listing messages:
https://graph.microsoft.com/v1.0/me/mailFolders/Inbox/messages/delta?$expand=singleValueExtendedProperties($filter=id eq 'String 0x007D')
Unfortunately this is currently not supported. I get an error that says:
"Value cannot be null.\r\nParameter name: type"I know I can follow up with multiples GETs to pull the desired extended properties, but I'd rather avoid spawning several requests if I can get away with one.
Please see conversation here: https://stackoverflow.com/questions/46603485/how-do-i-get-singlevalueextendedproperties-for-ms-graph-v1-0-delta-queries
20 votes -
Provide a Teams API To send direct messages to users
Currently, the only way to send messages is to post a message on a channel in a team. It would be great if there could be an API to send a direct message to the users. Please let me know if it already exists, because I could not find any such method in the chat object here :
https://docs.microsoft.com/en-us/graph/api/resources/teams-api-overview?view=graph-rest-beta19 votesWe now support proactive messaging, allowing bots to send 1:1 messages to people who have the app installed. And Graph now provides an API to install Teams apps for users: https://docs.microsoft.com/en-us/graph/api/user-add-teamsappinstallation?view=graph-rest-beta&tabs=http
-
Graph API to Microsoft Forms
Access to Microsoft Forms would be great! The ability to query form responses could be very beneficial.
19 votes -
Allow filtering users by officeLocation
While filtering works for some attributes like department it doesn't work for officeLocation, which sadly I need for my use case.
GET https://graph.microsoft.com/beta/users?$filter=officeLocation eq 'Gaithersburg, MD'
Returns:
{"error": {
"code": "Request_UnsupportedQuery",
"message": "Unsupported or invalid query filter clause specified for property 'officeLocation' of resource 'User'.",
"innerError": {
"request-id": "641beedd-4df5-4b97-b6b5-4f574c382d08",
"date": "2017-07-26T18:32:39"
}
}}
19 votesWe are investigating the technical requirements here to see whether we can move this to the backlog. -EY
-
Implementet full OData v4 query consistently across all graph endpoints
Currently the documentation says (as of 20th of April) that MS Graph query parameters are compatible with OData v4 queries.
https://developer.microsoft.com/en-us/graph/docs/overview/query_parametersThis is not completely orthogonal as there are cases where some operations work and other cases where they don't.
I've used the Graph Explorer to find out what works and what doesn't so far, but it isn't the ideal way.Filter operations Contains/Concat/Trim/ToUpper/ToLower are not supported in /v1.0/users but some are supported in /v1.0/me/events.
Furthermore it seems string comparisons are case insensitive, rendering ToUpper and ToLower meaningless. Using case sensitivity and allowing the use of ToUpper/ToLower would allow the…19 votes -
Support clearing values in Graph API
According to this statement http://stackoverflow.com/questions/38249131/how-to-clear-a-field-using-using-microsoft-graph-net-client-library
it is currently not possible to clear "simple" fields of Objetcts via Microsoft Graph (Group.Description, User.Surname ...)
Would be great if this was supported.
19 votes
- Don't see your idea?