SlideShare a Scribd company logo
CLOUD JOURNEY USER GROUP
SHARE TO CARE
How to use Microsoft Graph in your
Applications
MOHAMED ASHIQ FALEEL THIRUNAVUKARASU KANNAPPAN
Sanjiv Venkatram
https://www.linkedin.com/in/ashiqf/
@AshiqFaleel
ashiqf@gmail.com
https://ashiqf.com
https://www.linkedin.com/in/thirubaikm/
@thirubai
https://www.linkedin.com/in/Sanjiv-venkatram/
@VenkatramSanjiv
http://prudentia-consulting.com
Agenda
• Keynote from Sanjiv
• Overview of Microsoft Graph
• Authentication Flows
• Tools to call Microsoft Graph
• Demo - Dotnet Core using Graph SDK
• Demo - Power Automate using HTTP connector
• Demo - Power Apps & Power Automate using Custom Connector
• Overview of Graph Toolkit
• Demo – Graph Toolkit
• Q&A
Overview of Microsoft Graph
Users Groups Outlook Calendar SharePoint
Dynamics
365 Central
Intune
Teams Azure AD
OneDrive Planner
https://graph.microsoft.com
Your app
Gateway to data
Unified programmability
model
Single endpoint
Graph Connector:
Delivering external data
to the Microsoft cloud
into Microsoft Graph
services and applications
Data Connect: Delivery of
Microsoft Graph data to
popular Azure data
stores
Overview of Microsoft Graph - Contd
Accessing
Microsoft
Graph
Microsoft
Graph REST
API
Any platform and framework
Issue HTTP Requests and
process Responses
Microsoft
Graph
Native SDKs
Abstract layer for constructing,
submitting and processing REST
requests & responses
SDK for .NET, iOS, Android, Java,
PHP, Python, JavaScript, Node.js
etc
Pre-requisites
• Application in Microsoft
identity platform
• Establish trust
relationship between
the app and identity
provider
• Web
• Mobile/desktop app
• Web API
Overview of Microsoft Graph - Contd
• Filter, Search, Count, Orderby, delta, expand..
Advanced queries
• Combine multiple requests in one HTTP call using JSON batching
Batching
• If an overwhelming no of request occurs, throttling helps maintain
optimal performance
Throttling
• Webhook mechanism to deliver change notification to clients
• Supports various no. of resources like Outlook, user, group, teams
chatmessage, SP List item etc
Change Notifications
Types of permissions
Microsoft Identity defines two types of permissions
• Access API as signed-in user
• User can consent for their data or admin can
consent for all users
Delegated permissions
• Access API as daemon/without user interaction
• Only global admin can consent
Application permissions
Authentication Flows / Permission
Models
Delegated
Permissions
•Authorization Code
•Desktop/Mobile/Web Apps
•Device Code
•Desktop/Mobile Apps
•On behalf of
•Web APIs
•Username/password
•Desktop/mobile apps
•Integrated Windows Authentication (IWA)
•Azure AD Joined
•Desktop Apps
Application
Permissions
•Client Credentials
•Daemon Apps
Tools
• Graph Explorer
• Make requests and see responses against the Microsoft Graph
• https://developer.microsoft.com/en-us/graph/graph-explorer
• Postman
• Enables developers to test RESTful APIs
• https://www.postman.com/downloads
• https://docs.microsoft.com/en-us/graph/use-postman
• .NET Fiddle
• https://dotnetfiddle.net/
• JS Fiddle
• https://jsfiddle.net/
• Decode token
• https://jwt.ms
Demo - Dotnet Core Graph SDK & MSAL
Microsoft
Authentication
Library (MSAL)
Enables developers to acquire tokens
On behalf of user or on behalf of application
Maintains token cache and refreshes tokens when close to expire
Available for different platforms
NPM, Nuget
Graph SDK Simplifies graph calls
Application Permissions
• Client Credentials
Delegated Permissions
• On behalf of
• Device code flow
Demo – Graph in Power Automate using HTTP
connector
HTTP
Connector Premium
Application
Permissions Client Credentials
Delegated
Permissions UserName/Password
Demo – Graph in Power Apps & Power
Automate using Custom Connector
Custom
Connector
Premium
Delegated
Permissions
On behalf of
Overview of Graph Toolkit
Why use graph toolkit?
Cut development
time
Beautiful but
flexible
Works everywhere
Responsive Layout
Demo – Graph Toolkit
References
https://docs.microsoft.com/en-us/learn/paths/m365-msgraph-associate/
Overview of MS Graph: https://docs.microsoft.com/en-us/graph/overview
Graph Auth Overview: https://docs.microsoft.com/en-us/graph/auth/
Microsoft Identity Platform: https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-overview
MSAL: https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-overview
Graph SDK: https://docs.microsoft.com/en-us/graph/sdks/sdks-overview
Authentication Flows: https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows
Register an application: https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app
Consent of Application: https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-permissions-and-
consent
https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth-ropc
Webhooks: https://docs.microsoft.com/en-us/graph/api/resources/webhooks?view=graph-rest-1.0
https://ashiqf.com/2020/11/01/teams-presence-light-with-raspberry-pi/
https://ashiqf.com/2020/10/25/tools-to-call-microsoft-graph-api-endpoints-as-a-user-and-application/
https://ashiqf.com/2019/12/15/get-attendees-details-of-a-meeting-event-using-power-automate-ms-flow/
https://ashiqf.com/2020/06/16/batch-sharepoint-requests-get-post-patch-delete-in-powerautomate-and-ms-graph/
Graph Toolkit Lab: https://aka.ms/mgtlap
Github repo Graph toolkit: https://aka.ms/mgt
Graph toolkit playground: https://mgt.dev
https://github.com/ashiqf
Thank you
https://www.meetup.com/cloudjourneyusergroup/

