SlideShare a Scribd company logo
1 of 60
SharePoint Saturday
Ottawa
Office 365 & PowerShell : A match made
in heaven
Sébastien Levert
Office 365 Junkie & MVP
November 21st, 2015
Thanks to all of our Sponsors!
Web Developer @sebastienlevert pimpthecloud.com
Who’s Sébastien Levert !?
Montreal, Canada negotium.com Office365 MVP
Agenda
 Introduction to PowerShell in Office 365
 Using PowerShell with SharePoint Online
 Using PowerShell with the Office 365 APIs
 DevOps with PowerShell in Office 365
Getting started
 Announced at Ignite 2015
 http://powershell.office.com
 Sets of samples, scenarios, guides, …
What do you need ?
 An Office 365 tenant
 Administrator privileges on your Office 365 tenant
 Administrator privileges on your machine running
PowerShell
 Administration modules
 Microsoft Online Services Sign-in Assistant
 Azure Active Directory Module
 SharePoint Online Module
 Skype for Business Online Module
Connecting to SharePoint Online
 With the SharePoint Online Module
 With the SharePoint Client Side Object Model
 With the OfficeDev PowerShell Commands
 With the SharePoint REST APIs
Getting all your Site
Collections
Demo
Getting all your Site Collection
Get-SPOSite
Get-SPOSite –Detailed
Get-SPOSite –Detailed –Filter { Url –like “*term*” }
Using SharePoint CSOM in PowerShell
 You have to manually get the CSOM Assemblies
 You have to manually load the CSOM Assemblies in your
PowerShell Sessions
 Ensure to have the latest bits of the CSOM Assemblies
[AppDomain]::CurrentDomain.GetAssemblies() | Where-Object {
$_.FullName -like "*SharePoint*” –or $_.FullName –like “*Office*”
} | Select FullName
Tips & Tricks
 Do not use SharePoint Online Management Shell
 Import the SharePoint Online PowerShell module from a
regular PowerShell session
 Load the required CSOM Assemblies before loading the
SharePoint Online Module
 Use Gary Lapointe’s Load-CSOMProperties Cmdlet.
Everyday.
Getting the CSOM
Assemblies
Demo
Working with the CSOM Assemblies
Import-Module C:PathPTC.O365.PowerShell.psm1
Get-ClientAssemblies –Version 16 –TargetDirectory C:assemblies
Add-ClientAssemblies –AssembliesDirectory C:assemblies
[AppDomain]::CurrentDomain.GetAssemblies() | Where-Object {
$_.FullName -like "*SharePoint*” –or $_.FullName –like “*Office*”
} | Select FullName
Mixing CSOM and SPO Cmdlets
 You can easily use CSOM with the SPO Cmdlets
 Use the Cmdlets to get to the Site Collection level
 Use CSOM to get into the Webs level
Getting all the Sites of
every Site Collection
Demo
Get all the Sites of every Site Collection
Import-Module C:PathPTC.O365.PowerShell.psm1
Import-Module Microsoft.Online.SharePoint.PowerShell
Connect-SPOService –Url https://tenant-admin.sharepoint.com
$credentials = Get-SharePointOnlineCredentials
Get-SPOSite | Where-Object { $_.Template –notlike “*EHS#0” } | ForEach-Object {
$context = Get-Context –Url $_.Url –Credentials $credentials
Get-Webs –Context $context | Select Url
}
Export the content of
a SharePoint list
Demo
Export the content of a SharePoint list
$credentials = Get-SharePointOnlineCredentials
$context = Get-Context –Url “https://tenant.sharepoint.com” –Credentials $credentials
$web = Get-Web -Context $context
$list = Get-List –Web $web –Title “Tasks”
$items = Get-ListContent –List $list -Fields @(“ID”, “Title”, “DueDate”)
$items | Select @{ Name = “ID”; Expression = { $_[“ID”] } },
@{ Name = “Title”; Expression = { $_[“Title”] } },
@{ Name = “DueDate”; Expression = { $_[“DueDate”] } } |
Export-CSV –Path C:Tasks.csv –NoTypeInformation –Encoding UTF8
Working with PowerShell.Commands
 123 new Cmdlets Delivered by Office Dev Patterns &
Practices
 Set of Cmdlets used to execute CSOM against SharePoint
Online & On-Premises
 Uses the OfficeDevPnP.Core framework
 Needs to be installed on your machine (more complex
than a simple module)
 The real power of PowerShell with the PnP enhanced
power of CSOM
Adding and setting a
new theme to a site
Demo
Adding and setting a new theme to a
site
Connect-SPOnline –Url https://tenant.sharepoint.com
Add-SPOFile –Path C:theme.spcolor –Folder “_catalogs/theme/15”
Add-SPOFile –Path C:image.jpg –Folder “SiteAssets”
Set-SPOTheme `
–ColorPaletteUrl “/_catalogs/theme/15/theme.spcolor ” `
-BackgroundImageUrl “/SiteAssets/image.jpg”
Working with REST and SharePoint
Online Awesome series of articles by Gary Lapointe
 Magic Function provided  Invoke-SPORestMethod
 Easily use “typed” objects in your PowerShell scripts
 Remember to escape your $
