SlideShare a Scribd company logo
From Event Receivers to SharePoint Webhooks
SharePoint Architect & Knowledge Leader
Office Servers and Services MVP
https://andrevala.com
/in/andrevala
@atomicvee
andre.vala@gmail.com
From Event Receivers to SharePoint Webhooks
From Event Receivers to SharePoint Webhooks
1
1
2003 2007 2010 2013 2016
Server-Side Event Receivers
Remote Event Receivers
SharePoint Webhooks
From Event Receivers to SharePoint Webhooks
2
2
2
Site/Web Events
Site Delete  
Web Delete  
Web Move  
Web Add (2010) 
Web Provision (2010) 


Feature Events
Feature Activate 
Feature Deactivate 
Feature Install 
Feature Uninstall 
Feature Upgrade 
Workflow Events
Workflow Start (2010)  
Workflow Postpone (2010) 
Workflow Complete (2010) 
Entity Instance Events
Entity Instance Add (2013) 
Entity Instance Delete (2013) 
Entity Instance Update (2013) 
Add-In Lifecycle Events
Add-In Install (2013) 
Add-In Upgrade (2013) 
Add-In Uninstall (2013) 
List Events
List Add (2010)  
List Delete (2010)  
Email Reception 
List Schema Events
Field Add  
Field Delete  
Field Update  
List Item Events
Item Add  
Item Delete  
Item Update  
Item Attachment Add  
Item Attachment Delete  
Item Check In  
Item Check Out  
Item Uncheck Out  
Item File Move  
Item File Convert 
Item Version Delete (2013)  
Security Events (2013)
Group Add  
Group Update  
Group Delete  
Group User Add  
Group User Delete  
Role Definition Add  
Role Definition Delete  
Role Definition Update  
Role Assignment Add  
Role Assignment Delete  
Role Assignment Update  
Break Inheritance  
Reset Inheritance  
2
2
SPWeb new SPSite "http://localhost"
SPEventReceiverDefinition
"Receiver.Class1"
"Receiver, Version=1.0.0.0, Culture=neutral, PublicKeyToken =10b23036c9b36d6d"
SPEventReceiverType
2
From Event Receivers to SharePoint Webhooks
3
3
Two Way Event (aka before event)
Client
Remote
Web
SharePoint
Host
1 2
34
3
One Way Event (aka after event)
Client
Remote
Web
SharePoint
Host
1
3
2
Site/Web Events
Site Delete  
Web Delete  
Web Move  
Web Add 
Web Provision 


Feature Events
Feature Activate
Feature Deactivate
Feature Install
Feature Uninstall
Feature Upgrade
Workflow Events
Workflow Start (2010)
Workflow Postpone (2010)
Workflow Complete (2010)
Entity Instance Events
Entity Instance Add  
Entity Instance Delete  
Entity Instance Update  
Add-In Lifecycle Events
Add-In Install 
Add-In Upgrade 
Add-In Uninstall 
List Events
List Add  
List Delete  
Email Reception
List Schema Events
Field Add  
Field Delete  
Field Update  
List Item Events
Item Add  
Item Delete  
Item Update  
Item Attachment Add  
Item Attachment Delete  
Item Check In  
Item Check Out  
Item Uncheck Out  
Item File Move  
Item File Convert 
Item Version Delete  
Security Events
Group Add  
Group Update  
Group Delete  
Group User Add  
Group User Delete  
Role Definition Add  
Role Definition Delete  
Role Definition Update  
Role Assignment Add  
Role Assignment Delete  
Role Assignment Update  
Break Inheritance  
Reset Inheritance  
3
3
3
3
3
3
3
3
3
3
From Event Receivers to SharePoint Webhooks
4
4
POST /_api/web/lists('list-id')/subscriptions
Application
Content-Type: application/json
{
"resource": "https://contoso.sharepoint.com/_api/web/lists({id})",
"notificationUrl": "https://{your host}/your/webhook/service",
"expirationDateTime": "2017-06-18T16:17:57+00:00"
}
SharePoint
Service
4
Application
Your WebHook
notification
service endpoint
POST https://{your host}/your/webhook/service
?validationToken={randomString}
SharePoint
Service
4
Application
Your WebHook
notification
service endpoint
Content-Type: text/plain
{randomString}
HTTP/1.1 200 OK
SharePoint
Service
4
SharePoint
Service
Application
Your WebHook
notification
service endpoint
Content-Type: application/json
{
"id": "a8e6d5e6-9f7f-497a-b97f-8ffe8f559dc7",
"expirationDateTime": "2017-06-18T16:17:57Z",
"notificationUrl": "https://{your host}/your/webhook/service",
"resource": "{id}"
}
HTTP/1.1 201 Created
Application
4
SharePoint
Service
Your WebHook
notification
service endpoint
{
"value":[
{
"subscriptionId":"91779246-afe9-4525-b122-6c199ae89211",
"clientState":"00000000-0000-0000-0000-000000000000",
"expirationDateTime":"2017-06-18T17:27:00.0000000Z",
"resource":"b9f6f714-9df8-470b-b22e-653855e1c181",
"tenantId":"00000000-0000-0000-0000-000000000000",
"siteUrl":"/",
"webId":"dbc5a806-e4d4-46e5-951c-6344d70b62fa"
}
]
}
POST https://{your host}/your/webhook/service
4
SharePoint
Service
Your WebHook
notification
service endpoint
HTTP/1.1 200 OK
4
SharePoint
Service
Your WebHook
notification
service endpoint
HTTP/1.1 200 OK
POST https://{your host}/your/webhook/service
Storage Queue
WebJob
4
SharePoint
Service
Your WebHook
notification
service endpoint
Application
Storage Queue WebJob
SQL Azure DB
POST https://{your host}/your/webhook/service
POST /_api/web/lists('list-id')/subscriptions
Grab “CurrentChangeToken” from list
Persist token per
subscription
Persist last used token per subscription
Grab change token from DB
Site/Web Events
Site Delete
Web Delete
Web Move
Web Add
Web Provision