More Related Content

What's hot

Microsoft Azure Overview Class 1
Microsoft Azure Overview Class 1Microsoft Azure Overview Class 1
Microsoft Azure Overview Class 1
MH Muhammad Ali
 
Introduction of microsoft azure
Introduction of microsoft azureIntroduction of microsoft azure
Introduction of microsoft azure
Karthik Perugupalli
 
Microsoft azure
Microsoft azureMicrosoft azure
Microsoft azure
Mohammad Ilyas Malik
 
Windowsazureplatform Overviewlatest
Windowsazureplatform OverviewlatestWindowsazureplatform Overviewlatest
Windowsazureplatform Overviewlatest
rajramab
 
Microsoft Azure Cloud Services
Microsoft Azure Cloud ServicesMicrosoft Azure Cloud Services
Microsoft Azure Cloud Services
David J Rosenthal
 
Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)
Maarten Balliauw
 
Azure architecture
Azure architectureAzure architecture
Azure architecture
Amal Dev
 
Windows azure jump start - ppt's - 2-6-2017
Windows azure   jump start - ppt's - 2-6-2017Windows azure   jump start - ppt's - 2-6-2017
Windows azure jump start - ppt's - 2-6-2017
Girish Kalamati
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services Platform
David Chou
 
Adelaide Global Azure Bootcamp 2018 - Azure 101
Adelaide Global Azure Bootcamp 2018 - Azure 101Adelaide Global Azure Bootcamp 2018 - Azure 101
Adelaide Global Azure Bootcamp 2018 - Azure 101
Balabiju
 
Microsoft Azure Overview
Microsoft Azure OverviewMicrosoft Azure Overview
Microsoft Azure Overview
David J Rosenthal
 
Windows Azure Platform
Windows Azure PlatformWindows Azure Platform
Windows Azure Platform
David Chou
 
Cloud Computing and Microsoft Azure
Cloud Computing and Microsoft AzureCloud Computing and Microsoft Azure
Cloud Computing and Microsoft Azure
Suhail Jamaldeen
 
Microsoft Azure for Small and Medium Businesses
Microsoft Azure for Small and Medium Businesses Microsoft Azure for Small and Medium Businesses
Microsoft Azure for Small and Medium Businesses
Atanas Gergiminov
 
Introduction to Azure
Introduction to AzureIntroduction to Azure
Introduction to Azure
Robert Crane
 
Azure 10 major services
Azure 10 major servicesAzure 10 major services
Azure 10 major services
Arnab Chakraborty,PMP
 
The Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft AzureThe Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft Azure
Microsoft Azure
 
Seminar report on microsoft azure
Seminar report on microsoft azureSeminar report on microsoft azure
Seminar report on microsoft azure
Mohammad Ilyas Malik
 
Windows Azure Platform Overview
Windows Azure Platform OverviewWindows Azure Platform Overview
Windows Azure Platform Overview
BusinessIntelligenze
 
Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)
Chris Dufour
 

