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.
Query for booked times within a given time range. Results are returned in Scheduling.BookedResponse.
Request Body Schema
- Metarequired, object
- DataModelrequired, stringReliable
Scheduling
- EventTyperequired, stringReliable
Booked
- 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.
- StartDateTimerequired, stringReliable
Defines the start of the time range to search for appointments.
ISO 8601 Format - EndDateTimestring, nullPossible
Defines the end of the time range to search for appointments.
ISO 8601 Format - Visitobject
- Reasonstring, nullReliable
Indicates the appointment reason to search for.
- VisitNumberstring, nullPossible
Displays the unique identifier for the patient visit. You must query for a specific booked appointment by a known VisitNumber.
- AttendingProvidersArray of object
- IDstring, nullProbable
ID of the provider.
This ID is often required for Inpatient Visits. - IDTypestring, nullProbable
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
- VisitProviderobject
- IDstring, nullPossible
ID of the visit provider.
This ID is often required for Inpatient Visits. - IDTypestring, nullPossible
ID type of the ID for the visit provider
- FirstNamestring, nullPossible
First name of the visit provider
- LastNamestring, nullPossible
Last name of the visit provider
- CredentialsArray of string
List of credentials for the visit 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
Defines the location of the appointment.
- Typestring, nullProbable
Type of location.
Examples: Clinic, Department, Home, Nursing Unit, Provider's Office, Phone - Facilitystring, nullProbable
Facility.
Example: Community Hospital - FacilityIdentifiersArray of object
List of IDs specific to this facility
- IDstring, nullProbable
An ID specific to this facility
- IDTypestring, nullProbable
The source or system to which this ID pertains.
Could be an OID or a human-readable name
- Departmentstring, nullProbable
Department
- DepartmentIdentifiersArray of object
List of IDs specific to this department
- IDstring, nullProbable
An ID specific to this department
- IDTypestring, nullProbable
The source or system to which this ID pertains.
Could be an OID or a human-readable name
- Roomstring, nullProbable
Room.
Example: 136
- PatientsArray of object
Identifies the patient(s) for the appointment.
- IdentifiersArray of object
Contains a list of identifiers and identifiers types that correlate to the patient.
- IDstring, nullProbable
Contains an identifier for the patient.
- IDTypestring, nullProbable
Defines the type of the identifier used for the patient.
E.g. MRN, EPI