FHIR MedicationOrder

Base Path: /fhir/1.0/MedicationOrder

Version: 2.0.0

The FHIR MedicationOrder API allows you to look up and retrieve a list of the medications that were ordered (prescribed) for a patient. The endpoint provides the ability to:

  • Retrieve all MedicationOrder resources that match a search criteria for a given patient.
  • Retrieve a specific MedicationOrder resource based on its resource ID

The data returned in this API is subject to privacy and permissions settings, refer to the Working with Privacy guide to learn how this might affect your application.

This API is based on the DSTU2 release of the FHIR standard, for more information on this API refer to the official FHIR documentation.

Authorization: OAuth 2.0 Bearer token is required to access the resources of this API. Once signed up, credentials and URL to access the OAuth API can be found on My Apps Page.


Methods

Get Ordered Medications for a Patient

GET /fhir/1.0/MedicationOrder/

This method returns all ordered medications for the patient identified by patient.identifier. Optionally filtering by the date-time the medication was ordered, and the order status.


Parameters

Name

Type

Data Type

Description


Name:

patient.identifier

required

Type:

query

Data Type:

string

Description:

The patient identifier consists of patient identifier namespace, also known as the system, and identifier, separated using a URL encoded | character i.e. %7c.


Sample Value: ORION|AAAA-0124-8



Name:

datewritten

optional

Type:

query

Data Type:

array

Description:

Filters the ordered medications to those with an order date on, before, or after a specific date, date-time, or date range. The supported prefixes are >, >=, < and <=. If no prefix is used, exact date or date-time matching is implied. Dates must be formatted according to ISO 8601 either as a date only (e.g. 1997-07-16) or as a date-time including the timezone (e.g. 1997-07-16T19:20:30+13:00). Ensure that special characters such as + are URL encoded i.e. %2B.


Sample Value: >=2013-01-01T01:00:00+13:00



Name:

status

optional

Type:

query

Data Type:

string

Description:

Filters the ordered medications to those having the specified status. Possible values are

  • active
  • entered-in-error


Sample Value: active


Responses


application/json+fhir

200

Returns a FHIR Bundle containing 0..* OperationOutcome resources and 0..* MedicationOrder resources

Sample Requests

Get all Medication Orders for a Patient
curl -X GET "https://api.orionhealth.io/fhir/1.0/MedicationOrder/?patient.identifier=ORION%7CAAAA-0124-8" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>'
Get active Medication Orders for a Patient
curl -X GET "https://api.orionhealth.io/fhir/1.0/MedicationOrder/?patient.identifier=ORION%7CAAAA-0124-8&status=active" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>'

Get Ordered Medications for a Patient

POST /fhir/1.0/MedicationOrder/_search

This method returns all ordered medications for the patient identified by patient.identifier. Optionally filtering by the date-time the medication was ordered, and the order status. This is the secure alternative to the GET search.


Parameters

Name

Type

Data Type

Description


Name:

Content-Type

required

Type:

header

Data Type:

string

Description:

Specifies how to encode the form data. The Content-Type value must be application/x-www-form-urlencoded


Sample Value: application/x-www-form-urlencoded



Name:

patient.identifier

required

Type:

formData

Data Type:

string

Description:

The patient identifier consists of patient identifier namespace, also known as the system, and identifier, separated using a URL encoded | character i.e. %7c.


Sample Value: ORION|AAAA-0124-8



Name:

datewritten

optional

Type:

formData

Data Type:

array

Description:

Filters the ordered medications to those with an order date on, before, or after a specific date, date-time, or date range. The supported prefixes are >, >=, < and <=. If no prefix is used, exact date or date-time matching is implied. Dates must be formatted according to ISO 8601 either as a date only (e.g. 1997-07-16) or as a date-time including the timezone (e.g. 1997-07-16T19:20:30+13:00). Ensure that special characters such as + are URL encoded i.e. %2B.


Sample Value: >=2013-01-01T01:00:00+13:00



Name:

status

optional

Type:

formData

Data Type:

string

Description:

Filters the ordered medications to those having the specified status. Possible values are

  • active
  • entered-in-error


Sample Value: active


Responses


application/json+fhir

200

Returns a FHIR Bundle containing 0..* OperationOutcome resources and 0..* MedicationOrder resources

Sample Requests

Get all Medication Orders for a Patient
curl -X POST "https://api.orionhealth.io/fhir/1.0/MedicationOrder/_search" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'patient.identifier=ORION%7CAAAA-0124-8'
Get active Medication Orders for a Patient
curl -X POST "https://api.orionhealth.io/fhir/1.0/MedicationOrder/_search" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'patient.identifier=ORION%7CAAAA-0124-8' \
-d 'status=active'

Retrieve a single MedicationOrder

GET /fhir/1.0/MedicationOrder/{id}

This method returns the MedicationOrder resource matching the requested resource ID.


Parameters

Name

Type

Data Type

Description


Name:

id

required

Type:

path

Data Type:

string

Description:

The id of the MedicationOrder resource


Sample Value: M63n


Responses


application/json+fhir

200

Returns a MedicationOrder resource matching the the requested resource ID.


application/json+fhir

404

No MedicationOrder resource found with the requested resource ID.

Sample Request

curl -X GET "https://api.orionhealth.io/fhir/1.0/MedicationOrder/M63n" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <Access Token>'