SlideShare a Scribd company logo
1 of 30
Download to read offline
#SDO365S
#SDO365S
Event sponsored by
Martha Castiglia in
Loving Memory of Tom
4282 Esplanade Court,
San Diego, CA 92122
Platinum Sponsor
Gold Sponsor
Silver Sponsor
Web Sponsors
Thank you to our Sponsors!
Raffle Prize Sponsor Venue Sponsor
#SDO365S
4
Background:
• Office 365
• SharePoint Development & Administration
• Server Administration, VMWare, CISCO
• C#, PowerShell, .NET, FHIR, Objective-C,
• Meditech, EPIC, Cerner, Allscripts, Dragon
Previous Clients:
• Poudre Valley Healthcare
• Providence Health & Services
• Kern Medical
Current Focus:
• Teams as the HUB
• Teams & Office 365 Development
• CDS, Entities, PowerApps, Power Automate 4
Chris Barber
Solutions Architect
#1
Ranked
Office 365 NSP
1 of 16
SP Partner
Advisory Council
Charter
Member
MSFT Content
Services Program
MVP
Office 365
6M+
Users Migrated to
Office 365
Charter
Member
MSFT Biz Apps
Program
350+
SharePoint
& O365 U.S.
Consultants
1M+
Hours on
SharePoint
Projects
20+
Public
Websites
200+
Sites on SharePoint
Onprem / Online
1500+
SharePoint
Projects
Delivered
50+
Azure Migrations
Gold
Microsoft Partner
Dedicated
CX Agency
Change Mgmt.
Member
Teamwork
Partner Advisory
Council (PAC)
95%
Repeat
Business Rate
FastTrack
Ready
Partner
Member
MSFT Portal
Partner Program
• Create a SharePoint list
• Create workflow for Teams automation
Power Platform
• Create Power Automate
• Add Graph API & Custom Connector
• Show Management App
SharePoint
#SDO365S
6
Create Connector
• Graph API Overview
• Create app registration
• Create custom connector
The goal of this workshop is to create a connector which allows us to dynamically create teams
based on pre-defined templates.
7
Microsoft Graph exposes REST APIs and client
libraries to access data on the following Microsoft
365 services:
• Office 365 services: Delve, Excel, Microsoft
Bookings, Microsoft Teams, OneDrive, OneNote,
Outlook/Exchange, Planner, and SharePoint
• Enterprise Mobility and Security services:
Advanced Threat Analytics, Advanced Threat
Protection, Azure Active Directory, Identity
Manager, and Intune
• Windows 10 services: activities, devices,
notifications
• Dynamics 365 Business Central
8
The Microsoft Graph Explorer is a Web interface for
exploring Microsoft Graph APIs. Consider it as a
developer's sandbox where you can run any
request command, such as GET, and get a response
back from Office 365 in JSON format.
Note: When utilizing please ensure you use a test
account to access Office 365 data to avoid
accidentally updating or deleting production
environment information.
https://developer.microsoft.com/en-us/graph/graph-explorer
9
https://developer.microsoft.com/en-us/graph/graph-explorer
https://docs.microsoft.com/en-us/graph/
https://docs.microsoft.com/en-us/graph/tutorials/flow
10
What is a custom
connector?
Why would we use
a connector?
Sharing a
connector?
11
What is a custom connector?
Microsoft offers over 230+ connectors to connect
to Microsoft and non-Microsoft services out of the
box. In some circumstances you may want to
communicate with services that aren't available
as prebuilt connectors though.
Custom connectors address this scenario by
allowing you to create and even share a
connector with its own triggers and actions.
12
Why would we use a custom connector?
- Availability
- HTTP Connector? Premium & Single
- Reuse
- Expansion & Controls
13
How to share a connector?
• Go to powerapps.com or flow.microsoft.com.
• In the upper right corner, choose the gear icon, then choose Custom connectors.
• Choose the ellipsis button for your connector, then choose Invite another user.
• On the Share tab, under Add people, enter the users or groups you want to share
with. Choose a permission of Can view or Can edit, then choose Save.
14
How do we setup a connector:
• Create an Azure App Registration
• Create a custom connector
• Authorize the connector
• Create the flow
15
1. Open a browser and navigate to Azure Active Directory admin
center. Choose the Azure Active Directory link in the left navigation
menu, then choose the App registrations entry in
the Manage section of the Azure Active Directory blade.
2. Choose the New registration menu item at the top of the App
Registrations blade.
3. Enter MS Graph Batch App in the Name field. In the Supported
account types section, select Accounts in any organizational
directory. Leave the Redirect URI section blank and choose Register.
4. On the MS Graph Batch App blade, copy the Application (client) ID.
You'll need this in the next exercise.
5. Choose the API permissions entry in the Manage section of the MS
Graph Batch App blade. Choose Add a permission under API
permissions.
16
6. In the Request API permissions blade, choose the Microsoft Graph,
then choose Delegated permissions. Search for group, then select
the Read and write all groups delegated permission. Choose Add
permissions at the bottom of the blade.
7. Choose the Certificates and secrets entry in the Manage section of
the MS Graph Batch App blade, then choose New client secret.
Enter forever in the Description and select Never under Expires.
Choose Add.
8. Copy the key value for the new key. You'll need this in the next
exercise.
Note: To enable management of additional services accessible via the Microsoft Graph, including
Teams properties, you would need to select additional, appropriate scopes to enable managing specific
services.
17
• The Open API definition file is prebuilt with the
correct path for the Microsoft
Graph $batch endpoint and additional settings to
enable simple import.
• Using a text editor, create a new empty file
named MSGraph-Delegate-
Batch.swagger.json and add the following code.
• Open a browser and navigate to Microsoft Flow.
Sign in with your Office 365 tenant administrator
account. In the left-hand menu,
expand Data and choose Custom connectors.
18
• On the Custom connectors page choose the New custom
connector link in the top right, then select the Import an
OpenAPI file item in the drop-down menu. Enter MS Graph
Batch Connector in the Connector name text box.
Choose Import button to upload the Open API file. Browse to
the MSGraph-Delegate-Batch.swagger.json file you created.
Choose Continue to upload the OpenAPI file.
19
• After the connector has been created, copy the
generated Redirect URL
• Go back to the registered application in the Azure Portal you
created in the previous exercise. Select Overview on the MS
Graph Batch App blade, then select Add a Redirect URI. Add
the Redirect URL you copied in the Redirect URI field and
choose Save.
20
• The final configuration step to ensure the connector is ready for use is to authorize and test the custom connector
to create a cached connection.
• In Microsoft Flow, go to the Connector configuration screen and choose the Test link in the navigation menu.
Choose the New Connection link. Sign in with your Office 365 tenant administrator's Azure Active Directory
account.
• When prompted for the requested permissions, check Consent on behalf of your organization and then
choose Accept to authorize permissions.
• After you authorize the permissions, a connection is created in Flow.
21
BOOM
The boring
part is over
now let's
get to work!
22
• Purpose: The purpose of this list will be to create a tracking
mechanism and submission process for the creation of teams using
the Graph API.
• Fields:
o Team – Single Line Text
o Description – Multi Line Text
o Template - Choice
o Status - Choice
• Status - Choice:
o Completed
o Denied
o New Request
o In Progress
23
24
• Upon new list item trigger the associated Flow
• Update the list item status to In Progress
• Kick off an approval process
• Using a condition we determine the approval response
from the pre-configured users:
• If the request is denied, trigger an email then update
the status to denied.
• If the request is approved send an email to the
originator and begin the remaining process.
• Update the list item status to approved
• Process the API request to clone the team template using
the list provided information
• Send a completed email to the approver and submitter
and update the status to completed.
25
• Graph API Call
• URL: “/teams/[TeamID]/clone”
Customization Options:
Team Display Name: [SharePoint List Value]
Description of New Team: [SharePoint List Value]
MailNickName: [SharePoint List Value]
PartsToClone: Apps, Channels, Tabs, Settings, Members
Visibility: Public or Private
26
Questions?
Event sponsored by
Martha Castiglia in
Loving Memory of Tom
4282 Esplanade
Court,
San Diego, CA 92122
Platinum Sponsor
Gold
Sponsor
Silver Sponsor
Web Sponsors
Thank you to our
Sponsors!
Raffle Prize Sponsor Venue Sponsor
Phone:
626-274-9936
Email:
chris@soi2dev.com
Chris.barber@Perficient.com
LinkedIn:
www.linkedin.com/in/christopherRbarber
Twitter:
https://twitter.com/soi2dev/

