Resources

Models

This page provides a comprehensive overview of all the models utilized within our APIs, accompanied by example JSON bodies for each. Here, you’ll find detailed descriptions and structures to help you understand how to effectively interact with our APIs, ensuring smooth integration and effective communication between your systems and ours.

Address

Represents a physical address, including information such as street lines, city, state, zip code, country, and an optional note for additional details.

Properties

NameTypeRequiredDescription
lineOnestringfalseAddress line one.
lineTwostringfalseAddress line two.
lineThreestringfalseAddress line three.
citystringfalseAddress city.
statestringfalseAddress state.
zipCodestringfalseAddress zip code.
countrystringfalseAddress country.
notestringfalseAddress note.
Address Model Sample
1{
2 "lineOne": "string",
3 "lineTwo": "string",
4 "lineThree": "string",
5 "city": "string",
6 "state": "string",
7 "zipCode": "string",
8 "country": "string",
9 "note": "string"
10}

AssociateDeviceRequest

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe ID of the device. Either this value or a Device Identifier are required to identify the Device.
deviceIdentifierstringfalseThe Identifier, such as a Serial Number, of the device. Either this value or a Device Id are required to identify the Device.
patientIdinteger(int64)falseThe ID of the patient to have the Device associated to. Either this value or a Patient External Identifier are required to identify who should be (dis)associated with the device.
patientExternalIdentifierstringfalseThe External Identifier of the patient to have the Device (dis)associated to. Either this value or a Patient Id are required to identify who should be (dis)associated with the device.
AssociateDeviceRequest Model Sample
1{
2 "deviceId": 1,
3 "deviceIdentifier": "ABC123",
4 "patientId": 0,
5 "patientExternalIdentifier": "string"
6}

BloodGlucoseReading

This page describes Impilo’s blood glucose reading model.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
patientTimeZoneOffsetinteger(int32)falseThe offset of the patient’s timezone from UTC in seconds. Null if unavailable.
patientPatientfalseThe patient who took the reading.
itemItemfalseThe item used to take the reading.
deviceDevicefalseThe device used to take the reading.
glucoseinteger(int32)falseThe blood glucose measurement value.
glucoseUnitBloodGlucoseUnitfalsenone
beforeMealbooleanfalseTrue if the reading was taken before a meal, false otherwise.
afterMealbooleanfalseTrue if the reading was taken after a meal, false otherwise.
BloodGlucoseReading Model Sample
1{
2 "id": 0,
3 "readingTimestamp": "2019-08-24T14:15:22Z",
4 "manual": true,
5 "deviceTimeZoneOffset": -14400,
6 "patientTimeZoneOffset": -14400,
7 "patient": {
8 "id": 1,
9 "externalIdentifier": "1234abcd",
10 "firstName": "John",
11 "lastName": "Doe",
12 "dateOfBirth": "1980-01-01",
13 "email": "john.doe@example.com",
14 "phoneNumber": "+1234567890",
15 "archived": true,
16 "address": {
17 "lineOne": "string",
18 "lineTwo": "string",
19 "lineThree": "string",
20 "city": "string",
21 "state": "string",
22 "zipCode": "string",
23 "country": "string",
24 "note": "string"
25 },
26 "site": {
27 "id": 1,
28 "name": "string",
29 "active": true,
30 "address": {
31 "lineOne": "string",
32 "lineTwo": "string",
33 "lineThree": "string",
34 "city": "string",
35 "state": "string",
36 "zipCode": "string",
37 "country": "string",
38 "note": "string"
39 }
40 },
41 "enrolled": true,
42 "sex": "other"
43 },
44 "item": {
45 "id": 1,
46 "manufacturer": {
47 "id": 1,
48 "name": "string"
49 },
50 "name": "string",
51 "model": "string",
52 "sku": "string",
53 "orderable": true
54 },
55 "device": {
56 "id": 1,
57 "item": {
58 "id": 1,
59 "manufacturer": {
60 "id": 1,
61 "name": "string"
62 },
63 "name": "string",
64 "model": "string",
65 "sku": "string",
66 "orderable": true
67 },
68 "currentStatus": "string",
69 "used": true,
70 "currentPatient": {
71 "id": 1,
72 "externalIdentifier": "1234abcd",
73 "firstName": "John",
74 "lastName": "Doe",
75 "dateOfBirth": "1980-01-01",
76 "email": "john.doe@example.com",
77 "phoneNumber": "+1234567890",
78 "archived": true,
79 "address": {
80 "lineOne": "string",
81 "lineTwo": "string",
82 "lineThree": "string",
83 "city": "string",
84 "state": "string",
85 "zipCode": "string",
86 "country": "string",
87 "note": "string"
88 },
89 "site": {
90 "id": 1,
91 "name": "string",
92 "active": true,
93 "address": {
94 "lineOne": "string",
95 "lineTwo": "string",
96 "lineThree": "string",
97 "city": "string",
98 "state": "string",
99 "zipCode": "string",
100 "country": "string",
101 "note": "string"
102 }
103 },
104 "enrolled": true,
105 "sex": "other"
106 },
107 "site": {
108 "id": 1,
109 "name": "string",
110 "active": true,
111 "address": {
112 "lineOne": "string",
113 "lineTwo": "string",
114 "lineThree": "string",
115 "city": "string",
116 "state": "string",
117 "zipCode": "string",
118 "country": "string",
119 "note": "string"
120 }
121 },
122 "lastHealthCheck": "string",
123 "deviceIdentifiers": [
124 {
125 "type": "string",
126 "value": "string"
127 }
128 ],
129 "deviceEvents": [
130 {
131 "type": "string",
132 "eventTimestamp": "string"
133 }
134 ],
135 "externalIdentifier": "string",
136 "disabledReadings": true
137 },
138 "glucose": 0,
139 "glucoseUnit": "mgdl",
140 "beforeMeal": true,
141 "afterMeal": true
142}

BloodGlucoseReadingRequest

This page describes Impilo’s blood glucose reading model.

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe id of the device that took the reading.
deviceIdentifierstringfalseThe device identifier of the device that took the reading.
patientIdinteger(int64)falseThe id of the patient that took the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
glucoseinteger(int32)trueThe blood glucose measurement value.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
beforeMealbooleanfalseTrue if the reading was taken before a meal, false otherwise.
afterMealbooleanfalseTrue if the reading was taken after a meal, false otherwise.
BloodGlucoseReadingRequest Model Sample
1{
2 "deviceId": 0,
3 "deviceIdentifier": "string",
4 "patientId": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "deviceTimeZoneOffset": -14400,
7 "glucose": 0,
8 "manual": true,
9 "beforeMeal": true,
10 "afterMeal": true
11}

BloodGlucoseUnit

Enumerated Values

NameDesciption
mgdlBlood glucose unit of measurement is milligrams per deciliter.
BloodGlucoseUnit Model Sample
1"mgdl"

BloodOxygenReading

This page describes Impilo’s blood oxygen reading model.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
patientTimeZoneOffsetinteger(int32)falseThe offset of the patient’s timezone from UTC in seconds. Null if unavailable.
patientPatientfalseThe patient who took the reading.
itemItemfalseThe item used to take the reading.
deviceDevicefalseThe device used to take the reading.
bloodOxygeninteger(int32)falseThe blood oxygen (spo2) measurement value.
bloodOxygenUnitBloodOxygenUnitfalsenone
heartRateinteger(int32)falseThe heart rate measurement value.
heartRateUnitHeartRateUnitfalsenone
BloodOxygenReading Model Sample
1{
2 "id": 0,
3 "readingTimestamp": "2019-08-24T14:15:22Z",
4 "manual": true,
5 "deviceTimeZoneOffset": -14400,
6 "patientTimeZoneOffset": -14400,
7 "patient": {
8 "id": 1,
9 "externalIdentifier": "1234abcd",
10 "firstName": "John",
11 "lastName": "Doe",
12 "dateOfBirth": "1980-01-01",
13 "email": "john.doe@example.com",
14 "phoneNumber": "+1234567890",
15 "archived": true,
16 "address": {
17 "lineOne": "string",
18 "lineTwo": "string",
19 "lineThree": "string",
20 "city": "string",
21 "state": "string",
22 "zipCode": "string",
23 "country": "string",
24 "note": "string"
25 },
26 "site": {
27 "id": 1,
28 "name": "string",
29 "active": true,
30 "address": {
31 "lineOne": "string",
32 "lineTwo": "string",
33 "lineThree": "string",
34 "city": "string",
35 "state": "string",
36 "zipCode": "string",
37 "country": "string",
38 "note": "string"
39 }
40 },
41 "enrolled": true,
42 "sex": "other"
43 },
44 "item": {
45 "id": 1,
46 "manufacturer": {
47 "id": 1,
48 "name": "string"
49 },
50 "name": "string",
51 "model": "string",
52 "sku": "string",
53 "orderable": true
54 },
55 "device": {
56 "id": 1,
57 "item": {
58 "id": 1,
59 "manufacturer": {
60 "id": 1,
61 "name": "string"
62 },
63 "name": "string",
64 "model": "string",
65 "sku": "string",
66 "orderable": true
67 },
68 "currentStatus": "string",
69 "used": true,
70 "currentPatient": {
71 "id": 1,
72 "externalIdentifier": "1234abcd",
73 "firstName": "John",
74 "lastName": "Doe",
75 "dateOfBirth": "1980-01-01",
76 "email": "john.doe@example.com",
77 "phoneNumber": "+1234567890",
78 "archived": true,
79 "address": {
80 "lineOne": "string",
81 "lineTwo": "string",
82 "lineThree": "string",
83 "city": "string",
84 "state": "string",
85 "zipCode": "string",
86 "country": "string",
87 "note": "string"
88 },
89 "site": {
90 "id": 1,
91 "name": "string",
92 "active": true,
93 "address": {
94 "lineOne": "string",
95 "lineTwo": "string",
96 "lineThree": "string",
97 "city": "string",
98 "state": "string",
99 "zipCode": "string",
100 "country": "string",
101 "note": "string"
102 }
103 },
104 "enrolled": true,
105 "sex": "other"
106 },
107 "site": {
108 "id": 1,
109 "name": "string",
110 "active": true,
111 "address": {
112 "lineOne": "string",
113 "lineTwo": "string",
114 "lineThree": "string",
115 "city": "string",
116 "state": "string",
117 "zipCode": "string",
118 "country": "string",
119 "note": "string"
120 }
121 },
122 "lastHealthCheck": "string",
123 "deviceIdentifiers": [
124 {
125 "type": "string",
126 "value": "string"
127 }
128 ],
129 "deviceEvents": [
130 {
131 "type": "string",
132 "eventTimestamp": "string"
133 }
134 ],
135 "externalIdentifier": "string",
136 "disabledReadings": true
137 },
138 "bloodOxygen": 0,
139 "bloodOxygenUnit": "spo2",
140 "heartRate": 0,
141 "heartRateUnit": "bpm"
142}

BloodOxygenReadingRequest

This page describes Impilo’s blood oxygen reading model.

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe id of the device that took the reading.
deviceIdentifierstringfalseThe device identifier of the device that took the reading.
patientIdinteger(int64)falseThe id of the patient that took the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
bloodOxygeninteger(int32)trueThe blood oxygen (spo2) measurement value.
heartRateinteger(int32)falseThe heart rate measurement value.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
BloodOxygenReadingRequest Model Sample
1{
2 "deviceId": 0,
3 "deviceIdentifier": "string",
4 "patientId": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "deviceTimeZoneOffset": -14400,
7 "bloodOxygen": 0,
8 "heartRate": 0,
9 "manual": true
10}

BloodOxygenUnit

Enumerated Values

NameDesciption
spo2Blood glucose unit of measurement is milligrams per deciliter.
BloodOxygenUnit Model Sample
1"spo2"

BloodPressureReading

This page describes Impilo’s blood pressure reading model.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
patientTimeZoneOffsetinteger(int32)falseThe offset of the patient’s timezone from UTC in seconds. Null if unavailable.
patientPatientfalseThe patient who took the reading.
itemItemfalseThe item used to take the reading.
deviceDevicefalseThe device used to take the reading.
systolicinteger(int32)falseThe systolic measurement value.
systolicUnitBloodPressureUnitfalsenone
diastolicinteger(int32)falseThe diastolic measurement value.
diastolicUnitBloodPressureUnitfalsenone
heartRateinteger(int32)falseThe heart rate measurement value.
heartRateUnitHeartRateUnitfalsenone
BloodPressureReading Model Sample
1{
2 "id": 0,
3 "readingTimestamp": "2019-08-24T14:15:22Z",
4 "manual": true,
5 "deviceTimeZoneOffset": -14400,
6 "patientTimeZoneOffset": -14400,
7 "patient": {
8 "id": 1,
9 "externalIdentifier": "1234abcd",
10 "firstName": "John",
11 "lastName": "Doe",
12 "dateOfBirth": "1980-01-01",
13 "email": "john.doe@example.com",
14 "phoneNumber": "+1234567890",
15 "archived": true,
16 "address": {
17 "lineOne": "string",
18 "lineTwo": "string",
19 "lineThree": "string",
20 "city": "string",
21 "state": "string",
22 "zipCode": "string",
23 "country": "string",
24 "note": "string"
25 },
26 "site": {
27 "id": 1,
28 "name": "string",
29 "active": true,
30 "address": {
31 "lineOne": "string",
32 "lineTwo": "string",
33 "lineThree": "string",
34 "city": "string",
35 "state": "string",
36 "zipCode": "string",
37 "country": "string",
38 "note": "string"
39 }
40 },
41 "enrolled": true,
42 "sex": "other"
43 },
44 "item": {
45 "id": 1,
46 "manufacturer": {
47 "id": 1,
48 "name": "string"
49 },
50 "name": "string",
51 "model": "string",
52 "sku": "string",
53 "orderable": true
54 },
55 "device": {
56 "id": 1,
57 "item": {
58 "id": 1,
59 "manufacturer": {
60 "id": 1,
61 "name": "string"
62 },
63 "name": "string",
64 "model": "string",
65 "sku": "string",
66 "orderable": true
67 },
68 "currentStatus": "string",
69 "used": true,
70 "currentPatient": {
71 "id": 1,
72 "externalIdentifier": "1234abcd",
73 "firstName": "John",
74 "lastName": "Doe",
75 "dateOfBirth": "1980-01-01",
76 "email": "john.doe@example.com",
77 "phoneNumber": "+1234567890",
78 "archived": true,
79 "address": {
80 "lineOne": "string",
81 "lineTwo": "string",
82 "lineThree": "string",
83 "city": "string",
84 "state": "string",
85 "zipCode": "string",
86 "country": "string",
87 "note": "string"
88 },
89 "site": {
90 "id": 1,
91 "name": "string",
92 "active": true,
93 "address": {
94 "lineOne": "string",
95 "lineTwo": "string",
96 "lineThree": "string",
97 "city": "string",
98 "state": "string",
99 "zipCode": "string",
100 "country": "string",
101 "note": "string"
102 }
103 },
104 "enrolled": true,
105 "sex": "other"
106 },
107 "site": {
108 "id": 1,
109 "name": "string",
110 "active": true,
111 "address": {
112 "lineOne": "string",
113 "lineTwo": "string",
114 "lineThree": "string",
115 "city": "string",
116 "state": "string",
117 "zipCode": "string",
118 "country": "string",
119 "note": "string"
120 }
121 },
122 "lastHealthCheck": "string",
123 "deviceIdentifiers": [
124 {
125 "type": "string",
126 "value": "string"
127 }
128 ],
129 "deviceEvents": [
130 {
131 "type": "string",
132 "eventTimestamp": "string"
133 }
134 ],
135 "externalIdentifier": "string",
136 "disabledReadings": true
137 },
138 "systolic": 0,
139 "systolicUnit": "mmhg",
140 "diastolic": 0,
141 "diastolicUnit": "mmhg",
142 "heartRate": 0,
143 "heartRateUnit": "bpm"
144}

BloodPressureReadingRequest

This page describes Impilo’s blood pressure reading model.

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe id of the device that took the reading.
deviceIdentifierstringfalseThe device identifier of the device that took the reading.
patientIdinteger(int64)falseThe id of the patient that took the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
systolicinteger(int32)trueThe systolic measurement value.
diastolicinteger(int32)trueThe diastolic measurement value.
heartRateinteger(int32)falseThe heart rate measurement value.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
BloodPressureReadingRequest Model Sample
1{
2 "deviceId": 0,
3 "deviceIdentifier": "string",
4 "patientId": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "deviceTimeZoneOffset": -14400,
7 "systolic": 0,
8 "diastolic": 0,
9 "heartRate": 0,
10 "manual": true
11}

BloodPressureReadingWebhook

