OUR VISION
We envision a safer world for everyone and we are hoping to provide users with the peace of
mind that they can call for help anywhere they are when an emergency occurs.
OUR MISSION
To provide affordable IoT technologies and services to not only the security and healthcare community, but to everyday consumers to improve safety and well-being.
Our API
HOW IT WORKS
1. Wearable
You provide your customer with one of our integrated Panic Buttons that works anywhere a cellular connection is available.
2. Panic
In the event of a sudden emergency, your customer can trigger a distress signal by simply pressing the Panic Button. On selected units, the device can also automatically send a distress alert if it detects a fall.
3. Control Room & API
In an emergency, the estimated GPS location will be displayed on our Emergency Platform, where the operator can call the person directly on the Panic device to assess the situation. This is also where the API comes into play — if you prefer to receive the event data on your own platform, we can route it through your configured API instead. Traffic from MyLifeline-integrated devices can be sent to your REST API, which must be capable of receiving POST requests with a model as specified in our documentation. We strongly recommend including an Authorization header when configuring your API to ensure secure communication.
4. Emergency Contacts
The customer can load up to 5 emergency contacts onto their profile which in the event of an emergency will send SMS messages to each contact including their estimated GPS location. The 5 emergency contacts will also be available as part of the workflow for the control room operator to make contact to anyone that might be be able to respond.
API Configuration
Below is the example Model that will be sent to your REST API service. Your API needs to accept a POST command of content-type: application/json with the following body:
Request Body
{
"DeviceID": "352000000000000",
"Serial": "7PW13172150JQ70A",
"ProductID": "EV04-4G",
"DeviceState": 3,
"DevicePositionType": 1,
"LastHeartbeat": "2018-10-12T14:22:37.2126427+02:00",
"Latitude": -33.00000,
"Longitude": 19.00000,
"LastLatitude": -33.00000,
"LastLongitude": 19.00000,
"Altitude": 706,
"Speed": 10,
"Direction": 23,
"Pedometer": 104,
"Satellites": 2,
"Temperature": 0,
"HeartRate": 0,
"BatteryLevel": 5,
"BatteryPerc": 100,
"CellTowers": "655@1@255@20561@58+655@1@255@14523@30+655@1@255@26591@29+655@1@255@20563@29+655@1@255@26593@23+655@1@255@20562@20+0",
"WifiAccessPoints": "02:2c:1c:ad:62:a8-79+f6:d4:7d:42:ea:14-95",
"AlertNumber": "+27820000000",
"MSISDN": "+27820000000",
"Name": "User Name",
"UserPassword": "Safe",
"UserMedical": "Medihelp | Budget | 4324223 | Fatal conditions",
"UserAddress": "12 Ochre, Riverside, Nelspruit",
"ContactsEmergency": "Contact1: +27820000000|Contact2: +27820000001|Contact3: +27820000002",
"DonotCallToDevice": false,
"IsAuraEnabled": false,
"IsAuraCalloutActive": true,
"AuraCalloutIncidentDetails": "The user has confirmed a test",
"AccountCode": "186526",
"UserVehicleCharacteristics": "Ford | Ranger 3.2 2018 XLT | White | KDV000GP",
"UserCharacteristics": "Nelspruit | Mpumulanga | 1201 | O+ | None"
}
Dictionary
{
"DeviceID": "IMEI/UID (string Up to 20 digits)", // Unique identifier of the device
"Serial": "Serial (nullable string, 16 digits)", // Optional serial number
"ProductID": "Product ID (string e.g. EV04-4G)", // Device model identifier
"DeviceState": [ enum:
0. Inactive
1. Initialize
2. Position
3. Panic
4. Heartbeat
5. LowBattery
6. Updated
7. Removed
8. GeoFence
9. Shutdown
10. Disconnected
11. EventInProgress
12. EventOnHold
13. ServerIPChange
14. ActiveTracker
15. Fall
16. NoMotion
17. BloodPressure
], // Device operational status
"DevicePositionType": [ enum:
0. None
1. GPS
2. LBS (Cell tower)
3. Wi-Fi
4. BLE
], // Location source type
"LastHeartbeat": "string ISO 8601 datetime (e.g. 2025-07-15T07:06:35.275+00:00)", // Time of last communication from device
"Latitude": "decimal", // Current latitude
"Longitude": "decimal", // Current longitude
"LastLatitude": "decimal", // Last known latitude
"LastLongitude": "decimal", // Last known longitude
"Altitude": "int (meters)", // Altitude above sea level
"Speed": "int (km/h)", // Speed of device
"Direction": "int (0–360°)", // Compass direction in degrees
"Pedometer": "int", // Step count for today
"Satellites": "int", // Number of satellites currently used
"Temperature": "int (°C)", // Temperature in Celsius
"HeartRate": "int (bpm)", // Heart rate in beats per minute
"BatteryLevel": "int (0–5)", // Battery charge level (scaled)
"BatteryPerc": "int (0–100)", // Battery charge percentage
"CellTowers": "string|nullable", // Cell tower info (used when GPS is unavailable).
"WifiAccessPoints": "string|nullable", // Wi-Fi access points (used when GPS is unavailable).
"AlertNumber": "string (+CountryCodeNumber)", // User's contact number
"MSISDN": "string (+CountryCode + SIM number)", // SIM number associated with device
"Name": "string", // Device/user friendly name
"UserPassword": "string", // User-defined duress cancellation password or code
"UserMedical": "string", // Medical info (e.g. Provider | Plan | Member No. | Conditions)
"UserAddress": "string", // User's street address
"ContactsEmergency": "string (pipe-separated 'Name:Number')", // List of emergency contacts
"DonotCallToDevice": "boolean", // If true, do not call this device
"IsAuraEnabled": "boolean", // Whether device is linked to Aura platform
"IsAuraCalloutActive": "boolean", // Whether a callout is active with Aura
"AuraCalloutIncidentDetails": "string", // Optional notes for Aura incident
"AccountCode": "string", // Account or group ID in the system
"UserVehicleCharacteristics": "string (e.g. Make | Model | Year | Color | Plate)", // Description of user's vehicle
"UserCharacteristics": "string (e.g. City | Province | Postal | BloodType | Conditions)" // User traits or special notes
}
Your API can only be configured by users with Admin privileges. The "API Settings" can be found under the "Administration", "Settings" and the "Configuration" section. The POST URL must point to your REST API endpoint, where the event data — as outlined above — will be sent. To ensure secure communication, the Authorization Header should be set to your system’s authentication token, typically formatted as a Bearer token (e.g., Authorization: Bearer <your_token>
), when making the POST request.
The type of signals to be sent through to your API can be configured under the "Signals" section.