More Related Content

What's hot

What's New for Developers in SharePoint 2013
What's New for Developers in SharePoint 2013What's New for Developers in SharePoint 2013
What's New for Developers in SharePoint 2013CTE Solutions Inc.
 
Advanced SharePoint 2013 Site Administration
Advanced SharePoint 2013 Site AdministrationAdvanced SharePoint 2013 Site Administration
Advanced SharePoint 2013 Site AdministrationLearning SharePoint
 
Benefits of Upgrading to SharePoint 2013
Benefits of Upgrading to SharePoint 2013Benefits of Upgrading to SharePoint 2013
Benefits of Upgrading to SharePoint 2013Aciron Consulting
 
SharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid OverviewSharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid OverviewRoy Kim
 
SharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End UsersSharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End UsersMark Stokes
 
SharePoint 2010 Upgrade Drill Down
SharePoint 2010 Upgrade Drill DownSharePoint 2010 Upgrade Drill Down
SharePoint 2010 Upgrade Drill DownJoel Oleson
 
Share point answer the question
Share point answer the questionShare point answer the question
Share point answer the questionthan sare
 
SharePoint 2010 For Business
SharePoint 2010 For BusinessSharePoint 2010 For Business
SharePoint 2010 For BusinessSparked
 
What’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechCon
What’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechConWhat’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechCon
What’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechConSPTechCon
 
