RXNT Patient API

Summary

RXNT will make available the RXNT Patient API for third-party developers as part of the certification criteria outlined by the Office of the National Coordinator for Health Information Technology (ONC). The RXNT Patient API allows third-party developers who are developing software applications to access the Protected Health Information (PHI) of patients that are under the care of or have been under the care of providers that have used the RXNT platform. This documentation provides instructions to access RXNT Patient API, including authentication details and methods to connect to the API and retrieve PHI. 

This document serves to fulfill the following criterion outlined by ONC:

  • Application Access – Patient Selection - 45 CFR 170.315(g)(7)
  • Application Access – All Data Request - 45 CFR 170.315(g)(9)

Registration

Third-Party Developer Registration

Any third-party developer that needs access to patient information via a third-party application must first be registered with RXNT. To register, simply contact RXNT at integration@rxnt.com with the following information: 

  • Application name
  • Developer name
  • Developer contact
  • Developer phone number
  • Developer email address

RXNT will provide the developer with login credentials that will be used to access RXNT Patient API.

Application Access – Patient Selection - 45 CFR 170.315(g)(7)

Authenticate Access Request

In compliance with 45 CFR 170.315 (g)(7), RXNT Patient API provides an API that receives a request from a registered third-party developer with active credentials. Third-party developers will submit a request that contains the developer’s login credentials. 

The request body should contain the following parameters using the credentials provided to them by RXNT.

Parameters

  • Username
  • Password

Both of the parameters outlined above are required and should be passed as JSON in the body of the request.

{

 “UserName” : “demouser”,

 “Password”: “demoPassword”

}

Sample Request

Method: POST

URL: https://app2.rxnt.com/MasterIndexExternalAPIServices/masterindexexternalapi/v1/authentication/AuthenticateUser

Headers:

{

  “Content-Type”: “application/json”

}

Body:

{

  “Username” : “demouser”,

  “Password”: “demoPassword”

}

RXNT will check the request to ensure that the third-party developer has both active and valid credentials to access patient information to confirm the request is coming from an authorized party. If the third-party developer is authorized to access patient data, RXNT authenticates the request and  returns a JSON response with a limited time token and values that should be used for subsequent API calls.

Sample Response

{

  "AppLoginId": "loginId",

  "DoctorCompanyId": "DoctorCompanyId",

  "TokenExpiryDate": "TokenExpiryDate",

  "Token": "Token",

  "Signature": "Signature",

  "NoOfDaysToExpire": "NumberOfDaysToExpire",

  "ValidationMessages": null,

  "ValidationStatus": "Success",

  "Meta": null

}

Select Patient

In order to select a patient using RXNT Patient API, third-party developers must have access to the RXNT ExternalReferencePatientID, which is available to registered patients via the PHR on the profile screen. 

The request body should include the parameters outlined below as provided in the initial response from RXNT.

Parameters

  • DoctorCompanyId
  • Signature
  • Token
  • RequestCompanyId
  • ExternalReferencePatientId

All of the parameters outlined above are required and should be passed as JSON in the body of the request.

Sample Request

Method: POST

URL: https://app2.RXNT.com/MasterIndexExternalAPIServices/masterindexexternalapi/v1/patientdashboard/patientccd/GetV1PatientInfoByExternalPatientId

Headers:

{

  “Content-Type”: “application/json”

}

Body:

{

  "DoctorCompanyId": “DoctorCompanyId”,

  "Signature": “Signature”,

  "Token": “Token”,

  "RequestCompanyId": “RequestCompanyId”,

  "ExternalReferencePatientId": "ExternalReferencePatientId"

}

The API will first check to confirm that the ExternalReferencePatientID exists.

Sample Response

The response is in JSON and it returns values for ExternalReferencePatientId, ValidationMessages, ValidationStatus and Meta.

On Success

{

  "ExternalReferencePatientId": "ExternalReferencePatientId",

  "ValidationMessages": null,

  "ValidationStatus": "Success",

  "Meta": null

}

On Failure

{

  "ExternalReferencePatientId": null,

  "ValidationMessages": [

      "Patient doesn't exists with the External Reference Patient Id: xxxx"

  ],

  "ValidationStatus": "Failed",

  "Meta": null

}

Application Access – All Data Request - 45 CFR 170.315(g)(9)

RXNT Patient API provides access to patient clinical data, in compliance with 45 CFR 170.315(g)(9). This API responds to requests for patient data for all of the data categories specified in USCDI v1, which are listed below. The API also responds to requests for patient data associated with a specific date as well as requests for patient data within a specified date range.

  • Allergies and Intolerances
    • Substance (Medication)
    • Substance (Drug Class)
    • Reaction
  • Assessment and Plan of Treatment
  • Care Team Member(s)
  • Clinical Notes
    • Consultation Note 
    • Discharge Summary Note
    • History & Physical
    • Procedure Note
    • Progress Note
    • Other Clinical Note
    • Non-Clinical Note
  • Goals
    • Patient Goals
  • Health Concerns
  • Immunizations
  • Laboratory
    • Tests
    • Values/Results 
  • Medications
  • Patient Demographics/Information
    • First Name
    • Last Name
    • Middle Name (including middle initial)
    • Suffix
    • Previous Name
    • Date of Birth
    • Race
    • Ethnicity
    • Sex (Assigned at Birth)
    • Preferred Language
    • Current Address
    • Previous Address
    • Phone Number
    • Phone Number Type
    • Email Address
  • Problems
  • Procedures
  • Provenance
    • Author Time Stamp
    • Author Organization
  • Smoking Status
  • Unique Device Identifier(s) for a Patient’s Implantable Device(s)
  • Vital Signs
    • Systolic blood pressure
    • Diastolic blood pressure
    • Heart Rate
    • Respiratory rate
    • Body Temperature 
    • Body height 
    • Body weight 
    • Pulse oximetry
    • Inhaled oxygen concentration
    • BMI Percentile (2 - 20 years)
    • Weight-for-length Percentile (Birth - 36 Months)
    • Head Occipital-frontal Circumference Percentile (Birth - 36 Months)

