Data on demand

Data on demand is a capability that allows you to request your connection's data “on demand” from Redox.

Data on demand offers:

  • Multi-tenant, FHIR®-conformant data storage architecture with an automated scaling infrastructure. We scale your infrastructure based on your usage without charging incremental fees or requiring your team’s time.
  • Customized business logic to ensure consistent data handling. We work with your connection to determine how they make their data available. We handle the scoping, setup, and testing to make sure you get the data you need when you need it.
  • Pre-built queryable endpoints. We handle the integration to your connection and translate the output into the same Redox format every time. No need for you to do custom data mapping or creating and maintaining queryable endpoints.
  • Industry-leading security practices. We combine industry certifications with technology best practices to drive our robust security program.

Why data on demand

Data on demand may be useful if your connection's system doesn't support query-based (or synchronous) exchanges, but they're still willing to provide data with a push-based (or asynchronous) method.

Using a push-based method may mean that there's a high volume of incoming messages that you may not need until tomorrow (or even next month). But you still must build, implement, and maintain the necessary business logic to parse and store all the data.

We can already hear you saying: but wait, what if I don't want all that data?? Don't worry, that's why we offer data on demand.

With data on demand, the integrated system pushes data to Redox, which we ingest and organize for you. Then, you can query for specific data only when you need it. This allows you to focus on getting the data you want, when you want it, without the overhead in between.

When to use data on demand

  • An integrated system only supports push (event-based) exchange;
  • You don't want to store all the data that would come from a push-based exchange; or
  • You only want to receive data when you need it (upon request).

Supported API actions

Data on demand isn't available for all API actions. Scroll to the bottom of this page to view the currently supported FHIR® resources and data models.

Results from data on demand

When you query data on demand, the returned results are based on exact matching. This means that all fields must match your search criteria exactly.

For example, let’s say you search for a patient with demographics. You provide a name, birthdate, gender, and phone number for the patient. The EHR locates a patient with the same name, birthdate, and gender, but there’s a different phone number listed. Based on exact matching, no results would be returned.

As you can imagine, this can get dicey if patients have different phone numbers, email addresses, or nicknames throughout different systems. Or, if different systems use nonidentical formats for any of these fields—for example, 555-555-0000 instead of (555) 555-0000 for a phone number—then they still won’t match.

How to get multiple matches with exact matching

Exact matching may still return multiple matches. This can happen if:

  • two patients’ demographic data match (e.g., if a patient has the same name, birthdate, and gender); or
  • one patient has two records in an EHR system due to a data entry error or unmerged records.


If you use data on demand for any patient admission, discharge, or transfer (ADT) data, you likely need a backfill of data prior to going live. Learn about backfilling.

No matter the backfilling option you use, your connection's system continues to push patient ADT data to Redox after going live, so that it's available to you via data on demand.

Supported FHIR® resources and data models

Currently, we support data on demand for any of the following:

  • ClinicalSummary
    • PatientQuery
    • VisitQuery
    • DocumentQuery
    • DocumentGet
  • Media
  • Notes
  • Orders
  • PatientSearch
  • Provider
  • Results
  • Scheduling
    • Booked