Redox Connector in Mule 4

Apisero
4 min readFeb 16, 2021

Author: Suraj Rohankar

What is Redox Engine?

Redox is an interoperability platform to make healthcare data useful. The main goal is to enable the frictionless adoption of technology within the healthcare space by providing a standardized API and scalable integration infrastructure for healthcare products, devices, and software looking to exchange data with healthcare organizations and other healthcare data sources.

Integration is critical to many healthcare products, but it can quickly take over a large amount of engineering time and staff to scale. Traditional point-to-point connections require a never-ending amount of customization, complexity, and code that make scaling your codebase and customer base challenging.

Why Redox Engine?

Redox exists to improve healthcare by uniting patients and providers through easily accessible technology. Technology can dramatically improve healthcare. It helps healthcare organizations become more efficient. It gives patients more control of their healthcare experience. And when done right, technology removes distractions so providers can focus on what’s important: their patients.

The Redox Engine handles all core message processing, routing, and storage for the millions of messages exchanged across the platform daily. Redox engine was built with flexibility in mind to minimize the effort required for integration, not just for Redox customers but also for the healthcare organizations they partner with. Redox can ingest data from different healthcare data Sources, such as EHRs, HIEs, CRMs, and ERPs, using the format that their system already natively supports (e.g., HL7, vendor API, FHIR, etc.).

About Redox Connector — Mule 4

The Redox Connector for the Anypoint platform helps us enable bi-directional integration for the full spectrum of Redox data models. Redox replaces customers’ need to maintain HL7 or FHIR listeners with its industry-leading, fully managed EHR integration solution. This enables connectivity between a client’s EHR system and any downstream applications through MuleSoft, including Salesforce Health Cloud.

Use Case:

  • Patient arrives at the hospital
  • Patient has some labs results completed
  • Patient is discharged from the hospital

This article assumes that you are familiar with Anypoint Studio, Connectors, Global elements.

Prerequisites:

  1. Anypoint Studio 7
  2. Postman
  3. Create an account on Redox Engine
  4. After successful login to Redox Engine,

Click on Sources -> Create Source -> Provide source name eg. “Test” -> Click on create.

It will redirect you to the Settings tab of the created source. Scroll down on the same page, and you will be able to see the API key. Copy and paste the API key somewhere. Click on New Secret, create a new secret, and copy-paste somewhere.

Let’s get started!

Step 1: Create sample Mule project in Anypoint Studio.

Step 2: Goto Mule Palette -> Click on Search in Exchange -> Search for Redox Connector — Mule 4 and add it in Mule Palette.

Step 3: Create Global Configuration for Redox connector and provide Api Key, Secret.

Step 4: Click on Test Connection. Test connection should be successful.
Step 5: Create a flow as shown below.

Step 6: Deploy the application. Navigate to the URL of your application from Postman and provide a JSON body. You should receive JSON responses with DataModel and EventType.

Step 7: Login to Redox Engine

Click on sources -> Select your created source(i.e. “Test”)

Step 8: Open your created source(i.e. “Test”) -> Messages

Now you can see our patient data like new patient registration, new observation and patient discharge details has been stored into a Redox Engine in PatientAdmin, Flowsheet and PatientAdmin DataModel respectively.

If you check in at any of the ID, you will be able to see all details like request, response, Redox JSON, uploaded files, error records ect.

  • You can check source code here or open a mule application as an example from anypoint exchange in Anypoint Studio.

Username: guestuser1

Password : Muleuser@1

References:

--

--