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 is typically an asynchronous exchange. 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 is typically a synchronous exchange.
  3. Writeback: WRITE information back to your connection's system. This is typically an asynchronous exchange.

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

When everything is set up appropriately, Redox uses the metadata of the exchanged requests to process, partition, and route data appropriately.

API keys and endpoints

Your system must have at least one API key to initiate requests. 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 endpoint to process incoming requests. An endpoint is a URL that can RECEIVE data from and RESPOND with data to your integrated connection's requests. You can view and create endpoints on the Developer page of the dashboard, under the Endpoints tab.

Essentially, you may send data across multiple integrations via the same communication method, but you're only required to have one API key to initiate requests and one endpoint to receive requests from multiple endpoints.

Environment types

Redox uses a few environment types to identify the type of data that flows between a given integration:

  • Development environments are only for testing between you and Redox. Your development environment is automatically integrated 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.

Your system can only exchange data with a system that has the same environment type. For example, requests sent from your staging environment can only be received by another staging environment.

Dates and timezones

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

Also, there may be date and time components within 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 all 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.

Type
Format
Example
Date
YYYY-MM-DD
2019-09-22
DateTime
YYYY-MM-DDThh:mm:ss.sssZ
2021-09-22T10:20:30.000Z