AEMP ISO API
Our ISO Export API follows the ISO 15143-3 standard. It provides fleet-wide equipment information.
To ease system integration, additional equipment metadata is available as an optional addition to the ISO standard.
The snapshot endpoints of the Export ISO 15143-3 API are available to all customers, while the time series endpoints are only available to customers on the Evolve & Expand or the Link, Lift & Leap subscription packages. Data retention limits follow the chosen subscription package.
Interface
The API exposes a simple REST interface serving XML or JSON as output formats. You can choose the format by sending your accept header with either application/xml or application/json. XML is the default format.
Rate Limiting
Requests are rate limited to one request per url (for time series endpoints: per datapoint and equipment) every 15 minutes.
To ease development and support general troubleshooting, a pool of 50 additional requests per url is available on top of the usual rate limit rules. Each request in the pool becomes available again 30 calendar days after use.
There are also limits on allowed requests per second per customer (ie. includes all API accounts for the same customer):
- 50 requests / 1s to fleet snapshot pages,
- 500 requests / 1s to single-element snapshot endpoint,
- 500 requests / 1s to all time-series endpoints counted together.
Pagination
The AEMP ISO 15143-3 API implements pagination as described in the ISO15143-3 standard. Response collections are limited to 100 per page. The page number of the first page is always one. Each response contains "Links", which provides navigation to self, prev, next and last page.
<Links>
<rel>self</rel>
<href>https://iris.trackunit.com/public/api/aemp/v2/15143/-3/Fleet/2</href>
</Links>
<Links>
<rel>next</rel>
<href>https://iris.trackunit.com/public/api/aemp/v2/15143/-3/Fleet/3</href>
</Links>
<Links>
<rel>prev</rel>
<href>https://iris.trackunit.com/public/api/aemp/v2/15143/-3/Fleet/1</href>
</Links>
<Links>
<rel>last</rel>
<href>https://iris.trackunit.com/public/api/aemp/v2/15143/-3/Fleet/993</href>
</Links>
Additional Metadata
As an extension to the ISO standard the client can, by adding addMetadata=true as URL param, request additional metadata containing equipment related IDs used to ease system integration.
<Metadata>
<TelematicSerialNumber>927096</TelematicSerialNumber>
<MachineId>035c52d4-a533-4a83-8687-a5a7489a5af4</MachineId>
<UnitId>958947</UnitId>
<ExternalReferenceNumber>ref-927096</ExternalReferenceNumber>
</Metadata>
Additional Machine Insights
As an extension to the ISO standard Trackunit offers a collection of elements that represent Machine Insights that do not fit in the standard schema. The client can request it by adding addExtendedData=true URL param. Value is deprecated and may be removed in future releases. Specific values like BatteryPotential should instead be used.
<BatteryPotential datetime="2021-01-02T12:22:00Z">
<BatteryPotential>13.3</BatteryPotential>
<Value>13.3</Value>
</BatteryPotential>
<CumulativeMovingHours datetime="2021-01-02T12:30:52Z">
<Hour>21.05</Hour>
<Value>21.05</Value>
</CumulativeMovingHours>
The full set of machine-insight elements is defined in the extension schema. Below is a short excerpt showing the ExtendedEquipment container and two representative insight types. Each insight carries a typed value, a deprecated Value field, and a required datetime attribute.
<xs:complexType name="ExtendedEquipment">
<xs:sequence>
<!-- one optional element per machine insight; see the full schema for the complete list -->
<xs:element name="BatteryPotential" type="BatteryPotentialExtended" minOccurs="0" maxOccurs="1"/>
<xs:element name="Speed" type="SpeedExtended" minOccurs="0" maxOccurs="1"/>
<xs:element name="CumulativeMovingHours" type="CumulativeHoursExtended" minOccurs="0" maxOccurs="1"/>
<!-- ... -->
</xs:sequence>
</xs:complexType>
<xs:complexType name="BatteryPotentialExtended">
<xs:sequence>
<xs:element name="BatteryPotential" type="xs:decimal" minOccurs="0" maxOccurs="1"/>
<xs:element name="Value" type="xs:decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>This value is deprecated and may be removed in future versions. Please use BatteryPotential value instead.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="datetime" type="xs:dateTime" use="required"/>
</xs:complexType>
<xs:complexType name="SpeedExtended">
<xs:sequence>
<xs:element name="SpeedUnits" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="Speed" type="xs:decimal" minOccurs="0" maxOccurs="1"/>
<xs:element name="Value" type="xs:decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>This value is deprecated and may be removed in future versions. Please use Speed value instead.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="datetime" type="xs:dateTime" use="required"/>
</xs:complexType>
The excerpt above shows only a few elements. The complete list of machine-insight elements and their types is defined in the downloadable schema.
Constraints
If the equipment's serial number is unavailable then the telematic device's serial number will be inserted into the equipment serial number field. This is subject to change in the future as we apply to the standard.
Please obtain telematic device's serial number from additional metadata to avoid being impacted by future changes.