Для AI-агентов: markdown этой страницы — /docs-content/entities/tasks/checklist-actions/complete-all.md индекс документации — /llms.txt
Отметить пункт выполненным вместе с подпунктами
POST /v1/tasks/:taskId/checklist/:itemId/complete-all
Отмечает пункт чек-листа задачи выполненным вместе со всеми его подпунктами за один вызов. Пункт верхнего уровня — это название чек-листа, и его отметка закрывает весь чек-лист.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
ПараметрtaskId (path) |
Типnumber | Обяз.да | ОписаниеID задачи, целое положительное число. Список: GET /v1/tasks |
ПараметрitemId (path) |
Типnumber | Обяз.да | ОписаниеID пункта, целое положительное число. Список: GET /v1/tasks/:taskId/checklist |
Тело запроса не нужно.
Примеры
curl — личный ключ
curl -X POST "https://vibecode.bitrix24.tech/v1/tasks/4218/checklist/268/complete-all" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl -X POST "https://vibecode.bitrix24.tech/v1/tasks/4218/checklist/268/complete-all" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/tasks/4218/checklist/268/complete-all', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { success, data } = await res.json()
console.log('Отмечено пунктов:', data?.length)
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/tasks/4218/checklist/268/complete-all', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { success, data } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
Полеsuccess |
Типboolean | Описаниеtrue, если запрос выполнен |
Полеdata |
Типarray | ОписаниеОтмеченные пункты: сначала подпункты, последним — сам пункт itemId. У пункта без подпунктов — массив из одного пункта |
Полеdata[].id |
Типnumber | ОписаниеID пункта |
Полеdata[].taskId |
Типnumber | ОписаниеID задачи |
Полеdata[].parentId |
Типnumber | ОписаниеID родительского пункта. 0 — пункт верхнего уровня, он же название чек-листа |
Полеdata[].title |
Типstring | ОписаниеТекст пункта |
Полеdata[].sortIndex |
Типnumber | ОписаниеМесто пункта среди пунктов с тем же родителем. Чем меньше значение, тем выше пункт |
Полеdata[].displaySortIndex |
Типstring | ОписаниеНомер пункта для показа. В ответе — пустая строка |
Полеdata[].isComplete |
Типboolean | ОписаниеВыполнен ли пункт. После вызова — true у каждого пункта массива |
Полеdata[].isImportant |
Типboolean | ОписаниеОтмечен ли пункт как важный |
Полеdata[].completedCount |
Типnumber | ОписаниеПриходит 0, даже когда подпункты выполнены. Выполнен ли подпункт, показывает его isComplete |
Полеdata[].members |
Типarray | ОписаниеУчастники пункта. Без участников — пустой массив. Роли участников — в ключевых полях |
Полеdata[].attachments |
Типarray | object | ОписаниеВложения пункта. Без вложений — пустой массив. Формат объекта — в ключевых полях |
Полеdata[].createdBy |
Типnumber | ОписаниеID автора пункта. Список: GET /v1/users |
Полеdata[].userId |
Типnumber | ОписаниеID сотрудника, от имени которого сделан вызов. Список: GET /v1/users |
Полеdata[].copiedId |
Типnumber | null | ОписаниеID исходного пункта, если пункт получен копированием. Иначе null |
Полеdata[].nodeId |
Типstring | null | ОписаниеСлужебный ключ узла. В ответе — null |
Пример ответа
Пункт верхнего уровня с двумя подпунктами отмечен выполненным:
{
"success": true,
"data": [
{
"id": 276,
"copiedId": null,
"userId": 1295,
"createdBy": 1295,
"parentId": 268,
"title": "Проверить сборку",
"sortIndex": 1,
"displaySortIndex": "",
"isComplete": true,
"isImportant": true,
"completedCount": 0,
"members": [],
"attachments": [],
"nodeId": null,
"taskId": 4218
},
{
"id": 274,
"copiedId": null,
"userId": 1295,
"createdBy": 1295,
"parentId": 268,
"title": "Согласовать дату",
"sortIndex": 2,
"displaySortIndex": "",
"isComplete": true,
"isImportant": false,
"completedCount": 0,
"members": [],
"attachments": [],
"nodeId": null,
"taskId": 4218
},
{
"id": 268,
"copiedId": null,
"userId": 1295,
"createdBy": 1295,
"parentId": 0,
"title": "Подготовка к запуску",
"sortIndex": 0,
"displaySortIndex": "",
"isComplete": true,
"isImportant": false,
"completedCount": 0,
"members": [],
"attachments": [],
"nodeId": null,
"taskId": 4218
}
]
}
Пример ответа при ошибке
422 — пункта с таким itemId нет:
{
"success": false,
"error": {
"code": "BITRIX_ERROR",
"message": "Доступ к задаче запрещен",
"b24Code": "0"
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| HTTP400 | КодINVALID_PARAMS |
ОписаниеtaskId — не целое положительное число. Сообщение taskId must be a positive integer |
| HTTP400 | КодINVALID_PARAMS |
ОписаниеitemId — не целое положительное число. Сообщение itemId must be a positive integer |
| HTTP400 | КодFST_ERR_CTP_EMPTY_JSON_BODY |
ОписаниеПередан заголовок Content-Type: application/json, а тело пустое. Вызывайте метод без этого заголовка |
| HTTP401 | КодMISSING_API_KEY |
ОписаниеНе передан X-Api-Key |
| HTTP401 | КодTOKEN_MISSING |
ОписаниеУ ключа нет токенов Битрикс24 |
| HTTP403 | КодSCOPE_DENIED |
ОписаниеУ ключа нет скоупа task |
| HTTP403 | КодWRITE_BLOCKED_READONLY_KEY |
ОписаниеКлюч в режиме «только чтение». В error.details.switchUrl — адрес раздела, где режим меняется |
| HTTP415 | КодFST_ERR_CTP_INVALID_MEDIA_TYPE |
ОписаниеТело с Content-Type, который API не разбирает, например application/xml |
| HTTP422 | КодBITRIX_ERROR |
ОписаниеЗадачи или пункта нет либо сотрудник, от имени которого идёт вызов, не видит задачу. Сообщение «Доступ к задаче запрещен», на портале с английским языком — Access to task was denied. Спецификация API объявляет на этот случай 404 TASK_NOT_FOUND и 404 NOT_FOUND, но на проверенных порталах приходит этот ответ |
| HTTP429 | КодRATE_LIMITED |
ОписаниеПревышена частота запросов. Действующий потолок — в заголовке x-ratelimit-limit |
Полный список общих ошибок API — Ошибки.
Известные особенности
Повторный вызов не даёт ошибки. Если пункт и его подпункты уже выполнены, метод снова отвечает 200 и тем же массивом пунктов.