Overview
ServiceRequest is a record of a request for a procedure or diagnostic or other service to be planned, proposed, or performed, as distinguished by the ServiceRequest.intent field value, with or on a patient. The procedure will lead to either a Procedure or DiagnosticReport, which in turn may reference one or more Observations, which summarize the performance of the procedures and associated documentation such as observations, images, findings that are relevant to the treatment/management of the subject Example Usage Scenarios: The following are example usage scenarios for the this profile: Query for a specific procedure or test request such as an electrocardiogram (ECG) order or a referral to a support program.Query for a specific service offered to a patient such as a referral to a support program.
Query for category of service request (e.g. all cardiology requests) Each Service Request has next elements:
- a status
- an intent code indicating whether the request is a proposal, plan, or order.
- a code defining what is being requested
- a patient
Profile specific implementation guidance
- The ServiceRequest.category binding Must Support, at a minimum, the US Core ServiceRequest Category Codes. However, this valueset can be treated as extensible, and other category codes can be used instead.
- The ServiceRequest.code valueset is broad to accommodate a wide variety of use cases andSHOULDbe constrained to a subset for a particular use case or domain. (for example, LOINC for laboratory orders.)
- The ServiceRequest resource can communicate the reason or indication for referral or consultation using either a code in ServiceRequest.reasonCode or a reference using ServiceRequest.reasonReference.
- As documented here, when using ServiceRequest.reasonReference, the referenced resources SHOULD be a US Core Profile.
- See the Screening and Assessments guidance page for more information when exchanging Social Determinants of Health (SDOH) Service Requests.
Must support elements, mandatory and optional search parameters
ServiceRequestmust support these elements:statusintentcategorycategory:us-core
codesubjectoccurrence[x]authoredOnrequester
_id search parameter:
GET [base url]/ServiceRequest/[id] or GET [base url]/ServiceRequest?_id=[id]
SHALL support searching for all ServiceRequest for a patient using the patient search parameter:
GET [base url]/ServiceRequest?patient={Type/}[id]
SHALL support searching using the combination of the patient and category search parameters:
GET [base url]/ServiceRequest?patient={Type/}[id]&category={system|}[code]
SHALL support searching using the combination of the patient and code search parameters:
- including optional support for OR search on code
GET [base url]/ServiceRequest?patient={Type/}[id]&code={system|}[code]
patient and category and authored search parameters:
- including support for these authored comparators: gt,lt,ge,le
- including optional support for AND search on authored
GET [base url]/ServiceRequest?patient={Type/}[id]&category={system|}[code]&authored=[date]
patient and status search parameters:
- including support for OR search on status
GET [base]/ServiceRequest?patient={Type/}[id]&status={system|}[code]{,{system|}[code],...}
patient and code and authored search parameters:
- iincluding optional support for OR search on code
- including support for these authored comparators: gt,lt,ge,le
- including optional support for AND search on authored
GET [base]/ServiceRequest?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}&authored={gt|lt|ge|le}[date]{&authored={gt|lt|ge|le}[date]&...}
ServiceRequest By Patient Id
Search for ServiceRequest by patient. METHOD GET| Header | Type | Required/Optional | Value |
|---|---|---|---|
| Authorization | string | required | Bearer <token> |
| Code | Description | Comment |
|---|---|---|
| 200 | OK | The request was processed successfully |
| 400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
| 401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
| 404 | No route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
| 500 | Internal Server Error | The server has encountered a situation it doesn’t know how to handle |
ServiceRequest By Id
Get ServiceRequest by ID. METHOD GET| Header | Type | Required/Optional | Value |
|---|---|---|---|
| Authorization | string | required | Bearer <token> |
| Code | Description | Comment |
|---|---|---|
| 200 | OK | The request was processed successfully |
| 400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
| 401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
| 404 | No route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
| 500 | Internal Server Error | The server has encountered a situation it doesn’t know how to handle |
_id search parameter.
ServiceRequest by patient and category
Get ServiceRequests for the specified patient and category METHOD GET| Header | Type | Required/Optional | Value |
|---|---|---|---|
| Authorization | string | required | Bearer <token> |
| Code | Description | Comment |
|---|---|---|
| 200 | OK | The request was processed successfully |
| 400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
| 401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
| 404 | No route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
| 500 | Internal Server Error | The server has encountered a situation it doesn’t know how to handle |
ServiceRequest by patient and code
Get ServiceRequests for the specified patient and service code METHOD GET| Header | Type | Required/Optional | Value |
|---|---|---|---|
| Authorization | string | required | Bearer <token> |
| Code | Description | Comment |
|---|---|---|
| 200 | OK | The request was processed successfully |
| 400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
| 401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
| 404 | No route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
| 500 | Internal Server Error | The server has encountered a situation it doesn’t know how to handle |
ServiceRequest by patient and status
Get ServiceRequest by patient id and request status METHOD GET| Header | Type | Required/Optional | Value |
|---|---|---|---|
| Authorization | string | required | Bearer <token> |
| Code | Description | Comment |
|---|---|---|
| 200 | OK | The request was processed successfully |
| 400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
| 401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
| 404 | No route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
| 500 | Internal Server Error | The server has encountered a situation it doesn’t know how to handle |
ServiceRequest by patient, category, and authored date
Fetches a bundle of all ServiceRequest resources for the specified patient, category, and authored date METHOD GET| Header | Type | Required/Optional | Value |
|---|---|---|---|
| Authorization | string | required | Bearer <token> |
| Code | Description | Comment |
|---|---|---|
| 200 | OK | The request was processed successfully |
| 400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
| 401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
| 404 | No route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
| 500 | Internal Server Error | The server has encountered a situation it doesn’t know how to handle |
ServiceRequest by patient, code and authored date
Get ServiceRequests for the specified patient, code and authored date METHOD GET| Header | Type | Required/Optional | Value |
|---|---|---|---|
| Authorization | string | required | Bearer <token> |
| Code | Description | Comment |
|---|---|---|
| 200 | OK | The request was processed successfully |
| 400 | Bad request | Invalid request parameters or FHIR operation outcome resource returned |
| 401 | Unauthorized | This code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource |
| 404 | No route matched with those values | The request was able to communicate with a given server, but the server could not find what was requested |
| 500 | Internal Server Error | The server has encountered a situation it doesn’t know how to handle |