SlideShare a Scribd company logo
MICROSOFT 365
Virtual MARATHON
May 27 & 28, 2020
36 hours / 2 days
MICROSOFT 365 VIRTUAL MARATHON
Teams In Real Life
Christopher Barber
MICROSOFT 365
Virtual MARATHON
May 27 & 28, 2020
36 hours / 2 days
 Chris Barber, Pasadena, CA USA
 Solutions Architect @ Perficient
 Current Focus: Teams, Custom Connectors, Graph API
 Background:
 Office 365
 SharePoint Development & Administration
 Server Administration, VMWare, CISCO
 C#, PowerShell, .NET, FHIR, Objective-C,
 Meditech, EPIC, Cerner, Allscripts, Dragon
LET ME INTRODUCE MYSELF…
Chris.Barber@Perficient.com
soi2dev LinkedIn
#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
What are we doing here today…
Manually deploying Microsoft Teams for an organization is overwhelming no matter the size.
 Permissions
 Owners & Members
 Handling requests & approvals
 Ensuring consistency across the builds
 Creation of a repeatable automated process
Graph API
o What is the Graph API
o Teams Integration with the Graph
API
o Available Actions
Azure
o Creation of an app registration
Connectors
o What is a connector?
o Components of a connector?
o Types of Connectors?
Session Overview
 Creating a Custom Connector
 Creating a Power Automate Flow
 Demos
 What is the Graph API?
 How does the Graph API relate to Microsoft Teams?
 Graph Explorer
Microsoft Graph API
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
What is the Graph API?
What's it do?
This operation creates a copy of the corresponding group or a base template.
It even allows you to customize what parts of the team you would like to clone:
• apps - Copies Microsoft Teams apps that are installed in the
team.
• channels – Copies the channel structure (but not the messages in
the channel).
• members – Copies the members and owners of the group.
• settings – Copies all settings within the team, along with key
group settings.
• tabs – Copies the tabs within channels.
Permissions Required:
• Group.ReadWrite.All
Graph API – Clone a Team
Graph Explorer
 What is an Azure App Registration?
 How does the registration relate to Microsoft Teams?
 Building an app registration
Azure App Registration
to Azure Active Directory at portal.azure.com . 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. With the app registration open we will enter in our name
Marathon Graph API in the Name field. In the Supported account
types section, select Accounts in my organization and for the time
being we are going to leave the Redirect URI section blank. We
will come back to this later on once our connector has been built.
With all of the fields complete now we are going to
choose Register.
4. Now that the base of our app registration has been created. Let’s
take a minute to copy down some information that we will need
for our custom connector. So at the top of the screen let’s copy
the Application ID and the Tenant ID.
5. Next let’s select the API permissions entry in the Manage section
of the MS Graph Batch App blade. Once that page loads, lets
Azure App Registration
Azure App Registration
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.
Demo Video
Build the Azure App Registration
 What is the Power Platform?
 What are connectors? What types of connectors are there?
 How do connectors relate to Microsoft Teams?
Power Platform &
Connectors
Connector Overview
A connector is a proxy or a wrapper around an API that allows the underlying service to
talk to Microsoft Power Automate, Microsoft Power Apps, and Azure Logic Apps. It
provides a way for users to connect their accounts and leverage a set of pre-built actions
and triggers to build their apps and workflows.
Out of the box Microsoft offers over 320+ connectors to connect to Microsoft and non-
Microsoft services
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.
Custom Connector Overview
Why would we use a custom connector?
- Availability
- HTTP Connector
- Premium Connector
- Reuse, Expansion, and Controls
 Where do I build a connector?
 How do I build a custom connector from scratch?
 How do I bring in the Graph API actions?
 How do I test the connector once its been created?
Building a Connector
Demo Video
Build the Custom Connector
 List requirements for integration
 How does a SharePoint list relate to our Microsoft Teams
automation?
 Build a SharePoint List
