Как автоматизировать сорсинг кандидатов через API
Пошаговый сценарий: от настройки фильтров до доставки вакансий в Huntflow и Greenhouse через API и вебхуки — без ручного копирования.
Получить ключ API
Какие этапы нуждаются в автоматизации
Процесс подбора персонала делится на две части. Профессиональная часть включает в себя оценку кандидатов, установление контакта и ведение переговоров об увольнении. Рутинная часть включает в себя мониторинг источников информации о вакансиях, копирование объявлений о работе, фильтрацию дубликатов и передачу данных в систему ATS. Рутинная часть нуждается в автоматизации. Эта часть не требует профессиональной оценки, но занимает несколько часов в день.
Согласно нашей статистике, рекрутеры тратят 8-11 часов в неделю на сбор и передачу данных. Это почти эквивалентно целому рабочему дню, потраченному на копирование и вставку. Для кадрового агентства из пяти человек это составляет 40-55 часов в месяц, и это время напрямую не приводит к успеху в подборе персонала.
С помощью API можно выполнить три типа задач. Первый — сканирование источников информации. Сюда входят такие сайты, как hh.ru и Habr Career, профессиональные каналы в Telegram и корпоративные страницы по подбору персонала. Второй способ — нормализация информации: объединение названий вакансий «Старший Python-инженер» и «Менеджер по разработке на Python» в единое название должности и технологический стек. Третий метод автоматизации — автоматическая отправка полных профилей кандидатов в Huntflow или Greenhouse без участия человека.
Порог для автоматизации прост: всё, что описано в правилах, отправляется в API. Любая работа, требующая эмпатии и оценки, остаётся на усмотрение рекрутеров. Сбор и отправка информации обрабатываются машинами, а взаимодействие с человеком остаётся человеческим.
Стоит отметить, какие этапы не следует автоматизировать. Окончательное принятие решений по кандидатам, составление писем с предложениями о работе и ответы на возражения — всё это процессы, выполняемые человеком. Роль API заключается в экономии времени на подготовку, а не в замене рекрутеров в убеждении соискателей сменить работу.
Шаги 1-2: Критерии фильтрации и ключ доступа
Первый шаг — описание подходящих вакансий. В LeadHunter это делается с помощью интеллектуального фильтра. Критерии фильтрации включают технологический стек и уровень, местоположение и формат, филиал и язык. Каждый набор критериев сохраняется как предустановка. По сути, это машиночитаемое описание вакансии, которое не нужно пересматривать еженедельно.
Пример допустимой предустановки: технологический стек и уровень Python, местоположение в Москве, удаленная или гибридная работа по желанию. Минимальная зарплата в филиале — 250 000 рублей, а срок размещения вакансии — не более 14 дней. Чем точнее предустановка, тем меньше ручной обработки потребуется в дальнейшем.
Второй шаг — выдача ограниченного ключа API. Рекомендуется создавать отдельный ключ для каждой интеграции и вести белый список IP-адресов. В случае утечки ключа его можно просто отозвать, не останавливая весь процесс найма. Права доступа следует свести к минимуму: разрешить только чтение результатов поиска, доступ к платежам или настройкам учетной записи запрещен.
После этого предустановка станет доступна через API. Есть два варианта. Вы можете выбрать постраничный поиск, отображающий 50 вакансий на странице. В качестве альтернативы вы можете подписаться на веб-хук для автоматического получения новых результатов поиска. Первый вариант подходит для разовых загрузок и заполнения вакансий, а второй — для постоянного обновления.
Шаги 3-4: Веб-хуки и доставка через ATS
Третий шаг — выбор режима доставки. Опрос предполагает периодическую отправку запросов к API по расписанию. Хотя его проще реализовать, он вносит задержку и создает ненужную нагрузку: даже без новых вакансий сервер необходимо опрашивать каждые пять минут.
Веб-хуки работают в обратном направлении. Как только новая вакансия соответствует сохраненным фильтрам, LeadHunter автоматически отправляет POST-запрос на вашу конечную точку. Задержка сокращается с минут до секунд, а количество пустых запросов приближается к нулю. Это выбор по умолчанию для большинства команд.
Опрос подходит для двух сценариев: принимающая система не имеет общедоступного URL-адреса или политики безопасности запрещают вызовы извне системы. В других случаях веб-хуки более уместны.
Шаг 4: Сопоставление и доставка. Объявления о вакансиях импортируются в Huntflow или Greenhouse с нормализованными полями через легкодоступный коннектор API и интеграция. Информация о работодателе и вакансии будет внесена в объявление о вакансии, после чего будут указаны номер вакансии и филиала, ссылка на источник и флаги дедупликации.
Если вы используете CRM-систему, такую как Bitrix24 или amoCRM, данные будут отправлены через веб-перехватчик в формате JSON. Поля будут сопоставлены: название вакансии с названием транзакции, филиал с бюджетом, а источник с пользовательским полем. После настройки сопоставления система будет работать автоматически без ручного вмешательства.
Рекомендуется заранее согласовать порядок обработки обновлений. Если филиал в объявлении о вакансии изменяется или закрывается, веб-перехватчик может отправить обновление на тот же идентификатор. Решение о том, следует ли перезаписывать объявление о вакансии или сохранять исторические записи, определит решение для хранения данных на стороне ATS.
Шаг 5: Мониторинг и обслуживание процесса
Автоматизация — это не решение «один раз и навсегда». Шаг 5 — это мониторинг процесса. Три аспекта требуют пристального внимания.
Во-первых, ограничения API. В большинстве тарифных планов есть ограничение на количество запросов в минуту, и опрос может легко достичь этого предела. Регистрируйте коды ответов. Код состояния 429 указывает на то, что лимит превышен, и некоторые объявления о вакансиях не были доставлены. В тарифных планах агентств ограничений на количество запросов нет, но другие планы требуют тщательного мониторинга.
Во-вторых, ошибки доставки. Если Huntflow возвращает ошибку 500 или ваша конечная точка недоступна, следует повторно отправить веб-хук. Без логирования вы обнаружите потерю только тогда, когда рекрутеры будут запрашивать информацию о вакансиях.
В-третьих, область фильтрации. Слишком узкая заданная область фильтрации приведет к уменьшению количества объявлений о вакансиях: совпадений не будет найдено в течение недели. Слишком широкая заданная область фильтрации перегрузит систему ATS, и рекрутеры потеряют уверенность во всем процессе.
Выработайте хорошую привычку пересматривать свои настройки каждые одну-две недели, основываясь на фактических результатах. Посмотрите, какие каналы привлекли потенциальных клиентов, а какие оказались неэффективными. Эти данные следует сопоставлять с анализом рынка труда, чтобы корректировать таргетинг и географическое местоположение в соответствии с текущими потребностями.
Чтобы понять, какие каналы следует включить в процесс подбора персонала, держите под рукой «Руководство по поиску кандидатов 2026». Эта система представляет собой замкнутый цикл. Инструменты аналитики подскажут вам, где искать кандидатов. Фильтры и API выполняют эти действия автоматически. Мониторинг предоставляет информацию о том, что эффективно, а что нет.
FAQ
Нужен ли разработчик для настройки?
Для готовых коннекторов к Huntflow и Greenhouse — нет, настройка занимает около часа. Разработчик нужен только для кастомных сценариев и нестандартных CRM.
Вебхуки или поллинг — что выбрать?
Для большинства команд вебхуки: меньше задержка, меньше нагрузка, вакансии приходят сразу при появлении.
Что будет при превышении лимита API?
Запросы начнут отклоняться с понятной ошибкой. Лимит зависит от тарифа, на «Агентстве» он не ограничен.