PROBLEM DESCRIPTION

Idomoo is a leading provider of personalized and advanced interactive video. Their Next Generation Video Platform combines data with video to deliver an exceptional customer experience. They produce cinematic, high-quality and evergreen videos that auto-update with the latest data and are even customizable by the viewer, rendering instantly on demand.

To provide personalized videos to clinical patients, Idomoo needed a way to access FHIR (Fast Healthcare Interoperability Resources) data related to EHR (Electronic Healthcare Records). These videos contain medical information that is useful for the individual patient’s treatment.

To this end, Idomoo asked 3XM Group to develop an application that handles the authorization of EHR data requests against EPIC (a service that stores patient data). Called “API-broker,” this application was responsible for authorization using the SMART on FHIR protocol (OAuth2) and data sending to the Idomoo Video Services application. In this way, the Idomoo Video Services application can create a video tailored to the final user (a clinical patient).

IMPLEMENTED SOLUTION

To accomplish the SMART on FHIR authorization, 3XM Group implemented an API-broker application that handles web client requests asking for a video for a particular patient. 

The API-broker is a docker FastAPI Python application that receives API calls from a user through a web client. It asks for particular FHIR resources from the backend, such as  patient information, procedures information, etc. The API-broker implemented necessary logic aligned with the SMART on FHIR protocol to authorize data via the SMART App Launch or SMART Backend Services. In the first case, a user session (patient, doctor, health provider, etc.) requests access with a given user-context. In the second case, the user session isn’t directly involved in the flow, as the API-broker uses a private key to authenticate against the EPIC application containing data.

If the authorization is granted, the FHIR resources are gathered and used to generate a particular video for the user (for example a guide on a particular medical procedure, an explanation of the patient’s diagnosis, etc.) This video generation is performed in the Video Client API developed by Idomoo (see diagram below).

The application was properly documented with files, a README and a postman collection. For this solution, 3XM Group designed a simple architecture: 

OBTAINED BENEFITS

Once the solution was implemented, Idomoo was able to integrate the Video Client API to the API-broker without worrying about authorization issues, which  were handled and properly documented by the 3XM Group solution.

  • Documents, README, and a postman collection were delivered as documentation so the client could understand and integrate the API-broker without any particular issues.
  • SMART on FHIR protocol makes the entire solution aligned with current healthcare interoperability standards.
  • As the application was delivered as a docker container, it was available to be quickly added to the Idomoo AWS Cloud with a traditional ECS deploy.
  • The application implemented with the FastAPI framework provides Idomoo a fast-to-code, intuitive, robust and scalable application for their current system. Any changes or new features can be quickly added to the application in a few steps.

TECHNOLOGY STACK

Our solution makes use of:

→ AWS Cloud

  • ECS
  • API Gateway
  • Load Balancer

→ HL7 FHIR v4

→ SMART on FHIR

→ Docker and Docker-Compose

→ Python

  • FastAPI

→ Redis

→ Postman Collections