note.document.update
Обновить документ
Описание
Метод относится к REST 3.0. Особенности вызова и формат ответа новой версии API описаны в обзоре REST 3.0.
Метод note.document.update обновляет заголовок и/или содержимое документа.
Параметры
id
integer
обязательный
Идентификатор документа.
Идентификатор можно получить методом note.document.tree.list
fields
object
обязательный
Объект с полями, которые нужно изменить. Описание структуры объекта
overwrite
boolean
необязательный
Определяет, нужно ли принудительно перезаписать содержимое документа, если у него есть несохраненные изменения совместного редактора.
Возможные значения:
true— перезаписать содержимое документаfalse— не перезаписывать содержимое, если есть несохраненные изменения
По умолчанию: false
Используйте, если передаете fields.markdown
Параметр fields
title
string
необязательный
Новый заголовок документа.
Заголовок документа не должен превышать 255 символов.
Передайте fields.title, fields.markdown или оба поля сразу
markdown
string
необязательный
Новое содержимое документа в Markdown.
Чтобы добавить в документ файл, вставьте assetMarkdown, полученный методом note.file.get или note.file.add, отдельной строкой с начала строки, без префикса и суффикса в той же строке.
Для изображений и видео блок можно дополнить параметрами width и align, например [[image fileId=5001 width=30.98 align=left]].
Параметр width задает ширину в процентах от контейнера редактора. Значение может содержать до двух знаков после запятой. Для блока без align допустим диапазон от 10 до 100, для align=left или align=right — от 10 до 70.
Параметр align задает выравнивание. Возможные значения: left, right. Центрирование применяется по умолчанию, поэтому значение center передавать не нужно.
Максимальный размер: 1 048 576 байт.
Передайте fields.title, fields.markdown или оба поля сразу
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":77,"fields":{"title":"Глава 1 (обновлено)","markdown":"# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]"},"overwrite":false}' \
https://**put_your_bitrix24_address**/rest/api/**put_your_user_id_here**/**put_your_webhook_here**/note.document.update
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":77,"fields":{"title":"Глава 1 (обновлено)","markdown":"# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]"},"overwrite":false,"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/api/note.document.update
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
type DocumentUpdateResult = {
item: {
id: number
collectionId: number | null
parentId: number | null
title: string
markdown: string
position: number
createdBy: number
updatedBy: number
createdAt: string
updatedAt: string
}
}
try {
const response = await $b24.actions.v3.call.make<DocumentUpdateResult>({
method: 'note.document.update',
params: {
id: 77,
fields: {
title: 'Глава 1 (обновлено)',
markdown: '# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]',
},
overwrite: false,
},
requestId: Text.getUuidRfc4122()
})
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Document updated:', result.item.id, result.item.title)
}
} catch (error) {
console.error(error)
}
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function updateDocument() {
try {
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v3.call.make({
method: 'note.document.update',
params: {
id: 77,
fields: {
title: 'Глава 1 (обновлено)',
markdown: '# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]',
},
overwrite: false,
},
requestId: B24Js.Text.getUuidRfc4122()
})
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Document updated:', result.item.id, result.item.title)
} catch (error) {
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', updateDocument)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
fields = {
"title": "Глава 1 (обновлено)",
"markdown": "# Глава 1\n\nОбновленный текст",
}
try:
bitrix_response = client.note.document.update(
bitrix_id=77,
fields=fields,
overwrite=False,
).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.update',
[
'id' => 77,
'fields' => [
'title' => 'Глава 1 (обновлено)',
'markdown' => "# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]",
],
'overwrite' => false,
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error updating document: ' . $e->getMessage();
}
BX24.callMethod(
'note.document.update',
{
id: 77,
fields: {
title: 'Глава 1 (обновлено)',
markdown: '# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]'
},
overwrite: false
},
function(result){
console.info(result.data());
console.log(result);
}
);
require_once('crest.php');
$result = CRest::call(
'note.document.update',
[
'id' => 77,
'fields' => [
'title' => 'Глава 1 (обновлено)',
'markdown' => "# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]"
],
'overwrite' => false
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "note.document.update", b24.Params{
"id": 77,
"fields": b24.Params{
"title": "Глава 1 (обновлено)",
"markdown": "# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]",
},
"overwrite": false,
})
if err != nil {
return fmt.Errorf("note.document.update: %w", err)
}
// Метод заворачивает ответ в объект с ключом "item".
raw, ok := b24.Unwrap(res.Result, "item")
if !ok {
return fmt.Errorf("в ответе нет ключа item")
}
var item struct {
ID b24.ID `json:"id"`
CollectionID b24.ID `json:"collectionId"`
ParentID b24.ID `json:"parentId"`
Title string `json:"title"`
Markdown string `json:"markdown"`
Position int `json:"position"`
}
if err := json.Unmarshal(raw, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.ID, item.CollectionID)
Ответ
HTTP-статус: 200
{
"result": {
"item": {
"id": 77,
"collectionId": 42,
"parentId": 10,
"title": "Глава 1 (обновлено)",
"markdown": "# Глава 1\n\nОбновленный текст\n\n[[image fileId=5001 width=30.98 align=left]]",
"position": 5,
"createdBy": 1,
"updatedBy": 1,
"createdAt": "2026-04-20T12:00:00Z",
"updatedAt": "2026-04-21T09:15:30Z"
}
},
"time": {
"start": 1780391100,
"finish": 1780391100.266341,
"duration": 0.266340970993042,
"processing": 0.22421908378601074,
"date_start": "2026-06-16T12:05:00+03:00",
"date_finish": "2026-06-16T12:05:00+03:00",
"operating_reset_at": 1780391700,
"operating": 0
}
}
Возвращаемые данные
result
object
Объект с результатом обновления документа
item
object
Объект документа после обновления
id
integer
Идентификатор документа
collectionId
integer
Идентификатор базы знаний или null, если документ доступен через прямой доступ к документу
parentId
integer
Идентификатор родительского документа или null
title
string
Заголовок документа
markdown
string
Содержимое документа в Markdown
position
integer
Позиция документа среди соседних страниц
createdBy
integer
Идентификатор автора документа
updatedBy
integer
Идентификатор последнего редактора документа
createdAt
datetime
Дата и время создания документа в UTC
updatedAt
datetime
Дата и время последнего изменения документа в UTC
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": {
"code": "NOTE_EMPTY_UPDATE",
"message": "Запрос не содержит изменяемых полей"
}
}
| Код | Описание | Значение |
|---|---|---|
Поле |
Описание ошибки | Как исправить |
id fields |
Обязательное поле #FIELD# не указано |
Добавьте указанное поле в тело запроса |
id overwrite |
В поле #FIELD# требуется тип данных #TYPE# для такого запроса |
Убедитесь, что передаваемое значение нужного типа |

