Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Excerpt
Info
titleО чём раздел

Под управлением персоналом подразумевается:

  1. Добавление новых Сотрудников
  2. Обновление данных Сотрудника
    1. Изменение данных Физлица
    2. Кадровый перевод Сотрудника (из юрлица в юрлицо)
    3. Изменение должности/отдела Сотрудника
    4. Управление ролью Руководитель
  3. Увольнение и Восстановление Сотрудника
  4. Управление электронными подписями Сотрудника
  5. Получение списка Сотрудников
    1. Общий список
    2. Список по фильтрам
    3. Список в виде XLS файла

Table of Contents


Основные сценарии управления персоналом

Примечание

Info

Пользователем системы HRlink является Физическое Лицо, которое выступает в качестве Сотрудника Компании, в рамках КЭДО.

Более подробно об объектах Физлицо и Пользователь можно ознакомиться в разделе → [03. Объекты и связи]

Функционал для пользователя определяется:

  • ролью (Администратор, Кадровик, Сотрудник, Руководитель)

  • доступными видами ЭП (УКЭП, УНЭП, ПЭП Госуслуги)

  • Данными Сотрудника

    • ЮЛ, в котором оформлено ФЛ

    • Отдел, к которому относится Сотрудник

    • Должность, которую занимает Сотрудник

Управление справочниками описано в разделе →  [01. Кадровик. Вспомогательные процессы: Управление структурой и Справочниками]



Кадровик создаёт учётные записи пользователей и приглашает к подтверждению

Tip
titleЦель сценария


В ЛК HRL приглашены Пользователи Клиента, которые смогут воспользоваться КЭДО после подтверждения учётной записи.


Note
titleПредусловие

Администратор выгрузил справочник юрлиц → [01. Администратор. Базовые настройки справочников]

1

API-методы

Примечания

1
Yellow

Green
title

Gdoc

redoc

 POST /api/v1/clients/:clientId/users 

или использовать пакетный метод, для выгрузки отделов

1.1) Создать новую задачу массовой синхронизации данных   

Status
subtletrue
colourGreen
titleredoc

 POST /api/v1/clients/:clientId/bulkDataSyncTasks 

1.2) Получить статус задачи массовой синхронизации данных по идентификатору задачи 

Status
subtletrue
colourGreen
titleredoc

 GET /api/v1/clients/:clientId/bulkDataSyncTasks/:taskId 


Детализация пакетного метода - [4. (МС) Справочник пользователей и сотрудников]

В HRlin Пользователь представлен двумя объектами:

  1. Физическое Лицо

    1. Обладает учётной записью

    2. Обладает каналами коммуникации

  2. Сотрудник

    1. Привязан к Юрлицу (обязательно)

    2. Привязан к Отделу

    3. Привязан к Должности

Такая модель позволяет для одного Физического Лица задавать несколько Сотрудников. См схему логических связей

В ответ на создание будет возвращен идентификатор  clientUserId , который необходим для приглашения.


Note

Если справочник Сотрудников имеет большое количество сотрудников, то его создание и обновление может быть осуществлено с помощью метода пакетной выгрузки.

(warning) постановка задачи предполагает как создание только физлиц, так и создание физлица сразу с перечнем сотрудников.


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

2
Yellow

Green
title

Gdoc

redoc

 POST /api/v1/clients/:clientId/employees 

Note

Если использован пакетный метод, то данный шаг можно пропустить.

При создании Сотрудника можно указать Идентификатор Сотрудника в ИС Клиента, через поле externalId, это позволит в дальнейшем использовать внутренний (с точки зрения Клиента) идентификатор для работы с Сотрудниками

При создании Сотрудника можно сразу указать роль - Кадровика или роль Руководителя, указав соответствующий идентификатор роли в параметрах. По умолчанию Сотрудник создается без ролей.

3
Yellow

Green
title

GdocПолучение данных физлица по номеру СНИЛС

redoc

 GET /api/v1/clients/:clientId/employees 

или

или

  • Status
    subtletrue
    colour

Yellow
  • Green
    title

Gdoc
  • redoc

 GET

 POST /api/v1/clients/:clientId/

users/:snils/snils или

employees/getRegistry 

Для получения данных по одному сотруднику можно использовать один из следующих вариантов:

сотрудника по ID своей ИС
Yellow
  • Green
    title

Gdoc
  • redoc

 GET

 GET /api/v1/clients/:clientId/

employees/:

users/:snils/snils 

или

 GET /api/v1/clients/:clientId/employees/:externalId/externalId 

или

Yellow
  • Green
    title

Gdoc
  • redoc

 GET /api/v1/clients/:clientId/employees/:

employeeId 

employeeId 


Получение данных необходимо, т.к. последующий запрос с приглашением выполняется только с использованием идентификаторов HRlink

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


(warning) данные по физлицу будут возвращать в том числе данные по всем сотрудникам физлица.

4

4) Кадровик приглашает группу сотрудников

Status
subtletrue
colourGreen
titleredoc

 POST /api/v1/clients/:clientId/users/

invite

или

invite 

 POST /api/v1/clients/:clientId/users/

:clientUserId

invitations/

invite

validate 

После того как ФЛ создано и ему добавлены и настроены записи Сотрудников, чтобы Работник мог воспользоваться ЛК, ему требуется направить приглашение. В группе может быть 1 и более сотрудник.

При отправке приглашения система проверяет - роли Пользователя и наличие доступных лицензий в соответствии с ролью пользователя.

Работник получив приглашение подтвердит свою учётную запись и только после этого сможет использовать ЛК в рамках Кадрового Электронного Документооборота

Пример метода можно также посмотреть - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#3.-%D0%9F%D1%80%D0%B8%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5-%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9-%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5-%D0%B2-HRlink

Note

При приглашении можно задать какие электронные подписи должны быть доступны Сотруднику. Это позволит будет пропустить сценарии с выпуском электронной подписи.

5
5

 

Пользовательский Сценарий

Действия и API-методы

Примечания

1. 

Цель

3) Получение полного списка справочника сотрудников

GET

/api/v1/clients/:clientId

/employees

или

GET

/

api/v1/clients/:clientId/

users/

:snils/snils

invite 

Note

В случае, если Сотрудник пропустил уведомление о необходимости подтверждения учётной записи - можно направить повторное приглашение.


Кадровик обновляет данные ФЛ (канал уведомления) и отправляет приглашение на новый канал

Tip
titleЦель сценария


Обеспечить отправку приглашения Сотруднику на другой канал уведомления.



Действия и API-методы

Примечания

1

или

GET

/api/v1/clients/:clientId/

employees/:externalId/externalId

или

GET

users/:clientUserId/invite/deactivate 


2

2) Обновление физлица по ID своей ИС

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v1/clients/:clientId/users/:externalId/externalId 

или

 PUT /api/v1/clients/:clientId/

employees

users/:

employeeId

Получение данных необходимо, т.к. последующий запрос с приглашением выполняется только с использованием идентификаторов HRlink

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

4) Кадровик приглашает группу сотрудников

POST /api/v1/clients/:clientId/users/invite

или

clientUserId 


3

POST /api/v1/clients/:clientId/users/

:clientUserId/invite

После того как ФЛ создано и ему добавлены и настроены записи Сотрудников, чтобы Работник мог воспользоваться ЛК, ему требуется направить приглашение. В группе может быть 1 и более сотрудник.

