FHIR Task

Base Path: /fhir/4.0/Task

Version: 2.0.0

The FHIR Task API allows you to look up a patient's tasks. The endpoint provides the ability to:

  • Retrieve all Task resources that match a search criteria for a given patient.
  • Retrieve a specific Task resource based on its resource ID.
  • Retrieve the history of a Task resource based on its resource ID.
  • Retrieve summaries of all Task resources that match a search criteria for a given patient

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

The Task API aggregates data from multiple sources, to learn about working with aggregated APIs refer to the Working with Aggregation guide in the Knowledge Hub.

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


Methods

Retrieve Tasks for a Patient

GET /fhir/4.0/Task/

This method returns all Tasks for the patient identified by patient.identifier or patient. Optionally additional filtering can be added.

Known Issues: Tasks that have multiple different Patient references (Task.requester, Task.owner and Task.restriction.recipient which can be a Patient reference), cannot be retrieved due to privacy.


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.

Note:

  • You must either define the patient.identifier or patient, not both.
  • In addition to having the required patient.identifier or patient, you can defined chained patient elements to define filters on the reference, each of the chained parameters can specify multiple comma separated values.

Sample format of the query is

  • patient.identifier={namespace}|{identifier}
  • patient.identifier={namespace}|{identifier} & patient.gender=male & patient.birthdate=2002-05-01


Sample Value: ORION|AAA-00315-7



Name:

patient

required

Type:

query

Data Type:

string

Description:

The patient resource id.

Note:

  • You must either define the patient.identifier or patient, not both.
  • In addition to having the required patient.identifier or patient, you can defined chained patient elements to define filters on the reference, each of the chained parameters can specify multiple comma separated values.

    Sample format of the query is

    • patient={patient FHIRID}
    • patient={patient FHIRID} & patient.gender=male & patient.birthdate=2002-05-01


Sample Value: MZSDCOBYMM3GGQCPJBBVA



Name:

authored-on

optional

Type:

query

Data Type:

array

Description:

Filters Tasks to those with an authored on date on, before, or after a specific date, date-time, or date range. 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.

The format of the query is

  • authored-on=gt{dateTimeValue}
  • authored-on=ge{dateTimeValue}&authored-on=le{dateTimeValue}


Sample Value: ge2012-01-01T01:00:00+13:00



Name:

based-on

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the request it fulfills, identified by their Task.basedOn reference.

Note: based-on can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: ServiceRequest/shaO74NZR7CTOEKDLODIFSODJS4DLRWBEJ6XIO4PGOGJDCTSMCWVNSQ



Name:

business-status

optional

Type:

query

Data Type:

array

Description:

Filters Tasks to those that match the specified business status of the Task, identified by Task.businessStatus.

Note: The business-status can be a single item or a comma separated list of roles. Each business-status is defined by system and value , separated using a URL encoded | character i.e. %7c.


Sample Value: http://loinc.org|58410-2



Name:

code

optional

Type:

query

Data Type:

array

Description:

Filters Tasks to those that match the specified code of the Task, identified by Task.Code.

Note: The code can be a single item or a comma separated list of codes. Each code is defined by system and value , separated using a URL encoded | character i.e. %7c.


Sample Value: http://hl7.org/fhir/CodeSystem/task-code|change,http://hl7.org/fhir/CodeSystem/task-code|abort



Name:

encounter

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the referenced encounter, identified by their Task.encounter reference.

Note: encounter can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: encounter.identifier=SYS_A|visti123



Name:

focus

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the referenced focus, identified by their Task.focus reference.

Note: focus can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: ServiceRequest/shaO74NZR7CTOEKDLODIFSODJS4DLRWBEJ6XIO4PGOGJDCTSMCWVNSQ



Name:

identifier

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the identifier associated with this Task.

Note: The identifier can be a single item or a comma separated list of identifiers. Each identifier is defined by system and value, separated using a URL encoded | character i.e. %7c.


Sample Value: urn:oid:1.3.4.5.6.7|2345234234234,urn:text:sysA|2345



Name:

group-identifier

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the group-identifier associated with this Task.

Note: The group-identifier can be a single item or a comma separated list of group-identifiers. Each group-identifier is defined by system and value, separated using a URL encoded | character i.e. %7c.


Sample Value: urn:oid:1.3.4.5.6.7|2345234234234,urn:text:sysA|2345



