Для AI-агентов: markdown этой страницы — /docs-content/entities/tasks/checklist/update.md индекс документации — /llms.txt
Обновить пункт чек-листа
PATCH /v1/tasks/:taskId/checklist/:itemId
Частичное обновление пункта чек-листа — передавайте только изменяемые поля. Хотя бы одно поле обязательно.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
taskId (path) |
integer | да | ID задачи |
itemId (path) |
integer | да | ID пункта чек-листа |
Поля запроса (body)
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
title |
string | нет | Текст пункта |
sortIndex |
integer | нет | Индекс сортировки |
isComplete |
boolean / Y,N |
нет | Статус выполнения |
isImportant |
boolean / Y,N |
нет | Признак важности |
parentId |
integer | нет | ID родительского пункта |
members |
object | нет | Участники пункта: { "<userId>": { "type": "A" | "U" } }. Полностью заменяет текущий список — см. «Известные особенности» |
Хотя бы одно из перечисленных полей обязательно — пустое тело возвращает 400.
Примеры
curl — личный ключ
curl -X PATCH "https://vibecode.bitrix24.tech/v1/tasks/3943/checklist/213" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "title": "Собрать и проверить документы", "isImportant": true }'
curl — OAuth-приложение
curl -X PATCH "https://vibecode.bitrix24.tech/v1/tasks/3943/checklist/213" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "title": "Собрать и проверить документы", "isImportant": true }'
JavaScript — личный ключ
const res = await fetch("https://vibecode.bitrix24.tech/v1/tasks/3943/checklist/213", {
method: "PATCH",
headers: {
"X-Api-Key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({ title: "Собрать и проверить документы", isImportant: true }),
});
const { data } = await res.json();
JavaScript — OAuth-приложение
const res = await fetch("https://vibecode.bitrix24.tech/v1/tasks/3943/checklist/213", {
method: "PATCH",
headers: {
"X-Api-Key": "YOUR_APP_KEY",
"Authorization": "Bearer USER_SESSION_TOKEN",
"Content-Type": "application/json",
},
body: JSON.stringify({ title: "Собрать и проверить документы", isImportant: true }),
});
const { data } = await res.json();
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data.id |
number | ID обновлённого пункта |
Пример ответа
{ "success": true, "data": { "id": 213 } }
Пример ответа при ошибке
400 — пустое тело запроса:
{
"success": false,
"error": { "code": "INVALID_PARAMS", "message": "No updatable fields provided" }
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_PARAMS |
Пустое тело, taskId/itemId не положительное целое, неизвестный формат members, либо нарушен тип поля |
| 422 | BITRIX_ERROR |
Пункт с указанным itemId не существует или недоступен ключу — Битрикс24 бросил исключение |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа task |
| 403 | WRITE_BLOCKED_READONLY_KEY |
Ключ в режиме «только чтение» — переключите на чтение+запись в /keys |
| 401 | TOKEN_MISSING |
API-ключ не имеет настроенных токенов |
Полный список общих ошибок API — Ошибки.
Известные особенности
- Несуществующий
taskIdдаёт200. Если задачи с таким идентификатором нет, ответ приходит успешный, с переданнымitemId, но ничего не обновляется. Отказ422приходит только на несуществующий пункт внутри существующей задачи. Проверить задачу можно через «Получить задачу». membersзаменяется целиком. При обновлении поляmembersБитрикс24 полностью перезаписывает список участников пункта. Чтобы сохранить текущих участников, передайте их вместе с новыми в том же запросе.