Send a Message With Dev Tools

After you have set up your Source you are now ready to send a message!

All requests to the Redox API are POST requests to endpoints that live under https://api.redoxengine.com/

To send data to Redox, POST to https://api.redoxengine.com/endpoint

To query Redox for data, such as in a PatientSearch or ClinicalSummary request, you should POST to https://api.redoxengine.com/query and include the parameters identifying the patient in the body of the request, as indicated in the data model documentation.

We use POST so that Protected Health Information (PHI), such as the patient’s Medical Reference Number (MRN), is transmitted in the body of the request, which is SSL encrypted. With GET requests, query parameters and resource identifiers must go in the URL, which could be logged in plain text in network and server logs before the request gets to Redox.

Your requests should have the following header key/value pairs:

  • “Content-Type”: “application/json”
  • “Authorization”: “Bearer ” + accessToken (See how to get your accessToken in Create a Source)
curl -X POST https://api.redoxengine.com/endpoint \
  -H '{"Content-Type": "application/json", "Authorization": "Bearer 13d5faa8-aacd-4a0d-a666-51455b1b2ced"}' \
  -d '{"Meta": {"DataModel": "Media", "EventType": "New", "Destinations": [...]}, "Patient": {...}, "Media": {...}, "Visit":{...}}' 

Note: There is a space after the word Bearer in the Authorization header.

The body of your POST should be the Data Model you are posting, with the appropriate fields filled out in the Meta sub-object. In particular, the Meta.DataModel , Meta.EventType , and Meta.Destinations[].ID fields must be filled out correctly.

If your POST is accepted by Redox, we will respond with the MessageID and TransmissionID.

{"MessageID": "21909982", "TransmissionID": "89022"}

If your POST is not accepted by Redox, we will respond with any error messages and error IDs in ErrorMessages and ErrorIDs.

{"MessageID": "21909982", "TransmissionID": "89022", "ErrorIDs": [1234], "ErrorMessages": ["No Subscriptions found for message."]}

Note: The MessageID may not be present if we fail out before even creating the message.

If you receive a 200 response from us, that means we have successfully received your request, validated that all the necessary information is present, and have sent it through our translation process. For production integrations, if anything happens on our side to cause an error, we will work to fix it, and 99% of the time we will not need to involve you.

Lastly, please note that all test messages you send to our “Redox EMR” development destination using our Dev Tools cURL commands or Postman package are sent to a static database and do not actually create test data. End-to-end testing will take place once you kick off an integration project and we are able to establish a connection between your application’s staging environment and your health system partner’s testing environment.