1. Docs
  2. API Reference
  3. Get subtree from a node

Get subtree from a node

GET/api/v1/nodes/{id}/tree

Returns one page of the given node and its descendants within the caller's scope in the current Environment, flat, each node carrying its parent_node_id and the same access annotations and counts as GET /api/v1/nodes. The node must be within the caller's accessible scope (otherwise 403). Searches names and slugs with q; sorts by name or created (default, oldest first).

Authentication

Bearer TokenAuthorization Option A

JWT access token. Never send alongside X-API-Key: a request carrying both is refused.

API KeyX-API-Key Option B

API key for management-tier access. Never send alongside an Authorization header: a request carrying both is refused.

Path Parameters

idstring Required

Query Parameters

pagenumber Optional

Page number (1-based)

min 1

takenumber Optional

Items per page (1-100, default 20)

range 1–100

qstring Optional

Search node names and slugs

max length 200

sort_byenum Optional

Sort column. Defaults to `created`, oldest first.

one of "name" · "created"

orderenum Optional

Sort direction

one of "asc" · "desc"

Responses

application/json

  • itemsScopedNodeResponseDto[]*
  • paginationPageMetaDto*

application/json

  • errorApiErrorBodyDto*

application/json

  • errorApiErrorBodyDto*

application/json

  • errorApiErrorBodyDto*

Pagination

This endpoint returns a paginated collection. Use the query parameters below to page through results.

pagenumber

Page number (1-indexed). Defaults to 1.

takenumber

Items per page (1 to 100). Defaults to 20.

Each response includes an items array alongside a pagination object with item_count, page_count, has_previous_page, and has_next_page fields.

Returned object

Request
curl -X GET "https://auth.canopy-io.com/api/v1/nodes/value/tree?page=0&take=0&q=value&sort_by=name&order=asc" \
  -H "X-API-Key: $CANOPY_API_KEY"
Response
{
  "items": [
    {
      "id": "string",
      "name": "string",
      "description": "string",
      "slug": "string",
      "node_type": "string",
      "parent_node_id": "string",
      "status": "string",
      "access_state": "accessible",
      "can_access": false,
      "can_manage": false,
      "version": 0,
      "direct_count": 0,
      "inherited_count": 0
    }
  ],
  "pagination": {
    "page": 0,
    "take": 0,
    "item_count": 0,
    "page_count": 0,
    "has_previous_page": false,
    "has_next_page": false
  }
}
Related endpoints
GETList hierarchy nodes (scoped, paged)
POSTCreate a hierarchy node
GETList the hierarchy as parent edges
GETGet a hierarchy node
PATCHUpdate a hierarchy node
DELETEDelete a hierarchy node
GETGet ancestor chain for a node
GETGet direct children of a node
POSTMove (reparent) a node
GETList identities at a node
GETGet identity summary for a node
Was this page helpful?

Tell us how we can improve this guide.