Health New Zealand Te Whatu Ora Shared Care FHIR API
0.4.2 - release New Zealand flag

Health New Zealand Te Whatu Ora Shared Care FHIR API - Local Development build (v0.4.2) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Remote Patient Monitoring

Remote Patient Monitoring

The Remote Patient Monitoring initiative is an initiative the seeks to deliver care to patients in Remote parts of the country, leveraging a Patient facing App and Consumer Technology to record patient wellbeing, with a clinician being able to monitor and provide advice to these patients from afar using the Provider View.

Remote Patient Monitoring in FHIR

Data Structure

CarePlan Activities CarePlan Context Resources Captured Data CommunicationRequestsubject : Reference to Patient TaskcodeText : string[1..1] "Human-readable label"status : code[1..1] "Task status"authoredOn : dateTime[1..1]basedOn : Reference[0..*] "Reference(CarePlan)"subject : Reference[1..1] "Reference(Patient)"owner : Reference[0..1] "Reference(Patient)"requester : Reference[1..1] "Reference(Practitioner)"code : CodeableConcept[1..1] "Bound to RPMEducationalCSVS (syllabus/unit/module)" ServiceRequestsubject : Reference to Patient Conditionsubject : Reference to Patientperformer : Reference to Practitionercode : CodeableConcept (TBD)category : CodeableConcept (TBD) Encounterperiod_start : datetimeperiod_end : datetimediagnosis_condition_reference : Reference to Conditionstatus : string ("in-progress", "finished", etc.)class_code : CodeableConcept (e.g. VR = virtual)serviceType_code : CodeableConcept (e.g. 554 = Chronic Disease Management)priority_code : CodeableConcept (e.g. R = routine)subject : Reference to Patient (with identifier and display)participant : Reference to Practitioner (identifier + display)reasonCode : CodeableConcept (e.g. patient-initiated encounter)serviceProvider : Reference to Organization (identifier + display) CareTeammeta_versionId : stringmeta_profile[] : stringidentifier_use : stringidentifier_system : stringidentifier_value : stringparticipant_member_identifier_use : stringparticipant_member_identifier_system : stringparticipant_member_identifier_value : stringparticipant_member_display : stringmanagingOrganization_identifier_value : stringmanagingOrganization_identifier_use : stringmanagingOrganization_identifier_system : stringmanagingOrganization_display : stringstatus : string ("active", etc.)name : string ("Remote Monitoring CareTeam")participant_member_type : string ("Practitioner")managingOrganization_type : string ("Organization") Observationsubject : Reference to PatientbasedOn : Reference to CarePlan QuestionnaireResponsesubject : Reference to PatientbasedOn : Reference to CarePlan Consentsubject : Reference to PatientperiodoptionalprovisionData : Reference[] CarePlanmeta_profile : "RPM CarePlan"subject : Reference to Patientcondition : Reference to Conditionactivity : Reference[] Provenance addresses.reference encounter.reference careTeam.reference activity.reference activity.reference activity.reference relevantHistory basedOn basedOn


Patient Onboarding

The Remote Patient Monitoring Flows and Experience for any given Patient are centered around their CarePlan. At the time of a Patients commencement in the RPM programme this CarePlan along with a series of related resources are created.

AdminPractitionerPractitioner ViewShared Care FHIR ServerQueueCommon Messaging ServicePatientAlphero AppEducation Content BucketAdminPractitionerAdminPractitionerPractitioner ViewPractitioner ViewShared Care FHIR ServerShared Care FHIR ServerQueueQueueCommon Messaging ServiceCommon Messaging ServicePatientPatientAlphero AppAlphero AppEducation Content BucketEducation Content BucketPatient OnboardingInital EncounterPOST ConditionPOST EncounterPOST CareTeamPOST TaskPOST ConsentCreate CarePlanSearch Plan DefinitionsApply Plan Definition, with patient, practitioner, and encounterPOST CarePlanPUT Consent, attaching CarePlanAdd Service RequestsSearch Activity DefinitionsApply Action Definition, with patient, practitioner, and CarePlanPOST Service RequestPUT Consent, attaching Service RequestPUT CarePlan, attaching Service RequestPatient Notification via CMSPOST CommunicationRequestHandle incoming Communication RequestPOST CommunicationRequest (via Subscription)Send EmailPOST Communication (inidcating email sent)


Data Gathering

Throughout the period of care, Questionnaires are used to gather clinical insights into the Patients wellbeing and experience, along with feedback surrounding the quality of experience surrounding the Piki Te Ora App.

Observations are generated via a Series of Smart Devices, that interact with the Piki App, that are then posted to the Shared Care API.

Via the use of the $flat-export function, observations of a given nature can be requested in a flat format, suitable for graphing and aggregations.

AdminPractitionerPractitioner ViewShared Care FHIR ServerQueueCommon Messaging ServicePatientAlphero AppEducation Content BucketAdminPractitionerAdminPractitionerPractitioner ViewPractitioner ViewShared Care FHIR ServerShared Care FHIR ServerQueueQueueCommon Messaging ServiceCommon Messaging ServicePatientPatientAlphero AppAlphero AppEducation Content BucketEducation Content BucketRoutine Questionnaire Response CollectionOpens AppFetches relevant QuestionnaireRender QuestionnaireCompletes QuestionnairePOST QuestionnaireResponsePUT Consent


Educational Content

Patients on certain CarePlans may be assigned educational content to engage with.

If a patient is assigned educational content, a series of tasks representing the syllabus, the units that make up the syllabus and the modules that make of the unit are added to the CarePlan as activities.

Practitioner ViewShared Care FHIR ServerPiki te OraPatientEducation Content BucketPractitioner ViewPractitioner ViewShared Care FHIR ServerShared Care FHIR ServerPiki te OraPiki te OraPatientPatientEducation Content BucketEducation Content BucketPatient OnboardingPOST CarePlan and Associated resourcesPOST Top Level Task (Syllabus)POST Unit Level TasksPOST Module Level TasksPUT CarePlan (attaching tasks)Educational Content ConsumptionOpens App, Selects and Consumes ModuleFetches Education ContentRender ContentCompletes ModuleGET Task?code=exampleModuleCode&owner=nhi&profile=rpmEducationalTaskPUT Task (module Task.status=completed)alt[Update Parent Tasks Directly]Client knows all modules/units are completed,so it directly updates the parent Task(s) to completedPUT Unit Task (status=completed)PUT Syllabus Task (status=completed)Complete Feedback QuestionnairePOST QuestionnaireResponse (completed)Provider View RenderingGET CarePlanGET Task?basedOn=CarePlan/example&owner=nhi&profile=rpmEducationalTask


When a patient completes a given module, unit or syllabus, the status of the task is updated to reflect this.

CarePlan: Education Planid = "careplan-education"status = "active"intent = "plan"description = "Care plan defining the patient's educational syllabus"Task: Educational Syllabusid = "task-syllabus"Task: Group 1id = "task-group-1"Task: Module 1.1id = "task-module-1-1"Task: Module 1.2id = "task-module-1-2" activity basedOn activity basedOn activity basedOn activity basedOn partOf partOf partOf