SurgicalScheduling

This data model communicates information about a patient’s surgical appointment. This includes details like assigned staff, case, and procedure details. These messages may come from an Operating Room (OR) system or from the same scheduling system used for non-surgical appointments.

A surgical appointment gets assigned a case number and patient ID. If the surgical appointment is rescheduled, the case number is usually retained. If the surgical appointment is canceled and later rescheduled, however, a new case number is created.

SurgicalScheduling doesn't include insurance information or preference card data (i.e., a surgeon's list of preferred supplies). Preference card data isn't currently exchanged via a known standard, but you can use the Inventory data model to track used or wasted supplies.

This data model has event types that allow you to:

  • receive a notification about surgical appointment updates.

Modification

Receive a notification when something about a surgical procedure has changed (e.g., change in provider, duration of appointment).

For date or time changes, use a Reschedule message instead.

Request Body Schema

  • Meta
    required, object
    • DataModel
      required, string
      Reliable

      SurgicalScheduling

    • EventType
      required, string
      Reliable

      Modification

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

  • Patient
    required, object
    • Identifiers
      required, Array of object

      List of IDs and ID types that identify the patient

      • ID
        required, string
        Reliable

        ID for the patient

      • IDType
        required, string
        Reliable

        Type of ID.
        E.g. MRN, EPI

    • Demographics
      object
      • FirstName
        string, null
        Reliable

        Patient's first name

      • MiddleName
        string, null
        Possible

        Patient's middle name or middle initial. For patients with multiple middle names, all their middle names are included in this field.

      • LastName
        string, null
        Reliable

        Patient's last name

      • DOB
        string, null
        Reliable

        Patient's date of birth.
        In ISO 8601 format

      • SSN
        string, null
        Probable

        Patient's social security number

      • Sex
        string, null
        Reliable
        Value Set

        Patient's sex

      • Race
        string, null
        Possible
        Value Set

        Patient's race

      • IsHispanic
        boolean, null
        Possible
        Value Set

        Indicates if the patient is of hispanic origin.

      • Religion
        string, null
        Possible
        Value Set

        Patient's religious affiliation

      • MaritalStatus
        string, null
        Possible
        Value Set

        Patient's marital status

      • IsDeceased
        boolean, null
        Possible

        Indicates if the patient is deceased

      • DeathDateTime
        string, null
        Possible

        Date and Time the patient was proclaimed deceased.
        ISO 8601 Format

      • PhoneNumber
        object
        • Home
          string, null
          Probable

          Patient's home phone number.
          In E. 164 Format. (e.g. +16085551234)

        • Office
          string, null
          Probable

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

        • Mobile
          string, null
          Probable

          Patient's mobile phone number.
          In E. 164 Format. (e.g. +16085551234)

      • EmailAddresses
        Array of string

        Patient's email address(es)

      • Language
        string, null
        Possible
        Value Set

        Patient's primary spoken language.
        In ISO 639-1 alpha values (e.g. 'en'). Supported Values

      • Citizenship
        Array of string

        Patient's nation(s) of citizenship.
        In ISO 3166 alpha 2 format (e.g. 'US').

      • Address
        object

        Patient's home address

        • StreetAddress
          string, null
          Probable

          Street address

        • City
          string, null
          Probable

          City

        • State
          string, null
          Probable

          State

        • ZIP
          string, null
          Probable

          ZIP

        • County
          string, null
          Possible

          County

        • Country
          string, null
          Possible
          Value Set

          Country

    • Notes
      Array of string

      Patient-level notes

  • Procedures
    required, Array of object

    Array of procedures to be performed. This will typically contain one entry - but there may be more complex procedures involving multiple separate steps.

    • DateTime
      required, string
      Reliable

      DateTime of appointment.
      ISO 8601 Format

    • Duration
      required, number
      Reliable

      Length of appointment.
      In minutes

    • Code
      string, null
      Probable

      Code for the service

    • Codeset
      string, null
      Probable

      Code set used to identify the service.
      Codeset will be blank for system-defined codes.

    • Description
      string, null
      Probable

      Description of the service

    • ProcedureInfo
      Array of object

      Additional information about the procedure being scheduled, such as body site.

      • Description
        string, null
        Possible

        ProcedureInfo description, such as 'Laterality'.

      • Value
        string, null
        Possible

        ProcedureInfo value, such as 'unilateral left'.

  • Visit
    required, object
    • VisitNumber
      required, string
      Reliable

      Visit Number used by the EHR to track this appointment.
      Unique ID of a single visit

    • Location
      required, object

      Location of the procedure

      • Department
        required, string
        Reliable

        Department

      • Type
        string, null
        Reliable

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

      • Facility
        string, null
        Reliable

        Facility.
        Example: Community Hospital

      • FacilityIdentifiers
        Array of object

        List of IDs specific to this facility

        • ID
          string, null
          Reliable

          An ID specific to this facility

        • IDType
          string, null
          Reliable

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

      • DepartmentIdentifiers
        Array of object

        List of IDs specific to this department

        • ID
          string, null
          Reliable

          An ID specific to this department

        • IDType
          string, null
          Reliable

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

      • Room
        string, null
        Reliable

        Room.
        Example: 136

      • Bed
        string, null
        Reliable

        Bed.
        Example: B

    • AccountNumber
      string, null
      Possible

      Account Number.
      An ID that can span several visits often related to the same issue - pregnancy, surgeries, research study, etc.

    • VisitDateTime
      string, null
      Possible

      DateTime of appointment.
      ISO 8601 Format

    • Status
      string, null
      Probable

      Status of the visit.
      One of the following: Scheduled, Arrived, Completed, Pending, Canceled, Left without being seen, No show

    • Duration
      number, null
      Possible

      Length of appointment.
      In minutes

    • PatientClass
      string, null
      Reliable

      Patient class will indicate the state of the patient at the time of scheduling.
      Examples: Inpatient, Outpatient, Emergency

    • Notes
      Array of string

      Notes about the visit

    • AttendingProvider
      object
      • ID
        string, null
        Probable

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

      • IDType
        string, null
        Probable

        ID type of the ID for the attending provider

      • FirstName
        string, null
        Possible

        First name of the attending provider

      • LastName
        string, null
        Possible

        Last name of the attending provider

      • Credentials
        Array of string

        List of credentials for the attending 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

    • Diagnoses
      Array of object

      List of diagnoses associated with this visit

      • Code
        string, null
        Probable

        Code for the diagnosis

      • Codeset
        string, null
        Probable
        Value Set

        Code set used to identify the diagnosis.
        One of the following: ICD-9, ICD-10, HCPCS, CPT

      • Name
        string, null
        Probable

        Name of the diagnosis

      • Type
        string, null
        Possible
        Value Set

        Type of the diagnosis

      • DocumentedDateTime
        string, null
        Possible

        DateTime the diagnosis was documented.
        ISO 8601 Format

    • Equipment
      Array of object

      Equipment or resources assigned to this appointment. Each may be scheduled individually.

      • Code
        string, null
        Probable

        Code for the equipment

      • Codeset
        string, null
        Probable

        Code set used to identify the equipment.
        Codeset will be blank for system-defined codes.

      • Description
        string, null
        Probable

        Description of the equipment.
        Example: X-Ray, Therapy Ball, etc.

      • StartDateTime
        string, null
        Probable

        If the equipment's schedule is different from the appointment schedule, this is the time that this staff member is scheduled to start work.

      • Duration
        number, null
        Probable

        Length of time that the equipment is scheduled for.
        In minutes

  • SurgeryStaff
    Array of object

    All of the staff assigned to this appointment. Each may be scheduled individually.

    • ID
      string, null
      Probable

      ID of the Surgery staff member.
      This ID is often required for Inpatient Visits.

    • IDType
      string, null
      Probable

      ID type of the ID for the Surgery staff member

    • FirstName
      string, null
      Possible

      First name of the Surgery staff member

    • LastName
      string, null
      Possible

      Last name of the Surgery staff member

    • Credentials
      Array of string

      List of credentials for the Surgery staff member.
      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

    • Role
      object

      The role of this person in the surgery.

      • Code
        string, null
        Probable

        Code for the service

      • Codeset
        string, null
        Probable

        Code set used to identify the service.
        Codeset will be blank for system-defined codes.

      • Description
        string, null
        Probable

        Description of the service.
        Example: Primary Surgeon, Anesthesiologist, etc.

    • StartDateTime
      string, null
      Probable

      If this staff member's schedule is different from the appointment schedule, this is the time that this staff member is scheduled to start work.

    • Duration
      number, null
      Reliable

      Length of time that the staff member is scheduled for.
      In minutes

  • SurgicalInfo
    Array of object

    List of supplementary clinical information associated with the appointment. These may include answers to Ask at Order Entry (AOE) questions, preference card information, or discrete data points about the patient.

    • Code
      string, null
      Probable

      Code for the information element

    • Codeset
      string, null
      Probable

      Code set used to identify the information element.
      Codeset will be blank for system-defined codes. LOINC is used for a subset of AOE questions.

    • Description
      string, null
      Probable

      Description of the information element.
      For AOEs, this is typically the text of the AOE question

    • Value
      string, null
      Reliable

      The value of the corresponding Surgical Info code.
      For example, the code will identify the question being answered, and this property will contain the answer.

  • SurgicalCase
    object
    • Number
      string, null
      Possible

      Surgery specific identifier

    • Status
      string, null
      Possible

      Status of the surgical case.
      This is most often an EHR-specific value, such as 'Procedure started' or 'In Room'.

