Перейти к основному содержимому

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

Отправка кандидатов на согласование​

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

mutation SendPersonsApprovalRequests {
sendPersonsApprovalRequests(
vacancyId: 56437
personIds: [2937738, 2937739]
recipientMails: ["approver@example.com"]
commentHtml: "<p>Прошу согласовать кандидатов на вакансию</p>"
) {
__typename
... on PersonsApprovalRequestsSentSuccess {
message
}
... on PersonsApprovalRequestsSendError {
errorType
message
fieldErrors {
field
violatedConstraints
}
}
}
}

Посмотреть в playground

подсказка

personIds — кандидаты вакансии, recipientMails — почты согласующих (не больше 20 адресов). commentHtml — комментарий в письме, от 1 до 10 000 символов.

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

При успешном выполнении запрос вернёт

{
"data": {
"sendPersonsApprovalRequests": {
"__typename": "PersonsApprovalRequestsSentSuccess",
"message": null
}
}
}

В случае ошибки вернётся json с типом ошибки. При INVALID_COMMENT и INVALID_RECIPIENT_MAILS заполняется fieldErrors.

{
"data": {
"sendPersonsApprovalRequests": {
"__typename": "PersonsApprovalRequestsSendError",
"errorType": "INVALID_RECIPIENT_MAILS",
"message": null,
"fieldErrors": [
{
"field": "recipientMails",
"violatedConstraints": ["Email"]
}
]
}
}
}

Возможные типы ошибок:

  • ACCESS_DENIED — нет прав на отправку кандидатов на согласование
  • VACANCY_NOT_FOUND — вакансия не найдена
  • INVALID_PERSONS — кандидаты не найдены на вакансии
  • INVALID_PERSONS_COUNT — некорректное количество кандидатов
  • INVALID_RECIPIENT_MAILS — некорректные почты согласующих
  • INVALID_COMMENT — некорректный комментарий

Архивация и восстановление вакансий​

Изменить статус вакансий — архивировать или восстановить — можно с помощью следующего запроса. Допустимые значения status: ARCHIVE и ACTIVE.

mutation ChangeVacanciesStatus {
changeVacanciesStatus(vacancyIds: [56437, 56438], status: ARCHIVE) {
__typename
... on VacanciesStatusChangedSuccess {
message
}
... on VacanciesStatusChangeError {
errorType
message
}
}
}

Посмотреть в playground

подсказка

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

При успешном выполнении запрос вернёт

{
"data": {
"changeVacanciesStatus": {
"__typename": "VacanciesStatusChangedSuccess",
"message": null
}
}
}

В случае ошибки вернётся json с типом ошибки

{
"data": {
"changeVacanciesStatus": {
"__typename": "VacanciesStatusChangeError",
"errorType": "VACANCY_NOT_FOUND",
"message": null
}
}
}

Возможные типы ошибок:

  • ACCESS_DENIED — нет прав на изменение статуса вакансий
  • VACANCY_NOT_FOUND — вакансия не найдена