При отправке приглашения система проверяет - роли Пользователя и наличие доступных лицензий в соответствии с ролью пользователя.

Работник получив приглашение подтвердит свою учётную запись и только после этого сможет использовать ЛК в рамках Кадрового Электронного Документооборота

Пример метода можно также посмотреть - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#3.-%D0%9F%D1%80%D0%B8%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5-%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9-%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5-%D0%B2-HRlink

2. Кадровик обновляет данные ФЛ (канал уведомления) и отправляет приглашение на новый канал

Цель - отправка приглашения Сотруднику на другой канал уведомления.

1) Кадровик отменяет неподтверждённое приглашение

PUT

invite 




Кадровик управляет ролью Руководитель

Tip
titleЦель сценария


Кадровик назначает роль Руководитель сотрудникам, чтобы они в последствии могли подписывать документы от имени компании


Note
titleПредусловие

Для управления ролями, в ИС Клиента должны быть идентификаторы ролей

 GET /api/v1/employeeRoles 

Управление ролями возможно через несколько способов, но в случае если используются методы обновления или методы назначения/снятия, то необходимы идентификаторы Сотрудников.

(warning) для методов добавления/снятия используются только идентификаторы Сотрудников в HRlink

 Вариант 1. Кадровик создает сотрудника с ролью Руководитель


Действия и API-методы

Примечания

1
users/:clientUserId/invite/deactivate

На момент составления описания данные методы не оформлены в API-документации see-no-evil monkey

2) Обновление физлица по ID своей ИС

PUT /api/v1/clients/:clientId/users/:externalId/externalId

или

PUT

/api/v1/clients/:clientId/

users/:clientUserId

3) Кадровик приглашает группу сотрудников

POST /api/v1

employees 



 Вариант 2. Кадровик при обновлении сотрудника назначает роль Руководитель


Действия и API-методы

Примечания

1

1) Кадровик обновляет сотрудника по ID своей ИС

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v3/clients/:clientId/

users

employeesByExternalId/

invite

:employeeExternalId 

или

приглашает конкретного сотрудника

 PUT

POST

/api/

v1

v3/clients/:clientId/

users

employees/:

clientUserId/invite

Пример метода можно посмотреть - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#3.-%D0%9F%D1%80%D0%B8%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5-%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9-%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5-%D0%B2-HRlink

3. Кадровик отправляет повторное приглашение

Цель - повторно пригласить сотрудника (повторно уведомить)

employeeId 



 Вариант 3. Кадровик добавляет/убирает роль Руководитель для Сотрудника


Действия и API-методы

Примечания

1

1) Добавление роли

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v1/clients/:clientId/employees/:employeeId/roles/add 

или

 PUT

1) Кадровик приглашает группу сотрудников

POST /api/v1/clients/:clientId/users/invite

или

POST

/api/v1/clients/:clientId/

users

employees/:

clientUserId

employeeId/roles/

inviteПример метода можно посмотреть - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#3.-%D0%9F%D1%80%D0%B8%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5-%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9-%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5-%D0%B2-

remove 

методы добавления/удаления роли действуют только по идентификатору Сотрудника в HRlink



Сценарии работы Кадровика с

ролями Пользователей

уже сформированными данными Сотрудников

Кадровик получает данные Сотрудников

Tip
titleЦель сценария


Кадровая система HRlink обогащает данными ИС Клиента:

  • готовность учётной записи сотрудника
  • наличие и состояние ЭП у сотрудника

Также при изменении данных в ИС Клиента, необходимо корректно эти изменения передавать в HRlink:

  • обновление данных ФЛ
  • обновление данных сотрудника
  • кадровый перевод (из одного юрлица в другое)
  • увольнение сотрудника


Note
titleПредусловие

Выполнена первичная передача данных по Сотрудникам из ИС Клиента в HRlink

Определение состояния Учётной записи и наличия ЭП


Действия и API-методы

Примечания

1

Цель сценариев - Кадровик назначает роль Руководитель сотрудникам, чтобы они в последствии могли подписывать документы от имени компании

Пользовательский Сценарий

Действия и API-методы

Примечания

0. Подготовительный этап

Цель - иметь возможность назначать роль по идентификатору

1) Кадровик получает список ролей сотрудников

GET /api/v1/employeeRoles

данные могут использоваться в сценариях создания с ролью, обновления с указанием роли и добавления роли

2) Получение полного списка справочника сотрудников

GET /

api/v1/clients/:clientId/employees

данные могут использоваться для сценария добавления/удаления роли Руководителя

1. Кадровик создает сотрудника с ролью Руководитель

/getRegistry 

или

 GET

1) Кадровик при создание Сотрудника на основании Физ.лица задает роль Руководитель

POST

/api/v1/clients/:clientId/

employees

пояснения к запросу смотри - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#1.-%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%A1%D0%BE%D1%82%D1%80%D1%83%D0%B4%D0%BD%D0%B8%D0%BA%D0%B0-%D1%81-%D1%80%D0%BE%D0%BB%D1%8C%D1%8E

users/:snils/snils 

или

 GET /api/v1/clients/:

2. Кадровый при обновлении сотрудника назначает роль Руководитель

1) Кадровик обновляет сотрудника по ID своей ИС

PUT /api/v1/clients/:

clientId/employees/:externalId/

externalId

externalId 

или

Кадровик обновляет
  • Status
    subtletrue
    colourGreen
    titleredoc

 GET

PUT

/api/v1/clients/:clientId/employees/:employeeId

3. Кадровик добавляет/убирает роль Руководитель для Сотрудника

 


Expand
titleПонять состояние учётной записи

На примере метода (фильтрационные параметры можно посмотреть в документации)

 POST

1) Добавление роли

PUT

/api/v1/clients/:clientId/employees/

:employeeId/roles/add

или

  • Удаление роли

PUT /api/v1/clients/:clientId/employees/:employeeId/roles/remove

На момент подготовки описания метод - не описан в АПИ-доке see-no-evil monkey

методы добавления/удаления роли действуют только по идентификатору Сотрудника в HRlink

Сценарии работы Кадровика с уже сформированными данными реестра Сотрудников

getRegistry 

Тело Ответа

Markdown
```
{
    "result": true,
    "employees": [
		{
            "lastName": "Фамилия",
            "firstName": "Имя",
            "patronymic": "Отчество",
            "gender": "MALE",
            "birthdate": "1966-01-01",
            "personalDocuments": [...],
            "notificationChannels": [
                {
                    "id": "5989b950-382b-4492-a7fd-2284ad0923e6",
                    "login": "some@mail.ru",
                    "type": "EMAIL",
                    "confirmed": false,
                    "priority": 0,
                    "enabled": false,
                    "invited": true,
                    "version": 1
                }
            ],
            "certificates": [],
            "lastNqesIssueRequest": null,
            "invitation": {
                "type": "EMAIL",
                "invitationCreatedDate": "2022-10-18T09:23:12.087136Z"
            },
            "prrSigningEnabled": false,
            "govKeySigningEnabled": false,
            "qesSigningEnabled": false,
            "vtbSigningEnabled": false,
            "disabledDate": null,
            "lastNqesChannelChangeRequest": null,
            "id": "e67ae253-8000-4bd6-97ee-fe35005d897d",
            "externalId": "66b457c9-7c02-11e2-9362-001b11b25590",
            "clientUser": {...},
            "dismissedDate": null,
            "scheduledDismissDate": null,
            "legalEntity": {...},
            "department": {...},
            "position": {...},
            "roles": [...],
            "tags": [],
            "permittedOperations": [...],
            "headManager": false,
            "availableVacationDayCount": null,
            "number": null,
            "version": 2
		},
		...
}
```