Represents a webhook for blood pressure reading notifications.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the webhook.
typestringfalseType of the webhook event.
bloodPressureReadingBloodPressureReadingfalseThe blood pressure reading associated with the webhook event.
BloodPressureReadingWebhook Model Sample
1{
2 "id": 0,
3 "type": "string",
4 "bloodPressureReading": {
5 "id": 0,
6 "readingTimestamp": "2019-08-24T14:15:22Z",
7 "manual": true,
8 "deviceTimeZoneOffset": -14400,
9 "patientTimeZoneOffset": -14400,
10 "patient": {
11 "id": 1,
12 "externalIdentifier": "1234abcd",
13 "firstName": "John",
14 "lastName": "Doe",
15 "dateOfBirth": "1980-01-01",
16 "email": "john.doe@example.com",
17 "phoneNumber": "+1234567890",
18 "archived": true,
19 "address": {
20 "lineOne": "string",
21 "lineTwo": "string",
22 "lineThree": "string",
23 "city": "string",
24 "state": "string",
25 "zipCode": "string",
26 "country": "string",
27 "note": "string"
28 },
29 "site": {
30 "id": 1,
31 "name": "string",
32 "active": true,
33 "address": {
34 "lineOne": "string",
35 "lineTwo": "string",
36 "lineThree": "string",
37 "city": "string",
38 "state": "string",
39 "zipCode": "string",
40 "country": "string",
41 "note": "string"
42 }
43 },
44 "enrolled": true,
45 "sex": "other"
46 },
47 "item": {
48 "id": 1,
49 "manufacturer": {
50 "id": 1,
51 "name": "string"
52 },
53 "name": "string",
54 "model": "string",
55 "sku": "string",
56 "orderable": true
57 },
58 "device": {
59 "id": 1,
60 "item": {
61 "id": 1,
62 "manufacturer": {
63 "id": 1,
64 "name": "string"
65 },
66 "name": "string",
67 "model": "string",
68 "sku": "string",
69 "orderable": true
70 },
71 "currentStatus": "string",
72 "used": true,
73 "currentPatient": {
74 "id": 1,
75 "externalIdentifier": "1234abcd",
76 "firstName": "John",
77 "lastName": "Doe",
78 "dateOfBirth": "1980-01-01",
79 "email": "john.doe@example.com",
80 "phoneNumber": "+1234567890",
81 "archived": true,
82 "address": {
83 "lineOne": "string",
84 "lineTwo": "string",
85 "lineThree": "string",
86 "city": "string",
87 "state": "string",
88 "zipCode": "string",
89 "country": "string",
90 "note": "string"
91 },
92 "site": {
93 "id": 1,
94 "name": "string",
95 "active": true,
96 "address": {
97 "lineOne": "string",
98 "lineTwo": "string",
99 "lineThree": "string",
100 "city": "string",
101 "state": "string",
102 "zipCode": "string",
103 "country": "string",
104 "note": "string"
105 }
106 },
107 "enrolled": true,
108 "sex": "other"
109 },
110 "site": {
111 "id": 1,
112 "name": "string",
113 "active": true,
114 "address": {
115 "lineOne": "string",
116 "lineTwo": "string",
117 "lineThree": "string",
118 "city": "string",
119 "state": "string",
120 "zipCode": "string",
121 "country": "string",
122 "note": "string"
123 }
124 },
125 "lastHealthCheck": "string",
126 "deviceIdentifiers": [
127 {
128 "type": "string",
129 "value": "string"
130 }
131 ],
132 "deviceEvents": [
133 {
134 "type": "string",
135 "eventTimestamp": "string"
136 }
137 ],
138 "externalIdentifier": "string",
139 "disabledReadings": true
140 },
141 "systolic": 0,
142 "systolicUnit": "mmhg",
143 "diastolic": 0,
144 "diastolicUnit": "mmhg",
145 "heartRate": 0,
146 "heartRateUnit": "bpm"
147 }
148}

BloodPressureUnit

Enumerated Values

NameDesciption
mmhgPressure unit of measurement is millimeters of mercury.
BloodPressureUnit Model Sample
1"mmhg"

Customer

Properties

NameTypeRequiredDescription
idinteger(int64)falsenone
namestringfalsenone
Customer Model Sample
1{
2 "id": 0,
3 "name": "string"
4}

Device

A device is an instance of an item. Impilo creates device records for items that are serialized, i.e., items where each individual unit is identified by a serial number, IMEI, or other identifier.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the device, managed by Impilo.
itemItemfalseThe manufacturer for this item.
currentStatusstringfalseThe current status of this device.
usedbooleanfalseTrue if this device is used, false otherwise.
currentPatientPatientfalseThe patient currently in possession of this device. Null if this device is not currently with a patient.
siteSitefalseThe site to which this device is assigned.
lastHealthCheckstringfalseTimestamp for the last time Impilo received a signal from this device.
deviceIdentifiers[DeviceIdentifier]falseAn array of the device identifiers for this device.
deviceEvents[DeviceEvent]falseAn array of the device events for this device.
externalIdentifierstringfalseThe external identifier for this device.
disabledReadingsbooleanfalseTrue if readings from this device are disabled, false otherwise. If true, Impilo will not save or process readings from this device. Webhooks and alerts will not be triggered for readings taken on this device.
Device Model Sample
1{
2 "id": 1,
3 "item": {
4 "id": 1,
5 "manufacturer": {
6 "id": 1,
7 "name": "string"
8 },
9 "name": "string",
10 "model": "string",
11 "sku": "string",
12 "orderable": true
13 },
14 "currentStatus": "string",
15 "used": true,
16 "currentPatient": {
17 "id": 1,
18 "externalIdentifier": "1234abcd",
19 "firstName": "John",
20 "lastName": "Doe",
21 "dateOfBirth": "1980-01-01",
22 "email": "john.doe@example.com",
23 "phoneNumber": "+1234567890",
24 "archived": true,
25 "address": {
26 "lineOne": "string",
27 "lineTwo": "string",
28 "lineThree": "string",
29 "city": "string",
30 "state": "string",
31 "zipCode": "string",
32 "country": "string",
33 "note": "string"
34 },
35 "site": {
36 "id": 1,
37 "name": "string",
38 "active": true,
39 "address": {
40 "lineOne": "string",
41 "lineTwo": "string",
42 "lineThree": "string",
43 "city": "string",
44 "state": "string",
45 "zipCode": "string",
46 "country": "string",
47 "note": "string"
48 }
49 },
50 "enrolled": true,
51 "sex": "other"
52 },
53 "site": {
54 "id": 1,
55 "name": "string",
56 "active": true,
57 "address": {
58 "lineOne": "string",
59 "lineTwo": "string",
60 "lineThree": "string",
61 "city": "string",
62 "state": "string",
63 "zipCode": "string",
64 "country": "string",
65 "note": "string"
66 }
67 },
68 "lastHealthCheck": "string",
69 "deviceIdentifiers": [
70 {
71 "type": "string",
72 "value": "string"
73 }
74 ],
75 "deviceEvents": [
76 {
77 "type": "string",
78 "eventTimestamp": "string"
79 }
80 ],
81 "externalIdentifier": "string",
82 "disabledReadings": true
83}

DeviceAssociationWebhookPayload

The webhook payload sent when a Device is either Associated or Disassociated with a patient.

Properties

NameTypeRequiredDescription
patientPatientfalseThe Patient that the device was either associated with or disassociated from.
deviceDevicefalseThe Device that was associated to or disassociated from the provided Patient.
actionstringfalseThe type of association that was performed — either ‘associate’ or ‘disassociate’.
eventTimestampstringfalseThe timestamp of the association event.
DeviceAssociationWebhookPayload Model Sample
1{
2 "patient": {
3 "id": 1,
4 "externalIdentifier": "1234abcd",
5 "firstName": "John",
6 "lastName": "Doe",
7 "dateOfBirth": "1980-01-01",
8 "email": "john.doe@example.com",
9 "phoneNumber": "+1234567890",
10 "archived": true,
11 "address": {
12 "lineOne": "string",
13 "lineTwo": "string",
14 "lineThree": "string",
15 "city": "string",
16 "state": "string",
17 "zipCode": "string",
18 "country": "string",
19 "note": "string"
20 },
21 "site": {
22 "id": 1,
23 "name": "string",
24 "active": true,
25 "address": {
26 "lineOne": "string",
27 "lineTwo": "string",
28 "lineThree": "string",
29 "city": "string",
30 "state": "string",
31 "zipCode": "string",
32 "country": "string",
33 "note": "string"
34 }
35 },
36 "enrolled": true,
37 "sex": "other"
38 },
39 "device": {
40 "id": 1,
41 "item": {
42 "id": 1,
43 "manufacturer": {
44 "id": 1,
45 "name": "string"
46 },
47 "name": "string",
48 "model": "string",
49 "sku": "string",
50 "orderable": true
51 },
52 "currentStatus": "string",
53 "used": true,
54 "currentPatient": {
55 "id": 1,
56 "externalIdentifier": "1234abcd",
57 "firstName": "John",
58 "lastName": "Doe",
59 "dateOfBirth": "1980-01-01",
60 "email": "john.doe@example.com",
61 "phoneNumber": "+1234567890",
62 "archived": true,
63 "address": {
64 "lineOne": "string",
65 "lineTwo": "string",
66 "lineThree": "string",
67 "city": "string",
68 "state": "string",
69 "zipCode": "string",
70 "country": "string",
71 "note": "string"
72 },
73 "site": {
74 "id": 1,
75 "name": "string",
76 "active": true,
77 "address": {
78 "lineOne": "string",
79 "lineTwo": "string",
80 "lineThree": "string",
81 "city": "string",
82 "state": "string",
83 "zipCode": "string",
84 "country": "string",
85 "note": "string"
86 }
87 },
88 "enrolled": true,
89 "sex": "other"
90 },
91 "site": {
92 "id": 1,
93 "name": "string",
94 "active": true,
95 "address": {
96 "lineOne": "string",
97 "lineTwo": "string",
98 "lineThree": "string",
99 "city": "string",
100 "state": "string",
101 "zipCode": "string",
102 "country": "string",
103 "note": "string"
104 }
105 },
106 "lastHealthCheck": "string",
107 "deviceIdentifiers": [
108 {
109 "type": "string",
110 "value": "string"
111 }
112 ],
113 "deviceEvents": [
114 {
115 "type": "string",
116 "eventTimestamp": "string"
117 }
118 ],
119 "externalIdentifier": "string",
120 "disabledReadings": true
121 },
122 "action": "string",
123 "eventTimestamp": "string"
124}

DeviceEvent

A device event represents a significant activity or occurrence detected by the device. Impilo tracks these events to provide insights into device usage and operational status.

Properties

NameTypeRequiredDescription
typestringfalseThe event type for the Device Event.
eventTimestampstringfalseThe timestamp when the Device Event was created.
DeviceEvent Model Sample
1{
2 "type": "string",
3 "eventTimestamp": "string"
4}

DeviceIdentifier

A device is an instance of an item. Impilo creates device records for items that are serialized, i.e., items where each individual unit is identified by a serial number, IMEI, or other identifier.

Properties

NameTypeRequiredDescription
typestringfalseThe type of the Device Identifier.
valuestringfalseThe value of the Device Identifier, based on it’s type.
DeviceIdentifier Model Sample
1{
2 "type": "string",
3 "value": "string"
4}

DeviceIdentifierType

Enumerated Values

NameDesciption
simCardNumberUndefined
macAddressUndefined
iccidUndefined
serialUndefined
imeiUndefined
DeviceIdentifierType Model Sample
1"simCardNumber"

DeviceReferenceRequest

A request to reference a device by either its ID or Identifier.

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe ID of the device. Either this value or a Device Identifier are required to identify the Device.
deviceIdentifierstringfalseThe Identifier, such as a Serial Number, of the device. Either this value or a Device Id are required to identify the Device.
DeviceReferenceRequest Model Sample
1{
2 "deviceId": 1,
3 "deviceIdentifier": "ABC123"
4}

DeviceSort

Enumerated Values

NameDesciption
itemNameUndefined
itemModelUndefined
itemSkuUndefined
deviceIdUndefined
DeviceSort Model Sample
1"itemName"

DeviceStatus

Enumerated Values

NameDesciption
initiatedDevice initialization has been initiated.
awaitingShipmentDevice is awaiting shipment.
availableDevice is available for use.
withPatientDevice is currently with a patient.
availableAtSiteDevice is available at a site.
deliveredDevice has been delivered.
usedDevice is currently in use.
refurbishingDevice is being refurbished.
decommissionedDevice has been decommissioned.
shippedDevice has been shipped.
availableRepackedDevice is available and repacked.
returnedManufacturerDevice has been returned to the manufacturer.
packedDevice is packed and ready for shipment or use.
DeviceStatus Model Sample
1"initiated"

DeviceTransferRequest

Properties

NameTypeRequiredDescription
toCustomerIdinteger(int64)trueThe ID of the Customer to transfer the Devices to.
deviceIdentifiers[string]trueA list of strings containing the Device Identifier values to transfer.
DeviceTransferRequest Model Sample
1{
2 "toCustomerId": 0,
3 "deviceIdentifiers": [
4 "string"
5 ]
6}

DimensionUnit

Enumerated Values

NameDesciption
inInches.
cmCentimeters.
DimensionUnit Model Sample
1"in"

HeartRateReading

Impilo’s heart rate model.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the reading.
readingTimestampstring(date-time)falsenone
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
patientTimeZoneOffsetinteger(int32)falseThe offset of the patient’s timezone from UTC in seconds. Null if unavailable.
heartRateinteger(int32)falseThe heart rate measurement value.
patientPatientfalsenone
itemItemfalseAn item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.
deviceDevicefalseA device is an instance of an item. Impilo creates device records for items that are serialized, i.e., items where each individual unit is identified by a serial number, IMEI, or other identifier.
HeartRateReading Model Sample
1{
2 "id": 0,
3 "readingTimestamp": "2022-03-10T16:15:50Z",
4 "manual": true,
5 "deviceTimeZoneOffset": -14400,
6 "patientTimeZoneOffset": -14400,
7 "heartRate": 0,
8 "patient": {
9 "id": 1,
10 "externalIdentifier": "1234abcd",
11 "firstName": "John",
12 "lastName": "Doe",
13 "dateOfBirth": "1980-01-01",
14 "email": "john.doe@example.com",
15 "phoneNumber": "+1234567890",
16 "archived": true,
17 "address": {
18 "lineOne": "string",
19 "lineTwo": "string",
20 "lineThree": "string",
21 "city": "string",
22 "state": "string",
23 "zipCode": "string",
24 "country": "string",
25 "note": "string"
26 },
27 "site": {
28 "id": 1,
29 "name": "string",
30 "active": true,
31 "address": {
32 "lineOne": "string",
33 "lineTwo": "string",
34 "lineThree": "string",
35 "city": "string",
36 "state": "string",
37 "zipCode": "string",
38 "country": "string",
39 "note": "string"
40 }
41 },
42 "enrolled": true,
43 "sex": "other"
44 },
45 "item": {
46 "id": 1,
47 "manufacturer": {
48 "id": 1,
49 "name": "string"
50 },
51 "name": "string",
52 "model": "string",
53 "sku": "string",
54 "orderable": true
55 },
56 "device": {
57 "id": 1,
58 "item": {
59 "id": 1,
60 "manufacturer": {
61 "id": 1,
62 "name": "string"
63 },
64 "name": "string",
65 "model": "string",
66 "sku": "string",
67 "orderable": true
68 },
69 "currentStatus": "string",
70 "used": true,
71 "currentPatient": {
72 "id": 1,
73 "externalIdentifier": "1234abcd",
74 "firstName": "John",
75 "lastName": "Doe",
76 "dateOfBirth": "1980-01-01",
77 "email": "john.doe@example.com",
78 "phoneNumber": "+1234567890",
79 "archived": true,
80 "address": {
81 "lineOne": "string",
82 "lineTwo": "string",
83 "lineThree": "string",
84 "city": "string",
85 "state": "string",
86 "zipCode": "string",
87 "country": "string",
88 "note": "string"
89 },
90 "site": {
91 "id": 1,
92 "name": "string",
93 "active": true,
94 "address": {
95 "lineOne": "string",
96 "lineTwo": "string",
97 "lineThree": "string",
98 "city": "string",
99 "state": "string",
100 "zipCode": "string",
101 "country": "string",
102 "note": "string"
103 }
104 },
105 "enrolled": true,
106 "sex": "other"
107 },
108 "site": {
109 "id": 1,
110 "name": "string",
111 "active": true,
112 "address": {
113 "lineOne": "string",
114 "lineTwo": "string",
115 "lineThree": "string",
116 "city": "string",
117 "state": "string",
118 "zipCode": "string",
119 "country": "string",
120 "note": "string"
121 }
122 },
123 "lastHealthCheck": "string",
124 "deviceIdentifiers": [
125 {
126 "type": "string",
127 "value": "string"
128 }
129 ],
130 "deviceEvents": [
131 {
132 "type": "string",
133 "eventTimestamp": "string"
134 }
135 ],
136 "externalIdentifier": "string",
137 "disabledReadings": true
138 }
139}

HeartRateReadingRequest

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe id of the device that took the reading.
deviceIdentifierstringfalseThe device identifier of the device that took the reading.
patientIdinteger(int64)falseThe id of the patient that took the reading.
readingTimestampInstanttrueThe UTC timestamp at which the reading was taken.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
heartRateinteger(int32)falseThe heart rate measurement value.
HeartRateReadingRequest Model Sample
1{
2 "deviceId": 0,
3 "deviceIdentifier": "string",
4 "patientId": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "deviceTimeZoneOffset": -14400,
7 "manual": true,
8 "heartRate": 0
9}

HeartRateUnit

Enumerated Values

NameDesciption
bpmHeart rate unit of measurement is beats per minute.
HeartRateUnit Model Sample
1"bpm"

HeartRateVariabilityAlgorithmType

Enumerated Values

NameDesciption
sdannStandard deviation of the average NN intervals calculated over short periods.
sdnnStandard deviation of all NN intervals.
sdrrStandard deviation of the differences between adjacent NN intervals.
HeartRateVariabilityAlgorithmType Model Sample
1"sdann"

HeartRateVariabilityReading

