Browse Guides

SyncroMSP 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><p><strong>In this Guide we will cover:</strong></p><p><strong>- What is the SyncroMSP Integration?</strong></p><p><strong>- Connecting the Integration</strong></p><p><strong>- Importing Customers from SyncroMSP</strong></p><p><strong>- Importing Assets from SyncroMSP</strong></p><p><strong>- Automatically sync changes made to customers/assets</strong></p><p><strong>- Alerting<br></strong></p><p><br></p><p><br></p><p><strong><span style="font-size: 14pt;">What is the SyncroMSP Integration?</span></strong></p><p>The SyncroMSP integration allows you to import customer and asset data from SyncroMSP into Halo. Once data is imported any updates to these entities in SyncroMSP can automatically sync to Halo on a schedule. The integration also supports alerting, alerts triggered in SyncroMSP can create a ticket in your Halo instance. When the alert is resolved in SyncroMSP this will automatically resolve the alert in SyncroMSP and when the ticket is closed off in Halo this will resolve the open alert in SyncroMSP. Allowing you to manage alerting from Halo.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Connecting the Integration</span></strong></p><p>First you will need to enable the module for this integration.&nbsp;</p><p><br></p><p>Head to configuration &gt; integrations and use the &#39;+&#39; icon to enable the integration module.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjFkNTMyNDAyLWQzOTMtNDBmNy1iZDlmLWQ2MDJmYjk0ZWU5OSJ9.PcvVPm80SeI7PpI6ALXmCtbN4vZxq682Wbq8w52eMWI" class="fr-fic fr-fil fr-dib" width="168" height="133"></p><p><strong><span style="font-size: 10pt;">Fig 1. Enable integration module</span></strong></p><p><br></p><p>Once enabled click into the module to begin configuration.&nbsp;</p><p><br></p><p>To connect to your SyncroMSP instance you will need to enter the application URL you use to access your SyncroMSP instance in the &#39;Application URL &#39; field. Then you will need to generate an API key in SyncroMSP and paste this into the &#39;API Key&#39; field in Halo. The API key generated will need to have permission to read customers and assets in your SyncroMSP instance.&nbsp;</p><p><br></p><p>Once connection details are entered in Halo you can test the connection using the &#39;Test Configuration&#39; button.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdhNTE5ODI3LWI5NDAtNGJkMy1hYmFkLTJjMmM2OTc5MWM4OSJ9.a_6CLSTwFf-F6aPIEaHLQnUTmYgzYGott4wMa-Cgx6Y" class="fr-fic fr-fil fr-dib" width="1160" height="272"></p><p><strong><span style="font-size: 10pt;">Fig 2. Connection details for SyncroMSP</span></strong></p><p><br></p><p><strong><span style="font-size: 14pt;">Importing Customers</span></strong></p><p>Customers can be imported from SyncroMSP and created as customers in Halo. If you would like all your SyncroMSP customers to be created as new customers in your Halo instance you can import customers right away using the &#39;Import Customers&#39; button.&nbsp;</p><p><br></p><p>If you have existing customers in your Halo instance you will need to map Halo each Halo customer (and site) to a SyncroMSP customer in the customer mappings table, shown in figure 3. This will associate Halo customers with the correct SyncroMSP customer.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImJkOTE2ZTgwLWY4YzMtNDM0Mi05ODRmLWZkNmViZjA5MjhlYyJ9.TVCATry5zoOrxAhm_SRys3kVa5yGE7BPe_Ljzw6f-B4" class="fr-fic fr-fil fr-dib" width="1456" style="width: 1458px; height: 365.64px;" height="366"></p><p><strong><span style="font-size: 10pt;">Fig 3. Customer mappings table&nbsp;</span></strong></p><p><br></p><p>When mapping customers you will need to choose which Halo customer and site to map to a SyncroMSP customer (as SyncroMSP does not have a concept of customer sites).&nbsp;</p><p><br></p><p>Any non-mapped customers will be attempted to be matched to a Halo customer based on name, if two customers share the exact same name they will match. Following a customer import the Halo customer will store the SyncroMSP ID of the mapped/associated customer, this ID will be used to match to this customer in future imports.&nbsp;</p><p><br></p><p><strong>Top Level for Customers</strong> - If you are using Top Levels you can choose a top level here, any customers created by SyncroMSP will be created under this top level.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Importing Assets</span></strong></p><p id="isPasted">Assets from SyncroMSP can be imported into Halo as assets. &nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjMxMzMxNDYwLTllZTMtNGFlMC04YmExLWIwNzU4Nzg5M2JmNCJ9.J2t4Sj-iU4xa_UnHdRCkaWLmaeNX9Ez0S59c6iyq1v8" class="fr-fic fr-fil fr-dib" width="1385" style="width: 1387px; height: 512.928px;" height="513"></p><p><strong><span style="font-size: 10pt;">Fig 4. Asset Import setup</span></strong></p><p><br></p><p id="isPasted"><strong>Default Site</strong> - Here choose a default site for assets to be imported to. This site will only be used if the customer the SyncroMSP asset is against has not been mapped (or cannot be matched) to a customer/site in Halo.&nbsp;</p><p><br></p><p id="isPasted">SyncroMSP Asset Types are matched to existing Halo Asset Types via their name, this means if the SyncroMSP asset has a asset type that matches (has the same name as) an asset type in Halo, the device will be created as the matched asset type. If the asset type does not match to a Halo asset type a new Halo asset type will be created for this device type.&nbsp;</p><p><br></p><p id="isPasted"><strong>Default Group for new Asset Types</strong> - Here, choose the asset group that new asset types will be created under. Any new asset types created in Halo by SyncroMSP will be created under this asset group.&nbsp;</p><p><br></p><p id="isPasted"><strong>Asset Matching Field</strong> - Here choose which field to use when matching Halo assets to their corresponding asset in SyncroMSP. If matched, the record will be updated. This field should contain the unique identifier of the asset. By default, the SyncroMSP ID will always be checked first, any assets in Halo created by the integration will have an SyncroMSP ID stored against them. Therefore, these assets will not reply on the matching field alone to match to the correct device in SyncroMSP.&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 SyncroMSP ID instead.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Asset field Mappings&nbsp;</span></strong></p><p id="isPasted">Asset field mappings can be configured to ensure data from SyncroMSP &nbsp;is imported to the correct fields against the asset in Halo. To configure a field mapping add to the field mapping table in the integration setup page.&nbsp;</p><p><br></p><p>Data in custom SyncroMSP fields can be imported and mapped to Halo fields.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImY1M2JiMDk2LWY0MDItNDFjMS05NDE0LTgwNTgzMTQ2MDM3MCJ9.lbpOQZHGtm0BrqtAIKxEZGZd20N25DBmwno7RHJl4Fk" class="fr-fic fr-fil fr-dib" width="558" style="width: 560px; height: 446.25px;" height="446"></p><p><strong><span style="font-size: 10pt;">Fig 5. Asset field mappings</span></strong></p><p><strong><br></strong></p><p><strong>Field Type -&nbsp;</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">Asset Fields</a> if you are unsure on the difference between asset fields and custom fields in Halo.&nbsp;</p><p><br></p><p><strong>SyncroMSP Field Type -</strong> Here choose whether you would like to map a core SyncroMSP field or a custom one. When using a custom field you will need to enter the exact name of the custom field in SyncroMSP you want to pull data from. SyncroMSP custom fields supported include:</p><ul><li>Text</li><li>Text area</li><li>Date</li><li>Checkbox</li><li>Dropdown</li></ul><p><br></p><p><strong>Only apply this mapping to new Assets and Assets where the Asset field does not currently have a value&nbsp;</strong>- When this is enabled if the Halo field already has data within it, different to the data in the mapped SyncroMSP 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>When you are happy with your asset import configuration use the &#39;Import Assets&#39; button to bring up the import preview screen and start the import<strong>.&nbsp;</strong></p><p><br></p><p id="isPasted"><strong><span style="font-size: 14pt;">Import Assets and Customer data automatically</span></strong></p><p id="isPasted">To have asset and/or customer data sync from SyncroMSP to Halo automatically you will need to enable the Halo integrator for the integration. This is enabled using the &#39;Enable the Halo Integrator for the SyncroMSP integration&#39; setting on the integration setup page.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjE5Yjc4Yjk2LWZhNjMtNGE4MS1hNTAzLWE0Yzg2MGYwZTNiNSJ9.tSK93vQPhZ4r1GEdphZv_f6yK60SuIQ3cr2XNahkLDU" class="fr-fic fr-fil fr-dib" width="660" style="width: 662px; height: 232.643px;" height="233"></p><p><strong><span style="font-size: 10pt;">Fig 6. Enable Halo integrator for integration</span></strong></p><p><br></p><p id="isPasted">Once enabled, choose the entities you would like to be synced, customers and/or assets. This will sync changes made to these entities in SyncroMSP into Halo on a daily basis (24 hours).</p><p><br></p><p><strong>Deactivate Assets in Halo when they are deleted from SyncroMSP (Halo Integrator only)</strong> - When enabled, assets in Halo will be deactivated when they are deleted from SyncroMSP, only when assets are being synced using the Halo integrator.</p><p><br></p><p><strong><span style="font-size: 14pt;">Alerting</span></strong></p><p>Alerting can be configured to have alerts that are raised in SyncroMSP automatically create tickets in your Halo instance. Allowing agents to monitor and manage alerts from Halo. When the alert ticket is closed in Halo this will resolve the alert in SyncroMSP and vice versa. Alerts are processed using webhooks which means a ticket will be created in Halo almost instantly when an alert is triggered in SyncroMSP.</p><p><br></p><p>Alerting functionality will first need to be enabled by checking &#39;Enable alert processing&#39;. When enabled some additional configuration options will appear.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImYxMDExODczLTJkOWYtNDVjMi1hMTQwLTZiYzk2Yzg4Y2Y2YiJ9.3Lnsav9sml8IsgzGFgtBn3RlNLIfTw9qjvGySmjGe8c" class="fr-fic fr-fil fr-dib" width="974" style="width: 976px; height: 348.904px;" height="349"></p><p><strong><span style="font-size: 10pt;">Fig 7. Alerting configuration</span></strong></p><p><br></p><p>You will need to select the ticket type that will be used to log tickets from alerts in the &#39;New Alert Ticket Type&#39; field. We recommend using a dedicated alerting ticket type for this, ensure this ticket type has no mandatory fields to avoid errors when alerts are raised.&nbsp;</p><p><br></p><p><strong>New Alert User&nbsp;</strong>- The end user of the ticket will be determined by the user or customer the asset is assigned to. If this cannot be determined the ticket will be assigned to the user selected here.&nbsp;</p><p><br></p><p id="isPasted">You can add a level of authentication to the webhook using the &#39;authentication&#39; field.&nbsp;</p><p><br></p><ul><li><strong>No authentication:</strong> When selected no webhook authentication will take place, a token for the webhook does not need to be generated but this is a less secure method.</li><li><strong>Use a token query parameter:&nbsp;</strong>When this option is selected you will need to generate a token for the webhook created in SyncroMSP. Then enter this token in the &#39;token&#39; field in Halo. You will also need to include this token as a parameter in the Webhook URL, this parameter will be checked by the Halo API before the webhook is processed. This will prevent any other webhooks sent to this endpoint being processed, adding an additional layer of security.&nbsp;</li></ul><p><br></p><p>Now you will need to create a webhook in SyncroMSP for the alerts you would like to be raised in Halo.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Creating the webhook</span></strong></p><p>Navigate to SyncroMSP and create a webhook for the alert(s) you would like to log a ticket in Halo. The used URL for the webhook will very based on the authentication method you are using for the webhook. The URLs to use are as follows:</p><ul><li><a data-fr-linked="true" href="https://YOURHALOURL/api/notify/syncro">https://YOURHALOURL/api/notify/syncro</a> - For webhooks using no authentication</li><li><a data-fr-linked="true" href="https://YOURHALOURL/api/notify/syncro " id="isPasted">https://YOURHALOURL/api/notify/syncro?token={insert_token_here}</a> - For webhooks using token query parameter authentication</li></ul><p>If you are using token query parameter authentication for your webhook you will need to generate a token for the webhook and include this token in the webhook URL like so: <a data-fr-linked="true" href="https://YOURHALOURL/api/notify/syncro?token=12345678">https://YOURHALOURL/api/notify/syncro?token=12345678</a> then paste this token into the &#39;token&#39; field against the integration setup page in Halo.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6Ijk5YzEwYWU2LTY0Y2MtNGQ3Ni1iNGQwLWJmZGIyZDczOWFiNSJ9.guQWoDxF1Kkp30ZXCOtgEuEI2_iawGxSNeqGJNiqh64" class="fr-fic fr-fil fr-dib" width="843" style="width: 845px; height: 255.925px;" height="256"></p><p><strong><span style="font-size: 10pt;">Fig 8. Token field in Halo for webhook</span></strong></p><p><br></p><p>Now, each time this alert is triggered in SyncroMSP a ticket will be logged for this alert in Halo. The alert ticket raised will be assigned to an end user based on the asset that triggered the alert. When the alert is resolved in SyncroMSP &nbsp;the ticket will automatically close in Halo. Similarly, if the ticket is closed in Halo the associated alert in SyncroMSP will be resolved. &nbsp;</p><p><br></p>
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.