(warning)  данные возвращаются по сотрудникам, если у ФЛ несколько Сотрудников, то будет несколько объектов в списке.

  • employees[].invitation - если пусто, то значит, что пользователю ещё не направлялось приглашение
    • employees[].invitation.type - куда отправлялось приглашение
    • employees[].invitation.invitationCreatedDate - когда отправлялось приглашение
  • disabledDate - если пользователь заблокирован, то будет дата, иначе - null

  • dismissedDate - дата увольнения, если Сотрудник уже уволен, то будет дата, иначе - null

  • scheduledDismissDate - дата запланированного увольнения, если запланировано увольнение, то будет дата, иначе - null

  • employees[].notificationChannels - список каналов уведомления, если список пустой, значит пользователю не были заданы каналы уведомления
    • (warning) подтверждённые каналы уведомления также являются логинами для входа, но активным может быть только один канал уведомления
    • employees[].notificationChannels[].type - тип канала уведомления
    • employees[].notificationChannels[].confirmed - канал подтверждён (true) или нет (false)

    • employees[].notificationChannels[].invited - было ли отправлено на данный канал уведомления приглашение - да (true) или нет (false)

Expand
titleПонять состояние электронной подписи

На примере метода (фильтрационные параметры можно посмотреть в документации )

 POST /api/v1/clients/:clientId/employees/getRegistry 

Тело Ответа

Markdown
```
{
    "result": true,
    "employees": [
		{
            "lastName": "Фамилия",
            "firstName": "Имя",
            "patronymic": "Отчество",
            "gender": "MALE",
            "birthdate": "1966-01-01",
            "personalDocuments": [...],
            "notificationChannels": [...],
            "certificates": [
			    {
                    "lastName": "Фамилия",
                    "firstName": "Имя",
                    "patronymic": "Отчество",
                    "type": "NQES",
                    "fingerprint": "3c46f97819a8ff7e0f0cf9e0f44ad7d67f130ec5",
                    "companyName": "Баранов Лев Леонидович",
                    "expiresDate": "2023-12-12T10:24:36.000000Z",
                    "personIdentificationType": "IN_PERSON",
                    "id": "06e121a5-5c6f-4e80-b89a-0515ccd5c62e",
                    "validAfterDate": "2022-12-12T10:24:43.000000Z",
                    "confirmationChannelType": "SMS",
                    "confirmationChannel": "+79223230530"
                }
			],
            "lastNqesIssueRequest": {
			    "nqesIssueTaskId": "8b174531-00c5-4e34-971c-a5a0d4e7c70f",
                "fingerprint": null,
                "state": "APPLICATION_CREATED",
                "createdDate": "2021-11-12T09:30:57.945733Z",
                "applicationCreationStartedDate": "2021-11-12T09:30:58.359633Z",
                "applicationCreatedDate": "2021-11-12T09:31:02.128140Z",
                "userNotifiedAboutIssueRequestDate": null,
                "issuingConfirmedDate": null,
                "issuingRejectedDate": null,
                "printFormCreationStartedDate": null,
                "printFormCreatedDate": null,
                "nqesIssueRequestCreatedDate": null,
                "nqesIssueRequestFailedDate": null,
                "nqesIssuedDate": null,
                "userNotifiedAboutCertificateDate": null,
                "certificateAcceptedDate": null,
                "certificateDeclinedDate": null,
                "finishedDate": null,
                "canceledDate": null,
                "personIdentificationType": "IN_PERSON",
                "nqesConfirmationChannel": {
                    "type": "SMS",
                    "value": "+79217823607"
                },
            "invitation": {...},
            "prrSigningEnabled": false,
            "govKeySigningEnabled": false,
            "qesSigningEnabled": false,
            "vtbSigningEnabled": false,
            "disabledDate": null,
            "lastNqesChannelChangeRequest": null,
            "id": "e67ae253-8000-4bd6-97ee-fe35005d897d",
            "externalId": "66b457c9-7c02-11e2-9362-001b11b25590",
            "clientUser": {...},
            "dismissedDate": null,
            "scheduledDismissDate": null,
            "legalEntity": {...},
            "department": {...},
            "position": {...},
            "roles": [...],
            "tags": [],
            "permittedOperations": [...],
            "headManager": false,
            "availableVacationDayCount": null,
            "number": null,
            "version": 2
		},
		...
}
```

(warning)  данные возвращаются по сотрудникам, если у ФЛ несколько Сотрудников, то будет несколько объектов в списке.

  • employees[].prrSigningEnabled - право подписания через Портал Работа в России
  • employees[].govKeySigningEnabled - право подписания через МП Госключ
  • employees[].qesSigningEnabled - право подписания УКЭП
  • employees[].lastNqesIssueRequest - последний запрос на выпуск УНЭП, если запрос не создавался, то будет null
    • employees[].lastNqesIssueRequest.state - состояние запроса на выпуск УНЭП

      • CREATED - Задача процесса выпуска НЭП через ПЭП создана.
      • APPLICATION_CREATION_PENDING -Запущен процесс изготовления файла заявления выпуска НЭП.
      • APPLICATION_CREATED-  Файл заявления выпуска НЭП изготовлен.
      • USER_NOTIFIED_ABOUT_ISSUE_REQUEST - Пользователь уведомлён о том, что ему хотят выпустить НЭП.
      • ISSUING_CONFIRMED - Пользователь подтвердил выпуск НЭП.
      • ISSUING_REJECTED - Пользователь отклонил выпуск НЭП. (Терминальное состояние)
      • PERSON_IDENTIFICATION_CREATED - Создана задача удаленной идентификации человека.
      • PERSON_IDENTIFICATION_FAILED - Задача удаленной идентификации человека завершилась с ошибкой. (Терминальное состояние)
      • PERSON_IDENTIFIED- Задача удаленной идентификации человека завершилась успешно.
      • PRINT_FORM_CREATION_PENDING- Запущен процесс изготовления печатной формы заявления с оттиском ПЭП.
      • PRINT_FORM_CREATED - Печатная форма заявления с оттиском ПЭП изготовлена.
      • NQES_ISSUE_REQUEST_CREATED - Заявка на выпуск НЭП создана.
      • NQES_ISSUE_REQUEST_FAILED Заявка на выпуск НЭП завершилась с ошибкой. (Терминальное состояние)
      • NQES_ISSUED - НЭП выпущен.
      • USER_NOTIFIED_ABOUT_CERTIFICATE - Пользователь уведомлён о том, что НЭП выпущен.
      • CERTIFICATE_ACCEPTED - Пользователь подтвердил данные в выпущенном сертификате.
      • CERTIFICATE_DECLINED - Пользователь отклонил данные в выпущенном сертификате. (Терминальное состояние)
      • FINISHED - Процесс выпуска НЭП через ПЭП завершён. (Терминальное состояние)
      • CANCELED - Процесс выпуска НЭП через ПЭП отменён. (Терминальное состояние)
    • employees[].lastNqesIssueRequest.createdDate - дата когда был создан запрос на выпуск УНЭП

    • employees[].lastNqesIssueRequest.applicationCreatedDate - дата формирования заявки на выпуск УНЭП

    • employees[].lastNqesIssueRequest.userNotifiedAboutIssueRequestDate - дата отправки сотруднику уведомления о необходимости подтверждения заявки на УНЭП

    • employees[].lastNqesIssueRequest.issuingConfirmedDate - дата подтверждения заявки сотрудником

      • employees[].lastNqesIssueRequest.issuingRejectedDate - дата отклонения заявки сотрудником
    • employees[].lastNqesIssueRequest.userNotifiedAboutCertificateDate - дата отправки сотруднику уведомления о необходимости подтверждения Сертификата УНЭП (сертификат формирует УЦ)

    • employees[].lastNqesIssueRequest.certificateAcceptedDate - дата подтверждения Сертификата сотрудником

      • employees[].lastNqesIssueRequest.certificateDeclinedDate - дата отклонения Сертификата сотрудником
    • employees[].lastNqesIssueRequest.finishedDate - дата завершения процесса выпуска УНЭП

  • employees[].certificates - список сертификатов УНЭП, если список пустой, то у Пользователя нет сертификатов УНЭП

    • employees[].certificates[].type - тип сертификата

    • employees[].certificates[].personIdentificationType - способ идентификации

    • employees[].certificates[].validAfterDate - дата начала действия сертификата
    • employees[].certificates[].expiresDate - дата завершения срока действия сертификата