Impilo’s heart rate variability model.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the reading.
readingTimestampstring(date-time)falsenone
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
patientTimeZoneOffsetinteger(int32)falseThe offset of the patient’s timezone from UTC in seconds. Null if unavailable.
heartRateinteger(int32)falseThe heart rate measurement value.
heartRateVariabilitynumber(double)trueThe heart rate variability value.
heartRateVariabilityDurationinteger(int64)trueThe duration over which the heart rate variability was measured, in milliseconds.
patientPatientfalsenone
itemItemfalseAn item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.
deviceDevicefalseA device is an instance of an item. Impilo creates device records for items that are serialized, i.e., items where each individual unit is identified by a serial number, IMEI, or other identifier.
heartRateVariabilityAlgorithmTypeHeartRateVariabilityAlgorithmTypefalsenone
HeartRateVariabilityReading Model Sample
1{
2 "id": 0,
3 "readingTimestamp": "2022-03-10T16:15:50Z",
4 "manual": true,
5 "deviceTimeZoneOffset": -14400,
6 "patientTimeZoneOffset": -14400,
7 "heartRate": 0,
8 "heartRateVariability": 0.1,
9 "heartRateVariabilityDuration": 0,
10 "patient": {
11 "id": 1,
12 "externalIdentifier": "1234abcd",
13 "firstName": "John",
14 "lastName": "Doe",
15 "dateOfBirth": "1980-01-01",
16 "email": "john.doe@example.com",
17 "phoneNumber": "+1234567890",
18 "archived": true,
19 "address": {
20 "lineOne": "string",
21 "lineTwo": "string",
22 "lineThree": "string",
23 "city": "string",
24 "state": "string",
25 "zipCode": "string",
26 "country": "string",
27 "note": "string"
28 },
29 "site": {
30 "id": 1,
31 "name": "string",
32 "active": true,
33 "address": {
34 "lineOne": "string",
35 "lineTwo": "string",
36 "lineThree": "string",
37 "city": "string",
38 "state": "string",
39 "zipCode": "string",
40 "country": "string",
41 "note": "string"
42 }
43 },
44 "enrolled": true,
45 "sex": "other"
46 },
47 "item": {
48 "id": 1,
49 "manufacturer": {
50 "id": 1,
51 "name": "string"
52 },
53 "name": "string",
54 "model": "string",
55 "sku": "string",
56 "orderable": true
57 },
58 "device": {
59 "id": 1,
60 "item": {
61 "id": 1,
62 "manufacturer": {
63 "id": 1,
64 "name": "string"
65 },
66 "name": "string",
67 "model": "string",
68 "sku": "string",
69 "orderable": true
70 },
71 "currentStatus": "string",
72 "used": true,
73 "currentPatient": {
74 "id": 1,
75 "externalIdentifier": "1234abcd",
76 "firstName": "John",
77 "lastName": "Doe",
78 "dateOfBirth": "1980-01-01",
79 "email": "john.doe@example.com",
80 "phoneNumber": "+1234567890",
81 "archived": true,
82 "address": {
83 "lineOne": "string",
84 "lineTwo": "string",
85 "lineThree": "string",
86 "city": "string",
87 "state": "string",
88 "zipCode": "string",
89 "country": "string",
90 "note": "string"
91 },
92 "site": {
93 "id": 1,
94 "name": "string",
95 "active": true,
96 "address": {
97 "lineOne": "string",
98 "lineTwo": "string",
99 "lineThree": "string",
100 "city": "string",
101 "state": "string",
102 "zipCode": "string",
103 "country": "string",
104 "note": "string"
105 }
106 },
107 "enrolled": true,
108 "sex": "other"
109 },
110 "site": {
111 "id": 1,
112 "name": "string",
113 "active": true,
114 "address": {
115 "lineOne": "string",
116 "lineTwo": "string",
117 "lineThree": "string",
118 "city": "string",
119 "state": "string",
120 "zipCode": "string",
121 "country": "string",
122 "note": "string"
123 }
124 },
125 "lastHealthCheck": "string",
126 "deviceIdentifiers": [
127 {
128 "type": "string",
129 "value": "string"
130 }
131 ],
132 "deviceEvents": [
133 {
134 "type": "string",
135 "eventTimestamp": "string"
136 }
137 ],
138 "externalIdentifier": "string",
139 "disabledReadings": true
140 },
141 "heartRateVariabilityAlgorithmType": "sdann"
142}

HeartRateVariabilityReadingRequest

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe id of the device that took the reading.
deviceIdentifierstringfalseThe device identifier of the device that took the reading.
patientIdinteger(int64)falseThe id of the patient that took the reading.
readingTimestampInstanttrueThe UTC timestamp at which the reading was taken.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
heartRateinteger(int32)falseThe heart rate measurement value.
heartRateVariabilitynumber(double)trueThe heart rate variability value.
heartRateVariabilityDurationinteger(int64)trueThe duration over which the heart rate variability was measured, in milliseconds.
heartRateVariabilityAlgorithmTypeHeartRateVariabilityAlgorithmTypefalsenone
HeartRateVariabilityReadingRequest Model Sample
1{
2 "deviceId": 0,
3 "deviceIdentifier": "string",
4 "patientId": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "deviceTimeZoneOffset": -14400,
7 "manual": true,
8 "heartRate": 0,
9 "heartRateVariability": 0.1,
10 "heartRateVariabilityDuration": 0,
11 "heartRateVariabilityAlgorithmType": "sdann"
12}

Instant

Instant Model Sample
1"2022-03-10T16:15:50Z"

InventoryRecord

Properties

NameTypeRequiredDescription
itemItemfalseAn item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.
newCountinteger(int32)falsenone
usedCountinteger(int32)falsenone
siteSitefalseA site is a customer-managed location that interacts with Impilo’s services. Patient may be associated with a site, and a customer may order items and hold inventory at a site.
InventoryRecord Model Sample
1{
2 "item": {
3 "id": 1,
4 "manufacturer": {
5 "id": 1,
6 "name": "string"
7 },
8 "name": "string",
9 "model": "string",
10 "sku": "string",
11 "orderable": true
12 },
13 "newCount": 0,
14 "usedCount": 0,
15 "site": {
16 "id": 1,
17 "name": "string",
18 "active": true,
19 "address": {
20 "lineOne": "string",
21 "lineTwo": "string",
22 "lineThree": "string",
23 "city": "string",
24 "state": "string",
25 "zipCode": "string",
26 "country": "string",
27 "note": "string"
28 }
29 }
30}

InventorySummaryRecord

Properties

NameTypeRequiredDescription
itemItemfalseAn item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.
newCountinteger(int32)falsenone
usedCountinteger(int32)falsenone
InventorySummaryRecord Model Sample
1{
2 "item": {
3 "id": 1,
4 "manufacturer": {
5 "id": 1,
6 "name": "string"
7 },
8 "name": "string",
9 "model": "string",
10 "sku": "string",
11 "orderable": true
12 },
13 "newCount": 0,
14 "usedCount": 0
15}

Item

An item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the item, managed by Impilo.
manufacturerManufacturerfalseThe manufacturer for this item.
namestringfalseThe name for this item.
modelstringfalseThe manufacturer-assigned model for this item.
skustringfalseThe Impilo-assigned SKU for this item.
orderablebooleanfalseWhether an Item is able to be ordered.
Item Model Sample
1{
2 "id": 1,
3 "manufacturer": {
4 "id": 1,
5 "name": "string"
6 },
7 "name": "string",
8 "model": "string",
9 "sku": "string",
10 "orderable": true
11}

ItemClass

Enumerated Values

NameDesciption
wearableItems related to wearable devices.
glucoseItems related to glucose monitoring.
miscellaneousMiscellaneous items.
circulatoryItems related to the circulatory system.
packagingItems related to packaging.
labItems related to laboratory equipment.
bodyItems related to the body.
familyPlanningItems related to family planning.
cpapItems related to Continuous Positive Airway Pressure (CPAP).
connectivityItems related to connectivity.
generalHealthItems related to general health.
serviceService-related items.
thermometerItems related to thermometers.
powerItems related to power supply.
respiratoryItems related to the respiratory system.
infoInformational items.
ItemClass Model Sample
1"wearable"

ItemDetailed

An item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog. Detailed Item views are only seen in the Item list and fetch endpoints — otherwise, a lighter version of an Item is returned with other non-Item endpoints.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the item, managed by Impilo.
manufacturerManufacturerfalseThe manufacturer for this item.
namestringfalseThe name for this item.
modelstringfalseThe manufacturer-assigned model for this item.
skustringfalseThe Impilo-assigned SKU for this item.
orderablebooleanfalseWhether an Item is able to be ordered.
deviceIdentifierTypeDeviceIdentifierTypefalsenone
itemClassItemClassfalsenone
itemClassTypestringfalseThe Class Type associated with this item.
sizeItemSizefalsenone
dimensionsItemDimensionsfalseThe physical dimensions of this item.
readingTypeReadingTypefalsenone
ItemDetailed Model Sample
1{
2 "id": 1,
3 "manufacturer": {
4 "id": 1,
5 "name": "string"
6 },
7 "name": "string",
8 "model": "string",
9 "sku": "string",
10 "orderable": true,
11 "deviceIdentifierType": "simCardNumber",
12 "itemClass": "wearable",
13 "itemClassType": "string",
14 "size": "standard",
15 "dimensions": {
16 "length": 0.1,
17 "width": 0.1,
18 "height": 0.1,
19 "unit": "in"
20 },
21 "readingType": "bloodPressure"
22}

ItemDimensions

The length, width, height, and units of distance for the physical body of the Item.

Properties

NameTypeRequiredDescription
lengthnumber(double)falseThe length of the Item.
widthnumber(double)falseThe width of the Item.
heightnumber(double)falseThe height of the Item.
unitDimensionUnitfalsenone
ItemDimensions Model Sample
1{
2 "length": 0.1,
3 "width": 0.1,
4 "height": 0.1,
5 "unit": "in"
6}

ItemRequest

An ItemRequest object consists of a name (required), a model, and (if applicable) a deviceIdentifierType that is being requested to be created by a Manufacturer.

Device Identifier Types must match the DeviceIdentifierType model.

Properties

NameTypeRequiredDescription
namestringtrueThe name for this item.
modelstringfalseThe manufacturer-assigned model for this item.
deviceIdentifierTypeDeviceIdentifierTypefalsenone
ItemRequest Model Sample
1{
2 "name": "string",
3 "model": "string",
4 "deviceIdentifierType": "simCardNumber"
5}

ItemSize

Enumerated Values

NameDesciption
standardStandard sized item.
smallSmall sized item.
largeLarge sized item.
extraLargeExtra large sized item.
mediumMedium sized item.
ItemSize Model Sample
1"standard"

ItemSort

Enumerated Values

NameDesciption
itemIdUndefined
itemNameUndefined
itemModelUndefined
itemSkuUndefined
ItemSort Model Sample
1"itemId"

ItemTransfer

Properties

NameTypeRequiredDescription
itemItemtrueThe Item being requested to transfer. Only the ID of the item is required.
countinteger(int32)trueThe number of Items being requested for transfer.
ItemTransfer Model Sample
1{
2 "item": {
3 "id": 1,
4 "manufacturer": {
5 "id": 1,
6 "name": "string"
7 },
8 "name": "string",
9 "model": "string",
10 "sku": "string",
11 "orderable": true
12 },
13 "count": 0
14}

ItemTransferRequest

Properties

NameTypeRequiredDescription
toCustomerIdinteger(int64)trueThe ID of the Customer to transfer the Devices to.
transfers[ItemTransfer]trueA list of ItemTransfer objects containing the Item IDs and quantities to transfer.
ItemTransferRequest Model Sample
1{
2 "toCustomerId": 0,
3 "transfers": [
4 {
5 "item": {
6 "id": 1,
7 "manufacturer": {
8 "id": 1,
9 "name": "string"
10 },
11 "name": "string",
12 "model": "string",
13 "sku": "string",
14 "orderable": true
15 },
16 "count": 0
17 }
18 ]
19}

Kit

A kit is a named collection of items that can be ordered as one unit.

Properties

NameTypeRequiredDescription
idinteger(int64)falsenone
namestringfalseThe name of the kit.
archivedbooleanfalseTrue if the kit is archived, false otherwise.
kitItems[KitItem]falseAn array of kit items.
Kit Model Sample
1{
2 "id": 0,
3 "name": "string",
4 "archived": true,
5 "kitItems": [
6 {
7 "item": {
8 "id": 1,
9 "manufacturer": {
10 "id": 1,
11 "name": "string"
12 },
13 "name": "string",
14 "model": "string",
15 "sku": "string",
16 "orderable": true
17 },
18 "count": 0
19 }
20 ]
21}

KitItem

Properties

NameTypeRequiredDescription
itemItemfalseAn item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.
countinteger(int32)falsenone
KitItem Model Sample
1{
2 "item": {
3 "id": 1,
4 "manufacturer": {
5 "id": 1,
6 "name": "string"
7 },
8 "name": "string",
9 "model": "string",
10 "sku": "string",
11 "orderable": true
12 },
13 "count": 0
14}

LocalDate

LocalDate Model Sample
1"2022-03-10"

Manufacturer

A manufacturer is a supplier of an item. Every item has exactly one manufacturer.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the manufacturer, managed by Impilo.
namestringfalseThe name of the manufacturer.
Manufacturer Model Sample
1{
2 "id": 1,
3 "name": "string"
4}

Order

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the order
externalOrderIds[string]falseAn array of order ids specified by the client
patientPatientfalseThe patient receiving the order. Exactly one of patient or site must be not null.
siteSitefalseThe site receiving the order. Exactly one of patient or site must be not null.
currentStatusstringfalseThe current status of the order
orderItems[OrderItem]falseArray of items on the order. At least one of orderItems or orderKits must be not null.
orderKits[OrderKit]falseArray of order kits on the order. At least one of orderItems or orderKits must be not null.
orderEvents[OrderEvent]falseArray of order events. These are the status updates for the order.
trackingNumbers[TrackingNumber]falseArray of tracking numbers for the order.
devices[Device]falseThe order item devices
packedKits[PackedKit]falseThe kits packed in the order
shippingOptionShippingOptionfalsenone

currentStatus Enumerated Values

The current status of the order

