Scheduling

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.

Booked

Query for booked times within a given time range. Results are returned in Scheduling.BookedResponse.

Data on Demand Enabled

Request Body Schema

  • Meta
    required, object
    • DataModel
      required, string
      Reliable

      Scheduling

    • EventType
      required, string
      Reliable

      Booked

    • EventDateTime
      string, null
      Reliable

      Displays the UTC date and time that an outgoing request is delivered or an incoming request is received.
      ISO 8601 Format

    • Test
      boolean, null
      Reliable

      Indicates whether the request is a test or not.

    • Source
      object

      Contains the information for the system initiating the message, including the source ID and name.
      Included in messages from Redox

      • ID
        string, null
        Reliable

        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

      • Name
        string, null
        Reliable

        Displays the name of the system initiating the message.

    • Destinations
      Array 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.

      • ID
        string, null
        Reliable

        Identifies the endpoint that the request is directed to.
        UUID

      • Name
        string, null
        Reliable

        Displays the name of the endpoint that the request is directed to.

    • Logs
      Array of object

      Contains the log identifier(s) for the request.

      • ID
        string, null
        Reliable

        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

      • AttemptID
        string, null
        Reliable

        Identifies the request log attempt value, which is useful when retries are possible.
        UUID

    • FacilityCode
      string, null
      Possible

      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.

  • StartDateTime
    required, string
    Reliable

    Defines the start of the time range to search for appointments.
    ISO 8601 Format

  • EndDateTime
    string, null
    Possible

    Defines the end of the time range to search for appointments.
    ISO 8601 Format

  • Visit
    object
    • Reason
      string, null
      Reliable

      Indicates the appointment reason to search for.

    • VisitNumber
      string, null
      Possible

      Displays the unique identifier for the patient visit. You must query for a specific booked appointment by a known VisitNumber.

    • AttendingProviders
      Array of object
      • ID
        string, null
        Probable

        ID of the provider.
        This ID is often required for Inpatient Visits.

      • IDType
        string, null
        Probable

        ID type of the ID for the provider

      • FirstName
        string, null
        Possible

        First name of the provider

      • LastName
        string, null
        Possible

        Last name of the provider

      • Credentials
        Array of string

        List of credentials for the provider.
        e.g. MD, PhD

      • Address
        object

        Provider's address

        • StreetAddress
          string, null
          Possible

          Street address

        • City
          string, null
          Possible

          City

        • State
          string, null
          Possible

          State

        • ZIP
          string, null
          Possible

          ZIP

        • County
          string, null
          Possible

          County

        • Country
          string, null
          Possible
          Value Set

          Country

      • EmailAddresses
        Array of string

        Provider's email address(es)

      • PhoneNumber
        object
        • Office
          string, null
          Possible

          Provider's office phone number.
          In E. 164 Format. (e.g. +16085551234)

      • Location
        object

        Provider's location

        • Type
          string, null
          Possible

          Type of location.
          Examples: Clinic, Department, Home, Nursing Unit, Provider's Office, Phone

        • Facility
          string, null
          Possible

          Facility.
          Example: Community Hospital

        • FacilityIdentifiers
          Array of object

          List of IDs specific to this facility

          • ID
            string, null
            Possible

            An ID specific to this facility

          • IDType
            string, null
            Possible

            The source or system to which this ID pertains.
            Could be an OID or a human-readable name

        • Department
          string, null
          Possible

          Department

        • DepartmentIdentifiers
          Array of object

          List of IDs specific to this department

          • ID
            string, null
            Possible

            An ID specific to this department

          • IDType
            string, null
            Possible

            The source or system to which this ID pertains.
            Could be an OID or a human-readable name

        • Room
          string, null
          Possible

          Room.
          Example: 136

    • VisitProvider
      object
      • ID
        string, null
        Possible

        ID of the visit provider.
        This ID is often required for Inpatient Visits.

      • IDType
        string, null
        Possible

        ID type of the ID for the visit provider

      • FirstName
        string, null
        Possible

        First name of the visit provider

      • LastName
        string, null
        Possible

        Last name of the visit provider

      • Credentials
        Array of string

        List of credentials for the visit provider.
        e.g. MD, PhD

      • Address
        object

        Provider's address

        • StreetAddress
          string, null
          Possible

          Street address

        • City
          string, null
          Possible

          City

        • State
          string, null
          Possible

          State

        • ZIP
          string, null
          Possible

          ZIP

        • County
          string, null
          Possible

          County

        • Country
          string, null
          Possible
          Value Set

          Country

      • EmailAddresses
        Array of string

        Provider's email address(es)

      • PhoneNumber
        object
        • Office
          string, null
          Possible

          Provider's office phone number.
          In E. 164 Format. (e.g. +16085551234)

      • Location
        object

        Provider's location

        • Type
          string, null
          Possible

          Type of location.
          Examples: Clinic, Department, Home, Nursing Unit, Provider's Office, Phone

        • Facility
          string, null
          Possible

          Facility.
          Example: Community Hospital

        • FacilityIdentifiers
          Array of object

          List of IDs specific to this facility

          • ID
            string, null
            Possible

            An ID specific to this facility

          • IDType
            string, null
            Possible

            The source or system to which this ID pertains.
            Could be an OID or a human-readable name

        • Department
          string, null
          Possible

          Department

        • DepartmentIdentifiers
          Array of object

          List of IDs specific to this department

          • ID
            string, null
            Possible

            An ID specific to this department

          • IDType
            string, null
            Possible

            The source or system to which this ID pertains.
            Could be an OID or a human-readable name

        • Room
          string, null
          Possible

          Room.
          Example: 136

    • Location
      object

      Defines the location of the appointment.

      • Type
        string, null
        Probable

        Type of location.
        Examples: Clinic, Department, Home, Nursing Unit, Provider's Office, Phone

      • Facility
        string, null
        Probable

        Facility.
        Example: Community Hospital

      • FacilityIdentifiers
        Array of object

        List of IDs specific to this facility

        • ID
          string, null
          Probable

          An ID specific to this facility

        • IDType
          string, null
          Probable

          The source or system to which this ID pertains.
          Could be an OID or a human-readable name

      • Department
        string, null
        Probable

        Department

      • DepartmentIdentifiers
        Array of object

        List of IDs specific to this department

        • ID
          string, null
          Probable

          An ID specific to this department

        • IDType
          string, null
          Probable

          The source or system to which this ID pertains.
          Could be an OID or a human-readable name

      • Room
        string, null
        Probable

        Room.
        Example: 136

    • Patients
      Array of object

      Identifies the patient(s) for the appointment.

      • Identifiers
        Array of object

        Contains a list of identifiers and identifiers types that correlate to the patient.

        • ID
          string, null
          Probable

          Contains an identifier for the patient.

        • IDType
          string, null
          Probable

          Defines the type of the identifier used for the patient.
          E.g. MRN, EPI