Обновление данных Физлица

Note
titleПредусловие

Выполнена первичная передача данных по Сотрудникам из ИС Клиента в HRlink


Действия и API-методы

Примечания

1

1) Обновление физлица по ID своей ИС

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v1/clients/:clientId/users/:externalId/externalId 

или

 PUT /api/v1/clients/:clientId/users/:clientUserId 

Данный шаг сценария позволяет вносить изменения в данные ФЛ:

  • паспорт

  • снилс

  • инн

  • фио

2

2) Установка канала уведомления сотрудника как активного

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v1/clients/:clientId/users/:clientUserId/notificationChannels/:channelId/activate 

или

 DELETE /api/v1/clients/:clientId/users/:clientUserId/notificationChannels/:channelId 

Данный шаг сценария позволяет вносить изменения в данные по каналам уведомления.

Все подтверждённые каналы уведомления также являются логинами для авторизации.

Уведомления отправляются только на активный канал уведомления, активным может быть только один канал.


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

Note
titleПредусловие

Выполнена первичная передача данных по Сотрудникам из ИС Клиента в HRlink


Действия и API-методы

Примечания

1

1) Кадровик обновляет данные сотрудника по ID своей ИС

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v4/clients/{clientId}/employeesByExternalId/{employeeExternalId} 

или

 PUT /api/v3/clients/:clientId/employees/:employeeId 

Обновление сотрудника позволяет актуализировать такие данных как:

(warning)  уволить сотрудника через метод обновления - нельзя.


Увольнение Сотрудника

Note
titleПредусловие

Выполнена первичная передача данных по Сотрудникам из ИС Клиента в HRlink


Действия и API-методы

Примечания

1

1) Увольнение сотрудника по ID своей ИС

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v1/clients/:clientId/employees/:externalId/externalId/dismiss 

или

 PUT /api/v1/clients/:clientId/employees/:employeeId/dismiss 

Метод увольнения позволяет передать и будущую дату увольнения.
2

2) Удаление роли

Status
subtletrue
colourGreen
titleredoc

 PUT /api/v1/clients/:clientId/employees/:employeeId/roles/remove 

Увольнение сотрудника с ролью Кадровик не приводит к снятию роли Кадровик, поэтому рекомендуется удалять роль у Сотрудников, которые имеют роль Кадровик.

Expand
titleПояснения к методу удаления роли

 PUT /api/v1/clients/:clientId/employees/:employeeId/roles/remove 

Тело запроса

Markdown
```
{
    "roleId": "fcaa233d-93c9-4545-a5b6-4ccd78b1a9b0"
}
```

Ответ

Markdown
```
{
    "result": true
}
```
3

3) Кадровик получает реестр документов

Status
subtletrue
colourYellow
titleGdoc

POST /api/v1/clients/:clientId/documents/hrRegistry

4) Кадровик обновляет черновик документов для исключения увольняемого Сотрудника

Status
subtletrue
colourYellow
titleGdoc

PUT /api/v1/clients/:clientId/documentGroups

или

 DELETE /api/v1/clients/:clientId/documents/:documentId 

 данный набор шагов не является обязательным, но позволяет:

  1. удалить уволенного сотрудника из черновика документа
  2. удалить (через отметку об удалении) все документы, которые "зависли" на уволенном сотруднике


Восстановление уволенного Сотрудника

Note
titleПредусловие
  1. Сотрудник уволен и у пользователя заблокирована учётная запись

Действия и API-методы

Примечания

1

1) Кадровик восстанавливает сотрудника

Status
subtletrue
colourRed
titleaddon

 PUT /api/v1/clients/:clientId/employees/:employeeId/restore 

или

Кадровик восстанавливает сотрудника по идентификатору ИС Клиента  

Status
subtletrue
colourRed
titleaddon

PUT /api/v1/clients/:clientId/employeesByExternalId/:employeeExternalId/restore 

Expand
titleПояснения к методу Восстановления сотрудника

 PUT /api/v1/clients/:clientId/employees/:employeeId/roles/remove 

Тело запроса

Markdown
```
{
    "version": 1 // необзательный параметр
}
```

Валидации:

  • Валидация восстановления сотрудника по ID HR-Link
    1. ID сотрудника соответствует формату UUID. (13.005)
    2. Сотрудник с заданным ID существует (13.457)
    3. ID клиента соответствует формату UUID (13.005)
    4. Клиент существует по заданному ID (13.005)
    5. Заданный пользователь относится к заданному клиенту (13.101)
    6. Сотрудник с заданным ID уволен (заполненое поле dissmised_date), либо существует активная задача на отложенного увольнения (13.466)
    7. Сотрудник относится к заданному клиенту (13.453)
    8. У пользователя клиента есть право (на уровне сотрудника или пользователя клиента EMPLOYEES_RESTORE) на восстановление сотрудника на уровне пользователя клиента или на уровне сотрудника клиента в юр.лице восстанавливаемого сотрудника (10.000)
    9. Наличие у пользователя клиента прав на действия с сотрудником на уровне отдела сотрудника (13.750)
    10. Тело запроса задано (10.006)
    11. Если тело запроса с версией пришло, то указана корректная версия сотрудника (13.452)
  • Валидации восстановление сотрудника по внешнему ID
    1. ID клиента соответствует формату UUID (13.005)
    2. Сотрудник с заданным внешним ID существует у клиента (13.454, 13.451)
    3. Клиент существует по заданному ID (13.005)
    4. Заданный пользователь относится к заданному клиенту (13.101)
    5. Сотрудник с заданным ID уволен (заполненое поле dissmised_date), либо существует активная задача на отложенного увольнения (13.466)
    6. Сотрудник относится к заданному клиенту (13.453)
    7. У пользователя клиента есть право (на уровне сотрудника или пользователя клиента EMPLOYEES_RESTORE) на восстановление сотрудника на уровне пользователя клиента или на уровне сотрудника клиента в юр.лице восстанавливаемого сотрудника (10.000)
    8. Наличие у пользователя клиента прав на действия с сотрудником на уровне отдела сотрудника (13.750)
    9. Тело запроса задано (10.006)
    10. Если тело запроса с версией пришло, то указана корректная версия сотрудника (13.452)

