Difference between revisions of "Scheduling Support"

From Hiasobi - FHIR
Jump to: navigation, search
(Typical Usage)
(Typical Usage)
Line 47: Line 47:
 
* Example response in xml + json format:
 
* Example response in xml + json format:
 
[[slot-response-json]]
 
[[slot-response-json]]
 +
 +
==Appointment Details==
 +
 +
* Create a FHIR Appointment resource instance to submit based on the slot start/end and practitioner info
 +
* 1..1 status : pending (appointment is proposed)
 +
* 1..1 start/ 1..1 end : date-time period for the appointment
 +
* 0..1 description : top line summary text for the appointment
 +
* 0..* participant : entities involved with the appointment
 +
** actor.reference : reference the FHIR id of the entity
 +
** 1..1 Practitioner participant must be provided (by reference); required = required (must attend); status = needs-action (system yet to accept)
 +
 +
 +
<pre>
 +
{
 +
  "resourceType":"Appointment",
 +
  "status":"pending",
 +
  "start":"2018-06-21T09:30:00+10:00",
 +
  "end":"2018-06-21T09:45:00+10:00",
 +
  "description":"Online Appointment",
 +
  "participant":[
 +
      {
 +
        "actor":{
 +
            "reference":"Practitioner/6FA2AA1CA439ABFB38D48297E0ACC3FF.1"
 +
        },
 +
        "required":"required",
 +
        "status":"needs-action"
 +
      },
 +
      {
 +
        "actor":{
 +
            "reference":"Patient/6FA2AA1CA439ABFB38D48297E0ACC3FF.2"
 +
        },
 +
        "required":"required",
 +
        "status":"accepted"
 +
      }
 +
  ],
 +
  "comment":"test notes"
 +
}
 +
</pre>
 +
 +
<pre>POST
 +
 +
 +
[[example-appointment-json]]
  
 
==Typical Usage==
 
==Typical Usage==

Revision as of 11:15, 19 June 2018

Search appointment books as Schedule resource

See: Core FHIR Resources Appointment, Schedule, Slot


REQUEST

Appointment books may be broken in to periods during a single day.

Get 'all' is 6 weeks of all practitioners as Schedule resource:

GET [base]/Schedule

Get all schedules for a practitioner:

GET [base]/Schedule?actor=Practitioner/<practitioner id>

Get all schedules for a location:

GET [base]/Schedule?actor=Location/<location id>

Get all schedules for a practitioner at a location on a date:

GET [base]/Schedule?date=<date>&actor=Practitioner/<practitioner id>&actor=Location/<location id>

Can include Practitioner and Locations details also

&_include=Schedule:actor

RESPONSE

  • Return a FHIR Bundle
  • Bundle.entry will contain Schedule entries
  • Example response in xml and json format:

schedule-response-json

Search available slots as Slot resource

REQUEST

  • LIMITED SUPPORT Get all slots in a given schedule (appointment book)
  • add $_count=10000 if you don't want response bundle paging
GET [base]/Slot?schedule=<schedule.id>

RESPONSE

  • Return a FHIR Bundle
  • Bundle.entry will contain Slot entries
  • Example response in xml + json format:

slot-response-json

Appointment Details

  • Create a FHIR Appointment resource instance to submit based on the slot start/end and practitioner info
  • 1..1 status : pending (appointment is proposed)
  • 1..1 start/ 1..1 end : date-time period for the appointment
  • 0..1 description : top line summary text for the appointment
  • 0..* participant : entities involved with the appointment
    • actor.reference : reference the FHIR id of the entity
    • 1..1 Practitioner participant must be provided (by reference); required = required (must attend); status = needs-action (system yet to accept)


{
   "resourceType":"Appointment",
   "status":"pending",
   "start":"2018-06-21T09:30:00+10:00",
   "end":"2018-06-21T09:45:00+10:00",
   "description":"Online Appointment",
   "participant":[
      {
         "actor":{
            "reference":"Practitioner/6FA2AA1CA439ABFB38D48297E0ACC3FF.1"
         },
         "required":"required",
         "status":"needs-action"
      },
      {
         "actor":{
            "reference":"Patient/6FA2AA1CA439ABFB38D48297E0ACC3FF.2"
         },
         "required":"required",
         "status":"accepted"
      }
   ],
   "comment":"test notes"
}
POST 


[[example-appointment-json]]

==Typical Usage==

Get calendars and include practitioners and locations; then get slots

<pre>GET https://localhost.oridashi.com.au:8102/Schedule?date=2018-06-19&_include=Schedule:actor


Get slots from all schedules e.g. slots for each schedule by id like:

GET https://localhost.oridashi.com.au:8102/Slot?schedule=6FA2AA1CA439ABFB38D48297E0ACC3FF.1-20180619-32400-3600-900-1

ARCHIVE

Archive Material: Appointment Management