Изменение
Операция: Update
Обновляет задачу.
POST /api/v01/Task/rest/Update
Content-Type: application/json
Тело запроса
Принимает те же поля, что и Create, плюс дополнительно:
| Поле | Тип | Описание |
|---|---|---|
TaskData.TaskID / TaskData.TaskKey / TaskData.IntegrationID | string | Ключ задачи; нужен ровно один |
TaskKeyField | string | Имя ведущего ключа |
TaskData.ResolutionID | string | Резолюция |
TaskData.Votes | number | Счётчик голосов |
TaskData.Labels | array | Множественные метки |
TaskData.Components | array | Множественные компоненты |
TaskData.FixVersions | array | Множественные версии |
Дополнительные query-параметры (передаются в URL, не в теле):
| Параметр | Значение | Эффект |
|---|---|---|
Description | HTML-строка | Перезаписывает RTE-описание задачи |
SendNotification_F | '0' / '1' | Отправить уведомления подписчикам и наблюдателям |
Валидация
- Должен присутствовать один из ключей задачи:
TaskID,TaskKeyилиIntegrationID. - Должен быть указан
ProjectIDилиProjectCode. - Без
TaskDataили без указанных ключей —HTTP 500,"Wrong parameters".
Побочные эффекты
- При передаче нового
Descriptionв query-параметрах:- старое описание читается из подсистемы вложений;
- формируется HTML-diff (с подсвечиванием добавленных/удалённых фрагментов);
- создаётся запись истории и diff сохраняется в неё как отдельное RTE-вложение.
- Если
SendNotification_F=1, заинтересованным отправляются уведомления.
Ответ
Успех:
{
"status": "Success",
"statusCode": 200,
"details": {
"TaskKey": "PROJ-42",
"TaskID": "0000004242"
}
}
Пример
Сменить исполнителя и статус задачи PROJ-42, не уведомляя:
POST /api/v01/Task/rest/Update
Content-Type: application/json
{
"TaskKeyField": "TaskKey",
"TaskData": {
"TaskKey": "PROJ-42",
"ProjectCode": "PROJ",
"AssigneeID": "0000005678",
"StatusID": "20"
}
}