Ответ

Markdown
```
{
  "result": "bool",
  "employee": {...}
}
```

Перевод Сотрудника

Note
titleПредусловие

Выполнена первичная передача данных по Сотрудникам из ИС Клиента в HRlink


Действия и API-методы

Примечания

1

1) Увольнение сотрудника

см. [Увольнение Сотрудника]
2

2) Создание Сотрудника на основании Физлица

Status
subtletrue
colourYellow
titleGdoc

 POST /api/v1/clients/:clientId/employees 



Сценарии работы Кадровика с Электронными подписями

Выпуск УНЭП

Tip
titleЦель сценария


Обеспечить сотрудника Электронной Подписью, соответствующей процессам Клиента, для выполнения КЭДО



Действия и API-методы

Примечания

1

1) Кадровик создает заявку на выпуск УНЭП

Status
subtletrue
colourYellow
titleGdoc

 POST api/v1/clients/:clientId/users/issue/nqes 

Как понять состояние выпуска УНЭП см. [Определение состояния Учётной записи и наличия ЭП]

2

2) Смена канала подписания УНЭП

Status
subtletrue
colourRed
titleaddon

 POST api/v1/clients/:clientId/users/:clientUserId/nqesChannelChangeRequests 

В случае, если у пользователя с действующим УНЭП требуется сменить канал подписания (куда будет приходить код подписания) - вызывается данный метод. Но только если УНЭП уже выпущен.

Expand
titleПояснения к методу смены канала подписания

 PUT /api/v1/clients/:clientId/employees/:employeeId/roles/remove 

Тело запроса

Markdown
```
{
    "value": "...."
}
```

Ответ

Markdown
```
{
    "result":true,
    "request":{
		"id":"8f2afc36-82ff-43fa-924b-6eff5bf05568"
	}
}
```


Использование иных видов ЭП

Tip
titleЦель сценария


Обеспечить сотрудника Электронной Подписью, соответствующей процессам Клиента, для выполнения КЭДО


Note
titleПредусловие

Для использования ПРР, Служба Внедрения должна включить применение ПЭП Госуслуги для ЮЛ Клиента, на основании запроса


Действия и API-методы

Примечания

1

2) Кадровик разрешает применение ПЭП Госуслуги для Пользователя

Status
subtletrue
colourRed
titleaddon

 PUT api/v1/clients/:clientId/employees/:employeeId/signings/prr/enable 

Запрет ПЭП Госуслуги

Status
subtletrue
colourRed
titleaddon

 PUT api/v1/clients/:clientId/employees/:employeeId/signings/prr/disable 

метод действует только по идентификатору Сотрудника в HRlink

Метод работает по идентификатору Сотрудника, но меняет состояние Пользователя.

  • Т.е. если, к примеру, у Пользователя есть три сотрудника, то при включении права подписи одному из Сотрудников, включает право подписи для всех Сотрудников.

Сотруднику получившему разрешение на применение ПЭП Госуслуги при первом подписании будет необходимо авторизоваться через ЕСИА

2

3) Кадровик разрешает применение УНЭП Госключ для Пользователя

Status
subtletrue
colourRed
titleaddon

 PUT /api/v1/clients/:clientId/employees/:employeeId/signings/govkey/enable 




Поиск документации

Livesearch
spaceKeyWIKI
sizelarge

Пользовательский Сценарий

Действия и API-методы

Примечания

1. Кадровик получает данные Сотрудников

Цель сценариев - получить данные по пользователям (список сотрудников, их данные и их состояния), по которым организован КЭДО в HRL.

1) Получение полного списка справочника сотрудников

GET /api/v1/clients/:clientId/employees

Кадровик получит список тех сотрудников (или данные того сотрудника), кто привязан к отделам, видимым для данного Кадрового работника.

См. схему логических связей

Подробное описание ответа см. в разделе https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#2.1.-%D0%9F%D0%BE%D0%BD%D1%8F%D1%82%D1%8C-%D1%81%D0%BE%D1%81%D1%82%D0%BE%D1%8F%D0%BD%D0%B8%D0%B5-%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F-%D0%BD%D0%B0-%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8-%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%D0%B0-%D0%BF%D1%80%D0%B8%D0%B7%D0%BD%D0%B0%D0%BA%D0%BE%D0%B2

2) Получение данных физлица по номеру СНИЛС

GET /api/v1/clients/:clientId/users/:snils/snils

3) Получение данных сотрудника по ID своей ИС

GET /api/v1/clients/:clientId/employees/:externalId/externalId

или

GET /api/v1/clients/:clientId/employees/:employeeId

2. Кадровик обновляет данные Физлица

Цель - обновление таких данных как:

  • ФИО

  • Паспортные данные и данные документов (СНИЛС, ИНН)

  • Данные для Уведомления и Авторизации, в т.ч. удаление канала уведомления

1) Обновление физлица по ID своей системы

PUT /api/v1/clients/:clientId/users/:externalId/externalId

или

PUT /api/v1/clients/:clientId/users/:clientUserId

Данный шаг сценария позволяет вносить изменения в данные ФЛ:

  • паспорт

  • снилс

  • инн

  • фио

2) Установка канала уведомления сотрудника как активного

PUT /api/v1/clients/:clientId/users/:clientUserId/notificationChannels/:channelId/activate

или

DELETE /api/v1/clients/:clientId/users/:clientUserId/notificationChannels/:channelId

Данный шаг сценария позволяет вносить изменения в данные по каналам уведомления

3. Кадровик обновляет данные Сотрудника

Цель - обновление таких данных как:

  • Отдел

  • ЮЛ

  • Должность

  • Роль - Сотрудник или Руководитель

1) Кадровик обновляет данные сотрудника по ID своей ИС

PUT /api/v1/clients/:clientId/employees/:externalId/externalId

или

PUT /api/v1/clients/:clientId/employees/:employeeId

4. Кадровик присваивает почту/телефон от одного Сотрудника - другому сотруднику для приглашения

Цель - в случае использования корпоративных телефонов, почтовых адресов, которые могут передаваться от одного сотрудника к другому

1) Удаление канала уведомления Пользователя

DELETE /api/v1/clients/:clientId/users/:clientUserId/notificationChannels/:channelId

Удаление подтверждённого канала уведомление приведёт к освобождению занимаемого логина, что позволит использовать его для другого работника.

2) Обновление физлица по ID своей ИС

PUT /api/v1/clients/:clientId/users/:externalId/externalId

5. Кадровик увольняет Сотрудника

Цель - прекращение деятельности работника в занимаемой должности

1) Увольнение сотрудника по ID своей ИС

PUT /api/v1/clients/:clientId/employees/:externalId/externalId/dismiss

или

PUT /api/v1/clients/:clientId/employees/:employeeId/dismiss

В случае если после увольнения у Физлица не остается действующих Сотрудников, то система HRlink блокирует для пользователя доступ в ЛК

Данная последовательность методов не является обязательным порядком.

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

2) Удаление роли

