Jahanzaib
All Work
AI AgentRecruitmentRecruitment

AI Job Intake Automation for a Canadian Recruitment Agency

Job orders reach Bullhorn on their own, and recruiters respond 40% faster.

Recruitment agency, Canada·50 staff·In production

Client details anonymized under NDA. The work, approach, and results shown here are real. Contact me for references.

A recruiter interviewing a candidate across an office desk
0

Faster Response Time

0

Job Orders Retyped

0

Intake Running

0

Staff Supported

Overview

A Canadian recruitment agency was retyping every new job order into Bullhorn by hand. I built an intake pipeline where a Claude agent reads each request, from an email or the intake form, pulls out the job details, checks them against Bullhorn and creates the record. The right recruiter gets an alert and the client follow up goes out on its own, so new roles get a response 40% faster.

About the client

A recruitment agency in Canada with 50 staff. The team runs its desk on Bullhorn and holds an internal database of about 500,000 candidate records built up over years of placements.

Industry
Recruitment
Location
Canada
Team
50 staff
CRM
Bullhorn

The Problem

What they were dealing with

New job orders arrived by email and through an intake form, in whatever shape the client chose. Someone had to read each one, work out the role, location, rate and requirements, and type it all into Bullhorn before a recruiter could start. On busy days new roles waited in the inbox, and following up with the client depended on who remembered.

Every job order was read and retyped into Bullhorn by hand

Requests came in different formats, so details were missed or entered inconsistently

New roles waited until someone had time to log them, which slowed the first response to the client

Client follow ups relied on memory instead of a system

Before

Manual

Job intake

By hand

Bullhorn data entry

Ad hoc

Client follow up

Email and form

Intake channels

The Solution

How I solved it

The goal was simple: a new job order should reach Bullhorn correctly without anyone retyping it, and the client should hear back fast.

An n8n workflow running with APIs on AWS picks up every request from email and the intake form. A Claude agent built with the Claude Agent SDK reads the request and any attachments and returns the job details in a fixed structure. A validation step checks each field against Bullhorn before anything is written, and when it cannot match a value with confidence it stops and asks a person instead of guessing. Once the job exists in Bullhorn, the right recruiter is alerted and the client gets a prompt acknowledgement and follow up.

1

Intake mapping

Walked through how job orders arrived and how the team logged them, and listed every Bullhorn field a complete job needs.

2

Extraction agent

Built a Claude agent with the Claude Agent SDK that reads emails, form entries and attachments and returns structured job details only.

3

Validation and Bullhorn write

Matched every value to Bullhorn before writing, and sent anything uncertain to a person for review rather than guessing.

4

Alerts and follow up

n8n alerts the right recruiter and sends the client follow up automatically, so no new role sits unanswered.

Bullhornn8nClaude Agent SDKClaude Managed AgentsAWS APIs
Job intake pipeline: client email and intake form flow into an n8n workflow, a Claude agent and a validation step on AWS, then into Bullhorn, which triggers a recruiter alert and a client follow up
Every job order takes the same path: email or form, an n8n workflow on AWS, a Claude agent that extracts the details, a validation step, then Bullhorn, the recruiter alert and the client follow up.

The Result

What changed

40%

Faster Response Time

0

Job Orders Retyped

24/7

Intake Running

50

Staff Supported

In production
Recruiters respond to new job orders 40% faster, client follow ups go out on time, and nobody retypes a job order.

Facing a similar challenge?

Every project starts with a conversation. Tell me what you're dealing with and I'll tell you honestly whether I can help.