Обновить запись учёта времени

PATCH /v1/tasks/:taskId/time/:itemId

Изменяет существующую запись учёта времени. Передавайте только изменяемые поля.

Параметры

Параметр Тип Обяз. Описание
taskId (path) number да ID задачи
itemId (path) number да ID записи учёта времени

Поля запроса (body)

Поле Тип Обяз. Описание
seconds number Новая длительность в секундах. После обновления MINUTES пересчитывается автоматически
comment string Новый комментарий к записи

Примеры

curl — личный ключ

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/tasks/289/time/161" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "seconds": 900,
    "comment": "Уточнённая оценка"
  }'

curl — OAuth-приложение

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/tasks/289/time/161" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "seconds": 900,
    "comment": "Уточнённая оценка"
  }'

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/tasks/289/time/161', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    seconds: 900,
    comment: 'Уточнённая оценка',
  }),
})

const { success, data } = await res.json()

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/tasks/289/time/161', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    seconds: 900,
    comment: 'Уточнённая оценка',
  }),
})

const { success, data } = await res.json()

Поля ответа

Поле Тип Описание
success boolean Всегда true при успешном обновлении
data.id number Идентификатор обновлённой записи

Пример ответа

JSON
{
  "success": true,
  "data": {
    "id": 161
  }
}

Пример ответа при ошибке

422 — запись не найдена или недоступна:

JSON
{
  "success": false,
  "error": {
    "code": "BITRIX_ERROR",
    "message": "TASKS_ERROR_EXCEPTION_#512; Check listitem not found or not accessible; 512/TE/ITEM_NOT_FOUND_OR_NOT_ACCESSIBLE"
  }
}

Ошибки

HTTP Код Описание
400 READONLY_FIELD Передан userId — автора записи изменить нельзя (см. «Известные особенности»)
422 BITRIX_ERROR Запись с таким itemId не найдена или родительская задача недоступна
403 SCOPE_DENIED API-ключ не имеет скоупа task
401 TOKEN_MISSING API-ключ не имеет настроенных токенов

Полный список общих ошибок API — Ошибки.

Известные особенности

Автора записи (userId) изменить нельзя. Метод Bitrix24 task.elapseditem.update принимает только seconds, comment и дату; любое другое поле, включая userId, он отвергает целиком (256/TE/WRONG_ARGUMENTS), отбрасывая заодно переданные в том же запросе seconds/comment. Поэтому userId в PATCH отклоняется заранее с 400 READONLY_FIELD. Автор фиксируется при создании записи. Чтобы «переназначить» время, удалите запись и создайте новую с нужным userId.

Ответ — только id, без остальных полей. Чтобы прочитать обновлённую запись со всеми полями, сделайте `GET /v1/tasks/:taskId/time/:itemId`.

Смотрите также