OBJECT

Appointment

An appointment object containing information about the appointment, including the attendees, date, location, and more

link GraphQL Schema definition

  • type Appointment {
  • # The actual length of the appointment (in minutes). Filled in by the provider
  • # after the appointment
  • actual_duration: String
  • # Get link to add appointment to google calendar
  • add_to_gcal_link: String
  • # The category of the appointment
  • appointment_category: String
  • # The number of people (both providers and attendees) who are in the appointment
  • appointment_inclusions_count: Int
  • # A label for the appointment
  • appointment_label: String
  • # the ID of the appointment location
  • appointment_location_id: String
  • # The type of the appointment
  • appointment_type: AppointmentType
  • # The ID of the type of appointment this is
  • appointment_type_id: Int
  • # List of assigned user groups to the group appointment
  • assigned_groups: [UserGroup]
  • # Client inclusions
  • attended_clients: [AppointmentInclusionType]
  • # All attendees for the appointment.
  • attendees: [User!]!
  • # Pending Appointment inclusions
  • attendees_on_waitlist: [User]
  • # The backgroundColor color of the appointment
  • #
  • # Arguments
  • # appointment_setting_updated_at: [Not
  • # documented]
  • backgroundColor(appointment_setting_updated_at: String): String
  • # Returns true if the patient can reschedule the appointment
  • can_be_rescheduled: Boolean
  • # True if client able to cancel an appointment
  • can_client_cancel: Boolean
  • # True if client able to reschedule an appointment
  • can_client_reschedule: Boolean
  • # false if the client needs to confirm the appointment, and has not
  • #
  • # Arguments
  • # known_requires_client_confirmed: [Not
  • # documented]
  • client_confirmed(known_requires_client_confirmed: Boolean): Boolean
  • # Whether the appointment updating on client side or not
  • client_updating: Boolean
  • # The status of whether the provider has confirmed the appointment or not
  • confirmed: Boolean
  • # The status of the connected chart note
  • connected_chart_note_string: String
  • # How the provider and attendees will connect (i.e In-Person or through the phone)
  • contact_type: String
  • # The ID of conversation related to the current appointment(only for group appts
  • # 10/2020)
  • conversation_id: ID
  • # The date and time that the appointment was created
  • created_at: String
  • # The position of the appointment in the recurring series
  • current_position_in_recurring_series: Int
  • # The date and time of the appointment
  • date: String
  • # default color of appointment based on confirmation/type
  • default_color: String
  • # The end time of the appointment
  • end: String
  • # The type of connection to an external calendar
  • external_id_type: String
  • # A URL to an external video chat site for the session
  • external_videochat_url: String
  • # The custom answers filled out by the booker of the appointment
  • filled_embed_form: FormAnswerGroup
  • # Form answer group associated with appointment
  • form_answer_group: FormAnswerGroup
  • # open tok token
  • generated_token: String
  • id: ID!
  • # ID of user that created of appointment
  • initiator_id: ID
  • # The status of whether this appointment is specifically meant to block
  • # availability
  • is_blocker: Boolean
  • # Indicates whether it's a group appointment
  • is_group: Boolean
  • # The status of whether the video chat uses Zoom or Healthie Default telehealth
  • is_zoom_chat: Boolean
  • # id of last conversation between provider and client in appointment
  • last_client_conversation_id: ID
  • # The length of the appointment (in minutes)
  • length: Int
  • # The plaintext location of the appointment (only used for in-person appointments)
  • location: String
  • # Location Resource
  • locationResource: String
  • # How many attendees can register for an appointment (only used for Group
  • # Appointments)
  • max_attendees: String
  • # Minimum time before the appointment when client can still cancel it
  • minimum_advance_cancel_time: Int
  • # Minimum time (in minutes) before the appointment when client can still
  • # reschedule it
  • minimum_advance_reschedule_time: Int
  • # Quick notes on the appointment (only visisble to providers)
  • notes: String
  • # The id of the provider
  • other_party_id: Int
  • # The number of times a patient rescheduled an appointment
  • patient_reschedule_count: Int
  • # The status of the appointment. Can be one of “Occurred”, “No-Show”,
  • # “Re-Scheduled”, “Cancelled”
  • #
  • # Arguments
  • # check_for_client_cancel: [Not documented]
  • pm_status(check_for_client_cancel: Boolean): String
  • # The provider for the appointment
  • provider: User
  • # All providers for the appointment.
  • #
  • # Arguments
  • # empty_unless_multiple: Return an empty array unless there is
  • # more than one provider
  • providers(empty_unless_multiple: Boolean): [User!]!
  • # The clients reason for scheduling the appointment
  • reason: String
  • # The related recurring appointment series
  • recurring_appointment: RecurringAppointment
  • # The ID of the recurring appointment
  • recurring_appointment_id: String @deprecated( reason: "Use recurring_appointment instead" )
  • # The status of whether this is a repeating appointment or not
  • repeat: Boolean @deprecated( reason: "Use recurring_appointment instead" )
  • # How often to repeat the appointment (e.g Daily or Monthly)
  • repeat_interval: String @deprecated( reason: "Use recurring_appointment instead" )
  • # How many times does the appointment repeat
  • repeat_times: Int @deprecated( reason: "Use recurring_appointment instead" )
  • # A requested payment for this appointment
  • requested_payment: RequestedPayment
  • # The ID of the user, used for the calendar
  • resourceId: String
  • # the ID of the room
  • room_id: ID
  • # A string containing info on how the appointment was scheduled
  • scheduled_by: String
  • # The OpenTok session ID for the appointment
  • session_id: String
  • # The start time of the appointment
  • start: String
  • # The font color of the appointment
  • textColor: String
  • # Has this appointment been differentiated from the other recurrings
  • time_recurring_override: Boolean
  • # Timezone abbreviation of the date of the appointment
  • timezone_abbr: String
  • # The title of the appointment
  • title: String
  • # The last date and time that the appointment was updated
  • updated_at: String
  • # Whether the appointment is through Zoom or not
  • use_zoom: Boolean
  • # The client in a 1:1 appointment
  • user: User
  • # The id of the client (if a 1:1 appointment)
  • user_id: Int
  • # URLs for Zoom cloud recordings for this appointment
  • zoom_cloud_recording_urls: [String]
  • # The dial-in info provided by zoom if appoint has zoom links.(separated by
  • # newline characters)
  • zoom_dial_in_info: String
  • # An array of JSON objects containing the different dial in numbers for the Zoom
  • # call
  • zoom_dial_in_numbers_json: [String]
  • # The join link for other attendees of the Zoom call
  • zoom_join_url: String
  • # The Meeting ID for the Zoom call
  • zoom_meeting_id: String
  • # The host link to start the Zoom call
  • zoom_start_url: String
  • }