NameDesciption
reconfirmAddressCustomer needs to reconfirm their address.
unableToFulfillOrder cannot be fulfilled due to current limitations or issues.
orderPlacedOrder has been successfully placed and is in the system.
shippedOrder has been shipped to the recipient.
onHoldOrder is on hold, possibly due to inventory or internal reviews.
unsuccessfulDeliveryDelivery of the order was attempted but unsuccessful.
awaitingShipmentOrder is ready to be shipped but is waiting for the next shipment cycle.
returnIssuedA return process has been initiated for the order.
pendingInventoryOrder is waiting for inventory to become available before it can be fulfilled.
voidedOrder has been canceled and is no longer valid.
deliveredOrder has been successfully delivered to the recipient.
pendingAdditionalInformationOrder is pending as additional information is required from the recipient.
Order Model Sample
1{
2 "id": 0,
3 "externalOrderIds": [
4 "string"
5 ],
6 "patient": {
7 "id": 1,
8 "externalIdentifier": "1234abcd",
9 "firstName": "John",
10 "lastName": "Doe",
11 "dateOfBirth": "1980-01-01",
12 "email": "john.doe@example.com",
13 "phoneNumber": "+1234567890",
14 "archived": true,
15 "address": {
16 "lineOne": "string",
17 "lineTwo": "string",
18 "lineThree": "string",
19 "city": "string",
20 "state": "string",
21 "zipCode": "string",
22 "country": "string",
23 "note": "string"
24 },
25 "site": {
26 "id": 1,
27 "name": "string",
28 "active": true,
29 "address": {
30 "lineOne": "string",
31 "lineTwo": "string",
32 "lineThree": "string",
33 "city": "string",
34 "state": "string",
35 "zipCode": "string",
36 "country": "string",
37 "note": "string"
38 }
39 },
40 "enrolled": true,
41 "sex": "other"
42 },
43 "site": {
44 "id": 1,
45 "name": "string",
46 "active": true,
47 "address": {
48 "lineOne": "string",
49 "lineTwo": "string",
50 "lineThree": "string",
51 "city": "string",
52 "state": "string",
53 "zipCode": "string",
54 "country": "string",
55 "note": "string"
56 }
57 },
58 "currentStatus": "reconfirmAddress",
59 "orderItems": [
60 {
61 "item": {
62 "id": 1,
63 "manufacturer": {
64 "id": 1,
65 "name": "string"
66 },
67 "name": "string",
68 "model": "string",
69 "sku": "string",
70 "orderable": true
71 },
72 "count": 0
73 }
74 ],
75 "orderKits": [
76 {
77 "kit": {
78 "id": 0,
79 "name": "string",
80 "archived": true,
81 "kitItems": [
82 {
83 "item": {
84 "id": 1,
85 "manufacturer": {
86 "id": 1,
87 "name": "string"
88 },
89 "name": "string",
90 "model": "string",
91 "sku": "string",
92 "orderable": true
93 },
94 "count": 0
95 }
96 ]
97 },
98 "count": 0
99 }
100 ],
101 "orderEvents": [
102 {
103 "name": "string",
104 "eventTimestamp": "string"
105 }
106 ],
107 "trackingNumbers": [
108 {
109 "carrier": "string",
110 "value": "string"
111 }
112 ],
113 "devices": [
114 {
115 "id": 1,
116 "item": {
117 "id": 1,
118 "manufacturer": {
119 "id": 1,
120 "name": "string"
121 },
122 "name": "string",
123 "model": "string",
124 "sku": "string",
125 "orderable": true
126 },
127 "currentStatus": "string",
128 "used": true,
129 "currentPatient": {
130 "id": 1,
131 "externalIdentifier": "1234abcd",
132 "firstName": "John",
133 "lastName": "Doe",
134 "dateOfBirth": "1980-01-01",
135 "email": "john.doe@example.com",
136 "phoneNumber": "+1234567890",
137 "archived": true,
138 "address": {
139 "lineOne": "string",
140 "lineTwo": "string",
141 "lineThree": "string",
142 "city": "string",
143 "state": "string",
144 "zipCode": "string",
145 "country": "string",
146 "note": "string"
147 },
148 "site": {
149 "id": 1,
150 "name": "string",
151 "active": true,
152 "address": {
153 "lineOne": "string",
154 "lineTwo": "string",
155 "lineThree": "string",
156 "city": "string",
157 "state": "string",
158 "zipCode": "string",
159 "country": "string",
160 "note": "string"
161 }
162 },
163 "enrolled": true,
164 "sex": "other"
165 },
166 "site": {
167 "id": 1,
168 "name": "string",
169 "active": true,
170 "address": {
171 "lineOne": "string",
172 "lineTwo": "string",
173 "lineThree": "string",
174 "city": "string",
175 "state": "string",
176 "zipCode": "string",
177 "country": "string",
178 "note": "string"
179 }
180 },
181 "lastHealthCheck": "string",
182 "deviceIdentifiers": [
183 {
184 "type": "string",
185 "value": "string"
186 }
187 ],
188 "deviceEvents": [
189 {
190 "type": "string",
191 "eventTimestamp": "string"
192 }
193 ],
194 "externalIdentifier": "string",
195 "disabledReadings": true
196 }
197 ],
198 "packedKits": [
199 {
200 "kit": {
201 "id": 0,
202 "name": "string",
203 "archived": true,
204 "kitItems": [
205 {
206 "item": {
207 "id": 1,
208 "manufacturer": {
209 "id": 1,
210 "name": "string"
211 },
212 "name": "string",
213 "model": "string",
214 "sku": "string",
215 "orderable": true
216 },
217 "count": 0
218 }
219 ]
220 },
221 "devices": [
222 {
223 "id": 1,
224 "item": {
225 "id": 1,
226 "manufacturer": {
227 "id": 1,
228 "name": "string"
229 },
230 "name": "string",
231 "model": "string",
232 "sku": "string",
233 "orderable": true
234 },
235 "currentStatus": "string",
236 "used": true,
237 "currentPatient": {
238 "id": 1,
239 "externalIdentifier": "1234abcd",
240 "firstName": "John",
241 "lastName": "Doe",
242 "dateOfBirth": "1980-01-01",
243 "email": "john.doe@example.com",
244 "phoneNumber": "+1234567890",
245 "archived": true,
246 "address": {
247 "lineOne": "string",
248 "lineTwo": "string",
249 "lineThree": "string",
250 "city": "string",
251 "state": "string",
252 "zipCode": "string",
253 "country": "string",
254 "note": "string"
255 },
256 "site": {
257 "id": 1,
258 "name": "string",
259 "active": true,
260 "address": {
261 "lineOne": "string",
262 "lineTwo": "string",
263 "lineThree": "string",
264 "city": "string",
265 "state": "string",
266 "zipCode": "string",
267 "country": "string",
268 "note": "string"
269 }
270 },
271 "enrolled": true,
272 "sex": "other"
273 },
274 "site": {
275 "id": 1,
276 "name": "string",
277 "active": true,
278 "address": {
279 "lineOne": "string",
280 "lineTwo": "string",
281 "lineThree": "string",
282 "city": "string",
283 "state": "string",
284 "zipCode": "string",
285 "country": "string",
286 "note": "string"
287 }
288 },
289 "lastHealthCheck": "string",
290 "deviceIdentifiers": [
291 {
292 "type": "string",
293 "value": "string"
294 }
295 ],
296 "deviceEvents": [
297 {
298 "type": "string",
299 "eventTimestamp": "string"
300 }
301 ],
302 "externalIdentifier": "string",
303 "disabledReadings": true
304 }
305 ]
306 }
307 ],
308 "shippingOption": "standard"
309}

OrderEvent

Properties

NameTypeRequiredDescription
namestringfalsenone
eventTimestampstringfalsenone
OrderEvent Model Sample
1{
2 "name": "string",
3 "eventTimestamp": "string"
4}

OrderItem

Properties

NameTypeRequiredDescription
itemItemfalseAn item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.
countinteger(int32)falsenone
OrderItem Model Sample
1{
2 "item": {
3 "id": 1,
4 "manufacturer": {
5 "id": 1,
6 "name": "string"
7 },
8 "name": "string",
9 "model": "string",
10 "sku": "string",
11 "orderable": true
12 },
13 "count": 0
14}

OrderKit

Properties

NameTypeRequiredDescription
kitKitfalseA kit is a named collection of items that can be ordered as one unit.
countinteger(int32)falsenone
OrderKit Model Sample
1{
2 "kit": {
3 "id": 0,
4 "name": "string",
5 "archived": true,
6 "kitItems": [
7 {
8 "item": {
9 "id": 1,
10 "manufacturer": {
11 "id": 1,
12 "name": "string"
13 },
14 "name": "string",
15 "model": "string",
16 "sku": "string",
17 "orderable": true
18 },
19 "count": 0
20 }
21 ]
22 },
23 "count": 0
24}

PackedKit

Properties

NameTypeRequiredDescription
kitKitfalseA kit is a named collection of items that can be ordered as one unit.
devices[Device]false[A device is an instance of an item. Impilo creates device records for items that are serialized, i.e., items where each individual unit is identified by a serial number, IMEI, or other identifier.]
PackedKit Model Sample
1{
2 "kit": {
3 "id": 0,
4 "name": "string",
5 "archived": true,
6 "kitItems": [
7 {
8 "item": {
9 "id": 1,
10 "manufacturer": {
11 "id": 1,
12 "name": "string"
13 },
14 "name": "string",
15 "model": "string",
16 "sku": "string",
17 "orderable": true
18 },
19 "count": 0
20 }
21 ]
22 },
23 "devices": [
24 {
25 "id": 1,
26 "item": {
27 "id": 1,
28 "manufacturer": {
29 "id": 1,
30 "name": "string"
31 },
32 "name": "string",
33 "model": "string",
34 "sku": "string",
35 "orderable": true
36 },
37 "currentStatus": "string",
38 "used": true,
39 "currentPatient": {
40 "id": 1,
41 "externalIdentifier": "1234abcd",
42 "firstName": "John",
43 "lastName": "Doe",
44 "dateOfBirth": "1980-01-01",
45 "email": "john.doe@example.com",
46 "phoneNumber": "+1234567890",
47 "archived": true,
48 "address": {
49 "lineOne": "string",
50 "lineTwo": "string",
51 "lineThree": "string",
52 "city": "string",
53 "state": "string",
54 "zipCode": "string",
55 "country": "string",
56 "note": "string"
57 },
58 "site": {
59 "id": 1,
60 "name": "string",
61 "active": true,
62 "address": {
63 "lineOne": "string",
64 "lineTwo": "string",
65 "lineThree": "string",
66 "city": "string",
67 "state": "string",
68 "zipCode": "string",
69 "country": "string",
70 "note": "string"
71 }
72 },
73 "enrolled": true,
74 "sex": "other"
75 },
76 "site": {
77 "id": 1,
78 "name": "string",
79 "active": true,
80 "address": {
81 "lineOne": "string",
82 "lineTwo": "string",
83 "lineThree": "string",
84 "city": "string",
85 "state": "string",
86 "zipCode": "string",
87 "country": "string",
88 "note": "string"
89 }
90 },
91 "lastHealthCheck": "string",
92 "deviceIdentifiers": [
93 {
94 "type": "string",
95 "value": "string"
96 }
97 ],
98 "deviceEvents": [
99 {
100 "type": "string",
101 "eventTimestamp": "string"
102 }
103 ],
104 "externalIdentifier": "string",
105 "disabledReadings": true
106 }
107 ]
108}

Page

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[any]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
Page Model Sample
1{
2 "content": [
3 null
4 ],
5 "page": 0,
6 "size": 0,
7 "total": 0,
8 "first": true,
9 "last": true
10}

PageBloodGlucoseReading

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[BloodGlucoseReading]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageBloodGlucoseReading Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "readingTimestamp": "2019-08-24T14:15:22Z",
6 "manual": true,
7 "deviceTimeZoneOffset": -14400,
8 "patientTimeZoneOffset": -14400,
9 "patient": {
10 "id": 1,
11 "externalIdentifier": "1234abcd",
12 "firstName": "John",
13 "lastName": "Doe",
14 "dateOfBirth": "1980-01-01",
15 "email": "john.doe@example.com",
16 "phoneNumber": "+1234567890",
17 "archived": true,
18 "address": {
19 "lineOne": "string",
20 "lineTwo": "string",
21 "lineThree": "string",
22 "city": "string",
23 "state": "string",
24 "zipCode": "string",
25 "country": "string",
26 "note": "string"
27 },
28 "site": {
29 "id": 1,
30 "name": "string",
31 "active": true,
32 "address": {
33 "lineOne": "string",
34 "lineTwo": "string",
35 "lineThree": "string",
36 "city": "string",
37 "state": "string",
38 "zipCode": "string",
39 "country": "string",
40 "note": "string"
41 }
42 },
43 "enrolled": true,
44 "sex": "other"
45 },
46 "item": {
47 "id": 1,
48 "manufacturer": {
49 "id": 1,
50 "name": "string"
51 },
52 "name": "string",
53 "model": "string",
54 "sku": "string",
55 "orderable": true
56 },
57 "device": {
58 "id": 1,
59 "item": {
60 "id": 1,
61 "manufacturer": {
62 "id": 1,
63 "name": "string"
64 },
65 "name": "string",
66 "model": "string",
67 "sku": "string",
68 "orderable": true
69 },
70 "currentStatus": "string",
71 "used": true,
72 "currentPatient": {
73 "id": 1,
74 "externalIdentifier": "1234abcd",
75 "firstName": "John",
76 "lastName": "Doe",
77 "dateOfBirth": "1980-01-01",
78 "email": "john.doe@example.com",
79 "phoneNumber": "+1234567890",
80 "archived": true,
81 "address": {
82 "lineOne": "string",
83 "lineTwo": "string",
84 "lineThree": "string",
85 "city": "string",
86 "state": "string",
87 "zipCode": "string",
88 "country": "string",
89 "note": "string"
90 },
91 "site": {
92 "id": 1,
93 "name": "string",
94 "active": true,
95 "address": {
96 "lineOne": "string",
97 "lineTwo": "string",
98 "lineThree": "string",
99 "city": "string",
100 "state": "string",
101 "zipCode": "string",
102 "country": "string",
103 "note": "string"
104 }
105 },
106 "enrolled": true,
107 "sex": "other"
108 },
109 "site": {
110 "id": 1,
111 "name": "string",
112 "active": true,
113 "address": {
114 "lineOne": "string",
115 "lineTwo": "string",
116 "lineThree": "string",
117 "city": "string",
118 "state": "string",
119 "zipCode": "string",
120 "country": "string",
121 "note": "string"
122 }
123 },
124 "lastHealthCheck": "string",
125 "deviceIdentifiers": [
126 {
127 "type": "string",
128 "value": "string"
129 }
130 ],
131 "deviceEvents": [
132 {
133 "type": "string",
134 "eventTimestamp": "string"
135 }
136 ],
137 "externalIdentifier": "string",
138 "disabledReadings": true
139 },
140 "glucose": 0,
141 "glucoseUnit": "mgdl",
142 "beforeMeal": true,
143 "afterMeal": true
144 }
145 ],
146 "page": 0,
147 "size": 0,
148 "total": 0,
149 "first": true,
150 "last": true
151}

PageBloodOxygenReading

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[BloodOxygenReading]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageBloodOxygenReading Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "readingTimestamp": "2019-08-24T14:15:22Z",
6 "manual": true,
7 "deviceTimeZoneOffset": -14400,
8 "patientTimeZoneOffset": -14400,
9 "patient": {
10 "id": 1,
11 "externalIdentifier": "1234abcd",
12 "firstName": "John",
13 "lastName": "Doe",
14 "dateOfBirth": "1980-01-01",
15 "email": "john.doe@example.com",
16 "phoneNumber": "+1234567890",
17 "archived": true,
18 "address": {
19 "lineOne": "string",
20 "lineTwo": "string",
21 "lineThree": "string",
22 "city": "string",
23 "state": "string",
24 "zipCode": "string",
25 "country": "string",
26 "note": "string"
27 },
28 "site": {
29 "id": 1,
30 "name": "string",
31 "active": true,
32 "address": {
33 "lineOne": "string",
34 "lineTwo": "string",
35 "lineThree": "string",
36 "city": "string",
37 "state": "string",
38 "zipCode": "string",
39 "country": "string",
40 "note": "string"
41 }
42 },
43 "enrolled": true,
44 "sex": "other"
45 },
46 "item": {
47 "id": 1,
48 "manufacturer": {
49 "id": 1,
50 "name": "string"
51 },
52 "name": "string",
53 "model": "string",
54 "sku": "string",
55 "orderable": true
56 },
57 "device": {
58 "id": 1,
59 "item": {
60 "id": 1,
61 "manufacturer": {
62 "id": 1,
63 "name": "string"
64 },
65 "name": "string",
66 "model": "string",
67 "sku": "string",
68 "orderable": true
69 },
70 "currentStatus": "string",
71 "used": true,
72 "currentPatient": {
73 "id": 1,
74 "externalIdentifier": "1234abcd",
75 "firstName": "John",
76 "lastName": "Doe",
77 "dateOfBirth": "1980-01-01",
78 "email": "john.doe@example.com",
79 "phoneNumber": "+1234567890",
80 "archived": true,
81 "address": {
82 "lineOne": "string",
83 "lineTwo": "string",
84 "lineThree": "string",
85 "city": "string",
86 "state": "string",
87 "zipCode": "string",
88 "country": "string",
89 "note": "string"
90 },
91 "site": {
92 "id": 1,
93 "name": "string",
94 "active": true,
95 "address": {
96 "lineOne": "string",
97 "lineTwo": "string",
98 "lineThree": "string",
99 "city": "string",
100 "state": "string",
101 "zipCode": "string",
102 "country": "string",
103 "note": "string"
104 }
105 },
106 "enrolled": true,
107 "sex": "other"
108 },
109 "site": {
110 "id": 1,
111 "name": "string",
112 "active": true,
113 "address": {
114 "lineOne": "string",
115 "lineTwo": "string",
116 "lineThree": "string",
117 "city": "string",
118 "state": "string",
119 "zipCode": "string",
120 "country": "string",
121 "note": "string"
122 }
123 },
124 "lastHealthCheck": "string",
125 "deviceIdentifiers": [
126 {
127 "type": "string",
128 "value": "string"
129 }
130 ],
131 "deviceEvents": [
132 {
133 "type": "string",
134 "eventTimestamp": "string"
135 }
136 ],
137 "externalIdentifier": "string",
138 "disabledReadings": true
139 },
140 "bloodOxygen": 0,
141 "bloodOxygenUnit": "spo2",
142 "heartRate": 0,
143 "heartRateUnit": "bpm"
144 }
145 ],
146 "page": 0,
147 "size": 0,
148 "total": 0,
149 "first": true,
150 "last": true
151}

PageBloodPressureReading

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[BloodPressureReading]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageBloodPressureReading Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "readingTimestamp": "2019-08-24T14:15:22Z",
6 "manual": true,
7 "deviceTimeZoneOffset": -14400,
8 "patientTimeZoneOffset": -14400,
9 "patient": {
10 "id": 1,
11 "externalIdentifier": "1234abcd",
12 "firstName": "John",
13 "lastName": "Doe",
14 "dateOfBirth": "1980-01-01",
15 "email": "john.doe@example.com",
16 "phoneNumber": "+1234567890",
17 "archived": true,
18 "address": {
19 "lineOne": "string",
20 "lineTwo": "string",
21 "lineThree": "string",
22 "city": "string",
23 "state": "string",
24 "zipCode": "string",
25 "country": "string",
26 "note": "string"
27 },
28 "site": {
29 "id": 1,
30 "name": "string",
31 "active": true,
32 "address": {
33 "lineOne": "string",
34 "lineTwo": "string",
35 "lineThree": "string",
36 "city": "string",
37 "state": "string",
38 "zipCode": "string",
39 "country": "string",
40 "note": "string"
41 }
42 },
43 "enrolled": true,
44 "sex": "other"
45 },
46 "item": {
47 "id": 1,
48 "manufacturer": {
49 "id": 1,
50 "name": "string"
51 },
52 "name": "string",
53 "model": "string",
54 "sku": "string",
55 "orderable": true
56 },
57 "device": {
58 "id": 1,
59 "item": {
60 "id": 1,
61 "manufacturer": {
62 "id": 1,
63 "name": "string"
64 },
65 "name": "string",
66 "model": "string",
67 "sku": "string",
68 "orderable": true
69 },
70 "currentStatus": "string",
71 "used": true,
72 "currentPatient": {
73 "id": 1,
74 "externalIdentifier": "1234abcd",
75 "firstName": "John",
76 "lastName": "Doe",
77 "dateOfBirth": "1980-01-01",
78 "email": "john.doe@example.com",
79 "phoneNumber": "+1234567890",
80 "archived": true,
81 "address": {
82 "lineOne": "string",
83 "lineTwo": "string",
84 "lineThree": "string",
85 "city": "string",
86 "state": "string",
87 "zipCode": "string",
88 "country": "string",
89 "note": "string"
90 },
91 "site": {
92 "id": 1,
93 "name": "string",
94 "active": true,
95 "address": {
96 "lineOne": "string",
97 "lineTwo": "string",
98 "lineThree": "string",
99 "city": "string",
100 "state": "string",
101 "zipCode": "string",
102 "country": "string",
103 "note": "string"
104 }
105 },
106 "enrolled": true,
107 "sex": "other"
108 },
109 "site": {
110 "id": 1,
111 "name": "string",
112 "active": true,
113 "address": {
114 "lineOne": "string",
115 "lineTwo": "string",
116 "lineThree": "string",
117 "city": "string",
118 "state": "string",
119 "zipCode": "string",
120 "country": "string",
121 "note": "string"
122 }
123 },
124 "lastHealthCheck": "string",
125 "deviceIdentifiers": [
126 {
127 "type": "string",
128 "value": "string"
129 }
130 ],
131 "deviceEvents": [
132 {
133 "type": "string",
134 "eventTimestamp": "string"
135 }
136 ],
137 "externalIdentifier": "string",
138 "disabledReadings": true
139 },
140 "systolic": 0,
141 "systolicUnit": "mmhg",
142 "diastolic": 0,
143 "diastolicUnit": "mmhg",
144 "heartRate": 0,
145 "heartRateUnit": "bpm"
146 }
147 ],
148 "page": 0,
149 "size": 0,
150 "total": 0,
151 "first": true,
152 "last": true
153}

