4. Opportunity
DATA
4T+
emails sent with O365
3B
minutes of Skype calls daily
2B+
meetings created per month
INTELLIGENCEUSERS
90%
of Fortune 500 have MS Cloud
300%
growth in usage of Outlook add-ins
100M
monthly commercial active users
35%
growth in O365 commercial seats
150%
Microsoft Graph API calls this quarter
8T
nodes in the Microsoft Graph
7. Why Office.js
• Cross platform - not only Windows, Mac, but also iOS, Online
• Single sign in - integrate easily with Office 365 account
• Centralized deployment and distribution
• Monetize through Office store
• Use web technology
17. What is Microsoft Graph
GROUPS
ME
CONVERSATIONS CONTENT
INSIGHTS
CONTACTS
PEOPLE
ORGANIZATION
TASKS
EMAIL
EVENTS
DOCUMENTS
DEVICES
CHATS
COLLABORATION
ACTIVITY
TRENDING
SHARED
REPORTS
25. Extensions
Open Extensions
Add untyped data to a resource
https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/opentypeextension
Schema Extensions
Allow you to define a schema to extend and add typed data to a resource
https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/schemaextension
26. Extensions
Open Extension Sample
POST /users/jack@mail.com/extensions
{
extensionName: "social",
twitter: "jack",
github: "jack"
}
PATCH /users/jack@mail.com/extensions/social (Note it is replacing)
{
extensionName: "social",
facebook: "jack"
}
GET /users/jack@mail.com/extensions/social
DELETE /users/jack@mail.com/extensions/social
27. Extensions
Open Extensions
// User 1
{
extensionName: "social",
twitter: "abc"
}
// User 2
{
extensionName: "social",
github: "abc"
}
Schema Extensions
// User 1
{
extensionName: "social",
twitter: "abc"
}
// User 2
{
extensionName: "social",
twitter: "abc"
}
28. Webhook
Monitor changes and deliver notifications to the client
https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/webhooks
29. Webhook
Server
Client
POST /subscriptions (changeType, expirationDateTime)
200 OK
login.microsoftonline.com
myapp.com/listen (validationToken)
myapp.com/listen
Microsoft Graph
myapp.com/callback (accessToken)
WebSocket, HTTP/2, etc.
Office 365 login page
30. Webhook
Temporary
Server
Client
POST /subscriptions (changeType, expirationDateTime)
200 OK
login.microsoftonline.com
myapp.com/listen (validationToken)
myapp.azurewebsites.net
Microsoft Graph
myapp.com/callback (accessToken)
WebSocket, HTTP/2, etc.
Azure
Functions
Office 365 login page