Изменить сущность
Запрос позволяет обновить информацию о сущности — цели, проекте или портфеле проектов.
PATCH
https://api.tracker.yandex.net/v3/entities/<тип_сущности>/<id_сущности>
Формат запроса
Перед выполнением запроса получите доступ к API.
Чтобы изменить сущность, используйте HTTP-запрос с методом PATCH
. В теле запроса укажите параметры в формате JSON.
PATCH /v3/entities/<тип_сущности>/<id_сущности>
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth-токен>
X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации>
{
"fields":
{
"summary": "<новое_название>",
"teamAccess": true,
"parentEntity": {
"primary": "<id_родительской_сущности>"
}
},
"comment":"<комментарий>",
"links":
[
{
"relationship": "<связь>",
"entity": "<id_связанной_сущности>"
}
]
}
Заголовки
-
Host
: адрес узла, предоставляющего API. -
Authorization
: токен для авторизации в одном из форматов:-
OAuth <OAuth-токен>
при авторизации по протоколу OAuth 2.0. Читать подробнее -
Bearer <IAM-токен>
при авторизации с помощью IAM-токена — если к Трекеру привязана организация Yandex Cloud Organization. Читать подробнее
-
-
X-Org-ID
илиX-Cloud-Org-ID
: идентификатор организации.-
Используйте заголовок
X-Org-ID
, если к Трекеру привязана организация Яндекс 360 для бизнеса. -
Используйте заголовок
X-Cloud-Org-ID
, если к Трекеру привязана организация Yandex Cloud Organization.
Чтобы узнать идентификатор организации, перейдите на страницу Администрирование → Организации и скопируйте значение поля идентификатор.
-
Ресурс
Параметр | Описание | Тип данных |
---|---|---|
<тип_сущности> | Тип сущности:
|
Строка |
<id_сущности> | Идентификатор сущности. Чтобы получить идентификатор, посмотрите список сущностей. В качестве идентификатора можно использовать параметр id или shortId . |
Строка |
Параметры запроса
Дополнительные параметры
Параметр | Описание | Тип данных |
---|---|---|
fields | Дополнительные поля сущности, которые будут включены в ответ. | Строка |
expand | Дополнительная информация, которая будет включена в ответ:
|
Строка |
Параметры тела запроса
Дополнительные параметры
Параметр | Описание | Тип данных |
---|---|---|
fields | Объект с настройками сущности. Подробнее в разделе Дополнительные параметры сущности | Объект |
comment | Комментарий. | Строка |
links | Массив объектов с настройками связей с другими сущностями. | Массив объектов |
Поля объекта fields
Параметр |
Описание |
Тип данных |
summary |
Название (обязательное поле) |
Строка |
teamAccess |
Настройки доступа:
О настройке прав доступа для пользователей и групп см. в разделе Изменить настройки доступа сущности. |
Логический |
description |
Описание |
Строка |
markupType |
Тип отображаемой в тексте разметки. Если вы используете в тексте комментария или описания сущности разметку YFM, укажите значение |
Строка |
author |
Автор (идентификатор пользователя) |
Строка |
lead |
Ответственный (идентификатор пользователя) |
Строка |
teamUsers |
Участники (массив идентификаторов пользователей) |
Массив строк |
clients |
Заказчики (массив идентификаторов пользователей) |
Массив строк |
followers |
Наблюдатели (массив идентификаторов пользователей) |
Массив строк |
start |
Дата начала в формате |
Дата |
end |
Дедлайн в формате |
Дата |
tags |
Теги |
Массив строк |
Данные о родительских сущностях. Для проекта и портфеля — поле «Входит в портфель» |
Объект |
|
entityStatus |
Статус. Допустимые значения статусаДля проекта или портфеля:
Для цели:
|
Строка |
Поля объектов массива links
Параметр |
Описание |
Тип данных |
relationship |
Тип связи. Для проектов и портфелей:
Для цели:
|
Строка |
entity |
Идентификатор связанной сущности. |
Строка |
Поля объекта parentEntity
Параметр | Описание | Тип данных |
---|---|---|
primary | Идентификатор основного портфеля (для проектов и портфелей) или родительской цели (для целей) | Строка |
secondary | Для проектов и портфелей — идентификаторы дополнительных портфелей Для целей параметр secondary не поддерживается |
Массив строк |
Если в адресе запроса указана версия API v2
, параметр parentEntity
может содержать только идентификатор основной родительской сущности.
Например: "parentEntity": "66e2fa183*****"
Пример 1: Изменить название проекта и оставить комментарий
- Используется HTTP-метод PATCH.
- Название проекта меняется на «Test 2».
- В комментарии проекта добавляется запись «Проект переименован».
- В ответе включено отображение вложений.
PATCH /v3/entities/project/655f8cc52*****?expand=attachments HTTP/1.1 Host: api.tracker.yandex.net Authorization: OAuth <OAuth-токен> X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации> { "fields": { "summary":"Test 2" }, "comment":"Проект переименован" }
Пример 2: Изменить у проекта основной портфель и добавить дополнительный
- Используется HTTP-метод PATCH.
- В качестве основного портфеля указывается портфель с идентификатором
66e2fa183*****
.- В список дополнительных портфелей добавляется портфель с идентификатором
670e702fd*****
.- В ответе включено отображение родительских сущностей.
PATCH /v3/entities/project/655f8cc52*****?fields=parentEntity HTTP/1.1 Host: api.tracker.yandex.net Authorization: OAuth <OAuth-токен> X-Org-ID или X-Cloud-Org-ID: <идентификатор_организации> { "fields": { "parentEntity": { "primary": "66e2fa183*****", "secondary": { "add": ["670e702fd*****"] } } } }
Формат ответа
В случае успешного выполнения запроса API возвращает ответ с кодом 200 OK
.
Тело ответа содержит информацию об измененной сущности в формате JSON.
{
"self": "https://api.tracker.yandex.net/v3/entities/project/655f328da834c763********",
"id": "655f328da834c763********",
"version": 3,
"shortId": 2,
"entityType": "project",
"createdBy": { "self": "https://api.tracker.yandex.net/v3/users/11********", "id": "11********", "display": "Имя Фамилия", "cloudUid": "ajevuhegoggf********", "passportUid": 11******** },
"createdAt": "2023-11-23T11:07:57.298+0000",
"updatedAt": "2023-11-23T15:46:26.391+0000",
"attachments": [
{
"self": "https://api.tracker.yandex.net/v3/attachments/8",
"id": "8",
"name": "file1.docx",
"content": "api.tracker.yandex.net/v3/attachments/8/file1.docx",
"createdBy": { "self": "https://api.tracker.yandex.net/v3/users/11********", "id": "11********", "display": "Имя Фамилия", "cloudUid": "ajevuhegoggf********", "passportUid": 11******** },
"createdAt": "2023-11-23T15:46:20.617+0000",
"mimetype": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"size": 18585
},
{
"self": "https://api.tracker.yandex.net/v3/attachments/9",
"id": "9",
"name": "file2.pdf",
"content": "api.tracker.yandex.net/v3/attachments/9/file2.pdf",
"createdBy": { "self": "https://api.tracker.yandex.net/v3/users/11********", "id": "11********", "display": "Имя Фамилия", "cloudUid": "ajevuhegoggf********", "passportUid": 11******** },
"createdAt": "2023-11-23T15:46:25.932+0000",
"mimetype": "application/pdf",
"size": 175656
}
],
"fields":
{
"teamAccess": null
}
}
Параметры ответа
Параметр | Описание | Тип данных |
---|---|---|
self | Адрес ресурса API, который содержит информацию о проекте. | Строка |
id | Идентификатор сущности. | Строка |
version | Версия сущности. Каждое изменение параметров увеличивает номер версии. Редактирование сущности будет заблокировано, если версия достигнет предельного значения: для роботов 10100 , для пользователей 11100 . |
Число |
shortId | Идентификатор цели, проекта или портфеля в интерфейсе Трекера. | Число |
entityType | Тип сущности. | Строка |
createdBy | Блок с информацией о создателе сущности. | Объект |
createdAt | Дата создания сущности в формате YYYY-MM-DDThh:mm:ss.sss±hhmm . |
Строка |
updatedAt | Дата последнего обновления сущности в формате YYYY-MM-DDThh:mm:ss.sss±hhmm . |
Строка |
attachments | Массив объектов с информацией о вложении. | Массив объектов |
fields | Блок с дополнительными полями сущности. | Объект |
Поля объекта createdBy
Параметр | Описание | Тип данных |
---|---|---|
self | Адрес ресурса API, который содержит информацию о пользователе. | Строка |
id | Идентификатор пользователя. | Строка |
display | Отображаемое имя пользователя. | Строка |
passportUid | Уникальный идентификатор аккаунта пользователя в организации Яндекс 360 для бизнеса и Яндекс ID. | Число |
cloudUid | Уникальный идентификатор пользователя в Yandex Cloud Organization. | Строка |
Если запрос не был успешно обработан, API возвращает ответ с кодом ошибки:
- 400
- Один или несколько параметров запроса имеют недопустимое значение.
- 401
- Пользователь не авторизован. Проверьте, были ли выполнены действия, описанные в разделе Доступ к API.
- 403
- У вас не хватает прав на выполнение этого действия. Наличие прав можно перепроверить в интерфейсе Трекера — для выполнения действия при помощи API и через интерфейс требуются одинаковые права.
- 412
- При редактировании объекта возник конфликт. Возможно, ошибка возникла из-за неправильно указанной версии изменений.
- 423
- Редактирование объекта заблокировано. Возможно, превышено допустимое значение параметра
version
— количество обновлений объекта. Максимальное значение версии составляет10100
для роботов и11100
для пользователей.
- 428
- Доступ к ресурсу отклонен. Проверьте, указаны ли все обязательные условия выполнения запроса.