SharePoint Integration
• 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:
o Purpose: Store the name of the Team
o Field Type: Single Line Text
o Description:
o Purpose: Store the description of the Team
o Field Type: Multi Line Text
o Template:
o Purpose: Allows user the ability to store the Template to copy from
o Field Type: Drop Down Choice
o Status:
o Purpose: Will automatically update based on the current state of the process.
o Field Type: Drop Down Choice (Read Only)
Completed
Denied
New Request
In Progress
Building the List
Demo Video
Demo the configuration of the SharePoint List
 Adding our connector into a Flow
 Review of the Flow
 Demo
 Channel Build
 Messages
Power Automate Flow
Build
Workflow Overview
• 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.
• 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
Workflow Overview
Demo Entire Build
M365 Teams Automation
MICROSOFT 365
Virtual MARATHON
May 27 & 28, 2020
36 hours / 2 days
THANK YOU FOR YOUR ATTENTION!
DO YOU HAVE ANY QUESTIONS?

More Related Content

PPTX
How can Power Apps and Microsoft Flow allow your Power Users to quickly build...
PPTX
Introduction to Microsoft Kaizala And How to Empower Your Mobile Workforce us...
PDF
Microsoft Power Apps - A Getting Started Guide
PDF
Reporting in Project Online and Project Professional - Oleksiy Prosnitskyy
PPTX
Team '21 recap
PPTX
Unleash the power of power apps
PPTX
The People's Innovation Platform - Microsoft Power Platform
PPTX
PL-100 Microsoft Power Platform App Maker
How can Power Apps and Microsoft Flow allow your Power Users to quickly build...
Introduction to Microsoft Kaizala And How to Empower Your Mobile Workforce us...
Microsoft Power Apps - A Getting Started Guide
Reporting in Project Online and Project Professional - Oleksiy Prosnitskyy
Team '21 recap
Unleash the power of power apps
The People's Innovation Platform - Microsoft Power Platform
PL-100 Microsoft Power Platform App Maker

What's hot (20)

PDF
Power behind power apps and Ms flow
PDF
SPC19 - What's new and what's next: Microsoft Kaizala
PDF
How to get your management board to Teams Kettukari MWPC Paris 191.2021
PDF
SPC2019 - Integrate Power Platform with SharePoint an end to-end real life sc...
PDF
Accelerate Your #ModernWorkplace Success with #Microsoft365
PDF
The business today - PowerApps, Power BI y Microsoft Flow
PDF
Managing Projects with Microsoft Project Online - from Atidan
PPTX
Driving User Adoption for SharePoint
PPTX
Microsoft 365 Virtual 2020 Spain - Microsoft Graph Search API
PDF
SharePoint consulting | SharePoint Partner | SharePoint Demo
PPTX
Grow your SharePoint development platform with SPFx
PPTX
Microsoft Planner What is How To - Collab365
PPTX
Moving to Microsoft Project Online
PDF
O365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
PPTX
Boost productivity using Microsoft Teams & PowerAutomate
PPTX
Microsoft Teams Development - Conversational AI
PPTX
SPS Toronto 2016 - What is microsoft PowerApps
PDF
Introduction to Microsoft Flow
PDF
Key Takeaways from Managing an Integrated JIRA Experience
PDF
The possibilities of Teams as a Platform Kettukari Nopanen Sulava Webinar 25....
Power behind power apps and Ms flow
SPC19 - What's new and what's next: Microsoft Kaizala
How to get your management board to Teams Kettukari MWPC Paris 191.2021
SPC2019 - Integrate Power Platform with SharePoint an end to-end real life sc...
Accelerate Your #ModernWorkplace Success with #Microsoft365
The business today - PowerApps, Power BI y Microsoft Flow
Managing Projects with Microsoft Project Online - from Atidan
Driving User Adoption for SharePoint
Microsoft 365 Virtual 2020 Spain - Microsoft Graph Search API
SharePoint consulting | SharePoint Partner | SharePoint Demo
Grow your SharePoint development platform with SPFx
Microsoft Planner What is How To - Collab365
Moving to Microsoft Project Online
O365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
Boost productivity using Microsoft Teams & PowerAutomate
Microsoft Teams Development - Conversational AI
SPS Toronto 2016 - What is microsoft PowerApps
Introduction to Microsoft Flow
Key Takeaways from Managing an Integrated JIRA Experience
The possibilities of Teams as a Platform Kettukari Nopanen Sulava Webinar 25....
Ad