Query list items with
OData
Demo
Query list items with Odata
$url =
“https://tenant.sharepoint.com/_api/lists/GetByTitle('Tasks')/ite
ms?`$select=Id,Title,DueDate,PercentComplete&`$filter=PercentComp
lete gt 0.5”
$items = Invoke-SPORestMethod –Url $url
$items.results | Out-GridView
Use the search REST
API to query the
Graph
Demo
Using the REST API to query Office
Graph
$url =
“https://tenant.sharepoint.com/_api/search/query?Querytext=‘*’&Pr
operties=‘GraphQuery:ACTOR(ME)’&RowLimit=100”
$results = Invoke-SPORestMethod –Url $url
$results = Get-RestSearchResults –Results $results | Out-GridView
Office 365 APIs
 Set of APIs delivered to unify the workloads APIs
 Built on top of Azure Active Directory Applications
 Uses OAuth and JWT for every API call
 Enables delegated permissions & App-Only permissions
 Give permissions on the needed workloads
 When the plumbing is done, it becomes very easy to use
Steps to Office 365 API with PowerShell
1. Create an Azure Active Directory Application
2. Create a local certificate
3. Import the certificate data into your Azure AD
Application configuration
4. Use the certificate with its password in your PowerShell
code
5. Connect to the Office 365 API
6. Play with your data!
Getting ready
Demo
Getting ready
makecert -r -pe -n "CN=PowerShell Office 365 API Application" -b
1/01/2015 -e 12/31/2016 -ss my -len 2048
$keyCredentials = Get-KeyCredentialsManifest –Path
C:Certificate.cer
Get an Access Token
Demo
Get an Access Token
$global:AzureADApplicationTenantId = “TENANTID”
$global:AzureADApplicationClientId = “APPLICATIONID”
$global:AzureADApplicationCertificatePath = “C:Certificate.pfx”
$global:AzureADApplicationCertificatePassword = “Passw0rd”
$exchangeResourceUri = “https://outlook.office365.com/”
$token = Get-AccessToken -ResourceUri $exchangeResourceUri
Get the content of
your Mailbox
Demo
Get the content of your Mailbox
$url = $exchangeResourceUri + “/api/v1.0/users(‘email’)/folders/inbox/messages?$top=50"
$response = Invoke-SecuredRestMethod -Method "GET" -AccessToken $token -EndpointUri $url
$hasMore = $true
$messages = @()
while($hasMore) {
$response = Invoke-SecuredRestMethod -Method "GET" -AccessToken $token-EndpointUri $url
$response.value | ForEach-Object { $messages += $_ }
$hasMore = $response.'@odata.nextLink' -ne $null
$url = $response.'@odata.nextLink’
}
$messages | Select Subject | Out-GridView
Send an Email
Demo
Prepare the body
$body = @{
“Message” = @{
“Subject” = "This is a test email from PowerShell!”
“Body” = @{ “ContentType” = “Text”; “Content” = “This email was sent from PowerShell
using the Office 365 API.” }
“ToRecipients” = @(
@{ “EmailAddress” = @{ “Address” = “slevert@sebastienlevert.com” } }
)
}
$body.SaveToSentItems = $false
}
Send an Email
$url = $exchangeResourceUri + “/api/v1.0/users(‘email’)/sendmail”
$response = Invoke-SecuredRestMethod –Method “POST” -AccessToken $token -EndpointUri $url
–Body ($body | ConvertTo-Json $body –Depth 4)
First… What is DevOps ?
 DevOps (a clipped compound of “development” and
“operations”) is a software development method that
stresses communication, collaboration, integration,
automation and measurement of cooperation between
software developers and other information-technology (IT)
professionals.
What it means to me…
 Automate everything you can (developers can help!)
 Ensure that every configuration can be replicated
anywhere at any time
 Gain a maximum of control over your deployments
 Are you scared of your users ?
In the Office 365 world, it means…
 Every artifact that is created needs to be scripted or
automatically provisioned
 Users
 Mailboxes
 SharePoint
 Sites
 Columns
 Content Types
 Lists
 …
 …
Export SharePoint site
configuration
Demo
Export SharePoint site configuration
Connect-SPOnline –Url https://tenant.sharepoint.com
Get-SPOProvisioningTemplate –Out C:template.xml -
PersistComposedLookFiles
Import SharePoint site
configuration
Demo
Import SharePoint site configuration
Connect-SPOnline –Url https://tenant.sharepoint.com
Apply-SPOProvisioningTemplate –Path C:template.xml
PowerShell for Office 365 Resources
 PowerShell for Office 365
 http://powershell.office.com
 Microsoft Online Services Sign-In Assistant for IT
Professionals
 http://www.microsoft.com/en-us/download/details.aspx?id=41950
 SharePoint Online Management Shell
 http://www.microsoft.com/en-us/download/details.aspx?id=35588
 Windows PowerShell Module for Skype for Business
Online
 http://www.microsoft.com/en-us/download/details.aspx?id=39366
PowerShell for Office 365 Resources
 Azure Active Directory Module for Windows PowerShell
 http://go.microsoft.com/fwlink/p/?linkid=236298 (32-bit Version)
 http://go.microsoft.com/fwlink/p/?linkid=236297 (64-bit Version)
 OfficeDevPnP.PowerShell Commands
 https://github.com/OfficeDev/PnP/tree/master/Solutions/PowerShell.Command
s
 PimpTheCloud PowerShell Office 365 Modules
 https://github.com/PimpTheCloud/PTC.O365.PowerShell
PowerShell for Office 365 Resources
 Gary Lapointe “PowerShell and SharePoint Online REST”
