...
ШАГ 1. Загрузить доступные дни для планирования на год
Создать задачу массовой синхронизации данных
| Метод | Ссылка на документацию OpenAPI |
|---|---|
POST https://{host}/api/v1/clients/{clientId}/bulkDataSyncTasks type = EMPLOYEE_VACATIONS_PLANNING | https://docs.myhrlink.ru/public/openapi/hr-link/#tag/otherDataSync/operation/createBulkDataSyncTask |
...
- Загрузить дни для планирования может как Администратор, так и Кадровик (Настройщик не может
) нужно ли это указывать ?
- Пользователь должен иметь право BULK_DATA_SYNC_TASKS_CREATE на уровне пользователя клиента или на уровне активного сотрудника.
- Информация о доступных днях для планирования необходима для возможности планирования отпусков в HRlink.
Описание переменных
| Переменная | Описание | Обязательность |
|---|---|---|
tenantHost | Хост тенанта, на который должен быть выполнен запрос | да |
clientId | ИД клиента HRlink | да |
| externalId | Внешний идентификатор сотрудника.
| да |
| legalEntityExternalId | Внешний идентификатор юрлица сотрудника. | нет |
| availableVacationsPlanning[] | Массив с данными для планирования.
| нет |
| planningYear | Год, на который будут планироваться отпуска | нет |
| basicVacationDayCount | Количество дней основного отпуска, доступных для планирования.
| нет |
| additionalVacationDayCount | Количество дней дополнительного отпуска, доступных для планирования.
| нет |
| Expand | |||||||
|---|---|---|---|---|---|---|---|
| |||||||
|
Пример ответа
| No Format |
|---|
{
"result": true,
"bulkDataSyncTask": {
"id": "{{ИД задачи массовой синхронизации данных}}"
}
} |
ШАГ 1.1 Загрузить региональные календарей сотрудников
Опциональный шаг.
Если календари были загружены ранее и регулярно обновляются у сотрудников, то этот шаг можно пропустить.
...
- Разрешить планирование может только Администратор.
- Пользователь должен иметь право VACATIONS_CHANGE_PLANNING_STATE на уровне пользователя клиента или на уровне активного сотрудника.
Описание переменных
| Переменная | Описание | Обязательность |
|---|---|---|
tenantHost | Хост тенанта, на который должен быть выполнен запрос | да |
clientId | ИД клиента HRlink | да |
| planningState | Состояние планирования отпусков в системе HRlink. Может принимать два состояния:
| да |
| planningYear | Год, на который устанавливается настройка планирования.
| нет |
| Expand | |||||||
|---|---|---|---|---|---|---|---|
| |||||||
|
Пример ответа
| No Format |
|---|
{
"result": true
} |
...
Шаг выполняется на портале HRlink.
Создать или обновить отпуска пользователя клиента
| Метод | Ссылка на документацию OpenAPI |
|---|---|
PUT https://{host}/api/v1/clients/{clientId}/users/{clientUserId}/vacations | https://docs.myhrlink.ru/public/openapi/hr-link/#tag/vacationScheduleManage/operation/createOrUpdateVacations |
Дополнительная информация:
...
Шаг выполняется на портале HRlink.
Установить состояние утверждения отпуска
| Метод | Ссылка на документацию OpenAPI |
|---|---|
PUT https://{host}/api/v1/clients/{clientId}/vacations/{vacationId}/setApprovingState | https://docs.myhrlink.ru/public/openapi/hr-link/#tag/vacationScheduleManage/operation/setVacationApprovingState |
Дополнительная информация:
...
- Опциональный шаг.
- Если необходимо в текущем году запретить Сотрудникам и Руководителям изменять отпуска, то требуется выполнить этот шаг.
- После наступления нового календарного года изменение отпусков будет автоматически недоступно для Сотрудника и Руководителя.
- Завершить планирование может только Администратор.
- Пользователь должен иметь право VACATIONS_CHANGE_PLANNING_STATE на уровне пользователя клиента или на уровне активного сотрудника.
Описание переменных
| Переменная | Описание | Обязательность |
|---|---|---|
tenantHost | Хост тенанта, на который должен быть выполнен запрос | да |
clientId | ИД клиента HRlink | да |
| planningState | Состояние планирования отпусков в системе HRlink. Может принимать два состояния:
| да |
| planningYear | Год, на который устанавливается настройка планирования.
| нет |
| Expand | |||||||
|---|---|---|---|---|---|---|---|
| |||||||
|
Пример ответа
| No Format |
|---|
{
"result": true
} |
...
- Получить спланированные периоды отпусков может как Администратор, так и Кадровик.
- Пользователь должен иметь право EMPLOYEE_PLANNED_VACATIONS на уровне пользователя клиента или на уровне активного сотрудника.
Описание переменных
| Переменная | Описание | Обязательность |
|---|---|---|
tenantHost | Хост тенанта, на который должен быть выполнен запрос | да |
clientId | ИД клиента HRlink | да |
| vacations{} | Данные для фильтрации периодов планируемых отпусков.
| да |
| startDateFrom | Начало периода, в который должно попадать начало запрашиваемого планируемого отпуска. | нет |
| startDateTo | Конец периода, в который должно попадать начало запрашиваемого планируемого отпуска | нет |
| status | Статус запрашиваемых планируемых отпусков сотрудников. | нет |
| employees[] | Список сотрудников, по которым необходимо получить отпуска.
| да |
id | ID сотрудника в системе HRlink. | нет |
| externalId | ID сотрудника во внешней системе. | нет |
| department[] | Список отделов, по которым необходимо получить отпуска.
| да |
id | ID отдела в системе HRlink. | нет |
| externalId | ID отдела клиента во внешней системе. | нет |
| legalEntity[] | Список юрлиц, по которым необходимо получить отпуска.
| да |
id | ID юрлица клиента в системе HRlink. | нет |
| externalId | ID юрлица клиента во внешней системе. | нет |
| limit | Количество возвращаемых при запросе элементов.
| нет |
| offset | Количество элементов, которые нужно пропустить при выборке. | нет |
| withoutDismissedEmployees | Вернуть ответ без уволенных сотрудников?
| нет |
| Expand | |||||||
|---|---|---|---|---|---|---|---|
| |||||||
|
Пример ответа
| No Format |
|---|
{
"result": true,
"employeePlannedVacationPeriods": [
{
"id": "{{Внутренний ИД сотрудника}}",
"externalId": "{{Внешний ИД сотрудника}}",
"periods": [
{
"vacationType": "Основной",
"vacationStatus": "Ожидает согласования",
"dateFrom": "2026-09-15",
"dateTo": "2026-09-28"
},
{
"vacationType": "Дополнительный",
"vacationStatus": "Согласовано",
"dateFrom": "2026-10-01",
"dateTo": "2026-10-03"
}
]
}
]
} |
...
ШАГ 6. Загрузить обновленные периоды запланированных отпусков в HRlink
Создать задачу массовой синхронизации данных
| Метод | Ссылка на документацию OpenAPI |
|---|---|
POST https://{host}/api/v1/clients/{clientId}/bulkDataSyncTasks type = CLIENT_USER_VACATIONS | https://docs.myhrlink.ru/public/openapi/hr-link/#tag/otherDataSync/operation/createBulkDataSyncTask |
...
- Отпуска загружаются по физ.лицам, т.е. по пользователям HRlink. Все сотрудники пользователя будут иметь одинаковые периоды отпуска.
- Загрузить запланированные отпуска может как Администратор, так и Кадровик.
- Пользователь должен иметь право BULK_DATA_SYNC_TASKS_CREATE и право VACATIONS_CREATE_AND_UPDATE на уровне пользователя клиента или на уровне активного сотрудника.
- Загрузить запланированные отпуска возможно на любой год, вне зависимости от настройки разрешения планирования отпусков и наличия доступных дней отпуска у сотрудника.
- В одной задаче массовой синхронизации возможно загрузить не более 500 пользователей
Описание переменных
| Переменная | Описание | Обязательность |
|---|---|---|
tenantHost | Хост тенанта, на который должен быть выполнен запрос | да |
clientId | ИД клиента HRlink | да |
| externalId | Идентификатор пользователя во внешней системе. | да |
| year | Год отпуска. | да |
| withApproval | Являются ли периоды отпуска согласованными.
| нет |
| vacationPeriods[] | Список данных о планируемых отпусках.
| нет |
| startDate | Дата начала отпуска. | да |
| endDate | Дата окончания отпуска. | да |
| type | Тип отпуска.
| да |
| Expand | |||||||
|---|---|---|---|---|---|---|---|
| |||||||
|
Пример ответа
| Expand | ||
|---|---|---|
| ||
|