Изменить права доступа к сущности

Запрос позволяет выдать или отозвать прямые права доступа к цели, проекту или портфелю проектов.

PATCH

https://api.tracker.yandex.net/v3/entities/{тип_сущности}/{id_сущности}/permissions

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

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

Передайте объекты grant и revoke в корне тела запроса. API добавляет или удаляет указанные права и сохраняет остальные настройки доступа.

PATCH /v3/entities/{тип_сущности}/{id_сущности}/permissions
Host: api.tracker.yandex.net
Authorization: OAuth API_TOKEN
Content-Type: application/json
X-Org-ID или X-Cloud-Org-ID: ИДЕНТИФИКАТОР_ОРГАНИЗАЦИИ

{
    "grant": {
        "READ": {
            "users": "username1"
        }
    },
    "revoke": {
        "GRANT": {
            "users": "username2"
        }
    }
}
Заголовки
  • Host: адрес узла, предоставляющего API.

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

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

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

  • Content-Type: формат тела запроса. Должен иметь значение application/json.

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

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

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

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

Ресурс
Параметр Описание Тип данных
тип_сущности Тип сущности:
  • project — проект;
  • portfolio — портфель;
  • goal — цель
Строка
id_сущности Идентификатор сущности. Чтобы получить идентификатор, посмотрите список сущностей. В качестве идентификатора можно использовать параметр id или shortId. Строка

В параметре {id_сущности} можно использовать значение id или shortId.

Параметры тела запроса
Параметр Описание Тип данных
grant Права, которые нужно выдать Объект
revoke Права, которые нужно отозвать Объект

Поля объектов grant и revoke

Параметр Описание Тип данных
READ Пользователи, группы и роли, которым нужно выдать или отозвать доступ для просмотра сущности Объект
GRANT Пользователи, группы и роли, которым нужно выдать или отозвать права на настройку доступа к сущности Объект
WRITE Пользователи, группы и роли, которым нужно выдать или отозвать доступ для редактирования сущности Объект

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

Параметр

Описание

Тип данных

users

Идентификаторы или логины пользователей

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

groups

Идентификаторы групп

Число или массив чисел

roles

Роли сущности: AUTHOR, OWNER, CLIENT, FOLLOWER, MEMBER

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

Не передавайте в теле запроса параметр permissionSources: API вернет ошибку 400. Чтобы изменить наследование прав доступа, используйте запрос Изменить расширенные настройки доступа сущности.

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

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

API возвращает объект с итоговыми правами доступа. Свойства READ, GRANT и WRITE находятся в корне ответа. В ответ не входят acl, permissionSources и parentEntities.

{
    "READ": {
        "users": [],
        "groups": [],
        "roles": []
    },
    "GRANT": {
        "users": [],
        "groups": [],
        "roles": ["AUTHOR", "OWNER"]
    },
    "WRITE": {
        "users": [],
        "groups": [],
        "roles": ["CLIENT", "AUTHOR", "FOLLOWER", "OWNER", "MEMBER"]
    }
}

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

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

Портфель — это инструмент для объединения проектов и других портфелей по продукту, отделу или другому признаку.

Когда у вас несколько параллельных проектов, портфель позволяет взглянуть на них с высоты: как распределены ресурсы, где сроки подходят к концу.

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

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

Цель — это стратегия развития или желаемый итог работы команды. Прогресс цели оценивают в количественных показателях. К цели можно привязать проекты, портфели и задачи, чтобы видеть, какая работа ведется для ее достижения.