articles
 http://www.itunity.com/article/sharepoint-rest-service-windows-powershell-1381
 http://www.itunity.com/article/custom-windows-powershell-function-
sharepoint-rest-service-calls-1985
 http://www.itunity.com/article/working-lists-list-items-sharepoint-rest-service-
windows-powershell-2077
 http://www.itunity.com/article/working-folders-files-sharepoint-rest-service-
powershell-2159
Thanks to all of our Sponsors!
SharePint !
At the Observatory Student Pub in Building A
4:10 pm: New! Experts’ Panel Q&A
4:30 pm: Prizes and Giveaways
4:45 pm: Wrap-up and SharePint!
Parking: No need to move your car!*
If you don’t know where the Observatory is, ask an organizer or a
volunteer for directions.
*Please drive responsibly! We are happy to call you a cab 

More Related Content

What's hot

Integrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service PlatformIntegrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service PlatformBizTalk360
 
O365Con18 - External Collaboration with Azure B2B - Sjoukje Zaal
O365Con18 - External Collaboration with Azure B2B - Sjoukje ZaalO365Con18 - External Collaboration with Azure B2B - Sjoukje Zaal
O365Con18 - External Collaboration with Azure B2B - Sjoukje ZaalNCCOMMS
 
Global Azure BootCamp: Azure Logic Apps
Global Azure BootCamp: Azure Logic AppsGlobal Azure BootCamp: Azure Logic Apps
Global Azure BootCamp: Azure Logic AppsDavid Schneider
 
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...NCCOMMS
 
Advanced PowerShell for Office 365
Advanced PowerShell for Office 365Advanced PowerShell for Office 365
Advanced PowerShell for Office 365BIWUG
 
O365Con18 - Introduction to Azure Web Applications - Eric Shupps
O365Con18 - Introduction to Azure Web Applications  - Eric ShuppsO365Con18 - Introduction to Azure Web Applications  - Eric Shupps
O365Con18 - Introduction to Azure Web Applications - Eric ShuppsNCCOMMS
 
API Management and Hybrid Integration
API Management and Hybrid IntegrationAPI Management and Hybrid Integration
API Management and Hybrid IntegrationBizTalk360
 
Logic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIsLogic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIsSriram Hariharan
 
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...NCCOMMS
 
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConBuilding Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConSPTechCon
 
Office 365 Connectors
Office 365 ConnectorsOffice 365 Connectors
Office 365 ConnectorsSPC Adriatics
 
O365Con18 - Hybrid SharePoint Deep Dive - Thomas Vochten
O365Con18 - Hybrid SharePoint Deep Dive - Thomas VochtenO365Con18 - Hybrid SharePoint Deep Dive - Thomas Vochten
O365Con18 - Hybrid SharePoint Deep Dive - Thomas VochtenNCCOMMS
 
Forge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIs
Forge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIsForge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIs
Forge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIsAutodesk
 
O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...
O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...
O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...NCCOMMS
 
Azure mobile apps
Azure mobile appsAzure mobile apps
Azure mobile appsDavid Giard
 
Serverless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsServerless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsPuneet Ghanshani
 
Going Serverless with Azure Functions
Going Serverless with Azure FunctionsGoing Serverless with Azure Functions
Going Serverless with Azure FunctionsShahed Chowdhuri
 
Windows Azure Mobile Services
Windows Azure Mobile ServicesWindows Azure Mobile Services
Windows Azure Mobile ServicesSasha Goldshtein
 

What's hot (20)

Azure: PaaS or IaaS
Azure: PaaS or IaaSAzure: PaaS or IaaS
Azure: PaaS or IaaS
 
Integrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service PlatformIntegrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service Platform
 
O365Con18 - External Collaboration with Azure B2B - Sjoukje Zaal
O365Con18 - External Collaboration with Azure B2B - Sjoukje ZaalO365Con18 - External Collaboration with Azure B2B - Sjoukje Zaal
O365Con18 - External Collaboration with Azure B2B - Sjoukje Zaal
 
Global Azure BootCamp: Azure Logic Apps
Global Azure BootCamp: Azure Logic AppsGlobal Azure BootCamp: Azure Logic Apps
Global Azure BootCamp: Azure Logic Apps
 
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
 
Advanced PowerShell for Office 365
Advanced PowerShell for Office 365Advanced PowerShell for Office 365
Advanced PowerShell for Office 365
 
O365Con18 - Introduction to Azure Web Applications - Eric Shupps
O365Con18 - Introduction to Azure Web Applications  - Eric ShuppsO365Con18 - Introduction to Azure Web Applications  - Eric Shupps
O365Con18 - Introduction to Azure Web Applications - Eric Shupps
 
API Management and Hybrid Integration
API Management and Hybrid IntegrationAPI Management and Hybrid Integration
API Management and Hybrid Integration
 
Logic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIsLogic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIs
 
Azure logic app
Azure logic appAzure logic app
Azure logic app
 
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
 
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConBuilding Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
 
Office 365 Connectors
Office 365 ConnectorsOffice 365 Connectors
Office 365 Connectors
 
O365Con18 - Hybrid SharePoint Deep Dive - Thomas Vochten
O365Con18 - Hybrid SharePoint Deep Dive - Thomas VochtenO365Con18 - Hybrid SharePoint Deep Dive - Thomas Vochten
O365Con18 - Hybrid SharePoint Deep Dive - Thomas Vochten
 
Forge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIs
Forge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIsForge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIs
Forge - DevCon 2016: Building Value-Added Integrations with Autodesk’s IoT APIs
 
