LitmusEdgeManager 2.31.x API Documentation/Edge Lifecycle Management/Licenses - LE, LEM, LUNS API Docs

License Summary - Status

GET {{LEM_URL}}/api/v1/device-license-pool/stats?projectId={{project_id}}

License Summary -- Status

Returns counts of licenses by state in the project pool: active / used / unused / expired.

Endpoint

GET {{LEM_URL}}/api/v1/device-license-pool/stats?projectId={{project_id}}

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Response

{ "active": 1, "used": 1, "unused": 0, "expired": 0 }

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Response

Status: 200 OK

{
    "active": 1,
    "used": 1,
    "unused": 0,
    "expired": 0
}

Licenses List SKUs

GET {{LEM_URL}}/api/v1/device-license-pool/skus?projectId={{project_id}}

Licenses List SKUs

Returns the SKUs allocated to the project's license pool, with count per SKU and the isCore flag.

Endpoint

GET {{LEM_URL}}/api/v1/device-license-pool/skus?projectId={{project_id}}

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Response

200 OK -- application/json

Field Type Description
licenseSku string SKU identifier (e.g. litmusedge-scale-nl).
count integer Number of license entitlements of this SKU.
isCore boolean True for the core LE license SKU.

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Response

Status: 200 OK

[
    {
        "licenseSku": "litmusedge-scale-nl",
        "count": 1,
        "isCore": true,
        "core": true
    }
]

Used Licenses

GET {{LEM_URL}}/api/v1/device-license-pool/used?projectId={{project_id}}

Used Licenses

Returns paginated list of licenses currently used by devices in the project pool, with feature expiry, MAC address, and device friendly name.

Endpoint

GET {{LEM_URL}}/api/v1/device-license-pool/used?projectId={{project_id}}

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Response

200 OK -- application/json. Paged. Each elements[] entry carries projectId, deviceId, deviceName, deviceFriendlyName, macAddress, expiryFeatureDate, and an array of licenses[] records.

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Response

Status: 200 OK

{
    "pageNum": 0,
    "pagesCount": 1,
    "size": 1,
    "totalSize": 1,
    "elements": [
        {
            "projectId": "39abjcmqdc6r4gsctj7zjufnv",
            "deviceId": "88mqx2r8dv6fgsc968ybvw43k",
            "deviceName": "litmus-edge-005056b98eb5",
            "deviceFriendlyName": "API Portal (00:50:56:b9:8e:b5)",
            "macAddress": "00:50:56:b9:8e:b5",
            "expiryFeatureDate": 1786233599000,
            "licenses": [
                {
                    "id": "2e4392ee-2d75-4850-994f-13f36c1fdbc7",
                    "companyName": null,
                    "projectId": "39abjcmqdc6r4gsctj7zjufnv",
                    "projectName": null,
                    "deviceId": "88mqx2r8dv6fgsc968ybvw43k",
                    "deviceName": null,
                    "deviceFriendlyName": null,
                    "macAddress": null,
                    "licenseKey": "0000-0000-0000-0000",
                    "licenseSku": "litmusedge-scale-nl",
                    "activationDate": null,
                    "expiryDate": 1786233599000,
                    "isCore": true,
                    "isTrial": false,
                    "status": "OK",
                    "origin": "EDGE",
                    "reservedUntil": null,
                    "votmSensorCount": null,
                    "expiryFeatureDate": 1786233599000,
                    "trial": false,
                    "core": true
                }
            ]
        }
    ]
}

Edge License Features

GET {{LEM_URL}}/api/v1/feature

Edge License Features

Returns the LEM-level feature catalog (server features such as EdgeEvents, DigitalTwin, OmaRegistry). Each carries a type (STABLE/EXPERIMENTAL) and an enabled flag.

Endpoint

GET {{LEM_URL}}/api/v1/feature

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Response

200 OK -- application/json. Array of feature objects with entryID, name, description, type, enabled (1/0), createdOn, updatedOn.

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Response

Status: 200 OK

