openapi: 3.2.0 info: title: Live Objects REST API Guide Api keys 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: Api keys description: API key management paths: /api/v0/apiKeys/{apiKeyId}/debugMode: put: tags: - Api keys summary: Activate/Deactivate the debug mode on an API key description: 'Usage of this API will be reported in your access log under ''api_key'' category.

Restricted to API keys with at least one of the following roles: API_KEY_W.' operationId: setApiKeyDebugMode parameters: - name: apiKeyId in: path description: identifier of your API key. Expected identifier (max 24 characters) required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/DebugModeConfiguration' required: true responses: '200': description: The updated ApiKey content: application/json: schema: $ref: '#/components/schemas/ApiKey' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '404': description: ApiKey or Tenant not found content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' /api/v0/apiKeys: get: tags: - Api keys summary: List API keys information description: 'List API keys information with pagination. Useful to retrieve associated roles.

Restricted to API keys with at least one of the following roles: API_KEY_R.' operationId: getApiKeys parameters: - name: size in: query description: the maximum number of items per page (optional) required: false schema: type: integer format: int32 default: 20 - name: page in: query description: the requested page number (optional) required: false schema: type: integer format: int32 default: 0 - name: parentId in: query description: 'the id of your parent (optional) ex: "57xxxxxxxxxxxxxxxxxxxxxx". Expected identifier (max 24 characters)' required: false schema: type: string - name: showSessionKeys in: query description: include the session Keys (optional) required: false schema: type: boolean default: false - name: roles in: query description: list of API Key associated roles (optional). Basic roles are "USER_R", "USER_W", "API_KEY_R", "API_KEY_W" or any role string supplied at tenant account creation time. Expected array of role names (max all roles, role value max 255 characters). required: false schema: type: array items: type: string uniqueItems: true - name: showMasterKey in: query description: Boolean to show or not the master api key required: false schema: type: boolean default: true responses: '200': description: The list of the ApiKeys content: application/json: schema: $ref: '#/components/schemas/PageableApiKey' '400': description: An ErrorMessage content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '404': description: Unknown content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' post: tags: - Api keys summary: Create an API key description: 'Usage of this API will be reported in your access log under ''api_key'' category.

Restricted to API keys with at least one of the following roles: API_KEY_W.' operationId: createApiKey requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiKeyCreationDefinition' required: true responses: '200': description: The created ApiKey content: application/json: schema: $ref: '#/components/schemas/ApiKey' '400': description: An ErrorMessage content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '404': description: Unknown content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' /api/v0/apiKeys/{apiKeyId}: get: tags: - Api keys summary: Get API key information description: 'Useful to get information about the API key, like current roles.

Restricted to API keys with at least one of the following roles: API_KEY_R.' operationId: getApiKey parameters: - name: apiKeyId in: path description: the id of your API key. Expected identifier (max 24 characters) required: true schema: type: string - name: tenantId in: query description: '(unused) identifier of tenant account ex: "57xxxxxxxxxxxxxxxxxxxxxx". Expected identifier (max 24 characters)' required: false schema: type: string responses: '200': description: The ApiKey content: application/json: schema: $ref: '#/components/schemas/ApiKey' '400': description: An ErrorMessage content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '404': description: Unknown content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' post: tags: - Api keys summary: Update an API key description: 'Update a set of properties of the selected API key

Usage of this API will be reported in your access log under ''api_key'' category.

Restricted to API keys with at least one of the following roles: API_KEY_W.' operationId: updateApiKey parameters: - name: apiKeyId in: path description: the id of your API key. Expected identifier (max 24 characters) required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiKeyUpdateDefinition' required: true responses: '200': description: The updated ApiKey content: application/json: schema: $ref: '#/components/schemas/ApiKey' '400': description: An ErrorMessage content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '404': description: Unknown content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' delete: tags: - Api keys summary: Delete an API key description: 'Usage of this API will be reported in your access log under ''api_key'' category.

