API

API: Кандидаты

Эндпоинты tRPC для работы с кандидатами: получение списка, создание, обновление и управление этапами.

Список кандидатов

tRPC Querycandidates.list

Возвращает список кандидатов с пагинацией и фильтрацией по workspace.

Параметры

workspaceIdstringобязательный

ID workspace

vacancyIdstring

Фильтр по вакансии

limitnumber

Количество записей (макс. 200, по умолчанию 100)

cursorstring

Курсор для пагинации

searchstring

Поиск по имени кандидата или названию вакансии

stagesstring[]

Фильтр по этапам: SCREENING_DONE, INTERVIEW, OFFER_SENT, SECURITY_PASSED, CONTRACT_SENT, ONBOARDING, REJECTED

Пример ответа

{
  "items": [
    {
      "id": "0190abcd123456789",
      "name": "Иван Петров",
      "position": "Frontend-разработчик",
      "avatarFileId": "file_xyz789",
      "initials": "ИП",
      "experience": "5 лет",
      "location": "Не указано",
      "matchScore": 85,
      "stage": "INTERVIEW",
      "status": "INTERVIEW",
      "hrSelectionStatus": null,
      "vacancyId": "vac_123",
      "vacancyName": "Frontend-разработчик",
      "salaryExpectation": "Не указано",
      "email": "ivan@example.com",
      "phone": "+7 999 123-45-67",
      "telegram": "@ivan_petrov",
      "messageCount": 5,
      "createdAt": "2025-01-10T10:00:00.000Z",
      "updatedAt": "2025-01-14T15:30:00.000Z"
    }
  ],
  "nextCursor": "0190abcd123456790",
  "total": 47
}

Получение кандидата

tRPC Querycandidates.getById

Возвращает полные данные одного кандидата по ID.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

Уникальный идентификатор кандидата (response ID)

Пример ответа

// Возвращает полную информацию о кандидате включая:
// - Данные резюме и контакты
// - Результаты скрининга
// - Историю сообщений
// - Активности
// - Комментарии
{
  "id": "0190abcd123456789",
  "candidateName": "Иван Петров",
  "email": "ivan@example.com",
  "phone": "+7 999 123-45-67",
  "experience": "5 лет frontend-разработки",
  "skills": ["React", "TypeScript", "Node.js"],
  "vacancyId": "vac_123",
  "stage": "INTERVIEW",
  "screening": {
    "detailedScore": 85,
    "criteriaMatch": {
      "technical_skills": 90,
      "experience": 80,
      "education": 85
    }
  },
  "createdAt": "2025-01-10T10:00:00.000Z",
  "updatedAt": "2025-01-14T15:30:00.000Z"
}

Обновление кандидата

tRPC Mutationcandidates.updateStage

Обновляет этап кандидата в воронке найма.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

ID кандидата

stagestringобязательный

Новый этап: SCREENING_DONE, INTERVIEW, OFFER_SENT, SECURITY_PASSED, CONTRACT_SENT, ONBOARDING, REJECTED

Пример ответа

{
  "success": true,
  "candidate": {
    "id": "0190abcd123456789",
    "stage": "TECHNICAL_INTERVIEW",
    "updatedAt": "2025-01-14T16:30:00.000Z"
  }
}
tRPC Mutationcandidates.updateSalaryExpectations

Обновляет зарплатные ожидания кандидата.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

ID кандидата

salaryExpectationstringобязательный

Зарплатные ожидания

Пример ответа

{
  "success": true,
  "candidate": {
    "id": "0190abcd123456789",
    "salaryExpectation": "150 000 - 200 000 ₽",
    "updatedAt": "2025-01-14T16:30:00.000Z"
  }
}

Дополнительные операции

tRPC Mutationcandidates.sendGreeting

Отправляет приветственное сообщение кандидату.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

ID кандидата

tRPC Mutationcandidates.sendOffer

Отправляет оффер кандидату.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

ID кандидата

tRPC Mutationcandidates.rejectCandidate

Отклоняет кандидата.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

ID кандидата

tRPC Querycandidates.listActivities

Возвращает историю активностей кандидата.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

ID кандидата

tRPC Querycandidates.listMessages

Возвращает сообщения чата с кандидатом.

Параметры

workspaceIdstringобязательный

ID workspace

idstringобязательный

ID кандидата

Была ли эта страница полезной?