What's hot (20)

Microsoft Azure Overview Class 1
Microsoft Azure Overview Class 1Microsoft Azure Overview Class 1
Microsoft Azure Overview Class 1
 
Introduction of microsoft azure
Introduction of microsoft azureIntroduction of microsoft azure
Introduction of microsoft azure
 
Microsoft azure
Microsoft azureMicrosoft azure
Microsoft azure
 
Windowsazureplatform Overviewlatest
Windowsazureplatform OverviewlatestWindowsazureplatform Overviewlatest
Windowsazureplatform Overviewlatest
 
Microsoft Azure Cloud Services
Microsoft Azure Cloud ServicesMicrosoft Azure Cloud Services
Microsoft Azure Cloud Services
 
Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)
 
Azure architecture
Azure architectureAzure architecture
Azure architecture
 
Windows azure jump start - ppt's - 2-6-2017
Windows azure   jump start - ppt's - 2-6-2017Windows azure   jump start - ppt's - 2-6-2017
Windows azure jump start - ppt's - 2-6-2017
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services Platform
 
Adelaide Global Azure Bootcamp 2018 - Azure 101
Adelaide Global Azure Bootcamp 2018 - Azure 101Adelaide Global Azure Bootcamp 2018 - Azure 101
Adelaide Global Azure Bootcamp 2018 - Azure 101
 
Microsoft Azure Overview
Microsoft Azure OverviewMicrosoft Azure Overview
Microsoft Azure Overview
 
Windows Azure Platform
Windows Azure PlatformWindows Azure Platform
Windows Azure Platform
 
Cloud Computing and Microsoft Azure
Cloud Computing and Microsoft AzureCloud Computing and Microsoft Azure
Cloud Computing and Microsoft Azure
 
Microsoft Azure for Small and Medium Businesses
Microsoft Azure for Small and Medium Businesses Microsoft Azure for Small and Medium Businesses
Microsoft Azure for Small and Medium Businesses
 
Introduction to Azure
Introduction to AzureIntroduction to Azure
Introduction to Azure
 
Azure 10 major services
Azure 10 major servicesAzure 10 major services
Azure 10 major services
 
The Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft AzureThe Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft Azure
 
Seminar report on microsoft azure
Seminar report on microsoft azureSeminar report on microsoft azure
Seminar report on microsoft azure
 
Windows Azure Platform Overview
Windows Azure Platform OverviewWindows Azure Platform Overview
Windows Azure Platform Overview
 
Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)
 

Similar to How to use Microsoft Graph in your applications

Microsoft graph a way to build secure and smart apps
Microsoft graph a way to build secure and smart appsMicrosoft graph a way to build secure and smart apps
Microsoft graph a way to build secure and smart apps
Sjoukje Zaal
 
Microsoft Graph and Azure Functions - SharePoint User Group Frankfurt
Microsoft Graph and Azure Functions - SharePoint User Group FrankfurtMicrosoft Graph and Azure Functions - SharePoint User Group Frankfurt
Microsoft Graph and Azure Functions - SharePoint User Group Frankfurt
Dragan Panjkov
 
Microsoft graph and power platform champ
Microsoft graph and power platform   champMicrosoft graph and power platform   champ
Microsoft graph and power platform champ
Kumton Suttiraksiri
 
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
Vincent Biret
 
An introduction to Microsoft Graph for developers
An introduction to Microsoft Graph for developersAn introduction to Microsoft Graph for developers
An introduction to Microsoft Graph for developers
Microsoft 365 Developer
 
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
Vincent Biret
 
#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...
#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...
#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...
Vincent Biret
 
Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...
Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...
Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...
Frederik Bisback
 
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
Vincent Biret
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services
Marco Parenzan
 
SPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business AppSPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business App
Usama Wahab Khan Cloud, Data and AI
 
SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...
SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...
SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...
Sébastien Levert
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile Services
Anubhav Ranjan
 
Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...
Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...
Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...
Vincent Biret
 
Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017
Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017
Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017
Nilesh Shah
 
BlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure AD
BlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure ADBlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure AD
BlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure AD
BlueHat Security Conference
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdf
Markus Moeller
 
AppsNgen
AppsNgenAppsNgen
AppsNgen
AppsNgen
 
SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...
SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...
SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...
Sébastien Levert
 
Xamarin microsoft graph
Xamarin microsoft graphXamarin microsoft graph
Xamarin microsoft graph
Nicolò Carandini
 