Similar to M365 Teams Automation (20)

PDF
Teams Automation with Graph API
PPTX
Microsoft Teams Graph API
PPTX
Microsoft Graph: Connect to essential data every app needs
PPTX
Microsoft Graph: Connect to essential data every app needs
PPTX
Build the ultimate team hub with Microsoft Teams
PPTX
Build the ultimate team hub with Microsoft Teams
PPTX
Office Dev Day 2018 - Extending Microsoft Teams
PPTX
Teams Provisioning with Power Automate and the Microsoft Graph
PPTX
ESPC19 - Microsoft Teams Architecture Deep Dive
PPTX
ECS19 - Maarten Eekels - MICROSOFT TEAMS ARCHITECTURE DEEP DIVE
PPTX
European Collaboration Summit 2019 - Microsoft Teams Architecture Deep Dive
PPTX
Ms teams dev community call march 2018
PPTX
SPS Vienna 2017 - Getting started with APIs for Groups and Planner
PPTX
Build Modern Apps on Microsoft Teams-September 2018
PPTX
Microsoft Graph: The API for Microsoft 365
PPTX
Microsoft 365, la herramienta moderna para la oficina moderna
PDF
Sydney Microsoft 365 Meetup Microsoft teams
PPTX
Microsoft Graph API - A Single Stop For Your Cloud Solution
PPTX
Office 365 Developer Bootcamp: Microsoft Teams
PPTX
Developing intergrations with MS Teams, Flow and the Graph API
Teams Automation with Graph API
Microsoft Teams Graph API
Microsoft Graph: Connect to essential data every app needs
Microsoft Graph: Connect to essential data every app needs
Build the ultimate team hub with Microsoft Teams
Build the ultimate team hub with Microsoft Teams
Office Dev Day 2018 - Extending Microsoft Teams
Teams Provisioning with Power Automate and the Microsoft Graph
ESPC19 - Microsoft Teams Architecture Deep Dive
ECS19 - Maarten Eekels - MICROSOFT TEAMS ARCHITECTURE DEEP DIVE
European Collaboration Summit 2019 - Microsoft Teams Architecture Deep Dive
Ms teams dev community call march 2018
SPS Vienna 2017 - Getting started with APIs for Groups and Planner
Build Modern Apps on Microsoft Teams-September 2018
Microsoft Graph: The API for Microsoft 365
Microsoft 365, la herramienta moderna para la oficina moderna
Sydney Microsoft 365 Meetup Microsoft teams
Microsoft Graph API - A Single Stop For Your Cloud Solution
Office 365 Developer Bootcamp: Microsoft Teams
Developing intergrations with MS Teams, Flow and the Graph API
Ad

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Approach and Philosophy of On baking technology
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Getting Started with Data Integration: FME Form 101
PDF
cuic standard and advanced reporting.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
A Presentation on Artificial Intelligence
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Tartificialntelligence_presentation.pptx
Programs and apps: productivity, graphics, security and other tools
Approach and Philosophy of On baking technology
Encapsulation_ Review paper, used for researhc scholars
NewMind AI Weekly Chronicles - August'25-Week II
MIND Revenue Release Quarter 2 2025 Press Release
The Rise and Fall of 3GPP – Time for a Sabbatical?
Getting Started with Data Integration: FME Form 101
cuic standard and advanced reporting.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
A Presentation on Artificial Intelligence
Mobile App Security Testing_ A Comprehensive Guide.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
20250228 LYD VKU AI Blended-Learning.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
Diabetes mellitus diagnosis method based random forest with bat algorithm
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Tartificialntelligence_presentation.pptx

