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: ''