Name:

intent

optional

Type:

query

Data Type:

array

Description:

Filters the Tasks by the Task intent. The intent may consist of a coding system and a code separated using a URL encoded | character i.e. %7c.

The supported values are:

  • unknown
  • proposal
  • plan
  • order
  • original-order
  • reflex-order
  • filler-order
  • instance-order
  • option

Note:

  • If an intent system is specified only http://hl7.org/fhir/task-intent can be used.
  • Supports passing in a comma-separated list of values.


Sample Value: order



Name:

modified

optional

Type:

query

Data Type:

array

Description:

Filters the Tasks to those with a last modified date on, before, or after a specific date, date-time, or date range. 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.

The format of the query is

  • modified=gt{dateTimeValue}
  • modified=ge{dateTimeValue}&modified=le{dateTimeValue}


Sample Value: ge2012-01-01T01:00:00+13:00



Name:

owner

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the matching owner that is responsible for the Task, identified by their Task.owner reference.

Note: owner can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: owner:Practitioner.family=Smith&owner:Practitioner.given=Bob,Robert



Name:

part-of

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the Task the specified Task is part of, identified by their Task.partOf reference.

Note: part-of can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: Task/shaO74NZR7CTOEKDLODIFSODJS4DLRWBEJ6XIO4PGOGJDCTSMCWVNYZ



Name:

performer

optional

Type:

query

Data Type:

array

Description:

Filters Tasks to those with the specified recommended performer type, identified by Task.performerType.

Note: The performer can be a single item or a comma separated list of performers. Each performer is defined by system and value , separated using a URL encoded | character i.e. %7c.


Sample Value: http://snomed.info/sct|1421009



Name:

period

optional

Type:

query

Data Type:

array

Description:

Filters the Tasks by the execution period, which is the period of time the Task is/was underway, compared to a date on, before, or after a specific date, date-time, or date range. The supported prefixes are gt, ge, lt, le and eq. 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.

The format of the query is

  • period=gt{dateTimeValue}
  • period=ge{dateTimeValue}&period=le{dateTimeValue}


Sample Value: gt2019-01-01



Name:

priority

optional

Type:

query

Data Type:

array

Description:

Filters the Tasks by the Task priority. The priority may consist of a coding system and a code separated using a URL encoded | character i.e. %7c.

The supported values are:

  • routine
  • urgent
  • asap
  • stat

Note:

  • If a priority system is specified only http://hl7.org/fhir/request-priority can be used.
  • Supports passing in a comma-separated list of values.


Sample Value: routine



Name:

requester

optional

Type:

query

Data Type:

array

Description:

Filters Tasks by the requester of the Task, identified by their Task.requester reference.

Note: requester can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: requester:Practitioner.family=Smith&requester:Practitioner.given=Bob,Robert



Name:

status

optional

Type:

query

Data Type:

array

Description:

Filters the Tasks by the Task status. The status may consist of a coding system and a code separated using a URL encoded | character i.e. %7c.

The supported values are:

  • draft
  • requested
  • received
  • accepted
  • rejected
  • ready
  • cancelled
  • in-progress
  • on-hold
  • failed
  • completed
  • entered-in-error

Note:

  • If a status system is specified only http://hl7.org/fhir/task-status can be used.
  • Supports passing in a comma-separated list of values.


Sample Value: http%3A%2F%2Fhl7.org%2Ffhir%2FValueSet%2Ftask-status%7Cdraft



Name:

-include-sources

optional

Type:

query

Data Type:

array

Description:

The -include-sources parameter defines which sources should be queried for the results.

Note: Either -include-sources or -exclude-sources parameter can be specified, not both. If -include-sources is specified, ONLY the specified sources will be searched. Note that the sources specified should be enabled.


Sample Value: Orion%20Health%E2%84%A2%20R4%20HL7V2%20CDR%20Tasks



Name:

-exclude-sources

optional

Type:

query

Data Type:

array

Description:

The -exclude-sources parameter defines which sources should NOT be queried for the results.

Note: Either -include-sources or -exclude-sources parameter can be specified, not both. If -exclude-sources is specified, the specified sources will NOT be searched. Note that the sources specified should be enabled.


Sample Value: Orion%20Health%E2%84%A2%20R4%20HL7V2%20CDR%20Tasks



