Discover Device Component
POST/api/v2/device/discover/component
This service message allows a device to post the discovery context for getting device software offers.
Request
- application/json
Body
required
Array [
]
Array [
]
Timestamp when the discovery snapshot was taken
Name or ID (as string) of the deviceType (e.g., router, switch, server, etc.), used for discovery of devices of type "device"
platform
object
Name or ID (as string) of the platform type being discovered.
ID (as string) of system or machine being discovered.
Array of devices discovered within this platform. Each device contains detailed discovery information of type "DiscoveryMessageV2Dto".
general
object
personalDevice
object
situationalDevice
object
location
object
physicalDevice
object
Possible values: [android, windows, linux, macos]
Possible values: [get-app, get-map, mTls]
softwareData
object
components
object[]
Possible values: [offering, push, delivery, downloaded, deleted, deploy, installed, uninstalled]
supportedFields
object[]
List of fields that the device supports for evaluation, including their types (e.g., number, string, boolean)
Field name in JSONPath format (e.g., $.battery.level)
Field data type (number, string, boolean)
Human-readable label for the field
Field description
Responses
- 200
- application/json
- Schema
- Example (from schema)
Schema
Array [
Array [
Array [
]
]
]
Array [
Array [
Array [
]
]
]
Array [
Array [
Array [
]
]
Array [
Array [
]
]
]
Array [
]
offer
object[]
required
deprecated
Use 'releases' field instead
metadata
object
Enable automatic deployment of this release
postInstallAction
object
Post-installation action configuration
Possible values: [NONE, WEB, EXE]
Action type: NONE (no action), WEB (open URL), or EXE (run executable)
URL to open (required when type is WEB)
Executable path to run (required when type is EXE)
Installation size in bytes - disk space required after installation (user-specified)
Total size in bytes - automatically calculated as installationSize + artifactsSize
Possible values: [draft, in_review, approved, released, archived]
Possible values: [product, formation]
policies
object[]
Policies associated with this release
Policy rule ID
Policy name
Policy description
Possible values: [policy, restriction]
Policy type
association
object
releases
object[]
required
Releases for this policy
Project ID
Project name
Release version
Policy version number
Policy creation timestamp
Policy last update timestamp
Whether the policy is active
The policy rule definition conforming to rule engine schema
push
object[]
required
deprecated
Use 'releases' field instead
metadata
object
Enable automatic deployment of this release
postInstallAction
object
Post-installation action configuration
Possible values: [NONE, WEB, EXE]
Action type: NONE (no action), WEB (open URL), or EXE (run executable)
URL to open (required when type is WEB)
Executable path to run (required when type is EXE)
Installation size in bytes - disk space required after installation (user-specified)
Total size in bytes - automatically calculated as installationSize + artifactsSize
Possible values: [draft, in_review, approved, released, archived]
Possible values: [product, formation]
policies
object[]
Policies associated with this release
Policy rule ID
Policy name
Policy description
Possible values: [policy, restriction]
Policy type
association
object
releases
object[]
required
Releases for this policy
Project ID
Project name
Release version
Policy version number
Policy creation timestamp
Policy last update timestamp
Whether the policy is active
The policy rule definition conforming to rule engine schema
releases
object[]
required
Components with all additional data of platform and device type hierarchy, project and actions
release
object
metadata
object
Component metadata including autoDeploy and postInstallAction configuration. Additional user-defined properties are supported.
Enable automatic deployment of this release
postInstallAction
object
Post-installation action configuration
Possible values: [NONE, WEB, EXE]
Action type: NONE (no action), WEB (open URL), or EXE (run executable)
URL to open (required when type is WEB)
Executable path to run (required when type is EXE)
Installation size in bytes - disk space required after installation (user-specified)
Total size in bytes - automatically calculated as installationSize + artifactsSize
Possible values: [draft, in_review, approved, released, archived]
Possible values: [product, formation]
policies
object[]
Policies associated with this release
Policy rule ID
Policy name
Policy description
Possible values: [policy, restriction]
Policy type
association
object
required
Policy associations (releases, device types, OS types, devices)
releases
object[]
required
Releases for this policy
Project ID
Project name
Release version
Policy version number
Policy creation timestamp
Policy last update timestamp
Whether the policy is active
The policy rule definition conforming to rule engine schema
Default value: false
Flag indicating if this is a push action
hierarchyTrees
object[]
required
Platform and device type hierarchy where this release is offered
Platform Type ID - present when device types are under a platform type
Platform Type name - present when device types are under a platform type
deviceTypes
object[]
required
Device types with projects (under platform if platform fields are present, or standalone)
ID of the device type
Name of the device type
ID of the project
Name of the project
Display name of the project
Label of the project
Array of catalog IDs of releases that directly depend on this release
restrictions
object[]
List of applicable restrictions for the device based on device ID, device type, OS, and other metadata
Possible values: [policy, restriction]
The restriction rule object
{
"releases": [
{
"release": {
"id": "string",
"version": "string",
"projectName": "string",
"releaseNotes": "string",
"metadata": {
"autoDeploy": true,
"postInstallAction": {
"type": "NONE",
"url": "string",
"exePath": "string"
},
"installationSize": 0,
"totalSize": 0
},
"status": "draft",
"type": "product",
"size": 0,
"createdAt": "2026-03-12T11:20:54.115Z",
"updatedAt": "2026-03-12T11:20:54.115Z",
"latest": true,
"releasedAt": "2026-03-12T11:20:54.115Z",
"dependencies": [
null
],
"policies": [
{
"id": "string",
"name": "string",
"description": "string",
"type": "policy",
"association": {
"releases": [
{
"projectId": "string",
"projectName": "string",
"version": "string"
}
]
},
"version": 0,
"createdAt": "string",
"updatedAt": "string",
"isActive": true,
"rule": {}
}
]
},
"isPush": false,
"hierarchyTrees": [
{
"platformTypeId": 0,
"platformTypeName": "string",
"deviceTypes": [
{
"deviceTypeId": 0,
"deviceTypeName": "string",
"projectId": 0,
"projectName": "string",
"projectDisplayName": "string",
"projectLabel": "string"
}
]
}
],
"dependedOnBy": [
"string"
]
}
],
"restrictions": [
{
"id": "string",
"name": "string",
"description": "string",
"type": "policy",
"version": 0,
"isActive": true,
"rule": {},
"createdAt": "string",
"updatedAt": "string"
}
]
}