Получить информацию о пользователях с относительной пагинацией
Запрос позволяет получить информацию об учетных записях пользователей, которые зарегистрированы в организации, с использованием относительной пагинации. В отличие от обычного метода получения пользователей, данный запрос позволяет получить больше 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 | Дополнительная информация, которая будет включена в ответ:
|
Строка |
Формат ответа
В случае успешного выполнения запроса 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 | Признак наличия следующих страниц:
|
Логический |
Параметры объекта пользователь
| Параметр | Описание | Тип данных |
|---|---|---|
| self | Адрес ресурса API, который содержит информацию об учетной записи пользователя. | Строка |
| uid | Уникальный идентификатор учетной записи пользователя в Трекере. | Число |
| login | Логин пользователя. | Строка |
| trackerUid | Уникальный идентификатор аккаунта пользователя в Трекере. | Число |
| passportUid | Уникальный идентификатор аккаунта пользователя в организации Яндекс 360 для бизнеса и Яндекс ID. | Число |
| cloudUid | Уникальный идентификатор пользователя в Yandex Cloud Organization. | Строка |
| firstName | Имя пользователя. | Строка |
| lastName | Фамилия пользователя. | Строка |
| display | Отображаемое имя пользователя. | Строка |
| Электронная почта пользователя. | Строка | |
| groups | Группы, в которые входит пользователь. Присутствует в ответе, если в запросе для параметра expand указано значение groups. |
Массив объектов |
| external | Служебный параметр. | Логический |
| hasLicense | Признак наличия у пользователя полного доступа к Трекеру:
|
Логический |
| dismissed | Статус пользователя в организации:
|
Логический |
| useNewFilters | Служебный параметр. | Логический |
| disableNotifications | Признак принудительного отключения уведомлений для пользователя:
|
Логический |
| firstLoginDate | Дата и время первой авторизации пользователя в формате YYYY-MM-DDThh:mm:ss.sss±hhmm. |
Строка |
| lastLoginDate | Дата и время последней авторизации пользователя в формате YYYY-MM-DDThh:mm:ss.sss±hhmm. |
Строка |
| welcomeMailSent | Способ добавления пользователя:
|
Логический |
| sources | Источник данных (например, корпоративный каталог). | Строка |
| position | Должность. | Строка |
Параметры объектов в массиве groups
| Параметр | Описание | Тип данных |
|---|---|---|
| self | Адрес ресурса API, который содержит информацию о группе. | Строка |
| id | Идентификатор группы. | Строка |
| display | Отображаемое имя группы. | Строка |
- 401
- Пользователь не авторизован. Проверьте, были ли выполнены действия, описанные в разделе Доступ к API.
- 403
- У вас не хватает прав на выполнение этого действия. Наличие прав можно перепроверить в интерфейсе Трекера — для выполнения действия при помощи API и через интерфейс требуются одинаковые права.
Механизм пагинации
Запрос использует относительную пагинацию:
- Сортировка происходит по возрастанию uid пользователя.
- Для получения следующей страницы используйте uid последнего пользователя с предыдущей страницы в параметре
id. - Поле
hasNextв ответе показывает, есть ли еще страницы для загрузки.
Пример последовательных запросов
-
Первый запрос:
GET /v3/users/_relative?perPage=50 -
Следующий запрос (если
hasNext: true):GET /v3/users/_relative?perPage=50&id=<uid_последнего_пользователя>