Работа с сотрудниками

В одном ящике могут работать одновременно несколько сотрудников. Возможности работы с сотрудниками в API Диадока описаны ниже.

Примечание

Добавление, обновление и удаление сотрудников доступно только администраторам ящика.

Добавление сотрудника

Чтобы добавить сотрудника в ящик, используйте метод CreateEmployee.

Пример HTTP-запроса метода CreateEmployee:

POST /CreateEmployee?boxId={{boxid}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Content-Type: application/json; charset=utf-8

Пример тела запроса метода CreateEmployee:

{
    "Credentials": {
        "Login": {
            "Login": "email@example.com",
            "FullName": {
                "LastName": "Иванов",
                "FirstName": "Иван",
                "MiddleName": "Иванович"
            }
        }
    },
    "Position": "Бухгалтер",
    "CanBeInvitedForChat": false,
    "Permissions": {
        "UserDepartmentId": "00000000-0000-0000-0000-000000000000",
        "IsAdministrator": false,
        "DocumentAccessLevel": "DepartmentAndSubdepartments",
        "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 },
        ]
    }
}

Изменение настроек сотрудника

Обновление данных сотрудника

Получить актуальную информацию о сотруднике можно с помощью метода GetEmployee.

Чтобы обновить данные сотрудника, используйте метод UpdateEmployee. Метод позволяет изменить следующие свойства сотрудника:

  • должность,

  • подразделение,

  • доступ к текущему ящику,

  • перечень подразделений, с которыми можно работать,

  • набор прав,

  • возможность получать сообщения во встроенном чате веб-интерфейса.

Пример HTTP-запроса метода UpdateEmployee:

POST /UpdateEmployee?boxid={{boxid}}&userid={{userid}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Content-Type: application/json; charset=utf-8

Пример тела запроса метода UpdateEmployee:

{
    "Permissions": {
        "DocumentAccessLevel": {
            "DocumentAccessLevel": "SelectedDepartments"
        },
        "SelectedDepartments": {
            "SelectedDepartmentIds": [
                "b651ed54-04d8-4ca8-99b5-960fba733147",
            ]
        },
    },
    "Position": {
        "Position": "Главный бухгалтер"
    }
}

Работа с МЧД сотрудника

Инструкция по работе с доверенностями сотрудника приведена в разделе Работа с МЧД сотрудника. Изменять настройки МЧД сотрудника может сам сотрудник или администратор ящика.

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

Сотрудник может получать уведомления на почту о новых документах, результатах согласования, приглашениях от контрагентов и прочих событиях в Диадоке. Виды событий для подписки перечислены в структуре Subscription. Получить информацию о текущих подписках сотрудника можно с помощью метода GetSubscriptions.

Чтобы изменить подписки сотрудника, используйте метод UpdateSubscriptions. Изменять подписки сотрудника может сам сотрудник или администратор ящика.

Пример HTTP-запроса метода UpdateSubscriptions:

POST /UpdateSubscriptions?boxid={{boxid}}&userid={{userid}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Content-Type: application/json; charset=utf-8

Пример тела запроса метода UpdateSubscriptions:

{
    "Subscriptions": [
        { "Id": "CounteragentInvitationResponses", "IsSubscribed": "false" },
        { "Id": "NewIncomingDocuments", "IsSubscribed": "true" },
        { "Id": "ResolutionResults", "IsSubscribed": "true" }
    ]
}

Удаление сотрудника

Чтобы удалить сотрудника, используйте метод DeleteEmployee.

Пример HTTP-запроса метода DeleteEmployee:

POST /DeleteEmployee?boxid={{boxid}}&userid={{userid}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Content-Type: application/json; charset=utf-8

Получение информации о сотруднике

С помощью следующих методов можно получить информацию:

  • GetEmployee — о конкретном сотруднике организации;

  • GetEmployees — обо всех сотрудниках организации;

  • GetMyEmployee — о текущем сотруднике, от имени которого вызывается метод;

  • GetSubscriptions — о подписках сотрудника на почтовые уведомления.