How to get all availabel extesion properties? - microsoft-graph-api

Like azure ad graph API: https://msdn.microsoft.com/en-us/Library/Azure/Ad/Graph/api/functions-and-actions#getAvailableExtensionProperties
Is there any API to get all available extension properties in Microsoft graph?
Now we only can get the extension properties registered in current tenant application via /applications//extensionProperties
https://graph.microsoft.io/en-us/docs/api-reference/beta/api/application_list_extensionproperties
But how to get extension properties of multiple-tenant application consented from other tenant?
Thanks

No, we haven't exposed that particular API in Microsoft Graph.
(UPDATED 3/12/07) We've introduced an updated extensibility story for Microsoft Graph that should be a little easier to use, more discoverable and consistent across Microsoft Graph (i.e. not just for Directory entity types). For more information check out this blog post.
UPDATE: New video explaining our new extensibility story. Hopefully you'll be able to get your hands on this next month.

Related

What is the difference between graph.windows & graph.Microsoft

What is the difference in using graph.microsoft & graph.windows. ? I am using graph.microsoft authentication to grab user information from AD for a Chatbot.
previously I was using graph.windows and since there was not enough information available with result string I used graph.microsoft. I wonder in future it brings an issue if I use it for production?
You will want to use Microsoft Graph (graph.microsoft) over Azure AD Graph (graph.windows). Both are still supported however Microsoft itself strongly recommends developers utilize the Microsoft Graph service.
You can read the original post from the Azure Graph team here explaining the differences between the two. It's from 2016 so things have changed since then.
This article, from November 2018, on Azure AD Graph, also recommends using Microsoft Graph.
Hope of help!

How to create organizational contact using MS Graph or Office 365 REST API

Office 365 administration center allows to create organizational contacts which are shared with all users in organization.
In MS Graph documentation API of this functionality is badly documented and located in BETA section. Moreover, there is no command to create such a contact: https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/resources/orgcontact
It looks like in Graph this functionality was not implemented. Using typical POST request to the /beta/contacts ends with an error response in Json structure: Unsupported resource type 'Contact' for operation 'Create'.
Note 1: I don't have any user logged in. My application uses service/daemon authentication.
Is there any other way to create organizational contact?
At this time, creating new orgContact objects isn't supported by the Graph API. You also cannot create organizational contacts with the Azure AD Graph API. For more information about organizational contacts, including how they are created in your tenant, see the Contact Entity documentation.
Organization Contacts are documented in the beta section because this API is in fact still in beta. I'm sorry you ran into issues here but with any beta endpoint there is always likelihood of missing/broken features and sparse documentation. There is also a substantial likelihood of breaking changes being rolled out to beta endpoints. As such, we do not recommend using them in production scenarios.

Create Microsoft team for office group programmatically

I'm creating an office group using Microsoft Graph API. After that I would like to create a Microsoft Team which is associated with the group. I can do this step manually, but I'm wondering if it's also possible to do so via API.
Graph API doesn't seem to support Microsoft Teams yet. Am I correct?
You are correct, Teams is not yet part of the Graph API, nor do we yet have support for creating Teams. Both are on the road map, but I do not have an ETA for you at this time.
Actually you can do this semi-automatically using the beta API on Skype. Here is a GitHub project doing this from PowerShell: https://github.com/sanderdewit/teams-module
This approach is semi-automatically, because you need a user to sign-in once via a pop-up window. And for sure this is not a supported scenario.

Getting all user data using Microsoft Graph API

Using PHP and the Microsoft Graph API I'm fetching a user by querying:
https://graph.windows.net/<tenant>/users/<userId>?api-version=2013-11-08
This works fine, but only returns the standard fields for the user object. According to the documentation I'm supposed to be able to use $select=* to get all the user data, like this:
https://graph.windows.net/<tenant>/users/<userId>?$select=*&api-version=2013-11-08
However this gives me the following error:
{"odata.error":{"code":"Request_BadRequest","message":{"lang":"en","value":"The ability to use the $select query option to define a projection in a data service query is disabled. To enable this functionality, set the DataServiceConfiguration. AcceptProjectionRequests property to true."}}}
How can I enable "AcceptProjectionRequests"? I find nothing about this in the documentation or in other SO-threads.
The APIs you are referencing above are Azure AD Graph which is different than the Microsoft Graph APIs. It might be worth your time to have a look at the Microsoft Graph APIs and consider transitioning away from Azure AD Graph. The general guidance from the Azure AD Graph team recommends using the Microsoft Graph instead of the Azure AD Graph. You can read more about the differences and the Azure AD guidance here.
Having said that, Azure AD Graph does not support $select (as stated in the blog posting I linked to above). Microsoft Graph does support $select for doing query projections (see Microsoft Graph or Azure AD).
Currently (as of 7/8/2016) Microsoft Graph supports most of the directory features that Azure AD Graph supports, but not all. In some cases, Microsoft Graph supports functionality that is not in Azure AD Graph (such as ability to make $select projection queries).
Per OData spec, $select=* can either return all entity properties or a default set of properties (provided the default set contains all key properties). The Microsoft Graph implementation is the latter and it will return a set of key properties. In order to get all the necessary properties you need, you will need to explicitly request the entire list you want unless they happen to be within the default set.

Microsoft graph API old and new

Is there any difference between what one can get from
https://graph.windows.net vs https://graph.microsoft.com?
It seems that there's different versions for one, .net is under version 1.6 and .com under 1.0.
They both seem to work with the v2.0 auth scopes, but do they work the same way?
Thanks to anyone that can shed some light!
Using Microsoft Graph (https://graph.microsoft.com) you can access the data that is exposed in the Azure AD graph API (https://graph.windows.net) and, in addition to that, access data from services like Outlook/Exchange, OneDrive, SharePoint, OneNote, Planner and more (for both consumer and commercial).
The recommendation is to use Microsoft Graph API. That said, there is still a small percentage of functionality that is only available in the Azure AD Graph and we are working hard to close the gap.

Resources