Name:

_summary

optional

Type:

query

Data Type:

string

Description:

Instructs the server to return a subset of the resource, reducing the size of the reponse payload. Possible values are

  • true: return summaries only
  • false: return full resources
  • count: return the count of search matches
  • text: return only the text, id, meta, and top-level mandatory elements
  • data: remove the text element


Sample Value: true



Name:

_lastUpdated

optional

Type:

query

Data Type:

array

Description:

Filters based on when the resource version was last changed, before, or after a specific date, date-time, or date range. The supported prefixes are gt, ge, lt, le and eq. 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.

The format of the query is

  • _lastUpdated=gt{dateTimeValue}
  • _lastUpdated=ge{dateTimeValue}&_lastUpdated=le{dateTimeValue}


Sample Value: ge2012-01-01T01:00:00+13:00



Name:

_elements

optional

Type:

query

Data Type:

array

Description:

Request a specific set of elements be returned, or excluded as part of a resource in the search results. Use _elements for the elements to include and _elements:exclude for the elements to exclude.


Sample Value: _elements=code,intent,status,_elements:exclude=*.extension,*.encounter



Name:

-cursor

optional

Type:

query

Data Type:

string

Description:

A server internal parameter to navigate different pages.

This parameter is returned by the server as part of the Bundle 'next' link of a paginated query. And is used to retrieve the next page




Name:

_count

optional

Type:

query

Data Type:

integer

Description:

Limit the number of match results to the specified _count. When _count is specified, the query will be paginated, and only _count or less results will be returned.

The returned bundle may contain a next link if more results could be available.


Sample Value: 30



Name:

_sort

optional

Type:

query

Data Type:

array

Description:

Request which order results should be returned in.

Supported _sort parameters are:

  • authored-on to sort by Task.authoredOn ascending
  • -authored-on to sort by Task.authoredOn descending
  • period to sort by Task.executionPeriod.start ascending
  • -period to sort by Task.executionPeriod.start descending
  • modified to sort by Task.lastModified ascending
  • -modified to sort by Task.lastModified descending
  • priority to sort by Task.priority ascending
  • -priority to sort by Task.priority descending
  • _lastUpdated to sort by Task.Meta.lastUpdated ascending
  • -_lastUpdatedto sort by Task.Meta.lastUpdated descending

You can use any combination of the parameters


Default Value: -priority,-period

Sample Value: _sort=-priority,_sort=-priority,-_lastUpdated



Name:

_format

optional

Type:

query

Data Type:

string

Description:

Media type of the response. It takes precedence over the Accept header. Possible values are json and xml.


Default Value: json

Sample Value: json



Name:

_pretty

optional

Type:

query

Data Type:

string

Description:

Ask for a pretty printed response for human convenience.


Default Value: true

Sample Value: true



Name:

X-Request-Id

optional

Type:

header

Data Type:

string

Description:

Supply a request Id to track the request.


Sample Value: adUEctf6urd



Name:

Accept

optional

Type:

header

Data Type:

string

Description:

Media type of the response. Possible values are application/json and application/xml. If both _format and Accept are specified, _format takes precedence.


Default Value: application/json

Sample Value: application/json



Name:

Accept-Language

optional

Type:

header

Data Type:

string

Description:

Specifies the language that the results will be translated to. If not specified it will default to the server's locale. (e.g. fr-FR for french)


Sample Value: en-US



Name:

CSRF-Token

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. The csrfToken from the OHP session must be included in this header.

System will validate the token and reject the request if the token is invalid or not present.

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.




Name:

X-Send-Open-API

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. This header is required to distinguish the api requests from known senders.

System will validate "X-Send-Open-API" request header is present or not. If it is not present, system will reject the request

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.



Responses


application/json+fhir

200

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


application/json+fhir

400

This response code is returned when the query is invalid e.g. an invalid parameter or a partial token in the search.

Sample Requests

Retrieve Tasks for a Patient identified by a patient resource id
curl -X GET "https://developer-solution/fhir/4.0/Task?patient=MZSDCOBYMM3GGQCPJBBVA&period=gt2019-01-01&status=http%3A%2F%2Fhl7.org%2Ffhir%2FValueSet%2Ftask-status%7Cdraft" \
-H 'Accept: application/json' \
-H 'Authorization: Basic bGV2ZWwxLnN5c19hOk9yaW9uc3k1IT8='

