Skip to content
This repository has been archived by the owner on May 7, 2024. It is now read-only.

Review and Updates to Communication #1022

Merged
merged 6 commits into from
Dec 15, 2023
Merged
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@ title: Communication | R4 API

## Overview

The Communication resource is a conveyance of information from one entity, a sender, to another entity, a receiver. The information includes encoded data and optionally a related Patient and a related Encounter.
The Communication resource is a conveyance of information from one entity, a sender, to another entity, a receiver. The information includes encoded data and optionally a related [`Patient`] and a related [`Encounter`].

The following fields are returned if valued:

* [Communication Id](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.identifier)
* [ID](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.identifier)
* [In Response To](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.inResponseTo)
* [Status (Completed)](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.status)
* [Status](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.status)
* [Category](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.category)
* [Priority](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.priority)
* [Subject](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.subject)
Expand All @@ -27,6 +27,12 @@ The following fields are returned if valued:
* [Sender](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.sender)
* [Payload](https://hl7.org/FHIR/r4/communication-definitions.html#Communication.payload)

<%= disclaimer %>

### Errors

The common [errors] and [OperationOutcomes] may be returned.

## Terminology Bindings

<%= terminology_table(:communication, :r4) %>
Expand All @@ -39,41 +45,40 @@ All URLs for custom extensions are defined as `https://fhir-ehr.cerner.com/r4/St

ID | Value\[x] Type | Description
---------------|---------------------|----------------------------------------------------------------------------------
`reply-to` | [`Reference`] | Used to direct where replies to the communication should be sent. Must be a Group.
`email-status` | [`CodeableConcept`] | Status of the electronic communication (in-progress, completed, received).
`reply-to` | [`Reference`] | Directs where replies to the communication are sent. Must be a group.
`email-status` | [`CodeableConcept`] | The status of the electronic communication (in-progress, completed, or received).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I forget, have we been listing the required values here or in the notes section?


## Search

Search for communications that meet supplied query parameters:
Search for communications that meet supplied query parameters.

GET /Communication?:parameters

_Implementation Notes_
_Notes_

* The Content of a communication will be returned through the binary resource. A reference to the payload will be provided in the Payload section.
* Only 1000 elements max will be returned based on the date range.
* The content of a communication is returned through the Binary resource. A reference to the payload is provided in the Payload section.
RicardoCrespo-ora marked this conversation as resolved.
Show resolved Hide resolved
* Only a maximum of 1000 elements are returned based on the date range.

### Authorization Types

<%= authorization_types(provider: true, patient: false, system: true) %>

### Parameters

Name | Required? | Type | Description
-------------------|--------------------------------------------------------------------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------
`_id` | This or (`category`, `-email-status`, `recipient` and `received`) | [`token`] | The logical resource id associated with the resource. Example: `489580643.0.-4.prsnl`
`category` | (This, `recipient`, `received` and `-email-status`) or `_id` | [`token`] | A token for a [`CodeableConcept`] that points to the CodeableConcept used for Communication.category. Example: `http://terminology.hl7.org/CodeSystem/communication-category|notification`
`recipient` | (This, `category`, `received` and `-email-status`) or `_id` | [`reference`] | The recipient of the communication. Example: `Practitioner/3456783`
`received` | (This, `category`, `recipient` and `-email-status`) or `_id` | [`date`] | Date range into which the communication falls. Example: `le2017-02-01T10:30:00Z`
`-email-status` | (This, `category`, `recipient` and `received`) or `_id` | [`token`] | The status of the email. Example: `http://hl7.org/fhir/task-status|in-progress`
Name | Required? | Type | Description
-----------------------------------------------------|---------------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------
`_id` | Conditionally | [`token`] | The logical resource ID associated with the resource. This parameter is required if `category`, `-email-status`, `recipient`, and `received` are not used. Example: `489580643.0.-4.prsnl`
`category` | Conditionally | [`token`] | A token for a [`CodeableConcept`] that points to the CodeableConcept used for `Communication.category`. This parameter is required with `recipient`, `received`, and `-email-status` if `_id` is not used. Example: `http://terminology.hl7.org/CodeSystem/communication-category|notification`
`recipient:Group` or `recipient:Practitioner` | Conditionally | [`reference`] | The recipient of the communication. This parameter is required with `category`, `received`, and `-email-status` if `_id` is not used. Example: `3456783`
`received` | Conditionally | [`date`] | The date range that the communication falls within. This parameter is required with `category`, `recipient`, and `-email-status` if `_id` is not used. Example: `ge2017-02-01T10:30:00Z`
`-email-status` | Conditionally | [`token`] | The status of the email. This parameter is required with `category`, `recipient`, and `received` if `_id` is not used. Example: `http://hl7.org/fhir/task-status|in-progress`


Notes:

* The `recipient` parameter must represent a Practitioner or a Group.
* The `received` parameter may be provided:
* once with the `ge` prefix.
* twice with the lower value prefixed by `ge` and the higher value prefixed by `le`.
* Once with the `ge` prefix.
* Twice with the lower value prefixed by `ge` and the higher value prefixed by `le`.
amcginn marked this conversation as resolved.
Show resolved Hide resolved

### Headers

Expand All @@ -89,15 +94,10 @@ _Implementation Notes_

<%= headers status: 200 %>
<%= json(:r4_communication_bundle) %>
<%= disclaimer %>

### Errors

The common [errors] and [OperationOutcomes] may be returned.

## Retrieve by id
## Retrieve by ID

List an individual communication by its id:
List an individual communication by its ID.

GET /Communication/:id

Expand All @@ -119,18 +119,17 @@ List an individual communication by its id:

<%= headers status: 200 %>
<%= json(:r4_communication_entry) %>
<%= disclaimer %>

## Create

Create a new communication.

POST /Communication

_Implementation Notes_
_Notes_

* Only the body fields mentioned below are supported. Unsupported fields will be ignored.
* Modifier fields should not be provided, and will cause the transaction to fail.
* Only the body fields mentioned below are supported. Unsupported fields are ignored.
* Do not provide modifier fields because they cause the transaction to fail.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I prefer condensing this to a single line.

"Only the body fields mentioned below are supported. Unsupported fields are ignored, or can cause errors."


### Authorization Types

Expand Down Expand Up @@ -175,21 +174,15 @@ X-Runtime: 0.022706

The `ETag` response header indicates the current `If-Match` version to use on subsequent updates.

<%= disclaimer %>

### Errors

The common [errors] and [OperationOutcomes] may be returned.

## Patch

Patch an existing communication.

PATCH /Communication/:id

_Implementation Notes_
_Notes_

* This implementation follows the [JSON PATCH](https://tools.ietf.org/html/rfc6902) spec.
* This implementation follows the [JSON PATCH](https://tools.ietf.org/html/rfc6902) specification.
RicardoCrespo-ora marked this conversation as resolved.
Show resolved Hide resolved
* Only operations on the paths listed below are supported.

### Authorization Types
Expand Down Expand Up @@ -234,15 +227,11 @@ X-Runtime: 0.826616

The `ETag` response header indicates the current `If-Match` version to use on subsequent updates.

<%= disclaimer %>

### Errors

The common [errors] and [OperationOutcomes] may be returned.

[`reference`]: https://hl7.org/fhir/R4/search.html#reference
[`token`]: https://hl7.org/fhir/R4/search.html#token
[`date`]: https://hl7.org/fhir/R4/search.html#date
[`CodeableConcept`]: https://hl7.org/fhir/R4/datatypes.html#codeableconcept
[`Patient`]: /millennium/r4/base/individuals/patient/
[`Encounter`]: /millennium/r4/base/management/encounter/
[errors]: ../../../#client-errors
[OperationOutcomes]: ../../../#operation-outcomes
Loading