Similar to How to use Microsoft Graph in your applications (20)

Microsoft graph a way to build secure and smart apps
Microsoft graph a way to build secure and smart appsMicrosoft graph a way to build secure and smart apps
Microsoft graph a way to build secure and smart apps
 
Microsoft Graph and Azure Functions - SharePoint User Group Frankfurt
Microsoft Graph and Azure Functions - SharePoint User Group FrankfurtMicrosoft Graph and Azure Functions - SharePoint User Group Frankfurt
Microsoft Graph and Azure Functions - SharePoint User Group Frankfurt
 
Microsoft graph and power platform champ
Microsoft graph and power platform   champMicrosoft graph and power platform   champ
Microsoft graph and power platform champ
 
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
 
An introduction to Microsoft Graph for developers
An introduction to Microsoft Graph for developersAn introduction to Microsoft Graph for developers
An introduction to Microsoft Graph for developers
 
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
 
#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...
#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...
#SPSottawa The SharePoint Framework and The Microsoft Graph on steroids with ...
 
Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...
Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...
Deliver an Enhanced User Experience by Combining Azure, Teams and the Microso...
 
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services
 
SPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business AppSPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business App
 
SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...
SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...
SharePoint Fest DC 2018 - Everything your need to know about the Microsoft Gr...
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile Services
 
Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...
Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...
Granite state #spug The #microsoftGraph and #SPFx on steroids with #AzureFunc...
 
Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017
Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017
Power of Microsoft Graph API by Nilesh Shah SharePoint Saturday Toronto 2017
 
BlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure AD
BlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure ADBlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure AD
BlueHat Seattle 2019 || I'm in your cloud: A year of hacking Azure AD
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdf
 
AppsNgen
AppsNgenAppsNgen
AppsNgen
 
SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...
SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...
SPS Utah - Everything your need to know about the Microsoft Graph as a ShareP...
 
Xamarin microsoft graph
Xamarin microsoft graphXamarin microsoft graph
Xamarin microsoft graph
 

Recently uploaded

Updated diagnosis. Cause and treatment of hypothyroidism
Updated diagnosis. Cause and treatment of hypothyroidismUpdated diagnosis. Cause and treatment of hypothyroidism
Updated diagnosis. Cause and treatment of hypothyroidism
Faculty of Medicine And Health Sciences
 
Pro-competitive Industrial Policy – OECD – June 2024 OECD discussion
Pro-competitive Industrial Policy – OECD – June 2024 OECD discussionPro-competitive Industrial Policy – OECD – June 2024 OECD discussion
Pro-competitive Industrial Policy – OECD – June 2024 OECD discussion
OECD Directorate for Financial and Enterprise Affairs
 
Mẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPoint
Mẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPointMẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPoint
Mẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPoint
1990 Media
 
Gregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptxGregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptx
gharris9
 
Competition and Regulation in Professions and Occupations – OECD – June 2024 ...
Competition and Regulation in Professions and Occupations – OECD – June 2024 ...Competition and Regulation in Professions and Occupations – OECD – June 2024 ...
Competition and Regulation in Professions and Occupations – OECD – June 2024 ...
OECD Directorate for Financial and Enterprise Affairs
 
Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...
Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...
Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...
OECD Directorate for Financial and Enterprise Affairs
 
Gregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics PresentationGregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics Presentation
gharris9
 
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie WellsCollapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Rosie Wells
 
Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...
Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...
Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...
SkillCertProExams
 
Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...
Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...
Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...
Suzanne Lagerweij
 
ASONAM2023_presection_slide_track-recommendation.pdf
ASONAM2023_presection_slide_track-recommendation.pdfASONAM2023_presection_slide_track-recommendation.pdf
ASONAM2023_presection_slide_track-recommendation.pdf
ToshihiroIto4
 
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
OECD Directorate for Financial and Enterprise Affairs
 
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Dutch Power
 
Carrer goals.pptx and their importance in real life
Carrer goals.pptx  and their importance in real lifeCarrer goals.pptx  and their importance in real life
Carrer goals.pptx and their importance in real life
artemacademy2
 
Tom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issueTom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issue
amekonnen
 
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Dutch Power
 
Burning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdfBurning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdf
kkirkland2
 