Feature Events
Feature Activate
Feature Deactivate
Feature Install
Feature Uninstall
Feature Upgrade
Workflow Events
Workflow Start (2010)
Workflow Postpone (2010)
Workflow Complete (2010)
Entity Instance Events
Entity Instance Add
Entity Instance Delete
Entity Instance Update
Add-In Lifecycle Events
Add-In Install
Add-In Upgrade
Add-In Uninstall
List Events
List Add
List Delete
Email Reception
List Schema Events
Field Add
Field Delete
Field Update
List Item Events
Item Add 
Item Delete 
Item Update 
Item Attachment Add 
Item Attachment Delete 
Item Check In 
Item Check Out 
Item Uncheck Out 
Item File Move 
Item File Convert 
Item Version Delete 
Security Events
Group Add
Group Update
Group Delete
Group User Add
Group User Delete
Role Definition Add
Role Definition Delete
Role Definition Update
Role Assignment Add
Role Assignment Delete
Role Assignment Update
Break Inheritance
Reset Inheritance
4
4
PATCH /_api/web/lists('list-id')/subscriptions('subscriptionID')
4
https://ngrok.com/
4
From Event Receivers to SharePoint Webhooks
From Event Receivers to SharePoint Webhooks
5
Event Receivers Remote Event Receivers WebHooks
SharePoint Server 2003 
SharePoint Server 2007 
SharePoint Server 2010 
SharePoint Server 2013  
SharePoint Server 2016  
SharePoint Online  
Event Receivers Remote Event Receivers WebHooks
Site/Web events  
List events  
List schema events  
List item events   
Workflow events 
Security events  
Add-in events  
Feature events 
5
Event Receivers Remote Event Receivers WebHooks
Easy to develop   
Event registration   
Event type coverage   
Security   
Robustness   
Compatibility   
Future proof   
Overall   
5
5
From Event Receivers to SharePoint Webhooks
Webhooks in SharePoint
https://dev.office.com/sharepoint/docs/apis/webhooks
https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/WebHooks.List
Webhooks in Outlook
https://msdn.microsoft.com/office/office365/APi/notify-rest-operations
https://github.com/OfficeDev/PnP/tree/dev/Samples/OutlookNotificationsAPI.WebAPI
Webhooks in OneDrive
https://dev.onedrive.com/webhooks/create-subscription.htm
https://github.com/OneDrive/onedrive-webhooks-aspnet
6
Get started with SharePoint webhooks
https://dev.office.com/sharepoint/docs/apis/webhooks/get-started-webhooks
The lab describes how to build an application that adds and handles SharePoint webhook requests. You will learn how to
use Postman Client to construct and execute SharePoint webhook requests quickly while interacting with a simple ASP.NET
Web API as the webhook receiver.
Prerequisites
To complete the step-by-step instructions in this lab, you will need:
• Google Chrome Browser
• Postman
• Visual Studio Community Edition
• ngrok - See Download and Installation to install ngrok.
• An Office 365 Subscription with SharePoint Online. If you are new to Office 365, you can also sign up for an Office 365 developer
account.
6
Using Azure Functions with SharePoint webhooks
https://dev.office.com/sharepoint/docs/apis/webhooks/sharepoint-webhooks-using-azure-functions
Azure functions
Prerequisites
To complete the step-by-step instructions in this lab, you will need:
• Google Chrome Browser
• Postman
• An Azure subscription to use Azure Functions.
• An Office 365 Subscription with SharePoint Online. If you are new to Office 365, you can also sign up for an Office 365 developer
account.
6
• SharePoint Code Samples
• SharePoint Training videos &
hands on labs
• SharePoint documentation
• SharePoint patterns and
practices solution guidance
https://techcommunity.microsoft.com @OfficeDev
St ar tSt ar t
http://dev.office.com/podcasts
http://sharepoint.uservoi
ce.com/
Stack overflow
[sharepoint] http://aka.ms/O365DevShow
SharePoint Patterns and Practices
http://aka.ms/sppnp
Thank You!
Ad

