Download OpenAPI specification:Download
HiConnect enhances the productivity of your business through connected Hiab equipment. The technology provides real-time insights into equipment utilisation, operation, and condition. This data can be used to actively optimise performance, safety and avoid unnecessary downtime. You can now access the data through the HiConnect API. The HiConnect API is available for our HiConnect Premium customers. Are you interested in becoming a HiConnect Premium customer: https://www.hiab.com/en/digital-solutions/hiconnect
To gain access to the API, all calls needs to contain an authentication token. You can download the user specific token from the HiConnect portal (https://hiconnect.hiab.com). The API can be found under settings. This token gives you access to all your equipment via the public API.
Security Scheme Type | API Key |
---|---|
Header parameter name: | Authorization |
One API user is limited to 10 requests per second per endpoint. We reserve the right to change this at any time. We will send notifications of API changes in advance.
Returns a list of all of your connected equipment. The response contains the serial numbers and equipment type, and these parameters can be used as filters in the other API queries.
equipmentType | string (EquipmentType) Enum: "TMFL" "E_TMFL" "TAIL_LIFT" "LOADER_CRANE" "DEMOUNTABLE" String identifying the equipment type. Use |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
equipmentSerialNumber | Array of strings (EquipmentSerialNumber) [ items <= 100 ] Serial number identifying the piece of equipment. Use |
{- "objects": [
- {
- "equipmentSerialNumber": "string",
- "equipmentType": "TMFL",
- "customerNumber": "string",
- "customerName": "string",
- "lastCommunicationTime": "2019-08-24T14:15:22Z",
- "hiconnectContract": "FREE",
- "hiconnectContractEndDate": "2019-08-24"
}
]
}
Returns the latest known positions of your equipment.
equipmentSerialNumber | Array of strings (EquipmentSerialNumber) [ items <= 100 ] Serial number identifying the piece of equipment. Use |
equipmentType | string (EquipmentType) Enum: "TMFL" "E_TMFL" "TAIL_LIFT" "LOADER_CRANE" "DEMOUNTABLE" String identifying the equipment type. Use |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
{- "objects": {
- "equipmentSerialNumber": "string",
- "time": "2019-08-24T14:15:22Z",
- "latitude": 0,
- "longitude": 0,
- "speed": 0,
- "heading": 0
}
}
List previous locations of your equipment.
equipmentSerialNumber required | string (EquipmentSerialNumber) <= 100 Serial number identifying the piece of equipment. Use |
from | string <date-time> (DateTime) Earliest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
to | string <date-time> (DateTime) Latest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
sortDir | string (SortDir) Default: "DESC" Enum: "ASC" "DESC" Select the sorting order (latest first or oldest first) by location time. Use "ASC" or "DESC" to set the order. |
{- "objects": {
- "equipmentSerialNumber": "string",
- "time": "2019-08-24T14:15:22Z",
- "latitude": 0,
- "longitude": 0,
- "speed": 0,
- "heading": 0
}
}
A visit is an event where the equipment is used. The call returns the duration, position and cycles for the visit. Due to the large amount of data, the query is always restricted to a single device identified by its serial number. The call can be paginated using limit and offset parameters or retrieve visit data for a specific range of time using the parameters from and to.
equipmentSerialNumber required | string (EquipmentSerialNumber) <= 100 Serial number identifying the piece of equipment. Use |
from | string <date-time> (DateTime) Earliest events to include in the results (by visit start time). Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
to | string <date-time> (DateTime) Latest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (VisitsLimit) [ 0 .. 100 ] Default: 100 Limit the returned data to n objects. |
{- "objects": [
- {
- "id": "string",
- "equipmentSerialNumber": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "type": "PENDING",
- "timezone": "string",
- "location": {
- "latitude": 0,
- "longitude": 0
}, - "kpis": {
- "cycles": 0,
- "notificationCount": 0,
- "errorCount": 0,
- "drivingDistance": 0,
- "operatingTime": 0,
- "remoteControl": 0,
- "fastSpeed": 0,
- "loadUnloadCycles": 0,
- "tippingCycles": 0,
- "avgWeight": 0,
- "maxWeight": 0,
- "stabilizersTime": 0,
- "totTime": 0,
- "idleTime": 0,
- "useTime": 0,
- "runningTime": 0,
- "lowUsage": 0,
- "mediumUsage": 0,
- "highUsage": 0,
- "fuelUsage": 0,
- "avgPowerUsage": 0,
- "drivingDistanceOffTruck": 0,
- "batteryUsed": 0,
- "netAmpHoursUsed": 0,
- "downCycles": 0,
- "gravityDownCycles": 0,
- "motorFunctions": 0,
- "auxiliaryTime": 0,
- "batteryVoltageMin": 0,
- "batteryVoltageAvg": 0,
- "batteryVoltageMax": 0,
- "temperatureMin": 0,
- "temperatureAvg": 0,
- "temperatureMax": 0,
- "pressureMin": 0,
- "pressureAvg": 0,
- "pressureMax": 0
}, - "weighings": [
- {
- "time": "2019-08-24T14:15:22Z",
- "weight": 0
}
]
}
]
}
View service history and plan upcoming services based on real time service counters based on actual usage. From one easily accessible central point, data can help to: - Identify usage patterns to help track and increase equipment lifetime. - Prepare for service before equipment arrives to optimise service needs. - Provide granular views of individual machine activity to avoid unexpected downtime.
HiConnect looks at how much an equipment was used (cycles, use time, on time) from the past 6 months and predicts when the counters will reach their interval limit. The date the first counter is predicted to reach the interval limit is used as the “next service date”. The service date will be set as the date the first counter reached its interval limit and will remain unchanged until maintenance is done. If a maintenance plan exists, its schedule will supersede the service counters status in determining the upcoming service date (i.e. upcoming service date will be presented based on the maintenance plan schedule, not on the service counters status). The service counters status is nevertheless visible in a single equipment details in HiConnect (Service tab).
equipmentSerialNumber | Array of strings (EquipmentSerialNumber) [ items <= 100 ] Serial number identifying the piece of equipment. Use |
equipmentType | string (EquipmentType) Enum: "TMFL" "E_TMFL" "TAIL_LIFT" "LOADER_CRANE" "DEMOUNTABLE" String identifying the equipment type. Use |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
{- "objects": [
- {
- "equipmentSerialNumber": "string",
- "serviceCountersDueInDays": 0,
- "serviceCountersDueAtDate": "2019-08-24T14:15:22Z",
- "cyclesLeftUntilService": 0,
- "useTimeLeftUntilServiceInHours": 0,
- "totalTimeLeftUntilServiceInHours": 0,
- "dayCounterLeftUntilService": 0
}
]
}
Whenever a service order linked to the equipment is marked as done, a new entry is added to the service history list in HiConnect. With this api you will get the list of services done for your equipment.
equipmentSerialNumber | Array of strings (EquipmentSerialNumber) [ items <= 100 ] Serial number identifying the piece of equipment. Use |
equipmentType | string (EquipmentType) Enum: "TMFL" "E_TMFL" "TAIL_LIFT" "LOADER_CRANE" "DEMOUNTABLE" String identifying the equipment type. Use |
serviceOrderType | string <= 100 Type of the service order (e.g. warranty or normal service). |
serviceProvider | string <= 100 The company that provided the service. |
serviceStatus | Array of strings (ServiceHistoryStatus) Items Enum: "WORK_DONE" "WORK_COMPLETED" "CLOSED" "MARKED_DONE_IN_HICONNECT" "DONE_BY_COUNTER_RESET" Status of the service. Please refer to schemas for a complete list. |
serviceTypeCode | Array of strings[ items <= 100 ] Code indicating the type of the service. |
serviceTypeName | Array of strings[ items <= 100 ] Name of the service type performed on the equipment. |
from | string <date-time> (DateTime) Earliest events to include in the results (by service completion date). Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
to | string <date-time> (DateTime) Latest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
sortDir | string (SortDir) Default: "DESC" Enum: "ASC" "DESC" Select the sorting order (latest first or oldest first) by service completion date. Use "ASC" or "DESC" to set the order. |
{- "objects": [
- {
- "id": "string",
- "equipmentSerialNumber": "string",
- "serviceStatus": "WORK_DONE",
- "completedDate": "2019-08-24T14:15:22Z",
- "orderedOrPlannedDate": "2019-08-24T14:15:22Z",
- "serviceOrderType": "string",
- "serviceProvider": "string",
- "serviceCounterResetSignalName": "string",
- "serviceTypeCode": "string",
- "serviceTypeName": "string"
}
]
}
This interface lists the upcoming services for the equipment. The next service date is set either based on the service counters or the maintenance plan.
equipmentSerialNumber | Array of strings (EquipmentSerialNumber) [ items <= 100 ] Serial number identifying the piece of equipment. Use |
equipmentType | string (EquipmentType) Enum: "TMFL" "E_TMFL" "TAIL_LIFT" "LOADER_CRANE" "DEMOUNTABLE" String identifying the equipment type. Use |
serviceStatus | Array of strings (UpcomingServiceStatus) Items Enum: "PLANNED" "BOOKED" "FROM_SERVICE_COUNTERS" Status of the service. This can include BOOKED or PLANNED services. Please refer to schemas for a complete list. |
serviceSource | Array of strings[ items <= 100 ] Agreement for the service event (e.g. Procare Essentials). |
serviceTypeCode | Array of strings[ items <= 100 ] Code indicating the type of the service. |
from | string <date-time> (DateTime) Earliest events (by minimum serviceDate) to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
to | string <date-time> (DateTime) Latest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
sortDir | string (SortDir) Default: "DESC" Enum: "ASC" "DESC" Sort objects by serviceDate, ascending or descending |
{- "objects": [
- {
- "id": "string",
- "equipmentSerialNumber": "string",
- "serviceStatus": "PLANNED",
- "serviceCountersOverdue": true,
- "serviceDate": "2019-08-24T14:15:22Z",
- "serviceSource": "string",
- "serviceTypeCode": "string"
}
]
}
HiConnect maintains constant contact with all units, giving fleet managers the ability to stop unsafe behaviour and usage before an incident happens. A notification is created for misuse of equipment. With this interface you can query for all notifications for a certain equipment and time range.
equipmentSerialNumber required | Array of strings (EquipmentSerialNumber) [ items <= 100 ] Serial number identifying the piece of equipment. Use |
equipmentType | string (EquipmentType) Enum: "TMFL" "E_TMFL" "TAIL_LIFT" "LOADER_CRANE" "DEMOUNTABLE" String identifying the equipment type. Use |
eventType | string (EventType) Enum: "ERROR" "NOTIFICATION" |
activeOnly | boolean Default: false Set to "true" to return only events that are happening at this moment (no end time yet). |
from | string <date-time> (DateTime) Earliest events to include in the results (by visit start time). Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
to | string <date-time> (DateTime) Latest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
{- "objects": {
- "equipmentSerialNumber": "string",
- "eventId": "string",
- "eventType": "ERROR",
- "description": "string",
- "code": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "durationSeconds": 0,
- "location": {
- "latitude": 0,
- "longitude": 0,
- "speed": 0,
- "heading": 0
}
}
}
HiConnect gathers data from the equipment. With this interface you can query for individual data points that has been collected.
Get a list of available data signals for an equipment type.
equipmentType required | string (EquipmentType) Enum: "TMFL" "E_TMFL" "TAIL_LIFT" "LOADER_CRANE" "DEMOUNTABLE" String identifying the equipment type. Use |
{- "objects": [
- {
- "name": "string",
- "unit": "string",
- "dataType": "string"
}
]
}
This endpoint is for fetching data from the equipment. Please refer to List of Data Signals for elaboration on what data can be fetched for which equipment type.
offset | integer <int32> (Offset) >= 0 Default: 0 Skip the first n results. Use together with |
limit | integer <int32> (Limit) [ 0 .. 500 ] Default: 500 Limit the returned data to n objects. |
equipmentSerialNumber required | Array of strings (EquipmentSerialNumber) [ items <= 100 ] Serial number identifying the piece of equipment. Use |
interval | integer <int32> *When using aggregation:* Interval for the data aggregation. |
intervalUnit | Array of strings Items Enum: "H" "D" "W" *When using aggregation:* Unit of the interval set in the |
signalName required | Array of strings Read data for named signals from a piece of equipment. |
from | string <date-time> (DateTime) Earliest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
to | string <date-time> (DateTime) Latest events to include in the results. Enter time and date as an ISO-8601 datetime string ( e.g. "2020-10-27T13:21:57.391Z"). |
aggregation | string Enum: "MEAN" "MIN" "MAX" "COUNT" "SUM" "FIRST" "LAST" "DIFFERENCE" *When using aggregation:* Select how the data is aggregated. |
timezone | string Default: "UTC" *When using aggregation:* Timezone used to determine when the day changes etc. Use the Java Timezone ID format to indicate the timezone. |
sortDir | string (SortDir) Default: "DESC" Enum: "ASC" "DESC" Select the sorting order (latest first or oldest first) by sample time. Use "ASC" or "DESC" to set the order. |
{- "objects": [
- {
- "equipmentSerialNumber": "string",
- "signalNames": [
- "string"
], - "sampleValueRows": [
- {
- "time": "2019-08-24T14:15:22Z",
- "values": [
- 0
]
}
]
}
], - "from": "2019-08-24T14:15:22Z",
- "to": "2019-08-24T14:15:22Z"
}
{- "projectVersion": "string",
- "apiVersion": "string",
- "buildTime": "2019-08-24T14:15:22Z"
}