Pro-competitive Industrial Policy – LANE – June 2024 OECD discussion
Pro-competitive Industrial Policy – LANE – June 2024 OECD discussionPro-competitive Industrial Policy – LANE – June 2024 OECD discussion
Pro-competitive Industrial Policy – LANE – June 2024 OECD discussion
OECD Directorate for Financial and Enterprise Affairs
 
Artificial Intelligence, Data and Competition – OECD – June 2024 OECD discussion
Artificial Intelligence, Data and Competition – OECD – June 2024 OECD discussionArtificial Intelligence, Data and Competition – OECD – June 2024 OECD discussion
Artificial Intelligence, Data and Competition – OECD – June 2024 OECD discussion
OECD Directorate for Financial and Enterprise Affairs
 
2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf
Frederic Leger
 

Recently uploaded (20)

Updated diagnosis. Cause and treatment of hypothyroidism
Updated diagnosis. Cause and treatment of hypothyroidismUpdated diagnosis. Cause and treatment of hypothyroidism
Updated diagnosis. Cause and treatment of hypothyroidism
 
Pro-competitive Industrial Policy – OECD – June 2024 OECD discussion
Pro-competitive Industrial Policy – OECD – June 2024 OECD discussionPro-competitive Industrial Policy – OECD – June 2024 OECD discussion
Pro-competitive Industrial Policy – OECD – June 2024 OECD discussion
 
Mẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPoint
Mẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPointMẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPoint
Mẫu PPT kế hoạch làm việc sáng tạo cho nửa cuối năm PowerPoint
 
Gregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptxGregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptx
 
Competition and Regulation in Professions and Occupations – OECD – June 2024 ...
Competition and Regulation in Professions and Occupations – OECD – June 2024 ...Competition and Regulation in Professions and Occupations – OECD – June 2024 ...
Competition and Regulation in Professions and Occupations – OECD – June 2024 ...
 
Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...
Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...
Artificial Intelligence, Data and Competition – ČORBA – June 2024 OECD discus...
 
Gregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics PresentationGregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics Presentation
 
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie WellsCollapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
 
Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...
Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...
Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...
 
Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...
Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...
Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...
 
ASONAM2023_presection_slide_track-recommendation.pdf
ASONAM2023_presection_slide_track-recommendation.pdfASONAM2023_presection_slide_track-recommendation.pdf
ASONAM2023_presection_slide_track-recommendation.pdf
 
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
 
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
 
Carrer goals.pptx and their importance in real life
Carrer goals.pptx  and their importance in real lifeCarrer goals.pptx  and their importance in real life
Carrer goals.pptx and their importance in real life
 
Tom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issueTom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issue
 
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
 
Burning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdfBurning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdf
 
Pro-competitive Industrial Policy – LANE – June 2024 OECD discussion
Pro-competitive Industrial Policy – LANE – June 2024 OECD discussionPro-competitive Industrial Policy – LANE – June 2024 OECD discussion
Pro-competitive Industrial Policy – LANE – June 2024 OECD discussion
 
Artificial Intelligence, Data and Competition – OECD – June 2024 OECD discussion
Artificial Intelligence, Data and Competition – OECD – June 2024 OECD discussionArtificial Intelligence, Data and Competition – OECD – June 2024 OECD discussion
Artificial Intelligence, Data and Competition – OECD – June 2024 OECD discussion
 
2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf
 