O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...
O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...
O365Con18 - Customizing SharePoint and Microsoft Teams with SharePoint Framew...
 
Azure mobile apps
Azure mobile appsAzure mobile apps
Azure mobile apps
 
Serverless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsServerless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic apps
 
Going Serverless with Azure Functions
Going Serverless with Azure FunctionsGoing Serverless with Azure Functions
Going Serverless with Azure Functions
 
Windows Azure Mobile Services
Windows Azure Mobile ServicesWindows Azure Mobile Services
Windows Azure Mobile Services
 

Viewers also liked

Ratchet - Framework para Web Apps - iOS & Android
Ratchet - Framework para Web Apps - iOS & AndroidRatchet - Framework para Web Apps - iOS & Android
Ratchet - Framework para Web Apps - iOS & AndroidWilker Foureaux
 
Deceuninck's Fully Reversible Window
Deceuninck's Fully Reversible WindowDeceuninck's Fully Reversible Window
Deceuninck's Fully Reversible WindowDeceuninck UK
 
Bmc pio by shailesh gandhi
Bmc pio by shailesh gandhiBmc pio by shailesh gandhi
Bmc pio by shailesh gandhiDr Rita
 
התייבשות ותמותה של עצי אלון התבור - סקירה
התייבשות ותמותה של עצי אלון התבור - סקירההתייבשות ותמותה של עצי אלון התבור - סקירה
התייבשות ותמותה של עצי אלון התבור - סקירהNir Herr
 
Inspired Selection Powerpoint
Inspired Selection PowerpointInspired Selection Powerpoint
Inspired Selection Powerpointsheward
 
Ute ética y atención a la diversidad noviembre 2015_2015 fabiola alvarado
Ute ética y atención a la diversidad noviembre 2015_2015 fabiola alvaradoUte ética y atención a la diversidad noviembre 2015_2015 fabiola alvarado
Ute ética y atención a la diversidad noviembre 2015_2015 fabiola alvaradoFabyAlvarado2012
 
A case study on improvement of an air conditioning system
A case study on improvement of an air conditioning systemA case study on improvement of an air conditioning system
A case study on improvement of an air conditioning systemSoumyodeep Mukherjee
 

Viewers also liked (13)

Ratchet - Framework para Web Apps - iOS & Android
Ratchet - Framework para Web Apps - iOS & AndroidRatchet - Framework para Web Apps - iOS & Android
Ratchet - Framework para Web Apps - iOS & Android
 
Conversys Profile V1.1.1250511
Conversys Profile V1.1.1250511Conversys Profile V1.1.1250511
Conversys Profile V1.1.1250511
 
Deceuninck's Fully Reversible Window
Deceuninck's Fully Reversible WindowDeceuninck's Fully Reversible Window
Deceuninck's Fully Reversible Window
 
Bmc pio by shailesh gandhi
Bmc pio by shailesh gandhiBmc pio by shailesh gandhi
Bmc pio by shailesh gandhi
 
My benefits icon
My benefits iconMy benefits icon
My benefits icon
 
התייבשות ותמותה של עצי אלון התבור - סקירה
התייבשות ותמותה של עצי אלון התבור - סקירההתייבשות ותמותה של עצי אלון התבור - סקירה
התייבשות ותמותה של עצי אלון התבור - סקירה
 
Examen Barrionuevo 2do B
Examen Barrionuevo 2do BExamen Barrionuevo 2do B
Examen Barrionuevo 2do B
 
Inspired Selection Powerpoint
Inspired Selection PowerpointInspired Selection Powerpoint
Inspired Selection Powerpoint
 
Blacksmith Surgical
Blacksmith SurgicalBlacksmith Surgical
Blacksmith Surgical
 
G.Medzmariashvili (Portfolio) (EN)_1
G.Medzmariashvili (Portfolio) (EN)_1G.Medzmariashvili (Portfolio) (EN)_1
G.Medzmariashvili (Portfolio) (EN)_1
 
Nd works-4
Nd works-4Nd works-4
Nd works-4
 
Ute ética y atención a la diversidad noviembre 2015_2015 fabiola alvarado
Ute ética y atención a la diversidad noviembre 2015_2015 fabiola alvaradoUte ética y atención a la diversidad noviembre 2015_2015 fabiola alvarado
Ute ética y atención a la diversidad noviembre 2015_2015 fabiola alvarado
 
A case study on improvement of an air conditioning system
A case study on improvement of an air conditioning systemA case study on improvement of an air conditioning system
A case study on improvement of an air conditioning system
 

Similar to Office 365 & PowerShell Automation

Webinar - Office 365 & PowerShell : A Match Made in Heaven
Webinar - Office 365 & PowerShell : A Match Made in HeavenWebinar - Office 365 & PowerShell : A Match Made in Heaven
Webinar - Office 365 & PowerShell : A Match Made in HeavenSébastien Levert
 
SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...
SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...
SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...Comunidade Portuguesa de SharePoiint
 
Office 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heavenOffice 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heavenSébastien Levert
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development Chris O'Connor
 
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshopIntroduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshopMichael Blumenthal (Microsoft MVP)
 
Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)ÇözümPARK
 
jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013
jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013
jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013Kiril Iliev
 
O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...
O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...
O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...Ivan Sanders
 
