Einblick in die neue Office 365 API

2014-06-11 | Toni Pohl

Die Office 365 API ist relativ neu und seit Mitte Mai in einer neuen Preview-Version verfügbar. Mit der Office 365 APIs können Apps auf Daten aus Office 365 wie E-Mail, Calendar, Contacts, Files und Profilinformation eines Users zugreifen.

image

Die Office 365 API stellt REST APIs und Standard OAuth Authentifizierung bereit und kann somit sowohl von native Apps unter Windows 8, iOS, Android und anderen Plattformen benutzt werden. Microsoft plant in Zukunft die REST APIs weiter aufzupeppen und es werden weitere APIs hinzukommen, etwa für SharePoint, Exchange und Yammer.

Die aktuelle Preview ist bereits cool, aber definitiv wird sich hier noch einiges ändern (wie auch im Vergleich zur vorigen Version): “Do not use them in production.” und Microsoft selbst sagt: “We know there is still much work to do.” und lädt Developer ein, Feedback im Office Developer Platform Customer Feedback  zu geben.

Die ersten Schritte sind rasch getan: Es gibt eine Visual Studio Extension, die es einer App erlaubt, Office 365 Dienste zu benutzen. Dabei werden die erforderlichen NuGet libraries und Sample Code zum Projekt hinzugefügt. Hier gehts zum Download in der Visual Studio Gallery:

Office 365 API Tools - Preview

Nach dem Download erhält man ein etwa 14MB kleines Install-File Microsoft.Office365ApiTools.vsix, welches in Sekundenschnelle installiert ist. Es werden folgende Projekt-Typen unterstützt:

Zuerst erfolgt einen Authentifizierung an Office 365. Das ist deswegen wichtig, weil in diesem Tenant – sprich in diesem AAD - eine App angelegt wird. Mit User Authentifizierung kann dann auf Office 365 Services zugegriffen werden – im selben Tenant oder bei Multi-Domain auch in anderen Tenants.

Zunächst wird über Add/Connected Service… die Verbindung zu einem Office 365 Mandanten hergestellt.

image

Es ist eine Anmeldung mit einem Office 365 Konto erforderlich. Wichtig dabei: Je nach Service kann dies ein normaler Benutzer (ohne besondere Rolle) sein, oder für Zugriff auf AAD muss es ein globaler Admin sein.

image

Die Auswahl der Dienste erfolgt dann über den Service Manager und die Permissions wie hier:

image

Im Service Manager werden nun die gewünschten Dienste ausgewählt und die gewünschten Aktionen selektiert.

Beim Starten der App muss noch Zugriff für die App gewährt werden:

image

Die Office 365 APIs bieten eine ganze Reihe an Samples und zeigen wie der Zugriff auf die verschiedenen Dienste wie Contacts, Calendar, EMails funktioniert.

Hier gleich ein Beispiel. In einer Windows Form App werden beim Button_Click alle User im aktuellen Office 365 Tenant ausgelesen und in eine Liste geschrieben. Der Screenshot zeigt die ganze Magie und das Ergebnis.

image

Wenn ein anderer Office 365 Tenant oder User verwendet werden soll, hilft die Anweisung new Authenticator().ClearCache(); um wieder die User-Authentifizierung zu erhalten.

Hinweis: Wie ich gesehen habe, unterstützt die Preview Release der Office 365 APIs jedoch nur eine begrenzte Anzahl an Elementen. Wie viele sind nicht dokumentiert, ein Call etwa gegen eine Contact List mit vielen Elementen (>50) bringt keinen Fehler aber ein Timeout beim await - trotz Versuchen mit .Take(10) usw.

Auch bin ich gespannt, ob es noch weitere Methoden als bisher in der Preview vorhanden sind in der finalen Office 365 API geben wird. Sinnvoll wäre das meines Erachtens nach etwa für administrative Zwecke und Zugriff auf erweiterte Features wie etwa Mailbox Statistiken o.ä. (die jetzt nur per Exchange Remote PowerShell erreichbar sind…) – oder vielleicht wird es dafür dann eigene REST-Services und Bibliotheken geben, ich bin gespannt.

Die Office 365 APIs können dank der REST-Schnittstelle (wie oben) für verschiedene Arten von Apps eingesetzt werden, damit sind also Apps für Office, SharePoint oder Smartphones möglich wie die folgende Folie von der SPC14 mit ein paar Beispielen zeigt.

image

Links mit weiteren Informationen zur Office 365 API (Preview):

Viel Spaß beim Ausprobieren der neuen Office 365 APIs!

Categories: Microsoft, Developer, Cloud, App, Office365, Office, SharePoint

Source: https://blog.atwork.at/post/2014/06/11/Einblick-in-die-neue-Office-365-API