PageDevice

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[Device]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageDevice Model Sample
1{
2 "content": [
3 {
4 "id": 1,
5 "item": {
6 "id": 1,
7 "manufacturer": {
8 "id": 1,
9 "name": "string"
10 },
11 "name": "string",
12 "model": "string",
13 "sku": "string",
14 "orderable": true
15 },
16 "currentStatus": "string",
17 "used": true,
18 "currentPatient": {
19 "id": 1,
20 "externalIdentifier": "1234abcd",
21 "firstName": "John",
22 "lastName": "Doe",
23 "dateOfBirth": "1980-01-01",
24 "email": "john.doe@example.com",
25 "phoneNumber": "+1234567890",
26 "archived": true,
27 "address": {
28 "lineOne": "string",
29 "lineTwo": "string",
30 "lineThree": "string",
31 "city": "string",
32 "state": "string",
33 "zipCode": "string",
34 "country": "string",
35 "note": "string"
36 },
37 "site": {
38 "id": 1,
39 "name": "string",
40 "active": true,
41 "address": {
42 "lineOne": "string",
43 "lineTwo": "string",
44 "lineThree": "string",
45 "city": "string",
46 "state": "string",
47 "zipCode": "string",
48 "country": "string",
49 "note": "string"
50 }
51 },
52 "enrolled": true,
53 "sex": "other"
54 },
55 "site": {
56 "id": 1,
57 "name": "string",
58 "active": true,
59 "address": {
60 "lineOne": "string",
61 "lineTwo": "string",
62 "lineThree": "string",
63 "city": "string",
64 "state": "string",
65 "zipCode": "string",
66 "country": "string",
67 "note": "string"
68 }
69 },
70 "lastHealthCheck": "string",
71 "deviceIdentifiers": [
72 {
73 "type": "string",
74 "value": "string"
75 }
76 ],
77 "deviceEvents": [
78 {
79 "type": "string",
80 "eventTimestamp": "string"
81 }
82 ],
83 "externalIdentifier": "string",
84 "disabledReadings": true
85 }
86 ],
87 "page": 0,
88 "size": 0,
89 "total": 0,
90 "first": true,
91 "last": true
92}

PageHeartRateReading

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[HeartRateReading]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageHeartRateReading Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "manual": true,
7 "deviceTimeZoneOffset": -14400,
8 "patientTimeZoneOffset": -14400,
9 "heartRate": 0,
10 "patient": {
11 "id": 1,
12 "externalIdentifier": "1234abcd",
13 "firstName": "John",
14 "lastName": "Doe",
15 "dateOfBirth": "1980-01-01",
16 "email": "john.doe@example.com",
17 "phoneNumber": "+1234567890",
18 "archived": true,
19 "address": {
20 "lineOne": "string",
21 "lineTwo": "string",
22 "lineThree": "string",
23 "city": "string",
24 "state": "string",
25 "zipCode": "string",
26 "country": "string",
27 "note": "string"
28 },
29 "site": {
30 "id": 1,
31 "name": "string",
32 "active": true,
33 "address": {
34 "lineOne": "string",
35 "lineTwo": "string",
36 "lineThree": "string",
37 "city": "string",
38 "state": "string",
39 "zipCode": "string",
40 "country": "string",
41 "note": "string"
42 }
43 },
44 "enrolled": true,
45 "sex": "other"
46 },
47 "item": {
48 "id": 1,
49 "manufacturer": {
50 "id": 1,
51 "name": "string"
52 },
53 "name": "string",
54 "model": "string",
55 "sku": "string",
56 "orderable": true
57 },
58 "device": {
59 "id": 1,
60 "item": {
61 "id": 1,
62 "manufacturer": {
63 "id": 1,
64 "name": "string"
65 },
66 "name": "string",
67 "model": "string",
68 "sku": "string",
69 "orderable": true
70 },
71 "currentStatus": "string",
72 "used": true,
73 "currentPatient": {
74 "id": 1,
75 "externalIdentifier": "1234abcd",
76 "firstName": "John",
77 "lastName": "Doe",
78 "dateOfBirth": "1980-01-01",
79 "email": "john.doe@example.com",
80 "phoneNumber": "+1234567890",
81 "archived": true,
82 "address": {
83 "lineOne": "string",
84 "lineTwo": "string",
85 "lineThree": "string",
86 "city": "string",
87 "state": "string",
88 "zipCode": "string",
89 "country": "string",
90 "note": "string"
91 },
92 "site": {
93 "id": 1,
94 "name": "string",
95 "active": true,
96 "address": {
97 "lineOne": "string",
98 "lineTwo": "string",
99 "lineThree": "string",
100 "city": "string",
101 "state": "string",
102 "zipCode": "string",
103 "country": "string",
104 "note": "string"
105 }
106 },
107 "enrolled": true,
108 "sex": "other"
109 },
110 "site": {
111 "id": 1,
112 "name": "string",
113 "active": true,
114 "address": {
115 "lineOne": "string",
116 "lineTwo": "string",
117 "lineThree": "string",
118 "city": "string",
119 "state": "string",
120 "zipCode": "string",
121 "country": "string",
122 "note": "string"
123 }
124 },
125 "lastHealthCheck": "string",
126 "deviceIdentifiers": [
127 {
128 "type": "string",
129 "value": "string"
130 }
131 ],
132 "deviceEvents": [
133 {
134 "type": "string",
135 "eventTimestamp": "string"
136 }
137 ],
138 "externalIdentifier": "string",
139 "disabledReadings": true
140 }
141 }
142 ],
143 "page": 0,
144 "size": 0,
145 "total": 0,
146 "first": true,
147 "last": true
148}

PageHeartRateVariabilityReading

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[HeartRateVariabilityReading]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageHeartRateVariabilityReading Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "manual": true,
7 "deviceTimeZoneOffset": -14400,
8 "patientTimeZoneOffset": -14400,
9 "heartRate": 0,
10 "heartRateVariability": 0.1,
11 "heartRateVariabilityDuration": 0,
12 "patient": {
13 "id": 1,
14 "externalIdentifier": "1234abcd",
15 "firstName": "John",
16 "lastName": "Doe",
17 "dateOfBirth": "1980-01-01",
18 "email": "john.doe@example.com",
19 "phoneNumber": "+1234567890",
20 "archived": true,
21 "address": {
22 "lineOne": "string",
23 "lineTwo": "string",
24 "lineThree": "string",
25 "city": "string",
26 "state": "string",
27 "zipCode": "string",
28 "country": "string",
29 "note": "string"
30 },
31 "site": {
32 "id": 1,
33 "name": "string",
34 "active": true,
35 "address": {
36 "lineOne": "string",
37 "lineTwo": "string",
38 "lineThree": "string",
39 "city": "string",
40 "state": "string",
41 "zipCode": "string",
42 "country": "string",
43 "note": "string"
44 }
45 },
46 "enrolled": true,
47 "sex": "other"
48 },
49 "item": {
50 "id": 1,
51 "manufacturer": {
52 "id": 1,
53 "name": "string"
54 },
55 "name": "string",
56 "model": "string",
57 "sku": "string",
58 "orderable": true
59 },
60 "device": {
61 "id": 1,
62 "item": {
63 "id": 1,
64 "manufacturer": {
65 "id": 1,
66 "name": "string"
67 },
68 "name": "string",
69 "model": "string",
70 "sku": "string",
71 "orderable": true
72 },
73 "currentStatus": "string",
74 "used": true,
75 "currentPatient": {
76 "id": 1,
77 "externalIdentifier": "1234abcd",
78 "firstName": "John",
79 "lastName": "Doe",
80 "dateOfBirth": "1980-01-01",
81 "email": "john.doe@example.com",
82 "phoneNumber": "+1234567890",
83 "archived": true,
84 "address": {
85 "lineOne": "string",
86 "lineTwo": "string",
87 "lineThree": "string",
88 "city": "string",
89 "state": "string",
90 "zipCode": "string",
91 "country": "string",
92 "note": "string"
93 },
94 "site": {
95 "id": 1,
96 "name": "string",
97 "active": true,
98 "address": {
99 "lineOne": "string",
100 "lineTwo": "string",
101 "lineThree": "string",
102 "city": "string",
103 "state": "string",
104 "zipCode": "string",
105 "country": "string",
106 "note": "string"
107 }
108 },
109 "enrolled": true,
110 "sex": "other"
111 },
112 "site": {
113 "id": 1,
114 "name": "string",
115 "active": true,
116 "address": {
117 "lineOne": "string",
118 "lineTwo": "string",
119 "lineThree": "string",
120 "city": "string",
121 "state": "string",
122 "zipCode": "string",
123 "country": "string",
124 "note": "string"
125 }
126 },
127 "lastHealthCheck": "string",
128 "deviceIdentifiers": [
129 {
130 "type": "string",
131 "value": "string"
132 }
133 ],
134 "deviceEvents": [
135 {
136 "type": "string",
137 "eventTimestamp": "string"
138 }
139 ],
140 "externalIdentifier": "string",
141 "disabledReadings": true
142 },
143 "heartRateVariabilityAlgorithmType": "sdann"
144 }
145 ],
146 "page": 0,
147 "size": 0,
148 "total": 0,
149 "first": true,
150 "last": true
151}

PageInventoryRecord

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[InventoryRecord]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageInventoryRecord Model Sample
1{
2 "content": [
3 {
4 "item": {
5 "id": 1,
6 "manufacturer": {
7 "id": 1,
8 "name": "string"
9 },
10 "name": "string",
11 "model": "string",
12 "sku": "string",
13 "orderable": true
14 },
15 "newCount": 0,
16 "usedCount": 0,
17 "site": {
18 "id": 1,
19 "name": "string",
20 "active": true,
21 "address": {
22 "lineOne": "string",
23 "lineTwo": "string",
24 "lineThree": "string",
25 "city": "string",
26 "state": "string",
27 "zipCode": "string",
28 "country": "string",
29 "note": "string"
30 }
31 }
32 }
33 ],
34 "page": 0,
35 "size": 0,
36 "total": 0,
37 "first": true,
38 "last": true
39}

PageInventorySummaryRecord

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[InventorySummaryRecord]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageInventorySummaryRecord Model Sample
1{
2 "content": [
3 {
4 "item": {
5 "id": 1,
6 "manufacturer": {
7 "id": 1,
8 "name": "string"
9 },
10 "name": "string",
11 "model": "string",
12 "sku": "string",
13 "orderable": true
14 },
15 "newCount": 0,
16 "usedCount": 0
17 }
18 ],
19 "page": 0,
20 "size": 0,
21 "total": 0,
22 "first": true,
23 "last": true
24}

PageItemDetailed

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[ItemDetailed]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageItemDetailed Model Sample
1{
2 "content": [
3 {
4 "id": 1,
5 "manufacturer": {
6 "id": 1,
7 "name": "string"
8 },
9 "name": "string",
10 "model": "string",
11 "sku": "string",
12 "orderable": true,
13 "deviceIdentifierType": "simCardNumber",
14 "itemClass": "wearable",
15 "itemClassType": "string",
16 "size": "standard",
17 "dimensions": {
18 "length": 0.1,
19 "width": 0.1,
20 "height": 0.1,
21 "unit": "in"
22 },
23 "readingType": "bloodPressure"
24 }
25 ],
26 "page": 0,
27 "size": 0,
28 "total": 0,
29 "first": true,
30 "last": true
31}

PageKit

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[Kit]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageKit Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "name": "string",
6 "archived": true,
7 "kitItems": [
8 {
9 "item": {
10 "id": 1,
11 "manufacturer": {
12 "id": 1,
13 "name": "string"
14 },
15 "name": "string",
16 "model": "string",
17 "sku": "string",
18 "orderable": true
19 },
20 "count": 0
21 }
22 ]
23 }
24 ],
25 "page": 0,
26 "size": 0,
27 "total": 0,
28 "first": true,
29 "last": true
30}

PageManufacturer

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[Manufacturer]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageManufacturer Model Sample
1{
2 "content": [
3 {
4 "id": 1,
5 "name": "string"
6 }
7 ],
8 "page": 0,
9 "size": 0,
10 "total": 0,
11 "first": true,
12 "last": true
13}

PageOrder

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[Order]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageOrder Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "externalOrderIds": [
6 "string"
7 ],
8 "patient": {
9 "id": 1,
10 "externalIdentifier": "1234abcd",
11 "firstName": "John",
12 "lastName": "Doe",
13 "dateOfBirth": "1980-01-01",
14 "email": "john.doe@example.com",
15 "phoneNumber": "+1234567890",
16 "archived": true,
17 "address": {
18 "lineOne": "string",
19 "lineTwo": "string",
20 "lineThree": "string",
21 "city": "string",
22 "state": "string",
23 "zipCode": "string",
24 "country": "string",
25 "note": "string"
26 },
27 "site": {
28 "id": 1,
29 "name": "string",
30 "active": true,
31 "address": {
32 "lineOne": "string",
33 "lineTwo": "string",
34 "lineThree": "string",
35 "city": "string",
36 "state": "string",
37 "zipCode": "string",
38 "country": "string",
39 "note": "string"
40 }
41 },
42 "enrolled": true,
43 "sex": "other"
44 },
45 "site": {
46 "id": 1,
47 "name": "string",
48 "active": true,
49 "address": {
50 "lineOne": "string",
51 "lineTwo": "string",
52 "lineThree": "string",
53 "city": "string",
54 "state": "string",
55 "zipCode": "string",
56 "country": "string",
57 "note": "string"
58 }
59 },
60 "currentStatus": "reconfirmAddress",
61 "orderItems": [
62 {
63 "item": {
64 "id": 1,
65 "manufacturer": {
66 "id": 1,
67 "name": "string"
68 },
69 "name": "string",
70 "model": "string",
71 "sku": "string",
72 "orderable": true
73 },
74 "count": 0
75 }
76 ],
77 "orderKits": [
78 {
79 "kit": {
80 "id": 0,
81 "name": "string",
82 "archived": true,
83 "kitItems": [
84 {
85 "item": {
86 "id": 1,
87 "manufacturer": {
88 "id": 1,
89 "name": "string"
90 },
91 "name": "string",
92 "model": "string",
93 "sku": "string",
94 "orderable": true
95 },
96 "count": 0
97 }
98 ]
99 },
100 "count": 0
101 }
102 ],
103 "orderEvents": [
104 {
105 "name": "string",
106 "eventTimestamp": "string"
107 }
108 ],
109 "trackingNumbers": [
110 {
111 "carrier": "string",
112 "value": "string"
113 }
114 ],
115 "devices": [
116 {
117 "id": 1,
118 "item": {
119 "id": 1,
120 "manufacturer": {
121 "id": 1,
122 "name": "string"
123 },
124 "name": "string",
125 "model": "string",
126 "sku": "string",
127 "orderable": true
128 },
129 "currentStatus": "string",
130 "used": true,
131 "currentPatient": {
132 "id": 1,
133 "externalIdentifier": "1234abcd",
134 "firstName": "John",
135 "lastName": "Doe",
136 "dateOfBirth": "1980-01-01",
137 "email": "john.doe@example.com",
138 "phoneNumber": "+1234567890",
139 "archived": true,
140 "address": {
141 "lineOne": "string",
142 "lineTwo": "string",
143 "lineThree": "string",
144 "city": "string",
145 "state": "string",
146 "zipCode": "string",
147 "country": "string",
148 "note": "string"
149 },
150 "site": {
151 "id": 1,
152 "name": "string",
153 "active": true,
154 "address": {
155 "lineOne": "string",
156 "lineTwo": "string",
157 "lineThree": "string",
158 "city": "string",
159 "state": "string",
160 "zipCode": "string",
161 "country": "string",
162 "note": "string"
163 }
164 },
165 "enrolled": true,
166 "sex": "other"
167 },
168 "site": {
169 "id": 1,
170 "name": "string",
171 "active": true,
172 "address": {
173 "lineOne": "string",
174 "lineTwo": "string",
175 "lineThree": "string",
176 "city": "string",
177 "state": "string",
178 "zipCode": "string",
179 "country": "string",
180 "note": "string"
181 }
182 },
183 "lastHealthCheck": "string",
184 "deviceIdentifiers": [
185 {
186 "type": "string",
187 "value": "string"
188 }
189 ],
190 "deviceEvents": [
191 {
192 "type": "string",
193 "eventTimestamp": "string"
194 }
195 ],
196 "externalIdentifier": "string",
197 "disabledReadings": true
198 }
199 ],
200 "packedKits": [
201 {
202 "kit": {
203 "id": 0,
204 "name": "string",
205 "archived": true,
206 "kitItems": [
207 {
208 "item": {
209 "id": 1,
210 "manufacturer": {
211 "id": 1,
212 "name": "string"
213 },
214 "name": "string",
215 "model": "string",
216 "sku": "string",
217 "orderable": true
218 },
219 "count": 0
220 }
221 ]
222 },
223 "devices": [
224 {
225 "id": 1,
226 "item": {
227 "id": 1,
228 "manufacturer": {
229 "id": 1,
230 "name": "string"
231 },
232 "name": "string",
233 "model": "string",
234 "sku": "string",
235 "orderable": true
236 },
237 "currentStatus": "string",
238 "used": true,
239 "currentPatient": {
240 "id": 1,
241 "externalIdentifier": "1234abcd",
242 "firstName": "John",
243 "lastName": "Doe",
244 "dateOfBirth": "1980-01-01",
245 "email": "john.doe@example.com",
246 "phoneNumber": "+1234567890",
247 "archived": true,
248 "address": {
249 "lineOne": "string",
250 "lineTwo": "string",
251 "lineThree": "string",
252 "city": "string",
253 "state": "string",
254 "zipCode": "string",
255 "country": "string",
256 "note": "string"
257 },
258 "site": {
259 "id": 1,
260 "name": "string",
261 "active": true,
262 "address": {
263 "lineOne": "string",
264 "lineTwo": "string",
265 "lineThree": "string",
266 "city": "string",
267 "state": "string",
268 "zipCode": "string",
269 "country": "string",
270 "note": "string"
271 }
272 },
273 "enrolled": true,
274 "sex": "other"
275 },
276 "site": {
277 "id": 1,
278 "name": "string",
279 "active": true,
280 "address": {
281 "lineOne": "string",
282 "lineTwo": "string",
283 "lineThree": "string",
284 "city": "string",
285 "state": "string",
286 "zipCode": "string",
287 "country": "string",
288 "note": "string"
289 }
290 },
291 "lastHealthCheck": "string",
292 "deviceIdentifiers": [
293 {
294 "type": "string",
295 "value": "string"
296 }
297 ],
298 "deviceEvents": [
299 {
300 "type": "string",
301 "eventTimestamp": "string"
302 }
303 ],
304 "externalIdentifier": "string",
305 "disabledReadings": true
306 }
307 ]
308 }
309 ],
310 "shippingOption": "standard"
311 }
312 ],
313 "page": 0,
314 "size": 0,
315 "total": 0,
316 "first": true,
317 "last": true
318}

