Microsoft Graph: Power your apps with M365 services
Mark Stafford Program Manager, Microsoft 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 Microsoft 365. 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 Windows 10 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
People
Tasks People picker Tasks
Person Card Modernizing apps Control access to your data
Transition Legacy Modern (OAuth 2.0 + mix 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