The what, why & how of SAM integrations
Per Skanne, product manager at Snow, discusses how Snow products support integrations, and how we enable integrating data into Snow from another system, or from Snow into another system. My colleagues and I get a lot of questions about integrations: “can Snow Products integrate with product X?” and “If so, how long does it take?”. Accepting that answering a question with another question can sometimes be frustrating, before we can provide a considered and reliable answer, we need to address the following:
- What is it you want to integrate?
- What type of information do you want to transfer?
- Are you wanting to take information from Snow or push it to the SAM platform?
- What’s the business driver for – and the value of – the integration?
Once we’ve understood what and why, then how the integration is best achieved usually becomes pretty straightforward. If, for example, we want to feed inventory data into Snow from another system, we can bring inventory data into Snow License Manager using either one of the Snow Integration Connectors to third party systems or we can use the Snow XML connector, an open XML format that allows us to bring in inventory data from any source whatsoever (one advantage of this approach is that the imported data is still cleansed and normalized by Snow’s Software Recognition Service, ensuring all data in License Manager is in a consistent format).
For business data that you might want to bring into the Snow SAM platform it’s possible to feed in the data via the web import functionality in Snow License Manager. There’s already the capability within Snow License Manager to add custom fields for storing any data; for example, a custom field can be added to a computer, to a user, to an agreement, or to a license.
Typically, the data can be imported from an Excel spreadsheet, or a CSV file, just containing a few columns – the asset that you want to add it to (e.g. the computer name), the name of the custom field, and the value that you want to bring in.
This can be fully automated, with a scheduled export from the source that you want to grab the data from. Normally the easiest way to accomplish (and, perhaps more importantly for the customer, the most cost-effective way to do it) this kind of integration is to export the desired data by pushing it to a file share and then using an automated import routine in Snow License Manager, where it instantly picks up a file that’s placed in the directory.
It only has to be mapped once and then the next time a file is placed in the same directory, it’s instantly and automatically picked up and imported into Snow License Manager. The customer gets a fully automated integration at a fraction of the cost – and administrative overhead – of a heavily-engineered in-product integration that will probably break the first time the customer tries to upgrade their solution or create a new series of reports.
Sometimes the simple solutions really are the best. If you want to extract data from Snow into a third-party application, that’s even easier. Simply use the built-in ‘report export’ function in Snow License Manager and use the column selector to add or remove the data that you want to feed into another system.
Another option is to provide an already-filtered report as an Excel spreadsheet, CSV file, text or XML document. Just as with imports, these can be scheduled to match your requirements. This is very common when feeding data from Snow into helpdesks and ITSM solutions. Another option is the Snow License Manager API, which is installed as part of the standard installation of Snow License Manager. Although installed, it’s not activated, so you would need to create a user account and enable access to the API. The Snow License Manager API is what you would typically use if you were creating an online integration.
For example, where you have a system where the users request their applications, and you have a workflow to check license availability before approving a request of an application.
In this scenario, you can use the web API to query how many licenses are available for a specific application. This would be used for live integrations, where the data always needs to be current, whereas the report exports, or scheduled exports, would typically feed data on a daily basis.
With that said, the data inside Snow License Manager doesn’t typically change minute-to-minute. The data update job runs each night and it’s then that any major changes in the inventory or license position occur.
As such, the need for a truly ‘live’ connection between Snow License Manager and another system is actually quite limited and the routines described above will deliver the same value at a lower investment (both in terms of expenditure and time).
My experience is that when we talk about integrations we risk getting a little ahead of ourselves and dive into solutions before fully understanding the WHY and the WHAT.
My recommendation would be to take a step back, analyze the business need and only then progress to identifying the most cost-effective way to implement the desired type of integration – that is the key to success.
To learn more about integration options with the Snow platform, speak to an expert today.