PagePatient

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[Patient]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PagePatient Model Sample
1{
2 "content": [
3 {
4 "id": 1,
5 "externalIdentifier": "1234abcd",
6 "firstName": "John",
7 "lastName": "Doe",
8 "dateOfBirth": "1980-01-01",
9 "email": "john.doe@example.com",
10 "phoneNumber": "+1234567890",
11 "archived": true,
12 "address": {
13 "lineOne": "string",
14 "lineTwo": "string",
15 "lineThree": "string",
16 "city": "string",
17 "state": "string",
18 "zipCode": "string",
19 "country": "string",
20 "note": "string"
21 },
22 "site": {
23 "id": 1,
24 "name": "string",
25 "active": true,
26 "address": {
27 "lineOne": "string",
28 "lineTwo": "string",
29 "lineThree": "string",
30 "city": "string",
31 "state": "string",
32 "zipCode": "string",
33 "country": "string",
34 "note": "string"
35 }
36 },
37 "enrolled": true,
38 "sex": "other"
39 }
40 ],
41 "page": 0,
42 "size": 0,
43 "total": 0,
44 "first": true,
45 "last": true
46}

PageSite

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[Site]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageSite Model Sample
1{
2 "content": [
3 {
4 "id": 1,
5 "name": "string",
6 "active": true,
7 "address": {
8 "lineOne": "string",
9 "lineTwo": "string",
10 "lineThree": "string",
11 "city": "string",
12 "state": "string",
13 "zipCode": "string",
14 "country": "string",
15 "note": "string"
16 }
17 }
18 ],
19 "page": 0,
20 "size": 0,
21 "total": 0,
22 "first": true,
23 "last": true
24}

PageTemperatureReading

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[TemperatureReading]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageTemperatureReading Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "readingTimestamp": "2019-08-24T14:15:22Z",
6 "manual": true,
7 "deviceTimeZoneOffset": -14400,
8 "patientTimeZoneOffset": -14400,
9 "patient": {
10 "id": 1,
11 "externalIdentifier": "1234abcd",
12 "firstName": "John",
13 "lastName": "Doe",
14 "dateOfBirth": "1980-01-01",
15 "email": "john.doe@example.com",
16 "phoneNumber": "+1234567890",
17 "archived": true,
18 "address": {
19 "lineOne": "string",
20 "lineTwo": "string",
21 "lineThree": "string",
22 "city": "string",
23 "state": "string",
24 "zipCode": "string",
25 "country": "string",
26 "note": "string"
27 },
28 "site": {
29 "id": 1,
30 "name": "string",
31 "active": true,
32 "address": {
33 "lineOne": "string",
34 "lineTwo": "string",
35 "lineThree": "string",
36 "city": "string",
37 "state": "string",
38 "zipCode": "string",
39 "country": "string",
40 "note": "string"
41 }
42 },
43 "enrolled": true,
44 "sex": "other"
45 },
46 "item": {
47 "id": 1,
48 "manufacturer": {
49 "id": 1,
50 "name": "string"
51 },
52 "name": "string",
53 "model": "string",
54 "sku": "string",
55 "orderable": true
56 },
57 "device": {
58 "id": 1,
59 "item": {
60 "id": 1,
61 "manufacturer": {
62 "id": 1,
63 "name": "string"
64 },
65 "name": "string",
66 "model": "string",
67 "sku": "string",
68 "orderable": true
69 },
70 "currentStatus": "string",
71 "used": true,
72 "currentPatient": {
73 "id": 1,
74 "externalIdentifier": "1234abcd",
75 "firstName": "John",
76 "lastName": "Doe",
77 "dateOfBirth": "1980-01-01",
78 "email": "john.doe@example.com",
79 "phoneNumber": "+1234567890",
80 "archived": true,
81 "address": {
82 "lineOne": "string",
83 "lineTwo": "string",
84 "lineThree": "string",
85 "city": "string",
86 "state": "string",
87 "zipCode": "string",
88 "country": "string",
89 "note": "string"
90 },
91 "site": {
92 "id": 1,
93 "name": "string",
94 "active": true,
95 "address": {
96 "lineOne": "string",
97 "lineTwo": "string",
98 "lineThree": "string",
99 "city": "string",
100 "state": "string",
101 "zipCode": "string",
102 "country": "string",
103 "note": "string"
104 }
105 },
106 "enrolled": true,
107 "sex": "other"
108 },
109 "site": {
110 "id": 1,
111 "name": "string",
112 "active": true,
113 "address": {
114 "lineOne": "string",
115 "lineTwo": "string",
116 "lineThree": "string",
117 "city": "string",
118 "state": "string",
119 "zipCode": "string",
120 "country": "string",
121 "note": "string"
122 }
123 },
124 "lastHealthCheck": "string",
125 "deviceIdentifiers": [
126 {
127 "type": "string",
128 "value": "string"
129 }
130 ],
131 "deviceEvents": [
132 {
133 "type": "string",
134 "eventTimestamp": "string"
135 }
136 ],
137 "externalIdentifier": "string",
138 "disabledReadings": true
139 },
140 "temperatureUnit": "string",
141 "temperature": 0.1
142 }
143 ],
144 "page": 0,
145 "size": 0,
146 "total": 0,
147 "first": true,
148 "last": true
149}

PageTransferRequest

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[TransferRequest]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageTransferRequest Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "fromCustomer": {
6 "id": 0,
7 "name": "string"
8 },
9 "toCustomer": {
10 "id": 0,
11 "name": "string"
12 },
13 "currentStatus": "requested",
14 "createdAt": "2019-08-24T14:15:22Z",
15 "transferRequestNotes": [
16 {
17 "note": "string",
18 "createdAt": "2022-03-10T16:15:50Z"
19 }
20 ],
21 "transferRequestEvents": [
22 {
23 "name": "requested",
24 "eventTimestamp": "2019-08-24T14:15:22Z"
25 }
26 ],
27 "requestedEntries": [
28 {
29 "device": {
30 "id": 1,
31 "item": {
32 "id": 1,
33 "manufacturer": {
34 "id": 1,
35 "name": "string"
36 },
37 "name": "string",
38 "model": "string",
39 "sku": "string",
40 "orderable": true
41 },
42 "currentStatus": "string",
43 "used": true,
44 "currentPatient": {
45 "id": 1,
46 "externalIdentifier": "1234abcd",
47 "firstName": "John",
48 "lastName": "Doe",
49 "dateOfBirth": "1980-01-01",
50 "email": "john.doe@example.com",
51 "phoneNumber": "+1234567890",
52 "archived": true,
53 "address": {
54 "lineOne": "string",
55 "lineTwo": "string",
56 "lineThree": "string",
57 "city": "string",
58 "state": "string",
59 "zipCode": "string",
60 "country": "string",
61 "note": "string"
62 },
63 "site": {
64 "id": 1,
65 "name": "string",
66 "active": true,
67 "address": {
68 "lineOne": "string",
69 "lineTwo": "string",
70 "lineThree": "string",
71 "city": "string",
72 "state": "string",
73 "zipCode": "string",
74 "country": "string",
75 "note": "string"
76 }
77 },
78 "enrolled": true,
79 "sex": "other"
80 },
81 "site": {
82 "id": 1,
83 "name": "string",
84 "active": true,
85 "address": {
86 "lineOne": "string",
87 "lineTwo": "string",
88 "lineThree": "string",
89 "city": "string",
90 "state": "string",
91 "zipCode": "string",
92 "country": "string",
93 "note": "string"
94 }
95 },
96 "lastHealthCheck": "string",
97 "deviceIdentifiers": [
98 {
99 "type": "string",
100 "value": "string"
101 }
102 ],
103 "deviceEvents": [
104 {
105 "type": "string",
106 "eventTimestamp": "string"
107 }
108 ],
109 "externalIdentifier": "string",
110 "disabledReadings": true
111 },
112 "item": {
113 "id": 1,
114 "manufacturer": {
115 "id": 1,
116 "name": "string"
117 },
118 "name": "string",
119 "model": "string",
120 "sku": "string",
121 "orderable": true
122 },
123 "quantity": 0
124 }
125 ]
126 }
127 ],
128 "page": 0,
129 "size": 0,
130 "total": 0,
131 "first": true,
132 "last": true
133}

PageWebhook

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[Webhook]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageWebhook Model Sample
1{
2 "content": [
3 {
4 "id": 1,
5 "type": "eventType",
6 "url": "http://example.com"
7 }
8 ],
9 "page": 0,
10 "size": 0,
11 "total": 0,
12 "first": true,
13 "last": true
14}

PageWebhookLog

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[WebhookLog]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageWebhookLog Model Sample
1{
2 "content": [
3 {
4 "webhookId": 1,
5 "webhookType": "order.status",
6 "webhookUrl": "http://webhookserver.com",
7 "payload": "{'id':1234}",
8 "createTimestamp": "2023-08-22T14:15:30.345Z",
9 "lastResponseStatus": 200,
10 "retryAttempts": 3,
11 "lastRetryTimestamp": "2023-08-22T14:15:30.345Z"
12 }
13 ],
14 "page": 0,
15 "size": 0,
16 "total": 0,
17 "first": true,
18 "last": true
19}

PageWeightReading

Pagination is supported whenever an API response returns a list of objects. In paginated responses, objects are nested in a content attribute and have first and last attributes indicating whether you are on the first or last page, respectively. Additionally, the pagination response includes a page attribute indicating the current page number, a size attribute indicating the current page size, and a total attribute indicating the number of objects matching the request.

Properties

NameTypeRequiredDescription
content[WeightReading]falseThe content of the page, consisting of a list of objects.
pageinteger(int32)falseThe current page number. The first page has value 1.
sizeinteger(int32)falseThe current page size. Default 15, maximum 250.
totalinteger(int32)falseThe number of objects matching the request.
firstbooleanfalseTrue if this is the first page, false otherwise.
lastbooleanfalseTrue if this is the last page, false otherwise.
PageWeightReading Model Sample
1{
2 "content": [
3 {
4 "id": 0,
5 "readingTimestamp": "2019-08-24T14:15:22Z",
6 "manual": true,
7 "deviceTimeZoneOffset": -14400,
8 "patientTimeZoneOffset": -14400,
9 "patient": {
10 "id": 1,
11 "externalIdentifier": "1234abcd",
12 "firstName": "John",
13 "lastName": "Doe",
14 "dateOfBirth": "1980-01-01",
15 "email": "john.doe@example.com",
16 "phoneNumber": "+1234567890",
17 "archived": true,
18 "address": {
19 "lineOne": "string",
20 "lineTwo": "string",
21 "lineThree": "string",
22 "city": "string",
23 "state": "string",
24 "zipCode": "string",
25 "country": "string",
26 "note": "string"
27 },
28 "site": {
29 "id": 1,
30 "name": "string",
31 "active": true,
32 "address": {
33 "lineOne": "string",
34 "lineTwo": "string",
35 "lineThree": "string",
36 "city": "string",
37 "state": "string",
38 "zipCode": "string",
39 "country": "string",
40 "note": "string"
41 }
42 },
43 "enrolled": true,
44 "sex": "other"
45 },
46 "item": {
47 "id": 1,
48 "manufacturer": {
49 "id": 1,
50 "name": "string"
51 },
52 "name": "string",
53 "model": "string",
54 "sku": "string",
55 "orderable": true
56 },
57 "device": {
58 "id": 1,
59 "item": {
60 "id": 1,
61 "manufacturer": {
62 "id": 1,
63 "name": "string"
64 },
65 "name": "string",
66 "model": "string",
67 "sku": "string",
68 "orderable": true
69 },
70 "currentStatus": "string",
71 "used": true,
72 "currentPatient": {
73 "id": 1,
74 "externalIdentifier": "1234abcd",
75 "firstName": "John",
76 "lastName": "Doe",
77 "dateOfBirth": "1980-01-01",
78 "email": "john.doe@example.com",
79 "phoneNumber": "+1234567890",
80 "archived": true,
81 "address": {
82 "lineOne": "string",
83 "lineTwo": "string",
84 "lineThree": "string",
85 "city": "string",
86 "state": "string",
87 "zipCode": "string",
88 "country": "string",
89 "note": "string"
90 },
91 "site": {
92 "id": 1,
93 "name": "string",
94 "active": true,
95 "address": {
96 "lineOne": "string",
97 "lineTwo": "string",
98 "lineThree": "string",
99 "city": "string",
100 "state": "string",
101 "zipCode": "string",
102 "country": "string",
103 "note": "string"
104 }
105 },
106 "enrolled": true,
107 "sex": "other"
108 },
109 "site": {
110 "id": 1,
111 "name": "string",
112 "active": true,
113 "address": {
114 "lineOne": "string",
115 "lineTwo": "string",
116 "lineThree": "string",
117 "city": "string",
118 "state": "string",
119 "zipCode": "string",
120 "country": "string",
121 "note": "string"
122 }
123 },
124 "lastHealthCheck": "string",
125 "deviceIdentifiers": [
126 {
127 "type": "string",
128 "value": "string"
129 }
130 ],
131 "deviceEvents": [
132 {
133 "type": "string",
134 "eventTimestamp": "string"
135 }
136 ],
137 "externalIdentifier": "string",
138 "disabledReadings": true
139 },
140 "weight": 0.1,
141 "weightUnit": "lbs"
142 }
143 ],
144 "page": 0,
145 "size": 0,
146 "total": 0,
147 "first": true,
148 "last": true
149}

Patient

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the patient, managed by Impilo.
externalIdentifierstringfalseUnique external identifier for the patient, managed by the customer.
firstNamestringfalseThe patient’s first name.
lastNamestringfalseThe patient’s last name.
dateOfBirthstring(date)falseThe patient’s date of birth in the format YYYY-MM-DD.
emailstring(email)falseThe patient’s email.
phoneNumberstringfalseThe patient’s phone number.
archivedbooleanfalseTrue if the patient is archived, false otherwise.
addressAddressfalseThe patient’s shipping address.
siteSitefalseThe site responsible for this patient.
enrolledbooleanfalseThe enrollment status. False if disenrolled.
sexSexfalsenone
Patient Model Sample
1{
2 "id": 1,
3 "externalIdentifier": "1234abcd",
4 "firstName": "John",
5 "lastName": "Doe",
6 "dateOfBirth": "1980-01-01",
7 "email": "john.doe@example.com",
8 "phoneNumber": "+1234567890",
9 "archived": true,
10 "address": {
11 "lineOne": "string",
12 "lineTwo": "string",
13 "lineThree": "string",
14 "city": "string",
15 "state": "string",
16 "zipCode": "string",
17 "country": "string",
18 "note": "string"
19 },
20 "site": {
21 "id": 1,
22 "name": "string",
23 "active": true,
24 "address": {
25 "lineOne": "string",
26 "lineTwo": "string",
27 "lineThree": "string",
28 "city": "string",
29 "state": "string",
30 "zipCode": "string",
31 "country": "string",
32 "note": "string"
33 }
34 },
35 "enrolled": true,
36 "sex": "other"
37}

