Get a paginated list of tree entities readable by the authenticated user. Archived and protected entities are excluded. Ordering: the matching entities are ordered by creation time (created ASC), then by the unique entity identifier (uid ASC). This ordering is applied before offset and limit, and is preserved in the response. The uid is the tie-breaker when creation times are equal. The ordering is fixed: this endpoint does not expose order_by or order_direction parameters. The response field sort_order does not determine API pagination or response order. Pagination: with unchanged data, hierarchy, access rights and query parameters, increasing offset retrieves all entities in the selected scope without pagination-induced omissions or duplicates. Start with offset=0 and a positive limit, then increase offset by the number of entities returned. Stop when an empty array is returned. Keep parent_entity_uid and levels_count unchanged while paging through a scope. Full tree traversal: increasing offset alone does not expand the requested depth. To enumerate the entire readable tree, first fetch all pages without parent_entity_uid using levels_count=1. Then fetch all pages for each returned entity using parent_entity_uid=<uid>&levels_count=1, and repeat for its descendants. Track visited uid values. This enumerates the entities exposed by this endpoint, not inaccessible, archived or protected entities.
| Name | Value |
|---|---|
| Content-Type | application/json |
| Name | Type | Constraints | Description |
|---|---|---|---|
| limit | number | Integer Default: 500 | Maximum number of entities in one page, after access filtering, scope selection and ordering by created ASC, uid ASC. The server-configurable maximum defaults to 500; values above it are capped. If omitted, the configured maximum is used. Use a positive value for pagination. Applies to the combined result across the requested levels, not separately to each parent or level. |
| offset | number | Integer Min: 0 Default: 0 | Number of entities to skip in the ordered, access-filtered result for the selected scope. Applied after ordering and before limit. For example, with limit=100, request offset=0, then 100, then 200 while full pages are returned. This is not a tree depth or a sort_order value. |
| parent_entity_uid | string | UUID | Return readable descendants of this entity, excluding the parent itself. The user must have read access to the specified parent. With levels_count=1, returns the next readable level; inaccessible intermediate nodes can be traversed to reach readable descendants. If omitted, starts from the user's accessible roots, which can include entities below inaccessible ancestors. Pagination is independent for each parent. |
| levels_count | number | max: 2 | Maximum number of readable levels to include (default: 1): without parent_entity_uid, accessible roots count as level 1; with parent_entity_uid, the first readable descendants count as level 1. Use 1 or 2. Inaccessible intermediate nodes do not increase readable depth. For example, levels_count=2 includes two readable levels in one globally ordered, paginated list. It does not increase the page size. |
| Description | Response type | Example |
|---|---|---|
| Success | Object |
| Name | Type | Description |
|---|---|---|
| uid | string | Entity uid |
| title | string | Entity title |
| sort_order | number | Entity position for displaying the tree, typically among siblings under the same parent. This value is not a globally unique sequence, pagination offset or cursor. It does not participate in this endpoint's response ordering, which is created ASC, uid ASC. To display siblings by sort_order, collect all their pages first and sort them on the client. |
| archived | boolean | Archived flag |
| access | string | Entity access |
| for_everyone_access_role_id | string | Role id for when access is for_everyone |
| entity_type | string | Entity type |
| path | string | Inner path to entity |
| parent_entity_uid | string | Parent entity uid |
| Description | Response type | Example |
|---|---|---|
| Invalid token | String |
| Description | Response type | Example |
|---|---|---|
| Forbiden | Response body does not exist |
1 curl --request GET \
2 --url 'https://example.kaiten.ru/api/latest/tree-entities' \
3 --header 'Accept: application/json' \
4 --header 'Content-Type: application/json'
5 Response
ClickTry It!to start a request and see the response here!