ipr.ipr.add
Scope:
iprКто может вызывать: Актор создаёт карточку себе (
userId == текущий пользователь) либо является руководителем сотрудника (canManageEmployee) — иначе привилегированные (admin/hr) сверх этого правила прав не получают. Подробнее: Роли и права доступа
Создаёт карточку ИПР или ПИС для сотрудника (аналог создания из карточки сотрудника в интерфейсе).
HTTP: POST
Побочные эффекты: Создаёт элемент инфоблока ИПР, привязывает компетенции, может создавать элементы «компетенция в ИПР».
Параметры метода
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
userId |
int |
да | ID сотрудника, для которого создаётся карточка |
managerId |
int |
да | ID руководителя, должен отличаться от userId |
competenceIds |
int[] |
да | ID компетенций каталога (минимум одна) |
type |
string |
нет | IPR | PIS (без учёта регистра). По умолчанию — тип шаблона (если указан templateId) или IPR |
templateId |
int |
нет | ID шаблона программы, из которого создаётся карточка |
title |
string |
нет | Название, максимум 255 символов. По умолчанию — название шаблона (если задан templateId) |
deadline |
string |
нет | Дедлайн в формате YYYY-MM-DD. Если не задан — вычисляется из term |
term |
int |
нет | Срок в месяцах (для IPR) при отсутствии deadline. По умолчанию — значение по умолчанию из справочника периодов модуля |
sendBossAgreement |
bool |
нет | Требовать согласование руководителем. По умолчанию true |
positionId |
int |
нет | Текущая должность сотрудника |
targetPositionId |
int |
нет | Целевая должность |
nextTemplateId |
int |
нет | Шаблон следующей программы после завершения |
observers |
int[] |
нет | ID наблюдателей карточки |
targetFunction |
string |
нет | Целевая функция (свободный текст) |
competenceDeadlines |
object |
нет | Индивидуальные дедлайны по компетенциям: { "<competenceId>": "YYYY-MM-DD" }. Компетенции без явного значения получают общий дедлайн карточки |
competenceRunOptions |
object |
нет | Доп. опции запуска компетенций (передаются как есть в бизнес-логику создания) |
competenceGoals |
object |
нет | Цели по компетенциям (передаются как есть) |
sendBossAgreement и прочие булевы значения принимаются как true / 1 / "Y" / "true".
Возвращаемые данные
Полная карточка — та же форма, что у ipr.ipr.get.
Обработка ошибок
Справочник кодов: error-codes.md.
| Код | Описание |
|---|---|
UNAUTHORIZED |
Пользователь не авторизован |
VALIDATION_ERROR |
Не передан обязательный параметр, managerId == userId, некорректный deadline/type, title длиннее 255 символов |
NOT_FOUND |
Сотрудник, руководитель или templateId не найдены |
PERMISSION_DENIED |
Нет прав создавать карточку для указанного userId |
IPR_ALREADY_EXISTS |
У сотрудника уже достигнут лимит активных программ |
INTERNAL_ERROR |
Внутренняя ошибка сервера / не удалось создать карточку |
Пример запроса (POST)
curl -X POST "https://{портал}/rest/{user_id}/{webhook_code}/ipr.ipr.add.json"
-H "Content-Type: application/json"
-H "Accept: application/json"
--data '{
"userId": 15,
"managerId": 1,
"competenceIds": [1049, 1051],
"type": "IPR",
"deadline": "2026-12-30",
"sendBossAgreement": true,
"observers": [8],
"competenceDeadlines": {
"1049": "2026-09-30"
}
}'
Пример ответа
{
"result": {
"result": {
"id": 4201,
"title": "ИПР: Наумова Алиса",
"status": "NEW",
"type": "IPR",
"userId": 15,
"managerId": 1
},
"total": null,
"next": null,
"error": null
}
}
См. также
Предыдущая
Следующая