As your organization grows, the need for more integrations grow as well. Whether you need to onboard more clients or connect more departments, scaling integrations becomes necessary but can also become more complex. This post will identify the challenges associated with scaling and provide strategies for overcoming these challenges with the use of APIs.
Challenges with Scaling
The main challenge with scaling is that connections can increase exponentially. In the diagram below, 6 connections are required to connect 4 systems. This only becomes more complex as the number of systems/departments/clients grow. In order to connect another system, four connections would need to be added, for another, five connections and so on.
The number of connections also affects the data being transferred. With a setup like this, data can be duplicated, there can be various versions of the same information, and it can be hard to determine which document is the latest and most accurate. This is because in this setup there are one-to-one connections so the same data can be passed and changed multiple times between some connections but not others. This results the systems having different versions of the data. The systems are not interconnected so there is no single source of truth. The source of truth refers to having one source document that is taken as the most up to date and accurate version.
Integration Hub
In contrast to the system shown above, an integration hub sits in the middle of all systems and allows for less connections to be used. Each system requires one connection and all of the systems are connected through the hub. Since all of the connections are connected through the integration hub, it acts as the single source of truth. All data is passed through the hub and this ensures that there is only one copy of information, it is accurate, and it is up to date.
How APIs Can Help
One option for an integration hub is through the use of APIs. APIs allow for simple endpoints to connect to and are easy to use. They allow you to simply make a request and have the information given back to you regardless of the process taking place in the back end. APIs also allow incoming data to be translated into a common language so that communication between systems is done in the same language.
Strategies for Scaling with APIs
Normalizing Data
We recommend that you map all incoming data into your own format. This includes:
- Creating a common internal data structure that can be used to communicate between systems
- Mapping all incoming data to the internal data structure
- Mapping all outgoing data from the internal data structure
Following these best practices makes it easier to transfer data. This internal standard will be used in the integration hub and allows all incoming data to be mapped into the internal standard and then mapped from this internal standard when transferred to another system. This reduces the amount of translations as data does not need to be mapped and transferred for each specific connection between systems (i.e., HL7, FHIR, CCDA, CSV, X12, etc.).
API Design
It is important to keep API design simple. This means making sure that each request performs only one function. It is also important to define all requests and responses and to make sure that this information in properly documented for internal knowledge and use.
If you want to know more about about scaling, best practices regarding APIs or anything else integration, contact us for more information.