Skip to main content

Epic on FHIR Integration Guide

Steps to complete the Epic on FHIR integration.

Our application is listed in the Epic Showroom here.

Client ID: d3e43049-df84-4af9-b5cf-e39bfde69bd5

Non-Production Client ID: 77e57dbe-0ebd-4d61-909f-35f9f2f60cba

Our application operates as a backend service, utilizing backend OAuth 2.0 for system-level authorization. This approach eliminates the need for individual user credentials or a user interface, simplifying the integration process and ensuring secure, efficient access to EHR web services without direct user involvement.

This setup also eliminates the need for a Federated Data Interface (FDI), streamlining your integration efforts.

Below is a step-by-step guide to assist with implementing the Vital Epic on FHIR application.

  1. Access

    • You will need to request access to our application, which can be looked up using the IDs provided above.

  2. Authentication

    • Once we have approved your access, we will configure a public/private key pair and JWKS URL that will be used to authenticate our application when hitting your endpoints.

  3. Background Service User

    • An interconnect admin will need to associate our client ID with a background service user and assign the necessary security roles and permissions to this user.

    • Please refer to your FHIR Setup and Support Guide for more information but, typically, these points will include:

      • Ambulatory Points (Patient Search/Select [1]).

      • Inpatient Points (Results Review [4], Patient Summary [5], Demographics [6], Chart Review [7], View Only Demographics [8], Order Review [12], Problem List [13], Review Flowsheet [14]+, Education Record [15], Notes [16], Meds [21], Care Plan [58]).

      • Care Everywhere Points (View Documents [4]).

      • Prelude (A class w/ access to the relevant Service Areas).

    • Ensure this user has system-level access as required for backend services.

  4. Share Endpoint Details

    • Provide us with the base URL of your Epic FHIR servers for both PRD and non-PRD.

    • Include details of any custom FHIR endpoints and any relevant extensions if applicable.

  5. Testing

    • Once we have received your endpoint details, we will verify that our application is able to authenticate and that we can successfully query each of the required endpoints.

+ Flowsheets require additional configuration in order for us to successfully query them.

  • We will work with the relevant team(s) to understand what flowsheet rows are required for the Vital Platform, typically this will be any nursing documentation regarding triage, assessment, death, and discharge.

  • In order for us to query these rows, you will need to generate encoded IDs.

  • This is done in the Text version of Epic, under Bridges and Web Service Utilities.

  • You will need to enter the specific flowsheet row (e.g. the default Height flowsheet has the ID 11) and the utility will return an encoded ID.

  • This will need to be done for both PRD and non-PRD environments, as the encoded IDs will be different for each.


For the full list of FHIR resources and API scopes our application requires (Patient, Encounter, Observation, DocumentReference, and others) and which patient-facing features each one enables, see the reference article Epic on FHIR Application.

Did this answer your question?