Share point 2010_overview-day4-code
Share point 2010_overview-day4-codeShare point 2010_overview-day4-code
Share point 2010_overview-day4-codeNarayana Reddy
 
SharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and ExamplesSharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and ExamplesDrew Madelung
 
SharePoint Upgrades For The Business
SharePoint Upgrades For The BusinessSharePoint Upgrades For The Business
SharePoint Upgrades For The BusinessRichard Harbridge
 
Intro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT ProsIntro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT ProsRene Modery
 
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanTechnical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanDavid J Rosenthal
 
SharePoint Server 2013 Workflows
SharePoint Server 2013 WorkflowsSharePoint Server 2013 Workflows
SharePoint Server 2013 WorkflowsSPC Adriatics
 

What's hot (20)

What's New for Developers in SharePoint 2013
What's New for Developers in SharePoint 2013What's New for Developers in SharePoint 2013
What's New for Developers in SharePoint 2013
 
Advanced SharePoint 2013 Site Administration
Advanced SharePoint 2013 Site AdministrationAdvanced SharePoint 2013 Site Administration
Advanced SharePoint 2013 Site Administration
 
Benefits of Upgrading to SharePoint 2013
Benefits of Upgrading to SharePoint 2013Benefits of Upgrading to SharePoint 2013
Benefits of Upgrading to SharePoint 2013
 
SharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid OverviewSharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid Overview
 
SharePoint Tools Concepts
SharePoint Tools ConceptsSharePoint Tools Concepts
SharePoint Tools Concepts
 
SharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End UsersSharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End Users
 
SharePoint 2010 Upgrade Drill Down
SharePoint 2010 Upgrade Drill DownSharePoint 2010 Upgrade Drill Down
SharePoint 2010 Upgrade Drill Down
 
Share point answer the question
Share point answer the questionShare point answer the question
Share point answer the question
 
Spring 15
Spring 15Spring 15
Spring 15
 
SharePoint 2010 For Business
SharePoint 2010 For BusinessSharePoint 2010 For Business
SharePoint 2010 For Business
 
70 339 exam questions
70 339 exam questions70 339 exam questions
70 339 exam questions
 
What’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechCon
What’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechConWhat’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechCon
What’s new with Workflow in SharePoint 2013 by Andew Connell - SPTechCon
 
Share point 2010_overview-day4-code
Share point 2010_overview-day4-codeShare point 2010_overview-day4-code
Share point 2010_overview-day4-code
 
SharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and ExamplesSharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and Examples
 
SharePoint Upgrades For The Business
SharePoint Upgrades For The BusinessSharePoint Upgrades For The Business
SharePoint Upgrades For The Business
 
Share point 2010_day5
Share point 2010_day5Share point 2010_day5
Share point 2010_day5
 
Intro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT ProsIntro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT Pros
 
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanTechnical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
 
SharePoint Server 2013 Workflows
SharePoint Server 2013 WorkflowsSharePoint Server 2013 Workflows
SharePoint Server 2013 Workflows
 
Core SharePoint 2013 Concepts
Core SharePoint 2013 ConceptsCore SharePoint 2013 Concepts
Core SharePoint 2013 Concepts
 

Similar to Teams Automation with Graph API

Azure integration in dynamic crm
Azure integration in dynamic crmAzure integration in dynamic crm
Azure integration in dynamic crmssuser93127c1
 
#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
 
#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 #MicrosoftGraphVincent Biret
 
#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
 
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 FrankfurtDragan Panjkov
 
Office 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBI
Office 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBIOffice 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBI
Office 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBIJoel Oleson
 
November 2022 CIAOPS Need to Know Webinar
November 2022 CIAOPS Need to Know WebinarNovember 2022 CIAOPS Need to Know Webinar
November 2022 CIAOPS Need to Know WebinarRobert Crane
 
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 2017Nilesh Shah
 
Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Microsoft 365 Developer
 
Office Add ins community call-February 2019
Office Add ins community call-February 2019Office Add ins community call-February 2019
Office Add ins community call-February 2019Microsoft 365 Developer
 
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
 
Pascua Yaqui Tribe App in a day and dashboard in day
Pascua Yaqui Tribe App in a day and dashboard in dayPascua Yaqui Tribe App in a day and dashboard in day
Pascua Yaqui Tribe App in a day and dashboard in dayVishal Pawar
 
SPSMad2016 Rubén Toribio - Template
SPSMad2016 Rubén Toribio - TemplateSPSMad2016 Rubén Toribio - Template
SPSMad2016 Rubén Toribio - TemplateRub Toribio Gallardo
 
#SPSOttawa introduction to the #microsoftGraph
#SPSOttawa introduction to the #microsoftGraph#SPSOttawa introduction to the #microsoftGraph
#SPSOttawa introduction to the #microsoftGraphVincent Biret
 
Automatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos TabularesAutomatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos TabularesGaston Cruz
 
APIfying an ERP - ongoing saga
APIfying an ERP - ongoing sagaAPIfying an ERP - ongoing saga
APIfying an ERP - ongoing sagaMarjukka Niinioja
 
Scribe online 03 scribe online cdk and api overview
Scribe online 03   scribe online cdk and api overviewScribe online 03   scribe online cdk and api overview
Scribe online 03 scribe online cdk and api overviewScribe Software Corp.
 
Marketing Cloud integration with MuleSoft
Marketing Cloud integration with MuleSoftMarketing Cloud integration with MuleSoft
Marketing Cloud integration with MuleSoftPatryk Bandurski
 
Power Platform Tools of Office 365 What to Use When
Power Platform Tools of Office 365 What to Use WhenPower Platform Tools of Office 365 What to Use When
Power Platform Tools of Office 365 What to Use WhenJoel Oleson
 

Similar to Teams Automation with Graph API (20)

M365 Teams Automation
M365 Teams AutomationM365 Teams Automation
M365 Teams Automation
 
Azure integration in dynamic crm
Azure integration in dynamic crmAzure integration in dynamic crm
Azure integration in dynamic crm
 
#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 ...
 
#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
 
#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...
 
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
 
Office 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBI
Office 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBIOffice 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBI
Office 365 Power Tools: What to use When? Forms, Flows, PowerApps, PowerBI
 
November 2022 CIAOPS Need to Know Webinar
November 2022 CIAOPS Need to Know WebinarNovember 2022 CIAOPS Need to Know Webinar
November 2022 CIAOPS Need to Know Webinar
 
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
 
Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Office Add-ins community call-March 2019
Office Add-ins community call-March 2019
 
Office Add ins community call-February 2019
Office Add ins community call-February 2019Office Add ins community call-February 2019
Office Add ins community call-February 2019
 
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...
 
Pascua Yaqui Tribe App in a day and dashboard in day
Pascua Yaqui Tribe App in a day and dashboard in dayPascua Yaqui Tribe App in a day and dashboard in day
Pascua Yaqui Tribe App in a day and dashboard in day
 
SPSMad2016 Rubén Toribio - Template
SPSMad2016 Rubén Toribio - TemplateSPSMad2016 Rubén Toribio - Template
SPSMad2016 Rubén Toribio - Template
 
#SPSOttawa introduction to the #microsoftGraph
#SPSOttawa introduction to the #microsoftGraph#SPSOttawa introduction to the #microsoftGraph
#SPSOttawa introduction to the #microsoftGraph
 
Automatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos TabularesAutomatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos Tabulares
 
