API Reference

Appointment Types

📘

Appointment types are a NexHealth construct. This resource isn't read from or written to health record systems.

Appointment types help define what kinds of appointments providers serve. They're useful when you're manually configuring provider schedules.

With NexHealth, you can manually configure a provider’s schedule and use that as the source of truth for booking appointments. This is helpful when:

  • You want to offer appointment times that differ from what’s in the connected health record system.
  • NexHealth doesn't support syncing provider availability from the health record system.

When manually configuring provider working hours, you can associate specific appointment types with each time slot. This allows you to:

  • Control what kinds of appointments patients can book with providers.
  • Control when patients can book certain appointment types.

For example you might want patients to only book 'New patient' and 'Annual check up' appointments with provider A, and you might want annual check ups to only be offered from 9am-3pm on Thursday. You can do this by manually creating working hours and appointment types.

Finding providers who offer a specific appointment type

To see which providers offer a specific appointment type, you can call GET appointment_types and include providers, like this:

curl --request GET \
     --url https://nexhealth.info/appointment_types/id?include\[\]=providers' \
     --header 'Accept: application/vnd.Nexhealth+json;version=2' \
     --header 'Authorization: YOUR_BEARER_TOKEN'

The response will only include providers who have working hours for the given appointment type.

Using appointment types when posting appointments

You can associate health record system appointment descriptors (such as procedure codes) with appointment types using the emr_appt_descriptor_ids field. If you call POST appointment and pass an appointment type, then any descriptors associated with the appointment type will automatically be added to the appointment when it's created in the health record system.

📘

Institution vs. location scope

By default, appointment types are accessible across all institution locations. The parent_type field on an appointment type tells you if it's scoped to a specific location, or if it's accessible through the institution.

Appointment types response object

{
   "code" : true,
   "count" : 2,
   "data" : [
      {
         "bookable_online" : true,
         "id" : 1733,
         "minutes" : 30,
         "name" : "Sealant",
         "parent_id" : 140,
         "parent_type" : "Institution"
      },
      {
         "bookable_online" : true,
         "id" : 1758,
         "minutes" : 30,
         "name" : "New patient cleaning",
         "parent_id" : 140,
         "parent_type" : "Institution"
      }
   ],
   "description" : null,
   "error" : null
}