Browse Guides

Datto RMM 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><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; } </style><p><strong>In this guide we will cover:</strong></p><p id="isPasted"><strong>- What is the Datto RMM Integration?</strong></p><p><strong>- Connecting to Datto RMM</strong></p><p><strong>- Configuring Asset Imports</strong></p><p><strong>- Import assets and Customers/Sites automatically on a schedule</strong></p><p><strong>- Remote into Assets from Halo</strong></p><p><strong>- Alerting</strong></p><p><br></p><p><br></p><p><strong><span style="font-size: 14pt;">What is the Datto RMM Integration?</span></strong></p><p>Halo can be integrated with Datto RMM to have devices and sites from Datto imported and created in Halo, any changes to assets and sites will also be synced to Halo on a scheduled basis. When assets are imported/updated they can be assigned to a user in Halo automatically based on a field on Datto or the user that last logged into the device. Assets imported from Datto will have a shortcut button against them (in Halo) to allow agents to both open the asset in Datto and remote into the asset using your remote tool.</p><p><br></p><p>The integration also supports alerting functionality, either through alert email or the use of webhooks. When alerts are raised in Datto a ticket will be logged in Halo automatically. When this alert/ticket is then resolved this will resolve the alert/ticket in the linked application. Allowing agents to manage alerts from within Halo. &nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Connecting to Datto RMM<br></span></strong></p><p>To enable the Datto RMM integration in Halo, go to Configuration &gt; Integrations, and enable the module by clicking the &quot;+&quot; sign.&nbsp;</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6Ijc3YWNhYzBlLWY1NDUtNGRjYi04NTM4LTM1NmEyMzYwZWU2ZiJ9.j3A6bzERhrtLg-T320-immOgUlq2Y-ryTGObEsSdAx4" class="fr-fic fr-fil fr-dib" width="665" height="308"></p><p><strong><span style="font-size: 10pt;">Fig 1. Enabling the module.</span></strong></p><p><br></p><p>Once the module has been enabled, click into the module to begin configuring it. The integration is multi-tenanted, allowing multiple Datto tenants to be connected. You will see a page showing a current list of tenants, and click &quot;New&quot; to create another.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6Ijg3NTRlMGMxLWY3Y2EtNDQ2NC1iYzQyLTAxZDQyYWQ1MTZhZiJ9.tUh47_MlnNqNJa3Lya3z60CxeAXo9d6mtmmyI5mTfEI" class="fr-fic fr-fil fr-dib" width="1560" height="182"></p><p><strong><span style="font-size: 10pt;">Fig 2. Multi-tenanted.</span></strong></p><p><br></p><p>Clicking into this will show the tenant configuration.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjhjODk2MmE5LTc2NWUtNGNlMS1iZjZiLWIzYTZmZDlkODg5YiJ9.dCGPvNDrOEZKSfhQADsNSftxuIkjvpnRvCJuTdKmSB0" class="fr-fic fr-fil fr-dib" width="1173" style="width: 1175px; height: 499.468px;" height="499"><strong><span style="font-size: 10pt;">Fig 3. Setup.</span></strong></p><p><br></p><p>The first setup steps require you to input your API URL, API Key and API Key Secret that will need to be generated in Datto RMM. To generate these values, first navigate to Setup &gt; Global Settings and set &quot;Enable API Access&quot; to ON.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNhZmQxNzkzLTMwNWYtNDE0Mi1iZDM4LWIyMWM2MTBhYmZiMyJ9.-YcCp-WgO9Mrz9FLlVXxJ3daDQdbFD6XN8cTL9Uh7X0" class="fr-fic fr-fil fr-dib" width="1001" height="234"></p><p><strong><span style="font-size: 10pt;">Fig 4. Enabling API access.</span></strong></p><p><br></p><p>Next, navigate to Setup &gt; Users, and select the User that you would like to enable the API access for. Once selected, click the &quot;Generate API Keys&quot; hyperlink, and an API Key and API Key Secret will be generated. You will also find the API URL below this.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU0MDBlNzM4LWI1NDQtNDIwNy05ZTE1LTQyYmQ3Y2JjNGYxNiJ9.ZYOkh-XcwCeTO1LrifAU8El3Kx0m3iz0kky9yiQ7l5A" class="fr-fic fr-fil fr-dib" width="762" height="799"></p><p><strong><span style="font-size: 10pt;">Fig 5. Creating the key.</span></strong></p><p><br></p><p>Once the values have been generated, revert back to the Datto RMM integration setup screen in your Halo application, and copy the values you have generated into the corresponding fields.&nbsp;</p><p><br></p><p>Ensure that all clients you are matching have a Main site set.&nbsp;</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjIxMzg5MWM4LTQwOGUtNDkyYS1hYTUwLWQ0ZDI5Zjk3MmUyMiJ9.1YUVA8Vjk4DzIdzJdLFbGERKRWXs50HZ6EsVUMrEz7A" class="fr-fil fr-dib" width="595" style="width: 595px; height: 432.895px;" height="432.895"></p><p><strong><span style="font-size: 10pt;">Fig 6. Main site on a customer/client.</span></strong></p><p><br></p><p>If you would like to have a button against tickets that takes the agent to the related asset (against the ticket) in Datto you will need to set the &#39;Datto Connect Type&#39; field.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6Ijc4MTI3NTdhLWY3MjEtNGI4Yi1hOGE1LTk0ZDVhZDVjZTA0YiJ9.uj2JGsr33ZOaqLFAmdmMYfEXMTwYwuAJmm4-tocu_v8" class="fr-fic fr-fil fr-dib" width="293" style="width: 295px; height: 168.571px;" height="169"></p><p><strong><span style="font-size: 10pt;">Fig 7. Datto connect type</span></strong></p><p><br></p><p>Here, you will need to choose whether the link takes agents to Datto using the old UI or new UI (in Datto). The option you select here will depend on the UI you are using in Datto.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Customer/Site Import</span></strong></p><p>To configure how customers and sites are imported from Datto head to the &#39;Customers, Sites and Users tab&#39;.&nbsp;</p><p><br></p><p>As Datto does not have the same concept of customers and sites as Halo, you will need to choose how sites in Datto are created in Halo, using the &#39;New Site Creation&#39; field. The options are as follows:</p><p><br></p><ul><li>Create new Datto Sites as Customers in Halo</li><li>Create new Datto Sites as Sites in Halo</li></ul><p><br></p><p><strong><em>Note: This setting will impact the mappings that are set after. If set to &quot;Create new Datto sites as customers in Halo&quot;, this would <span style="color: rgb(226, 80, 65);">update the Customer of the mapped Site</span> with the Datto ID. If set to &quot;Create new Datto sites as sites in Halo&quot;, this will <span style="color: rgb(226, 80, 65);">update the Site record</span>. This will therefore impact the Site(s) Assets are mapped to.</em></strong></p><p><br></p><p><strong><span style="font-size: 12pt;">Create new Datto Sites as Customers in Halo&nbsp;</span></strong></p><p>Choose this option when you have multiple customers in you Halo instance. When chosen you will be able to map a Halo customer and site to a site in Datto. If there is a site in Datto that is not mapped, a new Halo customer will be created for this site. &nbsp;</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjA0ZWQ1YjU5LTZjN2UtNGVkYS1hZmU2LTkxMDlhZDc2NDFiMSJ9.I5o-ujhSLyAB5RSr8a_Yfh0XfuoGBwp7YTETeypAcfU" class="fr-fic fr-fil fr-dib" width="1348" style="width: 1350px; height: 498.133px;" height="498"></p><p><strong><span style="font-size: 10pt;">Fig 8. Create new Datto Sites as Customers in Halo configuration</span></strong></p><p><br></p><p>Map Halo customers and sites to Datto sites using the mappings table on the setup page. When mapping customers you will need to choose both the Halo customer and site a Datto site corresponds to. All assets under this site in Datto can then be imported to the mapped Halo customer/site.&nbsp;</p><p><br></p><p>You can also choose a top level for new customers (created by Datto) to be created under).&nbsp;</p><p><br></p><p><strong><span style="font-size: 10pt;">Create new Datto Sites as Sites in Halo</span></strong></p><p>Choose this option when you would like all Datto sites to be imported to a single customer in your Halo instance. Typically used when you have one or few customers in your instance (HaloITSM customers), or you only manage one customer&#39;s assets using Datto RMM.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjNkNDAwYTA0LWE4NjUtNGI5NC05ZjM2LWExNzhjNzhjOTk3MSJ9.-bd4IBK8cRD6I8M8gc3I_kJtkMn74YCMF_vqaj1yWoM" class="fr-fic fr-fil fr-dib" width="643" style="width: 645px; height: 363.276px;" height="363"></p><p><strong><span style="font-size: 10pt;">Fig 9. Create new Datto Sites as Sites in Halo</span></strong></p><p><br></p><p>Select the customer in Halo you would like Datto sites to be created under. When importing sites from Datto they will attempted to be matched to a Halo site, under this customer, based on the site name. If the site name does not match a site in Halo, a new site will be created under the chosen customer.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Configuring Asset Imports</span></strong></p><p>To configure how assets are imported from Datto into Halo head to the &#39;Assets&#39; tab.&nbsp;</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImQyZDA3YWRiLTFkOTgtNDhlZi1iNTQxLWQ3OWExMTYwMGNlMSJ9.lL_ZkcuOBRLKaoYMmhq6bOl9hq8iABnK8_7mHu9peVE" class="fr-fic fr-fil fr-dib" width="1323" style="width: 1325px; height: 530.663px;" height="531"></p><p><strong><span style="font-size: 10pt;">Fig 10. Asset import setup page</span></strong></p><p><br></p><p><strong>Default Asset Site</strong> - Here, you can choose the site in Halo assets will be created under if they cannot be matched to a site. Assets are matched to a site based on their site in Datto and the linked customer/site in Halo. Therefore, ensure you have mapped and imported sites from Datto already to establish a link between the Halo and Datto site.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Asset Field Mappings</span></strong></p><p>Datto fields can be mapped to Halo asset (or asset custom) fields. Mapping fields ensures when the asset is imported from Datto into Halo data will be imported to the correct (corresponding) fields. To have the data from a field imported you will need to ensure the field this is stored in is mapped.&nbsp;</p><p><br></p><p>Add to the &#39;Field Mappings&#39; table to add a field mapping.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdjZGE3ZTYzLTI4ZDItNDM2ZS04MzRlLWM4MGE2ZmQ4M2Y2MCJ9.PdWHotrTmhwY8IuavThz42F8paeAN8NXybzNjs4TG2Y" class="fr-fic fr-fil fr-dib" width="556" style="width: 558px; height: 383.735px;" height="384"></p><p><strong><span style="font-size: 10pt;">Fig 11. Asset field mapping</span></strong></p><p><br></p><p><strong>Field Type</strong> - This will be the type of Halo field the data will be imported into. See our guide on <a data-fr-linked="true" href="https://usehalo.com/haloitsm/guides/1785/" id="isPasted" target="_blank" rel="noopener noreferrer"><strong>Asset Fields</strong></a> if you are unsure on the difference between asset fields and custom fields in Halo.&nbsp;</p><p><br></p><p>Now choose the Dato RMM and Halo field you would like to map together. If you would like data from the Datto RMM field to create a new field in Halo select &#39;*Create new field during the next import*&#39; under &#39;HaloPSA Field&#39;.&nbsp;</p><p><br></p><p><strong>Only apply this mapping to new Assets and Assets where the Asset field does not currently have a value</strong> - When this is enabled if the Halo field already has data within it, different to the data in the mapped Datto RMM field, the field data will not change. Fields will only be populated when they contain no data or when new assets are being created.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Determine Asset types</span></strong></p><p>All assets in Halo need to have an asset type. When assets are imported from Datto they can be created and assigned to types based on either the &#39;Type&#39; or &#39;Category&#39; fields in Datto.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU4ZDQ3ZjAyLWM4MGEtNDYyZS1iNjE3LWFiOGMwYzE5NjRlMCJ9.pXJIPhErRD4AEMCkQdWe8VXo5k3KVaK4Q2sWYG-jOcc" class="fr-fic fr-fil fr-dib" width="533" style="width: 535px; height: 392.005px;" height="392"></p><p><strong><span style="font-size: 10pt;">Fig 12. Datto type to determine Halo asset type&nbsp;</span></strong></p><p><br></p><p><strong>Datto Asset Type to map to Halo Asset Type</strong> - Choose which field in Datto determines asset type in Halo. The field you choose must contain the name of the desired asset type, if this name can be matched to an existing asset type in Halo, it will be assigned this asset type. If the name is not the same as an asset type in Halo, a new asset type will be created. Note that the names must be identical in order to match.&nbsp;</p><p><br></p><p>If new asset types are created by Datto they will need to be created under an asset group. Choose the group used for new asset types using the &#39;Default Group for new Asset Types&#39; field on the integration setup page.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Asset matching&nbsp;</span></strong></p><p>Set the &#39;Asset Matching field&#39; to determine how assets imported from Datto are matched to existing assets in Halo. The field selected here should contain the unique identifier of the asset. This field should also be mapped to a Halo field in the &#39;Asset mappings&#39; table.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjQ4ZWZiYWUxLTZhN2YtNDU2OS1hYzBjLWVkYzFlZWNlOTc3NSJ9.-rxs94IWyr4gxKq8_ydGAv5q09I0J-h3vl0Ca9zBJRY" class="fr-fic fr-fil fr-dib" width="559" style="width: 561px; height: 411.055px;" height="411"></p><p><strong><span style="font-size: 10pt;">Fig 13. Asset matching field</span></strong></p><p><br></p><p><strong>Matching using Datto ID</strong> - This option should only be selected as the asset matching field if you are matching on assets that have been created by Datto. When assets are imported from Datto the Datto ID is stored against the asset in Halo on the backend, this can then be used to match this asset to the asset in Datto during future imports. If the asset has been created in Halo manually (or any method other than importing from Datto) it will not have a Datto ID against it, so the corresponding asset in Datto will not be able to match to it. &nbsp;</p><p><br></p><p id="isPasted"><strong>Asset Matching Value Exclusions</strong> - Here you can set assets to not be matched using the matching field if the matching field contains a certain value. For example, if two assets have the matching field set to be &#39;None&#39; they would match even though they are separate assets. By adding the value &#39;none&#39; to the matching value exclusions list you can ensure the assets are matched using their Datto ID instead.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">User Matching</span></strong></p><p>When assets are imported from Datto they can be matched to a user in Halo, they can either be matched based on a Datto field or based on the user that was last logged into that device. You will need to enable &#39;Attempt to match User based on Last Logged-In User&#39; to enable user matching.</p><p><br></p><p>When enabled options will appear to select the user matching fields.&nbsp;</p><p><strong style="box-sizing: inherit; font-weight: 700; color: rgb(0, 0, 0); font-family: sans-serif; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; 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;" id="isPasted"><img data-fr-image-pasted="true" src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImY3Nzg1MjYyLWMyZTgtNGZkNi1iNGMxLWU1MThkMDY4MTM0OSJ9.fBtWpwZrWgZ8TAzDBnjk8ye71re2rFJGYcUDBMA9NXY" width="680" height="362" style="box-sizing: inherit; border-style: none; cursor: pointer; padding: 0px 1px; user-select: none; text-align: left; width: 682px; height: 361.574px; max-width: none !important;" class="fr-fil fr-dib"></strong><br><strong><span style="font-size: 10pt;">Fig 14. User matching settings</span></strong></p><p><br></p><p><strong>Matched based on a Datto field</strong></p><p>Populate the &#39;User Defined Field to use for matching User&#39; field with the name of the field in Datto that contains the user information (e.g. username, email address). Only populate this field if you would like to match users to assets in Halo based on a Datto field.</p><p><br></p><p>Then in the &#39;User Matching Field&#39; select the field in Halo that contains the same user information as the selected Datto field. You can choose a secondary matching field too, this will be used if the primary field fails to match.&nbsp;</p><p><br></p><p><strong>Match Based on Last Logged in User</strong></p><p>When matching users to assets this way the user of the asset in Halo will change automatically based on the user tat last logged into the device.&nbsp;</p><p><br></p><p>Ensure the &#39;User Defined Field to use for matching User&#39; field is left blank. Then in the &#39;User Matching Field&#39; field, choose the field used to match to users in Halo. The field chosen here must contain the user details that users use when they log into a device. You can choose a secondary matching field too, this will be used if the primary field fails to match.&nbsp;</p><p><br></p><p><strong><em>Note: Users can only be matched based on &#39;Windows username&#39; when users are being import from Microsoft CSP or Entra.&nbsp;</em></strong></p><p><br></p><p><strong><span style="font-size: 12pt;">Additional Asset configuration</span></strong></p><p><strong>Remote Tool URL:</strong> Here enter the URL of the Datto remote tool used to access assets. This will allow you to remote into an asset from the asset page in Halo.&nbsp;</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjlkMDEyMjZjLTgyNzgtNDgwNC05NTNlLWQ5ODliNjVlNzZlZiJ9.7qhxyzxxFCYmmy7HZ69oCQRWIY4B92oR3AlfT6rA5B4" class="fr-fic fr-fil fr-dib" width="574" style="width: 576px; height: 277.051px;" height="277"></p><p><strong><span style="font-size: 10pt;">Fig 15. Additional asset import settings</span></strong></p><p><br></p><p><strong>Deactivate Assets in Halo when they are deleted from Datto (Halo Integrator only)</strong> - When enabled assets that have been deleted in Datto will be deactivated in Halo. If an asset has been imported from Datto but cannot be found in a sync following creation it will be deactivated (as the integrator cannot find the asset it assumes it has been deleted).&nbsp;</p><p><br></p><p>Once you are happy with your asset import configuration use the &#39;Import Assets&#39; button to pull up the import preview screen and begin importing assets.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Import assets and Customers/Sites automatically on a schedule&nbsp;</span></strong></p><p>To have assets imported automatically on a scheduled basis you will need to enable the Halo integrator for this integration. To do this head to the &#39;Halo Integrator&#39; tab and check &#39;Enable the Halo Integrator for the Datto RMM integration&#39;. Then choose which entities you would like to be imported.&nbsp;</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImM1N2FkMTg1LTk4ODUtNGIwZC1iOWUxLWUyNDZhOGExODY3NiJ9.SEUaSj0ci0bFpuj93vUIi5BMl4TLgmBVVB2NOI4-LRw" class="fr-fic fr-dii"></p><p><strong><span style="font-size: 10pt;">Fig 16. Enable Halo integrator&nbsp;</span></strong></p><p><br></p><p>When enabled these entities will be imported and updated in Halo on a daily basis.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Remote into Assets from Halo</span></strong></p><p>Any assets imported from Datto RMM will automatically have two buttons appear against their asset profile in Halo.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6Ijg4MzA4Mzc1LTI5ZjUtNGY0Yi1iYzYxLTU3Yzk2MTBkMWZjMSJ9.vHxGxWaFZQzWUbx4kowTaTP6J2Oiu9vzhdQMgjG6k1A" class="fr-fic fr-fil fr-dib" width="963" style="width: 965px; height: 302.681px;" height="303"></p><p><strong><span style="font-size: 10pt;">Fig 17. Shortcut buttons against asset</span></strong></p><p><br></p><p><strong>Open in Datto RMM Remote Tool</strong> - Used to remote into the asset using your remote tool.</p><p><strong>Open in Datto RMM</strong> - Used to open the asset in the Datto RMM application.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Alerting</span></strong></p><p>Alerts in Datto RMM can automatically log tickets in Halo when raised. Alerting integration functionality will differ slightly depending on the alert processing method you use, we support the following methods:</p><ul><li>Email&nbsp;</li><li>Webhooks (recommended)</li></ul><p>To setup alerting functionality head to the &#39;Alerts&#39; tab.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Email alerting&nbsp;</span></strong></p><p>This method uses alert emails from Datto to log tickets in Halo, email rules are used to have alert emails from Datto log a ticket when received. When the ticket is resolved in Halo the alert will then be resolved in Datto. To use this method set the &#39;Alert processing method&#39; to be &#39;Email&#39;.&nbsp;</p><p><br></p><p>The following method using email rules is backwards compatible with the webhooks method, although it is advised to disable the email notifications when using the webhook method. Processing alerts is not as efficient as alerting via webhooks (as emails will not be processed as quickly as webhooks). When an alert is raised in Datto RMM, an email can be sent to a mailbox of your choice. By choosing a Mailbox which has been setup in Halo, these alert emails can be processed and turned into tickets.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImMzYmRhNzk4LTQ2OWYtNDQ5Yi04ZjBkLWQxZDFlZWIxODlmYiJ9.JSQcpIEwKFIRqQwCJwCJlCm5W51EZq3eKnm8snh2OJE" class="fr-fic fr-fil fr-dib" width="833" style="width: 835px; height: 459.345px;" height="459"></p><p><strong><span style="font-size: 10pt;">Fig 18. Email alerting setup&nbsp;</span></strong></p><p><br></p><p>The email that is sent from Datto RMM must have the Alert ID in the subject in the format of <strong>Alert{XXX}&nbsp;</strong>where <strong>XXX&nbsp;</strong>is the Alert ID in Datto RMM and is set by using [alertuid] when setting up the monitor.</p><p>(<a href="https://rmm.datto.com/help/en/Content/4WEBPORTAL/Monitor/CreateManageMonitor.htm#Create">https://rmm.datto.com/help/en/Content/4WEBPORTAL/Monitor/CreateManageMonitor.htm#Create</a>)</p><p><br></p><p>For example: <strong>Alert on device: [ipaddress], reason [alert] - Alert{[alertuid]}</strong></p><p><br></p><p><img src="http://halo.haloservicedesk.com/api/attachment/image/c2dee1da-8a14-42ff-b220-83866aa67ca0" class="fr-fic fr-fil fr-dib" width="472" style="width: 474px; height: 241.587px;" height="242"></p><p><strong><span style="font-size: 10pt;">Fig 19. Alert example.</span></strong></p><p><br></p><p>To assist with processing these emails correctly, a &#39;From Address&#39; field and &#39;Default Ticket Type&#39; field are available in the Datto RMM integration setup screen in Halo.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImEwMmNlNzZiLTA1ZmItNGUxYy04Y2JhLTI2MmE4MjBjZDYwMCJ9.Q7KN_EhFwrRssHQWVAS5ytQbY2gX3kvcioEVW9t79CU" class="fr-fic fr-fil fr-dib" width="819" height="359"></p><p><strong><span style="font-size: 10pt;">Fig 20. Alerting configuration.</span></strong></p><p><br></p><p>The from address should be set to the email address that will be sending the alert emails from Datto RMM. You can then decide which ticket type new alerts are created as using the default ticket type option.&nbsp;</p><p><br></p><p><strong><em>Note: Populating the email address field will result in a new email rule being created in your instance (of type &#39;Datto Alert via email&#39;).&nbsp;</em></strong></p><p><br></p><p>Once the alert has been received by your Halo application, it will be logged as a ticket, and you can action this as you normally would. Once the ticket is closed in Halo, a request will be sent to Datto RMM to also close the alert in Datto RMM.</p><p><br></p><p>If you would like to further modify the behaviour of alerts when they are received, you can make further modifications to the email rule which has been created for you by navigating to Configuration &gt; Email &gt; Email Rules, and choosing the Datto RMM Alerts rule (this will have been created automatically).For more information on how to edit/customise email rules check out our guide on <a data-fr-linked="true" href="https://usehalo.com/halopsa/guides/1910" target="_blank" rel="noopener noreferrer"><strong>Email Rules</strong></a>.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Webhook Alerting</span></strong></p><p>When using webhooks to process alerts, a ticket will be logged in Halo as soon as an alert is triggered in Datto. When the ticket is resolved in Halo this will resolved the alert in Datto and vice versa. Webhooks will need to be setup in Datto to use this method but this method is recommended as alerts are processed faster and it does not rely on a mailbox connection.&nbsp;</p><p><br></p><p>To use this alert processing method set the &#39;Alert processing method&#39; field to be &#39;Webhooks&#39;.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVmM2M2NWM0LTBiY2YtNDZhMi04MjgxLWY5N2ZhNjhjYzRhOSJ9.m4ZXKF92hE3WYpjYy2tiqUNGTHFw2OokBUY1K4jkEs0" class="fr-fic fr-fil fr-dib" width="1280" style="width: 1282px; height: 612.791px;" height="613"></p><p><strong><span style="font-size: 10pt;">Fig 21. Alert configuration.</span></strong></p><p><br></p><p>Webhooks will need to be configured in Datto RMM at the device Monitor level in the response section. When webhooks are toggled on, Datto RMM will show a URL, a content type, and payload fields.&nbsp;</p><p><br></p><p>Selecting the &#39;Webhook Configuration&#39; button in Halo will show you how to set up the webhooks correctly including the custom payload needed to input into the Alert Raised and Alert Resolved payload fields in Datto RMM. The alert_resolved attribute must be set to true in the custom payload for Alert Resolved and false for the Alert Raised. Use the generate password function and use this for the state attribute in the custom payloads Alert Raised and Alert Resolved.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImU2NWE0ZDJhLTQxODAtNDI1MS1hZDEzLTllYjAyMzY4Y2MwYSJ9.jrExLlNY5MEY4HoMbShCO--bHYybKRSSdFJuM5jul5M" class="fr-fic fr-fil fr-dib" width="475" style="width: 477px; height: 654.363px;" height="654"></p><p><strong><span style="font-size: 10pt;">Fig 22. Webhook configuration.</span></strong></p><p><br></p><p>To populate additional ticket fields against the alert ticket using data from Datto, use the additional values section of the webhook setup. Use the JSON here to add onto your existing webhooks and pull through the desired data.&nbsp;</p><p><br></p><p>This will be backwards compatible with the email processing method but it is advised to disable email notifications from Datto RMM when using the webhook method.</p><p><br></p><p><em><strong>Note:&nbsp;</strong></em><strong><em>When testing the webhook on Datto, it will fail, this is due to the variables being pulled for the test just giving the field name instead of the actual content of the field. As explained in the screenshot, it is recommended to disable the email notifications to avoid duplicates when using the webhooks feature.</em></strong></p><p><br></p><p>Once you have setup your webhooks in Datto had back to Halo and set the ticket type and user that will be used for alert tickets created by Datto.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRhNmJhYjM1LTMzNjctNGI2Mi1hM2QxLTQyMGE0M2UzYzI0MSJ9.oOYiN5G8oepyCj3mkWqiaIwHxGao6nfDBsS4zasdDHs" class="fr-fic fr-fil fr-dib" width="716" height="239"></p><p><strong><span style="font-size: 10pt;">Fig 23. Ticket type and user used for alerts</span></strong></p><p><br></p><p>Alerts will be attempted to match on a user based on the device the alert is for, if this device is matched to an asset in Halo and this asset has a user the ticket will be assigned to the matched asset&#39;s user. If no match can be made the alert will be matched to the user chosen in the &#39;New Alert User&#39; field.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Inbound Requests</span></strong></p><p>The &#39;Inbound Requests&#39; tab shows all inbound webhooks from Datto RMM. Here, you can monitor incoming alert webhooks, useful for troubleshooting should any errors arise.&nbsp;</p><p><br></p>
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.