Retrieve Tasks for a Patient

POST /fhir/4.0/Task/_search

This method returns all Tasks for the patient identified by patient.identifier or patient. Optionally additional filtering can be added. This is the secure alternative to the GET search.

Known Issues: Tasks that have multiple different Patient references (Task.requester, Task.owner and Task.restriction.recipient which can be a Patient reference), cannot be retrieved due to privacy.


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.

Note:

  • You must either define the patient.identifier or patient, not both.
  • In addition to having the required patient.identifier or patient, you can defined chained patient elements to define filters on the reference, each of the chained parameters can specify multiple comma separated values.

Sample format of the query is

  • patient.identifier={namespace}|{identifier}
  • patient.identifier={namespace}|{identifier} & patient.gender=male & patient.birthdate=2002-05-01


Sample Value: ORION|AAA-00315-7



Name:

patient

required

Type:

formData

Data Type:

string

Description:

The patient resource id.

Note:

  • You must either define the patient.identifier or patient, not both.
  • In addition to having the required patient.identifier or patient, you can defined chained patient elements to define filters on the reference, each of the chained parameters can specify multiple comma separated values.

    Sample format of the query is

    • patient={patient FHIRID}
    • patient={patient FHIRID} & patient.gender=male & patient.birthdate=2002-05-01


Sample Value: MZSDCOBYMM3GGQCPJBBVA



Name:

authored-on

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks to those with an authored on date on, before, or after a specific date, date-time, or date range. 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.

The format of the query is

  • authored-on=gt{dateTimeValue}
  • authored-on=ge{dateTimeValue}&authored-on=le{dateTimeValue}


Sample Value: ge2012-01-01T01:00:00+13:00



Name:

based-on

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the request it fulfills, identified by their Task.basedOn reference.

Note: based-on can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: ServiceRequest/shaO74NZR7CTOEKDLODIFSODJS4DLRWBEJ6XIO4PGOGJDCTSMCWVNSQ



Name:

business-status

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks to those that match the specified business status of the Task, identified by Task.businessStatus.

Note: The business-status can be a single item or a comma separated list of roles. Each business-status is defined by system and value , separated using a URL encoded | character i.e. %7c.


Sample Value: http://loinc.org|58410-2



Name:

code

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks to those that match the specified code of the Task, identified by Task.Code.

Note: The code can be a single item or a comma separated list of codes. Each code is defined by system and value , separated using a URL encoded | character i.e. %7c.


Sample Value: http://hl7.org/fhir/CodeSystem/task-code|change,http://hl7.org/fhir/CodeSystem/task-code|abort



Name:

encounter

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the referenced encounter, identified by their Task.encounter reference.

Note: encounter can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: encounter.identifier=SYS_A|visti123



Name:

focus

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the referenced focus, identified by their Task.focus reference.

Note: focus can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: ServiceRequest/shaO74NZR7CTOEKDLODIFSODJS4DLRWBEJ6XIO4PGOGJDCTSMCWVNSQ



Name:

identifier

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the identifier associated with this Task.

Note: The identifier can be a single item or a comma separated list of identifiers. Each identifier is defined by system and value, separated using a URL encoded | character i.e. %7c.


Sample Value: urn:oid:1.3.4.5.6.7|2345234234234,urn:text:sysA|2345



Name:

group-identifier

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the group-identifier associated with this Task.

Note: The group-identifier can be a single item or a comma separated list of group-identifiers. Each group-identifier is defined by system and value, separated using a URL encoded | character i.e. %7c.


Sample Value: urn:oid:1.3.4.5.6.7|2345234234234,urn:text:sysA|2345



Name:

intent

optional

Type:

formData

Data Type:

array

Description:

Filters the Tasks by the Task intent. The intent may consist of a coding system and a code separated using a URL encoded | character i.e. %7c.

The supported values are:

  • unknown
  • proposal
  • plan
  • order
  • original-order
  • reflex-order
  • filler-order
  • instance-order
  • option

Note:

  • If an intent system is specified only http://hl7.org/fhir/task-intent can be used.
  • Supports passing in a comma-separated list of values.


Sample Value: order



Name:

modified

optional

Type:

formData

Data Type:

array

Description:

