Receiving ADT Notifications

ADT notifications can be received by use of Da Vinci Unsolicited Notifications. This can be set up by CareEvolution as a push to a specified FHIR endpoint.

Types of Messages Supported

CareEvolution currently supports 6 event types. They are:

Event Type Event Code Description
Admit notification-admit Communicates the patient is undergoing the admission process, assigning the patient to a bed.
Discharge notification-discharge Communicates the patient is no longer in the facility.
OutpatientVisit notification-outpatient-visit Communicates the patient is being seen for a non-admission episode of care.
Transfer notification-transfer Communicates a change in the assigned physical location of the patient.
CareTeamChange notification-care-team-change Communicates a change in people, teams, or organizations associated with the coordination and delivery of care of the patient.

FHIR Notification Payload

The FHIR notification payload is a Bundle resource which contains the following resources:

Resource Cardinality
MessageHeader 1..1
Encounter 1..1
Patient 1..1
Location 0..N
Practitioner 0..N
Condition 0..N

Message Header Elements

See FHIR documentation for complete listing. The key elements in the HIEBus implementation are:

Name Cardinality Type Description
eventCoding 1..1 Coding Event type and description of the message.
sender 1..1 string Display name of the sending organization.
source 1..1   Information about the source including name, software, version, contact info, and endpoint.
focus 1..1 Reference(Encounter) Reference to the Encounter which prompted the notification; the full resource is also included in the Bundle.

Note that cardinality above is specifically for the HIEBus implementation.

For example, a MessageHeader for notification-admit:

"resource": {
     "resourceType": "MessageHeader",
     "eventCoding": {
         "system": "http://hl7.org/fhir/us/davinci-alerts/CodeSystem/notification-event",
         "code": "notification-admit",
         "display": "Notification Admit"
     },
     "sender": { "display": "Anthem" },
     "source": {
         "name": "YourHIEBus",
         "software": "HIEBus",
         "version": "28.20.0.0",
         "contact": {
             "system": "email",
             "value": "info@example.com",
             "use": "work"
         },
         "endpoint": "https://example.com"
     },
     "focus": [ { "reference": "Encounter/1" } ]
 }

ADT Notification Profiles

ADT notifications include resources that conform to the following profiles:

The following diagram represents the relationships between supported profiles:

Pre-Requisites and Authentication

In order for CareEvolution to configure an ADT push notification, you will need a FHIR server/endpoint with the following capabilities:

  • Perform POST operation.
  • Receive the relevant FHIR payloads (see above Profiles).
  • Authenticate via SMART on FHIR.

HIEBus supports the SMART backend authorization protocol. The HIEBus FHIR service will provide a signed JWT and get back an access token. It will then use that that token in all subsequent POSTs. During setup and configuration of authentication, CE will provide a signature public key and the corresponding JWKS that will be at https://[YOUR_FHIR_ENDPOINT]/identityserver/.well-known/jwks. Notification recipients will need to provide the following information:

  1. Token Endpoint (aud)
  2. Client ID (iss)
  3. Scopes
  4. Signing Algorithm - RS256 or RS384
  5. Basic Authentication username/password (optional) for the token endpoint

For more information about the SMART backend authorization protocol, see the FHIR Documentation.