The sample request is shown below:

Method: POST URL:

https://app2.RXNT.com/MasterIndexExternalAPIServices/masterindexexternalapi/v1/patientdashboard/patientccd/GetPatientCCDSData

Sample Request (All Data)

Headers:

{

  “Content-Type”: “application/json”

}

Body:

{

  "DoctorCompanyId": “DoctorCompanyId”,

  "Signature": “Signature”,

  "Token": “Token”,

  "RequestCompanyId": “RequestCompanyId”,

  "ExternalReferencePatientId": "ExternalReferencePatientId",

  "FromDate": "2017/01/01",

  "ToDate": "2017/12/31"

Parameters

  • DoctorCompanyId
  • Signature
  • Token
  • RequestCompanyId
  • ExternalReferencePatientId
  • FromDate
  • ToDate
    All the above parameters, apart from FromDate and ToDate are required. FromDate and ToDate are optional but you should either have both of them or none of them.

In order to get patient data for a specific date, fields FromDate and ToDate should be the same.

Sample Response

The response is in JSON and it returns values for PatientCCDSXml, ValidationMessages, ValidationStatus, Meta.

{

  "PatientCCDSXml": “CCDS XML”,

  "ValidationMessages": null,

  "ValidationStatus": "Success",

  "Meta": null

}

The CCDS XML is returned as a value for the key PatientCCDSXml into JSON response. It can be used by third-party developers as per their needs.

In order to get patient data for a specific date, fields FromDate and ToDate should be the same.

 

Sample XML File is attached to this article. 

 

Date Criteria filter for g(9) and VDT

Date is filtered based on the given FromDate and ToDate value and it must follow the following guidelines:

  • “Start Date” should be less than or equal to “To Date”
  • If “End Date” Exists, “From Date” should be less than or equal to “End Date”

The following section contains some scenarios that explain date filtering.

Problem

Start Date

End Date

Essential hypertension

10/5/2011

 

Severe hypothyroidism

12/31/2006

 

Chronic rejection of renal transplant

12/31/2011

 

Fever, unspecified fever cause

6/22/2015

 

Overweight

12/31/2006

6/1/2007

 

The above table is the master table used for the queries in the scenarios below:

Scenario 1:

  • From Date = “01/01/2005”
  • To Date = “12/31/2005”

No records will be listed

Scenario 2:

  • From Date = “01/01/2005”
  • To Date = “12/31/2006”

Problem

Start Date

End Date

Severe hypothyroidism

12/31/2006

 

Overweight

12/31/2006

6/1/2007

 

Scenario 3:

  • From Date = “01/01/2007”
  • To Date = “12/31/2010”

Problem

Start Date

End Date

Severe hypothyroidism

12/31/2006

 

Overweight

12/31/2006

6/1/2007

 

Scenario 4:

  • From Date = “01/01/2007”
  • To Date = “12/31/2011”

Problem

Start Date

End Date

Essential hypertension

10/5/2011

 

Severe hypothyroidism

12/31/2006

 

Chronic rejection of renal transplant

12/31/2011

 

Overweight

12/31/2006

6/1/2007

 

Scenario 5:

  • From Date = “01/01/2007”
  • To Date = “12/31/2015”

Problem

Start Date

End Date

Essential hypertension

10/5/2011

 

Severe hypothyroidism

12/31/2006

 

Chronic rejection of renal transplant

12/31/2011

 

Fever, unspecified fever cause

6/22/2015

 

Overweight

12/31/2006

6/1/2007

 

Scenario 6:

  • From Date = “01/01/2008”
  • To Date = “12/31/2011”

Problem

Start Date

End Date

Essential hypertension

10/5/2011

 

Severe hypothyroidism

12/31/2006

 

Chronic rejection of renal transplant

12/31/2011

 

 

Scenario 7:

  • From Date = “01/01/2015”
  • To Date = “12/31/2017”

Problem

Start Date

End Date

Essential hypertension

10/5/2011

 

Severe hypothyroidism

12/31/2006

 

Chronic rejection of renal transplant

12/31/2011

 

Fever, unspecified fever cause

6/22/2015

 

 

Scenario 8:

  • From Date = “12/31/2006”
  • To Date = “12/31/2006”

Problem

Start Date

End Date

Severe hypothyroidism

12/31/2006

 

Overweight

12/31/2006

6/1/2007

 

Scenario 9:

  • From Date = “01/01/2015”
  • To Date = “01/01/2015”

Problem

Start Date

End Date

Essential hypertension

10/5/2011

 

Severe hypothyroidism

12/31/2006

 

Chronic rejection of renal transplant

12/31/2011

 

 

Scenario 10:

  • From Date = “06/01/2007”
  • To Date = “06/01/2007”

Problem

Start Date

End Date

Severe hypothyroidism

12/31/2006

 

Overweight

12/31/2006

6/1/2007

 

Scenario 11:

  • From Date = “06/02/2007”
  • To Date = “06/02/2007”

Problem

Start Date

End Date

Severe hypothyroidism

12/31/2006

 

 

RXNT Patient API Terms and Conditions

RXNT Patient API is maintained by RXNT.

 

Sample XML File

Was this article helpful?
1 out of 1 found this helpful