APIfying an ERP - ongoing saga
APIfying an ERP - ongoing sagaAPIfying an ERP - ongoing saga
APIfying an ERP - ongoing saga
 
Scribe online 03 scribe online cdk and api overview
Scribe online 03   scribe online cdk and api overviewScribe online 03   scribe online cdk and api overview
Scribe online 03 scribe online cdk and api overview
 
Marketing Cloud integration with MuleSoft
Marketing Cloud integration with MuleSoftMarketing Cloud integration with MuleSoft
Marketing Cloud integration with MuleSoft
 
Power Platform Tools of Office 365 What to Use When
Power Platform Tools of Office 365 What to Use WhenPower Platform Tools of Office 365 What to Use When
Power Platform Tools of Office 365 What to Use When
 

Recently uploaded

Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 

Recently uploaded (20)

Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 

Teams Automation with Graph API

  • 2. #SDO365S Event sponsored by Martha Castiglia in Loving Memory of Tom 4282 Esplanade Court, San Diego, CA 92122
  • 3. Platinum Sponsor Gold Sponsor Silver Sponsor Web Sponsors Thank you to our Sponsors! Raffle Prize Sponsor Venue Sponsor #SDO365S
  • 4. 4 Background: • Office 365 • SharePoint Development & Administration • Server Administration, VMWare, CISCO • C#, PowerShell, .NET, FHIR, Objective-C, • Meditech, EPIC, Cerner, Allscripts, Dragon Previous Clients: • Poudre Valley Healthcare • Providence Health & Services • Kern Medical Current Focus: • Teams as the HUB • Teams & Office 365 Development • CDS, Entities, PowerApps, Power Automate 4 Chris Barber Solutions Architect
  • 5. #1 Ranked Office 365 NSP 1 of 16 SP Partner Advisory Council Charter Member MSFT Content Services Program MVP Office 365 6M+ Users Migrated to Office 365 Charter Member MSFT Biz Apps Program 350+ SharePoint & O365 U.S. Consultants 1M+ Hours on SharePoint Projects 20+ Public Websites 200+ Sites on SharePoint Onprem / Online 1500+ SharePoint Projects Delivered 50+ Azure Migrations Gold Microsoft Partner Dedicated CX Agency Change Mgmt. Member Teamwork Partner Advisory Council (PAC) 95% Repeat Business Rate FastTrack Ready Partner Member MSFT Portal Partner Program
  • 6. • Create a SharePoint list • Create workflow for Teams automation Power Platform • Create Power Automate • Add Graph API & Custom Connector • Show Management App SharePoint #SDO365S 6 Create Connector • Graph API Overview • Create app registration • Create custom connector The goal of this workshop is to create a connector which allows us to dynamically create teams based on pre-defined templates.
  • 7. 7 Microsoft Graph exposes REST APIs and client libraries to access data on the following Microsoft 365 services: • Office 365 services: Delve, Excel, Microsoft Bookings, Microsoft Teams, OneDrive, OneNote, Outlook/Exchange, Planner, and SharePoint • Enterprise Mobility and Security services: Advanced Threat Analytics, Advanced Threat Protection, Azure Active Directory, Identity Manager, and Intune • Windows 10 services: activities, devices, notifications • Dynamics 365 Business Central
  • 8. 8 The Microsoft Graph Explorer is a Web interface for exploring Microsoft Graph APIs. Consider it as a developer's sandbox where you can run any request command, such as GET, and get a response back from Office 365 in JSON format. Note: When utilizing please ensure you use a test account to access Office 365 data to avoid accidentally updating or deleting production environment information. https://developer.microsoft.com/en-us/graph/graph-explorer
  • 10. 10 What is a custom connector? Why would we use a connector? Sharing a connector?
  • 11. 11 What is a custom connector? Microsoft offers over 230+ connectors to connect to Microsoft and non-Microsoft services out of the box. In some circumstances you may want to communicate with services that aren't available as prebuilt connectors though. Custom connectors address this scenario by allowing you to create and even share a connector with its own triggers and actions.
  • 12. 12 Why would we use a custom connector? - Availability - HTTP Connector? Premium & Single - Reuse - Expansion & Controls
  • 13. 13 How to share a connector? • Go to powerapps.com or flow.microsoft.com. • In the upper right corner, choose the gear icon, then choose Custom connectors. • Choose the ellipsis button for your connector, then choose Invite another user. • On the Share tab, under Add people, enter the users or groups you want to share with. Choose a permission of Can view or Can edit, then choose Save.
  • 14. 14 How do we setup a connector: • Create an Azure App Registration • Create a custom connector • Authorize the connector • Create the flow
  • 15. 15 1. Open a browser and navigate to Azure Active Directory admin center. Choose the Azure Active Directory link in the left navigation menu, then choose the App registrations entry in the Manage section of the Azure Active Directory blade. 2. Choose the New registration menu item at the top of the App Registrations blade. 3. Enter MS Graph Batch App in the Name field. In the Supported account types section, select Accounts in any organizational directory. Leave the Redirect URI section blank and choose Register. 4. On the MS Graph Batch App blade, copy the Application (client) ID. You'll need this in the next exercise. 5. Choose the API permissions entry in the Manage section of the MS Graph Batch App blade. Choose Add a permission under API permissions.
  • 16. 16 6. In the Request API permissions blade, choose the Microsoft Graph, then choose Delegated permissions. Search for group, then select the Read and write all groups delegated permission. Choose Add permissions at the bottom of the blade. 7. Choose the Certificates and secrets entry in the Manage section of the MS Graph Batch App blade, then choose New client secret. Enter forever in the Description and select Never under Expires. Choose Add. 8. Copy the key value for the new key. You'll need this in the next exercise. Note: To enable management of additional services accessible via the Microsoft Graph, including Teams properties, you would need to select additional, appropriate scopes to enable managing specific services.
  • 17. 17 • The Open API definition file is prebuilt with the correct path for the Microsoft Graph $batch endpoint and additional settings to enable simple import. • Using a text editor, create a new empty file named MSGraph-Delegate- Batch.swagger.json and add the following code. • Open a browser and navigate to Microsoft Flow. Sign in with your Office 365 tenant administrator account. In the left-hand menu, expand Data and choose Custom connectors.
  • 18. 18 • On the Custom connectors page choose the New custom connector link in the top right, then select the Import an OpenAPI file item in the drop-down menu. Enter MS Graph Batch Connector in the Connector name text box. Choose Import button to upload the Open API file. Browse to the MSGraph-Delegate-Batch.swagger.json file you created. Choose Continue to upload the OpenAPI file.
  • 19. 19 • After the connector has been created, copy the generated Redirect URL • Go back to the registered application in the Azure Portal you created in the previous exercise. Select Overview on the MS Graph Batch App blade, then select Add a Redirect URI. Add the Redirect URL you copied in the Redirect URI field and choose Save.
  • 20. 20 • The final configuration step to ensure the connector is ready for use is to authorize and test the custom connector to create a cached connection. • In Microsoft Flow, go to the Connector configuration screen and choose the Test link in the navigation menu. Choose the New Connection link. Sign in with your Office 365 tenant administrator's Azure Active Directory account. • When prompted for the requested permissions, check Consent on behalf of your organization and then choose Accept to authorize permissions. • After you authorize the permissions, a connection is created in Flow.
  • 21. 21 BOOM The boring part is over now let's get to work!
  • 22. 22 • Purpose: The purpose of this list will be to create a tracking mechanism and submission process for the creation of teams using the Graph API. • Fields: o Team – Single Line Text o Description – Multi Line Text o Template - Choice o Status - Choice • Status - Choice: o Completed o Denied o New Request o In Progress
  • 23. 23
  • 24. 24 • Upon new list item trigger the associated Flow • Update the list item status to In Progress • Kick off an approval process • Using a condition we determine the approval response from the pre-configured users: • If the request is denied, trigger an email then update the status to denied. • If the request is approved send an email to the originator and begin the remaining process. • Update the list item status to approved • Process the API request to clone the team template using the list provided information • Send a completed email to the approver and submitter and update the status to completed.
  • 25. 25 • Graph API Call • URL: “/teams/[TeamID]/clone” Customization Options: Team Display Name: [SharePoint List Value] Description of New Team: [SharePoint List Value] MailNickName: [SharePoint List Value] PartsToClone: Apps, Channels, Tabs, Settings, Members Visibility: Public or Private
  • 26. 26
  • 28. Event sponsored by Martha Castiglia in Loving Memory of Tom 4282 Esplanade Court, San Diego, CA 92122
  • 29. Platinum Sponsor Gold Sponsor Silver Sponsor Web Sponsors Thank you to our Sponsors! Raffle Prize Sponsor Venue Sponsor