PatientSort

Enumerated Values

NameDesciption
firstNameUndefined
lastNameUndefined
patientIdUndefined
PatientSort Model Sample
1"firstName"

Procurement

A procurement is a procurement of devices by a customer.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the site, managed by Impilo.
currentStatusstringfalseThe current status of the procurement
procurementTypestringfalseThe type of the procurement.
procurementItems[ProcurementItem]falseList of items on the procurement
procurementEvents[ProcurementEvent]falseList of events attached to the procurement
Procurement Model Sample
1{
2 "id": 1,
3 "currentStatus": "string",
4 "procurementType": "string",
5 "procurementItems": [
6 {
7 "item": {
8 "id": 1,
9 "manufacturer": {
10 "id": 1,
11 "name": "string"
12 },
13 "name": "string",
14 "model": "string",
15 "sku": "string",
16 "orderable": true
17 },
18 "quantityRequested": 0,
19 "quantityApproved": 0,
20 "costPerItem": 0.1,
21 "trackingNumbers": [
22 {
23 "carrier": "string",
24 "value": "string"
25 }
26 ]
27 }
28 ],
29 "procurementEvents": [
30 {
31 "name": "string",
32 "eventTimestamp": "string"
33 }
34 ]
35}

ProcurementEvent

Properties

NameTypeRequiredDescription
namestringfalsenone
eventTimestampstringfalsenone
ProcurementEvent Model Sample
1{
2 "name": "string",
3 "eventTimestamp": "string"
4}

ProcurementItem

Properties

NameTypeRequiredDescription
itemItemfalseAn item is any of the supplies handled by Impilo. Examples include medical devices like a blood pressure monitor or weight scale, but the term ‘item’ also refers to non-medical supplies like AAA batteries and package inserts. A customer catalog is a subset of all items supported by Impilo. This is set during onboarding and may be modified by your account manager at any time. A customer may view the items in their catalog.
quantityRequestedinteger(int32)falsenone
quantityApprovedinteger(int32)falsenone
costPerItemnumber(double)falsenone
trackingNumbers[TrackingNumber]false[The tracking number model includes details about the shipping carrier and the tracking number value.]
ProcurementItem Model Sample
1{
2 "item": {
3 "id": 1,
4 "manufacturer": {
5 "id": 1,
6 "name": "string"
7 },
8 "name": "string",
9 "model": "string",
10 "sku": "string",
11 "orderable": true
12 },
13 "quantityRequested": 0,
14 "quantityApproved": 0,
15 "costPerItem": 0.1,
16 "trackingNumbers": [
17 {
18 "carrier": "string",
19 "value": "string"
20 }
21 ]
22}

ReadingType

Enumerated Values

NameDesciption
bloodPressureBlood pressure reading type.
heartRateVariabilityHeart rate variability reading type.
heartRateHeart rate reading type.
spo2SPO2 (oxygen saturation) reading type.
temperatureTemperature reading type.
weightWeight reading type.
continuousBloodGlucoseContinuous blood glucose reading type.
bloodGlucoseBlood glucose reading type.
ReadingType Model Sample
1"bloodPressure"

Return

A return is an occurrence of a device(s) or non-tracked item(s) being returned by a Patient.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the return, managed by Impilo.
patientPatientfalseThe patient that is making the return.
currentStatusstringfalseThe current status of this return.
returnKits[Kit]falseAn array of kits related to items expected on this return.
returnItems[ReturnItem]falseAn array of non-tracked items expected on this return.
returnEvents[ReturnEvent]falseAn array of the return events for this return.
trackingNumbers[TrackingNumber]falseAn array of tracking numbers associated with this return.
returnDevices[Device]falseAn array of devices expected on this return.
relatedOrderIdinteger(int64)falseThe identifier of a related order, if exists.
Return Model Sample
1{
2 "id": 1,
3 "patient": {
4 "id": 1,
5 "externalIdentifier": "1234abcd",
6 "firstName": "John",
7 "lastName": "Doe",
8 "dateOfBirth": "1980-01-01",
9 "email": "john.doe@example.com",
10 "phoneNumber": "+1234567890",
11 "archived": true,
12 "address": {
13 "lineOne": "string",
14 "lineTwo": "string",
15 "lineThree": "string",
16 "city": "string",
17 "state": "string",
18 "zipCode": "string",
19 "country": "string",
20 "note": "string"
21 },
22 "site": {
23 "id": 1,
24 "name": "string",
25 "active": true,
26 "address": {
27 "lineOne": "string",
28 "lineTwo": "string",
29 "lineThree": "string",
30 "city": "string",
31 "state": "string",
32 "zipCode": "string",
33 "country": "string",
34 "note": "string"
35 }
36 },
37 "enrolled": true,
38 "sex": "other"
39 },
40 "currentStatus": "string",
41 "returnKits": [
42 {
43 "id": 0,
44 "name": "string",
45 "archived": true,
46 "kitItems": [
47 {
48 "item": {
49 "id": 1,
50 "manufacturer": {
51 "id": 1,
52 "name": "string"
53 },
54 "name": "string",
55 "model": "string",
56 "sku": "string",
57 "orderable": true
58 },
59 "count": 0
60 }
61 ]
62 }
63 ],
64 "returnItems": [
65 {
66 "item": {
67 "id": 1,
68 "manufacturer": {
69 "id": 1,
70 "name": "string"
71 },
72 "name": "string",
73 "model": "string",
74 "sku": "string",
75 "orderable": true
76 },
77 "count": 0
78 }
79 ],
80 "returnEvents": [
81 {
82 "type": "string",
83 "eventTimestamp": "string"
84 }
85 ],
86 "trackingNumbers": [
87 {
88 "carrier": "string",
89 "value": "string"
90 }
91 ],
92 "returnDevices": [
93 {
94 "id": 1,
95 "item": {
96 "id": 1,
97 "manufacturer": {
98 "id": 1,
99 "name": "string"
100 },
101 "name": "string",
102 "model": "string",
103 "sku": "string",
104 "orderable": true
105 },
106 "currentStatus": "string",
107 "used": true,
108 "currentPatient": {
109 "id": 1,
110 "externalIdentifier": "1234abcd",
111 "firstName": "John",
112 "lastName": "Doe",
113 "dateOfBirth": "1980-01-01",
114 "email": "john.doe@example.com",
115 "phoneNumber": "+1234567890",
116 "archived": true,
117 "address": {
118 "lineOne": "string",
119 "lineTwo": "string",
120 "lineThree": "string",
121 "city": "string",
122 "state": "string",
123 "zipCode": "string",
124 "country": "string",
125 "note": "string"
126 },
127 "site": {
128 "id": 1,
129 "name": "string",
130 "active": true,
131 "address": {
132 "lineOne": "string",
133 "lineTwo": "string",
134 "lineThree": "string",
135 "city": "string",
136 "state": "string",
137 "zipCode": "string",
138 "country": "string",
139 "note": "string"
140 }
141 },
142 "enrolled": true,
143 "sex": "other"
144 },
145 "site": {
146 "id": 1,
147 "name": "string",
148 "active": true,
149 "address": {
150 "lineOne": "string",
151 "lineTwo": "string",
152 "lineThree": "string",
153 "city": "string",
154 "state": "string",
155 "zipCode": "string",
156 "country": "string",
157 "note": "string"
158 }
159 },
160 "lastHealthCheck": "string",
161 "deviceIdentifiers": [
162 {
163 "type": "string",
164 "value": "string"
165 }
166 ],
167 "deviceEvents": [
168 {
169 "type": "string",
170 "eventTimestamp": "string"
171 }
172 ],
173 "externalIdentifier": "string",
174 "disabledReadings": true
175 }
176 ],
177 "relatedOrderId": 0
178}

ReturnEvent

Properties

NameTypeRequiredDescription
typestringfalseThe event type for the Return Event.
eventTimestampstringfalseThe timestamp when the Return Event was created.
ReturnEvent Model Sample
1{
2 "type": "string",
3 "eventTimestamp": "string"
4}

ReturnItem

Properties

NameTypeRequiredDescription
itemItemfalseThe item type extected on this return.
countinteger(int32)falseThe quantity of this item type expected on this return.
ReturnItem Model Sample
1{
2 "item": {
3 "id": 1,
4 "manufacturer": {
5 "id": 1,
6 "name": "string"
7 },
8 "name": "string",
9 "model": "string",
10 "sku": "string",
11 "orderable": true
12 },
13 "count": 0
14}

Sex

Enumerated Values

NameDesciption
otherSex other than male or female.
femaleFemale sex.
maleMale sex.
unknownSex is unknown.
Sex Model Sample
1"other"

ShippingOption

Enumerated Values

NameDesciption
standardStandard shipping option.
overnightOvernight shipping option.
ShippingOption Model Sample
1"standard"

Site

A site is a customer-managed location that interacts with Impilo’s services. Patient may be associated with a site, and a customer may order items and hold inventory at a site.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the site, managed by Impilo.
namestringfalseThe name of the site.
activebooleanfalseTrue if the site is active, false otherwise.
addressAddressfalseThe shipping address for the site.
Site Model Sample
1{
2 "id": 1,
3 "name": "string",
4 "active": true,
5 "address": {
6 "lineOne": "string",
7 "lineTwo": "string",
8 "lineThree": "string",
9 "city": "string",
10 "state": "string",
11 "zipCode": "string",
12 "country": "string",
13 "note": "string"
14 }
15}

TemperatureReading

This page describes Impilo’s temperature reading model.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
patientTimeZoneOffsetinteger(int32)falseThe offset of the patient’s timezone from UTC in seconds. Null if unavailable.
patientPatientfalseThe patient who took the reading.
itemItemfalseThe item used to take the reading.
deviceDevicefalseThe device used to take the reading.
temperatureUnitstringfalseThe unit in which the temperature was measured.
temperaturenumber(double)falseThe temperature measurement value.
TemperatureReading Model Sample
1{
2 "id": 0,
3 "readingTimestamp": "2019-08-24T14:15:22Z",
4 "manual": true,
5 "deviceTimeZoneOffset": -14400,
6 "patientTimeZoneOffset": -14400,
7 "patient": {
8 "id": 1,
9 "externalIdentifier": "1234abcd",
10 "firstName": "John",
11 "lastName": "Doe",
12 "dateOfBirth": "1980-01-01",
13 "email": "john.doe@example.com",
14 "phoneNumber": "+1234567890",
15 "archived": true,
16 "address": {
17 "lineOne": "string",
18 "lineTwo": "string",
19 "lineThree": "string",
20 "city": "string",
21 "state": "string",
22 "zipCode": "string",
23 "country": "string",
24 "note": "string"
25 },
26 "site": {
27 "id": 1,
28 "name": "string",
29 "active": true,
30 "address": {
31 "lineOne": "string",
32 "lineTwo": "string",
33 "lineThree": "string",
34 "city": "string",
35 "state": "string",
36 "zipCode": "string",
37 "country": "string",
38 "note": "string"
39 }
40 },
41 "enrolled": true,
42 "sex": "other"
43 },
44 "item": {
45 "id": 1,
46 "manufacturer": {
47 "id": 1,
48 "name": "string"
49 },
50 "name": "string",
51 "model": "string",
52 "sku": "string",
53 "orderable": true
54 },
55 "device": {
56 "id": 1,
57 "item": {
58 "id": 1,
59 "manufacturer": {
60 "id": 1,
61 "name": "string"
62 },
63 "name": "string",
64 "model": "string",
65 "sku": "string",
66 "orderable": true
67 },
68 "currentStatus": "string",
69 "used": true,
70 "currentPatient": {
71 "id": 1,
72 "externalIdentifier": "1234abcd",
73 "firstName": "John",
74 "lastName": "Doe",
75 "dateOfBirth": "1980-01-01",
76 "email": "john.doe@example.com",
77 "phoneNumber": "+1234567890",
78 "archived": true,
79 "address": {
80 "lineOne": "string",
81 "lineTwo": "string",
82 "lineThree": "string",
83 "city": "string",
84 "state": "string",
85 "zipCode": "string",
86 "country": "string",
87 "note": "string"
88 },
89 "site": {
90 "id": 1,
91 "name": "string",
92 "active": true,
93 "address": {
94 "lineOne": "string",
95 "lineTwo": "string",
96 "lineThree": "string",
97 "city": "string",
98 "state": "string",
99 "zipCode": "string",
100 "country": "string",
101 "note": "string"
102 }
103 },
104 "enrolled": true,
105 "sex": "other"
106 },
107 "site": {
108 "id": 1,
109 "name": "string",
110 "active": true,
111 "address": {
112 "lineOne": "string",
113 "lineTwo": "string",
114 "lineThree": "string",
115 "city": "string",
116 "state": "string",
117 "zipCode": "string",
118 "country": "string",
119 "note": "string"
120 }
121 },
122 "lastHealthCheck": "string",
123 "deviceIdentifiers": [
124 {
125 "type": "string",
126 "value": "string"
127 }
128 ],
129 "deviceEvents": [
130 {
131 "type": "string",
132 "eventTimestamp": "string"
133 }
134 ],
135 "externalIdentifier": "string",
136 "disabledReadings": true
137 },
138 "temperatureUnit": "string",
139 "temperature": 0.1
140}

TemperatureReadingRequest

This page describes Impilo’s temperature reading model.

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe id of the device that took the reading.
deviceIdentifierstringfalseThe device identifier of the device that took the reading.
patientIdinteger(int64)falseThe id of the patient that took the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
temperatureUnitTemperatureUnittrueThe unit in which the temperature was measured.
temperaturenumber(double)trueThe temperature measurement value.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
TemperatureReadingRequest Model Sample
1{
2 "deviceId": 0,
3 "deviceIdentifier": "string",
4 "patientId": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "deviceTimeZoneOffset": -14400,
7 "temperatureUnit": "C",
8 "temperature": 0.1,
9 "manual": true
10}

TemperatureUnit

Enumerated Values

NameDesciption
CTemperature unit of measurement is Celsius.
FTemperature unit of measurement is Fahrenheit.
TemperatureUnit Model Sample
1"C"

TestBloodGlucoseWebhookRequest

Request model for testing blood glucose webhook.

Properties

NameTypeRequiredDescription
patientIdinteger(int64)falseUnique identifier for the patient.
glucoseinteger(int32)falseThe blood glucose measurement value.
TestBloodGlucoseWebhookRequest Model Sample
1{
2 "patientId": 0,
3 "glucose": 0
4}

TestBloodOxygenWebhookRequest

Request model for testing blood oxygen webhook.

Properties

NameTypeRequiredDescription
patientIdinteger(int64)falseUnique identifier for the patient.
bloodOxygeninteger(int32)falseThe blood oxygen (spo2) measurement value.
heartRateinteger(int32)falseThe heart rate measurement value.
TestBloodOxygenWebhookRequest Model Sample
1{
2 "patientId": 0,
3 "bloodOxygen": 0,
4 "heartRate": 0
5}

TestBloodPressureWebhookRequest

Request model for testing blood pressure webhook.

Properties

NameTypeRequiredDescription
patientIdinteger(int64)falseUnique identifier for the patient.
systolicinteger(int32)falseThe systolic blood pressure measurement value.
diastolicinteger(int32)falseThe diastolic blood pressure measurement value.
heartRateinteger(int32)falseThe heart rate measurement value.
TestBloodPressureWebhookRequest Model Sample
1{
2 "patientId": 0,
3 "systolic": 0,
4 "diastolic": 0,
5 "heartRate": 0
6}

TestDeviceAssociationWebhook

Request model for testing device association webhook.

Properties

NameTypeRequiredDescription
patientIdinteger(int64)falseUnique identifier for the patient.
deviceIdinteger(int64)falseUnique identifier for the device.
deviceIdentifierstringfalseThe identifier of the device.
TestDeviceAssociationWebhook Model Sample
1{
2 "patientId": 0,
3 "deviceId": 0,
4 "deviceIdentifier": "string"
5}

TestOrderStatusFullWebhook

Request model for testing order status webhook.

Properties

NameTypeRequiredDescription
orderIdinteger(int64)falseUnique identifier for the order.
externalOrderIds[string]falseList of external order identifiers.
patientIdinteger(int64)falseUnique identifier for the patient.
orderStatusstringfalseCurrent status of the order.
trackingNumberstringfalseTracking number for the order shipment.
TestOrderStatusFullWebhook Model Sample
1{
2 "orderId": 0,
3 "externalOrderIds": [
4 "string"
5 ],
6 "patientId": 0,
7 "orderStatus": "string",
8 "trackingNumber": "string"
9}

TestOrderStatusWebhookRequest

Properties

NameTypeRequiredDescription
orderIdinteger(int64)falseUnique identifier for the order, managed by Impilo. Randomly generated for test webhooks.
externalOrderIds[string]falseList of order ids
orderStatusNamestringtrueOrder status name
TestOrderStatusWebhookRequest Model Sample
1{
2 "orderId": 1,
3 "externalOrderIds": [
4 1,
5 2
6 ],
7 "orderStatusName": "ORDER_PLACED"
8}

TestWeightWebhookRequest

Request model for testing weight webhook.

Properties

NameTypeRequiredDescription
patientIdinteger(int64)falseUnique identifier for the patient.
weightnumber(double)falseThe weight measurement value.
TestWeightWebhookRequest Model Sample
1{
2 "patientId": 0,
3 "weight": 0.1
4}

TrackingNumber

The tracking number model includes details about the shipping carrier and the tracking number value.

Properties

