Microsoft Graph: Power your apps with M365 services

Mark Stafford Program Manager, Graph Agenda 议程安排 1. Microsoft Graph overview 2. Tooling overview a) For developers b) For citizen developers c) For IT pros Part 1: Microsoft Graph overview What is Microsoft Graph? Microsoft Graph

…is an organization’s data in . For individual users… …and the entire organization Microsoft Graph powers Microsoft 365 experiences TEAMS DELVE SEARCH Microsoft 365 The world’s productivity cloud across work and life

Office 365 EMS Microsoft Graph can power your apps too Office 365 Your tailored Windows 10 experiences or customizations Enterprise Mobility + Security Microsoft Graph

… is an organization’s data in Microsoft 365, accessed through developer and IT pro tools, enabling apps that customize your M365 experience. Apps Extend ours or create your own

For pro developers, Tools citizen developers and IT pros

Data Microsoft 365 Data Microsoft 365

Popular data sets Activities Education Reports Attachments Events Schools Audits Files Search Calendar Financials Secure score Categories Groups Security alerts Charts Identity Sites Classes Lists Social Contacts Mail Subscriptions Conversations Messages Tasks Cross-device experiences Notes Teams Customer booking Notifications Threat intelligence Device configuration Pages Users Device management Places Workbooks Domains Plans … and many more For pro developers, Tools citizen developers and IT pros Pro developer tools

Interfaces Docs & SDKs UX components Microsoft Graph API Graph Explorer Microsoft Graph Toolkit Microsoft Graph data connect Interactive documentation Microsoft Graph connectors Microsoft Graph client libraries (.NET, Java, JS, ObjectiveC, etc) Announcing: Graph Explorer preview Graph Explorer preview

演示 Demo Tools for citizen developers & IT pros

PowerApps Power Automate PowerShell module Dev skills optional Automate business processes Preferred tool for IT pros Start with app templates Pre-built and custom connectors Announcing preview module Use pre-built components Apps Extend ours or create your own

Extend Microsoft 365 experiences Build your experience

Web Bots & Device Daemon Workflow Documents Conversations Portals Timeline Search Analytics apps agents & native apps automation apps Meeting Capture Teams App Approval Bot Meeting RSVP reminder Flow

演示 Demo

Microsoft Graph

… is an organization’s data in Microsoft 365, accessed through developer and IT pro tools, enabling apps that customize your M365 experience. Part 2: Tooling overview Pro developer tools

Interfaces Docs & SDKs UX components Microsoft Graph API Graph Explorer Microsoft Graph Toolkit Microsoft Graph data connect Interactive documentation Microsoft Graph connectors Microsoft Graph client libraries (.NET, Java, JS, ObjectiveC, etc) Microsoft Graph API

GET https://graph.microsoft.com/v1.0/users { "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users", "value": [ { "businessPhones": [], "displayName": "Conf Room Adams", "givenName": null, "jobTitle": null, "mail": "[email protected]", "mobilePhone": null, "officeLocation": null, "preferredLanguage": null, "surname": null, "userPrincipalName": "[email protected]", "id": "6e7b768e-07e2-4810-8459-485f84f8f204" }, { "businessPhones": [ "+1 425 555 0109" ], "displayName": "Adele Vance", "givenName": "Adele", "jobTitle": "Product Marketing Manager", Getting started with Microsoft Graph API

演示 Demo Ignite 2019 API announcements

Generally Available ( /v1.0 ) Preview ( /beta )

Office 365 Office 365 Exchange (Get MIME messages, Get MIME item attachments, Exchange (Large attachment support, Places API, propose alternate meeting translateExchangeId, get/set mailboxSettings date and time format, add times, new properties in Calendar, ) message parameter to reply function) Teams (Resource-specific consent) New Profile entity set EMS AAD (Application API, last changed password, organizational contacts, EMS Policy API, cert-based auth configuration) AAD (Conditional Access API, password credential changes and add/remove password, last sign-in time, manage B2C user provisioning, directory RBAC Microsoft Graph data connect APIs, B2C trust framework key management, B2C user flows configuration, New data type sets (Teams 1:N chat) manage password SSO credentials, evaluate dynamic group membership) New features (development pack for onboarding, revamped business model, provide M365 data to Open Data Initiative customers) Microsoft Search Files (ODB), email messages, calendar events, Files (SPO ranked alongside Notifications ODB), connectors files, connectors UDT Lite notification SDK (Windows, iOS, Android), Lite Notification JavaScript SDK, authentication via MSALMSAL Graph Connectors Connectors API, Microsoft-built connectors https://aka.ms/graphwhatsnew Microsoft Graph cross-platform libraries

Tier 1

Tier 2 Announcing: Microsoft Graph PowerShell public preview PowerShell SDK

演示 Demo Manage users Invite guest users Ignite 2019 docs & SDKs announcements

Generally Available Preview

SDK Service Library Refresh Graph Explorer V4 V1.0 .NET, Typescript, Java, PHP, Objective-C Beta .NET, Typescript, PHP PowerShell SDK

SDK Core Releases SDK Core Releases .NET – Version 1.18 .NET – Version 1.19-preview JavaScript – Version 2.0 SDK Features SDK Features .NET Batch Enhancements .NET Customizable Service Library .NET Chaos Handler .NET DeltaResponseHandler Docs JavaScript Chaos Handler SDK Conceptual Documentation Docs Embedded try experience

SDKs and Toolkit are all OSS on https://github.com/microsoftgraph Announcing: Microsoft Graph connectors public preview Ingest your own data to Microsoft Graph to appear in search results Your custom data shows up in Microsoft Search Indexing API and Search

演示 Demo

Microsoft Graph data connect Fast, secure, automated data pipeline to bulk import M365 data into Azure Apps with Microsoft Graph data connect Customer’s Azure subscription Azure Cognitive Svc

Developer

Data Factory Blob Storage Databricks Cosmos DB Web Apps

Microsoft Graph data connect

M365 admin User M365 data

Customer’s M365 subscription Announcing: Microsoft Graph Toolkit GA A collection of framework-agnostic Web components powered by Microsoft Graph Microsoft Graph Toolkit

✓ Use from ✓ Web apps ✓ Teams Tabs ✓ SharePoint Web Parts Login Agenda

People

Tasks People picker Tasks

Person Card Modernizing apps Control access to your data

Transition Legacy Modern (OAuth 2.0 + of old (Basic Auth + Old data (OAuth 2.0 + Microsoft data access protocols & access protocols) Graph) Microsoft Graph) Authentication Username + password Access token Scoped access token Revocation   

App assignment   

MFA and CA   

Access traceability   

Granular permissions   

New functionality    Path forward

New apps Existing apps On-prem apps

Start with Microsoft Identity Decommission Basic auth use Only OAuth-based authentication Start with Microsoft Graph Migrate to Microsoft Graph Only legacy APIs

Use two code bases https://graph.microsoft.com