Restricted to API keys with at least one of the following roles: API_KEY_W.' operationId: deleteApiKey parameters: - name: apiKeyId in: path description: identifier of your API key. Expected identifier (max 24 characters) required: true schema: type: string responses: '200': description: Deletion is done, nothing in the response '400': description: An ErrorMessage content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' '404': description: Unknown content: application/json: schema: $ref: '#/components/schemas/WebErrorResponse' components: schemas: ScopeApplication: type: object properties: fifos: type: array description: List of allowed FIFOs to publish or subscribe. Expected array of string (max 100 elements, value max 255 characters) example: - default - supplierA items: type: string uniqueItems: true 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 ApiKeyCreationDefinition: type: object description: body for create API key properties: parentId: type: string description: identifier of the parent key to set. Expected identifier (max 24 characters) example: 57FFFFFFFFFFFFFFFFFFFFFE from: type: integer format: int64 description: Timestamp from which the key is valid example: 1473078900000 to: type: integer format: int64 description: Timestamp until which the key is valid example: 1475224200000 ttl: type: integer format: int64 description: Time to live (ms) example: 144410000 label: type: string description: Title of the key. Expected string (limited to 24 first characters) example: My Api Key Name description: type: string description: Short description of the key. Expected string (limited to 140 first characters) example: description of Api Key target active: type: boolean description: Status example: true roles: type: array description: list of API key associated roles. Basic roles are "USER_R", "USER_W", "API_KEY_R", "API_KEY_W" or any role string supplied at tenant account creation time. Expected array of role names (max all roles, role value max 255 characters). Assigned roles must be included in the roles of the authenticating API key or token. example: - USER_R - APIKEY_R items: type: string uniqueItems: true scope: $ref: '#/components/schemas/ScopeApplication' description: List of scope to apply example: fifos: - val1 - val2 clientCert: $ref: '#/components/schemas/ClientCertificatesConfiguration' description: Specify usage of TLS client certificate for mqtt connection and associated CA cert ids if enabled required: - parentId - roles ApiKey: type: object properties: id: type: string description: API key unique identifier, randomly generated at creation example: 52FFCAFEDECAFFFFFFFFFFF parentId: type: string description: identifier of the parent API key, can be null if API key is a master API key example: 57FFFFFFFFFFFFFFFFFFFFFF tenantId: type: string description: identifier of tenant account this API key belongs to example: 57FFFFFFFFFFFFFFFFFFFFFF userId: type: string description: identifier of the user account this API key belongs to (or null if not a user session API key) example: 57FFFFFFFFFFFFFFFFFFFFFF value: type: string description: API key value (= the secret!) example: e45ffc0d97c64cd6b959436f9200d5d1 nonce: type: string description: Nonce example: 875fd664f97540f0ad9ec2f889a40ce9 creationTs: type: integer format: int64 description: Date/time of creation (in ms) example: 1473078982518 from: type: integer format: int64 description: Date/time of start of validity (in ms) example: 1473078900000 to: type: integer format: int64 description: ' Date/time of end of validity (in ms)' example: 1475224200000 lastActivity: type: integer format: int64 description: Date/time of last activity (in ms) example: 1473078982518 sessionTTL: type: integer format: int64 description: Duration of validity since the last activity (in ms) example: 144410 label: type: string description: Title of the key example: My Api Key Name description: type: string description: Short description of the key example: My description of Api Key target active: type: boolean description: Switch to activate/deactivate the API Key example: true rateLimit: $ref: '#/components/schemas/RateLimit' roles: type: array description: list of API key associated roles. example: - USER_R - APIKEY_R items: type: string uniqueItems: true scope: $ref: '#/components/schemas/ScopeApplication' description: List of scope to apply debugModeEndTs: type: integer format: int64 description: Timestamp indicating the end date for the debug mode example: 1475224200000 clientCert: $ref: '#/components/schemas/ClientCertificatesConfiguration' sessionKey: type: boolean masterKey: type: boolean expired: type: boolean required: - roles PageableApiKey: type: object properties: page: type: integer format: int64 description: 'number of the current page: starts at 0.' example: 0 size: type: integer format: int64 description: number of data per page (= maximum number of data in the associated list of data:the last page can have less data) example: 1 totalCount: type: integer format: int64 description: total count of data in the complete list. example: 1 data: type: array description: list of data in this page. items: $ref: '#/components/schemas/ApiKey' required: - data - page - size - totalCount RateLimit: type: object properties: mqttBridgeWindowSize: type: integer format: int64 description: 'mqtt bridge rate limit: window size in seconds' example: 1 mqttBridgeMaxMessages: type: integer format: int64 description: 'mqtt bridge rate limit: maximum messages allowed per time window' example: 1 mqttDeviceWindowSize: type: integer format: int64 description: 'mqtt device rate limit: window size in seconds' example: 1 mqttDeviceMaxMessages: type: integer format: int64 description: 'mqtt device rate limit: maximum messages allowed per time window' example: 1 httpWindowSize: type: integer format: int64 description: 'http rate limit: window size in seconds' example: 1 httpMaxCalls: type: integer format: int64 description: 'http rate limit: maximum api calls allowed per time window' example: 1 ClientCertificatesConfiguration: type: object properties: required: type: boolean description: Indicates if the client must use TLS client cert authentication example: true caCertIds: type: array description: List of Ca Certificate Ids used to authenticate devices. Expected array of string (max 100 elements, value max 255 characters) example: - 5b057d0fb8605a5e80758e42 items: type: string required: - required ApiKeyUpdateDefinition: type: object description: body for update API key properties: from: type: integer format: int64 description: Timestamp from which the key is valid. When its value is -1, value is reset to the 'from' value in its parent key. to: type: integer format: int64 description: Timestamp until which the key is valid. When its value is -1, value is reset to the 'to' value in its parent key. sessionTtl: type: integer format: int64 description: Maximum inactivity period (ms) example: 300000 label: type: string description: Title of the key. Expected string (limited to 24 first characters) description: type: string description: Short description of the key. Expected string (limited to 140 first characters) active: type: boolean description: Status roles: type: array description: list of API key associated Roles. Basic roles are "USER_R", "USER_W", "API_KEY_R", "API_KEY_W" or any role string supplied at tenant account creation time. Expected array of role names (max all roles, role value max 255 characters). Assigned roles must be included in the roles of the authenticating API key or token. example: - USER_R - APIKEY_R items: type: string uniqueItems: true debugModeEndTs: type: integer format: int64 description: Timestamp until which the debug mode will be activated scope: $ref: '#/components/schemas/ScopeApplication' description: List of scope to apply (this list always replaces the previous one). example: '"fifos" : [ "val1","val2" ]' clientCert: $ref: '#/components/schemas/ClientCertificatesConfiguration' description: Specify usage of TLS client certificate for mqtt connection and associated CA cert ids if enabled regenerateValue: type: boolean description: Request a random value regeneration required: - regenerateValue DebugModeConfiguration: type: object description: body for API key debug mode properties: activated: type: boolean description: The state of the debug mode durationSeconds: type: integer format: int64 description: The duration in second during which the debug mode will be activated (default = 900 seconds, i.e 15 minutes) required: - activated 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: ''