Для AI-агентов: markdown этой страницы — /docs-content/tasks/move-stage.md индекс документации — /llms.txt
Перенести задачу с порядком
POST /v1/tasks/:taskId/move-stage
Переносит задачу на стадию канбана её рабочей группы или на стадию «Моего плана» владельца ключа и при необходимости ставит её перед другой задачей или после неё.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
taskId (path) |
number | да | ID переносимой задачи. Список: GET /v1/tasks |
Поля запроса (body)
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
stageId |
number | да | ID целевой стадии: стадия канбана группы задачи или стадия «Моего плана». Список: GET /v1/tasks/stages/:entityId, для группы — ID группы, для «Моего плана» — 0 |
beforeTaskId |
number | нет | ID задачи, перед которой встанет переносимая. Задача из той же группы при переносе по канбану группы или из «Моего плана» при переносе по плану. Не передаётся вместе с afterTaskId |
afterTaskId |
number | нет | ID задачи, после которой встанет переносимая. Те же условия, что у beforeTaskId. Не передаётся вместе с beforeTaskId |
Другие поля в теле отклоняются с 400 INVALID_PARAMS.
Примеры
curl — личный ключ
curl -X POST "https://vibecode.bitrix24.tech/v1/tasks/4127/move-stage" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"stageId": 625, "beforeTaskId": 4125}'
curl — OAuth-приложение
curl -X POST "https://vibecode.bitrix24.tech/v1/tasks/4127/move-stage" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{"stageId": 625, "beforeTaskId": 4125}'
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/tasks/4127/move-stage', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({ stageId: 625, beforeTaskId: 4125 }),
})
const { success, data } = await res.json()
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/tasks/4127/move-stage', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({ stageId: 625, beforeTaskId: 4125 }),
})
const { success, data } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
object | Результат переноса |
data.taskId |
number | ID перенесённой задачи |
data.stageId |
number | ID стадии, на которой задача оказалась |
data.moved |
boolean | Всегда true: перенос проверен повторным чтением задачи |
Пример ответа
{
"success": true,
"data": {
"taskId": 4127,
"stageId": 625,
"moved": true
}
}
Пример ответа при ошибке
409 — задачи нет в «Моём плане» владельца ключа, перенос не выполнен:
{
"success": false,
"error": {
"code": "TASK_NOT_IN_PLAN",
"message": "The task is not in your My Plan and was not moved"
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_PARAMS |
taskId или stageId не положительное целое число либо в теле есть другие поля: taskId and stageId must be positive integers |
| 400 | INVALID_PARAMS |
Переданы оба поля beforeTaskId и afterTaskId: Use either beforeTaskId or afterTaskId |
| 400 | INVALID_PARAMS |
Задача для порядка совпадает с переносимой или не положительное целое число: The ordering task must be a different positive task id |
| 400 | INVALID_PARAMS |
Стадия не из канбана группы задачи и не из «Моего плана»: stageId must belong to the task group or your My Plan |
| 400 | INVALID_PARAMS |
Перенос по канбану группы, а задача для порядка из другой группы или её нет: Ordering task must belong to the same group |
| 400 | INVALID_PARAMS |
Перенос по «Моему плану», а задачи для порядка в нём нет: Ordering task must belong to your My Plan |
| 401 | MISSING_API_KEY |
Не передан заголовок X-Api-Key |
| 401 | TOKEN_MISSING |
У ключа нет действующего токена Битрикс24 |
| 403 | SCOPE_DENIED |
У ключа нет скоупа task или tasks |
| 403 | WRITE_BLOCKED_READONLY_KEY |
Ключ только для чтения |
| 403 | BITRIX_ACCESS_DENIED |
У пользователя ключа нет прав на задачу или на канбан группы |
| 404 | ENTITY_NOT_FOUND |
Задачи с таким taskId нет: Task was not found |
| 409 | TASK_NOT_IN_PLAN |
Перенос по «Моему плану», а задачи в плане владельца ключа нет: The task is not in your My Plan and was not moved |
| 422 | BITRIX_ERROR |
Битрикс24 не подтвердил перенос: Bitrix24 did not confirm the move; reread the task before retrying |
| 422 | BITRIX_ERROR |
После переноса по канбану группы задача не на запрошенной стадии: Bitrix24 did not move the task to the requested stage; reread the task before retrying |
| 422 | BITRIX_ERROR |
Битрикс24 отклонил перенос, текст в message |
Полный список общих ошибок API — Ошибки.
Известные особенности
- «Мой план» не зависит от канбана группы. Перенос по «Моему плану» не меняет
stageIdзадачи в группе. Позицию задачи в плане читают фильтромfilter[stagesId]=<ID стадии>в списке задач. - В «Мой план» задачи не добавляются. В плане есть только задачи, где владелец ключа участвует, например постановщик или ответственный.
- Порядок в канбане группы общий. Карточки группы видят в одном порядке все её участники, поэтому
beforeTaskIdиafterTaskIdменяют доску для всех. - Задачи спринта Scrum переносятся другим методом. Для доски спринта используйте этапы Scrum-канбана.