Amazon Web Services for PHP Developers
Amazon Web Services for PHP DevelopersAmazon Web Services for PHP Developers
Amazon Web Services for PHP DevelopersJeremy Lindblom
 
Introduction to windows power shell in sharepoint 2010
Introduction to windows power shell in sharepoint 2010Introduction to windows power shell in sharepoint 2010
Introduction to windows power shell in sharepoint 2010Binh Nguyen
 
2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to AppsGilles Pommier
 
How to do everything with PowerShell
How to do everything with PowerShellHow to do everything with PowerShell
How to do everything with PowerShellJuan Carlos Gonzalez
 
SPSTC - PowerShell - Through the SharePoint Looking Glass
SPSTC - PowerShell - Through the SharePoint Looking GlassSPSTC - PowerShell - Through the SharePoint Looking Glass
SPSTC - PowerShell - Through the SharePoint Looking GlassBrian Caauwe
 
Federico Feroldi - Scala microservices
Federico Feroldi - Scala microservicesFederico Feroldi - Scala microservices
Federico Feroldi - Scala microservicesScala Italy
 
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developersChris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developersChris O'Brien
 
PowerShell: Through the SharePoint Looking Glass
PowerShell: Through the SharePoint Looking GlassPowerShell: Through the SharePoint Looking Glass
PowerShell: Through the SharePoint Looking GlassBrian Caauwe
 
SPO Migration - New API
SPO Migration - New APISPO Migration - New API
SPO Migration - New APIAshish Trivedi
 
Exposing Salesforce REST Services Using Swagger
Exposing Salesforce REST Services Using SwaggerExposing Salesforce REST Services Using Swagger
Exposing Salesforce REST Services Using SwaggerSalesforce Developers
 
PowerShell Basics for Office Apps and Servers
PowerShell Basics for Office Apps and ServersPowerShell Basics for Office Apps and Servers
PowerShell Basics for Office Apps and ServersGreg McMurray
 
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기lanslote
 

Similar to Office 365 & PowerShell Automation (20)

Webinar - Office 365 & PowerShell : A Match Made in Heaven
Webinar - Office 365 & PowerShell : A Match Made in HeavenWebinar - Office 365 & PowerShell : A Match Made in Heaven
Webinar - Office 365 & PowerShell : A Match Made in Heaven
 
SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...
SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...
SPugPt Meeting 35: Manage govern and drive adoption of share point online wit...
 
Office 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heavenOffice 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heaven
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development
 
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshopIntroduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshop
 
Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)
 
jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013
jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013
jsSaturday - PhoneGap and jQuery Mobile for SharePoint 2013
 
O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...
O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...
O365 DEVCamp Los Angeles June 16, 2015 Module 06 Hook into SharePoint APIs wi...
 
Amazon Web Services for PHP Developers
Amazon Web Services for PHP DevelopersAmazon Web Services for PHP Developers
Amazon Web Services for PHP Developers
 
Introduction to windows power shell in sharepoint 2010
Introduction to windows power shell in sharepoint 2010Introduction to windows power shell in sharepoint 2010
Introduction to windows power shell in sharepoint 2010
 
2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps
 
How to do everything with PowerShell
How to do everything with PowerShellHow to do everything with PowerShell
How to do everything with PowerShell
 
SPSTC - PowerShell - Through the SharePoint Looking Glass
SPSTC - PowerShell - Through the SharePoint Looking GlassSPSTC - PowerShell - Through the SharePoint Looking Glass
SPSTC - PowerShell - Through the SharePoint Looking Glass
 
Federico Feroldi - Scala microservices
Federico Feroldi - Scala microservicesFederico Feroldi - Scala microservices
Federico Feroldi - Scala microservices
 
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developersChris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developers
 
PowerShell: Through the SharePoint Looking Glass
PowerShell: Through the SharePoint Looking GlassPowerShell: Through the SharePoint Looking Glass
PowerShell: Through the SharePoint Looking Glass
 
SPO Migration - New API
SPO Migration - New APISPO Migration - New API
SPO Migration - New API
 
Exposing Salesforce REST Services Using Swagger
Exposing Salesforce REST Services Using SwaggerExposing Salesforce REST Services Using Swagger
Exposing Salesforce REST Services Using Swagger
 
PowerShell Basics for Office Apps and Servers
PowerShell Basics for Office Apps and ServersPowerShell Basics for Office Apps and Servers
PowerShell Basics for Office Apps and Servers
 
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
 

More from Sébastien Levert

SharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutes
SharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutesSharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutes
SharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutesSébastien Levert
 
SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...
SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...
SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...Sébastien Levert
 
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
ESPC19 - Supercharge Your Teams Experience with Advanced Development Techniques
ESPC19 - Supercharge Your Teams Experience with Advanced Development TechniquesESPC19 - Supercharge Your Teams Experience with Advanced Development Techniques
ESPC19 - Supercharge Your Teams Experience with Advanced Development TechniquesSébastien Levert
 
ESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFxESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFxSébastien Levert
 
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...
SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...
SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...Sébastien Levert
 
SPC19 - Building tailored search experiences in Modern SharePoint
SPC19 - Building tailored search experiences in Modern SharePointSPC19 - Building tailored search experiences in Modern SharePoint
SPC19 - Building tailored search experiences in Modern SharePointSébastien Levert
 
SharePoint Fest 2019 - Build an intelligent application by connecting it to t...
SharePoint Fest 2019 - Build an intelligent application by connecting it to t...SharePoint Fest 2019 - Build an intelligent application by connecting it to t...
SharePoint Fest 2019 - Build an intelligent application by connecting it to t...Sébastien Levert
 
SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...
SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...
SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...Sébastien Levert
 
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 DevelopmentSébastien Levert
 
Webinar - 2020-03-24 - Build your first Microsoft Teams app using SPFx
Webinar - 2020-03-24 - Build your first Microsoft Teams app using SPFxWebinar - 2020-03-24 - Build your first Microsoft Teams app using SPFx
Webinar - 2020-03-24 - Build your first Microsoft Teams app using SPFxSébastien Levert
 
SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...
SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...
SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...Sébastien Levert
 
SPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 developmentSPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 developmentSébastien Levert
 
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 developmentSharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 developmentSébastien Levert
 
SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...
SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...
SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...Sébastien Levert
 
SharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutes
SharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutesSharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutes
SharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutesSébastien Levert
 
European SharePoint Conference 2018 - Build an intelligent application by con...
European SharePoint Conference 2018 - Build an intelligent application by con...European SharePoint Conference 2018 - Build an intelligent application by con...
European SharePoint Conference 2018 - Build an intelligent application by con...Sébastien Levert
 
SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!
SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!
SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!Sébastien Levert
 
Nashville SharePoint User Group 2018 - Building a modern intranet in 60 minutes
Nashville SharePoint User Group 2018 - Building a modern intranet in 60 minutesNashville SharePoint User Group 2018 - Building a modern intranet in 60 minutes
Nashville SharePoint User Group 2018 - Building a modern intranet in 60 minutesSébastien Levert
 

More from Sébastien Levert (20)

SharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutes
SharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutesSharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutes
SharePoint Fest Chicago 2019 - Build a Full Intranet in 70 minutes
 
SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...
SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...
SharePoint Fest Chicago 2019 - Building tailored search experiences in Modern...
 
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
 
ESPC19 - Supercharge Your Teams Experience with Advanced Development Techniques
ESPC19 - Supercharge Your Teams Experience with Advanced Development TechniquesESPC19 - Supercharge Your Teams Experience with Advanced Development Techniques
ESPC19 - Supercharge Your Teams Experience with Advanced Development Techniques
 
ESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFxESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFx
 
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
 
SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...
SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...
SharePoint Fest Seattle 2019 - Building tailored search experiences in Modern...
 
SPC19 - Building tailored search experiences in Modern SharePoint
SPC19 - Building tailored search experiences in Modern SharePointSPC19 - Building tailored search experiences in Modern SharePoint
SPC19 - Building tailored search experiences in Modern SharePoint
 
SharePoint Fest 2019 - Build an intelligent application by connecting it to t...
SharePoint Fest 2019 - Build an intelligent application by connecting it to t...SharePoint Fest 2019 - Build an intelligent application by connecting it to t...
SharePoint Fest 2019 - Build an intelligent application by connecting it to t...
 
SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...
SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...
SharePoint Fest DC 2019 - Bot Framework and Microsoft Graph - Join The Revolu...
 
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
 
Webinar - 2020-03-24 - Build your first Microsoft Teams app using SPFx
Webinar - 2020-03-24 - Build your first Microsoft Teams app using SPFxWebinar - 2020-03-24 - Build your first Microsoft Teams app using SPFx
Webinar - 2020-03-24 - Build your first Microsoft Teams app using SPFx
 
SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...
SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...
SPTechCon Austin 2019 - Top 10 feature trends to make you fall in love with y...
 
SPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 developmentSPTechCon Austin 2019 - From SharePoint to Office 365 development
SPTechCon Austin 2019 - From SharePoint to Office 365 development
 
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 developmentSharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
 
SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...
SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...
SharePoint Saturday Vienna 2018 - Top 10 feature trends to make you fall in l...
 
SharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutes
SharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutesSharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutes
SharePoint Saturday Vienna 2018 - Building a modern intranet in 60 minutes
 
European SharePoint Conference 2018 - Build an intelligent application by con...
European SharePoint Conference 2018 - Build an intelligent application by con...European SharePoint Conference 2018 - Build an intelligent application by con...
European SharePoint Conference 2018 - Build an intelligent application by con...
 
SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!
SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!
SharePoint Saturday Belgium 2018 - APIs, APIs everywhere!
 
Nashville SharePoint User Group 2018 - Building a modern intranet in 60 minutes
Nashville SharePoint User Group 2018 - Building a modern intranet in 60 minutesNashville SharePoint User Group 2018 - Building a modern intranet in 60 minutes
Nashville SharePoint User Group 2018 - Building a modern intranet in 60 minutes
 

