In first two parts of the article series “A First Look at the New Microsoft Graph Explorer”, I explained about different components of Microsoft Graph Explorer. I suggest you to read those two parts first, before reading this third part for better understanding.
You can read the previous parts here,
I will continue the article series with part three where I will explain how to execute the calls to Microsoft Graph API.
The objectives of this article are:
- Execute some Graph API GET calls using sample account
- Look at Microsoft Graph API metadata
- Calling beta API
Execute Graph API GET calls using sample account
Let’s look at some simple GET calls to Microsoft Graph API using the Graph Explorer.
Open the Microsoft Graph Explorer by clicking here.
Check the left section under “Authentication”.
It says currently a sample account provided by Microsoft with some test data is being used. You can fire GET calls using this account right away.
If you see the API endpoint address bar you will notice,
API endpoint for getting user’s profile is already loaded.
Simply click on “Run Query” button to execute the API call.
You will see that the response area of the page is updated with something, like below.
The status in the green background indicates that the call was successful with HTTP status code of 200 and executed in 869 mill seconds.
Look at the JSON data in “Response Preview” section.
It has some data of “user” which is the current user provided by Microsoft sample account. If you are logged in with your account, then you will see your data. I will cover the calls after login with your account later.
There is also something more.
Microsoft Graph API metadata
You might be wondering how to find out what data to expect in an API GET call response or what data to pass in an API call POST request. You can read the Graph API documentation or look at the sample queries on left side section, but there is also another way.
Look at the first line of the JSON response,
You will see a URL for “@odata.context” property.
Copy the URL and paste in a new tab.
You will see it loads an XML file. A big XML file. That’s the OData documentation of the Microsoft Graph API. Microsoft Graph API metadata in other words.
It specifies the different entities and actions along with properties and parameters.
Search for the following in the page- EntityType Name="user".
You will find the user entity along with its properties and navigation properties. You will also find some more entities, more actions, functions. You can also see the Graph API metadata page directly here,
- For V1
- https://graph.microsoft.com/v1.0/$metadata
- For beta
- https://graph.microsoft.com/beta/$metadata
The following lines are taken from the Microsoft Graph website as it is:
“The metadata allows you to see and understand the Microsoft Graph data model, including the entity types, complex types, and enums that make up the resources represented in the request and response packets.
You can use the metadata to understand the relationships between entities in Microsoft Graph and establish URLs that navigate between those entities.
Path URL resource names, query parameters, and action parameters and values are not case sensitive. However, values you assign, entity IDs, and other base64-encoded values are case sensitive.”
For the scope of this article, I will not go deeper inside this XML file and will leave it to you to explore more.
Back to the Graph Explorer
If you place your mouse cursor in the API address bar and press back space key and remove everything till “v1.0/” you will see the Graph Explorer will hint you possible API endpoints you can fire,
Similarly, if you start typing “me/” then it will show you possible endpoints after “me”
Now, type https://graph.microsoft.com/v1.0/organization in the address bar and press “Run Query” button, you will see the logged in user’s organization info,
Please note that in Microsoft Graph API “me” and “organization” are the only two aliases in Microsoft Graph API i.e. these two are not the actual objects in Office 365.
If you want to test more GET calls, then you can see list of some GET calls in left section under “Sample Queries”.
More GET calls featured scenarios can be found here on Microsoft Graph website,
Calling API in preview
Now, let’s see how to call some Graph API endpoints which are still in preview i.e. in beta.
Change the API version to “Beta” in the version lookup,
Copy and paste https://graph.microsoft.com/beta/me/insights/trending in the API endpoint address bar and press “Run Query” button,
You will see the names of some documents are returned with their “weight”. These are the “trending” documents around the user and you need to write some code to convert the “weight” of each document to some meaningful representation to end user.
But the purpose of making this call is to make you understand how to fire a beta API call in Microsoft Graph Explorer.
Now change the API version to V1.0, keep the API endpoint URL same and fire the call,
You will see it returns an error, because this endpoint is only in beta version and not yet in V1.0.
I hope you will play with Microsoft Graph Explorer and fire some more GET calls until I write the next article and we continue the journey of learning with the new Microsoft Graph Explorer.
See you in the next article.