Редактировать фильтр

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

PATCH

https://api.tracker.yandex.net/v3/filters/<id_фильтра>

Важно

При редактировании фильтра параметр filter заменяется полностью, а не обновляется частично. Если вам нужно сохранить существующие условия фильтрации и добавить новые, передайте в запросе все условия — и старые, и новые.

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

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

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

PATCH /v3/filters/<id_фильтра>
Host: api.tracker.yandex.net
Authorization: OAuth y0__xAbc******
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>

{
    "name": "<новое_название_фильтра>",
    "filter": {
        "status": "open"
    }
}
Заголовки
  • Host: адрес узла, предоставляющего API.

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

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

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

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

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

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

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

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

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

Параметр Описание Тип данных
<id_фильтра> Идентификатор фильтра. Число
Параметры тела запроса

В теле запроса передается JSON-объект с изменяемыми параметрами фильтра.

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

Параметр

Описание

Тип данных

filter

Объект с параметрами фильтрации, определяет условия отбора задач — какие задачи попадут в результат фильтрации. Ключи объекта — это имена полей задачи, значения — условия фильтрации для этих полей.

Полный список поддерживаемых параметров можно найти на странице https://tracker.yandex.ru/admin/fields.

Примеры значений для разных типов полей:

  • Текстовые поля и пользователи: "assignee": "me()", "assignee": "userlogin", "createdBy": "username"
  • Статусы и перечисления: "status": "open" или массив "status": ["open", "inProgress"]
  • Даты: "created": "2024-01-01..2024-12-31" (диапазон дат)

Объект

query

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

Строка

fields

Список полей задачи для отображения в пользовательском интерфейсе Tracker. Например: ["key", "summary", "status", "assignee", "priority", "created", "updated"].

Параметр fields влияет только на отображение в интерфейсе Tracker, но не влияет на результаты API-запросов. При использовании фильтра через API (метод /v2/issues/_search) возвращаются поля задачи в зависимости от параметров, переданных при вызове метода _search.

Массив строк

sorts

Массив объектов для сортировки результатов.

Массив объектов

groupBy

Поле для группировки результатов.

Строка или объект

folder

Папка, в которой будет сохранен фильтр.

Строка или объект

Примечание

Вы можете использовать либо параметр query, либо filter. Использование обоих параметров одновременно не поддерживается.

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

Параметр Описание Тип данных
field Ключ поля задачи, по которому выполняется сортировка. Строка
isAscending Направление сортировки: true — по возрастанию, false — по убыванию. Логический

Пример 1: Изменить название фильтра

  • Используется HTTP-метод PATCH.
  • Редактируется фильтр с идентификатором 12345.
  • Изменяется только параметр name — название фильтра.
  • Объект filter: не указан, поэтому условия фильтрации остаются без изменений.
PATCH /v3/filters/12345 HTTP/1.1
Host: api.tracker.yandex.net
Authorization: OAuth y0__xAbc******
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>

{
    "name": "Новое название фильтра"
}

Пример 2: Изменить условия фильтрации

  • Используется HTTP-метод PATCH.
  • Редактируется фильтр с идентификатором 12345.
  • Цель: изменить фильтр так, чтобы он показывал задачи с высоким приоритетом, назначенные на текущего пользователя.
  • Объект filter: устанавливаются два новых условия:
    • Приоритет — критический (critical)
    • Исполнитель — текущий пользователь (me())
  • Важно: параметр filter заменяет условия полностью. Все предыдущие условия фильтрации будут удалены.
PATCH /v3/filters/12345 HTTP/1.1
Host: api.tracker.yandex.net
Authorization: OAuth y0__xAbc******
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>

{
    "filter": {
        "priority": "critical",
        "assignee": "me()"
    }
}

Пример 3: Добавить сортировку по приоритету

  • Используется HTTP-метод PATCH.
  • Редактируется фильтр с идентификатором 12345.
  • Цель: добавить сортировку по приоритету (от высокого к низкому) к существующему фильтру.
  • Параметр sorts: добавляется сортировка результатов по полю priority в порядке убывания (isAscending: false).
  • Примечание: в этом примере не указан параметр filter, поэтому существующие условия фильтрации остаются без изменений. Изменяется только сортировка.
PATCH /v3/filters/12345 HTTP/1.1
Host: api.tracker.yandex.net
Authorization: OAuth y0__xAbc******
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>

{
    "sorts": [
        {
            "field": "priority",
            "isAscending": false
        }
    ]
}

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

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

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

{
    "id": 12345,
    "self": "https://api.tracker.yandex.net/v3/filters/12345",
    "name": "Новое название фильтра",
    "filter": {
        "assignee": "me()",
        "status": "open"
    },
    "sorts": [
        {
            "field": {
                "self": "https://api.tracker.yandex.net/v3/fields/priority",
                "id": "priority",
                "display": "Приоритет"
            },
            "isAscending": false
        }
    ],
    "favorite": false,
    "permissions": {
        "WRITE": {
            "users": [
                {
                    "self": "https://api.tracker.yandex.net/v3/users/1234567890",
                    "id": "1234567890",
                    "display": "Имя Фамилия",
                    "cloudUid": "ajevuhegoiuhfasjhiu",
                    "passportUid": 1234567890
                }
            ],
            "groups": [],
            "roles": []
        },
        "READ": {
            "users": [],
            "groups": [
                {
                    "self": "https://api.tracker.yandex.net/v3/groups/5",
                    "id": "5",
                    "display": "Все сотрудники"
                }
            ],
            "roles": []
        }
    },
    "owner": {
        "self": "https://api.tracker.yandex.net/v3/users/1234567890",
        "id": "1234567890",
        "display": "Имя Фамилия",
        "cloudUid": "ajevuhegoiuhfasjhiu",
        "passportUid": 1234567890
    }
}
Параметры ответа
Параметр Описание Тип данных
id Идентификатор фильтра. Число
self Адрес ресурса API, который содержит информацию о фильтре. Строка
name Название фильтра. Строка
filter Объект с условиями фильтрации. Объект
sorts Массив объектов для сортировки результатов. Возвращается, если для фильтра настроена сортировка. Массив объектов
favorite Признак избранного фильтра: true — фильтр добавлен в избранное, false — не добавлен. Логический
permissions Объект с информацией о правах доступа к фильтру. Объект
owner Объект с информацией о владельце фильтра. Объект

Поля объектов массива sorts

Параметр Описание Тип данных
field Объект с информацией о поле, по которому выполняется сортировка. Объект
isAscending Направление сортировки: true — по возрастанию, false — по убыванию. Логический

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

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

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

Параметр Описание Тип данных
WRITE Объект с информацией о правах на редактирование фильтра. Объект
READ Объект с информацией о правах на чтение фильтра. Объект

Поля объектов WRITE и READ

Параметр Описание Тип данных
users Массив пользователей, у которых есть соответствующие права. Массив объектов
groups Массив групп, у которых есть соответствующие права. Массив объектов
roles Массив ролей, у которых есть соответствующие права. Массив объектов

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

Параметр Описание Тип данных
self Адрес ресурса API, который содержит информацию о пользователе. Строка
id Идентификатор пользователя. Строка
display Отображаемое имя пользователя. Строка
passportUid Уникальный идентификатор аккаунта пользователя в организации Яндекс 360 для бизнеса и Яндекс ID. Число
cloudUid Уникальный идентификатор пользователя в Yandex Cloud Organization. Строка

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

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