Example
json
1
{
2
"Meta": {
3
"DataModel": "Scheduling",
4
"EventType": "Booked",
5
"EventDateTime": "2024-12-20T18:11:36.537Z",
6
"Test": true,
7
"Source": {
8
"ID": "7ce6f387-c33c-417d-8682-81e83628cbd9",
9
"Name": "Redox Dev Tools"
10
},
11
"Destinations": [
12
{
13
"ID": "af394f14-b34a-464f-8d24-895f370af4c9",
14
"Name": "Redox EMR"
15
}
16
],
17
"Logs": [
18
{
19
"ID": "d9f5d293-7110-461e-a875-3beb089e79f3",
20
"AttemptID": "925d1617-2fe0-468c-a14c-f8c04b572c54"
21
}
22
],
23
"FacilityCode": null
24
},
25
"StartDateTime": "2024-12-20T18:11:36.955Z",
26
"EndDateTime": null,
27
"Visit": {
28
"Reason": null,
29
"VisitNumber": null,
30
"AttendingProviders": [
31
{
32
"ID": "4356789876",
33
"IDType": "NPI",
34
"FirstName": "Pat",
35
"LastName": "Granite",
36
"Credentials": [
37
"MD"
38
],
39
"Address": {
40
"StreetAddress": "123 Main St.",
41
"City": "Madison",
42
"State": "WI",
43
"ZIP": "53703",
44
"County": "Dane",
45
"Country": "USA"
46
},
47
"EmailAddresses": [],
48
"PhoneNumber": {
49
"Office": "+16085551234"
50
},
51
"Location": {
52
"Type": null,
53
"Facility": null,
54
"FacilityIdentifiers": [],
55
"Department": null,
56
"DepartmentIdentifiers": [],
57
"Room": null
58
}
59
}
60
],
61
"VisitProvider": {
62
"ID": null,
63
"IDType": null,
64
"FirstName": null,
65
"LastName": null,
66
"Credentials": [],
67
"Address": {
68
"StreetAddress": null,
69
"City": null,
70
"State": null,
71
"ZIP": null,
72
"County": null,
73
"Country": null
74
},
75
"EmailAddresses": [],
76
"PhoneNumber": {
77
"Office": null
78
},
79
"Location": {
80
"Type": null,
81
"Facility": null,
82
"FacilityIdentifiers": [],
83
"Department": null,
84
"DepartmentIdentifiers": [],
85
"Room": null
86
}
87
},
88
"Location": {
89
"Type": null,
90
"Facility": null,
91
"FacilityIdentifiers": [],
92
"Department": null,
93
"DepartmentIdentifiers": [],
94
"Room": null
95
},
96
"Patients": [
97
{
98
"Identifiers": [
99
{
100
"ID": "0000000001",
101
"IDType": "MR"
102
},
103
{
104
"ID": "e167267c-16c9-4fe3-96ae-9cff5703e90a",
105
"IDType": "EHRID"
106
},
107
{
108
"ID": "a1d4ee8aba494ca",
109
"IDType": "NIST"
110
}
111
]
112
}
113
]
114
}
115
}