PUT /api/v1/clients/:clientId/employees/:employeeId/roles/remove

3) Кадровик получает реестр документов

POST /api/v1/clients/:clientId/documents/hrRegistry

4) Кадровик обновляет черновик документов для исключения увольняемого Сотрудника

PUT /api/v1/clients/:clientId/documentGroups

или

DELETE /api/v1/clients/:clientId/documents/:documentId

Сценарии работы Кадровика с Электронными подписями

Цель сценариев - Обеспечить сотрудника Электронной Подписью, соответствующей процессам Клиента, для выполнения КЭДО

Пользовательский Сценарий

Действия и API-методы

Примечания

1. Кадровик подключает Пользователю ПЭП Госуслуги для работы с Документами/Заявлениями

Предусловие - Служба Внедрения включила применение ПЭП Госуслуги для ЮЛ Клиента, на основании запроса

1) Кадровик разрешает применение ПЭП Госуслуги для Пользователя

PUT api/v1/clients/:clientId/employees/:employeeId/signings/prr/enable

На момент составления описания данный метод не оформлен в API-документации see-no-evil monkey

метод действует только по идентификатору Сотрудника в HRlink

Метод работает по идентификатору Сотрудника, но меняет состояние Пользователя.

  • Т.е. если, к примеру, у Пользователя есть три сотрудника, то при включении права подписи одному из Сотрудников, включает право подписи для всех Сотрудников.

Сотруднику получившему разрешение на применение ПЭП Госуслуги при первом подписании будет необходимо авторизоваться через ЕСИА

2. Кадровик деактивирует способ подписания ПЭП Госуслуги для Пользователя

Предусловие - для вызова метода запрета нужны идентификаторы Сотрудников. СМ. получение данных сотрудников.

1) Запрет ПЭП Госуслуги

PUT api/v1/clients/:clientId/employees/:employeeId/signings/prr/disable

На момент составления описания данный метод не оформлен в API-документации see-no-evil monkey

метод действует только по идентификатору Сотрудника в HRlink

3. Кадровик выпускает Пользователю УНЭП для подписания

Предусловие - Пользователь - создан, данные ФЛ (паспорт) переданы

1) Кадровик создает заявку на выпуск УНЭП

POST api/v1/clients/:clientId/users/issue/nqes

На момент составления описания данный метод не оформлен в API-документации see-no-evil monkey

Пример метода можно посмотреть - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#4.-%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA-%D0%A3%D0%9D%D0%AD%D0%9F

2) Получение полного списка справочника сотрудников

GET /api/v1/clients/:clientId/employees

или

Получение данных сотрудника по ID своей ИС

GET /api/v1/clients/:clientId/employees/:externalId/externalId

или

GET /api/v1/clients/:clientId/employees/:employeeId

в поле lastNQESIssueRequest можно получить информацию о состоянии заявки на УНЭП

В случае отклонения заявки Сотрудником, Кадровик получит уведомление

Подробности см. в разделе https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#2.1.-%D0%9F%D0%BE%D0%BD%D1%8F%D1%82%D1%8C-%D1%81%D0%BE%D1%81%D1%82%D0%BE%D1%8F%D0%BD%D0%B8%D0%B5-%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F-%D0%BD%D0%B0-%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8-%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%D0%B0-%D0%BF%D1%80%D0%B8%D0%B7%D0%BD%D0%B0%D0%BA%D0%BE%D0%B2

4. Кадровик разрешает пользователю подписание УНЭП Госключ

Предусловие - разрешение происходит только по идентификатору Пользователя в системе HRL, поэтому необходимо, чтобы у Кадровика был данный идентификатор. Можно получить:

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

GET /api/v1/clients/:clientId/employees

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

GET /api/v1/clients/:clientId/employees/:externalId/externalId

метод получения данных физлица по номеру СНИЛС

GET /api/v1/clients/:clientId/users/:snils/snils

1) Кадровик разрешает применение УНЭП Госключ для Пользователя

PUT /api/v1/clients/:clientId/employees/:employeeId/signings/govkey/enable

На момент составления описания данный метод не оформлен в API-документации see-no-evil monkey

метод действует только по идентификатору Сотрудника в HRlink

Сотруднику получившему разрешение на применение ПЭП Госуслуги при первом подписании будет необходимо авторизоваться через ЕСИА

Формирование Кадрового Документооборота

Info

Документ - объект направляемый Работодателем работнику для ознакомления или подписания, в рамках КЭДО.

Документ состоит из метаданных и файлов, обладает состоянием, которое определяется процессом.

Участники КЭДО могут совершать различные операции, которые зависят от роли и условий и состояния документа

В данном описании рассмотрено, с какими сценариями может столкнуться работодатель в рамках взаимодействия своей информационной системы (в которой организован КЭДО) и системой HRlink.

Сценарии Кадровика по Инициированию КЭДО

Цель - начать КЭДО для необходимых сотрудников компании Клиента.

Порядок действий

Действия и API-методы

Примечания

1. Кадровик создает и отправляет на подписание документ

1) Кадровик загружает файла(ы) для документа(ов)

POST /api/v1/files

Поле, в котором передается файл, может иметь любое имя.

В одном запросе можно передать один или несколько файлов. В случае отправки нескольких файлов следует давать полям разные имена.

При создании документа система конвертирует полученный файл в pdf/a. Конвертация файла является асинхронным процессом!

2) Кадровик получает список доступных типов документов

GET /api/v1/permittedDocumentTypes

Использование данного шага как части сценария позволит получить актуальный список типов документов для Кадровика

3) Кадровик создает черновик документа

POST /api/v1/clients/:clientId/documentGroups

При создании можно задавать Внешний ID (externalId), соответствующий идентификатору документа в вашей ИС. В HRlink Внешний ID (externalId) хранится как строка, поэтому допустимы любые строковые символы. Ограничения на максимальную длину строки нет.

4) Кадровик инициирует проверку на возможность отправки на подписание

POST /api/v1/clients/:clientId/documents/validateBeforeSendToSigning

Подробнее описание метода смотри - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#6.-%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0-%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2-%D0%BD%D0%B0-%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D0%BF%D0%BE%D0%B4%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D1%8F

5) Кадровик отправляет документ на подписание

PUT /api/v2/clients/:clientId/documents/sendToSigning

Подробнее описание метода смотри - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#7.-%D0%9A%D0%B0%D0%B4%D1%80%D0%BE%D0%B2%D0%B8%D0%BA-%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D1%8F%D0%B5%D1%82-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B

2. Кадровик подписывает Черновик (как руководитель) и отправляет дальше на подписание

Предусловие - Документ был создан (например, выполнены шаги 1-3 сценария 1)

1) Кадровик инициирует проверку документов на возможность подписания и отправки на подписание

POST /api/v1/clients/:clientId/documents/validateBeforeSendAndSign

Подробнее описание метода смотри - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#6.-%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0-%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2-%D0%BD%D0%B0-%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D0%BF%D0%BE%D0%B4%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D1%8F

2) Кадровик запрашивает файл, который подписывается в HRlink

GET /api/v1/clients/:clientId/documents/:documentId/convertedFile

Необходимо получить файл, который был получен в HRlink после конвертации переданного файла в формат pdf/a.

Подписание УКЭПом должно производиться именно относительно файла, полученного в данном методе

3) Кадровик подписывает УКЭП (как руководитель) и отправляет документ дальше

