Da Vinci 1 Scheduling Generic Profile

The profile walks you through a scenario where a patient schedules an appointment with a Provider by using the Member’s Portal of a Payer:

The profile contains the following routes:

Practitioners Route

By using the Member’s Portal of the Payer, the patient selects a Provider and sets up an appointment This route receives a request (in this scenario, from the Member’s Portal of the Payer) to return a list of available practitioners. The route returns the ID of the Provider selected by the patient.

Patients Route

The patient requests the practitioner's time slots to schedule an appointment. The route receives a GER request with the practitioner's ID as a query parameter and returns a list of available slots. Each slot has its own ID.

Slots Route

The patient requests the practitioner's time slots to schedule an appointment. The route receives a GER request with the practitioner's ID as a query parameter and returns a list of available practitioner's slots. Each slot has its own ID.

Appointments Route

The route has two workflows - for POST (appointment creation) and GET (appointment retrieval) requests:

Flow 1 (HTTP POST)

The patient selects a suitable time slot and submits a request to schedule an appointment with the Provider.

  1. The route receives a POST request with the slot ID and patient ID to create a new appointment.
  2. The route checks if the required parameters (slot ID and patient ID) have been passed with the request.
  3. Before the route creates a new appointment, the route gets the practitioner ID (Get Practitioner ID subroute) using the slot ID value.
  4. The route creates and submits a FHIR resource of Appointment type to the Payer's FHIR server. The appointment resource contains practitioner ID, slot ID, and patient ID extracted in the previous steps.
  5. If the appointment is created successfully, the route returns a good response (201 CREATED). The response header Location has a reference to the newly created appointment.

Flow 2 (HTTP GET)

The patient verifies that the appointment has been created successfully by passing the patient ID and the appointment date to the Payer.

  1. The route receives a GET request with patient ID and appointment date passed as query parameters.
  2. The route searches for the appointment with matching patient ID on the FHIR server and returns JSON data with information about the newly scheduled appointment.

Get Practitioner ID Route

In this scenario, to schedule an appointment, the route requires the practitioner ID along with slot ID and patient ID. This route retrieves the practitioner ID from the FHIR server.