Redox framework for data exchange

With an integration to Redox, there are a few ways that you can exchange data with your connections:

  1. Event notification: SEND data triggered by an event in your system or RECEIVE data triggered by an event in your connection's system. This exchange is typically asynchronous. Learn about polling, which is a type of notification exchange.
  2. Query: REQUEST data from your connection to gather supplemental information about a patient record, or RESPOND with your data to your connection's query. This exchange is typically synchronous.
  3. Writeback: WRITE information back to your connection's system. This exchange is typically asynchronous.

Explore our API actions for common ways to exchange data to get some ideas for creating your own unique workflow.

How to set up data exchange

Redox uses the metadata of exchanged requests to process, partition, and route data appropriately.

Sources, API keys, and destinations

Your system must have at least one source and API key to send data. A source identifies your system and communication method, while an API key authorizes your system to SEND data to and REQUEST data from your connection. You can view and create API keys on the Developer page of the Redox dashboard, under the API Keys tab. Learn more about authentication.

Your system must have at least one destination, or endpoint, to process incoming requests. A destination is a URL that can RECEIVE data from and RESPOND to your connection's requests. In the Redox dashboard, you can view and create destinations under the Endpoints tab of the Developer page.

You may send data across multiple connections via the same source. If you need multiple communication methods, then you'll need a source for each type. But at a minimum, your organization must have one source and API key to initiate requests and one destination to receive requests from your connection(s).

Environment types

Environment types identify the kind of data flowing between systems. We have three basic environment types:

  • Development environments are only for testing between your organization and Redox. Your development environment automatically integrates with Redox.
  • Staging environments are for testing either with specific Redox sandboxes, your own testing system, or your connection's system.
  • Production environments are for real patient data with PHI passing through the integration, which could either be for live production or testing.

You can only exchange data with the same environment type. For example, if you send data from a staging environment, it can only be received by another staging type of environment.

Environments can also help you manage user access to your system's configuration settings. Learn about environments.

Dates and timezones

An inherent part of data exchange is knowing the when—that is, when outgoing requests are delivered or when incoming requests are received. Redox generates relevant date and time metadata for this.

Also, there may be date and time pieces in a request that are significant to the data itself (e.g., the date that a patient was admitted to the hospital). It's important to not include a time value if only the date is known or appropriate. Within the request, Redox doesn't add a timestamp to a time field if the request doesn't contain one.

Given that different organizations are likely in different time zones, Redox converts timestamps to UTC time zone in ISO 8601 format (i.e., YYYY-MM-DD or YYYY-MM-DDThh:mm:ss.sTZD). Learn more about ISO 8601.


Message and file size limits

Redox has message and file limits for both incoming and outgoing traffic. If a message exceeds these limits, the message will error.

Type of traffic
Size limit
Redox API traffic (e.g., Redox Data Model API or Redox FHIR® API)
40 MB
Carequality Interoperability Framework (for Redox Access™)
40 MB
HL7v2 messages over MLLP
30 MB
Uploaded files
30 MB
Embedded files
10 MB
All other integrations or APIs
10 MB