Для AI-агентов: markdown этой страницы — /docs-content/scrum/epics/update.md индекс документации — /llms.txt

Обновить эпик

PATCH /v1/scrum/epics/:id

Частично обновляет эпик скрам-проекта: переименование, перекраска, смена описания или скрам-проекта. Тело плоское, без обёртки fields.

Параметры

Параметр Тип Обяз. Описание
id (path) number да ID эпика

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

Передавайте только изменяемые поля. Нужно хотя бы одно из перечисленных.

Поле Тип Обяз. Описание
name string нет Новое название эпика. До 65 535 символов
groupId number нет Новый ID скрам-проекта. Список: GET /v1/workgroups
description string нет Новое описание. До 65 535 символов
color string нет Новый цвет эпика, например "#5eead4". До 64 символов
modifiedBy number нет ID изменившего эпик. Список: GET /v1/users

Примеры

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

Terminal
curl -X PATCH https://vibecode.bitrix24.tech/v1/scrum/epics/9 \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "doc-verify epic",
    "description": "x",
    "color": "#5eead4",
    "modifiedBy": 1
  }'

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

Terminal
curl -X PATCH https://vibecode.bitrix24.tech/v1/scrum/epics/9 \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "doc-verify epic",
    "description": "x",
    "color": "#5eead4",
    "modifiedBy": 1
  }'

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/scrum/epics/9', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'doc-verify epic',
    description: 'x',
    color: '#5eead4',
    modifiedBy: 1,
  }),
})

const { data } = await res.json()

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/scrum/epics/9', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'doc-verify epic',
    description: 'x',
    color: '#5eead4',
    modifiedBy: 1,
  }),
})

const { data } = await res.json()

Поля ответа

Поле Тип Описание
id number ID эпика
groupId number ID скрам-проекта
name string Название эпика
description string Описание эпика
color string Цвет эпика
createdBy number ID автора
modifiedBy number ID последнего изменившего

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

JSON
{
    "success": true,
    "data": {
        "id": 9,
        "groupId": 45,
        "name": "doc-verify epic",
        "description": "x",
        "createdBy": 1,
        "modifiedBy": 1,
        "color": "#5eead4"
    }
}

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

400 — нарушена валидация:

JSON
{
    "success": false,
    "error": {
        "code": "INVALID_PARAMS",
        "message": "At least one of name, groupId, description, color, createdBy, modifiedBy is required"
    }
}

Ошибки

HTTP Код Описание
400 INVALID_PARAMS Пустое тело, нечисловой id, неверный тип поля или передан createdBy
404 ENTITY_NOT_FOUND Эпика с указанным id не существует
422 BITRIX_ERROR Битрикс24 вернул ошибку при обновлении эпика
403 SCOPE_DENIED Ключу не хватает скоупа task
403 WRITE_BLOCKED_READONLY_KEY Ключ работает только на чтение
401 TOKEN_MISSING У ключа нет настроенных токенов

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

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

createdBy задаётся только при создании. В обновлении это поле отклоняется с 400 INVALID_PARAMS и сообщением «createdBy can only be set on create». Авторство переносить нельзя — для записи изменившего используйте modifiedBy.

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