How to use Microsoft Graph in your applications

  • 1. CLOUD JOURNEY USER GROUP SHARE TO CARE How to use Microsoft Graph in your Applications MOHAMED ASHIQ FALEEL THIRUNAVUKARASU KANNAPPAN Sanjiv Venkatram https://www.linkedin.com/in/ashiqf/ @AshiqFaleel ashiqf@gmail.com https://ashiqf.com https://www.linkedin.com/in/thirubaikm/ @thirubai https://www.linkedin.com/in/Sanjiv-venkatram/ @VenkatramSanjiv http://prudentia-consulting.com
  • 2. Agenda • Keynote from Sanjiv • Overview of Microsoft Graph • Authentication Flows • Tools to call Microsoft Graph • Demo - Dotnet Core using Graph SDK • Demo - Power Automate using HTTP connector • Demo - Power Apps & Power Automate using Custom Connector • Overview of Graph Toolkit • Demo – Graph Toolkit • Q&A
  • 3. Overview of Microsoft Graph Users Groups Outlook Calendar SharePoint Dynamics 365 Central Intune Teams Azure AD OneDrive Planner https://graph.microsoft.com Your app Gateway to data Unified programmability model Single endpoint Graph Connector: Delivering external data to the Microsoft cloud into Microsoft Graph services and applications Data Connect: Delivery of Microsoft Graph data to popular Azure data stores
  • 4. Overview of Microsoft Graph - Contd Accessing Microsoft Graph Microsoft Graph REST API Any platform and framework Issue HTTP Requests and process Responses Microsoft Graph Native SDKs Abstract layer for constructing, submitting and processing REST requests & responses SDK for .NET, iOS, Android, Java, PHP, Python, JavaScript, Node.js etc Pre-requisites • Application in Microsoft identity platform • Establish trust relationship between the app and identity provider • Web • Mobile/desktop app • Web API
  • 5. Overview of Microsoft Graph - Contd • Filter, Search, Count, Orderby, delta, expand.. Advanced queries • Combine multiple requests in one HTTP call using JSON batching Batching • If an overwhelming no of request occurs, throttling helps maintain optimal performance Throttling • Webhook mechanism to deliver change notification to clients • Supports various no. of resources like Outlook, user, group, teams chatmessage, SP List item etc Change Notifications
  • 6. Types of permissions Microsoft Identity defines two types of permissions • Access API as signed-in user • User can consent for their data or admin can consent for all users Delegated permissions • Access API as daemon/without user interaction • Only global admin can consent Application permissions
  • 7. Authentication Flows / Permission Models Delegated Permissions •Authorization Code •Desktop/Mobile/Web Apps •Device Code •Desktop/Mobile Apps •On behalf of •Web APIs •Username/password •Desktop/mobile apps •Integrated Windows Authentication (IWA) •Azure AD Joined •Desktop Apps Application Permissions •Client Credentials •Daemon Apps
  • 8. Tools • Graph Explorer • Make requests and see responses against the Microsoft Graph • https://developer.microsoft.com/en-us/graph/graph-explorer • Postman • Enables developers to test RESTful APIs • https://www.postman.com/downloads • https://docs.microsoft.com/en-us/graph/use-postman • .NET Fiddle • https://dotnetfiddle.net/ • JS Fiddle • https://jsfiddle.net/ • Decode token • https://jwt.ms
  • 9. Demo - Dotnet Core Graph SDK & MSAL Microsoft Authentication Library (MSAL) Enables developers to acquire tokens On behalf of user or on behalf of application Maintains token cache and refreshes tokens when close to expire Available for different platforms NPM, Nuget Graph SDK Simplifies graph calls Application Permissions • Client Credentials Delegated Permissions • On behalf of • Device code flow
  • 10. Demo – Graph in Power Automate using HTTP connector HTTP Connector Premium Application Permissions Client Credentials Delegated Permissions UserName/Password
  • 11. Demo – Graph in Power Apps & Power Automate using Custom Connector Custom Connector Premium Delegated Permissions On behalf of
  • 12. Overview of Graph Toolkit
  • 13. Why use graph toolkit? Cut development time Beautiful but flexible Works everywhere Responsive Layout
  • 14. Demo – Graph Toolkit
  • 15. References https://docs.microsoft.com/en-us/learn/paths/m365-msgraph-associate/ Overview of MS Graph: https://docs.microsoft.com/en-us/graph/overview Graph Auth Overview: https://docs.microsoft.com/en-us/graph/auth/ Microsoft Identity Platform: https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-overview MSAL: https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-overview Graph SDK: https://docs.microsoft.com/en-us/graph/sdks/sdks-overview Authentication Flows: https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows Register an application: https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app Consent of Application: https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-permissions-and- consent https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth-ropc Webhooks: https://docs.microsoft.com/en-us/graph/api/resources/webhooks?view=graph-rest-1.0 https://ashiqf.com/2020/11/01/teams-presence-light-with-raspberry-pi/ https://ashiqf.com/2020/10/25/tools-to-call-microsoft-graph-api-endpoints-as-a-user-and-application/ https://ashiqf.com/2019/12/15/get-attendees-details-of-a-meeting-event-using-power-automate-ms-flow/ https://ashiqf.com/2020/06/16/batch-sharepoint-requests-get-post-patch-delete-in-powerautomate-and-ms-graph/ Graph Toolkit Lab: https://aka.ms/mgtlap Github repo Graph toolkit: https://aka.ms/mgt Graph toolkit playground: https://mgt.dev https://github.com/ashiqf
  • 16.