Filters the Tasks to those with a last modified date on, before, or after a specific date, date-time, or date range. 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.

The format of the query is

  • modified=gt{dateTimeValue}
  • modified=ge{dateTimeValue}&modified=le{dateTimeValue}


Sample Value: ge2012-01-01T01:00:00+13:00



Name:

owner

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the matching owner that is responsible for the Task, identified by their Task.owner reference.

Note: owner can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: owner:Practitioner.family=Smith&owner:Practitioner.given=Bob,Robert



Name:

part-of

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the Task the specified Task is part of, identified by their Task.partOf reference.

Note: part-of can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: Task/shaO74NZR7CTOEKDLODIFSODJS4DLRWBEJ6XIO4PGOGJDCTSMCWVNYZ



Name:

performer

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks to those with the specified recommended performer type, identified by Task.performerType.

Note: The performer can be a single item or a comma separated list of performers. Each performer is defined by system and value , separated using a URL encoded | character i.e. %7c.


Sample Value: http://snomed.info/sct|1421009



Name:

period

optional

Type:

formData

Data Type:

array

Description:

Filters the Tasks by the execution period, which is the period of time the Task is/was underway, compared to a date on, before, or after a specific date, date-time, or date range. The supported prefixes are gt, ge, lt, le and eq. 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.

The format of the query is

  • period=gt{dateTimeValue}
  • period=ge{dateTimeValue}&period=le{dateTimeValue}


Sample Value: gt2019-01-01



Name:

priority

optional

Type:

formData

Data Type:

array

Description:

Filters the Tasks by the Task priority. The priority may consist of a coding system and a code separated using a URL encoded | character i.e. %7c.

The supported values are:

  • routine
  • urgent
  • asap
  • stat

Note:

  • If a priority system is specified only http://hl7.org/fhir/request-priority can be used.
  • Supports passing in a comma-separated list of values.


Sample Value: routine



Name:

requester

optional

Type:

formData

Data Type:

array

Description:

Filters Tasks by the requester of the Task, identified by their Task.requester reference.

Note: requester can be chained to define filters on the reference, each of the chained parameters can specify multiple comma separated values.


Sample Value: requester:Practitioner.family=Smith&requester:Practitioner.given=Bob,Robert



Name:

status

optional

Type:

formData

Data Type:

array

Description:

Filters the Tasks by the Task status. The status may consist of a coding system and a code separated using a URL encoded | character i.e. %7c.

The supported values are:

  • draft
  • requested
  • received
  • accepted
  • rejected
  • ready
  • cancelled
  • in-progress
  • on-hold
  • failed
  • completed
  • entered-in-error

Note:

  • If a status system is specified only http://hl7.org/fhir/task-status can be used.
  • Supports passing in a comma-separated list of values.


Sample Value: draft



Name:

-include-sources

optional

Type:

formData

Data Type:

array

Description:

The -include-sources parameter defines which sources should be queried for the results.

Note: Either -include-sources or -exclude-sources parameter can be specified, not both. If -include-sources is specified, ONLY the specified sources will be searched. Note that the sources specified should be enabled.


Sample Value: Orion%20Health%E2%84%A2%20R4%20HL7V2%20CDR%20Tasks



Name:

-exclude-sources

optional

Type:

formData

Data Type:

array

Description:

The -exclude-sources parameter defines which sources should NOT be queried for the results.

Note: Either -include-sources or -exclude-sources parameter can be specified, not both. If -exclude-sources is specified, the specified sources will NOT be searched. Note that the sources specified should be enabled.


Sample Value: Orion%20Health%E2%84%A2%20R4%20HL7V2%20CDR%20Tasks



Name:

_summary

optional

Type:

formData

Data Type:

string

Description:

Instructs the server to return a subset of the resource, reducing the size of the reponse payload. Possible values are

  • true: return summaries only
  • false: return full resources
  • count: return the count of search matches
  • text: return only the text, id, meta, and top-level mandatory elements
  • data: remove the text element


Sample Value: true



Name:

_lastUpdated

optional

Type:

formData

Data Type:

array

Description:

Filters based on when the resource version was last changed, before, or after a specific date, date-time, or date range. The supported prefixes are gt, ge, lt, le and eq. 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.

The format of the query is

  • _lastUpdated=gt{dateTimeValue}
  • _lastUpdated=ge{dateTimeValue}&_lastUpdated=le{dateTimeValue}