Example
json
1
{
2
"Meta": {
3
"DataModel": "SurgicalScheduling",
4
"EventType": "Modification",
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
"Patient": {
26
"Identifiers": [
27
{
28
"ID": "0000000001",
29
"IDType": "MR"
30
},
31
{
32
"ID": "e167267c-16c9-4fe3-96ae-9cff5703e90a",
33
"IDType": "EHRID"
34
},
35
{
36
"ID": "a1d4ee8aba494ca",
37
"IDType": "NIST"
38
}
39
],
40
"Demographics": {
41
"FirstName": "Timothy",
42
"MiddleName": "Paul",
43
"LastName": "Bixby",
44
"DOB": "2008-01-06",
45
"SSN": "101-01-0001",
46
"Sex": "Male",
47
"Race": "White",
48
"IsHispanic": null,
49
"Religion": null,
50
"MaritalStatus": "Single",
51
"IsDeceased": null,
52
"DeathDateTime": null,
53
"PhoneNumber": {
54
"Home": "+18088675301",
55
"Office": null,
56
"Mobile": null
57
},
58
"EmailAddresses": [],
59
"Language": "en",
60
"Citizenship": [],
61
"Address": {
62
"StreetAddress": "4762 Hickory Street",
63
"City": "Monroe",
64
"State": "WI",
65
"ZIP": "53566",
66
"County": "Green",
67
"Country": "US"
68
}
69
},
70
"Notes": []
71
},
72
"Procedures": [
73
{
74
"Code": "6391",
75
"Codeset": null,
76
"Description": "Appendectomy",
77
"DateTime": "2015-12-13T21:08:57.581Z",
78
"Duration": 120,
79
"ProcedureInfo": [
80
{
81
"Description": "Laterality",
82
"Value": "unilateral left"
83
}
84
]
85
}
86
],
87
"SurgeryStaff": [
88
{
89
"ID": "4356789876",
90
"IDType": "NPI",
91
"FirstName": "Pat",
92
"LastName": "Granite",
93
"Credentials": [
94
"MD"
95
],
96
"Address": {
97
"StreetAddress": "123 Main St.",
98
"City": "Madison",
99
"State": "WI",
100
"ZIP": "53703",
101
"County": "Dane",
102
"Country": "USA"
103
},
104
"EmailAddresses": [],
105
"PhoneNumber": {
106
"Office": "+16085551234"
107
},
108
"Location": {
109
"Type": null,
110
"Facility": null,
111
"FacilityIdentifiers": [],
112
"Department": null,
113
"DepartmentIdentifiers": [],
114
"Room": null
115
},
116
"Role": {
117
"Code": "1.1",
118
"Codeset": null,
119
"Description": "Primary Surgeon"
120
},
121
"StartDateTime": "2015-12-13T21:08:57.581Z",
122
"Duration": 120
123
}
124
],
125
"SurgicalInfo": [
126
{
127
"Code": "23457",
128
"Codeset": "Redox EHR Codes",
129
"Description": "Priority",
130
"Value": "Normal"
131
},
132
{
133
"Code": "1535135",
134
"Codeset": "Redox EHR Codes",
135
"Description": "Use Preference Cards",
136
"Value": "Y"
137
}
138
],
139
"Visit": {
140
"VisitNumber": "1234",
141
"AccountNumber": null,
142
"VisitDateTime": null,
143
"Status": null,
144
"Duration": 30,
145
"PatientClass": null,
146
"Notes": [],
147
"AttendingProvider": {
148
"ID": "4356789876",
149
"IDType": "NPI",
150
"FirstName": "Pat",
151
"LastName": "Granite",
152
"Credentials": [
153
"MD"
154
],
155
"Address": {
156
"StreetAddress": "123 Main St.",
157
"City": "Madison",
158
"State": "WI",
159
"ZIP": "53703",
160
"County": "Dane",
161
"Country": "USA"
162
},
163
"EmailAddresses": [],
164
"PhoneNumber": {
165
"Office": "+16085551234"
166
},
167
"Location": {
168
"Type": null,
169
"Facility": null,
170
"FacilityIdentifiers": [],
171
"Department": null,
172
"DepartmentIdentifiers": [],
173
"Room": null
174
}
175
},
176
"Location": {
177
"Type": "Inpatient",
178
"Facility": "RES General Hospital",
179
"FacilityIdentifiers": [],
180
"Department": "3N",
181
"DepartmentIdentifiers": [],
182
"Room": "136",
183
"Bed": "B"
184
},
185
"Diagnoses": [
186
{
187
"Code": "R07.0",
188
"Codeset": "ICD-10",
189
"Name": "Pain in throat",
190
"Type": null,
191
"DocumentedDateTime": null
192
}
193
],
194
"Equipment": []
195
},
196
"SurgicalCase": {
197
"Number": null,
198
"Status": null
199
}
200
}