Sending a file

Some data just isn’t complete without a file or two for context. With Redox, you can send files to a partner’s EHR system or any other type of integrated system. 

Types of files

You can send any valid file type via API to an integrated system. Typically, you may send a file to save it to a patient’s record. But whatever the reason may be for exchanging files, we recommend not sending executable files or archive files for security reasons since they may contain exploitable vectors that could corrupt the integrated system. Prior to delivering the request, we use content inspecting firewalls, which may reject suspicious payloads. 

File upload environment

Upload functionality is only available from a staging or production environment with a pre-production or production account. We return a 403 Forbidden error if you try to upload files from a development environment.

Data models and resources to use

Using the Redox FHIR® API, you can use the DocumentReference resource to send a file.   

Using the Redox Data Model API, you can use the Media, Notes, or Results requests to send a file. 

Methods for sending a file

There are two methods for sending a file through any of the requests above: (a) embedding a file directly in the request, or (b) uploading and referencing a file in the request. The method for sending depends on the expected file size:   

  • Files up to 10 MB can be embedded directly into a request. As a best practice though, we recommend not embedding files over 200 KB.
  • (Recommended) Files up to 30 MB can be uploaded, then referenced in a request. 

Embed error

If you try to embed a file over 10 MB, you receive a 413 Payload Too Large error from Redox.

Uploading and referencing a file

As a best practice for optimal performance, we recommend uploading a file via an HTTP request to Redox, then referring to the file in one of your outgoing requests to your partner’s EHR system. We encode the file for you as a base64 encoded string prior to sending it to the intended recipient. Go with this option if you plan to send files regularly, especially files on the larger size. 

To use this method, you must upload a file from a staging or production environment. You can check that a file successfully uploaded in the related log in the Logs tab of the Redox dashboard.

Embedding a file

If you plan to only send a small file occasionally, you can embed the file directly into the request instead. As a best practice for optimal performance, we recommend embedding only small files, maybe up to 200 KB in size, even though the technical limit is 10 MB. Just know that if you choose this method, you must encode the file as a base64 encoded string yourself prior to sending the request.  

How to…

Check out our instructions for how to embed or upload files via these APIs: