Переменные
При использовании макросов, триггеров и автодействий вы можете подставить значения из полей задачи в комментарий, формулу или запрос HTTP при помощи переменных.
Добавить переменную
-
Создайте макрос, триггер или автодействие.
-
Нажмите Добавить переменную в блоке действий триггера или автодействия. Для макроса добавьте переменную в блок сообщения.
-
Выберите поле из списка. При выполнении действия на место переменной в текст будет подставлено значение поля. Вы также можете подставить параметры задачи, которые отсутствуют в списке переменных. Для этого введите имя переменной в тексте.
Примечание
В списке отображаются переменные для всех полей, доступных в Tracker. Если вы выберете переменную для поля, которое не используется в очереди или в задаче, значение подставлено не будет.
Типы переменных
Имена переменных, которые соответствуют полям задачи, записываются в формате: {{issue.<ключ_поля>}}
. Чтобы получить определенный параметр поля задачи, используйте формат записи: {{issue.<ключ_поля>.<параметр>}}
.
Атрибуты пользователей
С помощью переменных по умолчанию вы можете получить имя и фамилию пользователя. Чтобы получить определенные атрибуты пользователя, укажите переменную вида {{issue.<роль>.<атрибут>}}
, где <роль>
— роль и название поля, в котором указан пользователь; <атрибут>
— обозначение атрибута.
Важно
С 1 октября 2023 года тип идентификатора пользователя по умолчанию изменился с passportUid
на uid
. В связи с этим рекомендуем явно указывать тип идентификатора пользователя при интеграции.
Роли пользователей:
assignee
— исполнитель;author
— автор;followers
— наблюдатели;access
— пользователи в поле Доступ.
Атрибуты пользователей:
login
— логин;firstName
— имя;lastName
— фамилия;uid
— идентификатор в Tracker;email
— адрес электронной почты;cloudUid
— идентификатор в Yandex Cloud Organization;passportUid
— идентификатор в организации Яндекс 360 для бизнеса и Яндекс ID.
Например, при помощи переменной {{issue.followers.email}}
можно получить адреса электронной почты всех наблюдателей задачи.
Примечание
Логины, которые содержат только цифры, могут быть неправильно интерпретированы при выполнении запросов к Tracker. В таком случае при возникновении ошибки рекомендуется использовать атрибут uid
вместо login
.
Дополнительные параметры задачи
Некоторые параметры задачи не отображаются в полях, но их значения также можно получить с помощью переменных:
Переменная | Значение |
---|---|
{{issue.parent}} |
Родительская задача |
{{issue.previousStatus}} |
Предыдущий статус задачи |
{{issue.previousQueue}} |
Предыдущая очередь задачи |
{{issue.checklistDone}} |
Количество выполненных пунктов чеклиста |
{{issue.votes}} |
Количество голосов за задачу |
Локальные поля
Имена переменных, которые соответствуют локальным полям задачи, записываются в формате: {{issue.local.<ключ_поля>}}
.
Модификаторы даты и времени
По умолчанию дата и время передается в формате ДД месяц ГГГГ
, например: 07 декабря 2021
. Для записи даты и времени в других форматах используйте модификаторы:
iso8601
— формат ISO 8601;unixEpoch
— формат Unix Time;date
— запись только даты для полей, в которых передается дата и время.
Примеры записи переменных с модификаторами даты и времени:
Переменная | Значение | Формат записи |
---|---|---|
{{currentDateTime.iso8601}} |
Текущая дата и время в формате ISO 8601 | YYYY-MM-DDThh:mm:ss.sssZ |
{{currentDateTime.unixEpoch}} |
Текущее время в формате Unix Time | 1638735223 |
{{currentDateTime.date}} |
Текущая дата | 06 декабря 2021 |
{{issue.start.iso8601}} |
Дата начала задачи в формате ISO 8601 | YYYY-MM-DD |
{{issue.start.unixEpoch}} |
Время начала задачи в формате Unix Time | 1638855321 |
Модификаторы JSON
В полях может быть записано несколько значений. Для получения или передачи значений таких полей, например, в запросах HTTP, их нужно преобразовать в формат JSON. Для этого к имени переменной добавьте .json
.
Примеры записи переменных в формате JSON:
Переменная | Значение | Формат записи |
---|---|---|
{{issue.summary.json}} |
Название задачи | "Название задачи" |
{{issue.description.json}} |
Описание задачи | "Описание" |
{{issue.tags.json}} |
Теги | ["tag1","tag2"] |
{{issue.<роль>.login.json}} |
Логин пользователя (для полей author и assignee ) |
"ivan-ivanov" |
{{issue.<роль>.uid.json}} |
Идентификатор пользователя (для полей author и assignee ) |
88******** |
{{issue.<роль>.login.json}} |
Логины пользователей (для полей followers и access ) |
["ivan-ivanov", "user3993"] |
{{issue.components.display.json}} |
Компоненты | ["component1","component2"] |
{{issue.<роль>.cloudUid.json}} |
Идентификаторы пользователей в Yandex Cloud Organization (для полей followers и access ) |
[bf********, cq********] |
{{issue.<роль>.passportUid.json}} |
Идентификаторы пользователей в организации Яндекс 360 для бизнеса и Яндекс ID (для полей followers и access ) |
[88********, 55********] |
{{issue.<роль>.uid.json}} |
Идентификаторы пользователей (для полей followers и access ) |
[88********, 55********] |
Важно
Tracker поддерживает передачу значений в формате JSON для простых типов полей, которые имеют формат строк, чисел, а также массивов строк и чисел. Тип поля "Объект" не поддерживается: например, переменная {{issue.author.json}}
работать не будет. Вместо нее можно использовать переменную для получения простого атрибута поля: {{issue.author.login.json}}
.
Комментарии
С помощью переменных можно получить некоторые атрибуты комментариев в задаче. Такие переменные имеют вид: {{<тип_комментария>.<атрибут>}}
, где <тип_комментария>
выбирают в зависимости от того, кто оставил комментарий (пользователь или робот), а <атрибут>
— обозначение параметра комментария.
Доступные значения для <тип_комментария>
:
userComment
— комментарий из текущей операции редактирования. Если пользователь оставил несколько комментариев, будет рассмотрен первый из них.generatedComment
— комментарий, созданный автоматически в результате работы триггера или выполнения автодействия.
Для получения информации о комментарии используются следующие параметры:
Переменная | Значение |
---|---|
{{<тип_комментария>.id}} |
Идентификатор комментария |
{{<тип_комментария>.text}} |
Текст комментария |
{{<тип_комментария>.author}} |
Автор комментария |