[
    {
        "entryID": 1,
        "name": "EdgeEvents",
        "description": "Edge events management",
        "type": "EXPERIMENTAL",
        "enabled": 1,
        "createdOn": 1597449600000,
        "updatedOn": null
    },
    {
        "entryID": 2,
        "name": "DigitalTwin",
        "description": "Asset Management",
        "type": "EXPERIMENTAL",
        "enabled": 0,
        "createdOn": 1597449600000,
        "updatedOn": null
    },
    {
        "entryID": 3,
        "name": "OmaRegistry",
        "description": "OMA Registry management",
        "type": "STABLE",
        "enabled": 1,
        "createdOn": 1597449600000,
        "updatedOn": null
    },
    {
        "entryID": 4,
        "name": "RemoteUI",
        "description": "Edge device remote UI",
        "type": "STABLE",
        "enabled": 1,
        "createdOn": 1613779200000,
        "updatedOn": null
    },
    {
        "entryID": 5,
        "name": "ParameterizedTemplates",
        "description": "Edge device parameterized templates management",
        "type": "STABLE",
        "enabled": 1,
        "createdOn": 1615420800000,
        "updatedOn": null
    },
    {
        "entryID": 6,
        "name": "EdgeRemoteNetwork",
        "description": "Edge Remote Networks management",
        "type": "STABLE",
        "enabled": 1,
        "createdOn": 1616716800000,
        "updatedOn": null
    }
]

License Features

GET {{LEM_URL}}/api/v1/licenses2/features

License Features

Returns the LEM license's allowed features with expiry. Different from Edge License Features -- this is what the LEM license itself unlocks (core, catalog, ...), not the feature catalog.

Endpoint

GET {{LEM_URL}}/api/v1/licenses2/features

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Response

200 OK -- application/json. Each entry: name, desc, expires, expiresTimestamp, count (-1 unmetered), limited, enabled.

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Response

Status: 200 OK

[
    {
        "name": "core",
        "desc": "core",
        "expires": "2025-09-02T00:00:00Z",
        "expiresTimestamp": 1756771200000,
        "count": -1,
        "limited": false,
        "enabled": true
    },
    {
        "name": "catalog",
        "desc": "catalog",
        "expires": "2025-09-02T00:00:00Z",
        "expiresTimestamp": 1756771200000,
        "count": -1,
        "limited": false,
        "enabled": true
    }
]

Upload License CSV

POST {{LEM_URL}}/api/v1/device-license-pool/csv?projectId={{project_id}}

Upload License CSV

Bulk-imports licenses into the project pool from a CSV file. Multipart form-data; one file in the file part.

Endpoint

POST {{LEM_URL}}/api/v1/device-license-pool/csv?projectId={{project_id}}

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Request body

Multipart form-data with a single file part containing the CSV.

Response

200 OK -- application/json

{ "code": "S", "message": null, "messageDetails": null }

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Request Body

Response

Status: 200 OK

{
    "code": "S",
    "message": null,
    "messageDetails": null
}

Generate Report to CSV

POST {{LEM_URL}}/api/v1/device-license-pool/all/csv?projectId={{project_id}}

Generate Report to CSV

Generates a license-usage report for the specified devices and returns it as a CSV string. Pass deviceIds: [] to include every device in the project.

Endpoint

POST {{LEM_URL}}/api/v1/device-license-pool/all/csv?projectId={{project_id}}

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Request body

{ "deviceIds": ["{{edge_device_id}}"] }

Response

200 OK -- text/csv. Columns: Project ID, Device ID, Device name, Device friendly name, Device MAC address, License key, SKU, Activation date, Expiry date, Feature Expiry Date, Is core, Is trial, Status.

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Request Body

{
    "deviceIds": [
        "{{edge_device_id}}"
    ]
}

Response

Status: 200 OK

"Project ID","Device ID","Device name","Device friendly name","Device MAC address","License key","SKU","Activation date","Expiry date","Feature Expiry Date","Is core","Is trial","Status"
"39abjcmqdc6r4gsctj7zjufnv","88mqx2r8dv6fgsc968ybvw43k","litmus-edge-005056b98eb5","API Portal (00:50:56:b9:8e:b5)","00:50:56:b9:8e:b5","0000-0000-0000-0000","litmusedge-scale-nl",,"2026-08-08T23:59:59","2026-08-08T23:59:59","true","false","OK"


Generate Report to Email

POST {{LEM_URL}}/api/v1/device-license-pool/all/csv/email?projectId={{project_id}}

Generate Report to Email

Same report as Generate Report to CSV but emails it to the specified addresses instead of returning it.

Endpoint

POST {{LEM_URL}}/api/v1/device-license-pool/all/csv/email?projectId={{project_id}}

Authentication

HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.

Request body

{
  "deviceIds": ["{{edge_device_id}}"],
  "emails": ["parth.shah@litmus.io"]
}

Errors

HTTP status When it happens
400 Bad Request Missing or malformed query/body parameter.
401 Unauthorized Missing or invalid credentials.
403 Forbidden Token lacks permission for this operation.
404 Not Found Target entity does not exist.
5xx Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support.

TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.

Request Body

{
    "deviceIds": [
        "{{edge_device_id}}"
    ],
    "emails": [
        "parth.shah@litmus.io"
    ]
}

View this page as Markdown