note.document.tree.list
Получить дерево документов
Описание
Метод относится к REST 3.0. Особенности вызова и формат ответа новой версии API описаны в обзоре REST 3.0.
Метод note.document.tree.list возвращает дерево документов одной базы знаний.
Архивные документы не попадают в ответ.
Параметры
collectionId
integer
обязательный
Идентификатор базы знаний.
Идентификатор можно получить методом note.collection.list
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"collectionId":123}' \
https://**put_your_bitrix24_address**/rest/api/**put_your_user_id_here**/**put_your_webhook_here**/note.document.tree.list
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"collectionId":123,"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/api/note.document.tree.list
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
type TreeNode = {
id: number
collectionId: number
parentId: number | null
title: string
position: number
children: TreeNode[]
}
type DocumentTreeListResult = {
items: TreeNode[]
truncated: boolean
}
try {
const response = await $b24.actions.v3.call.make<DocumentTreeListResult>({
method: 'note.document.tree.list',
params: {
collectionId: 123,
},
requestId: Text.getUuidRfc4122()
})
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Tree roots:', result.items.length, result.truncated)
}
} catch (error) {
console.error(error)
}
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function getDocumentTree() {
try {
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v3.call.make({
method: 'note.document.tree.list',
params: {
collectionId: 123,
},
requestId: B24Js.Text.getUuidRfc4122()
})
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Tree roots:', result.items.length, result.truncated)
} catch (error) {
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', getDocumentTree)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.note.document.tree.list(
collection_id=123,
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$response = $b24Service
->core
->call(
'note.document.tree.list',
[
'collectionId' => 123,
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error getting document tree: ' . $e->getMessage();
}
BX24.callMethod(
'note.document.tree.list',
{
collectionId: 123
},
function(result){
console.info(result.data());
console.log(result);
}
);
require_once('crest.php');
$result = CRest::call(
'note.document.tree.list',
[
'collectionId' => 123
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "note.document.tree.list", b24.Params{
"collectionId": 123,
}, b24.WithIdempotent())
if err != nil {
return fmt.Errorf("note.document.tree.list: %w", err)
}
var item struct {
Truncated bool `json:"truncated"`
}
if err := json.Unmarshal(res.Result, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.Truncated)
Ответ
HTTP-статус: 200
{
"result": {
"items": [
{
"id": 10,
"collectionId": 123,
"parentId": null,
"title": "Введение",
"position": 1,
"children": [
{
"id": 11,
"collectionId": 123,
"parentId": 10,
"title": "Глава 1",
"position": 1,
"children": []
}
]
}
],
"truncated": false
},
"time": {
"start": 1780639500,
"finish": 1780639500.268512,
"duration": 0.2685120105743408,
"processing": 0.22631406784057617,
"date_start": "2026-06-19T10:05:00+03:00",
"date_finish": "2026-06-19T10:05:00+03:00",
"operating_reset_at": 1780640100,
"operating": 0
}
}
Возвращаемые данные
result
object
Объект с деревом документов
items
array
Корневые узлы дерева документов
items[]
object
Объект документа дерева
id
integer
Идентификатор документа
collectionId
integer
Идентификатор базы знаний
parentId
integer
Идентификатор родительского документа или null для корневой страницы
title
string
Заголовок документа
position
integer
Позиция документа среди соседних страниц
children
array
Дочерние страницы документа
truncated
boolean
Значение true, если дерево превышало внутренний лимит TREE_MAX_NODES = 5000 и было обрезано по корневым узлам.
Исключение — первый корневой документ. Если он один превышает внутренний лимит TREE_MAX_NODES, метод вернет его начальную часть в порядке обхода в ширину, чтобы ответ не оказался пустым
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": {
"code": "BITRIX_REST_V3_EXCEPTION_VALIDATION_REQUESTVALIDATIONEXCEPTION",
"message": "Ошибка при валидации объекта запроса",
"validation": [
{
"message": "Обязательное поле `collectionId` не указано",
"field": "collectionId"
}
]
}
}
| Код | Описание | Значение |
|---|---|---|
Поле |
Описание ошибки | Как исправить |
collectionId |
Обязательное поле collectionId не указано |
Добавьте collectionId в тело запроса |
collectionId |
В поле collectionId требуется тип данных #TYPE# для такого запроса |
Убедитесь, что передаваемое значение нужного типа |

