Получить информацию о пользователях с относительной пагинацией

Запрос позволяет получить информацию об учетных записях пользователей, которые зарегистрированы в организации, с использованием относительной пагинации. В отличие от обычного метода получения пользователей, данный запрос позволяет получить больше 10 000 записей.

GET

https://api.tracker.yandex.net/v3/users/_relative?expand=groups

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

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

Для получения информации о пользователях организации используйте HTTP-запрос с методом GET:

GET /v3/users/_relative?perPage=<количество_элементов>&id=<идентификатор>&expand=<дополнительные_поля>
Host: api.tracker.yandex.net
Authorization: OAuth <OAuth-токен>
X-Org-ID или X-Cloud-Org-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.

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

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

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

Параметр Описание Тип данных
perPage Количество элементов на странице. От 1 до 100 включительно. Число
id Идентификатор пользователя (uid), начиная с которого нужно искать. Число
expand Дополнительная информация, которая будет включена в ответ:
  • groups — группы, в которые входят пользователи.
Строка

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

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

Тело ответа содержит JSON-объект с массивом пользователей и информацией о наличии следующих страниц.

{
  "users": [
    {
      "self": "https://api.tracker.yandex.net/v3/users/12********",
      "uid": 12********,
      "login": "username",
      "trackerUid": 12********,
      "passportUid": 12********,
      "cloudUid": "bfbdrb1aa248********",
      "firstName": "Имя",
      "lastName": "Фамилия",
      "display": "Иван Иванов",
      "email": "username@example.com",
      "groups": [
          {
              "self": "https://api.tracker.yandex.net/v3/groups/5",
              "id": "5",
              "display": "Разработчики"
          }
      ],
      "external": false,
      "hasLicense": true,
      "dismissed": false,
      "useNewFilters": true,
      "disableNotifications": false,
      "firstLoginDate": "2019-08-22T14:56:57.981+0000",
      "lastLoginDate": "2022-06-22T17:44:32.981+0000",
      "welcomeMailSent": true,
      "sources": [
            "directory"
        ]
    },
    ...  
  ],
  "hasNext": true
}
Параметры ответа

Общие параметры

Параметр Описание Тип данных
users Массив объектов с информацией о пользователях. Массив объектов
hasNext Признак наличия следующих страниц:
  • true — есть следующие страницы;
  • false — текущая страница последняя.
Логический

Параметры объекта пользователь

Параметр Описание Тип данных
self Адрес ресурса API, который содержит информацию об учетной записи пользователя. Строка
uid Уникальный идентификатор учетной записи пользователя в Трекере. Число
login Логин пользователя. Строка
trackerUid Уникальный идентификатор аккаунта пользователя в Трекере. Число
passportUid Уникальный идентификатор аккаунта пользователя в организации Яндекс 360 для бизнеса и Яндекс ID. Число
cloudUid Уникальный идентификатор пользователя в Yandex Cloud Organization. Строка
firstName Имя пользователя. Строка
lastName Фамилия пользователя. Строка
display Отображаемое имя пользователя. Строка
email Электронная почта пользователя. Строка
groups Группы, в которые входит пользователь. Присутствует в ответе, если в запросе для параметра expand указано значение groups. Массив объектов
external Служебный параметр. Логический
hasLicense Признак наличия у пользователя полного доступа к Трекеру:
  • true — полный доступ;
  • false — только чтение.
Логический
dismissed Статус пользователя в организации:
  • true — пользователь удален из организации;
  • false — действующий сотрудник организации.
Логический
useNewFilters Служебный параметр. Логический
disableNotifications Признак принудительного отключения уведомлений для пользователя:
  • true — уведомления отключены;
  • false — уведомления включены.
Логический
firstLoginDate Дата и время первой авторизации пользователя в формате YYYY-MM-DDThh:mm:ss.sss±hhmm. Строка
lastLoginDate Дата и время последней авторизации пользователя в формате YYYY-MM-DDThh:mm:ss.sss±hhmm. Строка
welcomeMailSent Способ добавления пользователя:
  • true — с помощью приглашения на почту;
  • false — другим способом.
Логический
sources Источник данных (например, корпоративный каталог). Строка
position Должность. Строка

Параметры объектов в массиве groups

Параметр Описание Тип данных
self Адрес ресурса API, который содержит информацию о группе. Строка
id Идентификатор группы. Строка
display Отображаемое имя группы. Строка
401
Пользователь не авторизован. Проверьте, были ли выполнены действия, описанные в разделе Доступ к API.
403
У вас не хватает прав на выполнение этого действия. Наличие прав можно перепроверить в интерфейсе Трекера — для выполнения действия при помощи API и через интерфейс требуются одинаковые права.

Механизм пагинации

Запрос использует относительную пагинацию:

  • Сортировка происходит по возрастанию uid пользователя.
  • Для получения следующей страницы используйте uid последнего пользователя с предыдущей страницы в параметре id.
  • Поле hasNext в ответе показывает, есть ли еще страницы для загрузки.

Пример последовательных запросов

  1. Первый запрос:

    GET /v3/users/_relative?perPage=50
    
  2. Следующий запрос (если hasNext: true):

    GET /v3/users/_relative?perPage=50&id=<uid_последнего_пользователя>