More Related Content

What's hot (20)

Microsoft Teams Graph API
Microsoft Teams Graph APIMicrosoft Teams Graph API
Microsoft Teams Graph API
NarasimaPerumal Chandramohan
 
Developing With Data Technologies
Developing With Data TechnologiesDeveloping With Data Technologies
Developing With Data Technologies
Chakkaradeep Chandran
 
Lightning Components Workshop v2
Lightning Components Workshop v2Lightning Components Workshop v2
Lightning Components Workshop v2
Christophe Coenraets
 
Suguk activity feed
Suguk activity feedSuguk activity feed
Suguk activity feed
Wes Hackett
 
Salesforce Lightning Components Workshop
Salesforce Lightning Components WorkshopSalesforce Lightning Components Workshop
Salesforce Lightning Components Workshop
Christophe Coenraets
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFx
NCCOMMS
 
Microsoft Graph: Connect to essential data every app needs
Microsoft Graph: Connect to essential data every app needsMicrosoft Graph: Connect to essential data every app needs
Microsoft Graph: Connect to essential data every app needs
Microsoft Tech Community
 
ECS19 - Dragan Panjkov - Connecting Enterprise Software With Flow
ECS19 - Dragan Panjkov - Connecting Enterprise Software With FlowECS19 - Dragan Panjkov - Connecting Enterprise Software With Flow
ECS19 - Dragan Panjkov - Connecting Enterprise Software With Flow
European Collaboration Summit
 
Hooking SharePoint APIs with Android
Hooking SharePoint APIs with AndroidHooking SharePoint APIs with Android
Hooking SharePoint APIs with Android
Kris Wagner
 
Online mobile game server use Firebase realtime aatabase
Online mobile game server use Firebase realtime aatabaseOnline mobile game server use Firebase realtime aatabase
Online mobile game server use Firebase realtime aatabase
Nguyễn Bá Thành
 
How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...
How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...
How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...
atwork
 
Microsoft identity platform developer community call-October 2019
Microsoft identity platform developer community call-October 2019Microsoft identity platform developer community call-October 2019
Microsoft identity platform developer community call-October 2019
Microsoft 365 Developer
 
Configure an Integrated Exchange, Lync, and SharePoint Test Lab
Configure an Integrated Exchange, Lync, and SharePoint Test LabConfigure an Integrated Exchange, Lync, and SharePoint Test Lab
Configure an Integrated Exchange, Lync, and SharePoint Test Lab
Vinh Nguyen
 
SharePoint 2010 Application Development Overview
SharePoint 2010 Application Development OverviewSharePoint 2010 Application Development Overview
SharePoint 2010 Application Development Overview
Rob Windsor
 
Getting Started with the Office 365 API
Getting Started with the Office 365 APIGetting Started with the Office 365 API
Getting Started with the Office 365 API
Bjørn Harald Rapp [ MVP, MCT ]
 
Automating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShellAutomating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShell
Geoff Varosky
 
An IT Pro Guide to Deploying and Managing SharePoint 2013 Apps
An IT Pro Guide to Deploying and Managing SharePoint 2013 AppsAn IT Pro Guide to Deploying and Managing SharePoint 2013 Apps
An IT Pro Guide to Deploying and Managing SharePoint 2013 Apps
Randy Williams
 
SharePoint 2010 Enterprise Search
SharePoint 2010 Enterprise SearchSharePoint 2010 Enterprise Search
SharePoint 2010 Enterprise Search
Agnes Molnar
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio Lightswitch
Rob Windsor
 
Practical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - HonoluluPractical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - Honolulu
Ivan Sanders
 
Suguk activity feed
Suguk activity feedSuguk activity feed
Suguk activity feed
Wes Hackett
 
Salesforce Lightning Components Workshop
Salesforce Lightning Components WorkshopSalesforce Lightning Components Workshop
Salesforce Lightning Components Workshop
Christophe Coenraets
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFx
NCCOMMS
 
Microsoft Graph: Connect to essential data every app needs
Microsoft Graph: Connect to essential data every app needsMicrosoft Graph: Connect to essential data every app needs
Microsoft Graph: Connect to essential data every app needs
Microsoft Tech Community
 
ECS19 - Dragan Panjkov - Connecting Enterprise Software With Flow
ECS19 - Dragan Panjkov - Connecting Enterprise Software With FlowECS19 - Dragan Panjkov - Connecting Enterprise Software With Flow
ECS19 - Dragan Panjkov - Connecting Enterprise Software With Flow
European Collaboration Summit
 
