Browse Guides

SharePoint Integration
Reading mode
Copy Link
Link Copied!
Print
Feedback
This guide has multiple versions available:
<style>p { margin: 0; }span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left:0; padding-left:5px;}blockquote blockquote{ border-color: #00bcd4; color: #00bcd4;}blockquote blockquote blockquote{ border-color: #43a047; color: #43a047;} table.grid{ border-collapse: collapse;} table.grid td, table.grid th { border: 1px solid #ddd;} .fr-fic.fr-dib{ display: block; margin: 5px auto;}.fr-fic.fr-dib.fr-fir{ text-align: right; margin: 5px 0 5px auto;}.fr-fic.fr-dib.fr-fil{ text-align: left; margin: 5px auto 5px 0;}.fr-fic.fr-dii{ float: none; margin: 5px auto;}.fr-fic.fr-dii.fr-fil{ float: left; margin: 5px auto;}.fr-fic.fr-dii.fr-fir{ float: right; margin: 5px auto;}img.fr-dib.fr-fir { margin-right: 0; text-align: right;}img.fr-dib.fr-fil { margin-left: 0; text-align: left;}img.fr-dib { margin: 5px auto; display: block; float: none;}img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC;}img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc;}img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;}</style><style> p { margin: 0; } span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px; } blockquote blockquote { border-color: #00bcd4; color: #00bcd4; } blockquote blockquote blockquote { border-color: #43a047; color: #43a047; } table.grid { border-collapse: collapse; } table.grid td, table.grid th { border: 1px solid #ddd; } .fr-fic.fr-dib { display: block; margin: 5px auto; } .fr-fic.fr-dib.fr-fir { text-align: right; margin: 5px 0 5px auto; } .fr-fic.fr-dib.fr-fil { text-align: left; margin: 5px auto 5px 0; } .fr-fic.fr-dii { float: none; margin: 5px auto; } .fr-fic.fr-dii.fr-fil { float: left; margin: 5px auto; } .fr-fic.fr-dii.fr-fir { float: right; margin: 5px auto; } img.fr-dib.fr-fir { margin-right: 0; text-align: right; } img.fr-dib.fr-fil { margin-left: 0; text-align: left; } img.fr-dib { margin: 5px auto; display: block; float: none; } img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC; } img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc; } img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; } </style><style> p { margin: 0; } span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px; } blockquote blockquote { border-color: #00bcd4; color: #00bcd4; } blockquote blockquote blockquote { border-color: #43a047; color: #43a047; } table.grid { border-collapse: collapse; } table.grid td, table.grid th { border: 1px solid #ddd; } .fr-fic.fr-dib { display: block; margin: 5px auto; } .fr-fic.fr-dib.fr-fir { text-align: right; margin: 5px 0 5px auto; } .fr-fic.fr-dib.fr-fil { text-align: left; margin: 5px auto 5px 0; } .fr-fic.fr-dii { float: none; margin: 5px auto; } .fr-fic.fr-dii.fr-fil { float: left; margin: 5px auto; } .fr-fic.fr-dii.fr-fir { float: right; margin: 5px auto; } img.fr-dib.fr-fir { margin-right: 0; text-align: right; } img.fr-dib.fr-fil { margin-left: 0; text-align: left; } img.fr-dib { margin: 5px auto; display: block; float: none; } img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC; } img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc; } img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; } </style><div><div><div><div><div><style> p { margin: 0; } span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px; } blockquote blockquote { border-color: #00bcd4; color: #00bcd4; } blockquote blockquote blockquote { border-color: #43a047; color: #43a047; } table.grid { border-collapse: collapse; } table.grid td, table.grid th { border: 1px solid #ddd; } .fr-fic.fr-dib { display: block; margin: 5px auto; } .fr-fic.fr-dib.fr-fir { text-align: right; margin: 5px 0 5px auto; } .fr-fic.fr-dib.fr-fil { text-align: left; margin: 5px auto 5px 0; } .fr-fic.fr-dii { float: none; margin: 5px auto; } .fr-fic.fr-dii.fr-fil { float: left; margin: 5px auto; } .fr-fic.fr-dii.fr-fir { float: right; margin: 5px auto; } img.fr-dib.fr-fir { margin-right: 0; text-align: right; } img.fr-dib.fr-fil { margin-left: 0; text-align: left; } img.fr-dib { margin: 5px auto; display: block; float: none; } img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC; } img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc; } img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; } </style><div><div><div><div><style> p { margin: 0; } span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px; } blockquote blockquote { border-color: #00bcd4; color: #00bcd4; } blockquote blockquote blockquote { border-color: #43a047; color: #43a047; } table.grid { border-collapse: collapse; } table.grid td, table.grid th { border: 1px solid #ddd; } .fr-fic.fr-dib { display: block; margin: 5px auto; } .fr-fic.fr-dib.fr-fir { text-align: right; margin: 5px 0 5px auto; } .fr-fic.fr-dib.fr-fil { text-align: left; margin: 5px auto 5px 0; } .fr-fic.fr-dii { float: none; margin: 5px auto; } .fr-fic.fr-dii.fr-fil { float: left; margin: 5px auto; } .fr-fic.fr-dii.fr-fir { float: right; margin: 5px auto; } img.fr-dib.fr-fir { margin-right: 0; text-align: right; } img.fr-dib.fr-fil { margin-left: 0; text-align: left; } img.fr-dib { margin: 5px auto; display: block; float: none; } img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC; } img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc; } img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; } </style><div><p><br></p><p><span style="font-size: 11pt;"><strong>In this guide we will cover:</strong></span></p><p><span style="font-size: 11pt;"><strong>- What is the SharePoint Integration?</strong></span></p><p><span style="font-size: 11pt;"><strong>- Enabling the SharePoint Module</strong></span></p><p data-pasted="true"><span style="font-size: 11pt;"><strong>- Creating folders in Document Management&nbsp;</strong></span></p><p><span style="font-size: 11pt;"><strong>- Connecting SharePoint</strong></span></p><p><span style="font-size: 11pt;"><strong>- Configuring Mappings</strong></span></p><p><span style="font-size: 11pt;"><strong>- Using the Integration</strong></span></p><p><br></p><p><br></p><p><span style="font-size: 11pt;"><strong>Admin Guides:</strong></span></p><ul><li><span style="font-size: 11pt;"><a href="https://usehalo.com/haloitsm/guides/2129" target="_blank" rel="noopener noreferrer"><strong>Document Management<br></strong></a></span></li></ul><p><span style="font-size: 11pt;"><strong><br></strong></span></p><p><span style="font-size: 11pt;"><strong>Related Guides:</strong></span></p><ul><li><span style="font-size: 11pt;"><a href="https://usehalo.com/haloitsm/guides/2130" target="_blank" rel="noopener noreferrer"><strong>Document Management Area</strong></a>&nbsp;</span></li><li style="font-weight: bold;"><span style="font-size: 11pt;"><a href="https://usehalo.com/haloitsm/guides/2318/" target="_blank" rel="noopener noreferrer"><strong>Document Management for Customers, Sites and Users</strong></a></span><a href="https://usehalo.com/haloitsm/guides/2318/" target="_blank" rel="noopener noreferrer"><strong><br></strong></a></li></ul><br><span style="font-size: 14pt;" id="isPasted"><strong>What is the SharePoint Integration?</strong></span><span style="font-size: 14pt;"><br></span></div><p id="isPasted"><span style="font-size: 11pt;">The SharePoint Integration allows documents to be synced from SharePoint into the Document Management area of Halo.</span></p><p><br></p><p><span style="font-size: 11pt;">From v2.238+ you can use your SharePoint connection to authenticate</span><span style="font-size: 11pt;"><a href="https://usehalo.com/haloitsm/guides/2245/" target="_blank" rel="noopener noreferrer"> custom integrations</a></span><span style="font-size: 11pt;"> (when using the authorization code with authentication method). Making it easier to create custom integrations to build on the existing integration functionality.&nbsp;</span></p><div><br><p><span style="font-size: 14pt;"><strong>Enabling the SharePoint Module</strong></span><strong><span style="font-size: 14pt;"><br></span></strong></p><p><span style="font-size: 11pt;">The SharePoint Integration allows documents to be synced from SharePoint to Halo. This requires enabling the &quot;Documents&quot; module in Configuration.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImIxOTFiNTRmLWQzMDgtNDg4ZS1hNjhmLTY3NmFkYTE2N2U4YyJ9.PY-2Qn8nQWoT-mKPFGRXQzYyWnHgQtrwCuYvwaBJjQM" class="fr-fic fr-fil fr-dib" width="1062" style="width: 1064px; height: 476.176px;" height="476"></p><p><strong><span style="font-size: 10pt;">Fig 1. Enable documents</span></strong></p><p><br></p><p><span style="font-size: 11pt;">Then enable the SharePoint module by hovering over it within Configuration &gt; Integrations, and clicking on the plus sign.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjE2Y2RkNDIzLTdlNWYtNDEzNS05MWZjLTgyNDFhMjY5MDc4NyJ9.ZZlL8YoT2hF9wrg3yEkiGfuCbHT86KjskndGD8qITYs" class="fr-fic fr-fil fr-dib" width="1061" style="width: 1063px; height: 173.373px;" height="173"></p><p data-pasted="true"><strong><span style="font-size: 10pt;">Fig 2. Enable SharePoint</span></strong></p><p data-pasted="true"><br></p><p data-pasted="true"><span style="font-size: 14pt;"><strong>Creating folders in Document Management&nbsp;</strong></span></p><p><span style="font-size: 11pt;">The documents imported from SharePoint can be stored in different folders in Halo. To create your folders&nbsp;head into the Document Management area. When you hover over the &quot;New&quot; button you will have the option to create a new folder.</span></p><p><br></p><p><span style="font-size: 11pt;"><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImUyOTA0Y2U1LTFmMWYtNDE4MS04MTY4LTkzZTVjNWNlZTViNCJ9.T1xzYeFFVfjQvCxJy647uHbgm-ptaKc_e7s1GMfolGY" width="1383" style="width: 1385px; height: 155.132px;" height="155" class="fr-fic fr-dii"></span><br></p><p data-pasted="true" style="box-sizing: inherit; margin: 0px; line-height: 1.4285em;"><strong style="box-sizing: inherit; font-weight: 700;"><span style="box-sizing: inherit; font-size: 10pt;">Fig 3. Creating document folders in Halo</span></strong></p><p data-pasted="true" style="box-sizing: inherit; margin: 0px; line-height: 1.4285em;"><br style="box-sizing: inherit; color: rgb(0, 0, 0); font-family: sans-serif; font-size: 13px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"></p><p><span style="font-size: 11pt;">Any folders you create here can be used for the import of your SharePoint documents into Halo.</span></p><p><br></p><p><strong><span style="font-size: 14pt;">Connecting SharePoint</span></strong></p><p data-pasted="true"><span style="font-size: 11pt;">After enabling the Sharepoint module, you can click into it and add a new tenant by clicking &quot;New&quot; in the top right.&nbsp;</span></p><p data-pasted="true"><span style="font-size: 11pt;">The SharePoint integration is multi-tenanted, allowing you to connect different SharePoint accounts to different default folders within Halo.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6Ijc2NjExZTgxLWJiOTAtNDI1ZS1hZjM5LTY2NGUwZTdkN2Q1NiJ9.PixsyWniC1BVTwD0z8We3hKSo28N9HUJ39SZBq9QbKQ" class="fr-fic fr-fil fr-dib" width="1059" style="width: 1061px; height: 150.522px;" height="151"></p><p><strong><span style="font-size: 10pt;">Fig 4. New tenant button</span></strong></p><p><br></p><p><span style="font-size: 11pt;">The SharePoint integration with have a choice of two authentication methods:&nbsp;</span></p><p><br></p><ul><li><span style="font-size: 11pt;">Authorization code - Uses Delegated permissions.</span></li><li><span style="font-size: 11pt;">Client credentials (recommended) - Uses Application permissions.</span></li></ul><p><span style="font-size: 11pt;"><br></span></p><p id="isPasted"><span style="font-size: 11pt;">This guide demonstrates using the Authorization Code method. The&nbsp;method chosen will not affect the functionalities of the integration, only how access to SharePoint data is authenticated. If you are unsure which authentication method to use, check out Microsoft&#39;s documentation here:</span></p><p><br></p><ul><li style="font-size: 11pt;"><a data-fr-linked="true" href="https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-auth-code-flow" id="isPasted" target="_blank" rel="noopener noreferrer">Microsoft identity platform and OAuth 2.0 authorization code flow</a></li><li style="font-size: 11pt;"><a data-fr-linked="true" href="https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-client-creds-grant-flow" id="isPasted" target="_blank" rel="noopener noreferrer">Microsoft identity platform and the OAuth 2.0 client credentials flow</a></li></ul><p><br></p><p><span style="font-size: 11pt;">You will need to configure an application in Azure with the required permissions listed further down in this guide, or shown on this screen within the integration after selecting a method, and enter the details on the configuration screen. You will also need to enter your SharePoint URL.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjQwMjA5ODk5LWI3Y2QtNGVmYS1iYTlmLTFjZDExNjVjNjMxYiJ9.x7uMcfVCO4LAew53oe0XYgQZ6J4OIXw0UYfu6w6yEng" class="fr-fic fr-fil fr-dib" width="617" height="811"></p><p><strong><span style="font-size: 10pt;">Fig 5. Configuring a SharePoint connection</span></strong></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">After creating a new app registration in Microsoft Entra you will need to add a Redirect URI for the application. The redirect URI used will differ depending on the version of Halo you are using.&nbsp;</span></p><p><span style="font-size: 11pt;"><br></span></p><p id="isPasted"><span style="font-size: 11pt;">On versions prior to v2.200 the following redirect URI will need to be used:</span></p><ul><li id="isPasted"><span style="font-size: 11pt;"><a data-fr-linked="true" href="https://YOURHALODOMAIN/authcallback"><span style="color: rgb(0, 0, 0);">https://YOURHALODOMAIN/a</span></a><span style="color: rgb(0, 0, 0);">zure/auth</span></span></li></ul><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">On versions v2.200+ you the following redirect URI will need to be used:</span></p><ul><li><span style="font-size: 11pt;"><a data-fr-linked="true" href="https://YOURHALODOMAIN/authcallback"><span style="color: rgb(0, 0, 0);">https://YOURHALODOMAIN/authcallback</span></a></span></li></ul><p><span style="font-size: 11pt;">But the exact redirect URI you need can be found on the setup page for the integration in Halo.</span></p><p><br></p><p id="isPasted"><strong><em><span style="font-size: 11pt;">Note: If you have disconnected to the integration and are reconnecting, if your Halo instance is on v2.200+ you will need to use the new redirect URI (<a data-fr-linked="true" href="https://YOURHALODOMAIN/authcallback">https://YOURHALODOMAIN/authcallback</a>).</span></em></strong></p><p><br></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdjYjg0NDdhLTNlODgtNDEyNy1iM2ViLTVmNTM0OTIxYzMyNiJ9.ibJ7TTF74YuMERBjWFEX5FUxiI5StFAQFXwIwUztGyY" class="fr-fic fr-fil fr-dib" style="width: 910px;"></p><p><strong><span style="font-size: 10pt;">Fig 6. SharePoint authentication redirect URI</span></strong></p><p><br></p><p id="isPasted"><span style="font-size: 11pt;">To configure this in Azure you must add in the following API Permissions to your newly created app registration, and then grant admin consent for all.</span></p><p><br></p><p id="isPasted"><span style="font-size: 11pt;"><strong>Authorization code (Delegated):</strong></span></p><p><span style="font-size: 11pt;"><br></span></p><ul><li id="isPasted"><span style="font-size: 11pt;">Sites.ReadWrite.All</span></li><li><span style="font-size: 11pt;">Sites.FullControl.All</span></li><li><span style="font-size: 11pt;">Files.Read.All</span></li><li><span style="font-size: 11pt;">offline_access</span></li></ul><p><br></p><p><span style="font-size: 11pt;"><strong>Client Credentials (Application):</strong></span></p><p><span style="font-size: 11pt;"><br></span></p><ul><li style="font-size: 11pt;">Sites.ReadWrite.All</li><li style="font-size: 11pt;">Sites.FullControl.All</li><li style="font-size: 11pt;">Files.Read.All</li></ul><p><br></p><p><span style="font-size: 11pt;">Generate a new secret key and make sure to securely store the &quot;Secret Value&quot; (not the Secret ID) and also paste the secret value into the integration within Halo, as well as the App Registration ID&#39;s.</span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">Then authorize the application from Halo by inputting the required credentials, saving the integration page and then clicking &quot;Authorize Application&quot;.</span></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjgzYmY5OGUzLTQwNWMtNDVmMi05MzE5LWFkZDcxMzZiOGMwZCJ9.DBF258sqfKGT1fZy65jAtcHjgc8TQXSzTvfwHjXe8m0" class="fr-fic fr-fil fr-dib" style="width: 688px;"></p><p><strong><span style="font-size: 10pt;">Fig 7. Authorising details</span></strong></p><p><br></p><p><br></p><p><strong><span style="font-size: 14pt;">Configuring Mappings</span></strong></p><p><span style="font-size: 11pt;">Once your connection has been authorised, you can configure the import mappings in the table under the Folder Mappings tab. These map sites, lists, and folders from SharePoint to folders in Halo.</span></p><p><br></p><p><span style="font-size: 11pt;">Here you will need to set:</span></p><p><span style="font-size: 11pt;"><br></span></p><ul><li style="font-size: 11pt;">Mapping Type</li><li style="font-size: 11pt;">SharePoint Site</li><li style="font-size: 11pt;">SharePoint List&nbsp;</li><li style="font-size: 11pt;">Default Folder for webhook imports&nbsp;</li><li style="font-size: 11pt;">Site external file sharing&nbsp;</li><li style="font-size: 11pt;">Folder Mappings&nbsp;</li></ul><p><br></p><p><span style="font-size: 11pt;">When doing a manual import, files will only be imported from the folders given in the &quot;Folder Mappings&quot; table at the bottom of the mapping page. &nbsp;Any folders mapped here will be imported from when doing a manual sync or when webhooks are received with updates from SharePoint. At least one folder mapping must be added to use the manual imports. Once these mappings have been configured, you can manually import the files from your mapped folders.</span></p><p><br></p><p><br></p><p><span style="font-size: 11pt;"><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjcwYWQ1NmFkLTEyZGQtNDdjOC05YmExLTY4ZDZiZWMxNzdjMSJ9.2QJ3L5OGShdoXcfC1KDrzRUbiOXzMz3dYNq__dICJ4g" class="fr-fic fr-fil fr-dib" width="1469" style="width: 1471px; height: 619.126px;" height="619"></span><strong><span style="font-size: 10pt;">Fig 8. Mapping configuration</span></strong></p><p><br></p><p><span style="font-size: 11pt;">The files will be stored in the <a href="https://usehalo.com/haloitsm/guides/2130/" target="_blank" rel="noopener noreferrer"><strong>Document Management module</strong></a>.</span></p><p><br></p><p><strong><span style="font-size: 14pt;">Using the Integration</span></strong></p><p><span style="font-size: 11pt;">When these mappings are created, a webhook will be automatically created in SharePoint to sync across any new files, updates to field, or file deletions in that list.</span></p><p><br></p><p><span style="font-size: 11pt;">If the file is not in one of your mapped folders, the setting &quot;Default folder for webhook imports&quot; will determine where those files are mapped to or if they are ignored entirely. The inbound and outbound tabs can be viewed, showing the sent and received files within the log and the associated payload.</span></p><p><br></p><p><strong><span style="font-size: 11pt;"><em>Note: Webhooks are not sent immediately from SharePoint, so there may be a delay of several minutes before updates are reflected in Halo.</em></span></strong></p><p><br></p><p><span style="font-size: 11pt;">The documents created in Halo cannot be edited from within Halo, only from within SharePoint. These documents can be attached to tickets/actions in Halo and when they are downloaded, the user or agent will be given a link to the file in SharePoint.</span></p><p><br></p><p><span style="font-size: 14pt;"><strong>Upload Scheduled Reports to SharePoint</strong></span></p><p><span style="font-size: 11pt;">This feature allows automatic upload of an XLS file of report data into SharePoint, where PowerBI can then pull the datasets sorted by day into a master database by using SharePoint as the source. This <span style="font-size: 11pt;" id="isPasted">can be useful for combining multiple, more specific reports into a larger one, as well as allows larger datasets without strain on performance, etc.</span></span></p><p><br></p><p><span style="font-size: 11pt;">It requires a folder that allows document uploads. You must configure at least one folder mapping that allows document uploads, and you will likely wish to create a new, possibly separate one for reports to be uploaded to.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjZjMDk5ZGUwLWZlMWYtNGFkZi1hNzIwLWZhOGIyMzRlNmIwNCJ9.V_faXxT188QWcX1cZoBIr0piMPmjZNu31_8xKxGvtMw" class="fr-fic fr-fil fr-dib" width="357" style="width: 359px; height: 272.075px;" height="272"></p><p><span style="font-size: 10pt;"><strong>Fig 9. Mapping Types</strong></span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">Once this is done, you can configure the upload by adding a schedule in the &quot;Scheduling&quot; tab of a report.</span></p><p><br></p><p><span style="font-size: 11pt;">This tab allows you to specify an &quot;Export Type&quot; of either &quot;Email&quot; (the existing scheduled reports functionality), or &quot;Upload to SharePoint&quot;.</span></p><p><br></p><p><span style="font-size: 11pt;">With the latter selected you can pick one of your mappings as the upload destination for the reports. The reports can either be uploaded with the current date append to the file name to create a new file each time or replace the existing file.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNiOTQ5NzcxLTcxN2YtNDgzMC05N2FiLWQ2MTkzYThlZWI4NyJ9.VBIYNC9-hp7rIdpum_xbY3bj-_hZB_S_jnIa3I64Od0" class="fr-fic fr-fil fr-dib" width="776" style="width: 778px; height: 263.088px;" height="263"></p><p><span style="font-size: 10pt;"><strong>Fig 10. Configuring the SharePoint Connection.</strong></span></p><p><br></p><p><span style="font-size: 11pt;">Additionally, there is now an @lastrundate variable that can be used in reports. This can be used to filter the reports to just the data since the report last ran, which is useful for this functionality to only show data that has changed since the last schedule. The report will not be filtered during the first run.</span></p><p><br></p><p><span style="font-size: 11pt;">For example, this could be used:</span></p><p><br></p><p id="isPasted"><span style="font-size: 11pt;">select faultid, ..., etc from faults where flastupdate &gt; @lastrundate</span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">Now when bringing data from Halo, we can send it to SharePoint (only the relevant data which hasn&#39;t synced over yet) then from SharePoint it can go to PowerBI via a SharePoint folder that is found in PowerBI as a data source, when connecting the report from SharePoint.</span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">When it first runs it brings back all data. When it next runs it only brings back data after the last runs run date.</span></p></div></div></div></div></div></div></div></div></div></div>
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.