Lisa Holenstein
ServiceNow Employee
ServiceNow Employee

Introduction

ServiceNow is the “Platform of Platforms” and your System of Action that connects processes and data within your enterprise. Different use cases have different requirements regarding the speed and scale at which data is being sent from one system to another, be that your own ServiceNow instances, instances that belong to a ServiceNow partner or service provider working for you, or third-party software platforms.

This is part 2 of an article series that will give you

  • An overview of the available technology for transferring or replicating data between your systems (Part 1)
  • Integration best practices (this article)
  • A guideline on when to choose which option (Part 3)

Note: Some of the products and technology mentioned in this article require a subscription. Please contact your Sales Representative before activating any plugins.

 

Best Practices

This article covers the most important practices to consider when integrating your ServiceNow instance with other systems. It may not cover all the lessons that you learned from your integration experiences, so we'd love to hear your feedback on which helped you the most to create efficient and useful data integrations.

Only transfer relevant + correct data

When customers start integrating their ServiceNow instance with other systems, they tend to be ambitious and import/export all possible attributes of the transferred records. This leads to large amounts of data for which there’s no data governance process in place that helps keeping incorrect or obsolete data at bay. Be mindful to only transfer data that is needed for your process but design your integration with extensibility in mind.

Default to ServiceNow functionality

Centralizing as much functionality as possible to one system helps keeping insight into process automation and overview over integrations. It also helps eliminating the need to learn different interface protocols for different tasks. Using pre-built Spokes from the ServiceNow store or building your own re-usable components allows citizen developers to make use of integrations in the low-code/no-code Flow Designer without the need to involve full-stack developers for every new requirement or change to existing processes.

Centralize connections & credentials

While IntegrationHub allows to define connections inline, any time you recon that a connection may be re-used in other actions or flows, consider creating Connection & Credential entries.

New in Paris: The connections dashboard is located in a tab in Flow Designer, giving you a simplified interface to view, add, and edit connections and credential aliases for your instance. Configuration templates (new in Orlando) allow the setup of complex integrations using a single form.

Measure implementation success

Creating automatic integrations between two or more systems usually aims at reducing manual effort and saving time and money in the process. Prior to building out a spoke, listen to the business process owner and end users carefully in order to identify their main pain points and how your integration can solve it. Get buy-in at key stages of your integration road map and try not to get ahead of where your users are. Define measurable metrics early as a foundation to measure implementation success. Attained ROI goals will ease the path for future projects.

The power of the platform comes to full bloom when you track your integrations and improvement initiatives while and right where they’re running. Performance Analytics and Continual Improvement Management are ServiceNow products that support you in  measuring and improving your processes during their whole life cycle. The KPI composer (available in the Store) ensures that your performance management strategy aligns with business goals and has support from executive sponsors.

Prevent looping when integrating

When integrating your ServiceNow instance with remote systems, either third-party or other ServiceNow instances, we recommend investing effort to ensure that your integration is robust to prevent data loops.

This issue is most prevalent when choosing the most basic form of an integration, that is via email. Sending an email to another ServiceNow instance or third-party platform will often result in an automated reply to the sender, which in turn triggers an update of the source record and another email being sent to the remote system and so on. To solve this issue, ServiceNow recommends to either ignore incoming emails that are auto-generated or disabling workflow when updating the comments through an Inbound Email Script/Action.

When integrating through scripted REST API or Integration Hub, make sure to choose your triggers and conditions in such a way that an incoming update from a remote instance will not trigger a new transaction or disable the running of other workflows within your script. In the advanced options section of the flow trigger, you can choose to “Only Run for User Interactive Session”, which makes sure that automated updates will not trigger this flow. For workflows in the source instance, add a condition that the target record will not be updated if the new value is the same as the previous.

Using IDR to replicate data across a set of instances is the most robust way to prevent loops, as it is not designed to be transactional and the updates are not part of business workflows that trigger other actions.

Handling errors and planned process time-out

Resources

NowLearning

ServiceNow Fundamentals

System Administration Advanced

Flow Designer Fundamentals / IntegrationHub Fundamentals

NowCreate assets (Search) + Success pack “Integration with External Solutions”

Developer Portal

Learning Plans / New to ServiceNow / ServiceNow Administrator / ServiceNow Application Developer

Developer Blog / Flow Designer / IntegrationHub / Import Sets / REST API

Docs

Instance data replication

IntegrationHub / Remote Instance Spoke / Full spoke list

Import Sets / Export Sets

System Clone

Web Services / REST API / Scripted REST APIs

Community

Learn Integrations on the Now Platform - YouTube playlist

Integrations

Flow Designer / IntegrationHub

Instance Data Replication

DK20 CCW0490 Best practices for Spoke development in IntegrationHub

Cloning Best Practices (Data Anonymization)

Knowledge21 Training

CCL1021-K21 Flow Designer - Leveraging low-code digital process automation

CCL1031-K21 Simplifying integration authentication with configuration templates

CCL1065-K21 Full stack app development adventures part 2: Integrations

Comments
Lisa Holenstein
ServiceNow Employee
ServiceNow Employee

Part 3: Decision path and matrix is now available and thereby completes this mini-series.

Paige1
Kilo Expert

Great article!  The bit about loops is especially important. I've been caught up in a loop ourselves with an integration to our sub-production instances.  I only caught on after about 1.6 million transactions, and even then it was by pure accident that we caught it.  Had to fix the flow, of course, to prevent the loop from recurring but it also brought a gap to my attention in error reporting for Flow/IntegrationHub.

The platform comes with some great dashboards, but those aren't really proactive.  You have to make yourself look at the dashboards to realize there's a problem.  So I actually threw together an app with a couple of flows to mitigate loops and errors with Flow Designer/IntegrationHub and automatically generate incidents to our ServiceNow team when these things occur.  It's simple enough, but should catch it before things get out of control if it ever happens again (and hopefully prevent us from having to grovel to ServiceNow to remove the erroneous transactions from the bill).

Version history
Last update:
‎08-31-2020 01:20 AM
Updated by: