openapi: 3.2.0
info:
title: Live Objects REST API Guide Device management - Resources API
description: API description for Live Objects service
contact:
name: Live Objects Support
url: https://liveobjects.orange-business.com/#/cms/support
version: 2026.7.0
servers:
- url: https://liveobjects.orange-business.com
security:
- X-API-KEY: []
OAuth2.0: []
tags:
- name: Device management - Resources
description: Devices resources and firmware
paths:
/api/v1/deviceMgt/devices/{deviceId}/resources/{resourceId}:
get:
tags:
- Device management - Resources
summary: Get a specific device resource
description: 'Restricted to API keys with at least one of the following roles: DEVICE_R.'
operationId: getDeviceResourceV1
parameters:
- name: deviceId
in: path
description: device identifier. A Live Objects URN 'urn:lo:nsid:{namespace}:{id}' must respect the following regular expression ^urn:lo:nsid:([\w\-]{1,128}):([\w\-:]{1,128})$ (max 269 characters)
required: true
schema:
type: string
- name: resourceId
in: path
description: device resource identifier. Expected string (max 255 characters)
required: true
schema:
type: string
responses:
'200':
description: The list of device resource versions
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceResource'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
'403':
description: Request forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
post:
tags:
- Device management - Resources
summary: Set device resource versions
description: 'Restricted to API keys with at least one of the following roles: DEVICE_W.'
operationId: setDeviceResourceVersionV1
parameters:
- name: deviceId
in: path
description: device identifier. A Live Objects URN 'urn:lo:nsid:{namespace}:{id}' must respect the following regular expression ^urn:lo:nsid:([\w\-]{1,128}):([\w\-:]{1,128})$ (max 269 characters)
required: true
schema:
type: string
- name: resourceId
in: path
description: device resource identifier. Expected string (max 255 characters)
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateDeviceResourceRequest'
required: true
responses:
'200':
description: The list of device resource versions
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceResource'
'204':
description: No Content, device resource version is already updated
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceResource'
/api/v1/deviceMgt/devices/{deviceId}/resources/{resourceId}/updates:
post:
tags:
- Device management - Resources
summary: Create a device resource update
description: 'Restricted to API keys with at least one of the following roles: DEVICE_W.'
operationId: postDeviceResourceUpdateV1
parameters:
- name: deviceId
in: path
description: device identifier. A Live Objects URN 'urn:lo:nsid:{namespace}:{id}' must respect the following regular expression ^urn:lo:nsid:([\w\-]{1,128}):([\w\-:]{1,128})$ (max 269 characters)
required: true
schema:
type: string
- name: resourceId
in: path
description: device resource identifier. Expected string (max 255 characters)
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateDeviceResourceWithConnectorRequest'
required: true
responses:
'201':
description: Resource update created
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceResourceUpdate'
'204':
description: No Content, device resource version is already updated
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceResourceUpdate'
/api/v1/deviceMgt/devices/{deviceId}/resources/updates/{resourceId}/status:
post:
tags:
- Device management - Resources
summary: Cancel a resource update
description: 'Restricted to API keys with at least one of the following roles: DEVICE_W.'
operationId: cancelResourceUpdateV1
parameters:
- name: deviceId
in: path
description: device identifier. A Live Objects URN 'urn:lo:nsid:{namespace}:{id}' must respect the following regular expression ^urn:lo:nsid:([\w\-]{1,128}):([\w\-:]{1,128})$ (max 269 characters)
required: true
schema:
type: string
- name: resourceId
in: path
description: device resource identifier. Expected string (max 255 characters)
required: true
schema:
type: string
- name: force
in: query
description: force update status change
required: false
schema:
type: boolean
default: false
requestBody:
content:
application/json:
schema:
type: string
description: future state of the resource update, must be CANCELED
enum:
- CANCELED
required: true
responses:
'200':
description: Update canceled
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
'403':
description: Request forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
/api/v1/deviceMgt/devices/{deviceId}/resources:
get:
tags:
- Device management - Resources
summary: Get a map of all device resources
description: 'Restricted to API keys with at least one of the following roles: DEVICE_R.'
operationId: listDeviceResourcesV1
parameters:
- name: deviceId
in: path
description: requested target device identifier. A Live Objects URN 'urn:lo:nsid:{namespace}:{id}' must respect the following regular expression ^urn:lo:nsid:([\w\-]{1,128}):([\w\-:]{1,128})$ (max 269 characters)
required: true
schema:
type: string
responses:
'200':
description: The list of device resources versions
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceResourceMapResponse'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
'403':
description: Request forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
/api/v1/deviceMgt/devices/{deviceId}/resources/updates:
get:
tags:
- Device management - Resources
summary: Get a list of device resource updates
description: 'Restricted to API keys with at least one of the following roles: DEVICE_R.'
operationId: getDeviceResourceUpdatesV1
parameters:
- name: deviceId
in: path
description: requested target device identifier. A Live Objects URN 'urn:lo:nsid:{namespace}:{id}' must respect the following regular expression ^urn:lo:nsid:([\w\-]{1,128}):([\w\-:]{1,128})$ (max 269 characters)
required: true
schema:
type: string
- name: offset
in: query
description: the requested page number (optional)
required: false
schema:
type: string
default: '0'
- name: limit
in: query
description: the maximum number of items per page (optional, highest value is 1000)
required: false
schema:
type: string
default: '20'
- name: resourceId
in: query
description: device resource identifier. Expected string (max 255 characters)
required: false
schema:
type: string
- name: latest
in: query
description: get only the latest
required: false
schema:
type: boolean
default: false
- name: X-Total-Count
in: header
description: true if a total count must be returned in response
required: false
schema:
type: boolean
default: false
example: true
responses:
'200':
description: The list of device resources updates
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/DeviceResourceUpdate'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
'403':
description: Request forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/WebErrorResponse'
/api/v1/deviceMgt/devices/{deviceId}/resources/{resourceId}/requested:
delete:
tags:
- Device management - Resources
summary: Reset device resource requested version
description: 'Restricted to API keys with at least one of the following roles: DEVICE_W.'
operationId: resetRequestedDeviceResourceVersionV1
parameters:
- name: deviceId
in: path
description: device identifier. A Live Objects URN 'urn:lo:nsid:{namespace}:{id}' must respect the following regular expression ^urn:lo:nsid:([\w\-]{1,128}):([\w\-:]{1,128})$ (max 269 characters)
required: true
schema:
type: string
- name: resourceId
in: path
description: device resource identifier. Expected string (max 255 characters)
required: true
schema:
type: string
- name: force
in: query
required: false
schema:
type: boolean
default: false
responses:
'204':
description: Device resource requested version reset done
components:
schemas:
WebErrorResponse:
type: object
description: Error response
properties:
id:
type: string
description: Unique identifier of this error instance
code:
type: string
description: Error code
message:
type: string
description: Short error description
details:
type: string
description: Detailed error description
required:
- code
- id
- message
DeviceResourceUpdate:
type: object
properties:
id:
type: string
description: Id of the resource update
example: 5f3bf1ecb23f3277805478a7
resourceId:
type: string
description: Id of the resource
example: MyFW
created:
type: string
format: date-time
description: Creation date of the update operation
example: '2020-08-18T15:21:16.128Z'
updated:
type: string
format: date-time
description: Last update date of the update operation
example: '2020-08-18T15:25:30.517Z'
initialVersion:
type: string
description: Initial resource version
example: '1.0'
requestedVersion:
type: string
description: Requested resource version
example: '1.1'
connector:
type: string
description: updater connector
example: http-updater
status:
type: string
description: Status of the update operation
example: DONE
errorOrigin:
type: string
description: 'Error origin (DEVICE: Error comes from the device. INTERNAL: Error comes from the platform)'
example: DEVICE
errorCode:
type: string
description: Error code from the platform
example: OK
deviceErrorCode:
type: string
description: Error code sent by the device
example: KO
errorDetails:
type: string
description: Error details sent by the device
example: version not supported by device
progress:
type: number
format: double
description: Progress of the download in percent
example: 100.0
metadata:
type: object
additionalProperties:
type: string
description: 'the update metadata. Max number of metadata is 100. Metadata name max length is 255. A Metadata name must not include following characters $.. Invalid Metadata names are : ''class'', ''_class''. Metadata value max length is 255. Optional metadata key ''secured'': controls the transfer protocol for firmware download. Value ''true'' generates HTTPS URL, ''false'' or absent generates HTTP URL (default). Supported by http-updater connector only.'
example:
secured: 'true'
UpdateDeviceResourceWithConnectorRequest:
type: object
description: The device resource version to register
properties:
requestedVersion:
type: string
description: requested resource version. Expected string (max 255 characters)
example: 1.2.0
connector:
type: string
description: 'updater connector. '
example: http-updater
metadata:
type: object
additionalProperties:
type: string
description: 'the update metadata. Max number of metadata is 100. Metadata name max length is 255. A Metadata name must not include following characters $.. Invalid Metadata names are : ''class'', ''_class''. Metadata value max length is 255. Optional metadata key ''secured'': controls the transfer protocol for firmware download. Value ''true'' generates HTTPS URL, ''false'' or absent generates HTTP URL (default). Supported by http-updater connector only.'
example:
secured: 'true'
DeviceResourceVersionValue:
type: object
description: a resource version
properties:
version:
type: string
description: resource version. Expected string (max 255 characters)
example: v2
timestamp:
type: string
format: date-time
description: resource version associated date/time
example: '2020-05-19T10:30:58Z'
UpdateDeviceResourceRequest:
type: object
description: The device resource version to register
properties:
version:
type: string
description: requested resource version. Expected string (max 255 characters)
example: 1.2.0
metadata:
type: object
additionalProperties:
type: string
description: 'the update metadata. Max number of metadata is 100. Metadata name max length is 255. A Metadata name must not include following characters $.. Invalid Metadata names are : ''class'', ''_class''. Metadata value max length is 255. Optional metadata key ''secured'': controls the transfer protocol for firmware download. Value ''true'' generates HTTPS URL, ''false'' or absent generates HTTP URL (default). Supported by http-updater connector only.'
example:
secured: 'true'
DeviceResourceMapResponse:
type: object
properties:
resourceName:
$ref: '#/components/schemas/DeviceResource'
DeviceResource:
type: object
description: a device resource state
properties:
reported:
$ref: '#/components/schemas/DeviceResourceVersionValue'
description: resource status as reported by the device
requested:
$ref: '#/components/schemas/DeviceResourceVersionValue'
description: resource status as requested by the platform
metadata:
type: object
additionalProperties:
type: string
description: 'metadata associated with this device resource. Max number of metadata is 100. Metadata name max length is 255. A Metadata name must not include following characters $.. Invalid Metadata names are : ''class'', ''_class''. Metadata value max length is 255. Optional metadata key ''secured'': controls the transfer protocol for firmware download. Value ''true'' generates HTTPS URL, ''false'' or absent generates HTTP URL (default). Supported by http-updater connector only.'
example:
secured: 'true'
securitySchemes:
X-API-KEY:
type: apiKey
name: X-API-KEY
in: header
OAuth2.0:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://liveobjects.orange-business.com/api/v1/oauth2/authorize
tokenUrl: https://liveobjects.orange-business.com/api/v1/oauth2/token
refreshUrl: https://liveobjects.orange-business.com/api/v1/oauth2/token
scopes:
API_KEY_R: Read parameters and status of an API key.
API_KEY_W: Create, modify, disable an API key.
BOOTSTRAP_R: Read parameters and status of the LwM2M Bootstrap configurations and entries.
BOOTSTRAP_W: Create ans modify LwM2M Bootstrap configurations and entries.
BUS_CONFIG_R: Read config parameters of a FIFO queue.
BUS_CONFIG_W: Create, modify a FIFO queue.
BUS_R: Read data on the Live Objects bus. Minimum permission for the API key of an application collecting data on Live Objects in MQTT(s).
BUS_W: Publish data on the Live Objects bus.
CAMPAIGN_R: Read parameters and status of a massive deployment campaign on your Device Fleet.
CAMPAIGN_W: Create, modify a campaign on your Device Fleet.
CONNECTOR_ACCESS: Role to set on a external connector API key to allow only MQTT external connector mode
DATA_PROCESSING_R: Read parameters and status of an event processing rule or a Data decoder.
DATA_PROCESSING_W: Create, modify, disable an event processing rule or a Data decoder.
DATA_R: Read the data collected by the Store Service or search into this data using the Search Service.
DATA_W: Insert a data record to the Store Service. Minimum permission required for the API key of a device pushing data to Live Objects in HTTPS.
DEVICE_ACCESS: Role to set on a Device API key to allow only MQTT Device mode
DEVICE_R: Read parameters and status of a Device management.
DEVICE_W: Create, modify, disable a Device management, send command, modify config, update resource of a Device.
LOGS_R: Read the logs collected by the Audit Log service. This right allows users to use the Audit Log service as debugging tool.
SETTINGS_R: Read the tenant account custom settings.
SETTINGS_W: Create, modify tenant account custom settings.
USER_R: Read parameters and status of a user.
USER_W: Create, modify, disable a user.
externalDocs:
description: Live Objects Developer Guide
url: https://liveobjects.orange-business.com/doc/html/lo_manual_v2.html
x-examples: ''