GetEmployees
Примечание
Вызов метода доступен только администраторам организации.
Возвращает список сотрудников организации.
- GET /GetEmployees
- Query Parameters:
boxId – идентификатор ящика организации.
page – номер страницы, начиная с 1. По умолчанию равен 1. Необязательный параметр.
count – максимальное количество элементов, возвращаемых на одной странице в ответе. Не влияет на общее количество найденных сотрудников EmployeeList.TotalCount. Принимает значения от 1 до 50, по умолчанию равен 50. Необязательный параметр.
- Request Headers:
Authorization – данные, необходимые для авторизации.
- Status Codes:
200 OK – операция успешно завершена.
400 Bad Request – данные в запросе имеют неверный формат или отсутствуют обязательные параметры.
401 Unauthorized – в запросе отсутствует HTTP-заголовок
Authorization
или в этом заголовке содержатся некорректные авторизационные данные.402 Payment Required – у указанного ящика закончилась подписка на API.
403 Forbidden – доступ к ящику с предоставленным авторизационным токеном запрещен или запрос сделан не от имени администратора.
404 Not Found – не найден ящик с указанным идентификатором.
405 Method Not Allowed – используется неподходящий HTTP-метод.
500 Internal Server Error – при обработке запроса возникла непредвиденная ошибка.
- Response Body:
Тело ответа содержит список сотрудников организации, представленный структурой EmployeeList.
Список сотрудников возвращается постранично. Для навигации используйте параметр page
.
Сотрудники сортируются по признаку IsRegistered
струкуры UserV2: сначала выводятся сотрудники без учетной записи в системе, а затем по дате создания в прямом порядке.
Примеры использования
Пример HTTP-запроса:
GET /GetEmployee?boxid={{boxId}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Accept: application/json; charset=utf-8
Пример тела ответа:
{
"Employees": [
{
"User": {
"UserId": "6dc8c481-7cec-4675-8fd3-711cbe752eaa",
"Login": "email@example.com",
"FullName": {
"LastName": "Иванов",
"FirstName": "Иван",
"MiddleName": "Иванович"
},
"IsRegistered": true
},
"Permissions": {
"UserDepartmentId": "00000000-0000-0000-0000-000000000000",
"IsAdministrator": false,
"DocumentAccessLevel": "DepartmentAndSubdepartments",
"SelectedDepartmentIds": [],
"Actions": [
{ "Name": "CreateDocuments", "IsAllowed": true },
{ "Name": "DeleteRestoreDocuments", "IsAllowed": true },
{ "Name": "SignDocuments", "IsAllowed": true },
{ "Name": "AddResolutions", "IsAllowed": false },
{ "Name": "RequestResolutions", "IsAllowed": false },
{ "Name": "ManageCounteragents", "IsAllowed": true }
],
"AuthorizationPermission": {
"IsBlocked": false
}
},
"Position": "Бухгалтер",
"CanBeInvitedForChat": false,
"CreationTimestamp": {
"Ticks": 638780603013048865
}
},
{
"User": {
"UserId": "4b5a02e7-1b9a-4d97-8dc7-1c7eed1ccbfc",
"Login": "charentoon@gmail.com",
"FullName": {
"LastName": "Петров",
"FirstName": "Петр",
"MiddleName": "Петрович"
},
"IsRegistered": true
},
"Permissions": {
"UserDepartmentId": "17969b71-a3a1-4484-a4f0-5091931afc3d",
"IsAdministrator": true,
"DocumentAccessLevel": "DepartmentAndSubdepartments",
"SelectedDepartmentIds": [],
"Actions": [
{ "Name": "CreateDocuments", "IsAllowed": true },
{ "Name": "DeleteRestoreDocuments", "IsAllowed": true },
{ "Name": "SignDocuments", "IsAllowed": true },
{ "Name": "AddResolutions", "IsAllowed": true },
{ "Name": "RequestResolutions", "IsAllowed": true },
{ "Name": "ManageCounteragents", "IsAllowed": true }
],
"AuthorizationPermission": {
"IsBlocked": false
}
},
"Position": "Главный бухгалтер",
"CanBeInvitedForChat": true,
"CreationTimestamp": {
"Ticks": 638781280420601889
}
}
],
"TotalCount": 9
}
Пример запроса с использованием C# SDK:
var employees = new List<Employee>();
for (var page = 1;; page++)
{
var employeeList = api.GetEmployees(token, boxId, page, count: 10);
employees.AddRange(employeeList.Employees);
Console.WriteLine("{0}/{1}", employees.Count, employeeList.TotalCount);
if (employeeList.Employees.Count == 0 || employees.Count >= employeeList.TotalCount)
{
break;
}
}
См. также
- Инструкции:
- Методы для работы с сотрудниками:
CreateEmployee — добавляет в организацию сотрудника с указанными реквизитами
DeleteEmployee — удаляет сотрудника организации
GetEmployee — возвращает данные сотрудника организации по указанному идентификатору
GetEmployees — возвращает список сотрудников указанной организации
GetMyEmployee — возвращает данные сотрудника организации, от имени которого вызывается метод
GetSubscriptions — возвращает информацию о подписках сотрудника организации на почтовые уведомления
UpdateEmployee — изменяет данные сотрудника организации
UpdateSubscriptions — изменяет подписки сотрудника организации на почтовые уведомления