Массовое редактирование задач

Запрос позволяет изменить параметры нескольких задач одновременно.

POST

https://api.tracker.yandex.net/v3/bulkchange/_update

Примечание

Максимальное количество задач для однократного обновления — 10 000.

Формат запроса

Перед выполнением запроса получите доступ к API.

Чтобы изменить задачи, используйте HTTP-запрос с методом POST. В теле запроса укажите параметры в формате JSON.

POST /v3/bulkchange/_update
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth-токен>
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>

{
  "issues": ["TEST-1", "TEST-2", "TEST-3"],
  "values": {
    "<параметр_1>": "<значение_параметра_1>",
    "<параметр_2>": "<значение_параметра_2>"
  }
}
Заголовки
  • Host: адрес узла, предоставляющего API.

  • Authorization: токен для авторизации в одном из форматов:

    • OAuth <OAuth-токен> при авторизации по протоколу OAuth 2.0. Читать подробнее

    • Bearer <IAM-токен> при авторизации с помощью IAM-токена — если к Tracker привязана организация Yandex Cloud Organization. Читать подробнее

  • X-Org-ID или X-Cloud-Org-ID: идентификатор организации.

    • Используйте заголовок X-Org-ID, если к Tracker привязана организация Яндекс 360 для бизнеса.

    • Используйте заголовок X-Cloud-Org-ID, если к Tracker привязана организация Yandex Cloud Organization.

    Чтобы узнать идентификатор организации, перейдите на страницу АдминистрированиеОрганизации и скопируйте значение поля идентификатор.

Параметры запроса

Дополнительные параметры

Параметр Описание Тип данных
notify Признак уведомления об изменении задачи:
  • true — пользователи, указанные в полях задачи, получат уведомления;
  • false — (по умолчанию) пользователи не получат уведомления.
Логический
Параметры тела запроса

Обязательные параметры

Параметр

Описание

Тип данных

issues

Массив идентификаторов задач или фильтр на языке запросов.

При составлении запроса обратите внимание, что необходимо экранировать кавычки и спецсимволы с помощью обратной косой черты (\). Подробнее в разделе Использование специальных символов.

Массив или Строка

values

Параметры задач, которые будут изменены. Используйте параметры, доступные при редактировании задачи.

Для редактирования параметров задачи можно использовать операторы set, add, remove и другие. Подробнее читайте в разделе Редактирование параметров.

Строка

Пример 1: Изменить задачи.

  • Используется HTTP-метод POST.
  • Тип задач «TEST-1», «TEST-2», «TEST-3» меняется на «Ошибка».
POST /v3/bulkchange/_update
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth-токен>
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>
{
 "issues": ["TEST-1","TEST-2","TEST-3"],
 "values": {
   "type": {"name": "Ошибка"}
 }
}

Пример 2: Изменить задачи, используя фильтр на языке запросов.

  • Используется HTTP-метод POST.
  • Фильтр для поиска задач: в названии есть слово Test и исполнитель — пользователь с логином username.
  • Изменение задач: приоритет меняется на Блокер и добавляется комментарий "Updated via API".
POST /v3/bulkchange/_update
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth-токен>
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>
{
 "issues": "Summary: Test Assignee: username",
 "values": {
   "comment": "Updated via API",
   "priority": {"key": "blocker"}
 }
}

Пример 3: Изменить теги в задачах.

  • Используется HTTP-метод POST.
  • В задачах «TEST-1», «TEST-2», «TEST-3» тег тег1 меняется на тег2.
POST /v3/bulkchange/_update
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth-токен>
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>
{
 "issues": ["TEST-1","TEST-2","TEST-3"],
 "values": {
   "tags": {"replace": {"target": "тег1", "replacement": "тег2"}
   }
 }
}

Формат ответа

В случае успешного выполнения запроса API возвращает ответ с кодом 201 Created.

Тело ответа содержит информацию об операции массового редактирования в формате JSON.

{
    "id": "1ab23cd4e5678901********",
    "self": "https://api.tracker.yandex.net/v3/bulkchange/1ab23cd4e5678901********",
    "createdBy": {
        "self": "https://api.tracker.yandex.net/v3/users/12********",
        "id": "username",
        "display": "Имя Фамилия"
    },
    "createdAt": "2020-12-15T11:52:53.665+0000",
    "status": "CREATED",
    "statusText": "Операция массового редактирования задач создана.",
    "executionChunkPercent": 0,
    "executionIssuePercent": 0
}
Параметры ответа
Параметр Описание Тип данных
id Идентификатор операции массового редактирования. Строка
self Адрес ресурса API, который содержит информацию о массовом редактировании. Строка
createdBy Объект с информацией об инициаторе массового редактирования. Объект
createdAt Дата и время создания операции массового редактирования. Строка
status Статус операции массового редактирования. Строка
statusText Описание статуса операции массового редактирования. Строка
executionChunkPercent Служебный параметр. Число
executionIssuePercent Служебный параметр. Число

Поля объекта createdBy

Параметр Описание Тип данных
self Адрес ресурса API, который содержит информацию о пользователе. Строка
id Идентификатор пользователя. Число
display Отображаемое имя пользователя. Строка

Если запрос не был успешно обработан, API возвращает ответ с кодом ошибки:

400
Один или несколько параметров запроса имеют недопустимое значение.
401
Пользователь не авторизован. Проверьте, были ли выполнены действия, описанные в разделе Доступ к API.
403
У вас не хватает прав на выполнение этого действия. Наличие прав можно перепроверить в интерфейсе Tracker — для выполнения действия при помощи API и через интерфейс требуются одинаковые права.
422
Ошибка валидации JSON, запрос отклонен.