Importing 3rd party alerts
Centralized ticketing systems are pivotal in managing alerts within IT environments, including those from internal and 3rd party systems. These alerts, indicating events that may require immediate action, are integrated into ticketing systems through various methods, each with its unique advantages and challenges.
There are 3 primary ways in which alerts from the 3rd party system are imported into a ticketing system,
Polling: Scheduled API Requests
In this scenario the 3rd party system offers an API to get alerts and you need to periodically poll the API to get new alerts since the last time the request is made. The code to poll the API code can sometimes be run by the ticketing system itself. For example ServiceNow supports this type of mechanism. The other option is to run the code on an internal machine. This code typically will poll the 3rd party system for alerts and the retrieved alerts are then pushed to the ticketing system.
This solution is most commonly used when,
From the IT perspective the challenges with this solution are,
From a 3rd party systems perspective the polling mechanism requires it to handle a constant stream of requests which need to be handled efficiently. Rate limiting is a common mechanism used to lower the load on system.
Native integrations: Direct System-to-System Communication
In this scenario the ticketing system needs to have an external API using which alerts can be pushed to it. The 3rd party system needs to support a native integration with that ticketing system using which the 3rd party system can push alerts to the ticketing system as an when the alert happens. For example ServiceNow and several other vendors offer an API to push alerts to it.
When available this is probably the best option to use.
领英推荐
From an IT perspective the challenges with this solution are,
From a 3rd party systems perspective the push mechanism may be more challenging. Now it needs to take on the responsibility of delivering the alert to the ticketing system. This means,
WebHooks: Event-Driven Notifications
In this scenario the 3rd party system offers a way to push the alert to some HTTP endpoint when the alert happens. This is very similar to a native integration. The main difference between native integrations and webhook based integrations is that in the native integration it is the ticketing system that dictates the contract, whereas in the webhook integration the 3rd party system dictates the contract.
The contract between the two systems includes for example,
With WebHook integrations therefore the IT organization may need to either add an http server to handle the webhook request from the 3rd party system or use tools like zapier or ifttt to receive the webhook request, reformat it and post to the the alert to the 3rd party system.
From an IT perspective the challenges to this solution are,
From a 3rd party system perspective the challenges are pretty much the same as what it would be for a native integration
How to decide which option is right?