Difference between revisions of "Appointment Management"

From Hiasobi - FHIR
Jump to: navigation, search
(Available Slots)
Line 13: Line 13:
  
 
==Appointments Requiring Action==
 
==Appointments Requiring Action==
 +
* Practice components search for requested/cancelled appointments from a cloud endpoint
 +
* Search by:
 +
** Appointment.status=pending - are requests that are not confirmed yet (indicates a request)
 +
** Appointement.location.identifier - identifies the practice associated with the appointment request
  
Search for requested/cancelled appointments on the server; include all the participants
+
FHIR API [http://hl7.org/fhir/http.html#search search] request:
  
 
  GET [base]/Appointment?status=pending&location.identifier=<siteid>&_include=Appointment:actor
 
  GET [base]/Appointment?status=pending&location.identifier=<siteid>&_include=Appointment:actor
  
e.g.
+
FHIR API search response:
 
+
http://fhir3.healthintersections.com.au/open/Appointment?status=pending&location.identifier=2E421477117F949B63F565953EE12E6E&_include=Appointment:actor&_format=json
+
 
+
 
+
Server provides a list of appointments that are requested
+
  
 +
* Return a FHIR [http://hl7.org/fhir/bundle.html Bundle]
 +
* Bundle.entry will contain [http://hl7.org/fhir/appointment.html Appointment] resources
 +
* Appointment indicating are request structured like:
 +
 
  Appointment
 
  Appointment
   status = pending
+
   status=pending - indicates appointment needs attention
   start
+
   start - expected visit start date/time
   end
+
   end - expected visit end date/time
   slot - optional reference  
+
   slot - optional reference to a free/busy Slot resource
   participant [0]
+
   participant [0] - participant practitioner
     type = PPRF  
+
     type=PPRF|http://hl7.org/fhir/v3/ParticipationType - coded participation (primary performer is the attending clinician)
     actor is Practitioner  
+
     actor is Practitioner - reference to Practitioner  (FHIR internal identifier)
     required = required
+
     required=required - coded indicates this participation in the appointment is needed
     status = needs-action
+
     status = needs-action - coded indicates the participation is not confirmed
 
   participant [1]
 
   participant [1]
 
     type = null
 
     type = null
     actor is Patient
+
     actor is Patient - reference to Patient (FHIR internal identifier)
     required = required
+
     required = required- coded indicates this participation in the appointment is needed
     status = accepted
+
     status = accepted - coded indicates the participation is not confirmed
 
   participant [2]  
 
   participant [2]  
 
     type = null
 
     type = null
     actor is HealthcareService
+
     actor is Location - reference to Location (FHIR internal identifier)  
      providedBy = (reference to organization)
+
    required = required- coded indicates this participation in the appointment is needed
      serviceCategory = (appointments calendar)
+
    status = needs-action - coded indicates the participation is not confirmed
      required = required
+
      status = needs-action
+
  
 
== Appointment Accept/Reject ==
 
== Appointment Accept/Reject ==

Revision as of 16:32, 13 October 2017

Information

See: Core FHIR Resources Appointment, Schedule, Slot

Todo: Oridashi Profiles for Appointment, Schedule and Slot

Available Slots

  • Schedules (Appointment Book) can be retrieved from FHIR interface (FHIR Schedule)
  • Each FHIR Schedule is for a provider (FHIR Practitioner); there may be multiple sessions per day
  • A FHIR extension defines the nominal slot period length for each Schedule
  • Free/Busy slots are available (FHIR Slot)

Appointments Requiring Action

  • Practice components search for requested/cancelled appointments from a cloud endpoint
  • Search by:
    • Appointment.status=pending - are requests that are not confirmed yet (indicates a request)
    • Appointement.location.identifier - identifies the practice associated with the appointment request

FHIR API search request:

GET [base]/Appointment?status=pending&location.identifier=<siteid>&_include=Appointment:actor

FHIR API search response:

  • Return a FHIR Bundle
  • Bundle.entry will contain Appointment resources
  • Appointment indicating are request structured like:
Appointment
 status=pending - indicates appointment needs attention
 start - expected visit start date/time
 end - expected visit end date/time
 slot - optional reference to a free/busy Slot resource
 participant [0] - participant practitioner
   type=PPRF|http://hl7.org/fhir/v3/ParticipationType - coded participation (primary performer is the attending clinician) 
   actor is Practitioner - reference to Practitioner  (FHIR internal identifier) 
   required=required - coded indicates this participation in the appointment is needed
   status = needs-action - coded indicates the participation is not confirmed
 participant [1]
   type = null
   actor is Patient - reference to Patient (FHIR internal identifier) 
   required = required- coded indicates this participation in the appointment is needed
   status = accepted - coded indicates the participation is not confirmed
 participant [2] 
   type = null
   actor is Location - reference to Location (FHIR internal identifier) 
   required = required- coded indicates this participation in the appointment is needed
   status = needs-action - coded indicates the participation is not confirmed

Appointment Accept/Reject

Clinic will update appointment to accept or reject it

PUT [base]/Appointment/<id>


Structure is like:

Appointment
  participant[0]
    status = accepted | declined
  participant[2]
    status = accepted | declined