Hooking SharePoint APIs with Android
Hooking SharePoint APIs with AndroidHooking SharePoint APIs with Android
Hooking SharePoint APIs with Android
Kris Wagner
 
Online mobile game server use Firebase realtime aatabase
Online mobile game server use Firebase realtime aatabaseOnline mobile game server use Firebase realtime aatabase
Online mobile game server use Firebase realtime aatabase
Nguyễn Bá Thành
 
How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...
How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...
How to (remote) control Office 365 with Azure (SharePoint Konferenz ppEDV Erd...
atwork
 
Microsoft identity platform developer community call-October 2019
Microsoft identity platform developer community call-October 2019Microsoft identity platform developer community call-October 2019
Microsoft identity platform developer community call-October 2019
Microsoft 365 Developer
 
Configure an Integrated Exchange, Lync, and SharePoint Test Lab
Configure an Integrated Exchange, Lync, and SharePoint Test LabConfigure an Integrated Exchange, Lync, and SharePoint Test Lab
Configure an Integrated Exchange, Lync, and SharePoint Test Lab
Vinh Nguyen
 
SharePoint 2010 Application Development Overview
SharePoint 2010 Application Development OverviewSharePoint 2010 Application Development Overview
SharePoint 2010 Application Development Overview
Rob Windsor
 
Automating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShellAutomating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShell
Geoff Varosky
 
An IT Pro Guide to Deploying and Managing SharePoint 2013 Apps
An IT Pro Guide to Deploying and Managing SharePoint 2013 AppsAn IT Pro Guide to Deploying and Managing SharePoint 2013 Apps
An IT Pro Guide to Deploying and Managing SharePoint 2013 Apps
Randy Williams
 
SharePoint 2010 Enterprise Search
SharePoint 2010 Enterprise SearchSharePoint 2010 Enterprise Search
SharePoint 2010 Enterprise Search
Agnes Molnar
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio Lightswitch
Rob Windsor
 
Practical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - HonoluluPractical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - Honolulu
Ivan Sanders
 

Similar to From Event Receivers to SharePoint Webhooks (20)

Jeremy Thake Perth Share Point Ug Sp2010 How Will Be Affect Me
Jeremy Thake  Perth Share Point Ug   Sp2010 How Will Be Affect MeJeremy Thake  Perth Share Point Ug   Sp2010 How Will Be Affect Me
Jeremy Thake Perth Share Point Ug Sp2010 How Will Be Affect Me
Jeremy Thake
 
Sharepoint Online
Sharepoint OnlineSharepoint Online
Sharepoint Online
Shakir Majeed Khan
 
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
BlueMetalInc
 
SPTechCon - Boston 2014 - Getting started with Office 365
SPTechCon - Boston 2014 - Getting started with Office 365SPTechCon - Boston 2014 - Getting started with Office 365
SPTechCon - Boston 2014 - Getting started with Office 365
Dan Usher
 
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
lanslote
 
SharePoint Silverlight Sandboxed solutions
SharePoint Silverlight Sandboxed solutionsSharePoint Silverlight Sandboxed solutions
SharePoint Silverlight Sandboxed solutions
Phil Wicklund
 
Admin 101: So You're the New SharePoint Administrator...
Admin 101: So You're the New SharePoint Administrator...Admin 101: So You're the New SharePoint Administrator...
Admin 101: So You're the New SharePoint Administrator...
Scott Hoag
 
So You're the New SharePoint Administrator
So You're the New SharePoint AdministratorSo You're the New SharePoint Administrator
So You're the New SharePoint Administrator
Dan Usher
 
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint FilesECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
European Collaboration Summit
 
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
Drew Madelung
 
Chris McNulty: ECM/WCM Planning, Implementation and Migration Strategies
Chris McNulty: ECM/WCM Planning, Implementation and Migration StrategiesChris McNulty: ECM/WCM Planning, Implementation and Migration Strategies
Chris McNulty: ECM/WCM Planning, Implementation and Migration Strategies
SharePoint Saturday NY
 
Rewriting a Plugin Architecture 3 Times to Harness the API Economy
Rewriting a Plugin Architecture 3 Times to Harness the API EconomyRewriting a Plugin Architecture 3 Times to Harness the API Economy
Rewriting a Plugin Architecture 3 Times to Harness the API Economy
Tim Pettersen
 
Unity and Azure Mobile Services using Prime31 plugin
Unity and Azure Mobile Services using Prime31 pluginUnity and Azure Mobile Services using Prime31 plugin
Unity and Azure Mobile Services using Prime31 plugin
David Douglas
 
AWS CodeDeploy
AWS CodeDeployAWS CodeDeploy
AWS CodeDeploy
TO THE NEW | Technology
 
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer PlatformSoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
Ivan Sanders
 
KMA Deck -C. McNulty discusses ecm wcm-upgrades2010 - nyc
KMA Deck -C. McNulty discusses ecm wcm-upgrades2010 - nycKMA Deck -C. McNulty discusses ecm wcm-upgrades2010 - nyc
KMA Deck -C. McNulty discusses ecm wcm-upgrades2010 - nyc
Knowledge Management Associates, LLC
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
ukdpe
 
PDC Highlights
PDC HighlightsPDC Highlights
PDC Highlights
MS Innovation Days
 
2012 12 best of spc - moving to the sp2013 app model
2012 12 best of spc - moving to the sp2013 app model2012 12 best of spc - moving to the sp2013 app model
2012 12 best of spc - moving to the sp2013 app model
bgerman
 
Stat 5.4 Pre Sales Demo Master
Stat 5.4 Pre Sales Demo MasterStat 5.4 Pre Sales Demo Master
Stat 5.4 Pre Sales Demo Master
reachtimsq
 
Jeremy Thake Perth Share Point Ug Sp2010 How Will Be Affect Me
Jeremy Thake  Perth Share Point Ug   Sp2010 How Will Be Affect MeJeremy Thake  Perth Share Point Ug   Sp2010 How Will Be Affect Me
Jeremy Thake Perth Share Point Ug Sp2010 How Will Be Affect Me
Jeremy Thake
 
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
BlueMetalInc
 
SPTechCon - Boston 2014 - Getting started with Office 365
SPTechCon - Boston 2014 - Getting started with Office 365SPTechCon - Boston 2014 - Getting started with Office 365
SPTechCon - Boston 2014 - Getting started with Office 365
Dan Usher
 
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
lanslote
 
SharePoint Silverlight Sandboxed solutions
SharePoint Silverlight Sandboxed solutionsSharePoint Silverlight Sandboxed solutions
SharePoint Silverlight Sandboxed solutions
Phil Wicklund
 
Admin 101: So You're the New SharePoint Administrator...
Admin 101: So You're the New SharePoint Administrator...Admin 101: So You're the New SharePoint Administrator...
Admin 101: So You're the New SharePoint Administrator...
Scott Hoag
 
So You're the New SharePoint Administrator
So You're the New SharePoint AdministratorSo You're the New SharePoint Administrator
So You're the New SharePoint Administrator
Dan Usher
 
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint FilesECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
European Collaboration Summit
 
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
Drew Madelung
 
Chris McNulty: ECM/WCM Planning, Implementation and Migration Strategies
Chris McNulty: ECM/WCM Planning, Implementation and Migration StrategiesChris McNulty: ECM/WCM Planning, Implementation and Migration Strategies
Chris McNulty: ECM/WCM Planning, Implementation and Migration Strategies
SharePoint Saturday NY
 
Rewriting a Plugin Architecture 3 Times to Harness the API Economy
Rewriting a Plugin Architecture 3 Times to Harness the API EconomyRewriting a Plugin Architecture 3 Times to Harness the API Economy
Rewriting a Plugin Architecture 3 Times to Harness the API Economy
Tim Pettersen
 
Unity and Azure Mobile Services using Prime31 plugin
Unity and Azure Mobile Services using Prime31 pluginUnity and Azure Mobile Services using Prime31 plugin
Unity and Azure Mobile Services using Prime31 plugin
David Douglas
 
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer PlatformSoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
Ivan Sanders
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
ukdpe
 
2012 12 best of spc - moving to the sp2013 app model
2012 12 best of spc - moving to the sp2013 app model2012 12 best of spc - moving to the sp2013 app model
2012 12 best of spc - moving to the sp2013 app model
bgerman
 
Stat 5.4 Pre Sales Demo Master
Stat 5.4 Pre Sales Demo MasterStat 5.4 Pre Sales Demo Master
Stat 5.4 Pre Sales Demo Master
reachtimsq
 
Ad

More from André Vala (19)

RGPD - Testemunho do Mundo Real
RGPD - Testemunho do Mundo RealRGPD - Testemunho do Mundo Real
RGPD - Testemunho do Mundo Real
André Vala
 
SharePoint - Presente e Futuro
SharePoint - Presente e FuturoSharePoint - Presente e Futuro
SharePoint - Presente e Futuro
André Vala
 
Soluções com Office Graph
Soluções com Office GraphSoluções com Office Graph
Soluções com Office Graph
André Vala
 
Host-Named Site Collections in SharePoint 2013
Host-Named Site Collections in SharePoint 2013Host-Named Site Collections in SharePoint 2013
Host-Named Site Collections in SharePoint 2013
André Vala
 
User License Enforcement em SharePoint 2013
User License Enforcement em SharePoint 2013User License Enforcement em SharePoint 2013
User License Enforcement em SharePoint 2013
André Vala
 
How To Use Host-Named Site Collections
How To Use Host-Named Site CollectionsHow To Use Host-Named Site Collections
How To Use Host-Named Site Collections
André Vala
 
Novidades na pesquisa no SharePoint 2013
Novidades na pesquisa no SharePoint 2013Novidades na pesquisa no SharePoint 2013
Novidades na pesquisa no SharePoint 2013
André Vala
 
Building Public Web Sites in SharePoint 2010
Building Public Web Sites in SharePoint 2010 Building Public Web Sites in SharePoint 2010
Building Public Web Sites in SharePoint 2010
André Vala
 
SharePoint + Azure = Better Together
SharePoint + Azure = Better TogetherSharePoint + Azure = Better Together
SharePoint + Azure = Better Together
André Vala
 
Federated Authentication in SharePoint 2010
Federated Authentication in SharePoint 2010Federated Authentication in SharePoint 2010
Federated Authentication in SharePoint 2010
André Vala
 
Using BCS to integrate Azure Services with SharePoint 2010
Using BCS to integrate Azure Services with SharePoint 2010Using BCS to integrate Azure Services with SharePoint 2010
Using BCS to integrate Azure Services with SharePoint 2010
André Vala
 
LINQ to SharePoint
LINQ to SharePointLINQ to SharePoint
LINQ to SharePoint
André Vala
 
Solução de Negócio baseadas em Office 2010 e SharePoint 2010
Solução de Negócio baseadas em Office 2010 e SharePoint 2010Solução de Negócio baseadas em Office 2010 e SharePoint 2010
Solução de Negócio baseadas em Office 2010 e SharePoint 2010
André Vala
 
SharePoint Deployment
SharePoint DeploymentSharePoint Deployment
SharePoint Deployment
André Vala
 
Microsoft Planner Deep Dive
Microsoft Planner Deep DiveMicrosoft Planner Deep Dive
Microsoft Planner Deep Dive
André Vala
 
Office 365 Groups Deep Dive
Office 365 Groups Deep DiveOffice 365 Groups Deep Dive
Office 365 Groups Deep Dive
André Vala
 
Content Recommendation with SharePoint Search
Content Recommendation with SharePoint SearchContent Recommendation with SharePoint Search
Content Recommendation with SharePoint Search
André Vala
 
Building Solutions with Office Graph
Building Solutions with Office GraphBuilding Solutions with Office Graph
Building Solutions with Office Graph
André Vala
 
Working with AngularJS
Working with AngularJSWorking with AngularJS
Working with AngularJS
André Vala
 
RGPD - Testemunho do Mundo Real
RGPD - Testemunho do Mundo RealRGPD - Testemunho do Mundo Real
RGPD - Testemunho do Mundo Real
André Vala
 
SharePoint - Presente e Futuro
SharePoint - Presente e FuturoSharePoint - Presente e Futuro
SharePoint - Presente e Futuro
André Vala
 
Soluções com Office Graph
Soluções com Office GraphSoluções com Office Graph
Soluções com Office Graph
André Vala
 
Host-Named Site Collections in SharePoint 2013
Host-Named Site Collections in SharePoint 2013Host-Named Site Collections in SharePoint 2013
Host-Named Site Collections in SharePoint 2013
André Vala
 
User License Enforcement em SharePoint 2013
User License Enforcement em SharePoint 2013User License Enforcement em SharePoint 2013
User License Enforcement em SharePoint 2013
André Vala
 
How To Use Host-Named Site Collections
How To Use Host-Named Site CollectionsHow To Use Host-Named Site Collections
How To Use Host-Named Site Collections
André Vala
 
Novidades na pesquisa no SharePoint 2013
Novidades na pesquisa no SharePoint 2013Novidades na pesquisa no SharePoint 2013
Novidades na pesquisa no SharePoint 2013
André Vala
 
Building Public Web Sites in SharePoint 2010
Building Public Web Sites in SharePoint 2010 Building Public Web Sites in SharePoint 2010
Building Public Web Sites in SharePoint 2010
André Vala
 
SharePoint + Azure = Better Together
SharePoint + Azure = Better TogetherSharePoint + Azure = Better Together
SharePoint + Azure = Better Together
André Vala
 
Federated Authentication in SharePoint 2010
Federated Authentication in SharePoint 2010Federated Authentication in SharePoint 2010
Federated Authentication in SharePoint 2010
André Vala
 
Using BCS to integrate Azure Services with SharePoint 2010
Using BCS to integrate Azure Services with SharePoint 2010Using BCS to integrate Azure Services with SharePoint 2010
Using BCS to integrate Azure Services with SharePoint 2010
André Vala
 
LINQ to SharePoint
LINQ to SharePointLINQ to SharePoint
LINQ to SharePoint
André Vala
 
Solução de Negócio baseadas em Office 2010 e SharePoint 2010
Solução de Negócio baseadas em Office 2010 e SharePoint 2010Solução de Negócio baseadas em Office 2010 e SharePoint 2010
Solução de Negócio baseadas em Office 2010 e SharePoint 2010
André Vala
 
SharePoint Deployment
SharePoint DeploymentSharePoint Deployment
SharePoint Deployment
André Vala
 
Microsoft Planner Deep Dive
Microsoft Planner Deep DiveMicrosoft Planner Deep Dive
Microsoft Planner Deep Dive
André Vala
 
Office 365 Groups Deep Dive
Office 365 Groups Deep DiveOffice 365 Groups Deep Dive
Office 365 Groups Deep Dive
André Vala
 
Content Recommendation with SharePoint Search
Content Recommendation with SharePoint SearchContent Recommendation with SharePoint Search
Content Recommendation with SharePoint Search
André Vala
 
Building Solutions with Office Graph
Building Solutions with Office GraphBuilding Solutions with Office Graph
Building Solutions with Office Graph
André Vala
 
Working with AngularJS
Working with AngularJSWorking with AngularJS
Working with AngularJS
André Vala
 
Ad

Recently uploaded (20)

Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 

From Event Receivers to SharePoint Webhooks

  • 2. SharePoint Architect & Knowledge Leader Office Servers and Services MVP https://andrevala.com /in/andrevala @atomicvee [email protected]
  • 5. 1
  • 6. 1 2003 2007 2010 2013 2016 Server-Side Event Receivers Remote Event Receivers SharePoint Webhooks
  • 8. 2
  • 9. 2
  • 10. 2
  • 11. Site/Web Events Site Delete   Web Delete   Web Move   Web Add (2010)  Web Provision (2010)    Feature Events Feature Activate  Feature Deactivate  Feature Install  Feature Uninstall  Feature Upgrade  Workflow Events Workflow Start (2010)   Workflow Postpone (2010)  Workflow Complete (2010)  Entity Instance Events Entity Instance Add (2013)  Entity Instance Delete (2013)  Entity Instance Update (2013)  Add-In Lifecycle Events Add-In Install (2013)  Add-In Upgrade (2013)  Add-In Uninstall (2013)  List Events List Add (2010)   List Delete (2010)   Email Reception  List Schema Events Field Add   Field Delete   Field Update   List Item Events Item Add   Item Delete   Item Update   Item Attachment Add   Item Attachment Delete   Item Check In   Item Check Out   Item Uncheck Out   Item File Move   Item File Convert  Item Version Delete (2013)   Security Events (2013) Group Add   Group Update   Group Delete   Group User Add   Group User Delete   Role Definition Add   Role Definition Delete   Role Definition Update   Role Assignment Add   Role Assignment Delete   Role Assignment Update   Break Inheritance   Reset Inheritance   2
  • 12. 2 SPWeb new SPSite "http://localhost" SPEventReceiverDefinition "Receiver.Class1" "Receiver, Version=1.0.0.0, Culture=neutral, PublicKeyToken =10b23036c9b36d6d" SPEventReceiverType
  • 13. 2
  • 15. 3
  • 16. 3 Two Way Event (aka before event) Client Remote Web SharePoint Host 1 2 34
  • 17. 3 One Way Event (aka after event) Client Remote Web SharePoint Host 1 3 2
  • 18. Site/Web Events Site Delete   Web Delete   Web Move   Web Add  Web Provision    Feature Events Feature Activate Feature Deactivate Feature Install Feature Uninstall Feature Upgrade Workflow Events Workflow Start (2010) Workflow Postpone (2010) Workflow Complete (2010) Entity Instance Events Entity Instance Add   Entity Instance Delete   Entity Instance Update   Add-In Lifecycle Events Add-In Install  Add-In Upgrade  Add-In Uninstall  List Events List Add   List Delete   Email Reception List Schema Events Field Add   Field Delete   Field Update   List Item Events Item Add   Item Delete   Item Update   Item Attachment Add   Item Attachment Delete   Item Check In   Item Check Out   Item Uncheck Out   Item File Move   Item File Convert  Item Version Delete   Security Events Group Add   Group Update   Group Delete   Group User Add   Group User Delete   Role Definition Add   Role Definition Delete   Role Definition Update   Role Assignment Add   Role Assignment Delete   Role Assignment Update   Break Inheritance   Reset Inheritance   3
  • 19. 3
  • 20. 3
  • 21. 3
  • 22. 3
  • 23. 3
  • 24. 3
  • 25. 3
  • 26. 3
  • 27. 3
  • 29. 4
  • 30. 4 POST /_api/web/lists('list-id')/subscriptions Application Content-Type: application/json { "resource": "https://contoso.sharepoint.com/_api/web/lists({id})", "notificationUrl": "https://{your host}/your/webhook/service", "expirationDateTime": "2017-06-18T16:17:57+00:00" } SharePoint Service
  • 31. 4 Application Your WebHook notification service endpoint POST https://{your host}/your/webhook/service ?validationToken={randomString} SharePoint Service
  • 32. 4 Application Your WebHook notification service endpoint Content-Type: text/plain {randomString} HTTP/1.1 200 OK SharePoint Service
  • 33. 4 SharePoint Service Application Your WebHook notification service endpoint Content-Type: application/json { "id": "a8e6d5e6-9f7f-497a-b97f-8ffe8f559dc7", "expirationDateTime": "2017-06-18T16:17:57Z", "notificationUrl": "https://{your host}/your/webhook/service", "resource": "{id}" } HTTP/1.1 201 Created Application
  • 36. 4 SharePoint Service Your WebHook notification service endpoint HTTP/1.1 200 OK POST https://{your host}/your/webhook/service Storage Queue WebJob
  • 37. 4 SharePoint Service Your WebHook notification service endpoint Application Storage Queue WebJob SQL Azure DB POST https://{your host}/your/webhook/service POST /_api/web/lists('list-id')/subscriptions Grab “CurrentChangeToken” from list Persist token per subscription Persist last used token per subscription Grab change token from DB
  • 38. Site/Web Events Site Delete Web Delete Web Move Web Add Web Provision   Feature Events Feature Activate Feature Deactivate Feature Install Feature Uninstall Feature Upgrade Workflow Events Workflow Start (2010) Workflow Postpone (2010) Workflow Complete (2010) Entity Instance Events Entity Instance Add Entity Instance Delete Entity Instance Update Add-In Lifecycle Events Add-In Install Add-In Upgrade Add-In Uninstall List Events List Add List Delete Email Reception List Schema Events Field Add Field Delete Field Update List Item Events Item Add  Item Delete  Item Update  Item Attachment Add  Item Attachment Delete  Item Check In  Item Check Out  Item Uncheck Out  Item File Move  Item File Convert  Item Version Delete  Security Events Group Add Group Update Group Delete Group User Add Group User Delete Role Definition Add Role Definition Delete Role Definition Update Role Assignment Add Role Assignment Delete Role Assignment Update Break Inheritance Reset Inheritance 4
  • 39. 4
  • 44. 5 Event Receivers Remote Event Receivers WebHooks SharePoint Server 2003  SharePoint Server 2007  SharePoint Server 2010  SharePoint Server 2013   SharePoint Server 2016   SharePoint Online  
  • 45. Event Receivers Remote Event Receivers WebHooks Site/Web events   List events   List schema events   List item events    Workflow events  Security events   Add-in events   Feature events  5
  • 46. Event Receivers Remote Event Receivers WebHooks Easy to develop    Event registration    Event type coverage    Security    Robustness    Compatibility    Future proof    Overall    5
  • 47. 5
  • 49. Webhooks in SharePoint https://dev.office.com/sharepoint/docs/apis/webhooks https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/WebHooks.List Webhooks in Outlook https://msdn.microsoft.com/office/office365/APi/notify-rest-operations https://github.com/OfficeDev/PnP/tree/dev/Samples/OutlookNotificationsAPI.WebAPI Webhooks in OneDrive https://dev.onedrive.com/webhooks/create-subscription.htm https://github.com/OneDrive/onedrive-webhooks-aspnet 6
  • 50. Get started with SharePoint webhooks https://dev.office.com/sharepoint/docs/apis/webhooks/get-started-webhooks The lab describes how to build an application that adds and handles SharePoint webhook requests. You will learn how to use Postman Client to construct and execute SharePoint webhook requests quickly while interacting with a simple ASP.NET Web API as the webhook receiver. Prerequisites To complete the step-by-step instructions in this lab, you will need: • Google Chrome Browser • Postman • Visual Studio Community Edition • ngrok - See Download and Installation to install ngrok. • An Office 365 Subscription with SharePoint Online. If you are new to Office 365, you can also sign up for an Office 365 developer account. 6
  • 51. Using Azure Functions with SharePoint webhooks https://dev.office.com/sharepoint/docs/apis/webhooks/sharepoint-webhooks-using-azure-functions Azure functions Prerequisites To complete the step-by-step instructions in this lab, you will need: • Google Chrome Browser • Postman • An Azure subscription to use Azure Functions. • An Office 365 Subscription with SharePoint Online. If you are new to Office 365, you can also sign up for an Office 365 developer account. 6
  • 52. • SharePoint Code Samples • SharePoint Training videos & hands on labs • SharePoint documentation • SharePoint patterns and practices solution guidance
  • 53. https://techcommunity.microsoft.com @OfficeDev St ar tSt ar t http://dev.office.com/podcasts http://sharepoint.uservoi ce.com/ Stack overflow [sharepoint] http://aka.ms/O365DevShow SharePoint Patterns and Practices http://aka.ms/sppnp