Recently uploaded

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Recently uploaded (20)

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Office 365 & PowerShell Automation

  • 1. SharePoint Saturday Ottawa Office 365 & PowerShell : A match made in heaven Sébastien Levert Office 365 Junkie & MVP November 21st, 2015
  • 2. Thanks to all of our Sponsors!
  • 3. Web Developer @sebastienlevert pimpthecloud.com Who’s Sébastien Levert !? Montreal, Canada negotium.com Office365 MVP
  • 4. Agenda  Introduction to PowerShell in Office 365  Using PowerShell with SharePoint Online  Using PowerShell with the Office 365 APIs  DevOps with PowerShell in Office 365
  • 5.
  • 6. Getting started  Announced at Ignite 2015  http://powershell.office.com  Sets of samples, scenarios, guides, …
  • 7. What do you need ?  An Office 365 tenant  Administrator privileges on your Office 365 tenant  Administrator privileges on your machine running PowerShell  Administration modules  Microsoft Online Services Sign-in Assistant  Azure Active Directory Module  SharePoint Online Module  Skype for Business Online Module
  • 8.
  • 9. Connecting to SharePoint Online  With the SharePoint Online Module  With the SharePoint Client Side Object Model  With the OfficeDev PowerShell Commands  With the SharePoint REST APIs
  • 10.
  • 11. Getting all your Site Collections Demo
  • 12. Getting all your Site Collection Get-SPOSite Get-SPOSite –Detailed Get-SPOSite –Detailed –Filter { Url –like “*term*” }
  • 13.
  • 14.
  • 15. Using SharePoint CSOM in PowerShell  You have to manually get the CSOM Assemblies  You have to manually load the CSOM Assemblies in your PowerShell Sessions  Ensure to have the latest bits of the CSOM Assemblies [AppDomain]::CurrentDomain.GetAssemblies() | Where-Object { $_.FullName -like "*SharePoint*” –or $_.FullName –like “*Office*” } | Select FullName
  • 16. Tips & Tricks  Do not use SharePoint Online Management Shell  Import the SharePoint Online PowerShell module from a regular PowerShell session  Load the required CSOM Assemblies before loading the SharePoint Online Module  Use Gary Lapointe’s Load-CSOMProperties Cmdlet. Everyday.
  • 18. Working with the CSOM Assemblies Import-Module C:PathPTC.O365.PowerShell.psm1 Get-ClientAssemblies –Version 16 –TargetDirectory C:assemblies Add-ClientAssemblies –AssembliesDirectory C:assemblies [AppDomain]::CurrentDomain.GetAssemblies() | Where-Object { $_.FullName -like "*SharePoint*” –or $_.FullName –like “*Office*” } | Select FullName
  • 19. Mixing CSOM and SPO Cmdlets  You can easily use CSOM with the SPO Cmdlets  Use the Cmdlets to get to the Site Collection level  Use CSOM to get into the Webs level
  • 20. Getting all the Sites of every Site Collection Demo
  • 21. Get all the Sites of every Site Collection Import-Module C:PathPTC.O365.PowerShell.psm1 Import-Module Microsoft.Online.SharePoint.PowerShell Connect-SPOService –Url https://tenant-admin.sharepoint.com $credentials = Get-SharePointOnlineCredentials Get-SPOSite | Where-Object { $_.Template –notlike “*EHS#0” } | ForEach-Object { $context = Get-Context –Url $_.Url –Credentials $credentials Get-Webs –Context $context | Select Url }
  • 22. Export the content of a SharePoint list Demo
  • 23. Export the content of a SharePoint list $credentials = Get-SharePointOnlineCredentials $context = Get-Context –Url “https://tenant.sharepoint.com” –Credentials $credentials $web = Get-Web -Context $context $list = Get-List –Web $web –Title “Tasks” $items = Get-ListContent –List $list -Fields @(“ID”, “Title”, “DueDate”) $items | Select @{ Name = “ID”; Expression = { $_[“ID”] } }, @{ Name = “Title”; Expression = { $_[“Title”] } }, @{ Name = “DueDate”; Expression = { $_[“DueDate”] } } | Export-CSV –Path C:Tasks.csv –NoTypeInformation –Encoding UTF8
  • 24.
  • 25. Working with PowerShell.Commands  123 new Cmdlets Delivered by Office Dev Patterns & Practices  Set of Cmdlets used to execute CSOM against SharePoint Online & On-Premises  Uses the OfficeDevPnP.Core framework  Needs to be installed on your machine (more complex than a simple module)  The real power of PowerShell with the PnP enhanced power of CSOM
  • 26. Adding and setting a new theme to a site Demo
  • 27. Adding and setting a new theme to a site Connect-SPOnline –Url https://tenant.sharepoint.com Add-SPOFile –Path C:theme.spcolor –Folder “_catalogs/theme/15” Add-SPOFile –Path C:image.jpg –Folder “SiteAssets” Set-SPOTheme ` –ColorPaletteUrl “/_catalogs/theme/15/theme.spcolor ” ` -BackgroundImageUrl “/SiteAssets/image.jpg”
  • 28.
  • 29. Working with REST and SharePoint Online Awesome series of articles by Gary Lapointe  Magic Function provided  Invoke-SPORestMethod  Easily use “typed” objects in your PowerShell scripts  Remember to escape your $
  • 30. Query list items with OData Demo
  • 31. Query list items with Odata $url = “https://tenant.sharepoint.com/_api/lists/GetByTitle('Tasks')/ite ms?`$select=Id,Title,DueDate,PercentComplete&`$filter=PercentComp lete gt 0.5” $items = Invoke-SPORestMethod –Url $url $items.results | Out-GridView
  • 32. Use the search REST API to query the Graph Demo
  • 33. Using the REST API to query Office Graph $url = “https://tenant.sharepoint.com/_api/search/query?Querytext=‘*’&Pr operties=‘GraphQuery:ACTOR(ME)’&RowLimit=100” $results = Invoke-SPORestMethod –Url $url $results = Get-RestSearchResults –Results $results | Out-GridView
  • 34.
  • 35. Office 365 APIs  Set of APIs delivered to unify the workloads APIs  Built on top of Azure Active Directory Applications  Uses OAuth and JWT for every API call  Enables delegated permissions & App-Only permissions  Give permissions on the needed workloads  When the plumbing is done, it becomes very easy to use
  • 36. Steps to Office 365 API with PowerShell 1. Create an Azure Active Directory Application 2. Create a local certificate 3. Import the certificate data into your Azure AD Application configuration 4. Use the certificate with its password in your PowerShell code 5. Connect to the Office 365 API 6. Play with your data!
  • 38. Getting ready makecert -r -pe -n "CN=PowerShell Office 365 API Application" -b 1/01/2015 -e 12/31/2016 -ss my -len 2048 $keyCredentials = Get-KeyCredentialsManifest –Path C:Certificate.cer
  • 39. Get an Access Token Demo
  • 40. Get an Access Token $global:AzureADApplicationTenantId = “TENANTID” $global:AzureADApplicationClientId = “APPLICATIONID” $global:AzureADApplicationCertificatePath = “C:Certificate.pfx” $global:AzureADApplicationCertificatePassword = “Passw0rd” $exchangeResourceUri = “https://outlook.office365.com/” $token = Get-AccessToken -ResourceUri $exchangeResourceUri
  • 41. Get the content of your Mailbox Demo
  • 42. Get the content of your Mailbox $url = $exchangeResourceUri + “/api/v1.0/users(‘email’)/folders/inbox/messages?$top=50" $response = Invoke-SecuredRestMethod -Method "GET" -AccessToken $token -EndpointUri $url $hasMore = $true $messages = @() while($hasMore) { $response = Invoke-SecuredRestMethod -Method "GET" -AccessToken $token-EndpointUri $url $response.value | ForEach-Object { $messages += $_ } $hasMore = $response.'@odata.nextLink' -ne $null $url = $response.'@odata.nextLink’ } $messages | Select Subject | Out-GridView
  • 44. Prepare the body $body = @{ “Message” = @{ “Subject” = "This is a test email from PowerShell!” “Body” = @{ “ContentType” = “Text”; “Content” = “This email was sent from PowerShell using the Office 365 API.” } “ToRecipients” = @( @{ “EmailAddress” = @{ “Address” = “slevert@sebastienlevert.com” } } ) } $body.SaveToSentItems = $false }
  • 45. Send an Email $url = $exchangeResourceUri + “/api/v1.0/users(‘email’)/sendmail” $response = Invoke-SecuredRestMethod –Method “POST” -AccessToken $token -EndpointUri $url –Body ($body | ConvertTo-Json $body –Depth 4)
  • 46.
  • 47. First… What is DevOps ?  DevOps (a clipped compound of “development” and “operations”) is a software development method that stresses communication, collaboration, integration, automation and measurement of cooperation between software developers and other information-technology (IT) professionals.
  • 48. What it means to me…  Automate everything you can (developers can help!)  Ensure that every configuration can be replicated anywhere at any time  Gain a maximum of control over your deployments  Are you scared of your users ?
  • 49. In the Office 365 world, it means…  Every artifact that is created needs to be scripted or automatically provisioned  Users  Mailboxes  SharePoint  Sites  Columns  Content Types  Lists  …  …
  • 51. Export SharePoint site configuration Connect-SPOnline –Url https://tenant.sharepoint.com Get-SPOProvisioningTemplate –Out C:template.xml - PersistComposedLookFiles
  • 53. Import SharePoint site configuration Connect-SPOnline –Url https://tenant.sharepoint.com Apply-SPOProvisioningTemplate –Path C:template.xml
  • 54.
  • 55. PowerShell for Office 365 Resources  PowerShell for Office 365  http://powershell.office.com  Microsoft Online Services Sign-In Assistant for IT Professionals  http://www.microsoft.com/en-us/download/details.aspx?id=41950  SharePoint Online Management Shell  http://www.microsoft.com/en-us/download/details.aspx?id=35588  Windows PowerShell Module for Skype for Business Online  http://www.microsoft.com/en-us/download/details.aspx?id=39366
  • 56. PowerShell for Office 365 Resources  Azure Active Directory Module for Windows PowerShell  http://go.microsoft.com/fwlink/p/?linkid=236298 (32-bit Version)  http://go.microsoft.com/fwlink/p/?linkid=236297 (64-bit Version)  OfficeDevPnP.PowerShell Commands  https://github.com/OfficeDev/PnP/tree/master/Solutions/PowerShell.Command s  PimpTheCloud PowerShell Office 365 Modules  https://github.com/PimpTheCloud/PTC.O365.PowerShell
  • 57. PowerShell for Office 365 Resources  Gary Lapointe “PowerShell and SharePoint Online REST” articles  http://www.itunity.com/article/sharepoint-rest-service-windows-powershell-1381  http://www.itunity.com/article/custom-windows-powershell-function- sharepoint-rest-service-calls-1985  http://www.itunity.com/article/working-lists-list-items-sharepoint-rest-service- windows-powershell-2077  http://www.itunity.com/article/working-folders-files-sharepoint-rest-service- powershell-2159
  • 58.
  • 59. Thanks to all of our Sponsors!
  • 60. SharePint ! At the Observatory Student Pub in Building A 4:10 pm: New! Experts’ Panel Q&A 4:30 pm: Prizes and Giveaways 4:45 pm: Wrap-up and SharePint! Parking: No need to move your car!* If you don’t know where the Observatory is, ask an organizer or a volunteer for directions. *Please drive responsibly! We are happy to call you a cab 