PUT /api/v1/clients/:clientId/documents/sendAndSign

Само подписание УКЭПом производится за рамками HRlink, в данном методе только передаётся файл подписи

Подробнее описание метода смотри - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#7.-%D0%9A%D0%B0%D0%B4%D1%80%D0%BE%D0%B2%D0%B8%D0%BA-%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D1%8F%D0%B5%D1%82-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B

3. Кадровик создает документ с отправкой на подписание при создании

Предусловие - файлы для документа загружен с помощью метода загрузки файла

POST /api/v1/files

1) Кадровик использует метод отправки документа на подписание при создании

POST /api/v1/clients/:clientId/documentGroups/sendToSigning

2) Кадровик запрашивает массив документов с заданными фильтрами

POST /api/v1/clients/:clientId/documents/hrRegistry

данный метод необходим в качестве проверки состояния документов, которые были созданы с совмещённой отправкой.

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

Необходимость проверки обусловлена ассинхронностью процесса.

4. Кадровик отправляет на подписание ранее созданный черновик

Предусловие - черновик документа создан

1) Кадровик инициирует проверку на возможность отправки на подписание

POST /api/v1/clients/:clientId/documents/validateBeforeSendToSigning

Подробнее описание метода смотри - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#6.-%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0-%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2-%D0%BD%D0%B0-%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D0%BF%D0%BE%D0%B4%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D1%8F

2) Кадровик отправляет черновик документа на подписание

PUT /api/v2/clients/:clientId/documents/sendToSigning

Подробнее описание метода смотри - https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#7.-%D0%9A%D0%B0%D0%B4%D1%80%D0%BE%D0%B2%D0%B8%D0%BA-%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D1%8F%D0%B5%D1%82-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B

Контроль Процесса Подписания

Сценарии Кадровика по работе с уже созданными документами

Порядок действий

Действия и API-методы

Примечания

1. Кадровик получает данные по документам, в том числе файлы по конкретному документу

Цель - обновить данные по документам в ИС Клиента, в том числе если требуется - добавление файлов

1) Кадровик запрашивает список документов с учётом фильтров

POST /api/v1/clients/:clientId/documents/hrRegistry

Список документов возвращается частями, которые определяется двумя параметрами - лимит и сдвиг выгрузки

Когда в возвращаемом срезе документов будет меньше чем в лимите среза, значит это последняя часть

Подробнее о параметрах запроса для фильтрации и том, как определять состояние документов по признакам см. раздел https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#I.-%D0%9C%D0%B5%D1%82%D0%BE%D0%B4%D1%8B-%D1%81%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5-%D1%81-%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D0%BC%D0%B8 и в описании метода

2) Кадровик запрашивает документ по ID своей ИС

GET /api/v1/clients/:clientId/documents/:externalId/externalId

или

GET /api/v1/clients/:clientId/documents/:documentId

3) Кадровик получает печатную форму документа с оттисками

GET /api/v1/clients/:clientId/documents/:documentId/printFormFile

или

GET /api/v1/clients/:clientId/documents/:documentId/convertedFile

Оригинальный файл, который был загружен не выгружается по API-методам и не входит в состав Архива КЭДО, поэтому при необходимости получения оригинального файла необходим запрос в службу поддержки

На момент составления описания метод получения ПФ документа не оформлен в API-документации see-no-evil monkey

2. Кадровик редактирует параметры черновика

Предусловие - документ создан, но не был отправлен

Цель - внести изменения в метаданные документа:

  • тип, номер, дата

  • актуализировать состав участников

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

PUT /api/v1/clients/:clientId/documentGroups

Обновление происходит только внутри группы документов

2) используется один из описанных сценариев инициирования КЭДО

3. Кадровик заменяет Черновик

4. Кадровик заменят документ, находящийся на подписании

Цель - заменить файл документа или внести исправления в документ находящийся на подписании

1) Кадровик удаляет документ по ID документа в HRL

DELETE /api/v1/clients/:clientId/documents/:documentId

или

DELETE /api/v1/clients/:clientId/documents

При необходимости удалить 1 документ по идентификатору из своей ИС, нужно использовать метод удаления группы документов и в теле запроса передать список из одного документа с указанием идентификатора своей ИС

2) Кадровик затирает ID своей ИС в удаленном документе

PUT /api/v1/clients/:clientId/documents/:externalId/externalId/clearExternalId

3) Используется один из подходящих сценариев инициирования КЭДО

5. Кадровик выгружает архив КЭДО

Цель - реализовать выгрузку архивов КЭДО

  • для бекапирования

  • для наполнения своей ИС архивами

1) Кадровик получает список документов с соответствии с фильтрами

POST /api/v1/clients/:clientId/documents/hrRegistry

Данный шаг нужен для того, чтобы получить список документов, по которым требуется выгрузка архивов, однако если при создании документов используются идентификаторы своей системы, и список документов полностью управляется на стороне ИС Клиента, то данный шаг можно пропустить

2) Кадровик скачивает архив КЭДО по ID документа своей ИС

GET /api/v1/clients/:clientId/documents/:externalId/externalId/archive

или

GET /api/v1/clients/:clientId/documents/:documentId/archive

Получив список документов, в соответствии с фильтрами, по каждому документу вызывается метод получения архива КЭДО.

В случае, если выгрузка реализована для бекапирования необходимо со своей стороны отмечать - по каким документам архивы уже были выгружены.

Архив КЭДО содержит в себе:

  • сконвертированный файл

  • файлы подписей

  • печатную форму документа с оттисками

6. Кадровик инициирует повторное уведомления для подписантов

Цель - побудить участника КЭДО к подписанию

1) Кадровик получает список документов с соответствии с фильтрами

POST /api/v1/clients/:clientId/documents/hrRegistry

Подробнее о параметрах запроса для фильтрации и том, как определять состояние документов по признакам см. раздел https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#I.-%D0%9C%D0%B5%D1%82%D0%BE%D0%B4%D1%8B-%D1%81%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5-%D1%81-%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D0%BC%D0%B8

2) Кадровик инициирует повторное уведомление по документу

POST /api/v1/clients/:clientId/documents/signers/next/notify

На момент составления описания данные метод не оформлен в API-документации see-no-evil monkey

Кадровому работнику не требуется определять на ком “зависло” подписание, система сама направляет уведомление текущему подписанту, с учётом того, какой канал уведомления является актуальным для Подписанта.

7. Кадровик добавляет заметку к документу

Предусловие - известен идентификатор документа

  • Кадровик добавляет текст заметки к документу

PUT /api/v1/clients/:clientId/documents/:documentId/notice

На момент составления описания данные метод не оформлен в API-документации see-no-evil monkey

Заметка, оставленная Кадровиком видна только Кадровику, включая тех у кого есть права на просмотр документа

Обработка Заявлений

Info

Заявление - кадровый документ, подписание которого инициировано Работником

  • Работа с реестром Заявлений

  • Работа с Заявлением

В данном разделе описывается функционал по отношению к Кадровику.

Описание возможностей Сотрудника по работе с заявлениями указаны в

1. Сценарии работы Кадровика с Шаблонами заявлений

Info

Пример файла шаблона заявления можно скачать ниже.

В файле шаблона заявления переменные оформляются следующим образом:

