Product Evolution: Device Management LoRa V0 API retirement last announcement
Live Objects evolves frequently. Some legacy APIs have been replaced by new ones in 2018 and won't be supported anymore. Today we kindly remind you that the V0 of the Device Management LoRa will soon be retired.
Cet article est également disponible en Français
The API Device Management for LoRa V0 has been deprecated since 28/02/2018 and will be retired on the 31/07/2022
This API is replaced by a number of APIs, depending on the endpoint involved, and these APIs are as follows :
- DeviceManagement – Inventory V1
- Inventory Explorer V1
- DeviceManagement – Interfaces V1
- DeviceManagement – Commands V1
- DeviceManagement – Connector Nodes – LoRa SpecificV1
For each of the endpoints to be migrated, there is a solution on how to proceed, which is summed up below
Preliminary considerations
Attention :
For some endpoints, the input argument has changed : you will be using {deviceId} instead of {devEui} .
It is easily built from the {devEui} :
urn:lo:nsid:lora:{devEui}
As a reminder the LoRa device used previously is now identified as the LoRa interface. This Interface is related to a device, the type of connection notwithstanding (MQTT, SMS, LoRa)
A device may have several interfaces that are related to it
Endpoint : GET /api/v0/vendors/lora/devices
- New API : Device Management – Inventory – V1
- New endpoint :
GET /api/v1/deviceMgt/devices?connectors=lora
For more information, please refer to user manual 5.3.2 List Devices
Endpoint : POST /api/v0/vendors/lora/devices
- New API : Device Management – Inventory – V1
- New endpoint :
POST /api/v1/deviceMgt/devices
For more information, please refer to user manual 5.3.1 Register a Device
Endpoint :
GET /api/v0/vendors/lora/devices/count
- New API : Inventory Explorer – V1
- New endpoint :
POST /api/v1/deviceMgt/explorer/stats
The body of the request giving the number of activated and deactivated LoRa devices is written below :
{
"filters": {
"queryString": "interfaces.connector == lora"
},
"groupBy": {
"interfaces": {
"field": "status"
}
}
}
Example of a response :
{
"devices": 26,
"fieldAggregation": {
"count": 26,
"devices": 26,
"buckets": [
{
"key": "ACTIVATED",
"count": 12,
"devices": 12
},
{
"key": "REGISTERED",
"count": 10,
"devices": 10
},
{
"key": "INITIALIZED",
"count": 2,
"devices": 2
},
{
"key": "DEACTIVATED",
"count": 1,
"devices": 1
},
{
"key": "REACTIVATED",
"count": 1,
"devices": 1
}
]
}
Please note that the new request gives more information than the previous one
For more information, please refer to user manual 9.3 Statistics API
Endpoint :
GET /api/v0/vendors/lora/devices/{devEUI}
- New API : Device Management – Inventory – V1
- New endpoint :
GET /api/v1/deviceMgt/devices/{deviceId}
For more information, please refer to user manual 5.3.3 Get a Device
Endpoint :
PATCH /api/v0/vendors/lora/devices/{devEUI}
Depending on the type of update to be applied on the device, either
A- If one of the following needs to be updated : id, name, description, defaultDataStreamId, tags, properties, group, staticLocation
- New API : Device Management – Inventory – V1
- New endpoint :
PATCH /api/v1/deviceMgt/devices/{deviceId}
B- If another property, not quoted in A-, needs to be updated
- New API : Device Management – Interfaces – V1
- New endpoint :
PATCH /api/v1/deviceMgt/devices/{deviceId}/interfaces/lora:{devEUI}
For more information, please refer either to user manual 14.3.2 Static location or to user manual 5.4.4 Update an Interface
Endpoint :
DELETE api/v0/vendors/lora/devices/{devEUI}
- New API : Device Management – Inventory – V1
- New endpoint :
DELETE /api/v1/deviceMgt/devices/{deviceId}
For more information, please refer to user manual 5.3.4 Delete Device
Endpoint :
GET /api/v0/vendors/lora/devices/{devEUI}/commands
- New API : Device Management – Commands – V1
- New endpoint :
GET /api/v1/deviceMgt/devices/{deviceId}/commands
For more information, please refer to user manual 8.3 Commands for the general principles, and more specifically to 8.3.10.2 on LoRa commands registration and 8.3.11.2 for some examples
Endpoint :
POST /api/v0/vendors/lora/devices/{devEUI}/commands
- New API : Device Management – Commands – V1
- New endpoint :
POST /api/v1/deviceMgt/devices/{deviceId}/commands
For more information, please refer to user manual 8.3 Commands for the general principles, and more specifically to 8.3.10.2 on LoRa commands registration and 8.3.11.2 for some examples
Endpoint : GET /api/v0/vendors/lora/profiles
- New API : Device Management – Connector Nodes – LoRa Specific – V1
- New endpoint :
GET /api/v1/deviceMgt/connectors/lora/profiles
A simple change of path
Reminder below on main access points to the documentation
Swagger: https://liveobjects.orange-business.com/#/cms/documentation-swagger/
Developer guide: https://liveobjects.orange-business.com/doc/html/lo_manual_v2.html