Thomas Claudius Huber Trivadis AG

Als Entwickler ist dieser API-Dschungel für verschiedene Office-365-Dienste etwas schwierig zu handhaben. Aus diesem Grund hat Microsoft eine Fassade namens Microsoft Graph eingeführt.

Um aus der eigenen App auf Office-365-Daten zuzugreifen, gibt es verschiedenste APIs: eins für Azure Active Directory, eins für Outlook, eins für OneDrive, eins für OneDrive for Business, eins für Office in SharePoint Online, eins für das Windows-Live-Profil, eins für das SharePoint-Profil usw. Als Entwickler ist dieser API-Dschungel für verschiedene Office-365-Dienste etwas schwierig zu handhaben. Aus diesem Grund hat Microsoft eine Fassade namens Microsoft Graph eingeführt.

Office 365 ist ein Paket aus mehreren Diensten. Es ist logisch, dass bei Microsoft die Arbeit aufgeteilt wurde und verschiedene Teams an diesen Diensten arbeiten. So gibt es beispielsweise ein Team für Azure Active Directory (AD), eins für OneDrive, eins für Outlook usw. Aufgrund der verschiedenen Teams ist es auch nicht verwunderlich, dass jeder Office-365-Dienst sein eigenes API hat. Diese Tatsache macht das Entwickeln von Anwendungen natürlich nicht einfacher: Wenn mehrere Office-365-Dienste benötigt werden, muss man im eigenen Code mit verschiedenen APIs zurechtkommen. Manchmal haben die APIs dabei Entitäten, die eigentlich das gleiche repräsentieren, wie beispielsweise einen „User“. Aber genau dieser User ist dann in unterschiedlichen APIs anders abgebildet und hat unterschiedliche Eigenschaften. Somit kämpft man als Entwickler nicht nur mit unterschiedlichen APIs, sondern auch mit inkonsistenten Entitäten über die APIs hinweg. Microsoft Graph ist ein einziger Endpunkt, mit dem Entwickler auf Office-365-Daten zugreifen und auch Aktionen ausführen können, wie beispielsweise Dateien bearbeiten oder E-Mails versenden. Dieser Artikel zeigt die Grundlagen zu Microsoft Graph.

Ein detaillierter Blick auf die APIs

Schaut man sich die APIs für Office-365-Dienste zum ersten Mal an, ist es schwierig, einen Überblick zu bekommen. Zum Zugriff auf OneDrive lautet das API https://api.onedrive.com/v1.0/drive. Dieses API ist für das persönliche Konto. Hat ein Benutzer ein Office-365-Abo mit einem Geschäfts-/Schulkonto, dann nutzt er OneDrive for Business. Das API lautet dann https://contoso-my.sharepoint.com/personal/user_contoso_com/_api/v2.0/drive. Dabei stellt contoso-my den Tenant der Firma dar und user_contoso_com den Benutzer.

Mit Office 365 kommt auch Azure AD zum Einsatz. Mit folgenden APIs lassen sich Benutzer https://graph.windows.net/contoso.com/users und Gruppen https://graph.windows.net/contoso.com/groups abfragen. Auch ein Zugriff auf Outlook ist möglich. So lassen sich wie folgt Nachrichten https://outlook.office.com/api/v2.0/me/Messages und Termine https://outlook.office.com/api/v2.0/me/Events abfragen.

Möchte man das Profil eines Benutzers abfragen, um in der eigenen App bspw. Benutzerinformationen darzustellen, gibt es für das persönliche Konto das API https://apis.live.net/v5.0/me und für das Geschäfts-/Schulkonto das API https://contoso.sharepoint.com/_api/SP.UserProfiles.PeopleManager/GetMyProperties.

Die Liste mit verschiedenen APIs ließe sich noch weiter fortsetzen. Doch glücklicherweise hat Microsoft mit Microsoft Graph eine große Vereinfachung eingeführt, um auf Office-365-Dienste einheitlich zuzugreifen.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Windows Developer 12.16 - "Der DevOps Vorteil"

Alle Infos zum Heft
297593Apps & Office 365: Datenzugriff mit Microsoft Graph
X
- Gib Deinen Standort ein -
- or -