Microsoft Ignite NZ 25-28 October 2016 SKYCITY, Auckland
Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
95% Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
90% Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
86% Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
81% Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Deep Dive into the Microsoft Graph API (or, Give your Application Office365 Super Powers) M331 Andrew Coates @coatsy http://blogs.msdn.com/acoat
Office Platform WHAT CAN I BUILD? ADD-INS AND WEB PARTS: Microsoft Ignite 2016 9/22/2018 3:16 PM Office Platform WHAT CAN I BUILD? ADD-INS AND WEB PARTS: Make your solution a native part of the modern Office WEB AND DEVICE APPS: Build smarter apps by connecting to Office services VOICE, VIDEO, CONNECTORS, AND BOTS: Create the next generation of productivity solutions © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
State of the world before Microsoft Graph Work and school Personal Many different APIs to access data Separate auth stacks for work and personal
Diverse API styles and endpoints Azure Active Directory Graph API https://graph.windows.net/contoso.com/users https://graph.windows.net/contoso.com/groups Windows Live profile API https://apis.live.net/v5.0/me SharePoint User Profile API https://contoso.sharepoint.com/_api/SP.UserProfiles.PeopleManager/GetMyProperties Exchange HD Picture API https://graph.microsoft.com/v1.0/me/photo Outlook REST API https://outlook.office.com/api/v2.0/me/Messages https://outlook.office.com/api/v2.0/me/Events Office Graph in SharePoint Online https://contoso.sharepoint.com/_api/search/query?Querytext='*'&Properties='GraphQuery:actor(ME,action\:1020,or(action\:1020\,action\:1003,action\:1001,action\:1024,action\:1005,action\:1037,action\:1039,action\:1036)'&SelectProperties='Docid,Title OneDrive for Business API https://contoso-my.sharepoint.com/personal /yina_contoso_com/_api/v2.0/drive https://contoso.sharepoint.com/sites /designCouncil/_api/v2./drive OneDrive API https://api.onedrive.com/v1.0/drive
What is the Microsoft Graph API?
What is Microsoft Graph? 9/22/2018 What is Microsoft Graph? Single API for: Accessing data /me, /users, /groups, /messages, /drive, …. Traversing data /drive/items/<id>/lastmodifiedByUser Accessing insights /insights/trending Work/School and Personal https://graph.microsoft.com/ © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
One Endpoint to Rule them All
State of the world before Microsoft Graph Work and school Personal Many different APIs to access data Separate auth stacks for work and personal
Today’s world with Microsoft Graph https://graph.microsoft.com Work and school Personal …
Unified API style – single endpoint Microsoft Ignite 2016 9/22/2018 3:16 PM Unified API style – single endpoint https://graph.microsoft.com Operation Service endpoint GET my profile https://graph.microsoft.com/v1.0/me GET my files https://graph.microsoft.com/v1.0/me/drive/root/children GET my photo https://graph.microsoft.com/v1.0/me/photo/$value GET my mail https://graph.microsoft.com/v1.0/me/messages GET my calendar https://graph.microsoft.com/v1.0/me/calendar GET my manager https://graph.microsoft.com/v1.0/me/manager GET last user to modify file foo.txt https://graph.microsoft.com/v1.0/me/drive/root/children/foo.txt/lastModifiedByUser GET users in my organization https://graph.microsoft.com/v1.0/users GET group conversations https://graph.microsoft.com/v1.0/groups/<id>/conversations GET people related to me https://graph.microsoft.com/beta/me/people GET my tasks https://graph.microsoft.com/beta/me/tasks GET my notes https://graph.microsoft.com/beta/me/notes/notebooks GET files trending around me https://graph.microsoft.com/beta/me/insights/trending © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Microsoft Graph Announcements at Ignite US 9/22/2018 3:16 PM Microsoft Graph Announcements at Ignite US Hybrid environments (Preview) Exchange 2016 mail, calendar, contacts Microsoft Graph APIs (GA) Excel (GA) Outlook: OpenType extensions (Preview) Outlook: MailTips and online meeting URL (Preview) SharePoint: lists and libraries (Preview) SharePoint/OneDrive: file handlers (Preview) AAD: Administrative Units, Identity Protection, Dynamic Groups Webhooks support (GA) Mail, calendar, and contacts entities (Preview) OneDrive files and folders (Preview) SharePoint webhooks [not yet on Graph] Client libraries (GA) .NET (GA) Android (Preview) Python (Preview) Ruby (Preview) JavaScript (Preview) node.js © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
One Endpoint to Rule them All Microsoft Ignite 2016 9/22/2018 3:16 PM Two s One Endpoint to Rule them All ? © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Production Ready /v1.0/
/v1.0 Capabilities Users Data Extensions OneDrive Excel Outlook Mail Microsoft Ignite 2016 9/22/2018 3:16 PM /v1.0 Capabilities Users Data Extensions OneDrive Excel Outlook Mail Outlook Calendar Personal Contact Groups Directory WebHooks © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Using the /v1.0 endpoint Demo
Subject to Change /beta/
Going forward Hybrid support for more workloads Microsoft 2016 9/22/2018 3:16 PM Going forward Hybrid support for more workloads Additional workloads and new APIs Broader support for webhooks Client libraries for more platforms Deeper Microsoft Graph data extensibility © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
SDKs (because, we’re not animals)
Microsoft Graph SDK Target the /v1.0 branch TechReady 23 9/22/2018 3:16 PM Microsoft Graph SDK Target the /v1.0 branch Decoupled for easy authentication integration Active Directory Authentication Library (ADAL) Microsoft Authentication Library (MSAL) … Available on multiple platforms UWP, iOS, Android and ASP.NET MVC More coming soon… Consistent primitives © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Consistent primitives TechReady 23 9/22/2018 3:16 PM Consistent primitives // C# var user = graphServiceClient.Me.Request().GetAsync(); // Do something... // Java graphServiceClient.getMe().buildRequest().get(new ICallback<User>() { // Do something… }); // Obj-C [[[graphServiceClient me] request] getWithCompletion:^(MSGraphUser *user, NSError *error){ }]; © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Building a UWP App with the Microsoft Graph SDK Demo https://graph.microsoft.io/en-us/docs/get-started/uwp
Resources One Microsoft Graph url to rule them all https://graph.microsoft.io Documentation ChangeLog Graph Explorer Getting Started Github Account with Samples, SDK, Tooling Etc. https://github.com/microsoftgraph Main Office Developer Landing Page https://dev.office.com
Resources (cont) Ignite USA Office Developer Feedback Support Access the Microsoft Graph API to supercharge your line-of-business applications Use Microsoft Graph to reach users on hybrid Exchange 2016 Power your applications with Excel Workbooks as a Service Access intelligence in the Microsoft Graph API Plus lots more (full list) Office Developer Feedback https://officespdev.uservoice.com Support StackOverflow [MicrosoftGraph] and [Office365] Twitter #MicrosoftGraph and #Office365Dev
Deep Dive into the Microsoft Graph API Questions Deep Dive into the Microsoft Graph API M331 Andrew Coates @coatsy http://blogs.msdn.com/acoat
Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
100% Microsoft Ignite 2016 9/22/2018 3:16 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Give you app Office365 Super Powers TODAY graph.microsoft.io
9/22/2018 3:16 PM © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.