---
title: "Get object sub-tree"
method: GET
path: "/v1/objects/{object-id}/sub-tree"
tags: ["Objects"]
---

# Get object sub-tree

`GET /v1/objects/{object-id}/sub-tree`

Retrieve a recursively nested sub-tree of objects starting from the specified parent object. Each node carries its accessible children under a `children` property.

## Path parameters

- `object-id` integer, required — Parent object ID

## Query parameters

- `class` string — Optional comma-separated list of object class names. If provided, only objects of the listed classes (and ancestors that lead to them) are returned. Unknown class names are ignored.
- `maxDepth` integer — Maximum tree depth to traverse. Values above 100 are capped at 100.

## Response `200`

Object sub-tree retrieved successfully

- ObjectTreeNode[]
  - `alias` string — Object alias
  - `category` integer — Object category ID
  - `class` 'AccessPoint' | 'AgentPolicyLogParser' | 'Asset' | 'AssetGroup' | 'AssetRoot' | 'BusinessService' | 'BusinessServiceProto' | 'BusinessServiceRoot' | 'Chassis' | 'Cluster' | 'Condition' | 'Container' | 'Dashboard' | 'DashboardGroup' | 'DashboardRoot' | 'Generic' | 'Interface' | 'MobileDevice' | 'Network' | 'NetworkMap' | 'NetworkMapGroup' | 'NetworkMapRoot' | 'NetworkService' | 'Node' | 'NodeLink' | 'Rack' | 'Report' | 'ReportGroup' | 'ReportRoot' | 'Sensor' | 'ServiceCheck' | 'ServiceRoot' | 'Subnet' | 'Template' | 'TemplateGroup' | 'TemplateRoot' | 'VPNConnector' | 'Zone'
  - `guid` string, uuid — Object GUID
  - `id` integer — Object ID
  - `ipAddress` InetAddress
    - `family` integer — IP address family
    - `address` integer — IP address
    - `prefixLength` integer — IP address prefix length
  - `isInMaintenanceMode` boolean — true if object is in maintenance mode
  - `isMaintenanceApplicable` boolean — true if object can be placed into maintenance mode
  - `name` string — Object name
  - `timestamp` string, date-time — Object last change timestamp
  - `status` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
  - `children` ObjectTreeNode[] — Nested child objects (recursive)

## Other responses

- `401` — Unauthorized
- `403` — User does not have read access to given object
- `404` — Object with given ID does not exist

## Changes

- **2026-06-11** `021382e18955` — 2 info
  - added the optional property `items/allOf[#/components/schemas/ObjectSummary]/isInMaintenanceMode` to the response with the `200` status
  - added the optional property `items/allOf[#/components/schemas/ObjectSummary]/isMaintenanceApplicable` to the response with the `200` status
- **2026-06-10** `58744380028d` — 1 breaking, 10 warning, 3 info
  - the `items/` response's property type/format changed from `object`/`` to ``/`` for status `200`
  - deleted the `query` request parameter `filter`
  - removed the optional property `items/alias` from the response with the `200` status
  - removed the optional property `items/category` from the response with the `200` status
  - …10 more
- **2026-05-08** `c6aaf3632e48` — 1 breaking, 2 warning, 11 info
  - the `items/` response's property type/format changed from ``/`` to `object`/`` for status `200`
  - deleted the `query` request parameter `class`
  - deleted the `query` request parameter `maxDepth`
  - added the new optional `query` request parameter `filter`
  - …10 more

[Change history](https://skmtc.dev/netxms/apis/netxms-api/changes/v1/objects/:object-id/sub-tree/get.md)

---

[API](https://skmtc.dev/netxms/apis/netxms-api.md) · [All operations](https://skmtc.dev/netxms/apis/netxms-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/netxms/netxms-api/revisions/6374818d448d/schema)