Sample Value: ge2012-01-01T01:00:00+13:00



Name:

_elements

optional

Type:

formData

Data Type:

array

Description:

Request a specific set of elements be returned, or excluded as part of a resource in the search results. Use _elements for the elements to include and _elements:exclude for the elements to exclude.


Sample Value: _elements=code,intent,status,_elements:exclude=*.extension,*.encounter



Name:

-cursor

optional

Type:

formData

Data Type:

string

Description:

A server internal parameter to navigate different pages.

This parameter is returned by the server as part of the Bundle 'next' link of a paginated query. And is used to retrieve the next page




Name:

_count

optional

Type:

formData

Data Type:

integer

Description:

Limit the number of match results to the specified _count. When _count is specified, the query will be paginated, and only _count or less results will be returned.

The returned bundle may contain a next link if more results could be available.


Sample Value: 30



Name:

_sort

optional

Type:

formData

Data Type:

array

Description:

Request which order results should be returned in.

Supported _sort parameters are:

  • authored-on to sort by Task.authoredOn ascending
  • -authored-on to sort by Task.authoredOn descending
  • period to sort by Task.executionPeriod.start ascending
  • -period to sort by Task.executionPeriod.start descending
  • modified to sort by Task.lastModified ascending
  • -modified to sort by Task.lastModified descending
  • priority to sort by Task.priority ascending
  • -priority to sort by Task.priority descending
  • _lastUpdated to sort by Task.Meta.lastUpdated ascending
  • -_lastUpdatedto sort by Task.Meta.lastUpdated descending

You can use any combination of the parameters


Default Value: -priority,-period

Sample Value: _sort=-priority,_sort=-priority,-_lastUpdated



Name:

_format

optional

Type:

formData

Data Type:

string

Description:

Media type of the response. It takes precedence over the Accept header. Possible values are json and xml.


Default Value: json

Sample Value: json



Name:

_pretty

optional

Type:

formData

Data Type:

string

Description:

Ask for a pretty printed response for human convenience.


Default Value: true

Sample Value: true



Name:

X-Request-Id

optional

Type:

header

Data Type:

string

Description:

Supply a request Id to track the request.


Sample Value: adUEctf6urd



Name:

Accept

optional

Type:

header

Data Type:

string

Description:

Media type of the response. Possible values are application/json and application/xml. If both _format and Accept are specified, _format takes precedence.


Default Value: application/json

Sample Value: application/json



Name:

Accept-Language

optional

Type:

header

Data Type:

string

Description:

Specifies the language that the results will be translated to. If not specified it will default to the server's locale. (e.g. fr-FR for french)


Sample Value: en-US



Name:

CSRF-Token

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. The csrfToken from the OHP session must be included in this header.

System will validate the token and reject the request if the token is invalid or not present.

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.




Name:

X-Send-Open-API

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. This header is required to distinguish the api requests from known senders.

System will validate "X-Send-Open-API" request header is present or not. If it is not present, system will reject the request

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.



Responses


application/json+fhir

200

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


application/json+fhir

400

This response code is returned when the query is invalid e.g. an invalid parameter or a partial token in the search.

Sample Requests

Retrieve Tasks for a Patient identified by a patient resource id
curl -X POST "https://developer-solution/fhir/4.0/Task/_search" \
-H 'Accept: application/json' \
-H 'Authorization: Basic bGV2ZWwxLnN5c19hOk9yaW9uc3k1IT8=' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'patient=MZSDCOBYMM3GGQCPJBBVA' \
-d 'period=gt2019-01-01' \
-d 'status=draft'

Retrieve a single Task

GET /fhir/4.0/Task/{id}

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

Known Issues: Tasks that have multiple different Patient references (Task.requester, Task.owner and Task.restriction.recipient which can be a Patient reference), cannot be retrieved due to privacy.


Parameters

Name

Type

Data Type

Description


Name:

id

required

Type:

path

Data Type:

string

Description:

The id of the Task resource


Sample Value: shaEJU6MFR5AYVC7YM72YGHKHHM4UZUFSS5LFANIO75SMQQPFWYPNQA



Name:

Accept-Language

optional

Type:

header

Data Type:

string

Description:

The language that the results will be translated to. If not specified it will default to the server's locale. (e.g. fr-FR for french)