NameTypeRequiredDescription
carrierstringfalseThe shipping carrier for this tracking number.
valuestringfalseThe tracking number value.
TrackingNumber Model Sample
1{
2 "carrier": "string",
3 "value": "string"
4}

TransferRequest

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the TransferRequest.
fromCustomerCustomerfalseCustomer from which the Inventory will be transferred away from. Typically auto-set to the caller of the TransferRequest endpoints.
toCustomerCustomerfalseThe target Customer to send the requested Inventory to.
currentStatusTransferRequestStatusfalsenone
createdAtstring(date-time)falseThe timestamp when the Transfer Request was first created.
transferRequestNotes[TransferRequestNote]falseNotes attached to this Transfer Request.
transferRequestEvents[TransferRequestEvent]falseThe sequence of events that this Transfer Request has undergone. Sorted most recent event first.
requestedEntries[TransferRequestEntry]falseThe Inventory that’s being requested to transfer. Can consist of a Device, or a combination of an Item and a Quantity.
TransferRequest Model Sample
1{
2 "id": 0,
3 "fromCustomer": {
4 "id": 0,
5 "name": "string"
6 },
7 "toCustomer": {
8 "id": 0,
9 "name": "string"
10 },
11 "currentStatus": "requested",
12 "createdAt": "2019-08-24T14:15:22Z",
13 "transferRequestNotes": [
14 {
15 "note": "string",
16 "createdAt": "2022-03-10T16:15:50Z"
17 }
18 ],
19 "transferRequestEvents": [
20 {
21 "name": "requested",
22 "eventTimestamp": "2019-08-24T14:15:22Z"
23 }
24 ],
25 "requestedEntries": [
26 {
27 "device": {
28 "id": 1,
29 "item": {
30 "id": 1,
31 "manufacturer": {
32 "id": 1,
33 "name": "string"
34 },
35 "name": "string",
36 "model": "string",
37 "sku": "string",
38 "orderable": true
39 },
40 "currentStatus": "string",
41 "used": true,
42 "currentPatient": {
43 "id": 1,
44 "externalIdentifier": "1234abcd",
45 "firstName": "John",
46 "lastName": "Doe",
47 "dateOfBirth": "1980-01-01",
48 "email": "john.doe@example.com",
49 "phoneNumber": "+1234567890",
50 "archived": true,
51 "address": {
52 "lineOne": "string",
53 "lineTwo": "string",
54 "lineThree": "string",
55 "city": "string",
56 "state": "string",
57 "zipCode": "string",
58 "country": "string",
59 "note": "string"
60 },
61 "site": {
62 "id": 1,
63 "name": "string",
64 "active": true,
65 "address": {
66 "lineOne": "string",
67 "lineTwo": "string",
68 "lineThree": "string",
69 "city": "string",
70 "state": "string",
71 "zipCode": "string",
72 "country": "string",
73 "note": "string"
74 }
75 },
76 "enrolled": true,
77 "sex": "other"
78 },
79 "site": {
80 "id": 1,
81 "name": "string",
82 "active": true,
83 "address": {
84 "lineOne": "string",
85 "lineTwo": "string",
86 "lineThree": "string",
87 "city": "string",
88 "state": "string",
89 "zipCode": "string",
90 "country": "string",
91 "note": "string"
92 }
93 },
94 "lastHealthCheck": "string",
95 "deviceIdentifiers": [
96 {
97 "type": "string",
98 "value": "string"
99 }
100 ],
101 "deviceEvents": [
102 {
103 "type": "string",
104 "eventTimestamp": "string"
105 }
106 ],
107 "externalIdentifier": "string",
108 "disabledReadings": true
109 },
110 "item": {
111 "id": 1,
112 "manufacturer": {
113 "id": 1,
114 "name": "string"
115 },
116 "name": "string",
117 "model": "string",
118 "sku": "string",
119 "orderable": true
120 },
121 "quantity": 0
122 }
123 ]
124}

TransferRequestEntry

Properties

NameTypeRequiredDescription
deviceDevicefalseThe Device being requested to transfer to the target customer.
itemItemfalseThe Item type that’s being requested to transfer to the target customer. Used in conjunction with the quantity parameter.
quantityinteger(int32)falseThe quantity of Item types to transfer to the target customer. Used in conjunction with the item parameter.
TransferRequestEntry Model Sample
1{
2 "device": {
3 "id": 1,
4 "item": {
5 "id": 1,
6 "manufacturer": {
7 "id": 1,
8 "name": "string"
9 },
10 "name": "string",
11 "model": "string",
12 "sku": "string",
13 "orderable": true
14 },
15 "currentStatus": "string",
16 "used": true,
17 "currentPatient": {
18 "id": 1,
19 "externalIdentifier": "1234abcd",
20 "firstName": "John",
21 "lastName": "Doe",
22 "dateOfBirth": "1980-01-01",
23 "email": "john.doe@example.com",
24 "phoneNumber": "+1234567890",
25 "archived": true,
26 "address": {
27 "lineOne": "string",
28 "lineTwo": "string",
29 "lineThree": "string",
30 "city": "string",
31 "state": "string",
32 "zipCode": "string",
33 "country": "string",
34 "note": "string"
35 },
36 "site": {
37 "id": 1,
38 "name": "string",
39 "active": true,
40 "address": {
41 "lineOne": "string",
42 "lineTwo": "string",
43 "lineThree": "string",
44 "city": "string",
45 "state": "string",
46 "zipCode": "string",
47 "country": "string",
48 "note": "string"
49 }
50 },
51 "enrolled": true,
52 "sex": "other"
53 },
54 "site": {
55 "id": 1,
56 "name": "string",
57 "active": true,
58 "address": {
59 "lineOne": "string",
60 "lineTwo": "string",
61 "lineThree": "string",
62 "city": "string",
63 "state": "string",
64 "zipCode": "string",
65 "country": "string",
66 "note": "string"
67 }
68 },
69 "lastHealthCheck": "string",
70 "deviceIdentifiers": [
71 {
72 "type": "string",
73 "value": "string"
74 }
75 ],
76 "deviceEvents": [
77 {
78 "type": "string",
79 "eventTimestamp": "string"
80 }
81 ],
82 "externalIdentifier": "string",
83 "disabledReadings": true
84 },
85 "item": {
86 "id": 1,
87 "manufacturer": {
88 "id": 1,
89 "name": "string"
90 },
91 "name": "string",
92 "model": "string",
93 "sku": "string",
94 "orderable": true
95 },
96 "quantity": 0
97}

TransferRequestEvent

Properties

NameTypeRequiredDescription
nameTransferRequestStatusfalsenone
eventTimestampstring(date-time)falseThe timestamp when this event took place.
TransferRequestEvent Model Sample
1{
2 "name": "requested",
3 "eventTimestamp": "2019-08-24T14:15:22Z"
4}

TransferRequestNote

Properties

NameTypeRequiredDescription
notestringfalseThe note that is linked to a Transfer Request.
createdAtInstantfalseThe timestamp when the note was created.
TransferRequestNote Model Sample
1{
2 "note": "string",
3 "createdAt": "2022-03-10T16:15:50Z"
4}

TransferRequestStatus

Enumerated Values

NameDesciption
requestedTransfer request has been requested.
approvedTransfer request has been approved.
pendingInventoryTransfer request is pending inventory.
voidedTransfer request has been voided.
completedTransfer request has been completed.
TransferRequestStatus Model Sample
1"requested"

ValidateDeviceResponse

Properties

NameTypeRequiredDescription
validbooleanfalseA Boolean value of whether this device identifier is validated or not.
deviceDevicefalseThe Device associated with the provided Device Identifier, if exists.
ValidateDeviceResponse Model Sample
1{
2 "valid": true,
3 "device": {
4 "id": 1,
5 "item": {
6 "id": 1,
7 "manufacturer": {
8 "id": 1,
9 "name": "string"
10 },
11 "name": "string",
12 "model": "string",
13 "sku": "string",
14 "orderable": true
15 },
16 "currentStatus": "string",
17 "used": true,
18 "currentPatient": {
19 "id": 1,
20 "externalIdentifier": "1234abcd",
21 "firstName": "John",
22 "lastName": "Doe",
23 "dateOfBirth": "1980-01-01",
24 "email": "john.doe@example.com",
25 "phoneNumber": "+1234567890",
26 "archived": true,
27 "address": {
28 "lineOne": "string",
29 "lineTwo": "string",
30 "lineThree": "string",
31 "city": "string",
32 "state": "string",
33 "zipCode": "string",
34 "country": "string",
35 "note": "string"
36 },
37 "site": {
38 "id": 1,
39 "name": "string",
40 "active": true,
41 "address": {
42 "lineOne": "string",
43 "lineTwo": "string",
44 "lineThree": "string",
45 "city": "string",
46 "state": "string",
47 "zipCode": "string",
48 "country": "string",
49 "note": "string"
50 }
51 },
52 "enrolled": true,
53 "sex": "other"
54 },
55 "site": {
56 "id": 1,
57 "name": "string",
58 "active": true,
59 "address": {
60 "lineOne": "string",
61 "lineTwo": "string",
62 "lineThree": "string",
63 "city": "string",
64 "state": "string",
65 "zipCode": "string",
66 "country": "string",
67 "note": "string"
68 }
69 },
70 "lastHealthCheck": "string",
71 "deviceIdentifiers": [
72 {
73 "type": "string",
74 "value": "string"
75 }
76 ],
77 "deviceEvents": [
78 {
79 "type": "string",
80 "eventTimestamp": "string"
81 }
82 ],
83 "externalIdentifier": "string",
84 "disabledReadings": true
85 }
86}

Webhook

Impilo supports various types of webhooks. This page describes the endpoints available for managing your webhooks.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the webhook managed by Impilo.
typestringtrueThe event type for the webhook.
urlstringtrueThe URL where events for this webhook will be sent.
Webhook Model Sample
1{
2 "id": 1,
3 "type": "eventType",
4 "url": "http://example.com"
5}

WebhookLog

Represents a log for a webhook.

Properties

NameTypeRequiredDescription
webhookIdinteger(int64)falseID of the webhook
webhookTypeWebhookTypefalseType of the webhook
webhookUrlstringfalseURL of the webhook
payloadstringfalsePayload sent with the webhook
createTimestampstring(date-time)falseTimestamp when the webhook was sent
lastResponseStatusinteger(int32)falseLast response status for the webhook
retryAttemptsinteger(int32)falseNumber of retry attempts for the webhook
lastRetryTimestampstring(date-time)falseTimestamp of the last retry attempt for the webhook
WebhookLog Model Sample
1{
2 "webhookId": 1,
3 "webhookType": "order.status",
4 "webhookUrl": "http://webhookserver.com",
5 "payload": "{'id':1234}",
6 "createTimestamp": "2023-08-22T14:15:30.345Z",
7 "lastResponseStatus": 200,
8 "retryAttempts": 3,
9 "lastRetryTimestamp": "2023-08-22T14:15:30.345Z"
10}

WebhookPayload

Impilo supports various types of webhooks. This page describes the endpoints available for managing your webhooks.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the webhook payload, managed by Impilo.
typestringfalseThe event type for the webhook.
payloadanyfalseThe payload of the webhook.
WebhookPayload Model Sample
1{
2 "id": 1,
3 "type": "string",
4 "payload": null
5}

WebhookSecret

Properties

NameTypeRequiredDescription
secretstringfalseSecret we will pass along with any Webhooks we send to your subscribed endpoints.
WebhookSecret Model Sample
1{
2 "secret": "string"
3}

WebhookType

Enumerated Values

NameDesciption
procurement.statusFullA procurement status event occurred. The payload includes the full procurement model.
supportTicket.eventA support ticket event took place.
reading.bloodOxygenA reading of blood oxygen was taken.
order.statusAn order status event occurred. The payload only includes order id and order event type.
transferRequest.statusFullA transfer request status event occurred. The payload includes the full transfer request model.
device.lowBatteryA device sent a low battery signal.
return.statusFullA return status event was triggered.
patient.updatedA patient’s details were updated.
reading.bloodPressureA reading of blood pressure was taken.
procurement.statusA procurement status event occurred. The payload only includes procurement id and event type.
device.associationCreatedA patient-device association was created.
device.associationRemovedA patient-device association was removed.
patient.createdA new patient was created.
reading.weightA body weight reading was taken.
reading.temperatureA body temperature reading was taken.
transferRequest.statusA transfer request status event occurred. The payload only includes transfer request id and transfer request event type.
return.statusA return status event was triggered.
reading.bloodGlucoseA reading of blood glucose was taken.
device.weakSignalA device sent a weak signal.
order.statusFullAn order status event occurred. The payload includes the full order model.
WebhookType Model Sample
1"procurement.statusFull"

WeightReading

This page describes Impilo’s weight reading model.

Properties

NameTypeRequiredDescription
idinteger(int64)falseUnique identifier for the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
patientTimeZoneOffsetinteger(int32)falseThe offset of the patient’s timezone from UTC in seconds. Null if unavailable.
patientPatientfalseThe patient who took the reading.
itemItemfalseThe item used to take the reading.
deviceDevicefalseThe device used to take the reading.
weightnumber(double)trueThe weight reading in lbs.
weightUnitWeightUnitfalsenone
WeightReading Model Sample
1{
2 "id": 0,
3 "readingTimestamp": "2019-08-24T14:15:22Z",
4 "manual": true,
5 "deviceTimeZoneOffset": -14400,
6 "patientTimeZoneOffset": -14400,
7 "patient": {
8 "id": 1,
9 "externalIdentifier": "1234abcd",
10 "firstName": "John",
11 "lastName": "Doe",
12 "dateOfBirth": "1980-01-01",
13 "email": "john.doe@example.com",
14 "phoneNumber": "+1234567890",
15 "archived": true,
16 "address": {
17 "lineOne": "string",
18 "lineTwo": "string",
19 "lineThree": "string",
20 "city": "string",
21 "state": "string",
22 "zipCode": "string",
23 "country": "string",
24 "note": "string"
25 },
26 "site": {
27 "id": 1,
28 "name": "string",
29 "active": true,
30 "address": {
31 "lineOne": "string",
32 "lineTwo": "string",
33 "lineThree": "string",
34 "city": "string",
35 "state": "string",
36 "zipCode": "string",
37 "country": "string",
38 "note": "string"
39 }
40 },
41 "enrolled": true,
42 "sex": "other"
43 },
44 "item": {
45 "id": 1,
46 "manufacturer": {
47 "id": 1,
48 "name": "string"
49 },
50 "name": "string",
51 "model": "string",
52 "sku": "string",
53 "orderable": true
54 },
55 "device": {
56 "id": 1,
57 "item": {
58 "id": 1,
59 "manufacturer": {
60 "id": 1,
61 "name": "string"
62 },
63 "name": "string",
64 "model": "string",
65 "sku": "string",
66 "orderable": true
67 },
68 "currentStatus": "string",
69 "used": true,
70 "currentPatient": {
71 "id": 1,
72 "externalIdentifier": "1234abcd",
73 "firstName": "John",
74 "lastName": "Doe",
75 "dateOfBirth": "1980-01-01",
76 "email": "john.doe@example.com",
77 "phoneNumber": "+1234567890",
78 "archived": true,
79 "address": {
80 "lineOne": "string",
81 "lineTwo": "string",
82 "lineThree": "string",
83 "city": "string",
84 "state": "string",
85 "zipCode": "string",
86 "country": "string",
87 "note": "string"
88 },
89 "site": {
90 "id": 1,
91 "name": "string",
92 "active": true,
93 "address": {
94 "lineOne": "string",
95 "lineTwo": "string",
96 "lineThree": "string",
97 "city": "string",
98 "state": "string",
99 "zipCode": "string",
100 "country": "string",
101 "note": "string"
102 }
103 },
104 "enrolled": true,
105 "sex": "other"
106 },
107 "site": {
108 "id": 1,
109 "name": "string",
110 "active": true,
111 "address": {
112 "lineOne": "string",
113 "lineTwo": "string",
114 "lineThree": "string",
115 "city": "string",
116 "state": "string",
117 "zipCode": "string",
118 "country": "string",
119 "note": "string"
120 }
121 },
122 "lastHealthCheck": "string",
123 "deviceIdentifiers": [
124 {
125 "type": "string",
126 "value": "string"
127 }
128 ],
129 "deviceEvents": [
130 {
131 "type": "string",
132 "eventTimestamp": "string"
133 }
134 ],
135 "externalIdentifier": "string",
136 "disabledReadings": true
137 },
138 "weight": 0.1,
139 "weightUnit": "lbs"
140}

WeightReadingRequest

This page describes Impilo’s weight reading model.

Properties

NameTypeRequiredDescription
deviceIdinteger(int64)falseThe id of the device that took the reading.
deviceIdentifierstringfalseThe device identifier of the device that took the reading.
patientIdinteger(int64)falseThe id of the patient that took the reading.
readingTimestampstring(date-time)trueThe UTC timestamp at which the reading was taken.
deviceTimeZoneOffsetinteger(int32)falseThe offset of the device’s timezone from UTC in seconds. Null if unavailable.
weightnumber(double)trueThe weight reading value in lbs.
manualbooleanfalseTrue if the reading value was entered manually, false or null otherwise.
WeightReadingRequest Model Sample
1{
2 "deviceId": 0,
3 "deviceIdentifier": "string",
4 "patientId": 0,
5 "readingTimestamp": "2022-03-10T16:15:50Z",
6 "deviceTimeZoneOffset": -14400,
7 "weight": 0.1,
8 "manual": true
9}

WeightUnit

Enumerated Values

NameDesciption
lbsWeight unit of measurement is pounds.
WeightUnit Model Sample
1"lbs"