This document provides an overview and summary of Microsoft Graph and related cognitive services. It begins with an introduction to why Microsoft Graph is important and then outlines the agenda which includes announcements from Ignite and Build conferences, getting started tools and resources, API highlights and demos, and next steps. It then dives into each section providing more details on Microsoft Graph capabilities and integrations, cognitive services like LUIS and custom vision, SDKs and libraries, authentication, permissions, and data security best practices. Live demos are also provided to showcase Microsoft Graph functionality and tools.
9. Microsoft 365 Platform
Standalone web, device,
and service apps
Extensions
Embedded canvases
Microsoft Graph
Groups
People
Conversations
Files
Insights
10. Users Groups Outlook OneNote
Insights
and more…
SharePoint IntuneTeams Azure ADPlanner Excel
https://graph.microsoft.com
Your appOne endpoint
One token
All users
Microsoft Graph
Access user, group and organizational data
11. 1B+Meetings scheduled each
month with Office 365
181Countries with Knowledge
Workers using Office 365
65M+Enterprise Mobility seat
install base (+55% YoY)
90%Fortune 500 companies
have data in
Microsoft Graph
135M+Monthly active users in
Office 365
1.1BIdentities authenticated
each month
12. WHY IS MICROSOFT GRAPH IMPORTANT?
IGNITE/BUILD ANNOUNCEMENTS
GETTING STARTED AND TOOLS
API HIGHLIGHTS AND DEMOS
NEXT STEPS
13. your
Users, Groups, Organizations
Outlook
SharePoint
OneDrive
Teams
Planner
Excel
OneNote
Activities
Device Relay
Commands
Notifications
Azure AD
Intune
Identity Manager
Advanced Threat Analytics
Advanced Threat Protection
Mail, Calendar,
Contacts and Tasks
Sites and Lists
Drives and Files
Channels, Messages
Tasks and Plans
Spreadsheets
Notes, and more…
Identity Management
Access Control
Synchronization
Domains
Administrative Units
Applications and Devices
Advanced Threat Analytics
Advanced Threat Protection
Alerts
Policies
and more…
Office 365 Windows 10 Enterprise Mobility + Security
https://graph.microsoft.com
Dynamics 365
Financials
14. Generally Available ( /v1.0 ) Preview ( /beta )
Office 365
Exchange (Get MailTips)
OneDrive (Preview, Followed docs)
AAD (Device Configuration)
EMS
Security (Alerts)
Office 365
Exchange (Get free/busy data, Add custom internet headers to
message)
SharePoint (Sharing Links, Followed content, Pages and List Views
API’s)
Dynamics
Business Central (Financials)
EMS
AAD (Risky users, Sign-in, Access review, B2x ext user state)
Teams (Tab creation, Calling, App Context, Provisioning, Classroom
creation)
Security (Secure Score)
Coming by EOY CY18
AAD (Applications)
Exchange (Get MIME content of messages)
Data sets
15. Generally Available ( /v1.0 ) Preview ( /beta )
Delta – return only changed properties for delta query on
Azure AD objects (user and groups)
Webhooks – notifications on user/group is
created/modified/deleted
Microsoft Graph data connect (announced at //build/
2019)
Delta – query for new entities: apps, servicePrinicipals,
directoryRoles
Ability to delta query base type /directoryObjects and use isOf
filter to select 1 or more derrived types. E.g. use a single DQ to
sync user and group objects
Project Rome (User Notifications)
Coming by EOY CY18
Webhooks – "Rich webhooks" for Microsoft Team "messages" -
the app can now subscribe to receive notifications with the actual
content
Capabilities
16. Generally Available ( /v1.0 ) Preview ( /beta )
.Net – 1.11.0 Nuget package update
PHP – 1.3.3 Composer update
Java – General Availability
Javascript – Core library as a npm package
Typescript Types – npm package. Soon to be available on
DefinitelyTyped also.
Objective C (preview)– Support for core Graph
functionailty
PHP
Typescript Types
.Net – Coming soon
Java – Coming soon
SDKs
SDKs are all OSS on https://github.com/microsoftgraph
17. WHY IS MICROSOFT GRAPH IMPORTANT?
IGNITE/BUILD ANNOUNCEMENTS
GETTING STARTED AND TOOLS
API HIGHLIGHTS AND DEMOS
NEXT STEPS
22. App types and permissions
Users can consent for their data or admin can consent for all users Only admin can consent
Delegated
permissions
User
privileges
App
permissions
Permission type: applicationPermission type: delegated
Get access on behalf of users Get access as a service
Effective permissionEffective permission
https://aka.ms/ConsentAndPermissions
25. Simplifying the developer platform
Your target
audience
ADALClient SDK
App registration
MSAL
Endpoint
26. Simplifying the developer platform
Your target
audience
Endpoint
ADAL MSALClient SDK
App registration
27. Microsoft Authentication Libraries (MSAL) –
Up Next
Targeting GA by early spring:
JavaScript, AngularJS, .NET, UWP, Xamarin, Android, iOS
GA is quality driven, we need your feedback!
30. DEMO: TRAVERSING THE MICROSOFT
GRAPH USING CLIENT LIBRARIES
https://github.com/microsoftgraph/msgraph-sdk-javascript
MSGraphClient in SPFx
31. Data security &
governance
Granular
consent to data
Access to
data at scale
insight & analytics
Dataset based access
rather than real time
API based access
Row and column level
scoping with advanced
filtering capability
Control and visibility over
your data throughout its
entire lifecycle
32. Don't Get Throttled!
• Microsoft Graph endpoint is normally performant (dynamic scaling/throttling)
• HTTP 429 (too many requests) response code
• “10,000 requests in a 10-minute period per user”
• App-only perms. count as single user
• Can be throttled on per tenant basis
• Plan for graceful degradation on 429 response
• Respect the Retry-After header
• Check for Rate-Limit-Reason header
• Use webhooks rather than polling
• Retrieve multiple items/request instead of multiple requests
• Use caching and JSON batching where possible
• Use $top, $select etc. to manage payload size
https://www.spdoctor.com/articles/Microsoft_Graph_-_Don't_Get_Throttled!.html
33. Customer’s boundary in
the Microsoft Cloud
Office 365 Azure
Securely extend Office
365 data to Azure
Apply defined data
controls
Data at
scale
Granular
consent
Security &
Governance
Customer data
Product data
Industry data
Enable big data and
machine learning
35. M365 Data
Application
Developer
Customer’s M365 subscription
Customer
O365 Admin
Data Factory Blob Storage Databricks Cosmos DB Web Apps
Cognitive Ser.
App
Customer
Customer’s Azure
Subscription
How it’s built
37. Perceptron (single layer neural
network)
Modelled on biological neurons. Learning
algorithms, e.g. back-propagation of
error-function.
Mark I Perceptron picture credit: Cornell University News Services Records 4-3-15,
Division of Rare and Manuscript Collections, Cornell University Library.
38. Azure Cognitive Services
• Suite of Machine Learning models hosted as a service
• No need to develop your own Machine Learning models
• Ready-to-go AI (pre-trained and trainable)
• Vision
• Speech
• Language
• Knowledge
• Search
• Models developed for you by Microsoft Research
• If you need to develop your own models: Azure Machine
Learning Service, CNTK, AutoML
41. Also available…
• Object Detection (preview)
• Improvements to the machine learning pipeline for image
classification
• Export to Container (export DockerFile + model +service) and to
ONNX
• Up to 250 tags and 50,000 images.
Deploy
46. Sign up for the Office 365
Developer Program
Start at http://dev.office.com
Download Sample Code
Build samples using Visual Studio or
modern web development tools like
NodeJS, Yeoman and Visual Studio
Code:
https://graph.Microsoft.com/get-
started
Think about your business
challenges
Solve real business problems with
Microsoft Graph and Cognitive
Services
CALL TO ACTION
47. thank you
questions?
SPDOCTOR.COM@SPDOCTOR
Bill Ayers
Technical Director
Flow Simulation Ltd.
Jump to Graph Explorer https://aka.ms/ge
StackOverflow tag [MicrosoftGraph]
Training content on
GitHub
https://github.com/Offic
eDev/TrainingContent/
Wrapper APIs, Samples,
etc.
https://github.com/Micr
osoftGraph
Twitter #MicrosoftGraph
Discover what’s coming
with the Microsoft 365
Roadmap
aka.ms/M365Roadmap
Follow me and share this
session
@SPDoctor
#Collabsummit
Microsoft 365 Developer
podcast
https://www.m365devpo
dcast.com
See you at 4pm, Panagenda,
for Office Add-ins!