<<[имя_переменной]>>

  • Для переменных типа дата, доступно указание формата даты, например - <<[dateVacation]:"dd.MM.yyyy">>

  • имя переменной определяется:

    • При создании шаблона заявления

    • При обновлении шаблона заявления

Expand
titleПример файла шаблона заявления

View file
nameШаблон заявления (пример).docx
height150

Сценарий

Действия и API-метод

Примечания

1. Кадровый работник обновляет файл шаблона действующего заявления

Предусловия

  1. шаблон заявления создан через службу поддержки

  2. есть идентификатор шаблона заявления

    1. список Шаблонов Заявлений

    2. GET /api/v1/applicationTypes

  3. есть список системных полей (единый для всех шаблонов заявлений), которые можно использовать для настройки файла шаблона (подставлять в необходимые места шаблона)

    1. список системных полей

    2. GET /api/v1/applicationTypeFields/system

Цель - актуализировать файл шаблона

  • общий файл

  • файл шаблона для конкретного ЮЛ

1) Получение файла шаблона заявления

GET /api/v1/clients/:clientId/applicationTypes/:applicationTypeId/templateFile

2) Кадровик загружает заранее подготовленный файл шаблона Заявления

POST /api/v1/files

Полученный идентификатор файла будет передаваться в следующем методе

Для каждого ЮЛ может быть свой файл шаблона заявления (см. схему)

3) Кадровик заменяет идентификатор файла на новый шаблон

PUT /api/v1/applicationTypes/:applicationTypeId

Данный метод позволяет:

  1. Загрузить новый файл шаблона заявления

  2. Активировать/Деактивировать шаблон заявления

  3. Обновить состав пользовательских полей в шаблоне

  4. Обновить имя шаблона

2. Кадровик обновляет параметры загруженного Шаблона Заявления

Предусловие - есть идентификатор шаблона заявления

Цель - актуализировать информацию в шаблоне заявления:

  • сделать шаблон видимым/скрытым для сотрудников

  • обновить имя шаблона

PUT /api/v1/applicationTypes/:applicationTypeId

2. Сценарии работы Кадровика с поданными Заявлениями

Порядок действий

API-метод

Примечания

1. Кадровик получает реестр Заявлений по конкретному заявителю/согласующему

Предусловие - в системе Клиента нет идентификатора Сотрудника HRL и используются только идентификаторы своей системы

1) Кадровик получает данные сотрудника по ID в своей ИС

GET /api/v1/clients/:clientId/employees/:externalId/externalId

Идентификатор Сотрудника в HRL смотрим в employee -> legalEntities -> employeeId

или

Кадровик получает данные ФЛ по СНИЛС

GET /api/v1/clients/:clientId/users/:snils/snils

Цель данного шага - получить идентификатор сотрудника в системе HRL, по которому требуется получить список заявлений, как по:

  • Заявителю

  • Согласующему

В случае, если в системе Клиента хранится связка идентификаторов Сотрудника HRL и идентификаторов в ИС Клиента, то данный шаг можно пропустить

2) Кадровик получает список Заявлений

POST /api/v1/clients/:clientId/applicationGroups/hrRegistry

Подробнее смотри примеры методов получения заявлений и определения состояния заявлений в разделе https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#1.-%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D1%80%D0%B5%D0%B5%D1%81%D1%82%D1%80%D0%B0-%D0%97%D0%B0%D1%8F%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B9

2. Кадровик получает реестр Заявлений по отделу Заявителя

Предусловие - в системе Клиента нет идентификатора Отдела HRL и используются только идентификаторы своей системы

1) Кадровик получает справочник отделов

GET /api/v1/clients/:clientId/departments

Идентификатор Сотрудника в HRL смотрим в clientDepartments -> id

Цель данного шага - получить идентификатор отдела в HRL

В случае, если в системе Клиента хранится связка идентификаторов Отдела HRL и идентификаторов в ИС Клиента, то данный шаг можно пропустить

2) Кадровик получает список Заявлений по отделам заявителя

POST /api/v1/clients/:clientId/applicationGroups/hrRegistry

Подробнее смотри примеры методов получения заявлений и определения состояния заявлений в разделе https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#1.-%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D1%80%D0%B5%D0%B5%D1%81%D1%82%D1%80%D0%B0-%D0%97%D0%B0%D1%8F%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B9

3. Кадровик получает реестр Заявлений по конкретному ЮЛ

Предусловие - в системе Клиента нет идентификатора Отдела HRL и используются только идентификаторы своей системы

1) Кадровик получает справочник Юрлиц

GET /api/v1/clients/:clientId/legalEntities

Идентификатор Юрлица в HRL смотрим в legalEntities -> id

Цель данного шага - получить идентификатор отдела в HRL

В случае, если в системе Клиента хранится связка идентификаторов Юрица HRL и идентификаторов в ИС Клиента, то данный шаг можно пропустить

2) Кадровик получает список Заявлений по Юрлицам

POST /api/v1/clients/:clientId/applicationGroups/hrRegistry

Подробнее смотри примеры методов получения заявлений и определения состояния заявлений в разделе https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#1.-%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D1%80%D0%B5%D0%B5%D1%81%D1%82%D1%80%D0%B0-%D0%97%D0%B0%D1%8F%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B9

4. Кадровик получает все данные по Заявлениям с учётом всех фильтров

Цель - получить список заявлений по произвольному набору фильтров

POST /api/v1/clients/:clientId/applicationGroups/hrRegistry

Подробнее смотри примеры методов получения заявлений и определения состояния заявлений в разделе https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#1.-%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D1%80%D0%B5%D0%B5%D1%81%D1%82%D1%80%D0%B0-%D0%97%D0%B0%D1%8F%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B9

5. Кадровик получает данные конкретного заявления (метаданные, файлы и архив)

Предусловие - по одному из сценариев выше есть идентификатор заявления

1) Кадровик получает данные заявления по ID в HRL

GET /api/v1/clients/:clientId/applicationGroups/:applicationGroupId

На метаданные заявления содержат в себе:

  • Данные Заявителя и Согласующего

  • Данные Заявления: Группа, Дата, Номер

2) Кадровик получает:

GET /api/v1/clients/:clientId/applications/:applicationId/printFormFile

  • файл, который подписан

GET /api/v1/clients/:clientId/applications/:applicationId/convertedFile

GET /api/v1/clients/:clientId/applications/:applicationId/archive

Печатная форма заявления может быть использована для отображения.

В случае, если Кадровику достаточно метаданных, полученных из заявления, то шаг с получением файла заявления можно пропустить

На данный момент метод получения, подписываемого файла заявления, не оформлен в API-документации see-no-evil monkey

6. Кадровик обрабатывает Заявление

Предусловие - по одному из сценариев выше есть идентификатор заявления

  • кадровик получает реестр заявлений, ожидающих обработки Кадровиком

1) Кадровик берёт заявление в работу

PUT /api/v1/clients/:clientId/applications/:applicationId/participants/hr/claim

Данный шаг может быть пропущен, если у Клиента после получения заявления сразу выносится решение от Кадровика и не требуется вести учёт того, какие заявления находятся в работе в моменте.

2) Кадровик принимает решение по заявлению:

PUT /api/v1/clients/:clientId/applications/:applicationId/participants/hr/process

PUT /api/v1/clients/:clientId/applications/:applicationId/participants/hr/reject

Поиск документации

LivesearchspaceKeyWIKI