Skip to main content

EpisodeOfCare

Overview

The EpisodeOfCare resource provides information about an association between a patient and an organization/healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time. (HL7 FHIR R4 EpisodeOfCare)

Use Cases

  • Managing patient care across multiple encounters
  • Tracking care episodes for specific conditions or treatments
  • Coordinating care between different healthcare providers
  • Supporting care continuity and episode-based billing

Relationships

  • Patient/Group: The patient or group who is the focus of this episode of care
  • Organization: The organization that assumes responsibility for care coordination
  • Condition: Medical conditions being addressed during the episode
  • Encounter: Individual encounters that occur within the episode
  • CareTeam: Healthcare providers involved in the episode
  • ServiceRequest: Originating referral requests

Resource Schema

Key Fields

FieldTypeDescriptionRequired
idstringLogical id of the resourceNo
identifierIdentifier[]Business identifier(s) for this episode of careNo
statuscodeplanned | waitlist | active | onhold | finished | cancelled | entered-in-errorYes
statusHistoryBackboneElement[]Past list of status codesNo
typeCodeableConcept[]Type/class - e.g. specialist referral, disease managementNo
reasonBackboneElement[]The list of medical reasons that are expected to be addressed during the episode of careNo
diagnosisBackboneElement[]The list of medical conditions that were addressed during the episode of careNo
subjectReference(Patient|Group)The patient/group who is the focus of this episode of careYes
managingOrganizationReference(Organization)Organization that assumes careNo
periodPeriodInterval during responsibility is assumedNo
referralRequestReference(ServiceRequest)[]Originating Referral Request(s)No
careManagerReference(Practitioner|PractitionerRole)Care manager/care coordinator for the patientNo
careTeamReference(CareTeam)[]Other practitioners facilitating this episode of careNo
accountReference(Account)[]The set of accounts that may be used for billing for this EpisodeOfCareNo

JSON Example

{
"resourceType": "EpisodeOfCare",
"id": "example",
"text": {
"status": "generated",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n HACC Program for Peter James Chalmers at HL7 Healthcare 15 Sept 2014 - current<br/>\n\t\t\twas on leave from 22 Sept - 24 Sept while in respite care\n </div>"
},
"identifier": [{
"system": "http://example.org/sampleepisodeofcare-identifier",
"value": "123"
}],
"status": "active",
"statusHistory": [{
"status": "planned",
"period": {
"start": "2014-09-01",
"end": "2014-09-14"
}
},
{
"status": "active",
"period": {
"start": "2014-09-15",
"end": "2014-09-21"
}
},
{
"status": "onhold",
"period": {
"start": "2014-09-22",
"end": "2014-09-24"
}
},
{
"status": "active",
"period": {
"start": "2014-09-25"
}
}],
"type": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/episodeofcare-type",
"code": "hacc",
"display": "Home and Community Care"
}]
}],
"diagnosis": [{
"condition": [{
"reference": {
"reference": "Condition/stroke"
}
}],
"use": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/diagnosis-role",
"code": "CC",
"display": "Chief complaint"
}]
}]
}],
"subject": {
"reference": "Patient/example"
},
"managingOrganization": {
"reference": "Organization/hl7"
},
"period": {
"start": "2014-09-01"
},
"referralRequest": [{
"display": "Referral from Example Aged Care Services"
}],
"careManager": {
"reference": "Practitioner/f204",
"display": "Carla Espinosa"
},
"careTeam": [{
"reference": "CareTeam/example",
"display": "example care team"
}],
"account": [{
"reference": "Account/example",
"display": "example account"
}]
}

Operations

The Certified API EpisodeOfCare resource supports the following standard operations. However, support varies by the targeted CareRecord or solution.

CareRecord / SolutionCreateReadUpdateSearch
GEHRIMED-Yes-Yes
myAvatar-Yes-Yes
myEvolv-Yes-Yes
myUnity-Yes-Yes
TheraOffice-Yes-Yes

Read

Retrieve a specific EpisodeOfCare resource by its ID.

Syntax: GET [base]/EpisodeOfCare/[id]

Search for episodes of care using various criteria.

GET Method

Use GET for simple searches with parameters in the query string.

GET /EpisodeOfCare?parameter=value

POST Method

Use POST for complex searches with form-encoded parameters.

POST /EpisodeOfCare/_search
info

Not all Netsmart solutions support EpisodeOfCare search. See supported operations table above and consult your target solution's documentation for more information.

Search Parameters

Patient-based Search:

ParameterTypeRequiredDescriptionExample
patientreferenceYesThe patient who is the focus of this episode of carepatient=value
datedateNoThe provided date search value falls within the episode of care's perioddate=value
identifierreferenceNoBusiness Identifier(s) relevant for this EpisodeOfCareidentifier=value
incoming-referralreferenceNoIncoming Referral Requestincoming-referral=value
organizationreferenceNoThe organization that has assumed the specific responsibilities of this EpisodeOfCareorganization=value
statustokenNoThe current status of the Episode of Care as provided (does not check the status history collection)status=value
typetokenNoType/class - e.g. specialist referral, disease managementtype=value

| _lastUpdated | date | No | Only return resources which were last updated as specified by the given range | _lastUpdated=value | | _revinclude | special | No | Include Provenance resource(s) that reference the matched search results. Allowed: "Provenance:target" | _revinclude=value |

ID-based Search:

ParameterTypeRequiredDescriptionExample
_idstringYesThe ID of the resource_id=value
_lastUpdateddateNoOnly return resources which were last updated as specified by the given range_lastUpdated=value
_revincludespecialNoInclude Provenance resource(s) that reference the matched search results. Allowed: "Provenance:target"_revinclude=value

Examples

Read EpisodeOfCare

Read EpisodeOfCare by ID
curl -X GET https://fhir.netsmartcloud.com/provider/system-access/v2/{tenant-id}/EpisodeOfCare/123 \
-H "Authorization: {Bearer Token}" \
-H "Accept: application/fhir+json"

Search EpisodeOfCare

Search by Patient (POST)

The POST method is recommended as it keeps health information out of the URL.

Search by Patient
curl -X POST https://fhir.netsmartcloud.com/provider/system-access/v2/{tenant-id}/EpisodeOfCare/_search \
-H "Authorization: {Bearer Token}" \
-H "Accept: application/fhir+json" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "patient=Patient/123"

Search by Patient and Status (POST)

Search by Patient and Status
curl -X POST https://fhir.netsmartcloud.com/provider/system-access/v2/{tenant-id}/EpisodeOfCare/_search \
-H "Authorization: {Bearer Token}" \
-H "Accept: application/fhir+json" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "patient=Patient/123" \
-d "status=active"

Search by Patient (GET)

Search by Patient
curl -X GET https://fhir.netsmartcloud.com/provider/system-access/v2/{tenant-id}/EpisodeOfCare?patient=Patient/123 \
-H "Authorization: {Bearer Token}" \
-H "Accept: application/fhir+json"