This data model communicates information about a patient’s office or other outpatient appointment. EHR systems can send Scheduling messages to update your system with the appointment status, date/time, scheduled providers, and scheduled resources.
Every appointment gets assigned a visit number and patient ID. Any changes to the appointment are made with the relevant visit number. If the appointment is canceled and later rescheduled, however, a new visit number is created. Also keep in mind that scheduling holds and blocks don’t have an associated patient ID.
This data model has event types that allow you to:
- receive a notification about appointment updates;
- push or receive a list of available appointment slots;
- query for and receive open appointment times; or
- query for and receive booked appointment times.
Receive available appointment times based on the query parameters defined in Scheduling.AvailableSlots.
Request Body Schema
- Metarequired, object
- DataModelrequired, stringReliable
Scheduling
- EventTyperequired, stringReliable
AvailableSlotsResponse
- EventDateTimestring, nullReliable
Displays the UTC date and time that an outgoing request is delivered or an incoming request is received.
ISO 8601 Format - Testboolean, nullReliable
Indicates whether the request is a test or not.
- Sourceobject
Contains the information for the system initiating the message, including the source ID and name.
Included in messages from Redox- IDstring, nullReliable
Identifies the system initiating the message. If you have multiple OAuth API keys per environment type, this value is required. If you have only one OAuth API key per environment type, or you're using legacy API keys, this value is optional.
UUID - Namestring, nullReliable
Displays the name of the system initiating the message.
- DestinationsArray of object
Contains the information for the endpoint(s) receiving the request. A request must contain at least one destination, but asynchronous requests can have more than one destination. Synchronous requests like queries can only support one destination.
Required when sending data to Redox.- IDstring, nullReliable
Identifies the endpoint that the request is directed to.
UUID - Namestring, nullReliable
Displays the name of the endpoint that the request is directed to.
- LogsArray of object
Contains the log identifier(s) for the request.
- IDstring, nullReliable
Identifies the request log(s) that correspond to this request. You can use this value to locate the relevant log in the Redox dashboard for support and reference.
UUID - AttemptIDstring, nullReliable
Identifies the request log attempt value, which is useful when retries are possible.
UUID
- FacilityCodestring, nullPossible
Code for the facility related to the message.
Only use this field if a health system indicates you should. The code is specific to the health system's EHR and might not be unique across health systems. In general, the facility fields within the data models (e.g. OrderingFacility) are more reliable and informative. - IsIncompleteboolean, nullReliable
Indicates that a limit was reached, and not all data was returned. If true, the sender may want to restrict the parameters of the request in order to match fewer results.
- AvailableSlotsrequired, Array of object
Individual slots that are available for booking
- DateTimerequired, stringReliable
The DateTime of the appointment slot.
ISO 8601 Format - Durationrequired, numberReliable
Length of appointment.
In minutes - IDstring, nullProbable
The ID of the slot
- Reasonstring, nullReliable
The visit reason of the appointment slot
- Providerobject
- IDstring, nullReliable
ID of the provider.
This ID is often required for Inpatient Visits. - IDTypestring, nullReliable
ID type of the ID for the provider
- FirstNamestring, nullPossible
First name of the provider
- LastNamestring, nullPossible
Last name of the provider
- CredentialsArray of string
List of credentials for the provider.
e.g. MD, PhD - Addressobject
Provider's address
- StreetAddressstring, nullPossible
Street address
- Citystring, nullPossible
City
- Statestring, nullPossible
State
- ZIPstring, nullPossible
ZIP
- Countystring, nullPossible
County
- Countrystring, nullPossibleValue Set
Country
- EmailAddressesArray of string
Provider's email address(es)
- PhoneNumberobject
- Officestring, nullPossible
Provider's office phone number.
In E. 164 Format. (e.g. +16085551234)
- Locationobject
Provider's location
- Typestring, nullPossible
Type of location.
Examples: Clinic, Department, Home, Nursing Unit, Provider's Office, Phone - Facilitystring, nullPossible
Facility.
Example: Community Hospital - FacilityIdentifiersArray of object
List of IDs specific to this facility
- IDstring, nullPossible
An ID specific to this facility
- IDTypestring, nullPossible
The source or system to which this ID pertains.
Could be an OID or a human-readable name
- Departmentstring, nullPossible
Department
- DepartmentIdentifiersArray of object
List of IDs specific to this department
- IDstring, nullPossible
An ID specific to this department
- IDTypestring, nullPossible
The source or system to which this ID pertains.
Could be an OID or a human-readable name
- Roomstring, nullPossible
Room.
Example: 136
- Locationobject
Location of the appointment
- Typestring, nullReliable
Type of location.
Examples: Clinic, Department, Home, Nursing Unit, Provider's Office, Phone - Facilitystring, nullReliable
Facility.
Example: Community Hospital - FacilityIdentifiersArray of object
List of IDs specific to this facility
- IDstring, nullReliable
An ID specific to this facility
- IDTypestring, nullReliable
The source or system to which this ID pertains.
Could be an OID or a human-readable name
- Departmentstring, nullReliable
Department
- DepartmentIdentifiersArray of object
List of IDs specific to this department
- IDstring, nullReliable
An ID specific to this department
- IDTypestring, nullReliable
The source or system to which this ID pertains.
Could be an OID or a human-readable name
- Roomstring, nullReliable
Room.
Example: 136
- NotesArray of string
Additional notes about this slot