Для AI-агентов: markdown этой страницы — /docs-content/entities/pages/blocks/restore.md индекс документации — /llms.txt
Восстановить блок
POST /v1/pages/:pageId/blocks/:blockId/restore
Возвращает блок из корзины страницы в её черновик. Восстановить можно блок, который перенесли в корзину вызовом удаления блока.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
pageId (path) |
number | да | ID страницы. Список: GET /v1/pages |
blockId (path) |
number | да | ID блока в корзине страницы. Список: GET /v1/pages/:pageId/blocks?deleted=true. Готовый вызов с этим ID приходит в поле restoreWith ответа удаления блока |
scope (query) |
string | нет | Тип сайта: KNOWLEDGE — база знаний, GROUP — сайт рабочей группы, MAINPAGE — главная страница. Для страниц остальных сайтов параметр не передают |
Тело запроса не нужно.
Примеры
curl — личный ключ
curl -X POST "https://vibecode.bitrix24.tech/v1/pages/20/blocks/30/restore" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl -X POST "https://vibecode.bitrix24.tech/v1/pages/20/blocks/30/restore" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/pages/20/blocks/30/restore', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const body = await res.json()
if (body.success) {
console.log('Блок снова в черновике, опубликовать:', body.data.publishWith)
}
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/pages/20/blocks/30/restore', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const body = await res.json()
if (body.success) {
console.log('Блок снова в черновике, опубликовать:', body.data.publishWith)
}
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | true — блок возвращён из корзины |
data.id |
number | ID восстановленного блока |
data.deleted |
boolean | Всегда false: блок снова в черновике страницы |
data.version |
string | Версия страницы, которую изменил вызов. Всегда draft — черновик |
data.published |
boolean | Всегда false: опубликованная версия страницы не изменилась |
data.publishWith |
string | Вызов, который публикует черновик страницы, с подставленным ID страницы |
Пример ответа
{
"success": true,
"data": {
"id": 30,
"deleted": false,
"version": "draft",
"published": false,
"publishWith": "POST /v1/pages/20/publication"
}
}
Пример ответа при ошибке
404 — блока нет в корзине страницы, например его уже восстановили:
{
"success": false,
"error": {
"code": "BLOCK_NOT_IN_DRAFT",
"message": "No such block in this page's trash. List it with GET /v1/pages/{pageId}/blocks?deleted=true."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_PAGE_ID |
pageId не положительное целое число |
| 400 | INVALID_BLOCK_ID |
blockId не положительное целое число |
| 400 | INVALID_SCOPE |
scope вне списка KNOWLEDGE, GROUP, MAINPAGE |
| 400 | INVALID_PARAMS |
Битрикс24 отклонил запрос: не хватает обязательного параметра |
| 404 | BLOCK_NOT_IN_DRAFT |
Блока с таким ID нет в корзине страницы: блок уже восстановлен, не удалялся или не существует. Текст ошибки отличается от ответа удаления и говорит про корзину |
| 404 | ENTITY_NOT_FOUND |
Страницы нет или она не видна ключу. Для страницы базы знаний, рабочей группы или главной страницы нужен параметр scope |
| 404 | ENTITY_NOT_FOUND |
Проверка корзины нашла блок, но при восстановлении Битрикс24 ответил, что блока на странице нет |
| 502 | BLOCK_LIST_UNCONFIRMED |
Битрикс24 не вернул корзину страницы, блок не удалось проверить до восстановления. Блок не тронут |
| 502 | BLOCK_RESTORE_UNCONFIRMED |
Битрикс24 не подтвердил восстановление. Перед повтором проверьте список блоков черновика |
| 403 | BITRIX_ACCESS_DENIED |
У сотрудника, под которым выпущен ключ, нет прав на страницу в Битрикс24 |
| 422 | BITRIX_ERROR |
Битрикс24 отклонил запрос, текст ошибки — в message |
| 403 | SCOPE_DENIED |
У ключа нет скоупа landing |
| 403 | WRITE_BLOCKED_READONLY_KEY |
Ключ в режиме только для чтения |
| 401 | TOKEN_MISSING |
У ключа нет настроенных токенов Битрикс24 |
Полный список общих ошибок API — Ошибки.
Известные особенности
- Повтор после потерянного ответа. Повторный вызов для блока, который уже вернулся из корзины, возвращает
404 BLOCK_NOT_IN_DRAFT, а не успех. Чтобы понять, сработал ли первый вызов, ищите блок в списке блоков черновика.