Sample Value: en-US



Name:

X-Request-Id

optional

Type:

header

Data Type:

string

Description:

Supply a request Id to track the request.


Sample Value: adUEctf6urd



Name:

_elements

optional

Type:

query

Data Type:

array

Description:

Request a specific set of elements be returned, or excluded as part of a resource in the search results. Use _elements for the elements to include and _elements:exclude for the elements to exclude.


Sample Value: _elements=code,intent,status,_elements:exclude=*.extension,*.encounter



Name:

_format

optional

Type:

query

Data Type:

string

Description:

Media type of the response. It takes precedence over the Accept header. Possible values are json and xml.


Default Value: json

Sample Value: json



Name:

_pretty

optional

Type:

query

Data Type:

string

Description:

Ask for a pretty printed response for human convenience.


Default Value: true

Sample Value: true



Name:

Accept

optional

Type:

header

Data Type:

string

Description:

Media type of the response. Possible values are application/json and application/xml. If both _format and Accept are specified, _format takes precedence.


Default Value: application/json

Sample Value: application/json



Name:

CSRF-Token

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. The csrfToken from the OHP session must be included in this header.

System will validate the token and reject the request if the token is invalid or not present.

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.




Name:

X-Send-Open-API

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. This header is required to distinguish the api requests from known senders.

System will validate "X-Send-Open-API" request header is present or not. If it is not present, system will reject the request

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.



Responses


application/json+fhir

200

Returns a Task resource matching the the requested resource ID and version id.


application/json+fhir

400

This code is returned when the FHIR ID is empty or not valid.


application/json+fhir

404

No Task resource found with the requested resource ID.

Sample Requests

Retrieve Tasks identified by a resource id
curl -X GET "https://developer-solution/fhir/4.0/Task/shaEJU6MFR5AYVC7YM72YGHKHHM4UZUFSS5LFANIO75SMQQPFWYPNQA" \
-H 'Accept: application/json' \
-H 'Authorization: Basic bGV2ZWwxLnN5c19hOk9yaW9uc3k1IT8='

Retrieve a Task's history

GET /fhir/4.0/Task/{id}/_history

This method returns the change history for a Task resource matching the requested resource ID. Task resources can be retrieved from multiple data sources, and not all sources are able to return history information. This operation will return an empty set of data if no versions of the specified Task can be found, which includes cases where:

  • The specified Task resource cannot be found.
  • The data source for the Task is unable to return history information.

Known Issues: Tasks that have multiple different Patient references (Task.requester, Task.owner and Task.restriction.recipient which can be a Patient reference), cannot be retrieved due to privacy.


Parameters

Name

Type

Data Type

Description


Name:

id

required

Type:

path

Data Type:

string

Description:

The id of the Task resource


Sample Value: shaEJU6MFR5AYVC7YM72YGHKHHM4UZUFSS5LFANIO75SMQQPFWYPNQA



Name:

Accept-Language

optional

Type:

header

Data Type:

string

Description:

Specifies the language that the results will be translated to. If not specified it will default to the server's locale. (e.g. fr-FR for french)


Sample Value: en-US



Name:

X-Request-Id

optional

Type:

header

Data Type:

string

Description:

Supply a request Id to track the request.


Sample Value: adUEctf6urd



Name:

_elements

optional

Type:

query

Data Type:

array

Description:

Request a specific set of elements be returned, or excluded as part of a resource in the search results. Use _elements for the elements to include and _elements:exclude for the elements to exclude.


Sample Value: _elements=code,intent,status,_elements:exclude=*.extension,*.encounter



Name:

_format

optional

Type:

query

Data Type:

string

Description:

Media type of the response. It takes precedence over the Accept header. Possible values are json and xml.


Default Value: json

Sample Value: json



Name:

_pretty

optional

Type:

query

Data Type:

string

Description:

Ask for a pretty printed response for human convenience.


Default Value: true

Sample Value: true



Name:

Accept

optional

Type:

header

Data Type:

string

Description:

Media type of the response. Possible values are application/json and application/xml. If both _format and Accept are specified, _format takes precedence.


Default Value: application/json

Sample Value: application/json



Name:

CSRF-Token

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. The csrfToken from the OHP session must be included in this header.

System will validate the token and reject the request if the token is invalid or not present.

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.




