Supported Flat Data Domains

Overview

While many organizations consume data in the FHIR R4 format, implementing and maintaining FHIR integrations can require significant resources. To address varying technical capabilities and priorities, Particle Health offers an alternative flattened data format designed for faster integration and ingestion into downstream systems.

The flat structure simplifies data processing and persistence compared to the hierarchical complexity of FHIR R4. Delivered in formatted JSON, the flat output consists of datasets specified in the parameters of the GET /flat/{id}/collect-data[parameters]API request.

Each dataset corresponds to a specific clinical domain (e.g., Labs, Encounters) and is structured as a list of dataset entries. This format allows for more efficient parsing, storage, and utilization of the data within customer systems.


Supported Flat Domains

Dataset
Allergies x
Compositions
Coverages
Document References
Encounters
Family Member Histories
Immunizations
Labs
Locations
Medications
MedRecs
Organizations
Patients
Practitioners
Problems
Procedures
Provenances
Related Persons
Social Histories
Vital Signs

How to link the data models

To gain additional clinical context with the Flat datasets, each dataset contains a primary key(s) and/or foreign key(s) that allow you to link the various tables together. For example, if you were interested in which encounter a diagnosis was made, you can link the Problem entry to an Encounter entry. To do this, link the Problem.EncounterID to the Encounter.EncounterID.


For additional information on which keys are compatible, we have included an entity relationship diagram here:


Example

Below is an example illustrating the structure of the Labs and Encounters datasets in the Flat output format.

{
    "LABS": [
        {
            "field_1": "value_1",
            "field_2": "value_2",
            "field_n": "value_n"
        },
        {
            "field_1": "value_1",
            "field_2": "value_2",
            "field_n": "value_n"
        }
    ],
    "ENCOUNTERS": [
        {
            "field_1": "value_1",
            "field_2": "value_2",
            "field_n": "value_n"
        },
        {
            "field_1": "value_1",
            "field_2": "value_2",
            "field_n": "value_n"
        }
    ]
}