Overview
The iSalusEMR.SaveVitals webservice is used to create a vitals record within the EMR. This can be found here: EMR > Select Patient > Vitals OR EMR > Select Patient > Summary/Timeline. The webservice will accept a patient ID, encounter date/time, unit type, and various vital metrics.
Sample Call
Request
<request xmlns="http://www.isalushealthcare.webservices/"> <security> <key>REDACTED</key> <version>1.1</version> <userid /> <account>REDACTED</account> </security> <vitals_id /> <patient_id>25007</patient_id> <encounter_date>05/27/2021 09:31 AM</encounter_date> <units>E</units> <height_primary_unit>5</height_primary_unit> <height_secondary_unit>3</height_secondary_unit> <weight_primary_unit>150</weight_primary_unit> <weight_secondary_unit>0</weight_secondary_unit> <temperature>98.6</temperature> <waist_circum>30</waist_circum> <body_fat>5</body_fat> <temperature_method_code /> <respirations /> <head_circum /> <pain /> <lmp_date /> <glucose /> <glucose_cd /> <heart_rate /> <o2saturation /> <fio2 /> <liters_minute /> <extremity_pulse_oximetry_code /> <oxygen_code /> <position_list> <position_item> <position_code>1</position_code> <beats_per_minute>70</beats_per_minute> <rhythm_code>1</rhythm_code> <systolic>120</systolic> <diastolic>80</diastolic> <extremity_code /> </position_item> <position_item> <position_code>2</position_code> <extremity_code /> </position_item> <position_item> <position_code>3</position_code> <extremity_code /> </position_item> </position_list> <comment>Here is a vitals comment</comment> </request>
Response
<response xmlns="http://www.isalushealthcare.webservices/"> <vitals_id>1571</vitals_id> <weight_message> </weight_message> </response>
Element Description
Request
The Request element will serve as a wrapper for the entire body of the XML request. Required items are marked with "*".
Request > Security*
See documentation for the Security node here: Access to Webservices
Request > Patient_ID*
Chat number for the patient data you would like to retrieve.
Request > Encounter_Date*
Time & Date the vitals were taken.
Format:MM/DD/YYY HH:MMam/pm | Ex. 04/25/2020 10:15AM
Request > Units*
Defines English vs Metric units. All following values passed in will be associated with one of the unit types.
Accepted Values: E OR M | E = English, M = Metric
Request > Height_Primary_Unit
The primary unit for height will accept an integer. The unit associated will depend on Request > Units:
E = Feet (ft) | M = Meters (m)
Request > Height_Secondary_Unit
The secondary unit for height will accept an integer. The unit associated will depend on Request > Units:
E = Inches (in) | M = Centimeters (cm)
Request > Weight_Primary_Unit
The primary unit for weight will accept an integer. The unit associated will depend on Request > Units:
E = Pounds (lbs) | M = Kilograms (kg)
Request > Weight_Secondary_Unit
The secondary unit for weight will accept an integer. The unit associated will depend on Request > Units:
E = Ounces (oz) | M = Grams (g)
Request > Temperature
The temperature will accept a real number to the tenths place.
Example: 98.6
Request > Temerature_Method_Code
This will accept an integer. The following method codes are accepted:
- Null/Empty = ' ' - A method is not required to save a vital record
- 1 = Oral
- 2 = Axillary
- 3 = Rectal
- 4 = Aural
- 5 = Temporal
Request > Waist_Circum
This element defines the waist circumference of the patient. The units are dependant on Request > Units:
E = Inches (in) | M = Centimeters (cm)
Request > Head_Circum
Defines the patient's head circumference depending on Request > Units:
E = Inches (in) | M = Centimeters (cm)
Request > Body_Fat
This will accept a real number for the total body fat percentage.
Request > Respirations
Will accept a whole number. The units are static, Breaths/Minute.
Request > Pain
The pain element defines a 0-10 pain scale. This will accept whole numbers 0-10.
Request > LMP_Date
The Last Menstrual Period (LMP) date accepts a date value.
Format: MM/DD/YYYY
Request > Glucose
This will accept an integer for the glucose value. The units for which are defined on the next element.
Request > Glucose_CD
Defines the units for glucose value. This is a dropdown in the UI that only accepts one of two values:
- 1 = mg/dL
- 2 = mmol/L
Request > Heart_Rate
In this case of heart rate, this is specific to pulse oximetry. An integer will be accepted. For position and extremity measurements, see Request > Position_List sections.
Request > Extremity_Pulse_Oximetry_Code
This will define the extremity that the pulse oximeter used for the results. This is a picklist in the UI. The accepted encoded values are:
- 1 = Left Hand Digit
- 2 = Right Hand Digit
Request > O2saturation
Accepts a real number as a value. This is measured in %. Also relates to the Pulse Oximetry section (shown in the screenshot)
Request > FIO2
Fraction Inspired Oxygen Saturation accepts a real number.
Request > Liters_Minute
Accepts a real number for the patient's oxygen flow in liters per minute.
Request > Position_List
This element will serve as a wrapper for the 3 positions that Blood Pressure / Pulse can accept.
- Sitting
- Standing
- Supine
Request > Position_List > Position_Item
The position_item will sever as a wrapper for all details related to specific positions.
Request > Position_List > Position_Item > Position_Code
The position _code defines the position that the vitals were recorded in. There are three options available:
- 1 = Sitting
- 2 = Standing
- 3 = Supine
Request > Position_List > Position_Item > Beats_Per_Minute
Defines the beats per minute per position item. This will accept an integer. UI units: Beats/Minute
Request > Position_List > Position_Item > Rhythm_Code
The rhythm codes accept an integer for the encoded value. There are 3 options available:
- 1 = Regular
- 2 = Regularly Irregular
- 3 = Irregularly Irregular
Request > Position_List > Position_Item > Systolic
Defines the systolic pressure for the specified position. Will accept an integer.
Request > Position_List > Position_Item > Diastolic
Defines the diastolic pressure for the specified position. Will accept an integer.
Response
The Response element will serve as a wrapper for the entire body of the XML response.
Response > Vitals_Id
Returns the Vital ID that is created by saving the record. This indicates success.
Response > Weight_Message
Depending on the degree of fluctuation from the last weight value a message may be returned to highlight this difference:
Ex. "The patient's weight has increased by more than 20 percent."