Name:

X-Send-Open-API

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. This header is required to distinguish the api requests from known senders.

System will validate "X-Send-Open-API" request header is present or not. If it is not present, system will reject the request

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.



Responses


application/json+fhir

200

A FHIR Bundle containing 1..* Task resources matching the requested resource ID.


application/json+fhir

400

  • The source providing the Task resource is not capable of returning history of Task resources.


application/json+fhir

404

  • No Task resource found with the requested resource ID.

Sample Requests

Retrieve the history of Tasks identified by a resource id
curl -X GET "https://developer-solution/fhir/4.0/Task/shaEJU6MFR5AYVC7YM72YGHKHHM4UZUFSS5LFANIO75SMQQPFWYPNQA/_history" \
-H 'Accept: application/json' \
-H 'Authorization: Basic bGV2ZWwxLnN5c19hOk9yaW9uc3k1IT8='

Retrieve a specific version of a Task

GET /fhir/4.0/Task/{id}/_history/{versionid}

This method returns the specified version of a Task resource matching the requested resource ID. Task resources can be retrieved from multiple data sources. This operation will return an empty set of data if no versions of the specified Task can be found, which includes cases where:

  • The specified Task resource cannot be found.

Known Issues: Tasks that have multiple different Patient references (Task.requester, Task.owner and Task.restriction.recipient which can be a Patient reference), cannot be retrieved due to privacy.


Parameters

Name

Type

Data Type

Description


Name:

id

required

Type:

path

Data Type:

string

Description:

The id of the Task resource


Sample Value: shaEJU6MFR5AYVC7YM72YGHKHHM4UZUFSS5LFANIO75SMQQPFWYPNQA



Name:

versionid

required

Type:

path

Data Type:

integer

Description:

The version of the Task resource


Sample Value: 1



Name:

Accept-Language

optional

Type:

header

Data Type:

string

Description:

Specifies the language that the results will be translated to. If not specified it will default to the server's locale. (e.g. fr-FR for french)


Sample Value: en-US



Name:

X-Request-Id

optional

Type:

header

Data Type:

string

Description:

Supply a request Id to track the request.


Sample Value: adUEctf6urd



Name:

_elements

optional

Type:

query

Data Type:

array

Description:

Request a specific set of elements be returned, or excluded as part of a resource in the search results. Use _elements for the elements to include and _elements:exclude for the elements to exclude.


Sample Value: _elements=code,intent,status,_elements:exclude=*.extension,*.encounter



Name:

_format

optional

Type:

query

Data Type:

string

Description:

Media type of the response. It takes precedence over the Accept header. Possible values are json and xml.


Default Value: json

Sample Value: json



Name:

_pretty

optional

Type:

query

Data Type:

string

Description:

Ask for a pretty printed response for human convenience.


Default Value: true

Sample Value: true



Name:

Accept

optional

Type:

header

Data Type:

string

Description:

Media type of the response. Possible values are application/json and application/xml. If both _format and Accept are specified, _format takes precedence.


Default Value: application/json

Sample Value: application/json



Name:

CSRF-Token

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. The csrfToken from the OHP session must be included in this header.

System will validate the token and reject the request if the token is invalid or not present.

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.




Name:

X-Send-Open-API

required

Type:

header

Data Type:

string

Description:

This header is required for CSRF protection. This header is required to distinguish the api requests from known senders.

System will validate "X-Send-Open-API" request header is present or not. If it is not present, system will reject the request

Note: Either CSRF-Token or X-Send-Open-API must be included in headers to do the CSRF protection.



Responses


application/json+fhir

200

Returns a Task resource matching the the requested resource ID and version id.


application/json+fhir

400

  • The source providing the Task resource is not capable of returning history of Task resources.


application/json+fhir

404

  • No Task resource found with the requested resource ID.
  • The version id specified does not exist for the Task resource with the requested resource ID.

Sample Requests

Retrieve the history of Tasks identified by a resource id
curl -X GET "https://developer-solution/fhir/4.0/Task/shaEJU6MFR5AYVC7YM72YGHKHHM4UZUFSS5LFANIO75SMQQPFWYPNQA/_history/1" \
-H 'Accept: application/json' \
-H 'Authorization: Basic bGV2ZWwxLnN5c19hOk9yaW9uc3k1IT8='