M365 Teams Automation

  • 1. MICROSOFT 365 Virtual MARATHON May 27 & 28, 2020 36 hours / 2 days MICROSOFT 365 VIRTUAL MARATHON Teams In Real Life Christopher Barber
  • 2. MICROSOFT 365 Virtual MARATHON May 27 & 28, 2020 36 hours / 2 days
  • 3.  Chris Barber, Pasadena, CA USA  Solutions Architect @ Perficient  Current Focus: Teams, Custom Connectors, Graph API  Background:  Office 365  SharePoint Development & Administration  Server Administration, VMWare, CISCO  C#, PowerShell, .NET, FHIR, Objective-C,  Meditech, EPIC, Cerner, Allscripts, Dragon LET ME INTRODUCE MYSELF… Chris.Barber@Perficient.com soi2dev LinkedIn
  • 4. #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
  • 5. What are we doing here today… Manually deploying Microsoft Teams for an organization is overwhelming no matter the size.  Permissions  Owners & Members  Handling requests & approvals  Ensuring consistency across the builds  Creation of a repeatable automated process
  • 6. Graph API o What is the Graph API o Teams Integration with the Graph API o Available Actions Azure o Creation of an app registration Connectors o What is a connector? o Components of a connector? o Types of Connectors? Session Overview  Creating a Custom Connector  Creating a Power Automate Flow  Demos
  • 7.  What is the Graph API?  How does the Graph API relate to Microsoft Teams?  Graph Explorer Microsoft Graph API
  • 8. 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 What is the Graph API?
  • 9. What's it do? This operation creates a copy of the corresponding group or a base template. It even allows you to customize what parts of the team you would like to clone: • apps - Copies Microsoft Teams apps that are installed in the team. • channels – Copies the channel structure (but not the messages in the channel). • members – Copies the members and owners of the group. • settings – Copies all settings within the team, along with key group settings. • tabs – Copies the tabs within channels. Permissions Required: • Group.ReadWrite.All Graph API – Clone a Team
  • 11.  What is an Azure App Registration?  How does the registration relate to Microsoft Teams?  Building an app registration Azure App Registration
  • 12. to Azure Active Directory at portal.azure.com . 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. With the app registration open we will enter in our name Marathon Graph API in the Name field. In the Supported account types section, select Accounts in my organization and for the time being we are going to leave the Redirect URI section blank. We will come back to this later on once our connector has been built. With all of the fields complete now we are going to choose Register. 4. Now that the base of our app registration has been created. Let’s take a minute to copy down some information that we will need for our custom connector. So at the top of the screen let’s copy the Application ID and the Tenant ID. 5. Next let’s select the API permissions entry in the Manage section of the MS Graph Batch App blade. Once that page loads, lets Azure App Registration
  • 13. Azure App Registration 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.
  • 14. Demo Video Build the Azure App Registration
  • 15.  What is the Power Platform?  What are connectors? What types of connectors are there?  How do connectors relate to Microsoft Teams? Power Platform & Connectors
  • 16. Connector Overview A connector is a proxy or a wrapper around an API that allows the underlying service to talk to Microsoft Power Automate, Microsoft Power Apps, and Azure Logic Apps. It provides a way for users to connect their accounts and leverage a set of pre-built actions and triggers to build their apps and workflows. Out of the box Microsoft offers over 320+ connectors to connect to Microsoft and non- Microsoft services 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.
  • 17. Custom Connector Overview Why would we use a custom connector? - Availability - HTTP Connector - Premium Connector - Reuse, Expansion, and Controls
  • 18.  Where do I build a connector?  How do I build a custom connector from scratch?  How do I bring in the Graph API actions?  How do I test the connector once its been created? Building a Connector
  • 19. Demo Video Build the Custom Connector
  • 20.  List requirements for integration  How does a SharePoint list relate to our Microsoft Teams automation?  Build a SharePoint List SharePoint Integration
  • 21. • 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: o Purpose: Store the name of the Team o Field Type: Single Line Text o Description: o Purpose: Store the description of the Team o Field Type: Multi Line Text o Template: o Purpose: Allows user the ability to store the Template to copy from o Field Type: Drop Down Choice o Status: o Purpose: Will automatically update based on the current state of the process. o Field Type: Drop Down Choice (Read Only) Completed Denied New Request In Progress Building the List
  • 22. Demo Video Demo the configuration of the SharePoint List
  • 23.  Adding our connector into a Flow  Review of the Flow  Demo  Channel Build  Messages Power Automate Flow Build
  • 24. Workflow Overview • 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 Workflow Overview
  • 28. MICROSOFT 365 Virtual MARATHON May 27 & 28, 2020 36 hours / 2 days THANK YOU FOR YOUR ATTENTION! DO YOU HAVE ANY QUESTIONS?